Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2009-04-28
住址: 合肥
年龄: 39
帖子: 1
声望力: 0 ![]() |
![]()
对于原矩阵X,使用迭代算法寻找最优矩阵分解W和H ,使得 X≈WH
定W1为W矩阵的转置,H1为矩阵H的转置; H' <-- H'*(W1*X)/(W*W*H1) 这几句用MATLAB怎么写呀? |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2009-03-15
年龄: 37
帖子: 1
声望力: 0 ![]() |
![]()
X=[];
W=[]; H=[]; W1=W'; H1=H'; n=0; N=[]; while n<=N;%N为迭代次数 H1=H1*(W1*X)/(W*W*H1) n=n+1; end H=H1' W=W1' 上面的参数都与你的相同,N表示迭代次数,由你自己确定; 下面是一个训练例子: X=rand(2); W=rand(2); H=rand(2); W1=W'; H1=H'; N=9; n=0; while n<=N;%N为迭代次数 H1=H1*(W1*X)/(W*W*H1) n=n+1 end H=H1' W=W1' |
![]() |
![]() |