概念:
决策树模型是机器学习的各种算法模型中比较好理解的一种模型,它的基本原理是通过对一系列问题进行if/else的推导,最终实现相关决策。
建立决策树的依据:(CART树)
决策树模型的建树依据主要用到的是基尼系数的概念。
基尼系数(gini)用于计算一个系统中的失序现象,即系统的混乱程度。基尼系数越高,系统的混乱程度就越高。
建立决策树模型的目的就是降低系统的混乱程度,从而得到合适的数据分类效果。
找基尼系数越小越适合做根节点。
决策树可以解决哪些问题:
1、回归决策树,解决回归问题
2、分类决策树,解决分类问题
代码举例:
from sklearn.tree import DecisionTreeClassifier # 分类树
X = [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]
y = [1, 0, 0, 1, 1]
model = DecisionTreeClassifier(random_state=0)
model.fit(X, y)
print(model.predict([[5, 5]]))
决策树的类型:
1、ID3
2、C4.5
3、CART
决策树思想的来源非常朴素,程序设计中的条件分支结构就是if-else结构,最早的决策树就是利用这类结构分割数据的一种分类学习方法
决策树:
- 是一种树形结构,本质是一颗由多个判断节点组成的树
- 其中每个内部节点表示一个属性上的判断,
- 每个分支代表一个判断结果的输出,
- 最后每个叶节点代表一种分类结果。
决策树的分类依据:
熵 Entropy 是“混乱”程度的量度
1、信息增益
2、信息增益率
3、gini(基尼)系数
以gini系数为依据划分树,目标是gini越小,表示系统内部越纯,越不混乱