a06.Andrew-ML05-反向传播算法

Cost Function and BackPropagation

01.COST FUNCTION


  • 一些定义:


  • 神经网络的代价函数


02.反向传播算法(Backpropagation Algorithm)


  • 使用该算法将会找到使得代价函数最小的theta值,可以使用梯度下降求迭代的方式,该算法可以很好的用来求迭代值.
  • 定义:


    l层的aj的误差
  • 将最后一层激活单元的值减去实际值可以得出最后一层的误差值,由最后一层误差值可以往前不断推出误差值。


  • 具体方法:
    给出训练样本{(x(1),y(1))⋯(x(m),y(m))},对于每个训练样本1-m:

  1. 初始化 a(1):=x(t)

  2. 使用前向传播计算出每一层的 a(l)for l=2,3,…,L

  3. 计算误差值: δ(L)=a(L)−y(t)(y表示实际的输出值)

  4. 反向计算出误差值:



    另一种表达形式:


  5. 计算



    与梯度下降类似的方式更新最优值。



03.Backpropagation Intuition


  • 神经网络代价函数的计算公式:


  • 一个分类的问题的代价函数计算如下:


  • 误差因子可以由代价函数求导所得:


  • 一张图理解反向传播算法:
    首先由实际值和测量值计算出最后一层误差,然后由每一层的权值反向计算出前面一层的误差值。



Backpropagation in practice

01. 展开参数(Unrolling Parameters)


  • 在神经网络的计算中,我们会用到如下几个矩阵,在实际的过程中,我们想要通过优化函数(比如fminuc())求出最佳theta时,传递进去的参数是一个长向量,就需要通过一系列变形实现。求出之后再变形回原来的样子:(D为误差,等于代价函数求导)


  • 语法:
    展开参数:

thetaVector = [ Theta1(:); Theta2(:); Theta3(:); ]
deltaVector = [ D1(:); D2(:); D3(:) ]

从向量中恢复:

Theta1 = reshape(thetaVector(1:110),10,11)
Theta2 = reshape(thetaVector(111:220),10,11)
Theta3 = reshape(thetaVector(221:231),1,11)

  • 总结一下机器学习算法:
  1. 有了初始化参数向量
  2. 展开到一个向量中
  3. 带入优化函数去求值


02. 梯度下降算法检查(Gradient Checking)


  • 梯度检查算法可以大致推测我们的反向传播算法是否按照我们所设想的那样进行。对代价函数的求导可以近似的等于以下这个公式,注意一旦检测出梯度下降算法是正确的就停止检查,否则算法会变得很慢。


03. 随机初始化(Random Initialization)


  • 在神经网络中初始化权值参数如果都初始化为0,使得每次更新结果都是一样的。因此我们必须将权值参数初始化为随机且不一致的。


    将theta1的初始值设置为-2到2之间的随机值

04. 训练一个神经网络

  1. 随机初始化权值
  2. 对于每一个输入运用前向神经网络得到hΘ​(x(i))
  3. 计算出代价函数
  4. 利用反向传播算法计算出偏导数
  5. 利用梯度下降函数检查算法检验反向传播算法是正确的,然后梯度下降检测
  6. 利用梯度下降或者optimization函数最小化代价函数,计算出theta


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 引言 机器学习栏目记录我在学习Machine Learning过程的一些心得笔记,涵盖线性回归、逻辑回归、Soft...
    hfk阅读 9,851评论 4 18
  • 文章主要分为:一、深度学习概念;二、国内外研究现状;三、深度学习模型结构;四、深度学习训练算法;五、深度学习的优点...
    艾剪疏阅读 22,133评论 0 58
  • 改进神经网络的学习方法(下) 权重初始化 创建了神经网络后,我们需要进行权重和偏差的初始化。到现在,我们一直是根据...
    nightwish夜愿阅读 6,089评论 0 0
  • 01 特别喜欢戴帽子,却从来没正儿八经的戴过,因为头太大。 曾经有人形容初见到我的时候的情景:先是眼前一黑,然后见...
    汪宇石阅读 3,462评论 0 3
  • 1 《妖猫传》给人的第一感觉是:美,华丽丽的美,人美,景美。仿佛一场视觉盛宴,带着我们重回到那个几乎被遗忘的瑰丽盛...
    霖筱筱阅读 3,459评论 0 0

友情链接更多精彩内容