zoukankan      html  css  js  c++  java
  • 深度学习中的数学—Lecture 1(1)

    Introduction:A Non-Rigorous Review of Deep Learning

    原文地址
    本篇文章为 MIT 课程 Mathematical Aspects of Deep Learning 的lecture 1 的学习笔记,没有进行完整的翻译,仅供参考

    1.深度前向网络(Deep forward networks )

    在统计学中,数据以 Xi,f(Xi) 的形式给出
    其中, Xi 通常是高维的,而 f(Xi) 通常属于 {0,1}or R
    我们的目标就是找到一个函数 f,让它与数据的 f 尽可能接近,这样我们才可以进行准确的预测。

    而深度学习,总的来说就是 parametric statistics的子集。
    我们有一个函数族

    f(X;θ)

    其中,X 是输入,θ 是参数(通常是高维的)。
    我们的目标是找到一个 θ,使得 f(X;θ) 接近于 f
    在这里,θ 就是网络,这个网络由 d 个函数构成,大多数都是高维的。
    f(d)(,θ)f(1)(,θ)

    diagram

    图中量 含义
    h(i)j h(i1)1,,h(i1)n组成的函数。
    h(i)=g(W(i)Tx+b(i))
    (后文)
    h(i)1,,h(i)n f(i)的组成成分 网络中的第 i 层(i-th layer)
    f(i)的组分数量 i 层的宽度 层与层之间宽度不一定相同
    d 网络深度 d 层的宽度只有1,f=f(d) is scalar-valued

    在这里,如果 f(i) 是线性函数,组分函数都是线性的,就不需要网络了。所以我们期望处理的 f(i) 要是非线性的。

    受神经科学启发:神经细胞会接收多个输入信号,输出两种可能状态。一个最基本的模型设计感知机:
    可以描述为

    f(x)=g(aixi+c)
    ,其中 g 是非线性函数。

    根据这个基本模型,我们可以定义

    h(i)=g(W(i)Tx+b(i))

    其中,g 是非线性函数 g 的coordinate-wise application。


    那么,g 应该怎样选择?
    我们希望 g 尽可能是“最非线性”的函数,所以,一般选择 RELU函数(Rectified Linear Units):

    g(z)=max(0,z)

    或者选择对数函数(logistic function )
    g(z)=11+e2βz

    或 双曲正切(hyperbolic tangent)
    g(z)=tanh(z)=ezezez+ez

    这两个函数与 RELU 相比,优点在于有界性上。

    上文中提到过,顶层(top layer)与其它层是不一样的。

    • 顶层通常是scalar-valued

    • 顶层有一些统计上的解释,h(d1)1,,h(d1)n被认为是经典统计模型的参数。
      顶层的 g 要根据这个统计含义来选择。

      • 一个例子是线性函数

        y=WTh+b
        输出是一个高斯均值。

      • 另一个例子是函数 σ(wT+b), 其中σsigmoid 函数

        x11+ex
        这里认为输出符合伯努利分布,概率 P(y) 正比于 exp(yz) ,其中z=wT+b

      • 进一步的,给出 soft-max
        softmax(z)i=exp(zi)jexp(zj)

        其中,z=WTh+b。这里,z 的组分 就与输出的可能取值相互对应了起来,softmax(z)i 对应的就是取值value 为 i 的概率( z 是一个向量,softmax输出为标量,是对矢量 z 的每个维度值 zi 求了normalized exponential )

    Simple example1

    > Input : [1, 2, 3, 4, 1, 2, 3], 
    > Output: [0.024, 0.064, 0.175, 0.475, 0.024, 0.064, 0.175]. 
    >The output has most of its weight where the '4' was in the original input. 
    >The function highlight the largest values and suppress values which are significantly below the maximum value.

    例如:向一个网络输入一副图片,输出的

    (softmax(z)1,softmax(z)2,softmax(z)3)
    就对应的是这幅图片中是一只猫、狗或青蛙的概率

    在后续几周,我们将关注这些问题:

    • 这些函数是怎样近似一般函数的?
    • 深度宽度有怎样的表达能力(expressive power)

    1. Wikipedia softmax Softmax_function
  • 相关阅读:
    团队-团队编程项目作业名称-最终程序
    《团队-中国象棋-项目总结》
    课后作业-阅读任务-阅读提问-4
    《20171130-构建之法:现代软件工程-阅读笔记4》
    《软件工程课程总结》
    《20171117-构建之法:现代软件工程-阅读笔记-3》
    -课后作业-阅读任务-阅读提问-3
    《团队-中国象棋-团队一阶段互评》
    《团队-中国象棋-开发文档》
    《结对-贪吃蛇-结对项目总结》
  • 原文地址:https://www.cnblogs.com/blogofnickchen/p/7221643.html
Copyright © 2011-2022 走看看