上一节介绍了神经元及相关内容,本节我们看一下神经网络
如上图所示,该神经网络有三层。我们标记第一层(也就是输入层)为 a(1) ,第一层与第二层连接权重为 w(1) ,然后第一层输入与第一层权重的线性和为 z(1) ,第一层神经元个数为 n(1) ,并依次标记剩余网络层。
可以看出,存在
z(l)j=∑i=1n(l)a(l)i⋅w(l)i,j=a(l)⊤w(l)j
a(l+1)=f(z(l))
f(⋅) 是激活函数。
对于多层神经网络,我们定义其代价函数为
J(w,b)=12n∑i=in(yi−h(xi))2
其中 (xi,yi) 是样本集合, h(⋅) 是网络预测函数,通常为了防止过拟合,需要在后面加上一项正则项,用来约束参数复杂度。
当网络预测结果( h(⋅) )与样本的ground truth( yi )接近时,代价函数最小。换言之,我们要想使得预测结果准确,那么需要最小化代价函数 J(⋅) 。
此时,利用梯度下降算法,我们知道参数的更新公式如下所示: