首页 > 移动平台 > 详细

[学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 9 深度学习2

时间:2017-12-12 22:50:05      阅读:271      评论:0      收藏:0      [点我收藏+]

深度学习

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:

  1. collect a dataset of images and labels
  2. use machine learning to train an image calssifier
  3. 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 深度学习2

原文:http://www.cnblogs.com/vincentcheng/p/8026738.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!