主权项 |
一种融合社会网络和项目特征的移动应用推荐方法,其特征在于,包括以下步骤:1)从表征移动应用项目的节点集合中随机取出k个节点作为观测点;2)利用如下所示的项目相似度计算公式,计算项目与每个观测点之间的相似度ItemSim(A,B):<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open = '' close = ''><mtable><mtr><mtd><mrow><mi>I</mi><mi>t</mi><mi>e</mi><mi>m</mi><mi>S</mi><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mrow><mi>A</mi><mo>,</mo><mi>B</mi></mrow><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><mrow><mo>(</mo><mfrac><mi>ϵ</mi><mrow><mi>d</mi><mi>i</mi><mi>s</mi><mi>tan</mi><mi>t</mi><mrow><mo>(</mo><mrow><mi>A</mi><mo>,</mo><mi>B</mi></mrow><mo>)</mo></mrow><mo>+</mo><mi>ϵ</mi></mrow></mfrac><mo>)</mo></mrow><mo>*</mo><mi>α</mi></mrow></mtd></mtr><mtr><mtd><mrow><mo>+</mo><mrow><mo>(</mo><mfrac><mrow><mi>d</mi><mi>e</mi><mi>p</mi><mi>t</mi><mi>h</mi><mrow><mo>(</mo><mi>A</mi><mo>)</mo></mrow><mo>+</mo><mi>d</mi><mi>e</mi><mi>p</mi><mi>t</mi><mi>h</mi><mrow><mo>(</mo><mi>B</mi><mo>)</mo></mrow></mrow><mrow><mo>|</mo><mi>d</mi><mi>e</mi><mi>p</mi><mi>t</mi><mi>h</mi><mrow><mo>(</mo><mi>A</mi><mo>)</mo></mrow><mo>-</mo><mi>d</mi><mi>e</mi><mi>p</mi><mi>t</mi><mi>h</mi><mrow><mo>(</mo><mi>B</mi><mo>)</mo></mrow><mo>+</mo><mn>1</mn><mo>|</mo></mrow></mfrac><mo>)</mo></mrow><mo>*</mo><mi>β</mi></mrow></mtd></mtr><mtr><mtd><mrow><mo>+</mo><mrow><mo>(</mo><mfrac><mn>1</mn><mrow><mi>d</mi><mi>e</mi><mi>n</mi><mi>s</mi><mi>i</mi><mi>t</mi><mi>y</mi><mrow><mo>(</mo><mrow><mi>A</mi><mo>,</mo><mi>B</mi></mrow><mo>)</mo></mrow></mrow></mfrac><mo>)</mo></mrow><mo>*</mo><mi>γ</mi></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000827701710000011.GIF" wi="692" he="454" /></maths>ItenSim(A,B)∈[0,1],如果项目与观测点完全相同,则相似度ItemSim(A,B)为1;如果项目与观测点没有任何的共同特征,那么相似度ItemSim(A,B)为0;其中,distant(A,B)表示A与B之间的语义距离,ε为调节因子,取值为1,用于防止distant(A,B)值为0;depth(A)表示项目A所在节点的深度;depth(B)表示项目B所在节点的深度;density(A,B)表示A与B最近的共同祖先的子节点密度;α、β、γ取值范围均为[0,1],且α+β+γ=1;3)根据经上述步骤2)计算得到某节点与k个观测点之间的相似度,将该节点划归到相似度最高的观测点为中心的簇中;同理对所有节点进行划归,形成k个簇;4)将每个簇中到簇中其它所有点距离和最小的点作为新的观测点;5)迭代步骤2)~步骤4),直到这k个观测点收敛,得到最终的簇;6)计算目标用户u与其它用户在项目评分经历上的相似度;计算目标用户u对其它用户的信任度;根据top‑N最近邻选择策略,选择在项目评分经历上相似度最高的N个用户和信任度最高的N个的用户作为目标用户u的相似最近邻和信任最近邻,分别记为相似用户集合S和信任用户集合T;N为正整数;7)利用下式预测目标用户对未评分项目的偏好r″<sub>u,i</sub>:<img file="FDA0000827701710000021.GIF" wi="1166" he="727" />r″<sub>u,i</sub>表示用户u对项目i的预测评分;其中,UserSim(u,u<sub>s</sub>)和trust(u,u<sub>t</sub>)分别表示用户的相似度和信任度;<img file="FDA0000827701710000022.GIF" wi="44" he="54" />表示两个最近邻集合的评分预测在计算中所占的权重;<img file="FDA0000827701710000023.GIF" wi="52" he="61" />表示用户u评分的均值;u<sub>s</sub>为相似用户集合S中的某一用户,<img file="FDA0000827701710000024.GIF" wi="71" he="71" />表示用户u<sub>s</sub>评分的均值;u<sub>t</sub>为信任用户集合T中的某一用户,<img file="FDA0000827701710000025.GIF" wi="72" he="69" />表示用户u<sub>t</sub>评分的均值;<img file="FDA0000827701710000026.GIF" wi="87" he="102" />表示用户u<sub>s</sub>对项目i或其相似项目的评分;<img file="FDA0000827701710000027.GIF" wi="93" he="62" />表示用户u<sub>t</sub>对项目i的评分;8)根据用户对未评分项目的预测评分,选择预测评分前top‑N的项目作为推荐项目推荐给用户。 |