主权项 |
基于邻近项目slope one算法的改进推荐方法,其特征在于:先对原始数据进行数据处理,之后采用k‑means聚类算法筛选与目标项目邻近的k个相似项目,再用slope one算法为当前活跃用户的目标项目预测评分,最后根据用户—项目评分矩阵向用户推荐项目;该方法具体步骤如下:1)结合数据集中的评分数据,采用k‑means聚类算法计算项目间的相似度的矩阵,构建项目相似性矩阵;2)根据用户u评价过的项目i,选择与用户u评价过的项目i最为相似的k个项目组成k邻近项目集合K′;3)使用公式(1)计算目标项目Item<sub>j</sub>与k邻近项目集合K′中项目Item<sub>i</sub>之间的评分偏差dev<sub>j,i</sub>,其中,u<sub>j</sub>和u<sub>i</sub>分别表示评价过项目Item<sub>j</sub>的用户和项目Item<sub>i</sub>的用户;S<sub>j,i</sub>(x)为对目标项目Item<sub>j</sub>与其他项目Item<sub>i</sub>进行过评分的用户集合;card(S)表示集合S中的元素个数;<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>dev</mi><mrow><mi>j</mi><mo>,</mo><mi>i</mi></mrow></msub><mo>=</mo><munder><mo>Σ</mo><mrow><mi>u</mi><mo>∈</mo><msub><mi>S</mi><mrow><mi>j</mi><mo>,</mo><mi>i</mi></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></mrow></munder><mfrac><mrow><msub><mi>u</mi><mi>j</mi></msub><mo>-</mo><msub><mi>u</mi><mi>i</mi></msub></mrow><mrow><mi>c</mi><mi>a</mi><mi>r</mi><mi>d</mi><mrow><mo>(</mo><mrow><msub><mi>S</mi><mrow><mi>j</mi><mo>,</mo><mi>i</mi></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></mrow><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931277300000011.GIF" wi="694" he="127" /></maths>4)根据公式(2)计算用户u对目标项目Item<sub>j</sub>的预测评分P(u)<sub>j</sub>,并最终得到用户—项目评分矩阵R′m×n,其中,R<sub>j</sub>为用户u已评分项目的集合;<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>P</mi><msub><mrow><mo>(</mo><mi>u</mi><mo>)</mo></mrow><mi>j</mi></msub><mo>=</mo><mfrac><mrow><munder><mo>Σ</mo><mrow><mi>i</mi><mo>∈</mo><msub><mi>R</mi><mi>j</mi></msub></mrow></munder><mrow><mo>(</mo><msub><mi>dev</mi><mrow><mi>j</mi><mo>,</mo><mi>i</mi></mrow></msub><mo>+</mo><msub><mi>u</mi><mi>i</mi></msub><mo>)</mo></mrow></mrow><mrow><mi>c</mi><mi>a</mi><mi>r</mi><mi>d</mi><mrow><mo>(</mo><msub><mi>R</mi><mi>j</mi></msub><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931277300000012.GIF" wi="604" he="181" /></maths>5)根据步骤4)得到的用户—项目评分矩阵R′m×n,为用户u推荐出评分最大的r个预测项目。 |