简介
机器学习领域中,可将机器学习算法分为在线学习和离线学习。需要根据数据选择不同的线性可分和线性不可分的核函数。
离线学习
离线学习也通常称为批学习,是指对独立数据进行训练,将训练所得的模型用于预测任务中。将全部数据放入模型中进行计算,一旦出现需要变更的部分,只能通过再训练(retraining)的方式,这将花费更长的时间,并且将数据全部存在服务器或者终端上非常占地方,对内存要求高。
正是由于这个问题,传统的离线学习不能直接用于在线学习场景:
- 离线需要多次传递训练数据,由于数据量的二次时间复杂度,导致处理效率很低
- 离线需要分别在训练集和验证集上训练和选择,但在线学习不将训练与选择分离,不分割训练数据
- 在批量学习设置中,通常假设数据是根据独立同分布设置的,但是在在线学习设置中,对训练数据的假设是宽松或几乎没有的。
离线学习的缺点:
1、 模型训练过程低效
2、 训练过程不易拓展于大数据场景。
3、 模型无法适应动态变化的环境
在线学习
在线学习也称为增量学习或适应性学习,是指对一定顺序下接收数据,每接收一个数据,模型会对它进行预测并对当前模型进行更新,然后处理下一个数据。这对模型的选择是一个完全不同,更复杂的问题。需要混合假设更新和对每轮新到达示例的假设评估。换句话说,你只能访问之前的数据,来回答当前的问题。
The main objective of online learning algorithms is to minimize the regret
在线学习算法的主要目标是使regret最小化
在线学习算法的优化
- 通过"损失函数+正则化向"的优化框架
- 还可以通过在线学习与深度学习相结合
在线学习与当前研究热点深度学习有待更加深入有效的融合,在线学习的分布式实现有待进一步探索和研究,在线学习是否能与强化学习结合,有待进一步探索。