电脑版
首页

搜索 繁体

第636章(2/2)

最右侧则是输层(outpuyer),有10个神经元节,分别代表识别结果是0,1,2,...,9。当然,受sigmoid函数σ(z)的限制,每个输也肯定是0~1之间的数。

因此,为了让训练成为可能,我们需要一个输和输能够在实数上保持连续的神经网络。于是,这就现了sigmoid神经元。

而在训练的时候,输的形式则是:正确的那个数字输为1,其它输为0,隐藏层和输层之间也是全连接。

在历史上,很多研究人员曾经也过尝试,michaelnielsen的书《neuraworksanddeeplearning》这本书中也曾经提到过这个例

如果把整个网络看成一个函数(有输,有输),那么这个函数不是连续的。

那我们在得到一组输值之后,哪个输的值最大,最终的识别结果就是它。

可以想象,在采用sigmoid神经元组装神经网络之后,网络的输和输都变为连续的了,也就是说,当我们对某个参数的值行微小的改变的时候,它的输也只是产生微小的改变。这样就使得逐步调整参数值的训练成为可能。

实际上,对于网络来说,这个方法基本不可行。

第二,它的输也不再限制为0和1,而是将各个输的加权求和再加上偏置参数,经过一个称为sigmoid函数的计算作为输

这是一个非常惊人的数字。

sigmoid神经元(sigmoidneuron)是现代神经网络经常使用的基本结构(当然不是唯一的结构)。它与的结构类似,但有两个重要的区别。

第一,它的输不再限制为0和1,而可以是任意0~1之间的实数。

当然,在思考怎么之前,也应该先清楚:通过调整参数的方式获得期望的输,这个方法行得通吗?

而神经网络共的权重参数有784*15 15*10=11910个,偏置参数有15 10=25个,总共参数个数为:11910 25=11935个。

比如在上图有39个参数的网络中,如果维持输不变,我们改变某个参数的值,那么最终的输基本完全不可预测。

神经元系统采用了左右脑半球的设计方式行设计和制造。

它或者从0变到1(或从1变到0),当然也可能维持不变。这个问题的关键在于:输和输都是二制的,只能是0或者1。

本章已阅读完毕(请击下一章继续阅读!)

来说,假设z=w1x1 w2x2 w3x3 ... b,那么输output=σ(z),其中:σ(z)=1/(1 e-z)。

这个神经网络只有一层隐藏层,属于浅层的神经网络(shallowneuraworks)。而真正的度神经网络(deepneruaworks),则会有多层隐藏层。

但这里还有一个问题,在训练过程中,当实际输值和期望输值产生差异的时候,要如何去调整各个参数呢?

σ(z)是一个平、连续的函数。而且,它的输也是0~1之间的实数,这个输值可以直接作为下一层神经元的输,保持在0~1之间。

个神经网络工作的原理。

热门小说推荐

最近更新小说