一、决策树概念
决策树是基于树的结构来进行决策的,这与人类的认知方法相似,例如:今天会下雨么?针对此问题咱们首先会进行一系列的判断或者决策;今天阴天么,若是阴天,大几率
会下雨;若是晴天,大几率不下雨。如图1。
图1
二、文本分类
所谓文本分类,就是基于文本的特征将其划分到具体的类别当中,与决策树相似。只须要将文本的特征实例化,就能够将决策树的概念融合到文本分类中。
图2
三、xgboost
XGBoost(eXtreme Gradient Boosting)全名叫极端梯度提高,本质上是一种高级的决策树(其实应该较回归树)。XGBoost是集成学习方法的王牌,在Kaggle数据挖掘比赛中,大部分获胜者用了XGBoost,XGBoost在绝大多数的回归和分类问题上表现的十分顶尖。
四、
参考资料:《西瓜书》
参考代码: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表示每篇文章纳入某一类别的几率。

图4git

图5github