我有伪代码,但仍然努力在在线模式下实现岭回归。我使用双重形式,所以我不知道如何更新,以及其他困难。伪代码是here。在线岭回归中的正则化参数
到目前为止,我已经写了下面的:
输入为:X(1),...,X(M)M向量和y(1),...,Y(M)的目标。
输出为:F(X 1),...,F(X [M])模型预测
Ridge.Regression<-function(m,x){
b<- rep(0,m)
A<- a * diag(nrow(x))
for (t in 1:m){
pred[,t]<- b * (solve(A) %*% x[t,])
A<- A + x[t,] %*% x[t,]
b<- y[t] * x[t,]
b<- b + (y[t] * x[t,])
return(pred)}}
上面我所做过不起作用。输入矢量b和矩阵A的初始化有问题吗?
使参数a的常数值没有意义。我们在批量学习中使用交叉验证。在线学习有什么用途?
你的意思是“不起作用”是什么意思?你如何测试这个功能?此外,如果您对统计方法有疑问,最好在[stats.se]处询问。 – MrFlick
Ridge.Regression(m = 200,x = data)和a = 2,我在求解(A)%*%x [t,]中得到了不一致的参数。x我用了1列和200行,y也是一样。 – Waqas