支持向量机的增量学习
支持向量机的增量学习最近在提出或算法。将工作样本集的规模减到最小—两个样本。之所以需要两个样本是因为等式线性约束的存在使得同时至少有两个乘子发生变化。由于只有两个变量,而且应用等式约束可以将其中一个用另一个表示出来,所以迭代过程中每一步的子问题的最优解可以直接用解析的方法求出来。这样,算法避开了复杂的数值求解优化问题的过程此外,还设计了一个两层嵌套循环分别选择进入工作样本集的样本,这种启发式策略大大加快了算法的收敛速度。标准样本集的实验结果证明,表现出在速度方面的良好性能。子问题的规模和迭代的次数是一对矛盾,将工作样本集的规模减少到,一个直接的后果就是迭代次数的增加。所以实际上是将求解子问题的耗费转嫁到迭代上,然后在迭代上寻求快速算法。但是,迭代策略的思想是可以用到其他迭代算法中,可见还有改进的余地。SMO在实际应用中取得了较好的效果,但它也存在着一些问题。算法每次迭代都要更新闽值,但是该值有可能是无法确定的例如不存在的样本,尽管这种情况很少出现,这时采用的方法是确定出的上下界然后取平均值另外,每一次迭代过程中的闭值仅取决于上次迭代结果的两个变量的最优值,用这个右值判断样本是否满足迭代结果,这就可能存在某些达到最优值的本却不满足条件的情况,从而影响了该算法的效率。解决算法速度问题的另一个途径是采用序列优化的思想。这种方法主要目的是研究当出现新的单个样本时,它与原有样本集或其子集,或是原有样本集训练结果的关系,例如,它的加入对原有样本集的支持向量集有什么样的影响,怎样迅速地确定它对新的分类器函数的贡献等等。增量学习技术是一种得到广泛应用的智能化数据挖掘与知识发现技术。其思想是当样本逐步积累时,学习精度也要随之提高。与传统的学习技术相比,增量学习技术不但可以舍去无用样本,减少存储数据所占用的空间,而且可以充分利用历史学习的结果,显著节省后继训练时间。一种机器学习方法是否具有良好的增量学习功能己经成为评价其性能优劣的重要标准之一。经典的支持向量机理论与增量式学习并不具备直接的相容性。但是支持向量机训练所得的支持向量能够完全反映分类超平面的信息,而支持向量通常只占训练样本很小的一部分,这对支持向量机增量学习算法的构建具有重要的意义。
页:
[1]