存根 10 种最佳机器学习算法 (2024) - Unite.AI
关注我们.

BEST OF

10 种最佳机器学习算法

mm
更新 on

尽管我们正经历一个 GPU 加速机器学习非凡创新的时代,但最新的研究论文经常(而且突出地)介绍的算法已有数十年历史,在某些情况下已有 70 年历史。

有些人可能会争辩说,许多这些旧方法属于“统计分析”而不是机器学习的阵营,并且更愿意将该领域的出现追溯到 1957 年。 感知器的发明.

考虑到这些旧算法在多大程度上支持并融入机器学习的最新趋势和引人注目的发展,这是一个有争议的立场。 因此,让我们来看看支撑最新创新的一些“经典”构建模块,以及一些正在早期竞逐人工智能名人堂的新条目。

1 年:变形金刚

2017 年,Google Research 领导了一项研究合作,最终 注意就是您所需要的。 这项工作概述了一种新颖的架构,促进了 注意机制 从编码器/解码器和循环网络模型中的“管道”到其本身的中央转换技术。

该方法被称为 变压器,并从此成为自然语言处理 (NLP) 领域的革命性方法论,为自回归语言模型和人工智能典范 GPT-3 等众多例子提供支持。

Transformer 优雅地解决了这个问题 序列转导,也称为“转换”,用于将输入序列处理为输出序列。 Transformer 还以连续的方式(而不是连续的批次)接收和管理数据,从而实现了 RNN 架构无法实现的“记忆持久性”。有关变压器的更详细概述,请查看 我们的参考文章.

与 CUDA 时代开始主导 ML 研究的循环神经网络 (RNN) 相比,Transformer 架构也可以轻松实现 并行化,为有效处理比 RNN 更大的数据集开辟了道路。

流行用法

2020 年,随着 OpenAI 的 GPT-3 的发布,《变形金刚》引发了公众的想象力,该技术创下了当时的纪录 175亿参数。 这一看似惊人的成就最终被后来的项目所掩盖,例如 2021 年 释放 Microsoft 的 Megatron-Turing NLG 530B,其(顾名思义)具有超过 530 亿个参数。

超大规模 Transformer NLP 项目的时间表。 来源:微软

超大规模 Transformer NLP 项目的时间表。 Sumber: 微软

Transformer 架构也从 NLP 跨越到计算机视觉,为 新一代 OpenAI 等图像合成框架 CLIPDALL-E,在越来越多的相关应用中,它使用文本>图像域映射来完成不完整的图像并从经过训练的域合成新颖的图像。

DALL-E 试图完成柏拉图半身像的部分图像。 来源:https://openai.com/blog/dall-e/

DALL-E 试图完成柏拉图半身像的部分图像。 资料来源:https://openai.com/blog/dall-e/

2:生成对抗网络(GAN)

尽管 Transformer 通过 GPT-3 的发布和采用获得了广泛的媒体报道,但 生成性对抗网络 (GAN)本身已成为一个知名品牌,并可能最终加入 deepfake 作为动词。

首次提出 在2014 主要用于图像合成,生成对抗网络 架构 由一个 发生器 的网络 判别器。 生成器循环遍历数据集中的数千张图像,迭代地尝试重建它们。 对于每次尝试,鉴别器都会对生成器的工作进行评分,并将生成器发送回去做得更好,但不会深入了解先前重建错误的方式。

资料来源:https://developers.google.com/machine-learning/gan/gan_struct

资料来源:https://developers.google.com/machine-learning/gan/gan_struct

这迫使生成器探索多种途径,而不是走入潜在的死胡同,如果判别器告诉它哪里出了问题,就会出现死胡同(参见下面的#8)。 训练结束时,生成器将拥有数据集中各点之间关系的详细且全面的地图。

研究人员随附视频的摘录(请参阅文章末尾的嵌入内容)。 请注意,用户正在使用“抓取”光标(左上角)来操作转换。 来源:https://www.youtube.com/watch?v=k7sG4XY5rIc

从纸上 通过提高空间意识改善 GAN 平衡:一种新颖的框架在有时神秘的 GAN 潜在空间中循环,为图像合成架构提供响应式工具。 来源:https://genforce.github.io/eqgan/

打个比方,这就是学习前往伦敦市中心的单调通勤与煞费苦心地学习之间的区别 知识点.

结果是训练模型的潜在空间中的高级特征集合。 高级特征的语义指示符可以是“人”,而通过与该特征相关的特异性进行下降可能会发现其他习得的特征,例如“男性”和“女性”。 在较低级别,子特征可以细分为“金发女郎”、“白人”等。

纠缠是 一个值得注意的问题 在 GAN 和编码器/解码器框架的潜在空间中:GAN 生成的女性脸上的微笑是她在潜在空间中“身份”的纠缠特征,还是一个平行分支?

GAN 生成的此人的面孔不存在。 来源:https://this-person-does-not-exist.com/en

GAN 生成的此人的面孔不存在。 来源:https://this-person-does-not-exist.com/en

过去几年在这方面出现了越来越多的新研究举措,也许为 GAN 潜在空间的特征级、Photoshop 式编辑铺平了道路,但目前,许多转换实际上是“全有或全无的套餐。 值得注意的是,NVIDIA 于 2021 年末发布的 EditGAN 实现了 高水平的可解释性 通过使用语义分割掩码在潜在空间中。

流行用法

除了(实际上相当有限)参与流行的深度伪造视频之外,以图像/视频为中心的 GAN 在过去四年中激增,吸引了研究人员和公众。 尽管 GitHub 存储库跟上令人眼花缭乱的新版本发布速度和频率是一个挑战 很棒的 GAN 应用 旨在提供一份全面的清单。

理论上,生成对抗网络可以从任何框架良好的领域中获取特征, 包括文字.

3:支持向量机

起源 在1963, 支持向量机 (SVM)是新研究中经常出现的核心算法。 在 SVM 下,向量映射数据集中数据点的相对分布,而 SUPPORT 向量描绘了不同群体、特征或特征之间的界限。

支持向量定义组之间的边界。 资料来源:https://www.kdnuggets.com/2016/07/support-vector-machines-simple-explanation.html

支持向量定义组之间的边界。 资料来源:https://www.kdnuggets.com/2016/07/support-vector-machines-simple-explanation.html

导出的边界称为 超平面.

在低特征级别,SVM 是 二维的 (上图),但是当有更多可识别的组或类型时,它就变成了 三维.

更深的点和组数组需要三维 SVM。 来源:https://cml.rhul.ac.uk/svm.html

更深的点和组数组需要三维 SVM。 来源:https://cml.rhul.ac.uk/svm.html

流行用法

由于支持向量机可以有效且不可知地处理多种类型的高维数据,因此它们广泛出现在各种机器学习领域,包括 深度检测, 图像分类, 仇恨言论分类, DNA分析人口结构预测,等等。

4:K 均值聚类

聚类一般是 无监督学习 旨在通过以下方式对数据点进行分类的方法 密度估计,创建所研究数据的分布图。

K 均值聚类预测数据中的分段、组和社区。 资料来源:https://aws.amazon.com/blogs/machine-learning/k-means-clustering-with-amazon-sagemaker/

K 均值聚类预测数据中的分段、组和社区。 资料来源:https://aws.amazon.com/blogs/machine-learning/k-means-clustering-with-amazon-sagemaker/

K均值聚类 已成为这种方法最流行的实施方式,将数据点引导到独特的“K 组”中,这可能表明人口统计部门、在线社区或任何其他可能的秘密聚合等待在原始统计数据中发现。

K 均值分析中形成簇。 资料来源:https://www.geeksforgeeks.org/ml-define-the-optimal-value-of-k-in-k-means-clustering/

K 均值分析中形成聚类。 资料来源:https://www.geeksforgeeks.org/ml-define-the-optimal-value-of-k-in-k-means-clustering/

K 值本身是过程效用以及为集群建立最佳值的决定因素。 最初,K值是随机分配的,并将其特征和向量特征与其邻居进行比较。 那些与具有随机分配值的数据点最相似的邻居将被迭代地分配到其集群,直到数据产生该过程允许的所有分组。

平方误差图或簇中不同值的“成本”将揭示 肘点 对于数据:

聚类图中的“肘点”。 来源:https://www.scikit-yb.org/en/latest/api/cluster/elbow.html

聚类图中的“肘点”。 来源:https://www.scikit-yb.org/en/latest/api/cluster/elbow.html

肘点在概念上类似于数据集训练结束时损失趋平为收益递减的方式。 它代表了群体之间不再有进一步明显区别的时刻,表明是时候进入数据管道的后续阶段,或者报告调查结果。

流行用法

出于显而易见的原因,K 均值聚类是客户分析中的一项主要技术,因为它提供了一种清晰且可解释的方法,可以将大量商业记录转化为人口统计洞察和“潜在客户”。

除此应用程序之外,K 均值聚类还用于 滑坡预报, 医学图像分割, 使用 GAN 进行图像合成, 文件分类城市规划,以及许多其他潜在和实际用途。

5:随机森林

随机森林是一个 合奏学习 方法对数组的结果进行平均 决策树 建立对结果的总体预测。

来源:https://www.tutorialandexample.com/wp-content/uploads/2019/10/Decision-Trees-Root-Node.png

来源:https://www.tutorialandexample.com/wp-content/uploads/2019/10/Decision-Trees-Root-Node.png

如果你对它进行过研究,哪怕只是看一下 回到未来 三部曲,决策树本身很容易概念化:许多路径摆在你面前,每条路径分支出一个新的结果,而新的结果又包含更多可能的路径。

In 强化学习,你可能会退出一条路径并从之前的立场重新开始,而决策树则致力于他们的旅程。

因此,随机森林算法本质上是决策的分散下注。 该算法被称为“随机”,因为它使得 特设 进行选择和观察,以便了解 中位数 决策树数组结果的总和。

由于随机森林方法考虑了多种因素,因此它比决策树更难以转换为有意义的图表,但可能效率更高。

决策树容易出现过度拟合,其中获得的结果是特定于数据的并且不太可能概括。 随机森林对数据点的任意选择可以对抗这种趋势,深入挖掘数据中有意义且有用的代表性趋势。

决策树回归。 来源:https://scikit-learn.org/stable/auto_examples/tree/plot_tree_regression.html

决策树回归。 来源:https://scikit-learn.org/stable/auto_examples/tree/plot_tree_regression.html

流行用法

与此列表中的许多算法一样,随机森林通常充当数据的“早期”排序器和过滤器,因此不断出现在新的研究论文中。 随机森林使用的一些示例包括 磁共振图像合成, 比特币价格预测, 人口普查细分, 文字分类信用卡欺诈检测.

由于随机森林是机器学习架构中的低级算法,因此它还可以提高其他低级方法以及可视化算法的性能,包括 归纳聚类, 特征转换、文本文档的分类 使用稀疏特征显示管道.

6:朴素贝叶斯

结合密度估计(参见 4,上面),一个 朴素贝叶斯 分类器是一种功能强大但相对轻量级的算法,能够根据计算的数据特征来估计概率。

朴素贝叶斯分类器中的特征关系。 来源:https://www.sciencedirect.com/topics/computer-science/naive-bayes-model

朴素贝叶斯分类器中的特征关系。 来源:https://www.sciencedirect.com/topics/computer-science/naive-bayes-model

“朴素”一词指的是以下假设: 贝叶斯定理 这些特征是不相关的,称为 条件独立性。 如果你采用这种观点,像鸭子一样走路和说话不足以证明我们正在与鸭子打交道,并且不会过早地采用“明显”假设。

在有“常识”的情况下,这种学术和调查的严谨程度可能有些过大,但在遍历机器学习数据集中可能存在的许多模糊性和潜在不相关的相关性时,这是一个有价值的标准。

在原始贝叶斯网络中,特征受制于 评分函数,包括最小描述长度和 贝叶斯评分,它可以根据数据点之间找到的估计连接以及这些连接流动的方向对数据施加限制。

相反,朴素贝叶斯分类器的工作原理是假设给定对象的特征是独立的,然后根据给定对象的特征使用贝叶斯定理计算给定对象的概率。

流行用法

朴素贝叶斯过滤器在 疾病预测和文档分类, 垃圾邮件过滤, 情感分类, 推荐系统欺诈检测,以及其他应用程序。

7:K-最近邻(KNN)

由美国空军航空医学学院首先提出 在1951,并且必须适应 20 世纪中期最先进的计算硬件, K最近邻居 (KNN) 是一种精益算法,在学术论文和私营部门机器学习研究计划中仍然占据显着地位。

KNN 被称为“惰性学习器”,因为它详尽地扫描数据集以评估数据点之间的关系,而不需要训练成熟的机器学习模型。

KNN 分组。 来源:https://scikit-learn.org/stable/modules/neighbors.html

KNN 分组。 来源: https://scikit-learn.org/stable/modules/neighbors.html

尽管 KNN 在架构上比较薄弱,但其系统方法确实对读/写操作提出了显着的要求,并且如果没有主成分分析 (PCA) 等辅助技术(可以转换复杂且大容量的数据集),它在非常大的数据集中的使用可能会出现问题进入 代表性分组 KNN 可以更轻松地遍历。

A 最近的一项研究 评估了多种用于预测员工是否会离开公司的算法的有效性和经济性,发现七十多岁的 KNN 在准确性和预测有效性方面仍然优于更现代的竞争者。

流行用法

尽管 KNN 的概念和执行都很简单,但它并没有停留在 1950 世纪 XNUMX 年代——它已经适应了 更加注重 DNN 的方法 在宾夕法尼亚州立大学 2018 年的一项提案中,它仍然是许多复杂得多的机器学习框架中的核心早期过程(或后处理分析工具)。

在各种配置中,KNN 已被用于或用于 在线签名验证, 图像分类, 文本挖掘, 作物预测面部识别,除了其他应用程序和公司。

训练中的基于 KNN 的面部识别系统。 资料来源:https://pdfs.semanticscholar.org/6f3d/d4c5ffeb3ce74bf57342861686944490f513.pdf

训练中的基于 KNN 的面部识别系统。 Source: https://pdfs.semanticscholar.org/6f3d/d4c5ffeb3ce74bf57342861686944490f513.pdf

8:马尔可夫决策过程(MDP)

美国数学家理查德·贝尔曼提出的数学框架 在1957,马尔可夫决策过程(MDP)是最基本的块之一 强化学习 架构。 它本身就是一种概念算法,已被改编成大量其他算法,并在当前的人工智能/机器学习研究中频繁出现。

MDP 通过使用其当前状态(即它在数据中的“位置”)的评估来探索数据环境,以决定接下来要探索的数据节点。

资料来源:https://www.sciencedirect.com/science/article/abs/pii/S0888613X18304420

资料来源:https://www.sciencedirect.com/science/article/abs/pii/S0888613X18304420

基本的马尔可夫决策过程将优先考虑近期优势而不是更理想的长期目标。 因此,它通常被嵌入到强化学习中更全面的策略架构的背景中,并且常常受到以下限制因素的影响: 折扣奖励,以及其他改变环境变量,这些变量将阻止它在不考虑更广泛的期望结果的情况下匆忙实现眼前的目标。

流行用法

MDP 的低级概念在机器学习的研究和主动部署中广泛存在。 已提议用于 物联网安全防御系统, 鱼收获市场预测.

除了它的 明显的适用性 对于国际象棋和其他严格顺序的游戏,MDP 也是自然的竞争者 机器人系统的程序培训,正如我们在下面的视频中看到的那样。

使用马尔可夫决策过程的全局规划器 - 移动工业机器人

 

9:词频-逆文档频率

词频 (TF) 将某个单词在文档中出现的次数除以该文档中的单词总数。 因此这个词 密封 在千字文章中出现一次的词频为 0.001。 就其本身而言,TF 作为术语重要性的指标在很大程度上是无用的,因为无意义的文章(例如 a, , it) 占主导地位。

为了获得术语的有意义的值,逆文档频率 (IDF) 计算数据集中多个文档中单词的 TF,将低评级分配给非常高的频率 停用词,比如文章。 得到的特征向量被归一化为整数值,每个单词被分配适当的权重。

TF-IDF 根据多个文档中的频率对术语的相关性进行加权,出现次数越少则表示显着性。 来源:https://moz.com/blog/inverse-document-Frequency-and-the-importance-of-uniqueness

TF-IDF 根据多个文档中的频率对术语的相关性进行加权,出现次数越少则表示显着性。 来源:https://moz.com/blog/inverse-document-Frequency-and-the-importance-of-uniqueness

尽管这种方法可以防止语义上重要的单词丢失 离群,反转频率权重并不自动意味着低频项是 不能 异常值,因为有些事情很罕见 毫无价值。 因此,低频术语需要通过在数据集中的许多文档中具有特征(即使每个文档的频率较低)来证明其在更广泛的架构上下文中的价值。

尽管如此 年龄,TF-IDF 是自然语言处理框架中用于初始过滤过程的一种强大且流行的方法。

流行用法

由于 TF-IDF 在过去 XNUMX 年中至少在 Google 神秘的 PageRank 算法的开发中发挥了一定作用,因此它已成为 非常广泛采用 作为一种操纵性的 SEO 策略,尽管约翰·穆勒 (John Mueller) 在 2019 年 拒绝 其对搜索结果的重要性。

由于 PageRank 的保密性,没有明确的证据表明 TF-IDF 是 不能 目前这是提高谷歌排名的有效策略。 燃烧弹 讨论 IT 专业人士最近表明了一种流行的理解,无论正确与否,术语滥用仍然可能导致 SEO 排名的改善(尽管额外的) 滥用垄断的指控过度广告 模糊了这一理论的界限)。

10:随机梯度下降

随机梯度下降 (SGD)是一种越来越流行的优化机器学习模型训练的方法。

梯度下降本身是一种优化并随后量化模型在训练过程中取得的改进的方法。

从这个意义上说,“梯度”表示向下的斜率(而不是基于颜色的渐变,请参见下图),其中左侧“山”的最高点代表训练过程的开始。 在这个阶段,模型甚至还没有看到完整的数据,并且还没有充分了解数据之间的关系以产生有效的转换。

FaceSwap 训练课程中的梯度下降。 我们可以看到,训练在后半段已经稳定了一段时间,但最终恢复了梯度下降,达到了可接受的收敛程度。

FaceSwap 训练课程中的梯度下降。 我们可以看到,训练在后半段已经稳定了一段时间,但最终恢复了梯度下降,达到了可接受的收敛程度。

右侧的最低点代表收敛(模型在所施加的约束和设置下尽可能有效的点)。

梯度充当错误率(模型当前映射数据关系的准确程度)和权重(影响模型学习方式的设置)之间差异的记录和预测器。

该进展记录可用于通知 学习率表,一个自动过程,随着早期模糊的细节转变为清晰的关系和映射,告诉架构变得更加细粒度和精确。 实际上,梯度损失提供了一个及时的地图,显示下一步训练应该去哪里以及如何进行。

随机梯度下降的创新之处在于,它在每次迭代的每个训练示例上更新模型参数,这通常会加速收敛过程。 由于近年来超大规模数据集的出现,SGD 作为解决随之而来的逻辑问题的一种可能方法,最近越来越受欢迎。

另一方面,SGD 负面影响 对于特征缩放,与常规梯度下降相比,可能需要更多迭代才能达到相同的结果,需要额外的规划和额外的参数。

流行用法

由于其可配置性,尽管有其缺点,SGD 已成为拟合神经网络最流行的优化算法。 在新的 AI/ML 研究论文中占据主导地位的 SGD 的一种配置是选择自适应矩估计(ADAM,介绍了 在2015) 优化器。

ADAM 动态调整每个参数的学习率(“自适应学习率”),并将先前更新的结果合并到后续配置中(“动量”)。 此外,它还可以配置为使用后来的创新,例如 涅斯特洛夫动量.

然而,一些人认为动量的使用也可以将 ADAM(和类似算法)加速到 次优结论。 与机器学习研究领域的大多数前沿一样,SGD 是一项正在进行中的工作。

 

首次发布于 10 年 2022 月 10 日。20.05 月 XNUMX 日修订 EET XNUMX:XNUMX – 格式。