决策树 DecisionTreeClassifier() 模型参数介绍

DecisionTreeClassifier() 是 scikit-learn 库中的决策树分类器,它有几个关键参数,用于控制模型的行为和性能。以下是其中一些重要的参数:

  1. criterion :用于划分节点的标准,可以是 'gini'(基尼指数)、'entropy'(信息增益),表示对数据纯度的衡量。默认值是 'gini'

  2. splitter :分割节点的方式,可以选择 'best'(选择最优特征划分)、'random'(随机选取)。 默认值是 'best'

  3. max_depth :树的最大深度,如果为 None 则不限制深度,直到所有叶子都是纯样本,即叶子节点中所有的样本点都属于同一个类别。或者每个叶子节点包含的样本数小于 min_samples_split。默认值是 None。

  4. min_samples_split :分裂一个内部节点所需的最小样本数。如果为整数,则min_samples_split就是最少样本数。如果为浮点数(0到1之间),则每次分裂最少样本数为 ceil(min_samples_split * n_samples)。默认值是 2。

  5. min_samples_leaf :每个叶节点至少需要的最小样本数。如果为整数,则min_samples_split 就是最少样本数。如果为浮点数(0到1之间),则每个叶子节点最少样本数为 ceil(min_samples_leaf * n_samples)。默认值是 1。

  6. max_features :若非 None,限制考虑的特征数。可以选择 'auto'(选择最优数量的特征),'all'(使用所有可用的特征)或一个整数值。如果为整数,每次分裂只考虑 max_features个特征;如果为浮点数(0到1之间),每次切分只考虑 int(max_features * n_features) 个特征。默认值是 None (和 'all' 一样,使用全部特征)

  7. random_state :用于随机化的种子,保证结果的可重复性。默认值是 None。

  8. class_weight :处理类别不平衡的选项,如 'default'、'balanced' 或自定义权重列表。默认值是 None (每个类别的权重都为1)

  9. presort :是否先对数据进行排序再进行划分,对于大样本集可能会提高效率。对于大数据集会减慢总体的训练过程。如果class_weight='balanced',则分类的权重与样本中每个类别出现的频率成反比:n_samples / (n_classes * np.bincount(y))。默认值是 False。

相关推荐
程序喵大人1 小时前
【C++进阶】STL算法与函数对象 - 09 函数对象保存状态并复用规则
开发语言·c++·算法·stl·函数对象
致Great6 小时前
DeepSeek Harness插件开发实战教程:我让它自己写了一个 arXiv 搜索插件
算法
罗西的思考10 小时前
【Agent OS / AIOS】AOHP 深度解读:当 OS 开始为 Agent 而设计
人工智能·算法·机器学习
民乐团扒谱机11 小时前
【微实验】组合优化matlab实战(马科维茨投资模型):在收益与风险之间,寻找最优的人生配比
大数据·人工智能·算法·机器学习·数学建模·matlab·组合优化
Nil20811 小时前
leetcode 160相交链表
算法·leetcode·链表
迷途之人不知返12 小时前
算法系列2:滑动窗口
算法
Herbert_hwt12 小时前
C语言零基础入门:循环控制与数据类型详解
c语言·数据结构·算法
SomeB1oody13 小时前
【RustyML入门】4.2. 标准化与归一化
开发语言·后端·机器学习·rust·教程
Tisfy14 小时前
LeetCode 3090.每个字符最多出现两次的最长子字符串:二重循环 / 滑动窗口
算法·leetcode·字符串·题解·模拟·双指针·滑动窗口
-dzk-14 小时前
【技巧】LC 136.只出现一次的数字
算法·异或