批量学习和在线学习

批量学习和在线学习

        考虑具有一个由源节点组成的输人层、一个或多个隐藏层、由一个或者多个神经元组成的输出层的多层感知器,如图 4.1 所示。令
J = \left \{  x(n), d(n)\right \}_{n=1}^{N}
(4.1)
        用于训练网络的训练样本采用有监督方式。令 yj(n) 记为在输出层第 j 个神经元输出产生的函数信号,这一函数信号是由作用在输人层的刺激 x(n) 所产生的。相应地,神经元 j 的输出所产生的误差信号定义为:
e_{j}(n) = d_{j}(n) - y_{j}(n)
(4.2)
        其中 dj(n) 是期望响应向量 d(n) 的第 j 个元素。根据在第 3 章学习过的 LMS 算法的术语,神经元 j 的瞬时误差能量 (instantaneous error energy) 定义为:
E_{j}(n) = \frac{1}{2}e_{j}^{2}(n)
(4.3)
        将所有输出层神经元的误差能量相加,得到整个网络的全部瞬时误差能量 (total instantaneous error energy):
E(n) = \sum_{j\in C} E_{j}(n) = \frac{1}{2} \sum_{j\in C} e_{j}^{2}(n)
(4.4)
        其中集合 C 包括输出层的所有神经元。设训练样本中包含 N 个样例,训练样本上的平均误差能量(error energy averaged over the training sample) 或者说经验风险 (empirical risk) 定义为:
E_{av}(N) = \frac{1}{N} \sum_{n=1}^{N} E(n) = \frac{1}{2N}  \sum_{n=1}^{N}  \sum_{j\in C} e_{j}^{2}(n)
 
(4.5)
        自然,瞬时误差能量以及平均误差能量都是多层感知器的所有可调突触权值 (即自由参数) 的函数。这一函数依赖性没有包含在笔 E(n) 和 Eav(N) 的公式中,这仅仅是为了简化表达。
        根据多层感知器监督学习的实际执行方式,可以给出两种不同的方法 - 即批量学习和在线学习,在下面梯度下降的讨论中将对此进行探讨。

批量学习
        在监督学习的批量方法中,多层感知器的突触权值的调整在训练样本集合 J 的所有 N 个样例都出现后进行,这构成了训练的一个回合 (epoch)。
换句话说,批量学习的代价函数是由平均误差能量 Eav 定义的。多层感知器的突触权值的调整是以回合 - 回合为基础的 (epoch-by-epoch basis)。相应地,学习曲线的一种实现方式是通过描画 Eav 对回合数的图形而得到,对于训练的每一个回合,训练样本集 J 的样例是随机选取的 (randomly shuffled)。学习曲线通过对足够大量的这样实现的总体平均 (ensemble averaging) 来计算,这里每次实现是在随机选取不同初始条件下完成的。
        用梯度下降法来实现训练时,批量学习的优点在于:
        (1) 对梯度向量 (即代价函数钱 Eav 对权值向量 w 的导数) 的精确估计,因此,在简单条件下,保证了这一方法最速下降到局部极小点的收敛性。
        (2) 学习过程的并行性。

        然而,从实际观点看,批量学习有着存储需求 (storage requirement)。
        从统计的角度看,批量学习可以看成是某种形式的统计推断 (statistical inference)。因此它很适合于解非线性回归问题。

在线学习

        在监督学习的在线方法下,对于多层感知器突触权值的调整是以样例 - 样例为基础的 (example-by-example basis)。用来最小化的代价函数是全体瞬时误差能量 E(n)。
        考虑由 N 个训练样本构成的一个回合,样本的顺序是 {x(1), d(l)},{x(2), d(2)},…,{x(N), d(N)}。回合中第一个样例对 {x(1), d(l)} 输入给网络时,梯度下降法被用来调整权值。然后回合中第二个样本 {x(2), d(2)} 输入给网络,这导致对网络权值的进一步调整。这一过程不断持续直到最后一个样例 {x(N), d(N)}。遗憾的是,这样的过程违反了在线学习的并行性。
        对于给定的初始条件集合,学习曲线的一种实现是靠以下方式得到的,对训练过程中的回合数,描画最终值 E(n),这里和前面一样。训练样例是在每个回合后随机选取的。和批量学习一样,在线学习的学习曲线是通过对足够大量的随机选取的初始条件上的总体平均来计算的。自然地,对于给定的网络结构,在线学习下获得的学习曲线和批量学习下获得的学习曲线有着很大的不同。
        给定训练样本以随机的方式呈现给网络,在线学习的使用使得在多维权值空间中的搜索事实上是随机的;正是由于这个原因,在线学习方法有时被称为随机方法。这一随机性具有所希望的学习过程不容易陷人局部极值点的效果,这是在线学习好于批量学习的明确意义所在。在线学习的另一个优点在于它比批量学习需要的存储量要少得多。
        而且,如果训练数据是冗余的 (即训练样本集 J 包含同一个样例的多个复制),我们发现,和批量学习不同,在线学习能够从冗余性中获益,因为在一次学习中样例只出现一个。
        在线学习的另一个有用的性质是它能够追踪训练数据的小的改变,尤其是产生数据的环境是不稳定的情况下。
        总之,尽管在线学习有一些缺点,但它在解决模式分类问题时仍然是流行的方法,原因有以下两点:
        (1) 在线学习容易执行。
        (2) 对于大规模和困难模式分类问题它提供有效解。

        正是由于这两个原因,本章中大量的内容都是关于在线学习的。



References

(加) Simon Haykin (海金) 著, 申富饶, 徐烨, 郑俊, 晁静 译. 神经网络与机器学习[M]. 北京:机械工业出版社, 2011. 1-572


猜你喜欢

转载自blog.csdn.net/chengyq116/article/details/80160582
今日推荐