【综述】机器学习中的12类算法

简介: 最近在研究一些机器学习方面的论文,翻到了一篇较早的机器学习综述(2017年),虽然不是最新的研究现状,但考虑到经典机器学习算法其实发展并不像深度学习那么迅猛,所以其论述还是很有参考性。本文就其中关于机器学习算法分类的一段进行选摘翻译,以供参考。原文链接可通过阅读原文查阅。

640.png


以下译文选摘自2017年发表在IJIRCCE上的《A Survey on Machine Learning: Concept, Algorithms and Applications》这篇文章的第III部分的B小节,对算法进行分类介绍。主要包括12种机器学习算法。


本文为个人翻译分享,限于英语水平,定有翻译不当甚至的错误的地方还望谅解。另外,部分不为熟知的算法举例有所删减。


01 回归算法


回归分析是预测的一部分,其通过挖掘自变量和因变量(目标)之间的关系实现。知名的回归模型包括:线性回归(Linear Regression),逻辑回归(Logistic Regression),逐步回归(Stepwise Regression),最小二乘法(Ordinary Least Squares Regression (OLSR)),多元自适应回归(Multivariate Adaptive Regression Splines (MARS) ),本地散点平滑估计(Locally Estimated Scatterplot Smoothing (LOESS))等等。


译者注:虽然称之为回归算法,但众所周知逻辑回归是用于分类的。另外,除了线性回归和逻辑回归之外,其他几种算法貌似并不常用。


02 基于实例的算法


基于实例或基于内存的算法,会直接存储所有训练数据样本,而不对其开发一个具体的模型函数。当有新的任务时(即用于测试集),其会用所有训练集数据进行检验以得到预测结果。如果遇到更好的训练数据,它可以简单的对其予以替换和更新。因此,这类算法也被称为"胜者为王"算法。例如:K近邻(KNN),学习向量量化(LVQ),自组织映射网络(SOM),局部加权学习(LWL)等等。


译者注:这类算法其实就是所谓的惰性算法,即不训练任何模型,只存储训练数据,直至有预测任务时采取与训练集比较的方式进行预测。KNN就是最典型的代表。


03 正则化算法


正则化是用于解决过拟合和离群点的过程,是一种对已有机器学习模型进行简单而有效的增加调整参数的方法,典型的就是对回归模型。通过对拟合函数增加惩罚项的方式来实现拟合曲线的平滑,从而更好的处理离群点。例如:岭回归(Ridge),LASSO回归,弹性网(Elastic Net),最小角回归(LARS)等。


译者注:此处的正则化算法其实也属于广义上的线性回归模型,在sklearn中都从linear_model中引入。


04 决策树算法


决策树算法将可能的解决方案构建成类似于一棵树的结构,同时满足一定的约束条件。如此命名,是因为它总是从一个根节点开始,然后引出多个分支,直至可以得出确切的结论或预测结果为止,从而将这一过程构建成一棵树。它因具有以类似于人的处理方式来解决问题的能力而备受青睐,同时又具有较快的速度和较高的准确率。例如:CART树、ID3、C4.5、C5.0等等。


译者注:决策树的确是一种很好的机器学习算法,非常符合if-else或者swich-case的编程思想,它训练速度快、精度高,更重要的是支撑起了众多集成学习算法。


05 贝叶斯算法


这是一组基于贝叶斯理论的机器学习算法,可用于解决分类和回归问题。例如:朴素贝叶斯(NB),高斯朴素贝叶斯(Gaussian NB),多项式朴素贝叶斯(Multinomial NB),贝叶斯网络(BN)等。


译者注:贝叶斯理论是机器学习中的常青树,不仅衍生了朴素贝叶斯算法,更是支撑起了HPO(超参)方向的一片天!


06 支持向量机


SVM是一种如此流行的机器学习算法,以至于可将其独立分为一类。它采用一组超平面或带有决策边界的决策平面来区分不同标签的数据。它是一种严格的有监督分类算法。换言之,该算法根据输入数据或训练集来得到最优超平面或决策边界,而后以此对新的数据进行分类。当采用核函数时,SVM可兼顾线性和非线性分类问题。


译者注:SVM是曾经红极一时的机器学习算法,尤其是有了核函数的加持!俗话说,SVM有三宝,间隔对偶核函数。但其理解或者公式推导其实都是不甚友好的。另外,SVM不仅可用于分类问题,当然也可以用于回归问题。


07 聚类算法


聚类是对数据集中潜在的模式进行利用和区分,从而对数据进行打标签的过程。例如:K-Means、K-Medians、谱聚类、DBSCAN、EM等。


译者注: 聚类算法是最为常见的无监督机器学习场景,其与分类算法的区别在于:聚类是在数据无标签的情况下尝试对其打标签,而分类则是在实际有标签的情况下对其进行预测!


08 关联规则算法


关联规则用于发现表面不相关数据之间的相关性。它们被广泛应用于电商网站来预测客户行为和需求,以及向顾客推荐其可能感兴趣的产品。例如:Apriori 算法、Eclat 算法等。


译者注:关联规则的经典案例是啤酒和尿布,这也是某种意义上数据挖掘的起源!


09 人工神经网络算法


这是一种基于人或动物真实神经网络而构建的模型。由于其试图发现输入和输出数据间的复杂关联,ANN因此被视为非线性模型。其对数据进行采样应用而非整个数据集,从而可控制成本和时间。例如:感知机、反向传播、径向基网络等。


译者注:人工神经网络是一种拟生算法,理念源于自然,又有着较为严格的数学理论基础,诞生时间也较早。比较经典的算法当属多层感知机模型,但其更大的价值在于奠定了深度学习的理论基础。或许,深度学习这种星火燎原的态势,是作者在2017年初所不曾预想的场面。


10 深度学习算法


在数据体量足够大的今天,人工神经网络模型也有了更多的现代化版本。其利用更大的神经网络来解决半监督问题,其中的数据往往是无标签或者未分类的。例如,深度玻尔兹曼机,深度置信网络(DBN),卷积神经网络(CNN)等等。


译者注:近几年深度学习算法太火了,每年都有大量新的论文提出创新思想,俨然成为机器学习领域最为璀璨的明珠!


11 降维算法


降维算法通常用于将较大的数据集降低体量,采用最有用的成份或少数特征来表达相关信息。这可有助于数据更好的提供可视化或者更高效的开展有监督学习中的分类。例如:主成分分析 (PCA)、主成分回归 (PCR)、线性判别分析 (LDA)等。


译者注:降维算法与聚类算法同属于无监督学习,仅在某些特定场景下有所应用,例如PCA算法有着严格的矩阵论基础。但由于降维后的数据变得不具有可解释性,所以它是天使还是魔鬼,全看如何应用!


12 集成算法


集成算法的主要出发点是综合多个独立训练的弱学习器预测结果,确保最终结果相较于单个学习器而言更为精准和鲁棒。为了最大化集成学习效果,需谨慎考虑基学习器类型和集成方法。例如:Boosting,Bagging,AdaBoost,GBM,GBRT,随机森林,极限随机森林等。


译者注:单就经典机器学习而言(即不考虑深度学习和强化学习等),集成学习才是当前的主流和热点!主流集成学习思想可参考历史推文: 一张图介绍机器学习中的集成学习算法。


640.png


目录
相关文章
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
机器学习/深度学习 算法 安全
深度长文I 深度合成服务类-算法备案该怎么做?
本文详解“深度合成服务类”算法及其备案要求,涵盖定义、类型、备案流程等内容,助你全面理解合规要点。
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
1178 8
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
663 6
|
人工智能 编解码 算法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
870 0
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
2007 6
|
机器学习/深度学习 人工智能 算法
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
2825 13
机器学习算法的优化与改进:提升模型性能的策略与方法
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
机器学习/深度学习 算法 网络安全
CCS 2024:如何严格衡量机器学习算法的隐私泄露? ETH有了新发现
在2024年CCS会议上,苏黎世联邦理工学院的研究人员提出,当前对机器学习隐私保护措施的评估可能存在严重误导。研究通过LiRA攻击评估了五种经验性隐私保护措施(HAMP、RelaxLoss、SELENA、DFKD和SSL),发现现有方法忽视最脆弱数据点、使用较弱攻击且未与实际差分隐私基线比较。结果表明这些措施在更强攻击下表现不佳,而强大的差分隐私基线则提供了更好的隐私-效用权衡。
548 14

热门文章

最新文章