来源:机器之心

现在,机器学习有很多算法。如此多的算法,可能对于初学者来说,是相当不堪重负的。今天,我们将简要介绍 10 种最流行的机器学习算法,这样你就可以适应这个激动人心的机器学习世界了!

01 线性回归

线性回归(Linear Regression)可能是最流行的机器学习算法。线性回归就是要找一条直线,并且让这条直线尽可能地拟合散点图中的数据点。它试图通过将直线方程与该数据拟合来表示自变量(x 值)和数值结果(y 值)。然后就可以用这条线来预测未来的值!

这种算法最常用的技术是最小二乘法(Least of squares)。这个方法计算出最佳拟合线,以使得与直线上每个数据点的垂直距离最小。总距离是所有数据点的垂直距离(绿线)的平方和。其思想是通过最小化这个平方误差或距离来拟合模型。

例如,简单线性回归,它有一个自变量(x 轴)和一个因变量(y 轴)。

02 逻辑回归

逻辑回归(Logistic regression)与线性回归类似,但它是用于输出为二进制的情况(即,当结果只能有两个可能的值)。对最终输出的预测是一个非线性的 S 型函数,称为 logistic function, g()。

这个逻辑函数将中间结果值映射到结果变量 Y,其值范围从 0 到 1。然后,这些值可以解释为 Y 出现的概率。S 型逻辑函数的性质使得逻辑回归更适合用于分类任务。

逻辑回归曲线图,显示了通过考试的概率与学习时间的关系。

03 决策树

决策树(Decision Trees)可用于回归和分类任务。

在这一算法中,训练模型通过学习树表示(Tree representation)的决策规则来学习预测目标变量的值。树是由具有相应属性的节点组成的。

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

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

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

04 朴素贝叶斯

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

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

05 支持向量机(SVM)

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

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

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

06 K- 最近邻算法(KNN)

K- 最近邻算法(K-Nearest Neighbors,KNN)非常简单。KNN 通过在整个训练集中搜索 K 个最相似的实例,即 K 个邻居,并为所有这些 K 个实例分配一个公共输出变量,来对对象进行分类。

K 的选择很关键:较小的值可能会得到大量的噪声和不准确的结果,而较大的值是不可行的。它最常用于分类,但也适用于回归问题。

用于评估实例之间相似性的距离可以是欧几里得距离(Euclidean distance)、曼哈顿距离(Manhattan distance)或明氏距离(Minkowski distance)。欧几里得距离是两点之间的普通直线距离。它实际上是点坐标之差平方和的平方根。

▲KNN 分类示例

07 K- 均值

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

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

08 随机森林

随机森林(Random Forest)是一种非常流行的集成机器学习算法。这个算法的基本思想是,许多人的意见要比个人的意见更准确。在随机森林中,我们使用决策树集成(参见决策树)。

为了对新对象进行分类,我们从每个决策树中进行投票,并结合结果,然后根据多数投票做出最终决定。

  1. 在训练过程中,每个决策树都是基于训练集的引导样本来构建的。

  2. 在分类过程中,输入实例的决定是根据多数投票做出的。

09 降维

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

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

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

可以通过将所有数据点近似到一条直线来实现降维的示例。

10 人工神经网络(ANN)

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

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

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

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

接下来是什么?现在,你已经了解了最流行的机器学习算法的基础介绍。你已经准备好学习更为复杂的概念,甚至可以通过深入的动手实践来实现它们。如果你想了解如何实现这些算法,可以参考 Educative 出品的 Grokking Data Science 课程,该课程将这些激动人心的理论应用于清晰、真实的应用程序。

祝你学习愉快!

作者介绍:

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

原文链接:

https://towardsdatascience.com/the-top-10-ml-algorithms-for-data-science-in-5-minutes-4ffbed9c8672

NO.1

往期推荐

Historical articles

20个Pandas数据实战案例,干货多多

10张图带你看清俄乌冲突的始末

年轻人为什么会猝死?这篇Python数据分析报告不可错过!

厉害了,用Python绘制动态可视化图表,并保存成gif格式

分享、收藏、点赞、在看安排一下?

机器学习的十大经典算法,面试必问相关推荐

  1. 机器学习数据挖掘十大经典算法 数学建模常用算法

    国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006 (香港召开)年12月评选出了数据挖掘领域的十大经典算法.不仅 ...

  2. 上手机器学习,从搞懂这十大经典算法开始

    上手机器学习,从搞懂这十大经典算法开始 翻译 | AI科技大本营(rgznai100) 参与 | 林椿眄 编辑 | 波波,Donna 在机器学习领域,"没有免费的午餐"是一个不变的 ...

  3. 机器学习十大经典算法之岭回归和LASSO回归

    机器学习十大经典算法之岭回归和LASSO回归(学习笔记整理:https://blog.csdn.net/weixin_43374551/article/details/83688913

  4. pagerank数据集_机器学习十大经典算法-PageRank(附实践代码)

    Yo, yo, check it out. 保证看完不晕倒... 如果公式让你脑瓜疼,请忽略公式,或者忽略脑瓜. Kagging咖金:推荐系统之关联规则(附实践代码)​zhuanlan.zhihu.c ...

  5. 机器学习十大经典算法:深入浅出聊贝叶斯决策(贝叶斯公式,最小风险贝叶斯,最小错误贝叶斯)

    前言    常听人说,在学习一个东西时,如果能够深入浅出的讲给别人听,才算是真的懂了.最近正好在学模式识别,于是就用它来练笔了.贝叶斯决策(Bayes Decision) 是十大经典机器学习算法之一, ...

  6. [转]数据挖掘十大经典算法

    国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖掘领域的十大经典算法:C4.5, k-M ...

  7. 数据挖掘领域十大经典算法初探

    博主说明: 1.原文献非最新文章,只是本人向来对算法比较敏感.感兴趣,便把原文细看了下, 翻译过程中,有参考一些网友翻译的文章,但个人认为,阐述皆不够精准,且都是泛泛而谈, 故此,做了此份翻译,希望, ...

  8. 数据挖掘十大经典算法之——EM 算法

    数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...

  9. 数据挖掘十大经典算法之——AdaBoost 算法

    数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...

  10. 数据挖掘十大经典算法之——C4.5 算法

    数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...

最新文章

  1. 丘维声高等代数pdf_2020年兰州大学高等代数真题出处简直惊讶
  2. DeepMind论文:深度压缩感知,新框架提升GAN性能
  3. silverlight 跨域文件位置
  4. 《Introduction to Tornado》中文翻译计划——第五章:异步Web服务
  5. 单片机中断机制对日常生活的启示_单片机原理与接口技术(高起专)阶段性作业1...
  6. xenserver 脚本学习之/opt/xensource/bin/xapi-wait-init-complete
  7. 机器学习笔记033 | 主成分分析法(PCA)
  8. 这就是数据分析之numpy
  9. matlab gui怎样将结果保存_Processing将串行数据保存用作matlab数据分析
  10. golang 学习心得一(开发环境搭建过程中一些坑)
  11. 正则表达式 数字和小数点_《自然语言处理综论》第三版笔记(二)之正则表达式,文本标准化和编辑距离...
  12. python背景怎么自定义铃声_Python 上课铃声的定时播放(具有较强的自我管理意识.jpg)...
  13. 框架基础---动态代理
  14. android apk更新下载以及安装
  15. 用友U8数据备份实例工作经验
  16. Word处理控件Aspose.Words功能演示:使用 Python 合并 Word 文档
  17. 陈冠希传 转载,奇文共欣赏
  18. 发微博怎么才能把自己的地理位置改成其他国家
  19. mysql第120页第6题_2018年整理六年级总复习数学应用题大全(答案附后)
  20. 计算机专业和电子通信哪个好,读电子通信和计算机哪个好?

热门文章

  1. b站视频解析php,b站视频解析【调解流程】
  2. eval('{kkk:{}}')出错,eval('{}')与eval('var ss = {kkk:{}}')正常
  3. JAVA课设——俄罗斯方块
  4. javascript电子书下载
  5. java设计模式,百度网盘
  6. webview的使用套餐
  7. HTML列表、表格、表单、超链接、音视频标签、内嵌
  8. mysql子查询去重,将MySQL去重操作优化到极致之三弹连发(一):巧用索引与变量...
  9. 计算机数据及报告备份记录表,数据处理-泉州市第六次全国人口普查-专题专栏-泉州统计信息网...
  10. ext2、ext3、ext4文件系统区别