为什么基于树的模型在表格数据上击败深度学习

news2024/10/2 3:17:48

一、说明

        随着深度学习和新的一亿参数模型的大肆宣传,人们很容易忘记这些大型神经网络只是工具,它们有其所有的偏见和弱点。我通过我的内容强调的想法之一是,您应该拥有多样化技能的坚实基础,以便您能够以有效且高效的方式解决问题。

二、现状和概述

        虽然深度学习在文本和图像数据集方面取得了巨大进步,其在表格数据上的优越性尚不清楚。我们提供广泛的基准标准和新颖的深度学习方法以及基于树的模型,例如XGBoost 和随机森林,跨越大量数据集和超参数组合。我们定义了来自不同领域的 45 个数据集的标准集表格数据的清晰特征和基准会计方法用于拟合模型和寻找良好的超参数。

        结果表明,即使在中等规模的数据(~10K 样本)上,基于树的模型仍然保持着最先进的水平。不考虑他们卓越的速度。为了了解这一差距,我们进行了对基于树的模型的不同归纳偏差进行实证研究神经网络 (NN)。这导致了一系列应指导的挑战旨在构建表格特定神经网络的研究人员: 1. 对无信息性具有鲁棒性特征,2. 保留数据的方向,3. 能够轻松学习不规则函数。为了促进表格架构的研究,我们贡献了标准基准测试和基线原始数据:20 000 次计算的每个点
每个学习者的超参数搜索时间。

        在本文中,我将分解这篇论文——为什么基于树的模型在表格数据上仍然优于深度学习? 该论文解释了世界各地在各种领域工作的机器学习从业者观察到的一个现象——基于树的模型(如随机森林)在分析表格数据时比深度学习/神经网络要好得多。我将分享他们的发现,帮助您了解为什么会发生这种情况,以及如何利用这些经验教训来创建最佳的人工智能管道来应对您遇到的挑战。

      不要向所有简历中带有“深度学习专家|播客|区块链|软件”的人展示此图表。他们可能会开始尖叫并变得暴力。

三、论文注意事项

        在我们开始研究论文的发现之前,我们应该首先了解论文的一些重要方面。这将帮助我们将研究结果结合起来并更好地评估结果。太多人直接跳到结果,没有花足够的时间来评估上下文。这是致命的罪孽,如果你这样做,我将不再爱你。

        对我来说突出的一件事是这篇论文进行了大量的预处理。有些人喜欢删除丢失的数据,这会影响树的性能。正如我在本文中所介绍的 -如何处理丢失的环境数据,随机森林非常适合丢失数据的情况。当我与约翰·霍普金斯大学合作建立一个系统来预测不断变化的卫生系统政策将如何影响公共卫生时,我经常使用它们。这些数据非常嘈杂,具有大量的特征和维度。射频的稳健性和优势使它们比更“先进”的解决方案更好,因为后者很容易损坏。

        其中大部分都是非常标准的东西。我个人不太喜欢应用太多预处理技术,因为这可能会导致您丢失数据集的很多细微差别,但此处采取的步骤将生成与工作时发现的数据集类似的数据集。然而,在评估最终结果时请记住这些限制,因为它们很重要。如果您的数据集看起来非常不同,那么请对这些结果持保留态度。

        他们还使用随机搜索进行超参数调整。这也是行业标准,但根据我的经验,贝叶斯搜索更适合扫描更广泛的搜索空间。我很快就会制作一个视频,因此请确保您关注我的 YouTube 频道以了解最新动态。该链接(以及我所有其他工作)将位于本文末尾。

        好了,现在是时候回答您点击本文的主要问题了——为什么基于树的方法能够击败深度学习?

四、基于树的方法高于深度学习的地方

4.1 原因 1:神经网络偏向于过于平滑的解决方案

        这是作者认为深度学习神经网络无法与随机森林竞争的第一个原因。简而言之,当涉及非平滑函数/决策边界时,神经网络很难创建最适合的函数。随机森林在奇怪/锯齿状/不规则模式方面做得更好。

        如果我必须猜测原因,一个可能的原因可能是神经网络中梯度的使用。梯度依赖于可微的搜索空间,根据定义,它是平滑的。无法区分尖函数、破碎函数和随机函数。这就是我建议学习人工智能概念(如进化算法、传统搜索和更基本的概念)的原因之一,这些概念可以在神经网络失败时在各种情况下获得很好的结果。

        有关基于树的方法(随机森林)和深度学习器之间决策边界差异的更具体示例,请查看下图 -

RF 的更好性能可归因于它们生成的更精确的决策边界。

在附录中,作者对上述可视化做了以下声明

在这一部分中,我们可以看到随机森林能够学习 MLP 无法学习的 x 轴(对应于日期特征)上的不规则模式。我们展示了默认超参数的这种差异,但在我们看来,这是神经网络的典型行为,实际上很难(尽管并非不可能)找到超参数来成功学习这些模式。

这显然非常重要。当您意识到基于树的方法的调整成本要低得多时,这一点就变得更加引人注目,这使得它们在物有所值的解决方案方面变得更好。

4.2 发现 2:无信息特征影响更多类似 MLP 的神经网络

        另一个重要因素,特别是对于那些使用同时编码多个关系的庞大数据集的人来说。如果您向神经网络提供不相关的特征,结果将很糟糕(并且您将浪费更多资源来训练模型)。这就是为什么花费大量时间进行 EDA/领域探索如此重要的原因。这将有助于理解功能,并确保一切顺利进行。

        该论文的作者测试了添加(随机)和删除无用(更正确 - 不太重要)特征时的模型性能。根据他们的结果,出现了两件有趣的事情——

  1. 删除大量功能缩小了模型之间的性能差距。这清楚地表明树的一大优势是它们能够免受较差特征的影响。
  2. 向数据集中添加随机特征表明,网络中的下降比基于树的方法要急剧得多。ResNet 尤其受到这些无用功能的打击。我假设变压器中的注意力机制在某种程度上保护了它。

        树至上。需要注意的一件事是他们仅使用随机森林特征重要性。涉及更多协议来创建更好的特征准确度分数将使事情变得更好。

        这种现象的一个可能的解释可能就是决策树的设计方式。任何学习过人工智能课程的人都会了解决策树中的信息增益和熵的概念。这些允许决策树通过比较剩余的特征来选择最佳的前进路径,以选择允许最佳选择的路径。对于那些不熟悉这个概念(或 RF)的人,我建议观看有关这些概念的 StatQuests 视频。我将他的指南链接到此处的 RandomForests。

        回到正题,最后一件事使得 RF 在表格数据方面比 NN 表现更好。这就是旋转不变性。

4.3 发现 3:神经网络对于旋转具有不变性。实际数据不是

        神经网络对于旋转具有不变性。这意味着如果您旋转数据集,不会改变它们的性能。轮换数据集后,不同学习器的性能排名发生翻转,ResNet(最差)名列前茅。他们保持了原来的表现,而所有其他学习者实际上损失了相当多的表现。

        这很有趣,但我必须了解更多。具体来说,旋转数据集实际上意味着什么?我翻阅了报纸,但找不到细节。我已经联系了作者并会写一篇后续文章。查看一些旋转数据集的示例将帮助我更好地理解这一发现的含义。如果你们有任何想法,请在评论中/通过我的链接与我分享。

同时,让我们看看为什么旋转方差很重要。根据作者的说法,采用特征的线性组合(这就是 ResNet 不变的原因)实际上可能会歪曲特征及其关系。

…存在一个自然基础(这里是原始基础),它编码最佳数据偏差,并且无法通过旋转不变的模型来恢复,旋转可能会混合具有非常不同的统计属性的特征

        从性能下降来看,这显然是一个需要考虑的非常重要的因素。展望未来,我可以看到研究最佳数据方向的巨大价值。但在对此做出任何真正的评论之前,我想更多地了解这一点。过去 4 天我一直在努力了解这一点,但到目前为止(就像琼恩·雪诺一样),我一无所知。现在,我就先在这里结束事情吧。

        如果您想进入机器学习领域,这篇文章将为您提供逐步提高机器学习能力的计划。它使用免费资源。与其他训练营/课程不同,该计划将帮助您发展基础技能,并为您在该领域取得长期成功做好准备。

        对于机器学习来说,软件工程、数学和计算机科学的基础至关重要。它将帮助您概念化、构建和优化您的机器学习。我的每日时事通讯《技术访谈变得简单》涵盖了算法设计、数学、技术近期事件、软件工程等主题,旨在让您成为更好的开发人员。我目前全年提供 20% 的折扣,所以一定要检查一下。

        我使用通过辅导多人进入顶级科技公司而发现的新技术创建了“技术面试变得简单” 。该时事通讯旨在帮助您取得成功,避免您在 Leetcode 苦苦挣扎中浪费时间。我有 100% 满意的政策,所以你可以毫无风险地尝试。您可以在此处阅读常见问题解答并了解更多信息

        如果您对我有任何有趣的工作/项目/想法,请随时与我联系。总是很高兴听到你的声音。

 Devansh-机器学习变得简单

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1024789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一遍关于vue基础语法下篇

目录 一.事件处理器 演示效果: 二.表单 演示效果: 三.组件通信父转子 演示效果: 四.组件通信子转父 演示效果: 好啦,今天的分享就到这了,希望能够帮到你呢!😊😊 一.…

Linux上的Pip和Python升级指南

在Linux系统上,保持Pip和Python版本的最新状态对于顺利进行Python开发至关重要。通过升级Pip和Python,你可以享受到最新的功能、修复的bug以及提升的开发效率。本文将为你提供在Linux上升级Pip和Python的详细指南,助你打造更强大的开发环境。…

AI独角兽第四范式开启招股:或将成为今年港股IPO最大赢家!

国内最大的以平台为中心的决策类人工智能公司第四范式,在9月18日至9月21日招股,并计划于9月28日正式以“6682”为股票代码在香港联交所主板挂牌上市。第四范式即将成为近两年来第一家登陆港交所的AI独角兽企业,同时也将是近一年来第一家完成港…

数据库顶会 VLDB 2023 论文解读 - Krypton: 字节跳动实时服务分析 SQL 引擎设计

“Krypton 源于 DC 宇宙中的氪星,它是超人的故乡,以氪元素命名”。 引言 近些年, 在复杂的分析需求之外,字节内部的业务对于实时数据的在线服务能力也提出了更高的要求。大部分业务不得不采用多套系统来应对不同的 Workload&…

人大金仓开启智慧医疗服务新时代

9月16日至17日,由海南省信息化专家协会主办,人大金仓协办的海南数字医院信创发展研讨会圆满举办。人大金仓与海南省二十余家医院的信息化负责人,以及设计院、生态伙伴的专家领导进行了深入交流与沟通,相关领导和专家就人大金仓低难…

C语言的编译过程详解

当我们编译C程序时会发生什么?编译过程中的组件有哪些,编译执行过程是什么样的? 什么是编译 C语言的编译过程就是把我们可以理解的高级语言代码转换为计算机可以理解的机器代码的过程,其实就是一个翻译的过程。 …

python-列表解析、字典解析、集合解析

前言&#xff1a; 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 列表解析 生成一个列表 nums [1, 3, 9] list_gen [num**2 for num in nums if x < 5] # [1, 9]代码描述&#xff1a; 表达式&#xff…

基于SpringBoot+Vue的餐饮管理系统设计与实现

前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb;…

亚马逊云科技 Amazon Lightsail :一种在云服务器上运行容器的简单方法

当向开发人员介绍亚马逊云科技云服务时&#xff0c;通常会花一点时间来介绍并演示 Amazon Lightsail 。它是迄今为止开始使用亚马逊云科技的最简单方法。使用它&#xff0c;您在几分钟内即可在自己的虚拟服务器上运行您的应用程序。而后增加了在 Amazon Lightsail 上部署基于容…

[echarts] 两侧堆叠柱状图

http://echarts.zhangmuchen.top/#/detail?cidxOQSXIOQiK const myData [福田区, 罗湖区, 南山区, 盐田区, 宝安区, 龙岗区, 坪山区, 龙华区, 光明区, 大鹏区]; // 全彩屏&#xff0c;双基色屏&#xff0c;简易屏&#xff0c;条形屏 const offLine [[20, 40, 60, 60, 10, 2…

C语言 coding style

头文件 The #define Guard #define的保护文件的唯一性&#xff0c;防止被多重包含 格式 : <PROJECT>_< FILE>_H_ PROJECT : XS FILE : MV_CTR 头文件的包含顺序 C System FilesOther LibrariesUser LibraryConditional include 作用域 局部变量 -变量定义时需要…

Vuex状态管理最佳实践

文章目录 单一状态树使用模块使用常量定义Mutation类型使用Actions处理异步操作使用Getters计算属性严格模式分模块管理Getter、Mutation和Action&#xff1a;注释和文档&#xff1a;Vue Devtools ✍创作者&#xff1a;全栈弄潮儿 &#x1f3e1; 个人主页&#xff1a; 全栈弄潮…

计算机视觉与深度学习-卷积神经网络-纹理表示卷积神经网络-纹理表示-[北邮鲁鹏]

目录标题 参考文章纹理定义纹理的分类规则纹理随机纹理 纹理的表示方法基于卷积核组思路什么卷积核组卷积核类型&#xff08;边缘、条形、点状&#xff09;卷积核尺度&#xff08;3~6个尺度&#xff09;卷积核的方向卷积核组的设计 表示步骤步骤一&#xff1a;设计卷积核组。步…

软件测试/测试开发丨利用ChatGPT自动生成测试用例思维导图

点此获取更多相关资料 简介 思维导图是一种用图形方式表示思维和概念之间关系的工具&#xff1a; 有些公司会使用思维导图编写测试用例&#xff0c;这样做的优点是&#xff1a; 1.可视化和结构化。 2.易于理解&#xff0c;提高效率。 而 ChatGPT 是无法直接生成 xmind 格式…

Git学习笔记10

代码更新方法&#xff1a; 蓝绿部署&#xff1a; 蓝绿部署&#xff0c;英文名&#xff1a;Blue Green Deployment&#xff0c;是一种可以保证系统在不间断提供服务的情况下上线代码的部署方式。 如何保证系统不间断提供服务呢&#xff1f; 蓝绿部署的模型中包含两套集群。 …

ElementPlus·表单验证

表单验证作用&#xff1a;省去一些错误的请求提交&#xff0c;节省后端接口压力。简单配置、自定义配置&#xff0c;最后进行统一校验工作。 如何校验 及 校验步骤&#xff1a; 简单配置 <script setup> // 表单对象 const form ref({对象: 值 })// 规则对象 const ru…

21. 概率与统计 - 数学期望、统计描述分布

文章目录 数学期望方差标准差协方差二项分布高斯分布中心极限定理泊松分布Hi, 你好。我是茶桁。 在上一节中,我们最后有谈到随机变量。在概率论几统计学中,描述一个随机变量的离散程度的有方差、标准差等等。那么在这节课中,我们就来好好看看这些概念。 不过在这之前呢,我…

【音视频】FLV封装格式

基本概念 文件头(Header)文件体(Body) flv文件头 主要是看signture和typeflags flv文件体 重点&#xff1a;Tag包数据 Tag结构详细说明 注意&#xff1a; 每个Tag的头字段DataSize只是该Tag下data部分的大小&#xff0c;不包括Tag的header部分的大小 音频 AudioTag Data 所在…

若依+lodop+jasperreports+ireport 设计打印票据格式(二)

若依lodopjasperreportsireport 设计打印票据格式&#xff08;二&#xff09; 使用Field绑定Java传入数据 设计页表页数和当前页号 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7091542bd5954845b8fcf39d71d4c9e4.png#pic_cente![在这里插入图片描述](https://img-bl…

[Vue] 绑定下拉菜单

写在前面 同学们&#xff0c;今天的天气很是不错&#xff0c;我们之前进行了复选框的绑定&#xff0c;这次来看看下拉菜单的绑定吧&#xff0c;因为要赶这个创作进度&#xff0c;真的只有再水一篇文章了。大家就当是饭后甜点看看就行。 苏子云 荷尽已无擎雨盖&#xff0c;菊残…