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

1、决策树概念     决策树是基于树的结构来进行决策的,这与人类的认知方法类似,例如:今天会下雨么?针对此问题我们首先会进行一系列的判断或者决策;今天阴天么,如果阴天,大概率 会下雨;如果晴天,大概率不下雨。如图1。     推荐系统系列3-基于决策树做推荐系统的方法  图1   2、文本分类     所谓文本分类,就是基于文本的特征将其划分到具体的类别当中,与决策树类似。只需要将文本的特征实例化,就可以将决策树的概念融合到文本分类中。 推荐系统系列3-基于决策树做推荐系统的方法                                                                                                                                               图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-基于决策树做推荐系统的方法                                                                                                                                图3     然后将特征矩阵随机划分成训练集(70%)、测试集(30%),进行训练、测试:文章共分为5类分别用0-4来表示;图4表示每篇文章所属分类;图5表示每篇文章归入某一类别的概率。

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

                                                                                                                                  图4

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

                                                                                                                                  图5

上一篇:python – 为什么xgboost.cv和sklearn.cross_val_score给出不同的结果?


下一篇:XGBoost算法原理小结