社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

【机器学习】算法太多挑花眼,教你如何选择正确的机器学习算法;机器学习演化史,方法、应用场景与发展趋势

产业智能官 • 6 年前 • 1583 次点击  

选自Hackernoon 作者:Rajat Harlalka 机器之心编译 参与:Geek AI、张倩

机器学习算法虽多,却没有什么普适的解决方案。决策树、随机森林、朴素贝叶斯、深度网络等等等等,是不是有时候觉得挑花了眼呢?福利来啦~本文将教你慧眼识精,快速挑选出满意的算法!

机器学习既是一门科学,也是一种艺术。纵观各类机器学习算法,并没有一种普适的解决方案或方法。事实上,有几个因素会影响你对机器学习算法的选择。

有些问题是非常特别的,需要用一种特定的解决方法。例如,如果你对推荐系统有所了解,你会发现它是一类很常用的机器学习算法,用来解决一类非常特殊的问题。而其它的一些问题则非常开放,可能需要一种试错方法(例如:强化学习)。监督学习、分类、回归等问题都是非常开放的,可以被用于异常检测或建立更加广泛的预测模型。

此外,我们在选择机器学习算法时所做出的一些决定与算法的优化或技术层面关系并不大,而更多地与业务决策相关。下面,让我们一起来看看有哪些因素能帮你缩小机器学习算法的选择范围。

数据科学过程

在你开始研究不同的机器学习算法前,你需要对自己拥有的数据、面对的问题及相关约束有清晰的了解。

理解你的数据

当我们决定使用哪种算法时,我们所拥有的数据的类型和形态起着关键性的作用。有些算法可以利用较小的样本集合工作,而另一些算法则需要海量的样本。特定的算法对特定类型的数据起作用。例如,朴素贝叶斯算法对处理待分类的输入特别有效,但是对于缺失值则一点都不敏感。

因此,你需要做到:

了解你的数据

1. 查看总结统计和数据可视化的结果

  • 百分比可以帮助你识别大多数数据的范围

  • 平均数和中位数可以描述集中趋势

  • 相关系数可以指出强的关联性

2. 数据可视化

  • 箱形图可以识别出异常值

  • 密度图和直方图可以显示出数据的散布情况

  • 散点图可以描述二元关系

数据清洗

1. 处理缺失值。缺失的数据对于某些模型的影响比对其它模型更大。即使是对于那些被用于处理缺失数据的模型来说,它们也可能对缺失数据很敏感(某些变量的缺失数据可能导致预测性能变差)

2. 选择处理异常值的方法

  • 异常值在多维数据中十分常见。

  • 有些模型对异常值的敏感性比其它模型要低。通常而言,树模型对于异常值的存在不太敏感。然而回归模型、或者任何试图使用方程的模型都会受到异常值的严重影响。

  • 异常值可能是糟糕的数据收集造成的,也可能是合理的极值。

3. 数据需要被聚合吗?

数据增强

1. 特征工程是从原始数据中产生能够被用于建模的数据的过程,可以起到以下几种作用:

  • 使模型更容易被解释(如数据分箱(binning))

  • 捕获更复杂的关系(如神经网络)

  • 减少数据冗余并降低数据维度(如主成分分析(PCA))

  • 重新缩放变量(如标准化或归一化)

2. 不同的模型可能有不同的特征工程的要求。有的模型有内置的特征工程。

对问题进行分类

下一步是对问题进行分类。这是一个需要分两步实现的过程。

1. 根据输入分类:

  • 如果你拥有的是带标签的数据,那么这就是一个监督学习问题。

  • 如果你拥有的是未标注过的数据,并且希望从中找到有用的结构,那么这就是一个无监督学习问题。

  • 如果你想要通过与环境的交互来优化一个目标函数,那么这就是一个强化学习问题。

2. 根据输出分类:

  • 如果模型的输出是一个(连续的)数字,那么这就是一个回归问题。

  • 如果模型的输出是一个类别,那么这就是一个分类问题。

  • 如果模型的输出是一组用输入数据划分出的簇,那么这就是一个聚类问题。

  • 你想发现一个异常点吗?此时你面对的就是一个异常检测问题。

理解你要满足的约束条件

  • 你需要考虑你能够存储数据的容量有多大?这取决于系统的存储容量,你可能无法存储若干 GB 大小的分类、回归模型或者若干 GB 的用于聚类分析的数据。例如,在嵌入式系统中,你就会面临这种情况。

  • 对预测过程的速度是否有要求?在实时应用中,很显然,尽快得出预测结果是十分重要的。例如,在自动驾驶问题中,应用必须尽可能快地对道路标志进行分类,以免发生交通事故。

  • 对学习过程的速度是否有要求?在某些情况下,快速训练模型是十分必要的:有时,你需要使用不同的数据集快速地实时更新你的模型。

寻找可用的算法

当对自己的任务环境有了一个清晰的认识后,你就可以使用你所掌握的工具确定适用于待解决的问题并切实可行的算法。一些影响你选择模型的因素如下:

  • 模型是否满足业务目标

  • 模型需要多少数据预处理工作

  • 模型有多准确

  • 模型的可解释性如何

  • 模型运行的速度有多快:构造模型需要多久?模型做出预测需要多长时间?

  • 模型的可伸缩性如何

模型的复杂度是一个影响算法选择的重要标准。一般来说,一个更复杂的模型具备下列特征:

  • 它依赖于更多的特征进行学习和预测(例如,使用十个而不是两个特征来预测目标)

  • 它依赖于更复杂的特征工程(例如,使用多项式特征、交互特征或主成分)

  • 它有更大的计算开销(例如,需要一个由 100 棵决策树组成的随机森林,而不是一棵单独的决策树)

除此之外,同样的机器学习算法可以基于参数的个数和某些超参数的选择而变得更加复杂。例如:

  • 回归模型可以拥有更多的特征,或者多项式项和交互项。

  • 决策树可以拥有更大或更小的深度。

将相同的算法变得更加复杂增加了发生过拟合的几率。

常用的机器学习算法

线性回归

这可能是机器学习中最简单的算法。例如,当你想要计算一些连续值,而不是将输出分类时,可以使用回归算法。因此,当你需要预测一个正在运行的过程未来的值时,你可以使用回归算法。然而,当特征冗余,即如果存在多重共线性(multicollinearity)时,线性回归就不太稳定。

在下列情况下可以考虑使用线性回归:

  • 从一个地方移动到另一个地方所需的时间

  • 预测下个月某种产品的销售情况

  • 血液中的酒精含量对协调能力的影响

  • 预测每个月礼品卡的销售情况,并改善年收入的估算

Logistic 回归

Logistic 回归执行二进制分类,因此输出二值标签。它将特征的线性组合作为输入,并且对其应用非线性函数(sigmoid),因此它是一个非常小的神经网络的实例。

logistic 回归提供了许多方法对你的模型进行正则化处理,因此正如在朴素贝叶斯算法中那样,你不必担心你的特征是否相关。该模型还有一个很好的概率化的解释。不像在决策树或者支持向量机中那样,你可以很容易地更新你的模型以获取新的数据。如果你想要使用一个概率化的框架,或者你希望在未来能够快速地将更多的训练数据融合到你的模型中,你可以使用 logistic 回归算法。logistic 回归还可以帮助你理解预测结果背后起作用的因素,它不完全是一个黑盒方法。

在下列情况下可以考虑使用 logistic 回归算法:

  • 预测客户流失

  • 信用评分和欺诈检测

  • 评价市场营销活动的效果

决策树

决策树很少被单独使用,但是不同的决策树可以组合成非常高效的算法,例如随机森林或梯度提升树算法。

决策树很容易处理特征交互,并且决策树是一种非参数模型,所以你不必担心异常值或者数据是否是线性可分的。决策树算法的一个缺点是,它们不支持在线学习,因此当你要使用新的样本时,你不得不重新构建决策树。决策树的另一个缺点是,它很容易发生过拟合,而这就是像随机森林(或提升树)这样的集成学习方法能够派上用场的地方。决策树也需要大量的内存空间(拥有的特征越多,你的决策树可能会越深、越大)

决策树能够很好地帮助你在诸多行动路径中做出选择:

  • 做出投资决策

  • 预测客户流失

  • 找出可能拖欠银行贷款的人

  • 在「建造」和「购买」两种选择间进行抉择

  • 销售主管的资质审核

K-均值

有时,你完全没有数据的标签信息,并且你的目的是根据对象的特征来为其打上标签。这种问题被称为聚类任务。聚类算法可以在这种情况下被使用:例如,当你有一大群用户,你希望根据他们共有的一些属性将其划分到一些特定的组中。

如果在你的问题声明中有这样的问题:例如,找出一群个体的组织形式,或将某些东西分组,或找出特定的组。这时,你就应该使用聚类算法。

该方法最大的缺点是,K-均值算法需要提前知道你的数据会有多少簇,因此这可能需要进行大量的试验去「猜测」我们最终定义的簇的最佳个数——K。

主成分分析(PCA)

主成分分析能够对数据进行降维。有时,你拥有各种各样的特征,这些特征之间的相关性可能很高,而模型如果使用如此大量的数据可能会产生过拟合现象。这时,你可以使用主成分分析(PCA)技术。

主成分分析(PCA)能够起作用的关键因素是:除了低维的样本表征,它还提供了各种变量的一种同步的低维表征。同步的样本和变量的表征提供了一种能够可视化地找到能够表示一组样本的特征的变量的方法。

支持向量机

支持向量机(SVM)是一种在模式识别和分类问题中被广泛应用的监督机器学习技术——当你的数据恰好有两类时。

支持向量机准确率高,对于防止过拟合很好的理论保障。当你使用一个合适的核函数时,即使你的数据在基(低维)特征空间中是线性不可分的,他们也可以很好地工作。支持向量机在文本分类问题中非常流行,在该问题中,输入是一个维度非常高的空间是很正常的。然而,SVM 是一种内存密集型算法,它很难被解释,并且对其进行调优十分困难。

在下列现实世界的应用中,你可以使用支持向量机:

  • 发现患有糖尿病等常见疾病的人

  • 手写字符识别

  • 文本分类——将文章按照话题分类

  • 股票市场价格预测

朴素贝叶斯

这是一种基于贝叶斯定理的分类技术,它很容易构建,非常适用于大规模数据集。除了结构简单,据说朴素贝叶斯的表现甚至比一些复杂得多的分类方法更好。当 CPU 和内存资源有限时,朴素贝叶斯算法也是一个很好的选项。

朴素贝叶斯非常简单,你仅仅是在做大量的计数工作。如果朴素贝叶斯的条件独立假设确实成立,朴素贝叶斯分类器的收敛速度会比 logistic 回归这样的判别模型更快,因此需要的训练数据更少。即使朴素贝叶斯的假设不成立,朴素贝叶斯分类器往往也能很好地完成任务。如果你想使用一种快速的、简单的、性能也不错的模型,朴素贝叶斯是一个很好的选择。这种算法最大的缺点就是它不能学习到特征之间的相互作用。

在下列真实世界的应用中,你可以使用朴素贝叶斯:

  • 情感分析和文本分类

  • 类似于 Netflix、Amazon 这样的推荐系统

  • 识别垃圾邮件

  • 人脸识别

随机森林

随机森林是一种决策树的集成方法。它能够同时解决具有大规模数据集的回归问题和分类问题,还有助于从数以千计的输入变量中找出最重要的变量。随机森林具有很强的可伸缩性,它适用于任何维数的数据,并且通常具有相当不错的性能。此外,还有一些遗传算法,它们可以在具有最少的关于数据本身的知识的情况下,很好地扩展到任何维度和任何数据上,其中最简单的实现就是微生物遗传算法。然而,随机森林学习的速度可能会很慢(取决于参数设置),并且这种方法不能迭代地改进生成模型。

在下列现实世界的应用中,你可以使用随机森林:

  • 预测高危患者

  • 预测零件在生产中的故障

  • 预测拖欠贷款的人

神经网络

神经网络中包含着神经元之间连接的权重。这些权重是平衡的,逐次对数据点进行学习。当所有的权重都被训练好后,如果需要对新给定的数据点进行回归,神经网络可以被用于预测分类结果或一个具体数值。利用神经网络,可以对特别复杂的模型进行训练,并且将其作为一种黑盒方法加以利用,而在训练模型之前,我们无需进行不可预测的复杂特征工程。通过与「深度方法」相结合,甚至可以采用更加不可预测的模型去实现新任务。例如,最近人们已经通过深度神经网络大大提升了物体识别任务的结果。深度学习还被应用于特征提取这样的非监督学习任务,也可以在人为干预更少的情况下,从原始图像或语音中提取特征。

另一方面,神经网络很难被解释清楚,其参数设置也复杂地让人难以置信。此外,神经网络算法也都是资源密集型和内存密集型的。

SCIKIT 参考手册

Scikit learning 为大家提供了一个非常深入的、解释地很清楚的流程图,它能够帮助你选择正确的算法。我认为此图十分方便。

结论

一般来说,你可以根据上面介绍的要点来筛选出一些算法,但是要想在一开始就知道哪种方法最好是很难的。你最好多迭代几次选择算法的过程。将你的数据输入给那些你确定的潜在优秀机器学习算法,通过并行或串行的方式运行这些算法,最终评估算法性能,从而选择出最佳的算法。

在最后,我想告诉你:为现实生活中的问题找到正确的解决方案,通常不仅仅是一个应用数学方法的问题。这要求我们对业务需求、规则和制度、相关利益者的关注点有所了解,并且具备大量的专业知识。在解决一个机器学习问题的同时,能够结合并平衡这些问题是至关重要的,那些能做到这一点的人可以创造最大的价值。

原文链接:https://hackernoon.com/choosing-the-right-machine-learning-algorithm-68126944ce1f

本文为机器之心编译



延展阅读:机器学习演化史,方法、应用场景与发展趋势

  新智元编译  

来源: usblogs.pwc.com 作者:文强、张易、刘小芹

普华永道最近推出了一系列机器学习信息图示,很好地将机器学习的发展历史、关键方法以及未来会如何影响社会生活展现了出来。基础概念部分包括机器学习各大学派错综关系的梳理;应用部分则描述了机器学习在社会中作用。作为专业的咨询机构,普华永道绘制的信息图非常专业,是值得珍藏的材料。新智元在此基础上进行了解说。


AI 如何能成为商业的主流?这需要不同研究方法的结合,以及大量人类的智慧。


我们正处在 AI 取得突破性进展的时代:更为复杂的神经网络伴着有效的语音识别训练数据将亚马逊的 Echo 和谷歌的 Home 带进了千家万户。深度学习在图像、语音和其他模式识别中取得的准确度提升使得微软和谷歌的机器翻译被更多人使用。图像识别的增强使 Facebook 的照片搜索和谷歌照片中的 AI 相关功能得以实现。总体来说,这些进展使得机器识别的能力在很大程度上可以被消费者使用了。


在商业上,如何取得相似的进展?这需要高质量的训练数据、数字化数据处理和数据科学家,同时需要大量的人类智慧,比如请语言领域的专家来调整、精修可计算的、逻辑贯通的商业语境,以使得计算机实现在商业领域的逻辑推理。商业领袖们也要花时间来教导机器将其智能融入具体领域内的处理进程。


一些以统计学为导向的机器学习研究流派,比如联结学派、贝叶斯学派和类推学派,会担心符号学派推动的 “human-in-the-loop” 方法无法扩展。但是,我们期待这一融合了几种流派的、人类和机器间相互反馈的环,在接下来的几年中,会在企业内部变得更为常见。



机器学习演化史:各学派发展融合,最终让自动机器成为可能



长久以来,各种派别的人工智能研究者总是在相互竞争。相互合作的时机到来了吗?他们不得不握手言和,因为只有合作将算法整合才能实现真正的通用人工智能(AGI)。下面,我们就来看看机器学习方法走过了什么样的历程,未来又将如何?



  • 符号学派(Symbolists):是使用基于规则的符号系统做推理的人。大部分AI都围绕着这种方法。使用Lisp和Prolog的方法属于这一派,使用SemanticWeb,RDF和OWL的方法也属于这一派。其中一个最雄心勃勃的尝试是Doug Lenat在80年代开发的Cyc,试图用逻辑规则将我们对这个世界的理解编码。这种方法主要的缺陷在于其脆弱性,因为在边缘情况下,一个僵化的知识库似乎总是不适用。但在现实中存在这种模糊性和不确定性是不可避免的。用方法:规则和决策树


  • 贝叶斯学派(Bayesians):是使用概率规则及其依赖关系进行推理的一派。概率图模型(PGM)是这一派通用的方法,主要的计算机制是用于抽样分布的蒙特卡罗方法。这种方法与符号学方法的相似之处在于,可以以某种方式得到对结果的解释。这种方法的另一个优点是存在可以在结果中表示的不确定性的量度。用方法:朴素贝叶斯或马尔科夫


  • 联结学派(Connectionists):这一派的研究者相信智能起源于高度互联的简单机制。这种方法的第一个具体形式是出现于1959年的感知器。自那以后,这种方法消亡又复活了好几次。其最新的形式是深度学习。用方法:神经网络


  • 进化学派(Evolutionists):是应用进化的过程,例如交叉和突变以达到一种初期的智能行为的一派。在深度学习中,GA确实有被用来替代梯度下降法,所以它不是一种孤立的方法。这个学派的人也研究细胞自动机(cellular automata ),例如Conway的“生命游戏”和复杂自适应系统(GAS)。爱用方法:遗传算法

  • 类推学派(The analogizers):更多地关注心理学和数学最优化,通过外推来进行相似性判断。类推学派遵循“最近邻”原理进行研究。各种电子商务网站上的产品推荐(例如亚马逊或 Netflix的电影评级)是类推方法最常见的示例。爱用方法:支持向量机(SVM)



  • 上世纪 80 年代流行符号学派,主导方法是知识工程(Knowledge engineering),由某个领域专家制造能够在特定领域发挥一定决策辅助的机器,也即所谓的“专家机”。


  • 上世纪 90 年代开始,贝叶斯学派发展了起来,概率论成为当时的主流思想,基于的原理是可以扩展的比较和对比,这种方法能够适用的场景比较多。


  • 到上世纪末至今,连接学派掀起热潮,神经科学和概率论的方法得到了广泛应用。神经网络可以更精准地识别图像、语音,做好机器翻译乃至情感分析(sentiment analysis)等任务。同时,由于神经网络需要大量的计算,基础架构也从上世纪 80 年代的服务器便为大规模数据中心或者云。这部分内容相信大家都非常熟悉了。



  • 如今,各学派开始相互借鉴融合,21 世纪的头十年,最显著的就是连接学派和符号学派的结合,由此产生了记忆神经网络以及能够根据知识进行简单推理的智能体。基础架构也向大规模云计算转换。


  • 第二个十年,连接学派、符号学派和贝叶斯学派也将融合到一起,实际上我们现在已经看到了这样的趋势,比如 DeepMind 的贝叶斯 RNN,而主要的局面将是感知任务由神经网络完成,但涉及到推理和行动还是需要人为编写规则。


  • 从 2040 年以后,根据普华永道的预测,主流学派将成为 Algorithmic convergence,也即各种算法融合在一起,届时机器自主学习,也即元学习(Meta-learning)实现,计算服务将无处不在。




机器学习:工作原理及适用场景



机器学习通过使人类能够“教”机器如何学习,使人类和机器的联系更为紧密。机器通过处理合适的训练集来学习,这些训练集包含优化一个算法所需的各种特征。这个算法使机器能够执行特定的任务,例如对电子邮件进行分类。


但是,其好处远远不止过滤电子邮件,那些十年前就能做到了。如今,在机器学习的助力下,无人机可以实时近距离地拍摄例如桥梁之类的地方,然后快速、准确地评估重建项目的范围。


下面,普华永道的信息图示概述了机器学习的工作原理,机器学习与人工智能的关系,以及企业应该在哪些地方利用它们。


机器学习能够通过“学习”大量的数据,在不需要人为编程的情况下,生成以及识别特定的对象,比如人脸。目前,机器学习也是商业应用中最常用的算法。


那么,机器学习跟人工智能之间具体是怎样的关系呢?


机器学习是一类关注从数据中找到模式,并根据这些模式进行预测的研究和算法。机器学习属于人工智能,它与数据挖掘、统计学、模式识别等相关领域的关系如上图所示。接下来看看机器学习如何工作。




根据普华永道信息图的总结,机器学习的主要流程/步骤:


  1. 选择数据:这一过程又分为三部分,分别是训练用数据、验证用数据、测试用数据

  2. 数据建模:使用训练数据构建涉及相关特征的模型

  3. 验证模型:用验证数据验证建立的模型

  4. 调试模型:为了提升模型的性能,使用更多的数据、不同的特征,调整参数,这也是最耗时耗力的一步

  5. 使用模型:部署模型训练好的模型,对新的数据进行预测

  6. 测试模型:使用测试用数据验证模型,并评估模型的性能


接下来,我们看看机器学习在传统编程、统计学这些常见方法中处于什么样的地位。



与传统编程和统计学方法不同,在机器学习当中,数据科学家使用训练数据“教育”计算机,然后让计算机执行任务。由此,产生了智能应用(Intelligent App)。图中所举的例子是智能农业,通过无人机采集的数据进行精准的施肥、灌溉等操作。


在实际应用中机器学习有很多适用场景。下图给出了3个例子:



1. 快速三维成图和建模    对一个铁路桥梁重建项目,PwC 数据科学家和领域专家将机器学习应用于无人机收集到的数据。这样的组合使得对正在进行的工作进行精确的监控和快速的反馈成为可能。


2. 加强分析以减轻风险    为了检测内幕交易,PwC 结合机器学习与其他分析技术,发掘更全面的用户资料,更深入地了解复杂的可疑行为。


3. 预测最佳表现者    PwC 使用机器学习和其他分析技术来评估墨尔本杯参赛的各匹马的潜力。



实际应用机器学习:什么才是特定任务的正确算法?



人工智能和机器学习是企业界的热门话题,公司的领导者对如何利用它们改善及自动化业务流程抱有很高的期望。实际上,根据普华永道《2017全球数字化IQ调查》,全球约有54% 的机构正在大力投资AI,这个数字在三年内将提升到63%


那么,AI 如何解决商业上的问题,例如帮助你弄清楚为什么流失了客户,或评估信贷申请人的风险?这取决于许多因素,尤其是算法使用的数据以及要训练的类型。什么是特定任务的正确算法?报告调查了最常用的算法以及它们解决的商业问题。


下面列举了最常用的算法及其使用案例。




机器学习中常用的算法有很多,具体需要用哪种,很大程度上取决于你手头的数据及其特征,你的训练目标,尤其是具体的使用场景。除非特殊情况,不必使用最复杂的算法。下面是常见的机器学习算法。


1. 决策树(Decision Trees)


决策树是一个决策支持工具,它使用树形图或决策模型以及序列可能性。包括各种偶然事件的后果、资源成本、功效。从商务决策的角度来看,大部分情况下,决策树是一个人为了评估做出正确决定的概率需要问的是/否问题的最小数值。它能让你以一个结构化和系统化的方式来处理这个问题,然后得出一个合乎逻辑的结论。


2. 支持向量机



支持向量机(SVM)是二元分类算法。给定一组两种类型的N维的地方点,SVM产生一个(N - 1)维超平面到这些点分成2组。假设你有两种类型的点,且它们是线性可分的。 SVM将找到一条直线将这些点分成2种类型,并且这条直线会尽可能地远离所有的点。在规模上,目前使用SVM(在适当修改的情况下)解决的最大的问题包括显示广告、人类剪接位点识别、基于图像的性别检测和大规模的图像分类等等。


3. 逻辑回归



回归是非常常用的方法。其中,逻辑回归是一种强大的统计方法,它能建模出一个二项结果与一个(或多个)解释变量。它通过估算使用逻辑运算的概率,测量分类依赖变量和一个(或多个)独立的变量之间的关系,是累积的逻辑分布情况。


总的来说,逻辑回归可以用于以下场景:


  • 车流分析

  • 信用评分

  • 衡量营销活动的成功率

  • 预测某个产品的收入

  • 某一天是否会发生地震?


4. 朴素贝叶斯分类



朴素贝叶斯分类是一种十分简单的分类算法,方程 P(A|B)是后验概率,P(B|A)是可能性,P(A)是类先验概率,而P(B)是预测先验概率。朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。它的现实使用例子有:


  • 将一篇新的文章归类到科技、政治或者运动

  • 检查一段文本表达的是积极情绪还是消极情绪

  • 用于脸部识别软件

  • 客户分类


5. 隐马尔科夫模型



可观察的马尔科夫决策过程是确定性的——一个给定的状态总是遵循另一个给定的状态。例如交通信号灯的模式。


相反,隐马尔科夫模型通过分析可观察的数据来计算隐藏状态的概率,然后通过分析隐藏状态来估计未来可能观察到的模式。一个例子是,通过分析高气压(或低气压)的概率来预测天气是晴天,雨天或多云的可能性。


6. 随机森林



随机森林算法结合了多个树,使用随机挑选的数据子集,以此提升决策树的分析准确率。上图中的例子展示的是与乳腺癌复发相关的不同基因及其几率。随机深林算法的优势在于能够处理大规模数据集,以及大量看似不相关的数据,可以用于风险评估和客户信息分析。


7. 递归神经网络



实际上,递归神经网络(RNN)是两种人工神经网络的总称。一种是时间递归神经网络(Recurrent Neural Network),另一种是结构递归神经网络(Recursive Neural Network)。时间递归神经网络的神经元间连接构成有向图,而结构递归神经网络利用相似的神经网络结构递归构造更为复杂的深度网络。RNN一般指代时间递归神经网络,正如上图所示。


时间递归神经网络可以描述动态时间行为,因为和前馈神经网络(feedforward neural network)接受较特定结构的输入不同,RNN 将状态在自身网络中循环传递,因此可以接受更广泛的时间序列结构输入。手写识别是最早成功利用 RNN 的研究结果,其他应用还包括图像分类、图说生成和情感分析。


8. 长短期记忆(LSTM)


 

较旧的 RNN 可能是有损的(lossy),因为它们只能保存少量的旧信息。但新的长短期记忆(LSTM)和门控循环单元(gated recurrent unit, GRU)神经网络同时具有长期记忆和短期记忆。换句话说这些较新的 RNN 具有更好的记忆控制允许先前的值持续保存或必要时为许多序列步骤重置避免在步骤到步骤的传递时造成梯度衰减”(gradient decay)LSTM  GRU 网络通过记忆体组(memory blocks)和被称为”(gates)的结构适当地 pass  reset 值来实现这种记忆控制。


9. 卷积神经网络



卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理、药物发现等有出色表现。


卷积神经网络由一个或多个卷积层和顶端的全连通层(对应经典的神经网络)组成,同时也包括关联权重和池化层。这一结构使得卷积神经网络能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网络在图像和语音识别方面能够给出更优的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网络,卷积神经网络需要估计的参数更少。



工业互联网操作系统




产业智能官  AI-CPS


用“人工智能赛博物理操作系统新一代技术+商业工业互联网操作系统“AI-CPS OS”:云计算+大数据+物联网+区块链+人工智能)在场景中构建状态感知-实时分析-自主决策-精准执行-学习提升的认知计算和机器智能;实现产业转型升级、DT驱动业务、价值创新创造的产业互联生态链


长按上方二维码关注微信公众号:  AI-CPS



本文系“产业智能官”(公众号ID:AI-CPS)收集整理,转载请注明出处!



版权声明产业智能官(公众号ID:AI-CPS推荐的文章,除非确实无法确认,我们都会注明作者和来源。部分文章推送时未能与原作者取得联系。若涉及版权问题,烦请原作者联系我们,与您共同协商解决。联系、投稿邮箱:erp_vip@hotmail.com





今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/3f8usEEHk9
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/20292
 
1583 次点击