机器学习sklearn:决策树的参数、属性、接口

决策树有八个参数:Criterion,两个随机性相关的参数(random_state,splitter),五个剪枝参数(max_depth, min_samples_split,min_samples_leaf,max_feature,min_impurity_decrease)

一个属性:feature_importances_

四个接口:fit,score,apply,predict

样例:

python 复制代码
import numpy as np
import pandas as pd
from PIL.ImageColor import colormap
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_wine
from sklearn import tree

wine = load_wine()

Xtrain, Xtest, Ytrain, Ytest = train_test_split(wine.data, wine.target, test_size=0.3)


clf = tree.DecisionTreeClassifier(criterion='entropy'
                                  , random_state=30
                                  , splitter='random'
                                  , min_samples_split=10
                                  , min_samples_leaf=10
                                  , max_depth=10)

clf = clf.fit(Xtrain, Ytrain)
clf.feature_importances_
clf.apply(Xtest)
clf.predict(Xtest)

一、参数

1、criterion

参数默认gini,还有entropy,想要高拟合就用entropy

2、random_state

设置数字就是固定随机选择的种子,每次运行都一样

3、splitter

默认是"best",高拟合

担心拟合高了或特征太多就用"random"

4、max_depth

树生长的最大深度,通常是限制拟合过高的情况

5、min_samples_split,min_samples_leaf

要到min_samples_split个样本才会考虑继续分裂,分裂后的子节点不能少于min_samples_leaf

6、max_features

特征个数

二、属性

1、feature_importances_

显示每个特征的重要性

三、接口

1、fit

训练

2、score

正确率

3、predict

预测结果是哪一组

4、apply

叶子节点的索引

相关推荐
雪碧聊技术7 小时前
深度学习、机器学习、人工智能三者的关系
人工智能·深度学习·机器学习
β添砖java7 小时前
机器学习初级
人工智能·机器学习
qq_17082750 CNC注塑机数采7 小时前
【Python TensorFlow】 TCN-GRU时间序列卷积门控循环神经网络时序预测算法(附代码)
python·rnn·神经网络·机器学习·gru·tensorflow·tcn
~~李木子~~8 小时前
中文社交媒体情感分析实战:基于B站评论的机器学习与深度学习对比
深度学习·机器学习·媒体
学习中的数据喵8 小时前
可以看穿事物“本质“的LDA
人工智能·机器学习
orion-orion9 小时前
学习理论:凸代理、代理与估计误差界
机器学习·统计学习·学习理论
simon_skywalker10 小时前
线性代数及其应用习题答案(中文版)第一章 线性代数中的线性方程组 1.4 矩阵方程Ax=b(1)
线性代数·机器学习·矩阵
لا معنى له10 小时前
残差网络论文学习笔记:Deep Residual Learning for Image Recognition全文翻译
网络·人工智能·笔记·深度学习·学习·机器学习
工业机器视觉设计和实现11 小时前
lenet改vgg训练cifar10突破71分
人工智能·机器学习