美文网首页
神经网络

神经网络

作者: 巴拉巴拉_9515 | 来源:发表于2018-06-13 19:28 被阅读0次

神经网络是一种运算模型,模拟大脑神经网络处理、记忆信息的方式进行信息处理。

.

01 结构梳理

搜索神经网络经常会看到这种圈、线图。神经网络定义是由大量的节点之间相互联接构成,每个结点代表什么?每条线代表什么?

节点:f(输入数据*权重)

上图每个圆圆的圈称之为节点,节点就是对输入数据乘上一定的权重后,进行函数处理。

连线:权重

每两个节点间的连接都代表一个权重,这相当于人工神经网络的记忆。

02、节点深入

术语上把上面一个个圆圈叫做“神经元”,深入了解这些圈圈的内部构造。
当这些圈圈(神经元)收到数据输入时,经历三个步骤:

步骤一:输入数据*权值
步骤二:累加步骤一所有的结果
步骤三:使用特定函数处理这组数据


输出的结果又可以作为数据进入下一个神经元。

还有一个“偏置”的定义用来完善步骤二,这里就不提了。

·

03 多层神经网络

有时候会遇到这样的神经网络的图,其实就是把上面两种类型图结合起来。

输入数据经过3层神经网络处理后,输出结果。
不同层数可以有不同数量的神经元。
每个神经元都有对应输入值的权值w,以及一个偏置b,还有一个激活函数f。
每个神经元的权重w、偏置b、激活函数f都可以不一样。

04 权重w计算

在实际计算中,怎样合理对属性进行赋值很重要,因此w的计算推到是值得注意的。一般神经网络采用sigmoid函数作为神经元处理函数。
sigmoid函数具有f(x)'=f(x)[1-f(x)]的特征。下图来源:BP神经网络的公式推导

所以针对这一特性,当神经元函数采用sigmoid函数时,权重的计算:

其中gj计算如下:

这里y为实际分类,y^为预测分类(神经元f处理结果)详细计算

.

04 实际计算

有一组数据,包含4个样本,每个样本有3个属性,每一个样本对于一个已知的分类结果y。(相当于已知结果的训练样本,4个样本,3个特征)

每个样本有3个属性,对应3个权重,进入神经元训练。第一层采用10个神经元进行处理。

步骤一:输入数据*权重

步骤二:代入函数f中计算
上面加权求和后的数据带入函数,这里使用sigmoid函数。

到这一步一层的神经网络就处理好了,比较预测结果和实际y之间的数值差(上面算法中提到的偏差d)为:-0.009664、0.00788003、0.00641069、-0.00786466,相差不多。

步骤三:完善权重w
一开始的权重是随便设置的,故需要根据公式需要完善权重值。

权重计算结果为-0.62737713,-0.30887831,-0.20651647,三个属性重新赋予合适的权重。

相关文章

网友评论

      本文标题:神经网络

      本文链接:https://www.haomeiwen.com/subject/jhtseftx.html