[学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 9 深度学习
深度学习
So far this week
- Edge detection
- RANSAC
- SIFT
- K-Means
- Linear classifier
- Mean-shift
- PCA/Eigenfaces
- Image features
Current Research
- Learning hierarchical representations from data
- End-to-end learning: raw inputs to predictions
- can use a small set of simple tools to solve many problems
- has led to rapid progress on many problems
- Inspired by the brain(very loosely!)
Deep learning for different problems
vision tasks
visual recognition
object detection: what and where
object segmentation
image caption
visual question answering
super resolution
image retrieval
style transfer
outside vision tasks
- Machine Translation
- Text Synthesis
- Speech Recognition
- Speech Synthesis
Motivation
Data-driven approach:
- collect a dataset of images and labels
- use machine learning to train an image calssifier
- evaluate the classifier on a withheld set of test images
feature learning
what is feature learning?[^what is feature learning]
deep learning
Supervised learning
linear regression
neural network
neural networks with many layers
Gradient descent
how to find the best weights \(w^T\)
which way is down hill?
gradient descent
fancier rules:
- Momentum
- NAG
- Adagrad
- Adadelta
- Rmsprop
这里以后可以再 看看!
Backpropagation
a two-layer neural network in 25 lines of code
import numpy as np
D,H,N = 8, 64,32
#randomly initialize weights
W1 = np.random.randn(D,H)
W2 = np.random.randn(H,D)
for t in xrange(10000):
x = np.random.randn(N,D)
y = np.sin(x)
s = x.dot(W1)
a = np.maxium(s,0)
y_hat = a.dot(W2)
loss = 0.5*np.sum((y_hat-y)**2.0)
dy_hat = y_hat - y
dW2 = a.T.dot(W2.T)
da = dy_hat.dot(W2.T)
ds = (s > 0)*da
dW1 = x.T.dot(ds)
W1 -= learning_rate*dW1
W2 -= learning_rate*dW2
[^what is feature learning]:
In Machine Learning, feature learning or representation learningis a set of techniques that learn a feature: a transformation of raw data input to a representation that can be effectively exploited in machine learning tasks. This obviates manual feature engineering, which is otherwise necessary, and allows a machine to both learn at a specific task (using the features) and learn the features themselves.
Feature learning is motivated by the fact that machine learning tasks such as classification often require input that is mathematically and computationally convenient to process. However, real-world data such as images, video, and sensor measurement is usually complex, redundant, and highly variable. Thus, it is necessary to discover useful features or representations from raw data. Traditional hand-crafted features often require expensive human labor and often rely on expert knowledge. Also, they normally do not generalize well. This motivates the design of efficient feature learning techniques, to automate and generalize this.
Feature learning can be divided into two categories: supervised and unsupervised feature learning, analogous to these categories in machine learning generally.
In supervised feature learning, features are learned with labeled input data. Examples include Supervised Neural Networks, Multilayer Perceptron, and (supervised) dictionary Learning.
In unsupervised feature learning, features are learned with unlabeled input data. Examples include dictionary learning, independent component analysis, autoencoders, and various forms of clustering.
[学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 9 深度学习的更多相关文章
- [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 1 课程介绍
课程大纲:http://vision.stanford.edu/teaching/cs131_fall1718/syllabus.html 课程定位: 课程交叉: what is (computer) ...
- [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 2 颜色和数学基础
大纲 what is color? The result of interaction between physical light in the environment and our visual ...
- [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 4 像素和滤波器
Background reading: Forsyth and Ponce, Computer Vision Chapter 7 Image sampling and quantization Typ ...
- [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 3 线性代数初步
向量和矩阵 什么是矩阵/向量? Vectors and matrix are just collections of ordered numbers that represent something: ...
- Computer Vision: Algorithms and ApplicationsのImage processing
实在是太喜欢Richard Szeliski的这本书了.每一章节(after chapter3)都详述了该研究方向比較新的成果.还有很多很多的reference,假设你感兴趣.全然能够看那些參考论文 ...
- Deep Learning 10_深度学习UFLDL教程:Convolution and Pooling_exercise(斯坦福大学深度学习教程)
前言 理论知识:UFLDL教程和http://www.cnblogs.com/tornadomeet/archive/2013/04/09/3009830.html 实验环境:win7, matlab ...
- Sony深度学习框架 - Neural Network Console - 教程(1)- 原来深度学习可以如此简单
“什么情况!?居然不是黑色背景+白色文字的命令行.对,今天要介绍的是一个拥有白嫩的用户界面的深度学习框架.” 人工智能.神经网络.深度学习,这些概念近年已经涌入每个人的生活中,我想很多人早就按捺不住想 ...
- 百度DMLC分布式深度机器学习开源项目(简称“深盟”)上线了如xgboost(速度快效果好的Boosting模型)、CXXNET(极致的C++深度学习库)、Minerva(高效灵活的并行深度学习引擎)以及Parameter Server(一小时训练600T数据)等产品,在语音识别、OCR识别、人脸识别以及计算效率提升上发布了多个成熟产品。
百度为何开源深度机器学习平台? 有一系列领先优势的百度却选择开源其深度机器学习平台,为何交底自己的核心技术?深思之下,却是在面对业界无奈时的远见之举. 5月20日,百度在github上开源了其 ...
- Python入门学习笔记4:他人的博客及他人的学习思路
看其他人的学习笔记,可以保证自己不走弯路.并且一举两得,即学知识又学方法! 廖雪峰:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958 ...
随机推荐
- idea 解决git冲突
1.提交本地代码到本地仓库 2.啦取远程代码 不进行merge 3.冲突文件会显示 >>> head ===== 4.删除 >>> head ===== ...
- j2ee消息中间件
http://blog.csdn.net/apanious/article/details/51014396
- POJ 4786 Fibonacci Tree
Fibonacci Tree Time Limit: 2000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ...
- MySQL 触发器 -1
MySQL包含对触发器的支持.触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触发表上的触发器的执行. 创建触发器 在MySQL中,创建触发器语法如下 ...
- 近200篇机器学习&深度学习资料分享
编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.并且原文也会不定期的更新.望看到文章的朋友能够学到很多其它. <Brief History of Machine ...
- C#实现调用接口数据获取数据格式化XML、json转成Table的方法
废话不多说,直接上代码: json 格式化转DataTable: result为从接口得到的数据,格式化json的方法主要来自Newtonsoft.Json JObject joUnit = JObj ...
- 广东工业大学2016校赛决赛-网络赛 1169 Problem A: Krito的讨伐 优先队列
Problem A: Krito的讨伐 Description Krito终于干掉了99层的boss,来到了第100层.第100层可以表示成一颗树,这棵树有n个节点(编号从0到n-1),树上每一个节点 ...
- 不使用Store安装WSL
Windows Store经常会因为各种原因打不开, 这时候我们可以尝试直接下载安装WSL 1. PowerShell里运行下载: PS C:\WINDOWS\system32> Inv ...
- flask之jinji2模板介绍
1.1.模板传参 (1)主程序 from flask import Flask,render_template app = Flask(__name__) @app.route('/') def ...
- HD-ACM算法专攻系列(19)——Leftmost Digit
问题描述: AC源码: 解题关键是,数据很大,不能强算,需要使用技巧,这里使用科学计算法,令N^N=a*10^n ,取对数后变为 N*log10(N)=log10(a)+n,令x = log10(a) ...