摘要
学习多个连续任务的问题,即终身学习。本文开发了一种在终身学习环境下的在线多任务学习方法。所提出的高效终身学习算法(ELLA)为所有任务模型保持了一个稀疏共享的基础,将知识从基础转移到学习每个新任务,并随着时间的推移改进基础,以最大限度地提高所有任务的性能。我们表明,ELLA与稀疏编码的在线字典学习和最先进的批处理多任务学习方法都有很强的联系,并提供了鲁棒的理论性能保证。我们的经验表明,ELLA在批处理多任务学习中产生了几乎相同的性能,而顺序学习任务的时间要少三个数量级(超过1000倍)。
简要介绍
多用途学习系统必须能够在一系列预测任务中有效且不断地获取知识。在这样的终身学习环境中,代理会按顺序接收任务。在任何时候,代理可能会被要求解决来自任何先前任务的问题,因此必须在每个步骤的所有学习任务中最大化其性能。当这些任务的解决方案通过某种底层结构相关起来时,代理可以在任务之间共享知识以提高学习性能,正如在迁移和多任务学习中所探索的那样。
(我的理解:代理==当前的算法,任务从之前t-3…t…t+3按先后顺序到达,对于当前到达的任务,前提假设任务之间存在一定的关系,所以可以学习到共同的底层结构,这里是知识仓L(共享基),根据以往的知识更新的L并存储新信息,然后接着下一个任务到来,重复。)
迁移学习和终身学习的区别:
迁移学习侧重于通过利用以前学习到的源任务的解决方案来有效地建模一个新的目标任务,而不考虑对源任务模型的潜在改进。相比之下,多任务学习(MTL)侧重于通过共享知识来最大化所有任务的性能,并以潜在的高计算成本实现实现。终身学习包括这两种范式的元素,专注于通过在之前的知识基础上有效地学习每个连续任务,同时优化所有任务的性能。特别是,终身学习包含了反向转移的概念,即学习后续的任务可以提高以前学习到的任务模型的性能。终身学习也可以被认为是在线MTL。
在本文中,我们开发了一个有效的终身学习算法(ELLA),它结合了转移和多任务学习的两个方面。
(是GO-MTL的改进算法)
转移
多任务学习
优点
我们的结果表明,ELLA实现了与批MTL几乎相同的性能,在学习时间上提高了三个数量级(超过1000倍)。我们还将ELLA与当前的在线MTL方法进行了比较(Saha等人,2011),发现ELLA具有更低的计算成本和更高的性能。
先前方法:
这些方法假设每个模型都表示为参数向量,是这些基的线性组合。通过使用一个共同的基础,这些方法在学习任务之间共享信息,并在模型与基础一起学习时,考虑任务关联
ELLA:
GO-MTL算法(Kumar&Daum´eIII,2012)也使用了一个稀疏共享的多任务学习基础,其优点是自动学习(潜在的)重叠的任务组,以最大限度地提高知识转移。我们使用这个丰富的底层任务结构模型作为开发ELLA的起点。
介绍
1.终身学习
终身学习代理(图1)面临一系列监督学习任务 Z ( 1 ) , Z ( 2 ) , . . . , Z ( T m a x ) {Z^{(1)}, Z^{(2)},...,Z^{(T_{max})}} Z(1),Z(2),...,Z(Tmax),每个任务都有 Z ( t ) = ( f ^ ( t ) , X ( t ) , y ( t ) ) \mathcal{Z}^{(t)}=\left(\hat{f}^{(t)}, \mathbf{X}^{(t)}, \mathbf{y}^{(t)}\right) Z(t)=(f^(t),X(t),y(t)) 由映射 f ^ ( t ) : X ( t ) ↦ Y ( t ) \hat{f}^{(t)}: \mathcal{X}^{(t)} \mapsto \mathcal{Y}^{(t)} f^(t):X(t)↦Y(t),从实例空间 X ( t ) \mathcal{X}^{(t)} X(t)定义一组标签Y(t)(用来分类、回归任务)。
每个任务都有 n t n_t nt个训练实例(样本数),有 X ( t ) ∈ R d × n t \mathbf{X}^{(t)} \in \mathbb{R}^{d \times n_{t}} X(t)∈Rd×nt,对应的标签有 y ( t ) ∈ Y ( t ) n t \mathbf{y}^{(t)} \in \mathcal{Y}^{(t)^{n_t} } y(t)∈Y(t)nt (一维),通过映射函数 f ^ ( t ) \hat{f}^{(t)} f^(t)给定。我们假设学习者事先不知道任务的总数Tmax、这些任务的分布或它们的顺序。
Each time step, the agent receives a batch of labeled training data for some task t, either a new task or a previously learned task.设T表示迄今为止遇到的任务的数量。在收到每一批数据后,可能会被要求代理对任何先前任务的实例做出预测。
它的目标是构建任务模型 f ( 1 ) , f ( 2 ) , . . . , f ( T ) f^{(1)}, f^{(2)},...,f^{(T)} f(1),f(2),...,f(T),每一个模型都是特征到预测标签结果的映射 f ( t ) : R d ↦ Y ( t ) f^{(t)}: \mathbb{R}^{d} \mapsto \mathcal{Y}^{(t)} f(t):Rd↦Y(t)。比如:(1)每个 f ( t ) f^{(t)}