首页
学习
活动
专区
工具
TVP
发布

神经网络和深度学习(三)——浅层神经网络的表示与输出

神经网络和深度学习(三)

——浅层神经网络的表示与输出

(原创内容,转载请注明来源,谢谢)

一、神经网络的表示

神经网络,实质上是一些输入,经过多层神经元的处理,得到想要的输出。这里的输出,即预测的结果。

现在以logistic回归作为实例,单个神经元,实际上完成了logistic的z=wTx+b的计算以及a=1/(1+e-z)这两步的计算。

对于多层神经网络,实际上是将上一层的输出,作为下一层的输入(即作为z=wTx+b中的x),带入进行计算的。

对于神经网络的层级,每一列为一层,但是需要注意的是,输入的X不被记为层(或者说被认为是第层),因此下图是一个双层神经网络。

其中中间的所有层(除去输入层和输出层)都是隐藏层,下图有一个隐藏层;最后一层是输出层。

另外,a表示输出,a[l]表示第l层的输出(即l+1层的输入),而下标ai表示的是第i个神经元。

因此,对于第l层,z[l]=W[l]Ta[l-1]+b[l],a[l]=δ(z[l]),l=1,2,3…n,输入层X可以看作是a[0]。

二、神经网络的输出

现在将一个神经元放大,可以看到上面说的内容,将z和a的计算合并在一个神经元中进行。

对于同一层,如果有多个神经元,则会进行多次这样的计算,且共同把结果作为下一层的输入,传给下一层进行计算。

这里详细列出每个神经元的计算结果,可以看到,在同一层中,各个元素的计算是并行的,分别去计算出各自的z、a,并且把结果整合成一个向量,作为下一层的输入变量。

这里也要运用到向量化的技术,即把输入的X、第一层的a,都分别作为一个向量进行计算,而不是对每一层再用for循环去遍历,这样加快了计算的速度,也加快最终得到结果的速度。

三、小结

本文讨论了神经网络的表示和输出,可以看到对于单次logistic回归,在神经网络中是用一个神经元来计算的。而神经网络中有多个神经元,而且有多个层级,这样保证了计算结果的正确率。

——written by linhxx 2018.02.01

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180201G0GFK400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券