一、基本概念
1.1 什么是在线学习
- 在线学习,全称为在线机器学习;它是指数据按顺序到达,并被用来在每个步骤更新未来数据的预测技术;
- 离线学习(批量学习):
- 直观理解:在线学习,数据一个一个的到达,并且被一个一个的放入模型;模型每次根据输入的单个数据更新模型;
1.2 为什么需要在线学习
- 传统:传统机器学习中采用批量的模式,通常需要给定批量的数据,算法根据这些批量的数据更新模型,获得一个最终的模型。这在静态场景中获得很好的效果,比如图片识别,这张图片上这会儿一只狗,最终还是有只狗;
- 传统的局限性:当数据规模大时,其计算复杂度高、响应慢,无法用于实时性要求高的应用,无法适应动态性;
- 在线的优势:计算量小、可动态地适应新数据,或者数据本身就是时间的函数,例如,股票价格预测。
- 进一步改进:在线学习算法可能容易受到灾难性的干扰,这个问题可以通过增量学习方法来解决。