之前在我的另外一篇博客做了BP神经网络的理论介绍,这次使用python语言来实现。具体细节可能有点不同。
符号说明
(一) 输入层
X=⎡⎣⎢⎢⎢(x1)T⋮(xm)T⎤⎦⎥⎥⎥X是数据集,维度是(m*(nIn)),其中m是样本例数,nIn是样本的特征数
但在代码里面,为了对应偏倚单位,我们在X的第一列插入一列,作为偏倚单位(bias unit),如下:
X=⎡⎣⎢⎢⎢1⋮1(x1)T⋮(xm)T⎤⎦⎥⎥⎥
此时X为m*(nIn+1)
(二) 隐含层
hi=⎡⎣⎢⎢⎢(hi1)T(hinNode)T⋮⎤⎦⎥⎥⎥