简单三步法找到最佳机器学习算法

您如何为您的数据集选择最佳算法?

机器学习是一个归纳问题,其中从领域中特定观察到的数据中学习一般规则。

在事先不知道具体问题的情况下,试图找出最适合学习该数据的表示或算法是不可行的(不可能?),除非您对该问题非常了解,以至于您可能根本不需要机器学习。

那么,对于一个给定的问题,您应该使用什么算法?这是一个试错的过程,或者是在搜索最佳表示、学习算法和算法参数。

在这篇文章中,您将发现一些业内顶尖的预测模型师提出的,用于找到解决您问题的最佳算法的简单三步法。

Steps To The Best Machine Learning Algorithm

找到最佳机器学习算法的步骤
照片由 David Goehring 拍摄,保留部分权利。

三步法

Max Kuhn 是 R 中预测建模工具集 caret 包的创建者和所有者。它可能是最好的 R 包,也是 R 成为严肃竞争性和应用机器学习首选原因。

在他们精彩的书《应用预测建模》中,Kuhn 和 Johnson 概述了一个为给定问题选择最佳模型的流程。

我将他们的建议方法概括为:

  1. 从可解释性最差、最灵活的模型开始。
  2. 研究更简单、更不透明的模型。
  3. 考虑使用能够合理地近似更复杂模型性能的最简单模型。

他们评论道:

使用这种方法,建模者可以在确定模型之前发现数据集的“性能上限”。在许多情况下,一系列模型在性能上是等效的,因此从业者可以权衡不同方法的优点……

例如,以下是这种方法的一般性解释,您可以在下一个一次性建模项目中尝试:

  1. 研究一系列复杂模型并建立性能上限,例如:
    1. 支持向量机
    2. 梯度提升机
    3. 随机森林
    4. 装袋决策树
    5. 神经网络
  2. 研究一系列更简单、更具可解释性的模型,例如:
    1. 广义线性模型
    2. LASSO 和 Elastic-Net 正则化的广义线性模型
    3. 多变量自适应回归样条
    4. k-近邻
    5. 朴素贝叶斯
  3. 从(2)中选择最能近似(1)的准确性的模型。

快速一次性模型

我认为这是一种非常好的方法,适用于需要快速获得良好结果的一次性项目,例如在几分钟或几小时内。

  • 您对模型在某个问题上的准确性分布有了一个很好的了解。
  • 您有了一个更容易理解和向他人解释的模型。
  • 您以非常快的速度获得了一个质量相当高的模型(可能达到了该问题可实现性能的前 10%-25%,如果您花费了几天或几周时间)。

我不认为这是解决所有问题最佳的方法。该方法可能存在一些缺点:

  • 更复杂的方法运行速度较慢,返回结果也较慢。
  • 有时您希望选择复杂模型而不是简单模型(例如,在准确性比可解释性更重要的领域)。
  • 性能上限是首先追求的,而不是最后,那时可能存在时间和压力以及动力来最大程度地利用最佳方法。

有关此策略的更多信息,请查看《应用预测建模》第 78 页的第 4.8 节“在模型之间进行选择”。对于任何使用 R 的严肃机器学习从业者来说,这本书都是必备之物。

您是否有找到最佳机器学习算法的方法?请留言分享您的经验。

您是否使用过这种方法?它对您有效吗?

有任何问题吗?请留言。

13 条关于《简单三步法找到最佳机器学习算法》的回复

  1. Kevin 2016年1月22日晚上11:23 #

    可以在 http://www.data-blogger.com 找到一些机器学习的应用和教程。

  2. Pranav Verma 2016年1月23日凌晨3:15 #

    John,您能否提供两个例子来详细说明这一点?

  3. Hans 2017年5月2日上午10:27 #

    是否有适用于 1. 和 2. 的模板?

  4. Hans 2017年5月5日早上10:16 #

    A)
    在 R 和 Caret 中,我们甚至可以预测未见过的数据。
    与 Python ML 堆栈相比,R 代码似乎更加简洁。
    为什么或在什么情况下,我们应该选择整个“Python Enchilada”而不是 R 和 Caret?

    B) 是否有时间序列预测算法的排行榜?
    或者目前有哪些热门(新发明)的算法?

  5. Riberto mark 2018年5月29日晚上8:05 #

    机器学习是新的创新学习和交流方式。组织对此的看法非常进步,并且描述的步骤对于算法程序员来说也非常有用。

  6. Ganga Keerthi 2019年2月28日下午5:55 #

    哪种机器学习算法最适合预测分析,也就是说,识别非法活动?

  7. Blessing Iduh 2019年4月22日下午3:50 #

    非常感谢您的见解。我花了几个月的时间寻找适合我博士研究的最佳方法。这非常有教育意义。

留下回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。