本文参考了博文Online Learning in Clojure和论文Pegasos: Primal Estimated sub-GrAdient SOlver for SVM(PDF)
online learning
Online learning的算法结构是非常简单的,下面的描述是监督的online learning算法框架,其中有经验损失函数\(L\),样本流\(S\),样本的格式为\((x,y)\):
Initialise a starting model w
While there are more examples in S
Get the next feature vector x
Predict the label y' for x using the model w
Get the true label y for x and incur a penaly L(y,y')
Update the model w if y ≠ y'
一般来是,训练出来的模型都是一个与样本相同维度的向量。对应二分的分类器,往往涉及到的是计算内积\(\langle w,x \rangle\),模型的更新是沿着损失函数的梯度下降方向的。
Pegasos
论文Pegasos: Primal Estimated sub-GrAdient SOlver for SVM是一种svm的online learning算法。