在线学习是一种机器学习范式,其中数据按顺序到达,并用于在每一步更新对未来数据的最佳预测器。这与批量学习形成对比,批量学习一次性处理整个训练数据集以生成最终模型。当在计算上无法对整个数据集进行训练(需要核外算法)时,或者当数据随时间生成(如金融市场价格或交通模式)时,在线学习尤其有用。它还使算法能够动态适应新模式,使其成为赞助搜索、投资组合优化、垃圾邮件过滤、实时欺诈检测和电子商务动态定价等领域中的常用技术。在线学习算法可能容易出现灾难性干扰,这一问题可以通过增量学习方法得到缓解。人们越来越有兴趣将在线学习范式用于大型语言模型,以在初始训练后实现持续的实时适应。
在线学习的统计视角
在统计学习框架中,目标是学习一个函数 \( f: X \to Y \),该函数能对从联合概率分布 \( p(x, y) \) 中抽取的实例进行良好预测。学习者通常可以访问训练集示例 \( (x_1, y_1), \ldots, (x_n, y_n) \),并且损失函数 \( V(f(x), y) \) 衡量预测值与真实值之间的差异。理想目标是使期望风险 \( I[f] = \mathbb{E}[V(f(x), y)] \) 最小化。在批量学习中,这通常通过经验风险最小化或正则化经验风险最小化来实现,从而产生诸如正则化最小二乘和支持向量机等算法。然而,纯在线模型仅基于新输入 \( (x_{t+1}, y_{t+1}) \)、当前预测器 \( f_t \) 以及一些额外存储的信息来更新预测器 \( f_t \),存储需求通常与训练数据大小无关。对于许多公式(如非线性核方法),真正的在线学习是不可能的,但可以使用带有递归算法的混合在线学习,其中 \( f_{t+1} \) 依赖于 \( f_t \) 和所有先前数据点。
在线学习算法
在线学习算法随着每个新数据点的到达而增量更新模型。一个经典示例是感知机算法,它根据错误分类的示例调整权重。更复杂的方法包括在线梯度下降,其中模型参数针对每个新示例沿损失负梯度方向更新。这些算法通常与正则化结合使用以防止过拟合。在对抗性设置中,在线学习被构建为学习者与对手之间的博弈,从而产生遗憾最小化策略。该领域受到托马斯·迪特里希和迈克尔·乔丹等研究者的影响,他们为机器学习的理论基础做出了贡献。
在现实世界系统中的应用
在线学习广泛应用于需要实时决策的系统中。例如,在赞助搜索中,在线算法通过根据用户点击调整出价来最大化广告收入。在投资组合优化中,它们适应不断变化的市场条件。最短路径预测(如地图应用中的交通感知路由)使用在线学习来处理随机权重。垃圾邮件过滤和实时欺诈检测受益于在新模式出现时更新模型的能力。电子商务平台的动态定价也依赖于在线学习,根据需求和竞争调整价格。这些应用通常涉及大规模数据流,使在线学习成为实用选择。
在线学习与大型语言模型
人们越来越有兴趣将在线学习应用于大型语言模型,以在初始训练后实现持续适应。这对于像OpenAI和Anthropic开发的模型尤其相关,这些模型在大型数据集上训练,但可能需要随时间纳入新信息。在线学习范式可以使这些模型无需完全重新训练即可更新知识,从而降低计算成本。然而,灾难性遗忘和稳定性-可塑性权衡等挑战仍是活跃的研究领域。为transformer架构做出贡献的研究者如雅各布·乌兹科赖特和卢卡什·凯泽,已探索了使模型更具适应性的方法。
挑战与未来方向
在线学习中的一个主要挑战是灾难性干扰,即新信息覆盖先前学到的知识。增量学习方法旨在通过保留重要模式来解决这一问题。另一个挑战是探索与利用之间的权衡,尤其是在对抗性设置中。未来方向包括为深度学习模型(如深度学习和神经网络中使用的模型)开发更高效的在线算法。在线学习与生成式AI系统的集成也是一个新兴领域,在实时内容生成和交互式AI方面具有潜在应用。随着数据在数量和速度上的持续增长,在线学习将在机器学习系统中发挥越来越重要的作用。