机器学习算法-决策树模型及小案例

本文介绍了决策树算法的基本原理,包括定义、信息熵和基尼系数等概念,并通过一个实际案例展示了数据挖掘流程,从数据读取、预处理到模型构建和评估,详细阐述了决策树在分类问题中的应用。
摘要由CSDN通过智能技术生成

一、决策树算法原理

1、定义

决策树算法定义:决策树算法是一种非参数的决策算法,它根据数据的不同特征进行多层次的分类和判断,最终决策出所需要预测的结果。它既可以解决分类算法,也可以解决回归问题,具有很好的解释能力。

2、原理

(1)决策树原理图
在这里插入图片描述(2)对于决策树的构建方法具有多种出发点,它具有多种构建方式,如何构建决策树的出发点主要在于决策树每一个决策点上需要在哪些维度上进行划分以及在这些维度的哪些阈值节点做划分等细节问题。
(3)信息熵entropy是决策树构建过程中最为常见的一种构建方式,熵在信息论中的含义是随机变量的不确定度,熵越大,不确定性越大,越不确定,熵越小,表示不确定度越小,越确定。
熵在信息论中代表随机变量不确定性的度量。熵越大,代表数据的不确定性越高;反之,熵越小,代表数据的不确定性越低。
信息熵的划分方式总体原则是不断地使得整体的决策系统的熵值越来越小,使得系统越来越确定的方向发展。
(4)基尼系数gini是决策树划分的另外一种方式,它和信息熵的原理是类似的,随着基尼系数的增大,整体的随机性在不断地增大。
(5)对于基尼系数和信息熵的决策树划分方式,其效果一般情况下都是大致相同的,只是信息熵的计算方式比起基尼系数要慢一些,sklearn中默认选用的是基尼系数。因此,对于决策树的决策方式信息熵和基尼系数这个超参数对于模型的好坏并没有太大的影响。 一般情况下,entropy是欠拟合的情况下才使用。

二、决策树算法小案例

1、数据挖掘流程

数据挖掘流程:数据读取-探索性数据分析-info-数据清洗-特征筛选-数据预处理-模型构建-模型评估-模型部署(生成环境)

2、根据流程实现决策树算法

import pandas as pd
import numpy as np
from sklearn.tree import DecisionTreeClassifier # 分类决策树
from sklearn.model_selection import train_test_split # 训练集和测试集的划分
from sklearn.model_selection import GridSearchCV   # 网格搜索
from sklearn.model_selection import cross_val_score  # 交叉验证模块
import matplotlib.pyplot as plt

(1)读取数据

data=pd.read_csv("train.csv")
data.head()  #Survived属性表示的是最终标签,相当于输出的y

在这里插入图片描述Embarked只存在三个值

(2)探索性数据分析

data.info()

在这里插入图片描述

(3)数据清洗

通过查看data数据,发现age和Cabin存在缺失值,其中age用均值来填充,cabin因缺失较多,可直接删除。通过观测判断来说和预测的y没有关系的列(Name,Ticket)也删除。

data.drop("cab
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值