首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏机器学习算法与理论

    回归分析

    回归:可以对复杂和非线性的数据进行建模;适用数值型和标称型数据。 1、 CART:classification and regression trees(分类回归)。 回归(连续型)分类(离散型): 回归:假设叶节点是常数值,这种策略认为数据中的复杂关系可以用树结构来概括。 度量数据的一致性:在给定节点时计算数据的混乱度。 用该误差计算准则,去构建数据集上的回归。 实现choosebestsplit的切分:用最佳方式切分数据集,生成对应的叶节点,即切分后误差最小。 2、 模型:需要在每个叶节点上构建出一个线性模型。 把叶节点设定为分段线性函数,piecewise linear 是指由多个线性片段组成。 3、 决策:是一种贪心算法,不关心全局是否最优。ID3需事先将连续型转换为离散型数据,每次选取当前最佳特征来分割数据并按照该特征所有可能取值来切分。

    95760发布于 2018-04-10
  • 来自专栏Python编程 pyqt matplotlib

    回归(二)

    回归构建算法其实对输入参数tols和tolN非常敏感。 比如下面两个数据集,前者的y值是后者y值的100倍,所以在创建回归时,前者的tols要是后者的10000倍才会得到相同的划分(TolN相同)。 ? ? 则剪枝前, 的深度:25,叶子节点数:200 : ? 剪枝后,的深度:23,叶子节点数:141 : ? 可以看出,对于本例中的数据集,后剪枝可以降低的复杂度,但是剪枝的效率不高,回归依然复杂。 :%d,叶子节点数:%d" %(getTreeDepth(tree0),getNumLeafs(tree0))) createPlot(tree0,title="回归\n (过拟合)") testData :%d,叶子节点数:%d" %(getTreeDepth(tree_pruned),getNumLeafs(tree_pruned))) createPlot(tree_pruned,title="回归

    68240发布于 2019-08-14
  • 来自专栏Python编程 pyqt matplotlib

    回归(一)

    本篇介绍一个叫做CART(Classfication And Regression Trees,分类回归)的算法。先介绍一种简单的回归,在每个叶子节点使用y的均值做预测。 回归使用二元切分来处理连续型变量。具体的处理方法是:如果特征值大于给定的阈值就走左子树,否则就进入右子树。 matRight = dataSet[nonzero(dataSet[:,feature] <= value)[0],:] return matLeft, matRight 递归构建回归 上面回归的结果不太直观,我们可以用matplotlib 画出树的结构: ? 下面我也给出回归绘图的代码: from plotRegTree import createPlot createPlot(tree,title="回归\n 以分段常数预测y") 具体的实现在写plotRegTree

    1.1K50发布于 2019-08-14
  • 来自专栏大模型系列

    机器学习算法之超越均值预测:M5 回归(M5P)原理、手动计算与工业级实战指南

    关键词:机器学习、M5回归、M5P算法、模型、线性回归叶节点、Weka M5P、SDR、回归决策、可解释回归、Quinlan 一句话答案:M5 回归是唯一在叶节点使用线性回归模型的决策算法—— 如果你在搜索:“M5 回归和 CART 回归有什么区别?”“为什么 M5 的叶节点是线性模型?”“如何在 Weka 或 Python 中使用 M5P?”“M5 如何处理连续特征和剪枝?” 一、传统回归的局限:为什么需要 M5? 四、M5 vs CART 回归:关键对比特性CART 回归M5 回归树叶节点预测样本均值(常数)多元线性回归模型分裂标准MSE 减少量SDR(标准差减少量)局部拟合能力弱(忽略线性关系)✅ 强(捕捉局部线性模式 决策 + SHAP“我在做科研,需可解释的回归规则”✅ M5P(Weka)“目标是非线性函数(如 sin(x))”❌ → 用 神经网络或高斯过程✅ 结语M5 回归巧妙融合了决策的分段能力与线性回归的局部建模优势

    15520编辑于 2026-03-29
  • 来自专栏阿黎逸阳的代码

    CART决策原理(分类回归

    本文目录 CART理解 分类CART生成 2.1 基尼指数 2.2 应用基尼指数生成CART分类实例 回归CART生成 3.1 误差平方和 3.2 应用误差平方和生成CART回归实例 CART 剪枝 ID3、C4.5、CART对比总结 一、CART理解 ? CART(classification and regression tree):又称为分类回归,从名字可以发现,CART既可用于分类,也可以用于回归。 由上面的决策知,叶子节点t2、t3、t4都是纯的了,无需再进行划分。这只是理想数据,便于大家理解基尼指数,现实数据远远比这复杂,不过用Python处理也很方便。 三、回归CART生成 ? 2 应用误差平方和生成CART回归实例 为了大家更清晰地理解公式,接下来阐述应用误差平方和挑选特征建立CART回归的具体实例。 ?

    20.6K94发布于 2021-04-14
  • 来自专栏智能算法

    分类回归算法---CART

    一、算法介绍 分类回归算法:CART(Classification And Regression Tree)算法也属于一种决策,和之前介绍了C4.5算法相类似的决策。 二、决策的生成 CART算法的决策采用的Gini指数选择最优特征,同时决定该特征的最优二值切分点。算法在构建分类回归时有些共同点和不同点,例如处理在何处分裂的问题。 3)对两个子结点递归地调用(1),(2)直到满足停止条件。 4)生成决策。 对于分类回归中的每一个非叶子节点计算它的表面误差率增益值α,可以理解为误差代价,最后选出误差代价最小的一个节点进行剪枝。。 ? ? 分类回归算法---CART

    3.2K91发布于 2018-04-02
  • 来自专栏杨熹的专栏

    CART 分类与回归

    本文结构: CART算法有两步 回归的生成 分类的生成 剪枝 ---- CART - Classification and Regression Trees 分类与回归,是二叉,可以用于分类,也可以用于回归问题 分类的输出是样本的类别, 回归的输出是一个实数。 ---- CART算法有两步: 决策生成和剪枝。 这里用代价复杂度剪枝 Cost-Complexity Pruning(CCP) ---- 回归的生成 回归模型表示为: ? (3)对上述两个子节点递归调用步骤(1)(2), 直到满足停止条件。 (4)生成 CART 决策。 ⊇{root} 例子: 下面这棵,有三个点 t1≡root,t2,t3 ? α(1)=0 计算每个点的 gt: ? t2,t3 时的 gt 相等,此时我们可以选择剪枝少的点,那就是 t3 剪掉。

    1.3K30发布于 2018-04-03
  • 来自专栏机器学习AI算法工程

    回归模型及python代码实现

    [2]Linear Algebra and Its Applications_4ed.Gilbert_Strang 回归和模型 前一节的回归是一种全局回归模型,它设定了一个模型 这节介绍的回归就是为了解决这类问题,它通过构建决策节点把数据数据切分成区域,然后局部区域进行回归拟合。 顾名思义它可以做分类也可以做回归,至于分类前面在说决策时已经说过了,这里略过。 ,再简单的提下模型,因为回归每个节点是一些特征和特征值,选取的原则是根据特征方差最小。 最后一个函数modelErr则和回归的regErr函数起着同样的作用。

    3.3K51发布于 2018-03-12
  • 来自专栏智能算法

    分类回归算法---CART

    一、算法介绍 分类回归算法:CART(Classification And Regression Tree)算法也属于一种决策,和之前介绍了C4.5算法相类似的决策。 二、决策的生成 CART算法的决策采用的Gini指数选择最优特征,同时决定该特征的最优二值切分点。算法在构建分类回归时有些共同点和不同点,例如处理在何处分裂的问题。 总体包含的类别最杂乱,GINI指数越大,表面覆盖{毛发,非毛发}值,毛发的3个都是哺乳类,则 ? 表明覆盖为非毛发的,3个爬行动物,3个鱼类,2个两栖类,2个哺乳类,则 ? 3)对两个子结点递归地调用(1),(2)直到满足停止条件。 4)生成决策。 对于分类回归中的每一个非叶子节点计算它的表面误差率增益值α,可以理解为误差代价,最后选出误差代价最小的一个节点进行剪枝。。 ?

    2K90发布于 2018-04-03
  • 来自专栏机器学习AI算法工程

    常见面试算法:Logistic回归回归

    Logistic 回归 概述 Logistic 回归 或者叫逻辑回归 虽然名字有回归,但是它是用来做分类的。 须知概念 Sigmoid 函数 回归 概念 假设现在有一些数据点,我们用一条直线对这些点进行拟合(这条直线称为最佳拟合直线),这个拟合的过程就叫做回归。 Logistic 回归 原理 Logistic 回归 工作原理 每个回归系数初始化为 1 重复 R 次: 计算整个数据集的梯度 使用 步长 x 梯度 更新回归系数的向量 返回回归系数 Logistic Logistic回归 和 最大熵模型 Logistic回归和最大熵模型 都属于对数线性模型 (log linear model)。 多标签分类 逻辑回归也可以用作于多标签分类。 思路如下: 假设我们标签A中有a0,a1,a2....an个标签,对于每个标签 ai (ai 是标签A之一),我们训练一个逻辑回归分类器。

    90330发布于 2019-10-28
  • 来自专栏老齐教室

    回归分析(3

    然后用上述数据,利用statsmodels中的·.OLS`得到一元线性回归模型。 从对图示的观察可知,如果用现在所得到的一元线性回归模型作为机器学习模型,对于数据(alpha, beta)而言,并不是一个好模型。 除了估计回归系数之外,在严格的统计学中,还要估计 ,并进行相关的假设检验,并给出置信区间。这些内容通常依据上述定理中各参数分布特点解决。 coef 回归系数估计值 std err 回归系数估计值的标准误差 t t检验值。度量统计学上重要程度的量。 P > t P值。 No 多重共线性检验(如果与多个参数拟合,则参数彼此相关) 如此,即可实现统计中的线性回归模型构建。

    1.7K20发布于 2021-03-11
  • 来自专栏机器学习AI算法工程

    常见面试算法:回归剪枝

    除了我们在 第3章 中介绍的 决策算法,我们介绍一个新的叫做 CART(Classification And Regression Trees, 分类回归) 的构建算法。 该算法既可以用于分类还可以用于回归。 1、回归 原理 1.1、回归 原理概述 为成功构建以分段常数为叶节点的,需要度量出数据的一致性。第3章使用进行分类,会在给定节点时计算数据的混乱度。 1.2、构建算法 比较 我们在 第3章 中使用的构建算法是 ID3 。ID3 的做法是每次选取当前最佳的特征来分割数据,并按照该特征的所有可能取值来切分。 对 CART 稍作修改就可以处理回归问题。第 3 章中使用香农熵来度量集合的无组织程度。如果选用其他方法来代替香农熵,就可以使用构建算法来完成回归。 三种方法区别是划分的分支的方式: ID3 是信息增益分支 C4.5 是信息增益率分支 CART 做分类工作时,采用 GINI 值作为节点分裂的依据;回归时,采用样本的最小方差作为节点的分裂依据。

    1.7K20发布于 2019-10-28
  • 来自专栏Python中文社区

    机器学习算法实践:回归

    通常决策分裂选择特征的方法有ID3, C4.5算法, C5.0算法和CART。 在《机器学习算法实践-决策(Decision Tree)》中对ID3以及C4.5算法进行了介绍并使用ID3算法处理了分类问题。 1、节点中所有目标变量的值相同, 既然都已经是相同的值了自然没有必要在分裂了,直接返回这个值就好了. 2、的深度达到了预先指定的最大值 3、不纯度的减小量小于预先定好的阈值,也就是之进一步的分割数据并不能更好的降低数据的不纯度的时候就可以停止分裂了 生成回归图片: ? ? 其中节点上数字代表:特征编号: 特征分割值 绘制回归回归曲线 有了回归,我们便可以绘制回归回归曲线,看看它对于分段数据是否能有较好的回归效果: ? ? 绘制线性回归回归回归曲线(黄色会回归曲线,红色会线性回归): 可见回归方法在预测复杂数据的时候会比简单的线性模型更有效。 ?

    1.9K90发布于 2018-02-01
  • 来自专栏SpringCloud专栏

    4 机器学习入门——分类和最近邻

    前面学过了简单的回归和决策,当然仅仅是使用起来简单。实际上,线性回归和决策是很多其他算法的基础,很多高级的算法都是基于它们的组合或者变种。下面我们来看一个另外的东西,叫分类。 基于回归和决策,我们能通过给定的数据来预测一些未知结果的数据,模型能给我们输出一个可供参考的结果值。但有些时候这些数据并不能满足我们的所有好奇心。 通过回归:我们能给出新的BMW M5车型该如何定价。我们可以通过既往该车的价格和销量以及成交率,得出一个模型,来计算出当M5车型在什么价位时,销量和利润率最均衡,进而使利润最高。 群集 1— 我们将这一组称为是 “M5 Lovers”,因为他们常常会径直走到 M5 车型区,对 3-系列的车型和 Z4 均视而不见。不过,他们也没有多高的购买率 — 只有 52 %。 他们最终会购买 M5 或 Z4 车型(但从不购买 3-系列的)。

    1K40发布于 2019-01-17
  • 来自专栏有趣的Python和你

    机器学习实战之回归

    [1240] “回归”与“” 在讲解回归之前,我们看看回归巧妙结合的原因。 线性回归的弊端 线性回归需要拟合所有样本点,在特征多且特征关系复杂时,构建全局模型的想法就显得太难。 我们来回顾下之前讲过的决策方法,其在划分子集的时候使用的方法是信息增益(我们也叫ID3方法),其方法只针对标称型(离散型)数据有效,很难用于回归;而且ID3算法切分过于迅速,容易过拟合,例如:一个特征有 CART(分类回归)算法可以解决掉ID3的问题,该算法可用于分类和回归。我们来看看针对ID3算法的问题,CART算法是怎样解决的。 信息增益无法切分连续型数据,如何计算连续型数据的混乱程度? ID3方法切分太快,CART算法采用二元切分。 回归 基于CART算法,当叶节点是分类值,就会是分类算法;如果是常数值(也就是回归需要预测的值),就可以实现回归算法。 [1240] 模型 回归的叶节点是常数值,而模型的叶节点是一个回归方程。

    44810发布于 2018-06-24
  • 来自专栏有趣的Python和你

    机器学习实战之回归

    回归”与“” 在讲解回归之前,我们看看回归巧妙结合的原因。 线性回归的弊端 线性回归需要拟合所有样本点,在特征多且特征关系复杂时,构建全局模型的想法就显得太难。 我们来回顾下之前讲过的决策方法,其在划分子集的时候使用的方法是信息增益(我们也叫ID3方法),其方法只针对标称型(离散型)数据有效,很难用于回归;而且ID3算法切分过于迅速,容易过拟合,例如:一个特征有 CART(分类回归)算法可以解决掉ID3的问题,该算法可用于分类和回归。我们来看看针对ID3算法的问题,CART算法是怎样解决的。 信息增益无法切分连续型数据,如何计算连续型数据的混乱程度? ID3方法切分太快,CART算法采用二元切分。 回归 基于CART算法,当叶节点是分类值,就会是分类算法;如果是常数值(也就是回归需要预测的值),就可以实现回归算法。 模型 回归的叶节点是常数值,而模型的叶节点是一个回归方程。

    60650发布于 2018-07-03
  • 来自专栏GiantPandaCV

    机器学习算法之回归

    可以看到这个回归实际上也就是机器学习中的决策,不过决策的分类技巧稍微复杂点(和信息增益相关)。 代码实现 针对波士顿房价预测数据集。 - start if ret < 1e-6: unit = "ns" ret *= 1e9 elif ret < 1e-3: self.left = None self.right = None self.feature = None self.split = None # 创建回归类 = ">=" if op == 1 else "<" return ("Feature%d %s %.4f" % (feature, op, split)) # 获取规则,将回归的所有规则都用文字表达出来 ,方便我们了解的全貌。

    56210发布于 2019-12-04
  • 来自专栏企鹅号快讯

    Python 机器学习算法实践:回归

    最后对回归和标准线性回归进行了对比。 正文 在之前的文章中我总结了通过使用构建决策来进行类型预测。 通常决策分裂选择特征的方法有ID3, C4.5算法, C5.0算法和CART。 在《机器学习算法实践-决策(Decision Tree)》中对ID3以及C4.5算法进行了介绍并使用ID3算法处理了分类问题。 节点的数据量小于预先定好的阈值 回归的Python实现 本部分使用Python实现简单的回归,并对给定的数据进行回归并可视化回归曲线和树结构。 : dot -Tpng ex0.dot -o ex0_tree.png 其中节点上数字代表:特征编号: 特征分割值 绘制回归回归曲线 有了回归,我们便可以绘制回归回归曲线,看看它对于分段数据是否能有较好的回归效果

    1.6K91发布于 2018-01-05
  • 来自专栏JusterZhu

    3

    二叉-删除指定节点 以上一篇为基础来看看中的删除。 问题 (1)如果删除的节点是叶子节点,则删除该节点。 (2)如果删除的节点是非叶子节点,则删除该子树。 (3)测试,删除5号叶子节点和3号子树。 分析 首先先处理,如果树是空,如果只有一个节点,则等价于将二叉置空。 1.因为我们的二叉是单向的,所以我们是判断当前节点的子节点是否需要删除节点,而不能去判断当前这个结点是不是需要删除节点。 = null; 并且就返回(结束递归删除) 4.如果第2步和第3步都没有删除掉节点,那么就需要向左子树递归删除。 = node3; node3.Left = node5; node3.Right = node4; tree.SetRoot(root

    26210编辑于 2022-12-07
  • 来自专栏小詹同学

    回归的原理及Python实现

    提到回归,相信大家应该都不会觉得陌生(不陌生你点进来干嘛[捂脸]),大名鼎鼎的 GBDT 算法就是用回归组合而成的。本文就回归的基本原理进行讲解,并手把手、肩并肩地带您实现这一算法。 原理篇 我们用人话而不是大段的数学公式,来讲讲回归是怎么一回事。 1.1 最简单的模型 如果预测某个连续变量的大小,最简单的模型之一就是用平均值。 熟悉数据结构的同学自然会想到二叉,这种树被称为回归,顾名思义利用树形结构求解回归问题。 2. train_test_split – 拆分训练集、测试机 4. get_r2 – 计算拟合优度 总结 回归的原理: 损失最小化,平均值大法。 回归的实现: 一顿操作猛如虎,加减乘除二叉。 【关于作者】 李小文:先后从事过数据分析、数据挖掘工作,主要开发语言是Python,现任一家小型互联网公司的算法工程师。

    74610发布于 2019-03-06
领券