人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

神经网络代价函数

神经网络二元分类和多类别分类问题

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

神经网络代价函数

![在这里插入图片描述](https://img-blog.****img.cn/20200226230435252.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZzZGFld3Jx,size_16,color_FFFFFF,t_70#pic_left =70%x30%#pic_left =70%x30%)

反向传播

Backpropergation algorithm

让代价函数最小化的算法

minimize the cost function

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

需要做的是去解决θij(l)J(θ)\frac{\partial}{\partial \theta_{ij}^{(l)}}J(\theta)这个偏导项

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

反向传播算法

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

δjl\delta_j^{{l}} = error of node j in layer l.

  • 从输出层开始计算δjl\delta_j^{{l}}
  • 返回上一层第三层隐藏层的计算δjl\delta_j^{{l}}
  • 最后返回上一层第二层隐藏层的计算δjl\delta_j^{{l}}项,结束
  • 第一层没有误差,所以不用计算

具体算法:

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

梯度检验/检查

Gradient checking

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验

梯度检验的步骤以及重要性:

对于复杂函数的梯度计算的检验十分重要。

人工智能教程 - 学科基础课程2.6 - 机器学习导论 10.神经网络代价函数,反向传播,梯度检验