本文主要是介绍推荐算法1-content based recommendation,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
由于本人从来没有真正意义接触过推荐算法,但是找工作时时不时被问到,所以为了避免完全答不出来的尴尬,就临时抱佛教,不求深究,只当了解。所以如果你是查找资料不小心点进来,估计你要失望了,不过文章应该都很短,所以可以随意浏览一下,于你就当温习之用,与我就当笔记之效。
推荐算法,先按照大的思想分为两类:content based recommendation,基于内容的推荐算法,简称CB算法;Collaborative Filtering Recommendations,协同过滤算法,简称CF算法是如今比较流行的算法;
CB算法的主要步骤:
- Item representation
- Profile learning
- Recommendation
1.Item representation
也就是为每个item抽取特征,从而表示为特征向量。
比如,如果item是文本,而对文本进行特征抽取是一项比较经典的问题。
- 先对文本进行分词,简单而言就是将一段话分割成词的组合。比较有代表性的分词方法比如:最大匹配法、最大概率法分词、最短路径分词方法;
- 然后对分词结果进行特征映射,大体可以分为三类:布尔模型、向量空间模型、概率模型;
布尔模型:就是直接统计每个词在该文档中是否出现,出现就为1,不出现就为0;
向量空间模型(VSM):向量空间模型中将文档表达为一个矢量,看作向量空间中的一个点;一般涉及两个概念,词频(term frequency)和逆文档概率(document frequency),词频就是指一个词出现的次数,出现次数越多说明对其属性标注越有意义;逆文档概率,代表包含该词的文档比率越高,说明该文档的属性标注的意义就不大。
概率模型:没时间了解,pass,以后再补充吧。
2.Profile learning
这部分就比较熟悉了,既然我们已经为每个item进行了特征表示,接下来的任务就是建立分类模型。简单而言,就是我们已经存在一些用户的历史信息,比如 {(it
这篇关于推荐算法1-content based recommendation的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!