神经网络
神经网络是一种运算模型,模拟大脑神经网络处理、记忆信息的方式进行信息处理。
.
搜索神经网络经常会看到这种圈、线图。神经网络定义是由大量的节点之间相互联接构成,每个结点代表什么?每条线代表什么?
上图每个圆圆的圈称之为节点,节点就是对输入数据乘上一定的权重后,进行函数处理。
每两个节点间的连接都代表一个权重,这相当于人工神经网络的记忆。
术语上把上面一个个圆圈叫做 “神经元” ,深入了解这些圈圈的内部构造。
当这些圈圈(神经元)收到数据输入时,经历三个步骤:
输出的结果又可以作为数据进入下一个神经元。
还有一个“偏置”的定义用来完善步骤二,这里就不提了。
·
有时候会遇到这样的神经网络的图,其实就是把上面两种类型图结合起来。
输入数据经过3层神经网络处理后,输出结果。
不同层数可以有不同数量的神经元。
每个神经元都有对应输入值的权值w,以及一个偏置b,还有一个激活函数f。
每个神经元的权重w、偏置b、激活函数f都可以不一样。
所以针对这一特性,当神经元函数采用sigmoid函数时,权重的计算:
其中gj计算如下:
这里y为实际分类,y^为预测分类(神经元f处理结果) 详细计算
.
有一组数据,包含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,三个属性重新赋予合适的权重。
广告 您可能关注的内容 |