美文网首页
决策树Demo

决策树Demo

作者: 时间里的小恶魔 | 来源:发表于2018-09-02 21:17 被阅读13次

1. Python机器学习的库:scikit-learn

1.1: 特性:

简单高效的数据挖掘和机器学习分析

对所有用户开放,根据不同需求高度可重用性

基于Numpy, SciPy和matplotlib

开源,商用级别:获得 BSD许可

1.2 覆盖问题领域:

分类(classification), 回归(regression), 聚类(clustering), 降维(dimensionality reduction)

模型选择(model selection), 预处理(preprocessing)

2. 使用用scikit-learn

安装scikit-learn: pip, easy_install, windows installer

安装必要package:numpy, SciPy和matplotlib, 可使用Anaconda (包含numpy, scipy等科学计算常用package)

安装注意问题:Python解释器版本(2.7 or 3.4?), 32-bit or 64-bit系统

3,Demo

项目地址:
https://github.com/yulong12/ML_Demo
数据集是:AllElectronics.csv

Image [1].png

代码在:AllElectronics.py

1,读取数据

allElectronicsData = open(r'./AllElectronics.csv', 'r')
reader = csv.reader(allElectronicsData)
headers = next(reader)#读取文件第一行
print(headers)

将特征列表放入字典
将标签放入列表


featureList = []
labelList = []

for row in reader:
    labelList.append(row[len(row)-1])
    rowDict = {}
    for i in range(1, len(row)-1):
        rowDict[headers[i]] = row[i]
    featureList.append(rowDict)

print(featureList)
屏幕快照 2018-09-02 下午9.12.19.png

使用DictVectorizer,将数据转化为0,1值

# Vetorize features
vec = DictVectorizer()
dummyX = vec.fit_transform(featureList) .toarray()

print("dummyX: " + str(dummyX))
print(vec.get_feature_names())

print("labelList: " + str(labelList))

屏幕快照 2018-09-02 下午9.14.27.png

转化y

# vectorize class labels
lb = preprocessing.LabelBinarizer()
dummyY = lb.fit_transform(labelList)
print("dummyY: " + str(dummyY))
屏幕快照 2018-09-02 下午9.15.09.png

调用决策树

clf = tree.DecisionTreeClassifier(criterion='entropy')
clf = clf.fit(dummyX, dummyY)
print("clf: " + str(clf))
屏幕快照 2018-09-02 下午9.15.53.png

预测新的值,数据为第一条记录的修改后的值

oneRowX = dummyX[0, :]
print("oneRowX: " + str(oneRowX))

newRowX = oneRowX
newRowX[0] = 1
newRowX[2] = 0
print("newRowX: " + str(newRowX))

predictedY = clf.predict([newRowX])# 用训练好的分类器去预测
print("predictedY: " + str(predictedY))
屏幕快照 2018-09-02 下午9.16.37.png

相关文章

  • 决策树Demo

    1. Python机器学习的库:scikit-learn 1.1: 特性: 简单高效的数据挖掘和机器学习分析对所...

  • JS简单实现决策树(ID3算法)

    推荐阅读:ID3算法 wiki决策树算法及实现完整示例代码:JS简单实现决策树(ID3算法)_demo.html ...

  • 机器学习6-决策树

    一. 决策树概述 1.1 什么是决策树 决策树输入: 测试集决策树输出: 分类规则(决策树) 1.2 决策树算法概...

  • 决策树

    1、决策树 决策树学习通常包括3个步骤: 特征选择。 决策树生成。 决策树剪枝。 决策树的学习目标是:根据给定的训...

  • 决策树

    决策树 决策树模型与学习 特征选择 决策树的生成 决策树的剪枝 CART 算法 决策树模型呈树形结构,在分类问题中...

  • 决策树算法总结

    目录 一、决策树算法思想 二、决策树学习本质 三、总结 一、决策树(decision tree)算法思想: 决策树...

  • 机器学习 - 决策树算法[一]

    1 决策树模型与学习 1.1 决策树模型 决策树定义: 分类决策树模型是一种描述对实例进行分类的树形结构。决策树由...

  • 机器学习系列(三十六)——回归决策树与决策树总结

    本篇主要内容:回归决策树原理、回归树学习曲线、决策树总结 回归决策树原理 回归决策树树是用于回归的决策树模型,回归...

  • [机器学习]决策树

    决策树 @(技术博客)[机器学习, 决策树, python] 学习决策树首先要搞清楚决策树是什么(what),在弄...

  • 经典机器学习系列之【决策树详解】

      这节我们来讲说一下决策树。介绍一下决策树的基础知识、决策树的基本算法、决策树中的问题以及决策树的理解和解释。 ...

网友评论

      本文标题:决策树Demo

      本文链接:https://www.haomeiwen.com/subject/ryfvwftx.html