传统机器学习算法和模型列表

正在寻找主要机器学习算法和模型的整洁但易于访问的列表?然后继续阅读!

这篇文章的目标是概述最基本的,有时也称为 '传统的' 机器学习模型,简要描述每个模型,并引导您找到大量资源,您可以在其中深入了解它们。

我们将从最简单的模型到最复杂的模型,概述每个模型的优点、它们可以在哪里以及应该在哪里使用,并查看一些示例。您将来可以使用这篇文章作为讨论使用哪种 ML 模型时的首选指南。

太棒了,现在我已经让你着迷了,让我们从机器学习模型列表的最开始开始吧:线性回归。

机器学习算法和模型的快速列表

线性回归

线性回归 往往是所有老师首先解释的机器学习算法,大多数书籍都从它开始,大多数人最终都会学习以开始他们的职业生涯。

这是一个非常简单的算法,将特征向量(数据的变量或特征)作为输入,并且 给出一个数字、连续的输出。正如它的名字和之前的解释大纲一样,它是一个 回归 算法,以及线性算法家族的主要成员和之父,其中 广义线性模型 (广义线性模型) 来自。

它可以使用封闭式解决方案进行训练,或者像机器学习世界中通常所做的那样,使用迭代优化算法,例如 梯度下降

线性回归是 参数 机器学习模型(具有固定数量的参数,取决于我们数据的特征数量,并且训练速度相当快),适用于与我们的目标变量(我们想要稍后预测的连续数字特征)线性相关的数据),学习起来非常直观,并且易于解释。这就是我们所说的‘可解释的人工智能模型’, 因为知道模型权重后,它所做的预测就很容易解释。

线性回归模型的一个示例可以是一个预测房价的模型,该模型会考虑每个房屋的特征(例如表面积、位置、房间数量或是否有电梯)。

下图显示了线性回归如何仅使用 1 个特征来预测特定房屋的价格:房屋的表面积(以平方米为单位)。如果我们的模型中包含更多变量,X 轴将反映这些特征的加权线性组合。

machine learning algorithms for beginners
用于预测的线性回归示例。图片由作者提供。

上图中的直线将使用优化算法(例如梯度下降)适应训练过程,该算法迭代地改变直线的斜率,直到获得适合我们任务的最佳直线。

要了解更多信息,请查看以下资源:

现在我们知道什么是线性回归,让我们了解一下它的离散兄弟:逻辑回归!

逻辑回归

我们机器学习算法列表中的第二位是逻辑回归。 逻辑回归 是线性回归的兄弟,用于 分类 而不是回归问题。作为线性回归,它需要一个输入特征向量,但这次它给出一个类标签而不是连续的数值。

逻辑回归的一个例子是一种算法,可以根据某个患者的病历来预测他是否患有疾病。

它使用一个 乙状结肠 功能,所以它不仅能够给我们分类标签(生病与否),而且还可以给我们 可能性 该事件发生的情况;即患有某种疾病的概率,或者我们商店的顾客购买某种产品的概率。

这非常有用,因为我们可以根据从模型获得的输出概率选择执行不同的操作,而不仅仅是二进制预测。

作为线性回归,它是一个非常 直观且可解释的算法,因为通过分析模型参数或权重,我们可以看到数据的哪些特征是最重要的,并且还可以了解模型为何预测它正在预测的内容。

这使得它成为一个非常强大的分类模型,通常是 面对分类问题时首先尝试的方法 并希望快速获得结果作为基线。

下图显示了仅使用 1 个特征的 Logistic 回归模型的示例 (患者体重) 计算此类患者肥胖的概率:

list of machine learning algorithms wikipedia
逻辑回归示例。图片由作者提供。

在上图中我们可以看到 乙状结肠 具有一定形状的曲线用于预测 60Kg 患者肥胖的概率,我们可以看到约为 10%(纵轴为 0.1),而 120Kg 患者肥胖的概率约为 93% (纵轴为 0.93)。

如果特征数量多于 1 个,在水平轴上我们会看到这些特征的线性加权组合,在 Y 轴上我们会再次看到概率。

有关逻辑回归的更多信息,请查看以下资源:

奥基多基!让我们继续另一个非常简单直观的模型:决策树!

决策树

决策树 是非常通用的机器学习模型,可用于回归和分类。

它们是使用两种元素构建的: 节点和分支。在每个节点,都会评估数据的一个特征,以便在训练过程中分割观察结果,或者在进行预测时使特定数据点遵循特定路径。

简而言之,决策树就是:评估不同变量的路径,通向一个离开节点,其中 相似的观察结果被分组。

在训练过程中,通过分析可能的特征及其值并决定哪些特征最好地分割我们的数据来构建树,以便不同的数据点进入分割的一侧,同时最大限度地减少某种错误。

您可以从下图中直观地了解什么是决策树。

正如您所看到的,它们是非常简单的模型,这通常意味着它们 不会产生如此强大的结果 以神经网络为例,它们也往往会过度拟合(对训练集学习得非常好,但很难推广到新的数据点),这限制了它们在行业中的使用。

然而,尽管有这些缺点,它们可能 最直观、最容易理解的机器学习模型,通过检查我们的数据点遵循哪条路径,我们可以很容易地知道为什么一棵树做出了某种预测。

对于分类问题,进行此预测时选择的类是新观察值在沿着树的路径后落下的叶子节点的训练数据点的最常见的类。对于回归,它是这些点的目标值的平均值。

凉爽的!让我们看看如何堆叠大量决策树来构建随机森林!

随机森林

随机森林 模型是一种 非参数的 楷模 可以用于回归和分类。它们是最流行的集成方法之一,属于特定类别 套袋 方法。

集成方法 涉及使用 许多学习者 单独提高其中任何一个的性能。这些方法可以描述为使用 组 弱学习者 (平均而言,那些只比随机模型获得稍好结果的人) 一起,按顺序 创建一个更强大、聚合的团队

在我们的例子中,随机森林是 许多个体决策树的集合,我们之前看到的机器学习模型系列。

随机森林 将随机性和数字引入方程,解决了单个决策树的许多问题,例如过度拟合和预测能力差。

在随机森林中,每棵树都是使用训练数据的子集构建的,通常只是可能特征的子集。随着越来越多的树被构建,我们使用的数据范围越来越广,更多的功能开始发挥作用,从而形成非常强大的聚合模型。

各个树是独立构建的,使用与正常决策树相同的过程,但仅使用数据的随机部分,并且仅考虑每个节点处的特征的随机子集。除此之外,训练过程与单个决策树的训练过程完全相同,重复 N 次。

为了使用随机森林进行预测,从每棵树中获得单独的预测。然后,如果是分类问题,我们将最频繁的预测作为结果,如果是回归问题,我们将所有单个树的平均预测作为输出值。下图说明了这是如何完成的:

有关随机森林的更多信息,请查看:

随机森林和增强方法可能是业界最常用的传统机器学习模型,因为它们易于使用、强大且灵活。

让我们看看这些是什么 “提升方法” 是!

提升方法

升压方法 类似于‘套袋’ 我们刚刚看到了随机森林,但有一个关键区别:在随机森林中,所有树都可以并行构建,它们几乎是独立的。在 boosting 方法中,每棵树都是按顺序构建的,从前一棵树获取信息:树 4 取决于树 3 的情况,树 3 取决于树 2,依此类推。

Boosting,最初命名为 假设增强,包括过滤或加权用于训练弱学习者团队的数据的想法,以便每个新学习者给予更多权重,或者仅使用先前学习者分类不佳的观察结果进行训练。

通过做这个 我们的队伍 型号数 学会做出准确的预测 各种数据,而不仅仅是最常见或简单的观察结果。此外,如果其中一个模型非常不擅长对某种观察进行预测,也没关系,因为其他 N-1 模型很可能会弥补这一点。

Boosting 方法非常强大,该系列的模型(如 LightGBM、AdaBoost 或 XGBoost)以及前面讨论的随机森林可能是机器学习/数据科学行业中面对普通表格数据时最常用的方法。

有关提升的更多信息,请查看以下资源:

让我们以最后一个很棒的模型结束:支持向量机!

机器学习算法列表中的最后一个:支持向量机

支持向量机 或 SVM 是广泛使用的机器学习模型系列, 可以解决很多机器学习问题,如线性或非线性分类、回归,甚至异常值检测。

话虽如此, 他们的最佳应用 应用时出现 到小分类 或中等大小, 复杂的数据集

对于分类,支持向量机通过在数据之间创建决策边界来工作,尝试尽可能地将数据分开,如下图所示:

the best list of machine learning models

有时,使用线性决策边界完美分离我们的数据是不可能的,有时完全不可能,因此 SVM 使用一种称为“ 内核技巧 为了尝试分离我们的数据,尽管他们有时不得不让错误类别的一些点位于决策边界的一侧,而不是它们不应该位于的一侧。

通过调整多少个点以及我们使用哪种内核,SVM 可以非常强大,特别是当我们的数据具有很多特征时。然而,它们需要相当长的时间来训练,因此它们只能用于中小型数据集。

有关 SVMS 的更多资源请查看:

结束语和其他资源来补充此机器学习算法列表

这就对了!一如既往,我们希望您 喜欢这个帖子,我们设法帮助您了解一些基本的机器学习算法,并为您提供了深入研究它们的资源。

我们排除了人工神经网络,并包括了 Boosting 模型(有些人将其排除在这个列表之外)。此外,概率方法尚未包括在内,但我们将很快发布一些有关它们的广泛内容。最后,无监督模型尚未包括在内。

为了使本文更加完整,我们将在以下列表中为您提供资源,以帮助您决定在每种情况下使用哪种机器学习算法:

另外,您还可以查看 我们的存储库 有关机器学习和人工智能的更多资源的书籍!

有关此机器学习算法列表中涵盖的模型的更多教程,请查看我们的教程类别。另外,如果您正在寻找好书来更深入地了解机器学习算法列表,请查看以下书籍:

书评:

祝你有美好的一天,别忘了在 Twitter 上关注我们!