首页 百科知识 在线机器学习

在线机器学习

时间:2022-10-01 百科知识 版权反馈
【摘要】:在线机器学习是一种动态的学习过程,它采用机器学习算法对动态获得的信息进行分析和处理,通过动态学习的结果来对算法中的预测假设立即进行调整以指导接下来的学习过程。在机器学习中,在线学习是一种通过每次学习得到一个事件的归纳模型,它的目标是对事件的反馈进行预测。例如,对于一个对股市评估的实例,通过在线算法可以预测某只股票第二天的走势。

7.3 在线机器学习

在线机器学习是一种动态的学习过程,它采用机器学习算法对动态获得的信息进行分析和处理,通过动态学习的结果来对算法中的预测假设立即进行调整以指导接下来的学习过程。

在机器学习中,在线学习是一种通过每次学习得到一个事件的归纳模型,它的目标是对事件的反馈进行预测。例如,对于一个对股市评估的实例,通过在线算法可以预测某只股票第二天的走势。在线学习的一个显著特点就是,当进行预测之后很快就可以得到事件的真实反馈,而这个信息则可以被算法用来对假设预测进行调整;之后就是通过不断地重复进行这种预测、调整的过程,使得算法的预测越来越接近真实情况。

从另一个角度讲,在线学习算法可以说是通过一系列的试探来实现的,每一次的试探可以分成三步。首先,算法接收到一个事件;其次,算法便可以对该事件的反馈进行预测;最后,在真实事件结束之后,算法就可得到事件的真实反馈。在这个过程中,第三步是最重要的,因为在线算法的一个核心就是通过真正的反馈和预测反馈间的差异来对之前的假设进行调整,以此来指导新的试探。该算法就是要在预测值和实际观察值之间建立一个性能评价函数,通过这个评价来最小化两者间的差距。例如,对股市的预测算法中,是通过最小化预测值和观察值之间的方差来使得算法准确性不断提高的;另外一个比较流行的性能评测标准是在分类问题中,通过对分类样本中错误分类的样本点的数目的最小化来实现的。

由于在线学习算法可以不断地从实际观察得到的情况和自己预测情况的差异间得到反馈,因而,在线学习算法就算对于比较苛刻的条件,仍然能通过进行适应和学习以得到性能的提高。对于一些并非服从某一固定分布得到的事件,在线学习算法也能在很大程度上保证性能。对于分类问题,只要分类在一定程度上是合理的,在线学习算法一般都能通过学习来预测得到正确的分类方法。例如,perceptron和winnow这两个很流行的在线学习算法在处理分类问题时,如果在分类数据中存在超平面可以将数据分开,就可以得到很好的效果。这些算法甚至对于在学习过程中超平面会发生少量变动的情况,也可以有较好的效果。

正如其他许多算法一样,在线学习算法的优势同时也是它的劣势,在线学习算法的准确性依赖于不断地通过从实际得到的反馈来对算法进行调整。但是在很多问题中,很难保证可以快速且准确地得到问题的反馈。例如,对于一个光学字符识别的系统而言,在训练过程中需要专家对大量训练数据进行标注来帮助算法调节参数。但是,在光学字符识别系统的使用过程中,对于实际要处理的数据就很难以一种便捷的方式找到其准确的标注,也就谈不上对算法进行调整更新了。当然,对于预测类的问题而言,在线学习算法需要做的只是等待未来事件的发生即可,比如对于之前提到的对股票价格进行预测的例子,我们只要等待到程序预测的时间到来就可以自然而然地获得这个时刻股票的真实价格了。

此外,作为一个实时的、动态的学习过程,在线学习算法对时间效率的要求非常高,要求算法在短时间内可以做出尽可能接近真实结果的预测。如果算法所消耗时间过长,比如将要预测的时间点已经到了可是算法还没有得出结果,那么就失掉了在线学习的意义。我们再回到对股市预测的这个例子中,比如算法的目的是可以根据前一天的收盘价格预测出第二天的收盘价格,如果程序的运行时间是几个小时的话那么是可以接受的,但是如果程序需要运行的时间超过二十四小时的话,那么这个计算结果就算是再准确也失去了实际的意义。在围棋对弈中也存在这个问题,对于一手棋而言,思考十分钟是可以接受的,但是如果思考了一周才得出结果,那么这个就超出了我们可以容忍的范围。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈