推荐系统系列3-基于决策树做推荐系统的方法

Posted dongguadan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐系统系列3-基于决策树做推荐系统的方法相关的知识,希望对你有一定的参考价值。

1、决策树概念
    决策树是基于树的结构来进行决策的,这与人类的认知方法类似,例如:今天会下雨么?针对此问题我们首先会进行一系列的判断或者决策;今天阴天么,如果阴天,大概率
会下雨;如果晴天,大概率不下雨。如图1。
    技术图片
 图1
 
2、文本分类
    所谓文本分类,就是基于文本的特征将其划分到具体的类别当中,与决策树类似。只需要将文本的特征实例化,就可以将决策树的概念融合到文本分类中。
技术图片
                                                                                                                                              图2
 
3、xgboost
    XGBoost(eXtreme Gradient Boosting)全名叫极端梯度提升,本质上是一种高级的决策树(其实应该较回归树)。XGBoost是集成学习方法的王牌,在Kaggle数据挖掘比赛中,大部分获胜者用了XGBoost,XGBoost在绝大多数的回归和分类问题上表现的十分顶尖。
 
4、
    参考资料:《西瓜书》
    参考代码:https://github.com/dongguadan/recommender-system/tree/master/xgboost-Based_Filter
    数据集采用bbc提供的文本语料库:bbc.terms、bbc.classes、bbc.mtx。代码根据语料库将数据组织成特征矩阵,如图3:
技术图片
                                                                                                                               图3
    然后将特征矩阵随机划分成训练集(70%)、测试集(30%),进行训练、测试:文章共分为5类分别用0-4来表示;图4表示每篇文章所属分类;图5表示每篇文章归入某一类别的概率。

技术图片

                                                                                                                                  图4

技术图片

                                                                                                                                  图5

以上是关于推荐系统系列3-基于决策树做推荐系统的方法的主要内容,如果未能解决你的问题,请参考以下文章

LDA主题模型和推荐系统1

推荐系统系列4——基于物品的推荐

推荐系统之集体智慧再理解

[零基础入门推荐系统]基于用户和基于物品的协同过滤方法(理论+代码)

推荐系统从入门到入门——基于MapReuduce与Spark的分布式推荐系统构建

推荐系统简介(1~3)