机器学习第一个算法决策树(DecisionTree)

本文介绍了机器学习的基础概念,特别是决策树算法。从数据预处理、创建数据集到使用Python实现决策树模型,并进行结果验证。讨论了如何通过数据处理将描述性语言转化为数值输入,以及如何利用graphviz进行可视化。最后提供了源代码链接。
摘要由CSDN通过智能技术生成

0.机器学习框架

这里写图片描述

1.基本概念

机器学习主要目标是根据已有的属性,得到未知的结论,或者说预测,而能预测的前提是已经积累了很多的经验,等等类似的说法。从基本的监督学习,非监督学习,半监督学习,训练集,测试集等概念讲起。

第一个介绍的算法是DecisionTree:

这里写图片描述

以上,将数据模型转化为一个一个节点,满足条件即往下走的思路,走到最后就需要做出决策,这样一种算法称之为决策树。

2.数据预处理

简单的有比如,考虑西瓜甜不甜,我们可以将目标设置为甜还是不甜,即是0还是1。一般我们可以根据瓜蒂,声音,颜色等外在属性对西瓜进行预测。
假设瓜蒂有生、熟之分,声音有清脆、浑浊之分,颜色有深绿,浅绿,泛白之分。每一种属性我们都可以用0,1,来表示,主要是因为做数据处理之前需要将描述语言进行这样的数据处理。

瓜蒂生:0
瓜蒂熟:1
清脆:1
浑浊:0
深绿:1
浅绿:0
泛白:0

这样一组[0,1,10,1,0,0]的数据就可以表示瓜蒂熟,声音清脆,颜色深绿的西瓜,如果西瓜甜,则相当于结果是1。绍完基本思路之后,我们就开始用python做初步的demo。

3.代码分析

首先导入用到的库
from sklearn.feature_extraction import DictVectorizer  #字典转换
import csv                                             #读取csv数据
from sklearn import preprocessing                     #sklearn的一些类
from sklearn import tree                                
from sklearn.externals.six import StringIO            ##输入输出             
接着是创造数据:
#创建数据集
headers=['RID','age','income','student','credit_rating','class_buys_computer']

rows=[('1','youth','high','no','fair','no'),
   ('2','youth',
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值