ID3构造决策树预测隐形眼镜类型(代码笔记)

本文介绍了如何运用ID3算法构建决策树进行隐形眼镜类型的预测。通过利用信息增益(information gain)和香农熵(entropy)度量数据集信息,递归选择最佳划分特征。虽然ID3不适用于数值型数据,主要应用于标称型数据,并且构造过程可能耗时,但可以使用pickle模块存储决策树。此外,还提到了其他决策树构建算法如C4.5和CART。
摘要由CSDN通过智能技术生成

决策树可以从数据集合中提取出一系列规则,从而分类样本。它的优势是理解数据蕴含信息。

思想:利用信息增益(information gain)【度量数据集信息的方式—香农熵(entropy)】计算得出最好的划分数据集的特征,用递归的方式不断找下一个最好的划分特征,直到遍历完所有的属性(特征),或剩下实例的类别都相同时。返回的是用嵌套字典表示的树结构(嵌套就是递归实现的)。

局限:ID3无法直接处理数值型数据,一般应用对象是标称型数据。

import operator
import numpy as np
'''
ID3决策树预测隐形眼镜类型
'''
#----------------------------- build the tree --------------------------
# 多数表决法, 对统计个数排序
def majorityCnt(classList): 
    classCount = {}
    for v in classList:
        classCount[v] = classCount.get(v,0)+1
    sortedClassCount = sorted(classCount.items(), key=operator.itemgetter(1), reverse=True)
    return sortedClassCount[0][0]

# 计算香农熵
def calcShannonEnt(data):
    numExm = len(data)
    labelCounts = {}
    for featVec in data:
        curLabel &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值