1.一种信息推荐方法,其特征在于,包括:对项目所在的项目集合进行聚类,生成多个包括所述项目的类簇;
计算用户对所述项目在每个类簇中的短期兴趣权重和长期兴趣权重;
根据所述短期兴趣权重和长期兴趣权重计算用户对所述项目在每个类簇中的预测评分;
获取所述项目与各个类簇的相似度;
根据所述项目在每个类簇中的预测评分和所述项目与各个类簇的相似度计算得到所述项目的最终预测评分;
根据所述项目的最终预测评分将所述项目加入推荐列表。
2.根据权利要求1所述的方法,其特征在于,计算用户对所述项目在每个类簇中的短期兴趣权重的步骤,包括:其中,u代表用户,i代表项目;TS为用户u评价项目的平均时间间隔;Ti为用户u评价项目i的时间;T(last_C(i))是指用户在项目i所属的类簇C(i)中,评价与项目i相邻的上一个项目所用的时间;K是用户u对项目i所属的类簇中所有项目评价的总次数;
计算用户对所述项目在每个类簇中的长期兴趣权重的步骤包括:Long(u,i)=rating(u,i)×time(u,i)rating(u,i)代表用户u对项目i所属类簇中的项目的评分占所有类簇的所有项目评分的权重;
time(u,i)代表用户u对项目i的所属类簇中项目的评分次数占所有类簇中的所有项目的评分次数的权重;
其中,s代表项目i所属的类簇,A代表所有的类簇。
3.根据权利要求1所述的方法,其特征在于,根据所述短期兴趣权重和长期兴趣权重计算用户对所述项目在每个类簇中的预测评分的步骤,包括:Drift(u,i)=λ×Short(u,i)+(1-λ)×Long(u,i);
其中,λ为控制参数,0≤λ≤1; 是用户u在类别S中的平均评分,k是与本评分相关的与项目i相邻的项目j的个数;
SimS(i,j)表示类簇S中的项目i和与项目i相邻的项目j之间的相似度;
Ru,j表示用户u对与项目i相邻的项目j的评分。
4.根据权利要求1所述的方法,其特征在于,根据所述项目在每个类簇中的预测评分和所述项目与各个类簇的相似度计算得到所述项目的最终预测评分的步骤,包括:Sim(i,μk)表示项目i与第k个类簇的相似度;
P(k)表示用户u对项目i在第k个类簇中的评分;
n为类簇的个数;
μk为第k个聚类中心点。
5.根据权利要求1所述的方法,其特征在于,根据所述项目的最终预测评分将所述项目加入推荐列表的步骤,包括:根据所述项目的最终预测评分决定所述项目在推荐列表中的位置。
6.一种信息推荐装置,其特征在于,包括:聚类模块,用于对项目所在的项目集合进行聚类,生成多个包括所述项目的类簇;
评分计算模块,用于计算用户对所述项目在每个类簇中的短期兴趣权重和长期兴趣权重;
根据所述短期兴趣权重和长期兴趣权重计算用户对所述项目在每个类簇中的预测评分;
获取所述项目与各个类簇的相似度;
根据所述项目在每个类簇中的预测评分和所述项目与各个类簇的相似度计算得到所述项目的最终预测评分;
推荐列表生成模块,用于根据所述项目的最终预测评分将所述项目加入推荐列表。
7.根据权利要求6所述的装置,其特征在于,所述评分计算模块还用于:计算用户对所述项目在每个类簇中的短期兴趣权重,包括:其中,u代表用户,i代表项目;TS为用户u评价项目的平均时间间隔;Ti为用户u评价项目i的时间;T(last_C(i))是指用户在项目i所属的类簇C(i)中,评价与项目i相邻的上一个项目所用的时间;K是用户u对项目i所属的类簇中所有项目评价的总次数;
计算用户对所述项目在每个类簇中的长期兴趣权重,包括:Long(u,i)=rating(u,i)×time(u,i)rating(u,i)代表用户u对项目i所属类簇中的项目的评分占所有类簇的所有项目评分的权重;
time(u,i)代表用户u对项目i的所属类簇中项目的评分次数占所有类簇中的所有项目的评分次数的权重;
其中,s代表项目i所属的类簇,A代表所有的类簇。
8.根据权利要求6所述的装置,其特征在于,所述评分计算模块还用于:根据所述短期兴趣权重和长期兴趣权重计算用户对所述项目在每个类簇中的预测评分,包括:Drift(u,i)=λ×Short(u,i)+(1-λ)×Long(u,i);
其中,λ为控制参数,0≤λ≤1; 是用户u在类别S中的平均评分,k是与本评分相关的与项目i相邻的项目j的个数;
SimS(i,j)表示类簇S中的项目i和与项目i相邻的项目j之间的相似度;
Ru,j表示用户u对与项目i相邻的项目j的评分。
9.根据权利要求6所述的装置,其特征在于,所述评分计算模块还用于:根据所述项目在每个类簇中的预测评分和所述项目与各个类簇的相似度计算得到所述项目的最终预测评分,包括:Sim(i,μk)表示项目i与第k个类簇的相似度;
P(k)表示用户u对项目i在第k个类簇中的评分;
n为类簇的个数;
μk为第k个聚类中心点。
10.根据权利要求6所述的装置,其特征在于,所述推荐列表生成模块,还用于根据所述项目的最终预测评分决定所述项目在推荐列表中的位置。