课程学习
摘要
将例子以有意义的顺序组织起来,逐步说明更多的概念和更复杂的概念,即从0开始逐渐拓宽知识面广度和加深学习的深度。
机器学习中的非凸训练存在训练难度,通过将这种“课程学习”的方法运用在机器学习中,能够提高泛化性(模型依据训练时采用的数据,针对以前未见过的新数据做出正确预测的能力)(防止过拟合),加速训练收敛,并且能提升最终结果的质量。
策略: A curriculum as a continuation method
采用连续方法(Continuation methods (Allgower & Georg, 1980))的思想。
其中一个定义了代价函数
C
λ
(
θ
)
Cλ(θ)
Cλ(θ) 的单参数族,这样
C
0
C0
C0 可以很容易地优化(可能在
θ
θ
θ 上是凸的),而
C
1
C1
C1 是我们实际上希望最小化的准则。首先使
C
0
(
θ
)
C0(θ)
C0(θ) 极小化,然后使
λ
λ
λ 逐渐增大每次增大
ϵ
\epsilon
ϵ,同时使
θ
θ
θ 保持在
C
λ
(
θ
)
Cλ(θ)
Cλ(θ) 的局部极小值。显然,当
ϵ
\epsilon
ϵ足够小时,我们可以认为最终
θ
θ
θ 从开始高度平滑的
C
0
C0
C0 极小值,逐渐移动到
C
1
C1
C1 的一个主要的(如果不是全局的)最小值的吸引区。
在训练准则最小化问题上应用延续方法涉及一系列训练准则,从最容易优化的准则开始,到感兴趣的训练准则结束。
同时,考虑到课程学习方法,需要定义“简单的例子”作为
C
0
(
θ
)
C0(θ)
C0(θ) ,然后逐渐使用“复杂的例子”直至
C
1
(
θ
)
C1(θ)
C1(θ) ,也可以理解为开始“简单的例子”权重大,后面“复杂的例子”权重大。
例子的难易一般自行定义,例如,文中设计了形状识别实验,BasicShapes为GeomShapes的特例(正方形是矩形特例等等),先训练BasicShapes再GeomShapes会有更好的结果。再如语言模型,先训练词汇量小的句子,然后慢慢扩大词汇量,也有更好的效果。
思考:应该也可以将句子长度作为难易程度的标准,先训短句再训长句
论文链接:https://dl.acm.org/doi/pdf/10.1145/1553374.1553380
参考文献
[1] Bengio Y, Louradour J, Collobert R, et al. Curriculum learning[C]//Proceedings of the 26th annual international conference on machine learning. 2009: 41-48.