构建企业级推荐系统:算法、工程实现与案例分析
上QQ阅读APP看书,第一时间看更新

5.5.1 基于用户过去的行为来分析用户的兴趣点

首先将所有新闻按照事先确定好的类别分成若干类(主题):C={c1,c2,c3,…,cn},如“世界”“体育”“娱乐”等类别。

然后计算某个用户u在某段时间周期t(比如按照一个月一个周期等)内的浏览行为在上述类别上的分布,记为

这里,Ni代表用户u在时间周期t内点击主题类别ci的次数。Ntotal是该用户在这段时间周期内点击新闻的总数量。D(u,t)表示用户u在时间周期t内在各个新闻主题类别上的时间花费分布,反映了用户的兴趣分布。

新闻是有地域差异性的,同样,类似于单个用户的兴趣偏好分布,我们可以统计某个国家或者某个地区的所有用户点击行为的整体在时间周期t内在某新闻主题上的分布。我们将该分布记为D(t)。计算方法和单个用户一样,即将该国家或地区所有用户当成一个整体来计算。

Google通过大量的数据分析,最终得到如下4个结论,后面的贝叶斯框架也是基于这几个结论展开的。关于细节的分析,读者可以阅读本章参考文献[2]

·用户的兴趣确实随着时间变化。

·公众对新闻的点击分布反映了兴趣的发展趋势,并受到重大事件(如世界杯等)的影响。

·不同国家/地区对新闻的偏好是不一样的,存在不同的发展趋势。

·从某种程度上说,单个用户的兴趣变化趋势是受到该用户所在国家/地区的新闻趋势变化的影响的。

有了上面的基本概念和初步数据分析得到的结论作为基础,下面说明如何用贝叶斯框架来为用户的兴趣建模。