11种最常见的机器学习算法简介

常见机器学习算法的摘要 。

11种最常见的机器学习算法简介

文章插图
> Photo by Santiago Lacarta on Unsplash
 
近年来 , 由于对技术的高需求和进步 , 机器学习的普及已大大增加 。机器学习可以从数据中创造价值的潜力使其吸引了许多不同行业的企业 。大多数机器学习产品都是使用现成的机器学习算法进行设计和实现的 , 并且需要进行一些调整和细微更改 。
机器学习算法种类繁多 , 可分为三大类:
· 监督学习算法在给定一组观察值的情况下 , 对特征(独立变量)和标签(目标)之间的关系进行建模 。然后 , 使用该模型使用特征预测新观测的标签 。根据目标变量的特性 , 它可以是分类(离散目标变量)或回归(连续目标变量)任务 。
· 无监督学习算法试图在未标记的数据中找到结构 。
· 强化学习基于行动奖励原则 。代理通过迭代计算其行为的报酬来学习达到目标 。
在本文中 , 我将介绍前两类中最常见的算法 。
注意:尽管深度学习是机器学习的一个子领域 , 但我不会在本文中包含任何深度学习算法 。我认为深度学习算法由于复杂性和动态性而应分开讨论 。此外 , 我会犹豫地使这篇文章过长 , 使读者感到厌烦 。
开始吧 。
1.线性回归线性回归是一种有监督的学习算法 , 它通过对数据拟合线性方程 , 尝试对连续目标变量和一个或多个自变量之间的关系进行建模 。
为了使线性回归成为一个不错的选择 , 自变量和目标变量之间必须存在线性关系 。有许多工具可以探索变量之间的关系 , 例如散点图和相关矩阵 。例如 , 下面的散点图显示了自变量(x轴)和因变量(y轴)之间的正相关 。随着一个增加 , 另一个也增加 。
11种最常见的机器学习算法简介

文章插图
 
线性回归模型试图使回归线适合最能表示关系或相关性的数据点 。最常用的技术是普通最小二乘(OLE) 。使用此方法 , 可以通过最小化数据点和回归线之间距离的平方和来找到最佳回归线 。对于上面的数据点 , 使用OLE获得的回归线看起来像:
11种最常见的机器学习算法简介

文章插图
 
2.支持向量机支持向量机(SVM)是一种监督学习算法 , 主要用于分类任务 , 但也适用于回归任务 。
SVM通过绘制决策边界来区分类 。如何绘制或确定决策边界是SVM算法中最关键的部分 。在创建决策边界之前 , 将每个观察值(或数据点)绘制在n维空间中 。" n"是所使用功能的数量 。例如 , 如果我们使用"长度"和"宽度"对不同的"单元格"进行分类 , 则观察结果将绘制在二维空间中 , 并且决策边界为一条线 。如果我们使用3个要素 , 则决策边界是3维空间中的平面 。如果我们使用3个以上的特征 , 则决策边界将变成一个很难可视化的超平面 。
11种最常见的机器学习算法简介

文章插图
> Decision boundary in 2D space is a line
 
决策边界以与支持向量的距离最大的方式绘制 。如果决策边界距离支持向量太近 , 它将对噪声高度敏感并且不能很好地泛化 。即使自变量的很小变化也可能导致分类错误 。
数据点并非总是如上图所示线性可分离 。在这些情况下 , SVM使用内核技巧来测量较高维空间中数据点的相似性(或接近度) , 以使它们线性可分离 。
内核功能是一种相似性度量 。输入是原始要素 , 输出是新要素空间中的相似性度量 。这里的相似度表示紧密度 。实际上将数据点转换为高维特征空间是一项昂贵的操作 。该算法实际上并未将数据点转换为新的高维特征空间 。内核化SVM无需实际进行变换就可以根据高维特征空间中的相似性度量来计算决策边界 。我认为这就是为什么它也称为内核技巧 。
在维数大于样本数的情况下 , SVM特别有效 。找到决策边界时 , SVM使用训练点的子集而不是所有点 , 从而提高了存储效率 。另一方面 , 大型数据集的训练时间会增加 , 这会对性能产生负面影响 。


推荐阅读