在线学习还是离线学习?


Answers:


26

在线学习意味着您在输入数据时就在做。离线意味着您拥有静态数据集。

因此,对于在线学习,您(通常)具有更多数据,但是您有时间限制。可能影响在线学习的另一个问题是您的概念可能会随着时间而改变。

假设您要构建一个分类器来识别垃圾邮件。您可以获取大量的电子邮件,对其进行标记,然后在其上训练分类器。这将是离线学习。或者,您可以接收所有进入系统的电子邮件,并不断更新分类器(标签可能有点棘手)。这将是在线学习。


7
是的,需要稍作澄清的是,至少如机器学习中所研究的那样,在线学习算法大多是假设与数据集的大小相比,您存储示例的能力非常有限。在最有限的情况下,您一次只能看到一个示例,然后在使用它来更新分类器之后就不得不忘记它。
哈兰

8

术语“在线”过载,因此在机器学习领域引起混乱。

“在线”的相反是批处理学习。在批处理学习中,学习算法在消耗了整个批处理之后更新其参数,而在在线学习中,该算法在从1个训练实例学习后更新了其参数。迷你批处理学习是一端的批处理学习和另一端的在线学习之间的中间点。

同样,“何时”输入数据或是否能够存储数据与在线或批处理学习正交。

与批处理学习相比,在线学习被认为收敛于最小值的速度较慢。但是,在整个数据集都不适合存储的情况下,使用在线学习是可以接受的折衷方案。


我不认为这是真的。您所描述的是可用于在线或离线问题设置的随机(或在线)梯度下降优化算法。
danijar

我相信“随着数据的进入”指的是在线和离线算法,en.wikipedia.org / wiki / Online_algorithm。在线算法->数据输入过程。在线学习->在培训期间逐步更新基础模型。
gokul_uf

4

在线学习(也称为增量学习):我们只考虑示例的一个介绍。在这种情况下,按照学习算法规定的方式依次使用每个示例,然后将其丢弃。在给定阶段进行的权重更改具体取决于所呈现的(当前)示例,并且可能取决于模型的当前状态。这是时变规则的自然过程,其中示例可能一次都无法使用。

离线学习:权重变化取决于整个(训练)数据集,从而定义了全局成本函数。重复使用这些示例,直到实现该成本函数的最小化。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.