机器学习算法基础——决策树
创始人
2024-04-29 23:04:45
0

文章目录

  • 决策树算法的定义
  • 发展历程
  • 适用范围及其优缺点
    • 适用范围
    • 优点
    • 缺点
  • 代码实现

决策树算法的定义

在这里插入图片描述

决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。

发展历程

决策树的发展先后经历了ID3、C4.5已经CART三种算法。
在这里插入图片描述

适用范围及其优缺点

适用范围

决策树算法比较适合用于离散型的数据分布,比如当特征的取值只有0和1时,使用决策树算法往往会取得很好地效果,如果处理的数据为连续型分布,在分类决策时,同样还需要将其变成离散型分布,比如设置一个中间值,将所有数据变为与中心值比较的大小关系。

优点

  1. 决策树易于理解和实现,人们在在学习过程中不需要使用者了解很多的背景知识,这同时是它的能够直接体现数据的特点,只要通过解释后都有能力去理解决策树所表达的意义。
  2. 对于决策树,数据的准备往往是简单或者是不必要的,而且能够同时处理数据型和常规型属性,在相对短的时间内能够对大型数据源做出可行且效果良好的结果。
  3. 易于通过静态测试来对模型进行评测,可以测定模型可信度;如果给定一个观察的模型,那么根据所产生的决策树很容易推出相应的逻辑表达式。

缺点

  1. 对连续性的字段比较难预测。
  2. 对有时间顺序的数据,需要很多预处理的工作。
  3. 当类别太多时,错误可能就会增加的比较快。
  4. 一般的算法分类的时候,只是根据一个字段来分类。

代码实现

数据下载:https://pan.baidu.com/s/1debtGBe-J4-7eQJh6pVU2w?pwd=z91e

# 导入各种包,其中决策树所在的包为tree
import numpy as np
from sklearn import tree
import graphviz
#导入数据
data=np.genfromtxt("cart.csv",delimiter=',')
x_data=data[1:,1:-1]
y_data=data[1:,-1]
x_data,y_data
model=tree.DecisionTreeClassifier() #建立决策树模型,默认分类到叶子结点
model.fit(x_data,y_data)
#导出决策树图形
dot_data=tree.export_graphviz(model,feature_names=['house_yes','house_no','single','married','divorced','income'],class_names=['no','yes'],filled=True,rounded=True,special_characters=True)
graph = graphviz.Source(dot_data) #绘图
graph.render('cart') #保存为pdf文件
graph #输出决策树图形

在这里插入图片描述

相关内容

热门资讯

安卓凤凰系统开机很慢,安卓凤凰... 你有没有遇到过这种情况?手机刚买回来的时候,那叫一个流畅,各种应用秒开,感觉就像是开了挂一样。可是,...
安卓系统8.1.0刷机,体验流... 你有没有想过,你的安卓手机系统是不是已经过时了呢?别急,别急,今天就来给你详细聊聊安卓系统8.1.0...
上汽大众换安卓系统,开启智能出... 你有没有听说最近上汽大众的大动作?没错,他们竟然把车机系统换成了安卓系统!这可真是让人眼前一亮,让我...
如何拆分安卓系统数据,安卓系统... 你有没有想过,你的安卓手机里那些密密麻麻的数据,其实是可以被拆分的呢?没错,就是那些照片、视频、应用...
5.1安卓系统刷机,解锁新功能 你有没有想过,你的安卓手机其实就像一个等待被重新雕琢的艺术品?没错,今天就要来聊聊这个神秘又充满乐趣...
安卓系统设置替代软件,个性化设... 你有没有发现,安卓手机的设置界面有时候真的有点复杂,让人眼花缭乱?别急,今天就来给你揭秘一些替代软件...
安卓系统蓝牙在哪打开,安卓系统... 你有没有发现,有时候手机里的功能就像藏宝图一样,让人找得头都疼?今天,我就来帮你解开这个谜团,告诉你...
安卓linux系统软件,功能与... 你知道吗?在智能手机的世界里,有一个系统可是独树一帜,那就是安卓Linux系统。它就像一位多才多艺的...
安卓ios双系统接单,拓展业务... 你知道吗?现在这个时代,手机双系统已经成为了很多人的选择。安卓和iOS,这两个操作系统就像是一对双胞...
安卓系统和linux系统的区别... 你有没有想过,为什么你的手机里装的是安卓系统而不是Linux系统呢?这两者虽然听起来都挺高大上的,但...
小米4安卓系统几代,引领科技潮... 你有没有想过,你的手机里那个小小的操作系统,其实就像是一个默默无闻的超级英雄呢?今天,咱们就来聊聊小...
安卓系统里的SE,功能与操作指... 你有没有发现,安卓系统里有个叫SE的小家伙?别小看了它,这个小家伙可是隐藏着不少秘密呢!今天,就让我...
手机系统flyme是安卓系统吗... 你有没有想过,你的手机里那个飞快如风的系统,Flyme,它是不是安卓的“好兄弟”呢?今天,就让我带你...
安卓os系统怎么使用,Andr... 你手里那台安卓手机是不是总感觉有点儿复杂,不知道怎么玩转呢?别急,今天就来给你详细介绍一下安卓OS系...
安卓怎么装旧系统,安卓设备如何... 你有没有想过,手机用久了,系统更新换代,新功能层出不穷,但有时候,那些旧系统里的经典操作和熟悉感,简...
电脑怎装安卓系统,轻松实现多系... 你有没有想过,你的电脑除了装Windows系统,还能装上安卓系统呢?没错,就是那个让你手机不离手的安...
安卓系统找不到软件,探寻解决方... 最近是不是你也遇到了这样的烦恼:手机里明明有安卓系统,却怎么也找不到心仪的软件?别急,今天就来给你详...
小米独立系统取代安卓,迈向自主... 小米独立系统:小米与安卓的较量在科技领域,每一次系统的更新换代都牵动着无数科技爱好者和行业从业者的目...
安卓系统会员价格,性价比与权益... 你有没有发现,最近手机上的安卓系统会员价格又涨了?这可真是让人有点头疼呢!咱们一起来聊聊这个话题,看...
安卓点歌系统怎么点歌,享受音乐... 你有没有想过,在安卓手机上点歌竟然也能这么有趣呢?没错,现在就让我带你一起探索安卓点歌系统的奥秘吧!...