首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于随机梯度下降的Matlab矩阵分解

基于随机梯度下降的Matlab矩阵分解
EN

Stack Overflow用户
提问于 2013-10-06 20:04:13
回答 1查看 2.2K关注 0票数 2

我必须将Matrix Rm_n分解成两个低秩矩阵(UK_m和VK*n),我这样做是为了用U和V来预测R的缺失值。

问题是,对于分解R,我不能使用Matlab分解方法,所以我必须使用目标函数来最小化sum-of-squared-errors,以提高分解的准确性:

详情如下:

我在这篇文章中的问题是,如何用最小化函数F,Matlab中使用随机梯度下降方法将R分解成U矩阵和V矩阵。

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-09 19:25:38

最后,我在此页的帮助下找到了答案:)

我在以下几个步骤中解释了这种方法:

  1. 创建Uk*m和Vk*n并任意填充它们
  2. Ui和Vj上目标函数的导数计算
  3. 梯度下降情况如下: 而(您的准则满足(优化误差函数F)) { Ui=Ui+a(U'i);Vj=Vj+a(V'j);使用Ui和Vj的新值计算F;}
  4. 用最小F,取U和V,计算转置(U)*V,估计结果为R (a步长学习速率)。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19213359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档