目录

1、认识决策树

2、决策树分类原理详解

3、信息论基础

3.1 信息

3.2 信息的衡量 - 信息量 - 信息熵

3.3 决策树划分的依据 - 信息增益

3.4 案例

4、决策树API

5、案例:用决策树对鸢尾花进行分类

6、决策树可视化

7、总结

8、案例:泰坦尼克号乘客生存预测

8.1 流程分析

sklearn转换器和估算器KNN算法模型选择和调优朴素贝叶斯算法决策树随机森林

1、认识决策树

如何高效的进行决策?

       特征的先后顺序

2、决策树分类原理详解

已知 四个特征值 预测 是否贷款给某个人

先看房子,再工作 -> 是否贷款 只看了两个特征年龄,信贷情况,工作 看了三个特征

3、信息论基础

3.1 信息

香农:消除随机不定性的东西

小明 年龄“我今年18岁”- 信息小华”小明明年19岁”-不是信息

3.2 信息的衡量 - 信息量 - 信息熵

3.3 决策树划分的依据 - 信息增益

3.4 案例

4、决策树API

5、案例:用决策树对鸢尾花进行分类

def decision_iris():

# 用决策树对鸢尾花进行分类

# 1、获取数据集

iris = load_iris()

# 2、划分数据集

x_train,x_test,y_train,y_test = train_test_split(iris.data,iris.target,random_state=22)

# 3、决策树预估器

estimator = DecisionTreeClassifier(criterion="entropy")

estimator.fit(x_train,y_train)

# 4、模型评估

# 方法1 :直接比对真实值和预测值

y_predict = estimator.predict(x_test)

print("y_predict:\n", y_predict)

print("直接比对真实值和预测值:\n", y_test == y_predict)

# 方法2:计算准确率

score = estimator.score(x_test, y_test)

print("准确率为:\n", score)

return None

if __name__ == "__main__":

# 代码4:用决策树对鸢尾花进行分类

decision_iris()

6、决策树可视化

导入   from sklearn.tree import DecisionTreeClassifier,export_graphviz可视化决策树      export_graphviz(estimator,out_file="iris_tree.dot")生存.dot文件,打开复制到网址http://webgraphviz.com/

from sklearn.datasets import load_iris, fetch_20newsgroups

from sklearn.feature_extraction.text import TfidfVectorizer

from sklearn.model_selection import train_test_split, GridSearchCV

from sklearn.naive_bayes import MultinomialNB

from sklearn.neighbors import KNeighborsClassifier

from sklearn.preprocessing import StandardScaler

from sklearn.tree import DecisionTreeClassifier,export_graphviz

def decision_iris():

# 用决策树对鸢尾花进行分类

# 1、获取数据集

iris = load_iris()

# 2、划分数据集

x_train,x_test,y_train,y_test = train_test_split(iris.data,iris.target,random_state=22)

# 3、决策树预估器

estimator = DecisionTreeClassifier(criterion="entropy")

estimator.fit(x_train,y_train)

# 4、模型评估

# 方法1 :直接比对真实值和预测值

y_predict = estimator.predict(x_test)

print("y_predict:\n", y_predict)

print("直接比对真实值和预测值:\n", y_test == y_predict)

# 方法2:计算准确率

score = estimator.score(x_test, y_test)

print("准确率为:\n", score)

# 可视化决策树

export_graphviz(estimator,out_file="iris_tree.dot",feature_names=iris.feature_names)

return None

if __name__ == "__main__":

# 代码4:用决策树对鸢尾花进行分类

decision_iris()

7、总结

8、案例:泰坦尼克号乘客生存预测

8.1 流程分析

获取数据数据处理

缺失值处理特征值 -> 字典类型

准备好特征值、目标值划分数据集特征工程:字典特征抽取决策树预估器流程模型评估

推荐阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: