五分钟了解机器学习十大算法

2023-05-29 0 633

责任编辑为教育者成为统计数据生物学家或为此钟爱的听众们如是说最盛行的机器学习演算法。

机器学习是该行业的两个技术创新且重要的应用领域。他们为机器学习流程优先选择的演算法类别,依赖于他们想实现的最终目标。

现在,机器学习有许多演算法。因此,这般多的演算法,可能将对于新手而言,是十分陷入困境的。那时,他们将概要如是说 10 种最盛行的机器学习演算法,这样你就能适应环境那个令人激动的机器学习世界了!

让他们嘿嘿!

1. 线性重回

线性重回(Linear Regression)可能将是最盛行的机器学习演算法。线性重回就是要找两条直角,因此让那条直角尽量将地插值厚边中的统计数据点。它企图透过将直角方程组与该统计数据插值来表示常量(x 值)和值结论(y 值)。接着就能用这两条线来预估未来的值!

这种演算法最常见的技术是最轻二加法(Least of squares)。那个方式排序出最差插值线,以使与直角上每一统计数据点的水平线最轻。总距是所有统计数据点的垂直距离(蓝线)的算式。其价值观是透过最轻化那个万平方值或距来插值数学模型。

五分钟了解机器学习十大算法

比如,单纯线性重回,它有两个常量(x 轴)和两个自表达式(y 轴)

2. 方式论重回

方式论重回(Logistic regression)与线性重回类似于,但它是用作输入为十进制的情况(即,当结论根本无法有两个可能将的值)。对最后输入的预估是两个非线性的 S 型表达式,称作 logistic function, g()。

那个方式论表达式将尾端结论值态射到结论表达式 Y,其值覆盖范围从 0 到 1。接着,这些值能说明为 Y 出现的机率。S 型方式论表达式的物理性质使方式论重回更适宜用作进行分类各项任务。

五分钟了解机器学习十大算法

方式论重回曲线图,显示了透过考试的机率与学习时间的关系。

3. 决策树

决策树(Decision Trees)可用作重回和进行分类各项任务。

在这一演算法中,训练数学模型透过学习树表示(Tree representation)的决策规则来学习预估最终目标表达式的值。树是由具有相应属性的节点组成的。

在每一节点上,他们根据可用的特征询问有关统计数据的问题。左右分支代表可能将的答案。最后节点(即叶节点)对应于两个预估值。

每一特征的重要性是透过自顶向下方式确定的。节点越高,其属性就越重要。

五分钟了解机器学习十大算法

决定是否在餐厅等候的决策树示例。

4. 朴素贝叶斯

朴素贝叶斯(Naive Bayes)是基于贝叶斯定理。它测量每一类的机率,每一类的条件机率给出 x 的值。那个演算法用作进行分类问题,得到两个十进制“是 / 非”的结论。看看下面的方程组式。

P(c|x)=P(x|c)∗P©P(x)P(c|x)=P(x|c)∗P©P(x)

P(c|x)=P(c|x)= 给定预估表达式 X,c 类事件的机率。P(x|c)=P(x|c)= 给定 c 时,x 的机率。P©=P©= 类的机率。P(x)=P(x)= 预估的机率。

朴素贝叶斯进行分类器是一种盛行的统计技术,可用作过滤垃圾邮件!

5. 支持向量机(SVM)

支持向量机(Support Vector Machine,SVM)是一种用作进行分类问题的监督演算法。支持向量机企图在统计数据点之间绘制两两条线,它们之间的边距最大。为此,他们将统计数据项绘制为 n 维空间中的点,其中,n 是输入特征的数量。在此基础上,支持向量机找到两个最优边界,称作超平面(Hyperplane),它透过类标签将可能将的输入进行最差分离。

超平面与最近的类点之间的距称作边距。最优超平面具有最大的边界,能对点进行进行分类,从而使最近的统计数据点与这两个类之间的距最大化。

五分钟了解机器学习十大算法

比如,H1 没有将这两个类分开。但 H2 有,不过只有很小的边距。而 H3 以最大的边距将它们分开了。

6. K- 最近邻演算法(KNN)

K- 最近邻演算法(K-Nearest Neighbors,KNN)非常单纯。KNN 透过在整个训练集中搜索 K 个最相似的实例,即 K 个邻居,并为所有这些 K 个实例分配两个公共输入表达式,来对对象进行进行分类。

K 的优先选择很关键:较小的值可能将会得到大量的噪声和不准确的结论,而较大的值是不可行的。它最常见作进行分类,但也适用作重回问题。

用作评估实例之间相似性的距能是欧几里得距(Euclidean distance)、曼哈顿距(Manhattan distance)或明氏距(Minkowski distance)。欧几里得距是两点之间的普通直角距。它实际上是点坐标之差算式的万平方根。

五分钟了解机器学习十大算法

KNN 进行分类示例

7. K- 均值

K- 均值(K-means)是透过对统计数据集进行进行分类来聚类的。比如,那个演算法可用作根据购买历史将用户分组。它在统计数据集中找到 K 个聚类。K- 均值用作无监督学习,因此,他们只需使用训练统计数据 X,以及他们想识别的聚类数量 K。

该演算法根据每一统计数据点的特征,将每一统计数据点迭代地分配给 K 个组中的两个组。它为每一 K- 聚类(称作质心)优先选择 K 个点。基于相似度,将新的统计数据点添加到具有最近质心的聚类中。那个过程一直持续到质心停止变化为止。

五分钟了解机器学习十大算法

8. 随机森林

随机森林(Random Forest)是一种非常盛行的集成机器学习演算法。那个演算法的基本价值观是,许多人的意见要比个人的意见更准确。在随机森林中,他们使用决策树集成(参见决策树)。

为了对新对象进行进行分类,他们从每一决策树中进行投票,并结合结论,接着根据多数投票做出最后决定。

五分钟了解机器学习十大算法

(a)在训练过程中,每一决策树都是基于训练集的引导样本来构建的。(b)在进行分类过程中,输入实例的决定是根据多数投票做出的。

9. 降维

由于他们那时能够捕获的统计数据量之大,机器学习问题变得更加复杂。这就意味着训练极其缓慢,而且很难找到两个好的解决方案。这一问题,通常被称作“维数灾难”(Curse of dimensionality)。

降维(Dimensionality reduction)企图在不丢失最重要信息的情况下,透过将特定的特征组合成更高层次的特征来解决那个问题。主成分分析(Principal Component Analysis,PCA)是最盛行的降维技术。

主成分分析透过将统计数据集压缩到低维线或超平面 / 子空间来降低统计数据集的维数。这尽量将地保留了原始统计数据的显著特征。

五分钟了解机器学习十大算法

能透过将所有统计数据点近似到两条直角来实现降维的示例。

10. 人工神经网络(ANN)

人工神经网络(Artificial Neural Networks,ANN)能处理大型复杂的机器学习各项任务。神经网络本质上是一组带有权值的边和节点组成的相互连接的层,称作神经元。在输入层和输入层之间,他们能插入多个隐藏层。人工神经网络使用了两个隐藏层。除此之外,还需要处理深度学习。

人工神经网络的工作原理与大脑的结构类似于。一组神经元被赋予一个随机权重,以确定神经元如何处理输入统计数据。透过对输入统计数据训练神经网络来学习输入和输入之间的关系。在训练阶段,系统能访问正确的答案。

如果网络不能准确识别输入,系统就会调整权重。经过充分的训练后,它将始终如一地识别出正确的模式。

五分钟了解机器学习十大算法

每一圆形节点表示两个人工神经元,箭头表示从两个人工神经元的输入到另两个人工神经元的输入的连接。

接下来是什么?

现在,你已经介绍了最盛行的机器学习演算法的基础如是说。你已经准备好学习更为复杂的概念,甚至能透过深入的动手实践来实现它们。如果你想介绍如何实现这些演算法,能参考 Educative 出品的Grokking Data Science课程,该课程将这些令人激动的理论应用作清晰、真实的应用流程。

祝你学习愉快!

延伸阅读 / 学习资料:

Become a Machine Learning Engineer (成为机器学习工程师)Machine learning 101 & data science: Tips from an industry expert (机器学习 101 与统计数据科学:来自行业转接的建议)How to ace your next ML interview (如何在下一次机器学习面试取得好成绩)How to deploy machine learning models with Azure Machine Learning (如何利用 Azure Machine Learning 部署机器学习数学模型)How and why to become a machine learning engineer (成为机器学习工程师的方式及理由)The practical approach to machine learning for software engineers (面向软件工程师的机器学习实用方式)The disconnect b/w industry deep learning and university courses (行业深度学习与大学课程脱节)My experience working with ML at Google and Microsoft (我在 Google 和 Microsoft 使用机器学习的经验)

作者如是说:

Fahim ul Haq,曾在 Facebook、Microsoft 工作。Educative.io 联合创始人。Educative 旨在帮助学生使用交互式课程来学习编程知识。

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务