cv学习笔记(3)神经网络数学原理
根据一个神经网络例子来介绍
输入是年龄、收入、性别,输出是买车和不买车的概率。该神经网络包含一个输入层、一个隐含层、一个输出层,每个节点和下一层的所有节点都有连接,是Dense神经网络。
激活函数
如图所示,A表示激活函数,采用双曲正切函数,tanh(1.23)=0.84。
归一化函数
如图所示,softmax表示归一化指数函数,将2.08和1.81变为0.57和0.43。
模型生成的流程
初始化时随机生成wij、wjk、bj、bk,可以计算出out1=xiwij+bj,out2=hjwjk+bk。
由实际的输出tk和期望得到的输出ok,得到损失函数:
对于此损失函数,分别对wij、wjk、bj、bk求偏导,得到:
这些偏导就是wij、wjk、bj、bk的梯度,采用梯度下降法,在训练过程中逐渐将这些参数最优化。
例如对于wjk的梯度,求得为0.12:
调整wjk为wjk-0.12*0.01=0.488,其中0.12为梯度,如果初始设置的步长是0.01:
再例如对于wij的梯度,求得为0.0004:
调整wij为wij-0.0004*0.1=0.09996,其中0.0004为梯度,如果初始设置的步长是0.1:
每次训练都采用梯度下降法,直至到最优模型。