深度学习之学习笔记(五)—— 神经网络的学习(训练)

神经网络的学习(训练)

"神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应" [Kohonen, 1988]

 

回顾神经元模型

根据第三章介绍的M-P神经元模型,我们有

a = \sum_{i=1}^{n} w_ix_i - \theta

y = f(a)

其中,f(a) 为激活函数。

 

神经网络的学习(训练)过程{\color{Red} \bigstar \bigstar \bigstar \bigstar \bigstar}


神经网络的学习(训练)过程就是找到一个合适函数的过程,对下面具体的数学公式来说,就是找到一组合适的权重,使得样本的输出与预期的结果接近,最好是完全一样:

y = f (x_1w_1 + x_2w_2 + \cdot \cdot \cdot + x_{n-1}w_{n-1} + w_b)

权重为w_i, \ i\in \{1,2, \cdot \cdot \cdot , n\}, 其中,x_n = 1, w_n = w_b  


一层神经网络的训练过程如下图所示:

其中\vec{x}表示一组输入的特征向量(样本),\vec{w} 表示一组权重向量,表示如下:

\vec{x} = (x_1, x_2, \cdot \cdot \cdot , x_n)

\vec{w} = (w_1, w_2, \cdot \cdot \cdot , w_n)

 

训练步骤具体如图所示:


  1. 随意(一般采用随机方式)初始化一组权重 \vec{w} (其中包含偏置w_b
  2. 根据一组输入数据特征 \vec{x}样本)、权重 \vec{w}激活函数f,计算输出y,其中y = f (x_1w_1 + x_2w_2 + \cdot \cdot \cdot + x_{n-1}w_{n-1} + w_b) = f(\alpha )
  3. 根据输出y,以及样本预期值y^\phi(标签),计算\vec{w}的调整值 \Delta \vec{w}\Delta \vec{w} = \eta (y^\phi - y) {f}'(\alpha )\vec{x}
  4. 根据上一步计算出来的调整值 \Delta \vec{w}调整 \vec{w} :\vec{w} = \vec{w} + \Delta \vec{w}
  5. 对一组样本反复迭代执行步骤(1)-(4),直到得到一组满意的权重\vec{w}为止

在步骤(3)中,我们计算\vec{w}的调整值\Delta \vec{w}时,用的公式是:\Delta \vec{w} = \eta (y^\phi - y) {f}'(\alpha )\vec{x}

为什么这样计算?是因为这里使用了均方误差作为损失函数来度量目标函数的优劣,均方误差损失函数的定义为

L=\frac{1}{2}(y-y^\phi)^2

通常我们认为,当损失函数达到其最小值点时,这时的权重是最优的,通过这组权重构成的函数就是拟合最好的函数。

所以这里步骤(5)中所说的得到一组满意的权重\vec{w}就是指损失函数到达最小值点时的权重。

如何使损失函数找到其最小值点,我们将在《梯度下降法》一章中详细介绍。

另外,上面步骤(3)中的\eta,是指学习率,取值范围在(0,1)之间。学习率的具体含义我们也将在《梯度下降法》一章中解释。

 

关于损失函数的意义我们将在《损失函数》这一章中讲解。在这里,大家请牢记这个训练步骤就行,这是通用的。

如果是多层神经网络,就将上一层的输出作为下一层的输入,依次迭代,直到达到输出层,如下图所示:

 

输出层的设计

对于最后一层输出层,跟其他层的设计不太一样。输出层所用的激活函数,要根据求解问题的性质决定。一般地:

  • 回归问题可以使用恒等函数
  • 二元分类问题可以使用 sigmoid函数
  • 多元分类问题可以使用 softmax函数

机器学习的问题大致可以分为分类问题和回归问题。分类问题是数据属于哪一个类别的问题。比如,区分图像中的人是男性还是女性的问题就是分类问题。而回归问题是根据某个输入预测一个(连续的)数值的问题。比如,根据一个人的图像预测这个人的体重的问题就是回归问题(类似“57.4kg”这样的预测)

 

关于恒等函数、Sigmoid函数和Softmax函数这些激活函数,我们在下一章《激活函数》中介绍。

 

References:

简书:DL01-2:感知器训练的数学基础, 杨强AT南京

 

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值