0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

最流行的10种人工智能机器学习的算法

新机器视觉 来源:InfoQ 作者:Fahim ul Haq 2021-06-18 11:20 次阅读

人工智能是什么?很多人都知道,但大多又都说不清楚。

事实上,人工智能已经存在于我们生活中很久了。

比如我们常常用到的邮箱,其中垃圾邮件过滤就是依靠人工智能;

比如每个智能手机都配备的指纹识别或人脸识别,也是用人工智能技术实现的;

比如疫情期间大规模使用的无人体温检测仪,同样也使用了人工智能;

但对很多人来讲,人工智能还是一个较为“高深”的技术,然而再高深的技术,也是从基础原理开始的。

人工智能领域中就流传着10大算法,它们的原理浅显,很早就被发现、应用,甚至你在中学时就学过,在生活中也都极为常见。

本文学堂君就为大家用最简单的语言来介绍目前最流行的10种人工智能机器学习算法,让对人工智能感兴趣,或想要入门的同学,能有更为直观的了解。

1

线性回归

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

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

2163b25c-cf69-11eb-9e57-12bb97331649.jpg

例如,简单线性回归,它有一个自变量(x 轴)和一个因变量(y 轴)比如预测明年的房价涨幅、下一季度新产品的销量等等。听起来并不难,不过线性回归算法的难点并不在于得出预测值,而在于如何更精确。为了那个可能十分细微的数字,多少工程师为之耗尽了青春和头发。

2

逻辑回归

逻辑回归(Logistic regression)与线性回归类似,但逻辑回归的结果只能有两个的值。如果说线性回归是在预测一个开放的数值,那逻辑回归更像是做一道是或不是的判断题。逻辑函数中Y值的范围从 0 到 1,是一个概率值。逻辑函数通常呈S 型,曲线把图表分成两块区域,因此适合用于分类任务。

21723d04-cf69-11eb-9e57-12bb97331649.jpg

比如上面的逻辑回归曲线图,显示了通过考试的概率与学习时间的关系,可以用来预测是否可以通过考试。逻辑回归经常被电商或者外卖平台用来预测用户对品类的购买偏好。

3

决策树

如果说线性和逻辑回归都是把任务在一个回合内结束,那么决策树(Decision Trees)就是一个多步走的动作,它同样用于回归和分类任务中,不过场景通常更复杂且具体。举个简单例子,老师面对一个班级的学生,哪些是好学生?如果简单判断考试90分就算好学生好像太粗暴了,不能唯分数论。那面对成绩不到90分的学生,我们可以从作业、出勤、提问等几个方面分开讨论。

21969802-cf69-11eb-9e57-12bb97331649.jpg

以上就是一个决策树的图例,其中每一个有分叉的圈称为节点。在每个节点上,我们根据可用的特征询问有关数据的问题。左右分支代表可能的答案。最终节点(即叶节点)对应于一个预测值。

每个特征的重要性是通过自顶向下方法确定的。节点越高,其属性就越重要。比如在上面例子中的老师就认为出勤率比做作业重要,所以出勤率的节点就更高,当然分数的节点更高。

4

朴素贝叶斯

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

21a64478-cf69-11eb-9e57-12bb97331649.png

朴素贝叶斯分类器是一种流行的统计技术,经典应用是过滤垃圾邮件。

当然,学堂君赌一顿火锅,80%的人没看懂上面这段话。(80%这个数字是学堂君猜的,但经验直觉就是一种贝叶斯式的计算。)用非术语解释贝叶斯定理,就是通过A条件下发生B的概率,去得出B条件下发生A的概率。

比如说,小猫喜欢你,有a%可能性在你面前翻肚皮,请问小猫在你面前翻肚皮,有多少概率喜欢你?当然,这样做题,等于抓瞎,所以我们还需要引入其他数据,比如小猫喜欢你,有b%可能和你贴贴,有c%概率发出呼噜声。所以我们如何知道小猫有多大概率喜欢自己呢,通过贝叶斯定理就可以从翻肚皮,贴贴和呼噜的概率中计算出来。

5

支持向量机

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

21d9476a-cf69-11eb-9e57-12bb97331649.jpg

所以支持向量机想要解决的问题也就是如何把一堆数据做出区隔,它的主要应用场景有字符识别、面部识别、文本分类等各种识别。

6

K- 最近邻算法(KNN)

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

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

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

21ea8e58-cf69-11eb-9e57-12bb97331649.jpg

KNN分类示例

KNN理论简单,容易实现,可用于文本分类、模式识别、聚类分析等。

7

K- 均值

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

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

22009824-cf69-11eb-9e57-12bb97331649.jpg

生活中,K- 均值在欺诈检测中扮演了重要角色,在汽车、医疗保险和保险欺诈检测领域中广泛应用。

8

随机森林

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

22118058-cf69-11eb-9e57-12bb97331649.jpg

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

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

随机森林拥有广泛的应用前景,从市场营销到医疗保健保险,既可以用来做市场营销模拟的建模,统计客户来源、保留及流失,也可以用来预测疾病的风险和病患者的易感性。

9

降维

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

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

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

2243d8a0-cf69-11eb-9e57-12bb97331649.jpg

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

10

人工神经网络(ANN)

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

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

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

225b3432-cf69-11eb-9e57-12bb97331649.jpg

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

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1791

    文章

    46840

    浏览量

    237519
  • 机器学习
    +关注

    关注

    66

    文章

    8375

    浏览量

    132399
  • 线性回归
    +关注

    关注

    0

    文章

    41

    浏览量

    4299

原文标题:人工智能十大流行算法,通俗易懂讲明白

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    NPU与机器学习算法的关系

    人工智能领域,机器学习算法是实现智能系统的核心。随着数据量的激增和算法复杂度的提升,对计算资源
    的头像 发表于 11-15 09:19 290次阅读

    嵌入式和人工智能究竟是什么关系?

    嵌入式和人工智能究竟是什么关系? 嵌入式系统是一特殊的系统,它通常被嵌入到其他设备或机器中,以实现特定功能。嵌入式系统具有非常强的适应性和灵活性,能够根据用户需求进行定制化设计。它广泛应用于各种
    发表于 11-14 16:39

    人工智能机器学习和深度学习存在什么区别

    人工智能指的是在某种程度上显示出类似人类智能的设备。AI有很多技术,但其中一个很大的子集是机器学习——让算法从数据中
    发表于 10-24 17:22 2443次阅读
    <b class='flag-5'>人工智能</b>、<b class='flag-5'>机器</b><b class='flag-5'>学习</b>和深度<b class='flag-5'>学习</b>存在什么区别

    《AI for Science:人工智能驱动科学创新》第6章人AI与能源科学读后感

    、优化等方面的应用有了更清晰的认识。特别是书中提到的基于大数据和机器学习的能源管理系统,通过实时监测和分析能源数据,实现了能源的高效利用和智能化管理。 其次,第6章通过多个案例展示了人工智能
    发表于 10-14 09:27

    《AI for Science:人工智能驱动科学创新》第一章人工智能驱动的科学创新学习心得

    人工智能:科学研究的加速器 第一章清晰地阐述了人工智能作为科学研究工具的强大功能。通过机器学习、深度学习等先进技术,AI能够处理和分析海量
    发表于 10-14 09:12

    risc-v在人工智能图像处理应用前景分析

    RISC-V和Arm内核及其定制的机器学习和浮点运算单元,用于处理复杂的人工智能图像处理任务。 四、未来发展趋势 随着人工智能技术的不断发展和普及,RISC-V在
    发表于 09-28 11:00

    FPGA在人工智能中的应用有哪些?

    FPGA(现场可编程门阵列)在人工智能领域的应用非常广泛,主要体现在以下几个方面: 一、深度学习加速 训练和推理过程加速:FPGA可以用来加速深度学习的训练和推理过程。由于其高并行性和低延迟特性
    发表于 07-29 17:05

    人工智能机器学习和深度学习是什么

    在科技日新月异的今天,人工智能(Artificial Intelligence, AI)、机器学习(Machine Learning, ML)和深度学习(Deep Learning,
    的头像 发表于 07-03 18:22 1103次阅读

    机器学习算法原理详解

    机器学习作为人工智能的一个重要分支,其目标是通过让计算机自动从数据中学习并改进其性能,而无需进行明确的编程。本文将深入解读几种常见的机器学习
    的头像 发表于 07-02 11:25 751次阅读

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V2)

    ://t.elecfans.com/v/27221.html *附件:初学者完整学习流程实现手写数字识别案例_V2-20240506.pdf 人工智能 语音对话机器人案例 26分03秒 https
    发表于 05-10 16:46

    机器学习怎么进入人工智能

    人工智能已成为一个热门领域,涉及到多个行业和领域,例如语音识别、机器翻译、图像识别等。 在编程中进行人工智能的关键是使用机器学习
    的头像 发表于 04-04 08:41 261次阅读

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V1)

    *附件:初学者完整学习流程实现手写数字识别案例.pdf 人工智能 语音对话机器人案例 26分03秒 https://t.elecfans.com/v/27185.html *附件:语音对话
    发表于 04-01 10:40

    人工智能机器学习的顶级开发板有哪些?

    机器学习(ML)和人工智能(AI)不再局限于高端服务器或云平台。得益于集成电路(IC)和软件技术的新发展,在微型控制器和微型计算机上实现机器学习
    的头像 发表于 02-29 18:59 762次阅读
    <b class='flag-5'>人工智能</b>和<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的顶级开发板有哪些?

    嵌入式人工智能的就业方向有哪些?

    联网ARM开发 NB-IoT开发及实战 七:python工程师,人工智能工程师 python语法基础 python核心编程 基于OpenCV的机器视觉开发 嵌入式人工智能渗入生活的方方面面,广泛应用
    发表于 02-26 10:17

    深度学习人工智能中的 8 常见应用

    深度学习简介深度学习人工智能(AI)的一个分支,它教神经网络学习和推理。近年来,它解决复杂问题并在各个领域提供尖端性能的能力引起了极大的兴趣和吸引力。深度
    的头像 发表于 12-01 08:27 3233次阅读
    深度<b class='flag-5'>学习</b>在<b class='flag-5'>人工智能</b>中的 8 <b class='flag-5'>种</b>常见应用