机器学习—神经网络-代价函数,反向传播算法

在神经网络中,我们了解了,神经网络类似于一个一个的节点,当我们输入数据,然后就会有一输出,输出再作为输入,直到最后输出,其中,隐藏层的节点,我们如何知道其算法呢?
神经网络代价函数:
下面是逻辑回归的代价函数的一般式:
在这里插入图片描述
我们不再只有一个y输出单元了,我们有k个输出。所以化简为:
在这里插入图片描述

其中,h(x)为输出的k维向量,(h(x))i表示输出的k维向量中的第i个元素

神经网络反向传播算法:
如图,我们定义一个训练数据(x,y)
在这里插入图片描述
那么,当我们输入为x时,经过了两个隐藏层,并且求出其激励值,即为通过正向传播求出结果。为了求出其导数项,我们将采用反向传播算法:
在这里插入图片描述
我们用δ(l)j ,来表示误差,例如:在这里插入图片描述
表示的意思为第四层的第j列的值,减去真实值,即为,输出值,减去真实值,得到了一个误差。
当作向量时:上图中的误差为:δ(4)=a(4)-y
同理,前面的误差为:
在这里插入图片描述
其中,g为激励函数,g‘(z(3))=a(3).*(1-a(3))
.*为矩阵相乘,没有δ(1),因为我们第一层即为输出层。反向传播算法,从输出层,反向传递到输入层的后一位,即为把输出层的误差传递给了输出层的前一层,然后继续传递
如图,为一个正向传播的例子:
在这里插入图片描述
那么,反向传播算法:
在这里插入图片描述
所以,上述例子,只是一个反向传播的过程,他与正向传播大致相同,其中较为复杂的即为每层的误差计算。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值