Python机器学习应用之基于决策树算法的分类预测篇_第1页
Python机器学习应用之基于决策树算法的分类预测篇_第2页
Python机器学习应用之基于决策树算法的分类预测篇_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第Python机器学习应用之基于决策树算法的分类预测篇目录一、决策树的特点1.优点2.缺点二、决策树的适用场景三、demo

一、决策树的特点

1.优点

具有很好的解释性,模型可以生成可以理解的规则。可以发现特征的重要程度。模型的计算复杂度较低。

2.缺点

模型容易过拟合,需要采用减枝技术处理。不能很好利用连续型特征。预测能力有限,无法达到其他强监督模型效果。方差较高,数据分布的轻微改变很容易造成树结构完全不同。

二、决策树的适用场景

决策树模型多用于处理自变量与因变量是非线性的关系。梯度提升树(GBDT),XGBoost以及LightGBM等先进的集成模型均采用决策树作为基模型。(多粒度联森林模型)决策树在一些明确需要可解释性或者提取分类规则的场景中被广泛应用。在医疗辅助系统中为了方便专业人员发现错误,常常将决策树算法用于辅助病症检测。

三、demo

#%%demo

##基础函数库导入

importnumpyasnp

##导入画图库

importmatplotlib.pyplotasplt

importseabornassns

##导入决策树模型函数

fromsklearn.treeimportDecisionTreeClassifier

fromsklearnimporttree

importpydotplus

fromIPython.displayimportImage

##Demo演示DecisionTree分类

##构造数据集

x_fearures=np.array([[-1,-2],[-2,-1],[-3,-2],[1,3],[2,1],[3,2]])

y_label=np.array([0,1,0,1,0,1])

##调用决策树回归模型

tree_clf=DecisionTreeClassifier()

##调用决策树模型拟合构造的数据集

tree_clf=tree_clf.fit(x_fearures,y_label)

##可视化构造的数据样本点

plt.figure()

plt.scatter(x_fearures[:,0],x_fearures[:,1],c=y_label,s=50,cmap='viridis')

plt.title('Dataset')

plt.show()

##可视化决策树

importgraphviz

dot_data=tree.export_graphviz(tree_clf,out_file=None)

graph=pydotplus.graph_from_dot_data(dot_data)

graph.write_pdf("D:\Python\ML\DecisionTree.pdf")

#模型预测

##创建新样本

x_fearures_new1=np.array([[0,-1]])

x_fearures_new2=np.array([[2,1]])

##在训练集和测试集上分布利用训练好的模型进行预测

y_label_new1_predict=tree_clf.predict(x_fearures_new1)

y_label_new2_predict=tree_clf.predict(x_fearures_new2)

print('TheNewpoint1predictclass:\n',y_label_new1_predict)

print('TheNewpoint2predictclass:\n',y_label_ne

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论