主权项 |
一种基于收听序列和元数据的上下文感知音乐推荐方法,包括如下步骤:(1)收集用户的完整音乐收听序列及其基本信息;所述的完整音乐收听序列包含用户历史对于音乐的每条收听记录,所述的基本信息包括完整音乐收听序列中每条收听记录所对应音乐的演唱者以及所属专辑;(2)根据所有用户的完整音乐收听序列及其基本信息,建立以下目标函数L:<maths num="0001"><math><![CDATA[<mrow><mi>L</mi><mo>=</mo><munder><mo>Σ</mo><mrow><msub><mi>A</mi><mi>u</mi></msub><mo>∈</mo><mi>A</mi></mrow></munder><munder><mo>Σ</mo><mrow><msubsup><mi>h</mi><mi>i</mi><mi>u</mi></msubsup><mo>∈</mo><msub><mi>H</mi><mi>u</mi></msub></mrow></munder><mi>ln</mi><mi> </mi><mi>P</mi><mrow><mo>(</mo><msubsup><mi>h</mi><mi>i</mi><mi>u</mi></msubsup><mo>|</mo><msubsup><mi>h</mi><mrow><mi>i</mi><mo>±</mo><mi>c</mi></mrow><mi>u</mi></msubsup><mo>,</mo><msub><mi>H</mi><mi>u</mi></msub><mo>)</mo></mrow><mo>+</mo><mi>β</mi><mo>·</mo><munder><mo>Σ</mo><mrow><msub><mi>m</mi><mi>j</mi></msub><mo>∈</mo><mi>M</mi></mrow></munder><munder><mo>Σ</mo><mrow><msub><mi>m</mi><mi>l</mi></msub><mo>∈</mo><mi>M</mi></mrow></munder><mi>s</mi><mrow><mo>(</mo><msub><mi>m</mi><mi>j</mi></msub><mo>,</mo><msub><mi>m</mi><mi>l</mi></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000935959680000011.GIF" wi="1358" he="151" /></maths>其中:A表示所有用户组成的用户集群,A<sub>u</sub>表示用户集群A中的第u个用户,H<sub>u</sub>表示用户A<sub>u</sub>的完整音乐收听序列,<img file="FDA0000935959680000012.GIF" wi="60" he="71" />表示完整音乐收听序列H<sub>u</sub>中的第i条收听记录,<img file="FDA0000935959680000013.GIF" wi="77" he="71" />表示收听记录<img file="FDA0000935959680000014.GIF" wi="59" he="71" />的上下文记录即包括收听记录<img file="FDA0000935959680000015.GIF" wi="58" he="71" />的前c条以及后c条收听记录,<img file="FDA0000935959680000016.GIF" wi="338" he="71" />表示上下文记录<img file="FDA0000935959680000017.GIF" wi="75" he="70" />及完整音乐收听记录H<sub>u</sub>下观测到收听记录<img file="FDA0000935959680000018.GIF" wi="58" he="68" />的概率,c为大于0的自然数,i和u均为自然数且1≤i≤m,1≤u≤n,m为完整音乐收听序列H<sub>u</sub>中收听记录的总数量,n为用户集群A中用户的总数量;β为预设的权重系数,M表示所有音乐组成的乐库,m<sub>j</sub>和m<sub>l</sub>分别表示乐库M中的第j首音乐和第l首音乐,s(m<sub>j</sub>,m<sub>l</sub>)为音乐m<sub>j</sub>与音乐m<sub>l</sub>的元数据相似度函数,j和l均为自然数且1≤j≤k,1≤l≤k,k为乐库M中音乐的总数量;(3)对上述目标函数L进行最大化求解,以求得乐库M中每首音乐的特征向量;进而对用户完整音乐收听序列中各条收听记录所对应音乐的特征向量求平均,得到用户的全局音乐收听兴趣向量;(4)从用户完整音乐收听序列中提取当前时刻之前一段时间内的收听记录组成近期音乐收听序列;进而对近期音乐收听序列中各条收听记录所对应音乐的特征向量求平均,得到用户的上下文音乐收听兴趣向量;(5)根据每首音乐的特征向量以及用户的全局音乐收听兴趣向量和上下文音乐收听兴趣向量,计算出用户对于每首音乐的兴趣值;进而根据兴趣值对乐库M中的所有音乐从大到小排序,并提取兴趣值最大的若干首音乐推荐给用户。 |