程序在下面,我想问的问题:是不是无论用户兴趣矩阵是什么,在初始矩阵和全网矩阵一样的情况下,最后迭代得到的学习矩阵是一样的??求解答求解答!!我试了两个不一样的用户兴趣矩阵,得到的学习矩阵完全一样,求解是为什么?多谢大家了!
x_1<-read.csv("初始矩阵0.05.csv",header=F)
x_1<-as.matrix(x_1)
b<-read.csv("用户兴趣矩阵.csv")
a<-read.csv("全网矩阵.csv")
a<-a[,-1]
a<-as.matrix(a)
a<-a^2
b<-b[,-1]
b<-as.matrix(b)
r_1<-b-a*x_1;
p_1<-t(a)*r_1;
q_1<-1/2*(p_1+t(p_1));
x_2<-x_1+(norm(r_1, "F")/norm(q_1,"F"))^2*q_1;
r_2<-b-a*x_2;
p_2<-t(a)*r_2;
q_2<-p_2-diag(t(p_2)*q_1)/(norm(q_1,"F"))^2*q_1;
n<-120000
for(k in 2:n){
x_2<-x_2+(norm(r_2,"F")/norm(q_2,"F"))^2*q_2;
r_2<-b-a*x_2;
p_2<-t(a)*r_2;
q_2<-p_2-diag(t(p_2)*q_2)/(norm(q_2,"F"))^2*q_2;
k<-k+1;
}
R<-norm(r_2,"F")
write.csv(x_2,"学习矩阵.csv")