0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么情况下基于树的模型将超过神经网络模型

如意 来源:AI公园 作者:ronghuaiyang编译 2020-09-16 15:48 次阅读

导读

基于树的模型和神经网络其实并没有太多的不同。

神经网络通常被认为是机器学习的圣杯,无所不知,解决一切问题,主要是因为它们很复杂。另一方面,基于树的方法并没有被同样的敬畏和炒作,主要是因为它们看起来很简单。虽然它们看起来如此不同,但它们只是一枚硬币的两面。

基于树的方法通常比神经网络更好。任何Kaggler都知道XGBoost是到目前为止最受欢迎的最佳竞赛提交选择。本质上,基于树的方法和神经网络之所以属于同一类,是因为它们是通过逐条分解来解决问题的,而不是像支持向量机(SVM)或逻辑回归(Logistic Regression)那样,通过寻找一个复杂的边界来分离整个数据集。

很明显,基于树的方法沿着不同的特征逐步分割特征空间以优化信息增益。不太明显的是,神经网络在处理这一任务时也是类似的。每个神经元监视特征空间的特定部分(有各种重叠)。如果一个输入落到那个空间,某些神经元就会被激活。

神经网络采用概率的观点来进行逐块模型拟合,而树则采用确定性的观点。无论如何,它们的性能都依赖于模型的深度,因为它们的组件与特征空间的部分相关。

一个包含太多组件的模型 —— 树是节点,网络是神经元——会过拟合,而组件太少的模型根本无法给出有意义的预测。(两者都开始记忆数据点,而不是学习归纳。)

关于神经网络如何分割特征空间的更多直觉,请看一般性逼近定理。

尽管决策树有许多强大的变种,如随机森林、梯度提升、自适应提升和深度森林,但通常基于树的方法本质上是神经网络的简化版本。

基于树的方法通过垂直和水平分割逐条处理问题,以最小化熵(优化器和损失)。神经网络通过操纵激活函数的形状来逐步解决这个问题。

基于树的方法是确定性的,而不是概率性的。这导致了一些很好的简化,比如自动特性选择。

在决策树中被激活的条件节点类似于被激活的神经元(信息流)。

神经网络拟合参数对输入进行变换,直接或间接的激活后续的神经元。决策树显式地拟合参数来引导信息流。(这是确定性而非概率性的结果。)

信息在这两个模型中类似地流动,只是在树中以更简单的方式流动。

当然,这是一个抽象的甚至是有争议的主张。建立这种联系有许多心理障碍。无论如何,这对于理解基于树的方法何时以及为什么比神经网络更好是很重要的。

表格数据,或以表形式出现的结构化数据,对于决策树来说是很自然的。大多数人都同意,神经网络对于表格数据回归和预测来说是多余的,所以我们做了一些简化。我们选择1和0,而不是概率,这是两种算法差异的主要根源。因此,树可以在不需要概率的细微差别的情况下成功,比如结构化数据。

例如,基于树的方法在MNIST数据集上执行得很好,因为每个数字都有几个可定义的特征。概率不是一个必要的计算。这根本不是一个非常复杂的问题,这就是为什么精心设计的集成树可以达到相同的水平,甚至比现代卷积神经网络更好。

通常,人们会倾向于说“树只是记住规则”,这是正确的。这与神经网络是一样的,它记忆更复杂的,基于概率的规则。神经网络不会对x》3这样的条件显式地给出真/假,而是将输入放大到一个很高的值,以产生一个s型的1的值或产生一些连续的表达式。

另一方面,由于神经网络非常复杂,有很多事情可以用它们来做。卷积层和递归层都是神经网络出色的变体,它们工作得很好,因为它们处理的数据通常需要细微的概率计算。

很少有图像可以用1和0来建模。决策树值不能处理有许多中间值的数据集(例如0.5),这就是为什么它在像素值几乎都是黑色或白色的MNIST上工作得很好。类似地,文本有太多的信息和太多的异常,只能用确定性术语来表示。

这也是神经网络主要用于这些领域的原因,也是神经网络研究在早期(21世纪初)由于无法获得大量图像和文本数据而停滞不前的原因。神经网络的其他常见用途仅限于大量预测,比如YouTube的视频推荐算法,其规模如此之大,必须涉及到概率。

公司的任何一个数据科学团队看看,他们很可能使用的是基于树的模型,而不是神经网络。除非他们是在构建一个重量级的模型,比如在Zoom中模糊视频的背景,树的确定性本质使得日常的分类任务变得轻量级,使用与神经网络相同的一般方法。

在许多现实世界中,确定性建模比概率建模更自然,这也是有争议的。例如,用树来预测用户是否从电子商务网站购买商品的一个很好的选择,因为用户自然会遵循一个基于规则的决策过程。它可能看起来是这样的:

我以前在这个平台上有过愉快的经历吗?如果是,继续。

我现在需要这件物品吗?冬天我应该买太阳镜和泳裤吗?如果是,继续。

根据我的人口统计数据,这是一个我有兴趣购买的产品吗?如果是,继续。

这件东西太贵了吗?如果不是,继续。

其他顾客对这个产品的评价是否达到了一定的临界值,使我觉得可以放心地购买它?如果是,继续。

一般来说,人类遵循非常基于规则和结构化的决策制定过程。在这些情况下,概率建模是不必要的。

总之,

基于树的方法最好被认为是神经网络的缩小版本,用更简单的术语来接近特征分类、优化、信息流等。

基于树的方法和神经网络在使用上的主要区别在于数据的确定性(0/1)和概率结构。结构化(表格)数据始终用确定性模型可以更好地建模。

不要低估基于树的方法的能力。
责编AJX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4572

    浏览量

    98737
  • 模型
    +关注

    关注

    1

    文章

    2704

    浏览量

    47681
  • 机器学习
    +关注

    关注

    66

    文章

    8120

    浏览量

    130550
收藏 人收藏

    评论

    相关推荐

    神经网络模型用于解决什么样的问题 神经网络模型有哪些

    神经网络模型是一种机器学习模型,可以用于解决各种问题,尤其是在自然语言处理领域中,应用十分广泛。具体来说,神经网络模型可以用于以下几个方面:
    的头像 发表于 08-03 16:37 4190次阅读

    神经网络教程(李亚非)

      第1章 概述  1.1 人工神经网络研究与发展  1.2 生物神经元  1.3 人工神经网络的构成  第2章人工神经网络基本模型  2.
    发表于 03-20 11:32

    关于BP神经网络预测模型的确定!!

    请问用matlab编程进行BP神经网络预测时,训练结果很多都是合适的,但如何确定最合适的?且如何用最合适的BP模型进行外推预测?
    发表于 02-08 14:23

    请问Labveiw如何调用matlab训练好的神经网络模型呢?

    我在matlab中训练好了一个神经网络模型,想在labview中调用,请问应该怎么做呢?或者labview有自己的神经网络工具包吗?
    发表于 07-05 17:32

    【PYNQ-Z2试用体验】神经网络基础知识

    学习和认知科学领域,是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。神经网络
    发表于 03-03 22:10

    BP神经网络PID控制电机模型仿真

    求一个simulink的蓄电池用BP神经网络PID控制电机加速匀速减速运动的模型仿真
    发表于 02-22 02:17

    如何构建神经网络

    原文链接:http://tecdat.cn/?p=5725 神经网络是一种基于现有数据创建预测的计算系统。如何构建神经网络神经网络包括:输入层:根据现有数据获取输入的层隐藏层:使用反向传播优化输入变量权重的层,以提高
    发表于 07-12 08:02

    在STM32上验证神经网络模型

    STM32CubeMx.AI的使用欢迎使用Markdown编辑器在STM32论坛中看到这样一个视频:在视频中,在STM32上验证神经网络模型(HAR人体活动识别),一般需要STM32-F3/F4/L4/F7/L7系列高性能单片机,运行
    发表于 08-03 06:59

    卷积神经网络模型发展及应用

    神经网络的思想起源于1943年McCulloch 和 Pitts 提出的神经元模型[19],简称 MCP 神经元模 型。它是利用计算机来模拟人的神经元反应的过 程,具有开创性意义。此
    发表于 08-02 10:39

    如何使用TensorFlow神经网络模型部署到移动或嵌入式设备上

    有很多方法可以经过训练的神经网络模型部署到移动或嵌入式设备上。不同的框架在各种平台上支持Arm,包括TensorFlow、PyTorch、Caffe2、MxNet和CNTK,如Android
    发表于 08-02 06:43

    神经网络模型原理

    神经网络模型原理介绍说明。
    发表于 04-21 09:40 7次下载

    基于树的方法和神经网络方法

    模型神经网络,像一枚硬币的两面。在某些情况下,树模型的性能甚至优于神经网络
    的头像 发表于 07-27 16:17 876次阅读

    cnn卷积神经网络模型 卷积神经网络预测模型 生成卷积神经网络模型

    cnn卷积神经网络模型 卷积神经网络预测模型 生成卷积神经网络模型  卷积
    的头像 发表于 08-21 17:11 805次阅读

    卷积神经网络模型搭建

    卷积神经网络模型搭建 卷积神经网络模型是一种深度学习算法。它已经成为了计算机视觉和自然语言处理等各种领域的主流算法,具有很大的应用前景。本篇文章将详细介绍卷积
    的头像 发表于 08-21 17:11 610次阅读

    构建神经网络模型的常用方法 神经网络模型的常用算法介绍

    神经网络模型是一种通过模拟生物神经元间相互作用的方式实现信息处理和学习的计算机模型。它能够对输入数据进行分类、回归、预测和聚类等任务,已经广泛应用于计算机视觉、自然语言处理、语音处理等
    发表于 08-28 18:25 623次阅读