(吴恩达)5.反向传播算法

网友投稿 740 2022-09-08

(吴恩达)5.反向传播算法

(吴恩达)5.反向传播算法

文章目录​​九、神经网络参数的反向传播算法​​​​9.1 代价函数​​​​9.2 反向传播算法​​​​9.3 反向传播算法的直观理解​​​​9.4 梯度检验​​​​9.5 随机初始化​​​​9.6 总结​​

九、神经网络参数的反向传播算法

9.1 代价函数

首先引入一些新标记方法:

将神经网络的分类定义为两种情况:二类分类和多类分类,

9.2 反向传播算法

前向传播算法:

下面的公式推导过程见:​​javascript:void(0)​​

反向传播:

重要的是清楚地知道上面式子中上下标的含义:

我们的算法表示为:

即首先用正向传播方法计算出每一层的激活单元,利用训练集的结果与神经网络预测的结果求出最后一层的误差,然后利用该误差运用反向传播法计算出直至第二层的所有误差。

批量梯度下降算法总结:

9.3 反向传播算法的直观理解

前向传播的原理:

前向传播算法:

反向传播算法做的是:

9.4 梯度检验

9.5 随机初始化

任何优化算法都需要一些初始的参数。到目前为止我们都是初始所有参数为0,这样的初始方法对于逻辑回归来说是可行的,但是对于神经网络来说是不可行的。如果我们令所有的初始参数都为0,这将意味着我们第二层的所有激活单元都会有相同的值。同理,如果我们初始所有的参数都为一个非0的数,结果也是一样的。我们通常初始参数为正负ε之间的随机值,假设我们要随机初始一个尺寸为10×11的参数矩阵,代码如下:​​​Theta1 = rand(10, 11) * (2*eps) – eps​​

9.6 总结

使用神经网络时的步骤:

网络结构:第一件要做的事是选择网络结构,即决定选择多少层以及决定每层分别有多少个单元。

第一层的单元数即我们训练集的特征数量。

最后一层的单元数是我们训练集的结果的类的数量。

如果隐藏层数大于1,确保每个隐藏层的单元个数相同,通常情况下隐藏层单元的个数越多越好。

我们真正要决定的是隐藏层的层数和每个中间层的单元数。

训练神经网络:

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:APP前端开发框架的团队哪一些更加专业可靠
下一篇:APP运营模式通常都有哪一些?是否有可信的开发公司
相关文章

 发表评论

暂时没有评论,来抢沙发吧~