传统的新闻推荐算法主要是依托于协同过滤算法,主要是利用item-based和used-based两种过滤方式来处理新闻信息,这种方式主要思想是利用文本之间的相似性来突出用户之间的相似性,但是在实际新闻推荐上并不能得到非常理想的推荐的效果,主要原因主要有以下,第一,基于协同过滤的新闻推荐算法主要是突出了文本的相似性,而这种相似性并不能完全代表用户的相似性;第二,基于协同过滤的新闻推荐算法,并没有将用户作为一个研究对象,因此数据挖掘深度比较浅,并不能挖掘出用户的兴趣爱好。而本文的研究意义,将用户作为一个研究对象,通过主题分析的方式来探索用户的特点,尝试通过主题分析真正做到个性化新闻推荐,来完成个性化主页定制。
第三章推荐模型的建立
3.1新闻语料库的形成
基于字符串匹配的分词方法。此方法按照不同的扫描方式,逐个查找词库进行分词。根据扫描方式可细分为:正向最大匹配,反向最大匹配,双向最大匹配,最小切分(即最短路径);总之就是各种不同的启发规则。
全切分方法。它首先切分出与词库匹配的所有可能的词,再运用统计语言模型决定最优的切分结果。它的优点在于可以解决分词中的歧义问题。下图是一个示例,对于文本串“南京市长江大桥”,首先进行词条检索(一般用Trie存储),找到匹配的所有词条(南京,市,长江,大桥,南京市,长江大桥,市长,江大桥,江大,桥),以词网格(wordlattices)形式表示,接着做路径搜索,基于统计语言模型(例如n-gram)找到最优路径,最后可能还需要命名实体识别。下图中“南京市长江大桥”的语言模型得分,即P(南京市,长江,大桥)最高,则为最优切分。
由字构词的分词方法。可以理解为字的分类问题,也就是自然语言处理中的sequencelabeling问题,通常做法里利用HMM,MAXENT,MEMM,CRF等预测文本串每个字的tag,譬如B,E,I,S,这四个tag分别表示:beginning,inside,ending,single,也就是一个词的开始,中间,结束,以及单个字的词。例如“南京市长江大桥”的标注结果可能为:“南(B)京(I)市(E)长(B)江(E)大(B)桥(E)”。由于CRF既可以像最大熵模型一样加各种领域feature,又避免了HMM的齐次马尔科夫假设,所以基于CRF的分词目前是效果最好的。
虽然字构词的分词方法分词效果比较好,但是计算复杂,并且内容繁杂的词库支持,这里我们使用全切分方法的方式来切词,虽然全切分分词效果相对于字构词的分词方法分词效果相对差点,但是算法简单,计算速度快,尤其对于海量文本来说,利用此种方式可以迅速得到语料库,加快算法流程
3.2文本处理和特征处理
IDF的主要思想是:如果包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t具有很好的类别区分能力。如果某一类文档C中包含词条t的文档数为m,而其它类包含t的文档总数为k,显然所有包含t的文档数n=m+k,当m大的时候,n也大,按照IDF公式得到的IDF的值会小,就说明该词条t类别区分能力不强。但是IDF也有不足之处,如果某个词条在某一类的文档中普遍出现,则说明该词条能够很好代表这一类的文本的特征,这样的词条应该给它们赋予较高的权重。
那么各自的词频:TF(中国女排)=8/400=0.02,TF(世锦赛)=10/400=0.025,TF(冠军)=20/400=0.04。而IDF(中国女排)=LOG(10000000000/20000000)=2.69897,
3.3LDA(主题分析)算法
这个概率公式可以用矩阵表示,如下图显示:
LDA的这三位作者在原始论文中给了一个简单的例子。比如假设事先给定了这几个主题:Arts、Budgets、Children、Education,然后通过学习的方式,获取每个主题Topic对应的词语。如下图所示:
由于LDA算法中涉及了大量的统计学的和概率论的知识,主要涉及的二项式分布、多项式分布、beta分布、狄利克雷分布(Dirichlet分布)、共轭先验概率分布、取样,算法非常复杂,但是主要的思路就是通过我们文档着词语的分布最终得到文档和主题的分布。因此通过我们筛选的语料库,将该语料库导入我们的模型中,最终可以得到我们的主题分布的情况。
3.4关联规则的发现
上表是某一位用户在10:00~11:00网页的浏览主题分布情况,在这个过程中分别浏览了关于足球,网球,篮球,羽毛球的主题的网页,包含6个事务。项集I={足球,网球,运篮球,羽毛球}。考虑关联规则(频繁二项集):足球与网球,事务1,2,3,4,6包含足球事务1,2,6同时包含足球和网球,X^Y=3,D=6,支持度(X^Y)/D=0.5;X=5,置信度(X^Y)/X=0.6。若给定最小支持度α=0.5,最小置信度β=0.6,认为主题足球和主题网球之间存在关联,我们认为改用,喜欢同时阅读足球和网球主题的新闻信息,因此我们可以同时将两者的新闻推送到用户那里去。
3.5算法对比
3.6个性化调参
第四章推荐系统架构
参考文献
[1]杨杰.个性化推荐系统应用及研究[C].最后修订于,2009.6
[2]张玉.个性化推荐系统应用及研究[C].2008.1
[3]符燕华.Web文本挖掘技术研究[M].计算机研究与发展,2000.11
[4]朱达欣,蔡丹琳.文本挖掘原理[C].泉州师范学院学报,2003.04
[5]ArindamBanerjeeandSugatoBasu.TopicModelsoverTextStreams:AStudyofBatchandOnlineUnsupervisedLearning.InSDM.SIAM,2007.
[6]ArindamBanerjeeandSugatoBasu.TopicModelsoverTextStreams:AStudyofBatchandOnlineUnsupervisedLearning.InSDM.SIAM,2007.
[7]FengYan,NingyiXu,andYuanQi.Parallelinferenceforlatentdirichletallocationongraphicsprocessingunits.InNIPS,2009.
[8]ArthurAsuncion,PadhraicSmyth,andMaxWelling.Asynchronousdistributedlearningoftopicmodels.InNIPS,pages81–88,2008.