在机器学习中,存在这样一种情景,即数据集不是提前给定的,而是随着时间不断增加 (stream data)。以分类问题为例,该情景不断重复下面的循环:
一个经典的例子是天气预报,xx对应此时的观测,ˆy表示对天气的预报,而y是真实天气,只能第二天看到。这种学习过程称作在线学习 (on-line learning)。在当前大数据背景下,使用固定数据集训练的模型无法适应产品更新迭代的需要,每过一段时间就重新训练模型是很不理智的,这也是在线学习受到重视的原因。
设在线学习持续T轮,在第t轮,算法接收了一个样本xt∈X同时做出预测ˆyt∈Y;接着得到真实标签yt∈Y,显然就能得到损失L(ˆyt,yt)。在线学习的目标就是极小化T轮的累积损失:∑Tt=1L(ˆyt,yt)。
在这一框架下,学习器在得到xt的同时,还会得到N位专家的建议ˆyt,i∈Y,我们应当从这些建议中,选择一个作为预测标签ˆyt。事实上可以将“专家”理解为假设空间的假设h,针对输入的instance输出label。我们每轮可以选择不同专家的建议,得到累积损失。显然,存在一位专家,他提出的建议在T轮中的累积损失是最小的,相当于在离线情况下,模型能够得到的最好表现。显然在线学习下,我们的累积损失不会小于该专家预测下的累积损失。我们将两种在线学习的累积损失和离线情况下最小的累积损失间的差距称作“遗憾” (regret):
RT=T∑i=1L(ˆyt,yt)−Nmini=1N∑t=1L(ˆyt,i,yt).考虑0-1损失的分类情形,在可实现情况 (realizable case)下,也就是存在一个专家,他可以正确分类每一轮的输入特征,我们讨论错误界模型(Mistake bound model),它研究的是“在学到一个特定概念前,我们需要多少次判断错误”。由于是可实现情况,存在一个T,在T轮后,我们学到了一个不犯错的概念,因此在后续的在线学习中,我们不再犯错,因此存在一个犯错误的最大次数。
对于任意概念c,我们定义学习算法A找到这个概念所需要犯的最大错误次数
MA(c)=maxx1,⋯,xT|mistakes(A,c)|.类似的,在概念类C中,我们定义最大犯错次数
MA(C)=maxc∈CMA(c).给定概念类和学习算法,我们希望求出MA(C)的上界M。
下面介绍Halving算法,一个朴素的在线学习算法,有比较好的犯错次数上界。
Halving算法在一开始会接受所有专家的投票,在循环过程中,如果存在专家预测错误,则不再接受该专家的建议,因为它必然不是我们想要的0错误概念。显然这样的操作会帮我们找到这样的概念。在假设空间H有限的情况下,我们有
MHalving(H)≤log2|H|.令opt(H)为假设空间H下的最优错误界,我们有
VCdim(H)≤opt(H)≤MHalving(H)≤log2|H|.可以发现Halving算法是很冒进的算法,这是由于我们知道这是一个realizable case。而当我们的目标概念不在假设空间中,即non-realizable case,我们的策略要更严谨一些,也就是Weight majority算法:我们会接受出错专家的建议,但它的重要性 (权重)会下降:
可以发现WM算法只适用于二分类。我们设β∈[0,1),当β=0,WM算法退化成Halving算法。在不可实现情形下,(4)和(5)的界不再适用,即犯错次数不再有界。下面的定理揭示了WM算法的犯错次数关于T的变化趋势。
令mT为T轮之后WM算法犯错次数,m∗T是最好的专家在这T轮中犯错次数,β∈(0,1),我们有
mT≤logN+m∗Tlog1βlog21+β在0-1损失的确定性算法下,我们无法实现o(T)的遗憾界,也就是遗憾界的最坏情况是与T成正比的。我们可以构造这个最坏情况,我们根据算法的输出ˆyt给出yt:ˆyt=1,我们就令yt=0,反之亦然。那么此时mT=T。考虑N=2,即两个专家的决策,一个专家一直建议ˆyt=1,另一个建议恰好相反。那么m∗T≤T2,因此遗憾界
RT=mT−m∗T≥T2也就是无法实现o(T)。消除这一坏结果有两种方法:
Randomized WM算法将随机性加入了WM算法,用一个概率分布ppt来预测ˆyt:
在第t轮中,我们会得到一个损失向量llt,其第i分量是做出采取第i个专家建议的损失,所以此轮的期望损失为Lt=∑Ni=1pt,ilt,i,累积期望损失就是Lt=∑Tt=1Lt。定义专家建议的最小损失为
LminT=mini∈{1,⋯,N}LT,i=mini∈{1,⋯,N}T∑t=1lt,i此时的遗憾界就是
RT=LT−LminT可以证明,RWM算法实现了O(√TlogN),实际上是2√TlogN的遗憾界。
前面提到,降低遗憾界的方法除了采用随机算法,还可以采用凸的,值域为[0,1]的损失函数。Exponential weighted average算法正是采取了这样想法,而且它是确定性的:
该算法可得到更近的遗憾界
RT≤√T2logN复杂度上同样是O(√TlogN)的。
我们介绍了在线学习和遗憾界的基本概念,同时考察了遗憾界的复杂度,以及如何通过修改算法得到它的最优复杂度。