SAS首席科学家:如何选择机器学习算法?

简介:

本文面向的是入门到中级的数据科学家,或对利用机器学习算法来解决问题感兴趣的数据分析师。

面对各种各样的机器学习算法——“我应该用哪一个?”,是一名初学者经常遇到的问题。问题的答案,取决于许多因素,包括:

  • 数据的大小,质量和性质

  • 可用的计算时间

  • 任务的紧迫性

  • 你想对数据做什么

即便是经验丰富的数据科学家,也无法在尝试各种算法之前,判断出哪种算法的效果最好。在这里,我并不是忽悠大家要一步到位。我的意思是,要根据明确的因素,搞清楚应该优先尝试哪些算法。

机器学习算法速查表

 SAS首席科学家:如何选择机器学习算法?

该流程图展示了何时使用哪些算法

机器学习算法速查表,帮助你找到适合不同具体问题的算法。本文将引导你如何使用速查表。

该速查表专为初阶数据科学家和分析师设计。因而在讨论算法时,我们将对假设做一些简化。

这里推荐的算法,来自于多位数据科学家、机器学习专家的编译反馈和提示。 有几个问题我们还没有达成一致,对于这些问题,我们试图突出共同点,调和差异。

 当我们的库在将来更加完整,包含更多可用方法时,将会添加额外的算法。

如何使用速查表 

对图表上的路径和算法标签,看作“如果 <路径标签> 就使用 <算法>”。例如:

  • 如果要降维,就使用主成分分析。

  • 如果需要快速的数字预测,就用决策树或逻辑回归。

  • 如果需要分层结果,就使用层次聚类。

有时候,适用的分支有多个,其他时候完美适用的一个也没有。 重要的是记住:这些路径仅仅是经验总结,有的建议并不准确。 我聊过的几位数据科学家都说,找到最佳算法的唯一方法,就是尝试所有的算法。

机器学习算法的类型

本节将对最常见的机器学习算法类型,做个概述。 如果您对这些类别很熟悉,可以跳过本节到下面的“何时使用特定算法”。

监督学习

监督学习算法会根据样例集做预测。 例如,可以使用历史销售预估将来价格。 在监督学习中,有标记过的训练数据组成的输入变量,以及输出变量。 你用算法来分析训练数据,学习从输入映射到输出的函数。这个预测函数通过从训练数据中进行归纳,对新的未知的样本建立映射,来预测未知情况下的结果。

分类:当数据用于预测分类变量时,监督学习也称为分类。 图像处理中经典的猫狗识别:根据图像内容,向图片分配"狗"或"猫"标签就是这种案例。 当只有两个标签时,这被称为二进制分类。 当有两类以上时,这些问题被称为多类分类。

回归:当预测连续值时,问题就成为了一个回归问题。

预测:根据过去和现在的数据,对未来进行预测。 最常被用来分析趋势。 一个常见的例子可能是根据今年和前几年的销售情况估计下一年的销售额。

半监督学习

监督学习的困难在于,标注数据非常昂贵、费时。如果标注数据有限,可以使用未标注数据来加强监督学习。在这种情况下机器不是完全监督的,我们就称是半监督。通过半监督学习,可以使用未标注数据和少量的标注数据来提高学习的准确性。

无监督学习

进行无监督学习时,机器仅使用未标注数据。目标是发现数据中的内在模式,比如聚类结构,一个低维的流形(manifold),或者一个稀疏树和图。

 聚类:对一组数据进行分组,使得同一组(或一类)中的数据比其他组中的数据更加相似(根据一些规则)。这通常用来将整个数据集划分成几个数据组。在每个数据组中进行分析,能帮助用户找到内在的关联。

降维:减少约束条件下的变量数量。在许多应用中,原始数据特征维度特别高,并且一些特征是冗余的、或者和结果无关。降维能够帮助找到正确的潜在关联。

增强学习

增强学习基于环境反馈,分析并优化代理的行为。机器会尝试不同场景,找出产生最大的收益的行为,不需要被告知做什么。试错和延时奖励,是增强学习和其他技术的主要区别。

选择算法的注意事项

选择一个算法时,通常要考虑这三个方面:准确性,训练时间和易用性。许多人将准确性放在首位,但是初学者倾向于选择他们最了解的算法。

当拿到一个数据集时,首先要考虑的是如何获取结果,不管这些结果可能看起来是什么样子的。初学者倾向于选择容易实现并且能够快速得到结果的算法。这种做法是可取的,因为这只是第一步工作。一旦你得到了一些结果并且熟悉了这些数据,你可以会花费更多时间、使用更加复杂的算法来增强你对这些数据的理解,来进一步改进结果。

 即使在这种情况下,最好的算法,可能并不是有最高准确率的方法,因为一个算法通常需要仔细的调参和大量训练才能达到它的最优性能。




====================================分割线================================

本文作者:林立宏
本文转自雷锋网禁止二次转载, 原文链接
目录
打赏
0
0
0
0
26198
分享
相关文章
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
271 6
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
50 6
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
580 13
机器学习算法的优化与改进:提升模型性能的策略与方法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
CCS 2024:如何严格衡量机器学习算法的隐私泄露? ETH有了新发现
在2024年CCS会议上,苏黎世联邦理工学院的研究人员提出,当前对机器学习隐私保护措施的评估可能存在严重误导。研究通过LiRA攻击评估了五种经验性隐私保护措施(HAMP、RelaxLoss、SELENA、DFKD和SSL),发现现有方法忽视最脆弱数据点、使用较弱攻击且未与实际差分隐私基线比较。结果表明这些措施在更强攻击下表现不佳,而强大的差分隐私基线则提供了更好的隐私-效用权衡。
82 14
解锁机器学习的新维度:元学习的算法与应用探秘
元学习作为一个重要的研究领域,正逐渐在多个应用领域展现其潜力。通过理解和应用元学习的基本算法,研究者可以更好地解决在样本不足或任务快速变化的情况下的学习问题。随着研究的深入,元学习有望在人工智能的未来发展中发挥更大的作用。
|
4月前
|
PAI下面的gbdt、xgboost、ps-smart 算法如何优化?
设置gbdt 、xgboost等算法的样本和特征的采样率
145 2
C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出
本文探讨了C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出。文章还介绍了C语言在知名机器学习库中的作用,以及与Python等语言结合使用的案例,展望了其未来发展的挑战与机遇。
110 1

雷锋网

+ 订阅

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等