发明名称 一种基于非线性流形学的歌曲推荐方法
摘要 本发明属于计算机技术推荐方法领域,涉及一种基于非线性流形学的歌曲推荐方法。本发明的主要方法包括:建立用户与歌曲的关系模型;对歌曲进行分类降维操作;根据降维后获得的关系模型再通过歌曲推荐方法进行推荐。本发明的有益效果为,推荐较之传统协同过滤算法更加准确,推荐方案更加合理。
申请公布号 CN106503205A 申请公布日期 2017.03.15
申请号 CN201610948746.4 申请日期 2016.10.25
申请人 四川大学;电子科技大学 发明人 黄南京;王鸣晖;杨本章;陈涛;杨瀚;肖义彬;杨瑞丰;吴文南
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 成都点睛专利代理事务所(普通合伙) 51232 代理人 葛启函
主权项 一种基于非线性流形学习的歌曲推荐方法,其特征在于,包括以下步骤:a.建立用户与歌曲的关系模型:采用m×n矩阵R表示用户与歌曲的关系模型,设矩阵R中的元素为R<sub>ij</sub>,其中下标i为用户编号、下标j为歌曲编号,则R<sub>ij</sub>可通过如下公式计算:<maths num="0001"><math><![CDATA[<mrow><msub><mi>R</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>=</mo><mn>5</mn><mo>&times;</mo><mi>s</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>x</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msup><mi>e</mi><mrow><mo>-</mo><mo>|</mo><msub><mi>x</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>&times;</mo><msub><mi>t</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>|</mo></mrow></msup><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001139224480000011.GIF" wi="736" he="83" /></maths>其中,x<sub>ij</sub>的获取方法为:统计用户对歌曲的操作记录,并将操作记录分别标识为正面操作和负面操作,所述正面操作包括收藏、下载和分享,所述负面操作包括删除和屏蔽;判断每一次用户的操作为正面操作还是负面操作,若是正面操作,则x<sub>ij</sub>加1,若是负面操作,则x<sub>ij</sub>减1,t<sub>ij</sub>表示用户i对歌曲j的听歌时长,R<sub>ij</sub>=0表示用户i对歌曲j并未接触;sgn(x)是表示x的符号,如x为正数则为1若为负数则为‑1,否则是0;b.对歌曲进行分类,具体方法为:b1.根据矩阵R求歌曲j的K‑邻居:将矩阵R的每一列R<sub>j</sub>看作一个向量,求与向量j欧式距离最小的K首歌;b2.对每个K‑邻居集合,将其看作位于一个线性流形上,在这个线性流形上,R<sub>j</sub>的坐标用K‑邻居的坐标线性表示,该线性表示记作w,分量表示为w<sub>jk</sub>,其中若k不是j的K‑邻居,则w<sub>jk</sub>=0且w满足∑<sub>k</sub>w<sub>jk</sub>=1;w通过如下优化函数获得:<maths num="0002"><math><![CDATA[<mrow><msubsup><mi>min&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></msubsup><mo>|</mo><mo>|</mo><msub><mi>R</mi><mi>j</mi></msub><mo>-</mo><munder><mo>&Sigma;</mo><mi>k</mi></munder><msub><mi>w</mi><mrow><mi>j</mi><mi>k</mi></mrow></msub><mo>&times;</mo><msub><mi>R</mi><mi>k</mi></msub><mo>|</mo><mo>|</mo></mrow>]]></math><img file="FDA0001139224480000012.GIF" wi="661" he="173" /></maths> b3.在步骤b2的基础上对歌曲进行降维操作,将原矩阵R的m维降为d维:<maths num="0003"><math><![CDATA[<mrow><msub><mover><mi>R</mi><mo>~</mo></mover><mi>j</mi></msub><mo>=</mo><msup><mi>G</mi><mi>T</mi></msup><mo>&times;</mo><msub><mi>R</mi><mi>j</mi></msub></mrow>]]></math><img file="FDA0001139224480000013.GIF" wi="282" he="78" /></maths> 其中,G为m行d列的矩阵,G可通过如下公式获得:<maths num="0004"><math><![CDATA[<mrow><msubsup><mi>min&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></msubsup><mo>|</mo><mo>|</mo><msub><mover><mi>R</mi><mo>~</mo></mover><mi>j</mi></msub><mo>-</mo><munder><mo>&Sigma;</mo><mi>k</mi></munder><msub><mi>w</mi><mrow><mi>j</mi><mi>k</mi></mrow></msub><mo>&times;</mo><msub><mover><mi>R</mi><mo>~</mo></mover><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow>]]></math><img file="FDA0001139224480000014.GIF" wi="656" he="174" /></maths>c.采用步骤b3中获得的<img file="FDA0001139224480000021.GIF" wi="57" he="70" />作为矩阵列向量获得新的矩阵<img file="FDA0001139224480000022.GIF" wi="59" he="55" />采用基于歌曲的协同过滤算法,根据矩阵<img file="FDA0001139224480000023.GIF" wi="44" he="51" />对用户进行歌曲推荐。
地址 610065 四川省成都市武侯区一环路南一段24号