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

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

3天内不再提示

机器学习技术的理论背景及可用神经网络类型

星星科技指导员 ? 来源:嵌入式计算设计 ? 作者:Sorin Mihai ? 2022-06-17 09:57 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在这三部分系列的第一部分中,作者调查了机器学习技术在高度自动化驾驶场景中的驱动因素和潜在应用。第二部分定义了机器学习技术的理论背景,以及汽车开发人员可用的神经网络类型。第三部分在功能安全要求的背景下评估这些选项。

机器学习可以定义为一组有助于基于过去学习进行预测的算法

在机器学习算法中,输入数据被组织为数据点。每个数据点都由描述所表示数据的特征组成。例如,大小和速度是可以区分汽车和街上自行车的特征。汽车的尺寸和速度通常都高于自行车。机器学习方法的目标是将输入数据转换为有意义的输出,例如将输入数据分类为汽车和非汽车数据点或对象。输入通常写成 vector x,由几个数据点组成。输出写为y。

二维或三维输入数据可以在所谓的特征空间中进行说明和查看,其中每个数据点x都相对于其特征进行绘制。图 8 (a) 显示了描述汽车和非汽车对象的二维特征空间的简化示例。

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzViNjIwMWVkZDRkNjUucG5nJnZlcnNpb249MDAwMCZzaWc9OTAwZDkwOGRmY2QyYTEyNjFkMjE2MTU4OTExMGM1MmY253D

图 8. 根据大小和速度对汽车和非汽车对象进行分类:特征空间 (a) 和两个类别之间的相应分离 (b)。

所谓的学习映射函数 或model,h_θ (x)给出了特征向量之间的差异(例如,分类为汽车和非汽车数据点)。模型的结构范围从简单的线性函数,例如图 8 (a) 中划分汽车和非汽车对象的线,到复杂的非线性神经网络。学习方法的目标是确定系数的值,这些θ-系数从可用的输入数据中表示模型的参数。映射函数的输出是算法对输入数据描述的预测。

机器学习方法可以根据映射函数的学习方式进行分类(图 9)。有三种可能:

监督学习—— 映射函数是根据训练数据对计算的,其中y预先知道的输出在训练阶段分别提供给学习算法。一旦计算了模型的参数,就可以将模型部署到目标应用程序中。它的输出——当它接收到一个未知的数据点时——将是 的预测值y。

无监督学习—— 在这种情况下,与监督学习相比,在训练阶段没有可用的特征标签对。学习算法的输入仅包含未标记的数据点。这种机器学习方法的目标是x直接从特征空间中的分布推断输入特征的标签。

强化(半监督)学习—— 在这种情况下,训练数据也没有标签,但模型的构建是为了通过一组动作促进与环境的交互。映射函数将环境状态映射到由输入数据给出的动作。奖励信号表示在特定环境状态下执行的操作。当信号表示积极影响时,学习算法会加强行动。如果识别出负面影响,该算法将阻止环境的特定动作或状态。

poYBAGKr36KAD-ZLAADyCKhd3Pc657.png

图 9.基于训练方法的机器学习算法分类。

深度学习革命

近年来,所谓的深度学习范式彻底改变了机器学习领域。深度学习通过解决以前传统模式识别方法无法解决的挑战,对机器学习社区产生了巨大影响(LeCun 等人,2015 年)。深度学习的引入极大地提高了为视觉识别、对象检测、语音识别、异常检测或基因组学设计的系统的精度。深度学习的关键方面是用于解释数据的特征是从训练数据中自动学习的,而不是由工程师手动制作的。

poYBAGKr36mAeVvWAAECv765prk721.png

图 10.训练识别图像中汽车的深度卷积神经网络。

到目前为止,构建一个好的模式识别算法的主要挑战是手工设计的用于分类的特征向量,例如在第 1 部分中描述的早期版本的交通标志识别系统中使用的局部二进制模式。 深度学习的出现已经用可以自动发现原始输入数据中重要特征的学习算法取代了特征向量的手动工程。

在架构上,深度学习系统由多层非线性单元组成,可以将原始输入数据转换为更高层次的抽象。每一层都将前一层的输出映射成更复杂的表示,适合回归或分类任务。这种学习通常在使用反向传播算法训练的深度神经网络上进行。该算法迭代地调整网络的参数或权重,以模拟输入的训练数据。因此,网络在训练结束时已经学习了输入数据点的复杂非线性映射函数。

图 10 显示了一个深度神经网络的符号表示,该网络经过训练可以识别图像中的汽车。输入层表示原始输入像素。隐藏层 1 通常模拟图像的某些位置和方向是否存在边缘。第二个隐藏层使用在前一层中计算的边缘对对象部件进行建模。第三个隐藏层构建了建模对象的抽象表示,在我们的例子中,这就是汽车的成像方式。输出层根据第三个隐藏层的高级特征计算给定图像包含汽车的概率。

不同的网络架构源于神经网络的单元和层的分布方式。所谓感知器是最简单的,由单个输出神经元组成。通过建立在感知器上可以获得大量的神经网络风味。这些网络中的每一个都比其他网络更适合特定的应用程序。图 11 显示了近年来创建的众多神经网络架构中最常见的三种。

深度前馈神经网络(图 11a)是一种结构,其中两个相邻层之间的神经元完全互连,信息流仅在一个方向上,从系统的输入到输出。这些网络可用作通用分类器,并用作所有其他类型的深度神经系统的基础。

poYBAGKr36-AXZFiAAJTL_eygLo615.png

图 11.深度神经网络架构

深度卷积神经网络(图 11b)改变了视觉感知方法的开发方式。这种网络由交替的卷积层和池化层组成,它们通过从输入数据中进行泛化来自动学习对象特征。这些学习到的特征被传递到一个完全互连的前馈网络进行分类。这种类型的卷积网络是图 10 所示的汽车检测架构和第1 部分中描述的用例的基础。

虽然深度卷积网络对视觉识别至关重要,但深度递归神经网络(图 11c)对于自然语言处理至关重要。由于隐藏层中神经元之间的自递归连接,此类架构中的信息是时间相关的。网络的输出可能会根据数据输入网络的顺序而有所不同。例如,如果在单词“mouse”之前输入单词“cat”,则会获得某个输出。现在,如果输入顺序改变,输出顺序也可能改变。

机器学习算法的类型

尽管深度神经网络是复杂机器学习挑战中最常用的解决方案之一,但还有各种其他类型的机器学习算法可用。表 1 根据它们的性质(连续或离散)和训练类型(监督或无监督)对它们进行分类。

poYBAGKr37eAD1A2AAFiJ1yLZ0Q304.png

表 1. 机器学习算法的类型

机器学习估计器可以根据其输出值或训练方法进行粗略分类。如果后者估计连续值函数(即连续输出),则该算法被归类为回归估计器。机器学习算法在其输出为离散变量时称为分类器。第1 部分中描述的交通标志检测和识别系统是此类算法的一种实现。y

? Ry ? {0,1,…,q}

异常检测是无监督学习的一种特殊应用。这里的目标是识别数据集中的异常值或异常。异常值被定义为与应用程序中常见的特征向量相比具有不同属性的特征向量。换句话说,它们在特征空间中占据不同的位置。

表 1 还列出了一些流行的机器学习算法。这些将在下面简要说明。

线性回归是一种用于将线、平面或超平面拟合到数据集的回归方法。拟合模型是一个线性函数,可用于对实值函数进行预测y。

逻辑回归是线性回归方法的离散对应物,其中将映射函数给出的预测实数值转换为概率输出,表示输入数据点属于某个类别。

朴素贝叶斯分类器是一套建立在贝叶斯定理基础上的机器学习方法,它假设每个特征都独立于其他特征。

支持 向量机 (SVM)旨在使用所谓的边距计算类之间的分离。边距被计算为尽可能宽,以便尽可能清楚地分开类。

集成方法,如决策树、随机森林或AdaBoost组合了 一组基分类器,有时称为“弱”学习器,目的是获得“强”分类器。

神经网络是机器学习算法,其中回归或分类问题由一组称为神经元的互连单元解决。本质上,神经网络试图模仿人脑的功能。

k-means 聚类是一种用于将具有共同属性的特征组合在一起的方法,即它们在特征空间中彼此接近。k-means 根据给定的集群数量迭代地将共同特征分组到球形集群中。

Mean-shift也是一种数据聚类技术,它对于异常值更通用和稳健。与 k-means 不同,mean-shift 只需要一个调整参数(搜索窗口大小),并且不假定数据簇的先验形状为球形。

主成分分析 (PCA)是一种数据降维技术,它将一组可能相关的特征转换为一组称为主成分的线性不相关变量。主成分按方差顺序排列。第一个组件具有最高的变化;第二个在此之下有下一个变化,依此类推。

第三部分在功能安全要求的背景下评估这些机器学习算法。

审核编辑:郭婷

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

    关注

    42

    文章

    4814

    浏览量

    104095
  • 机器学习
    +关注

    关注

    66

    文章

    8510

    浏览量

    134897
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    详解深度学习神经网络与卷积神经网络的应用

    在如今的网络时代,错综复杂的大数据和网络环境,让传统信息处理理论、人工智能与人工神经网络都面临巨大的挑战。近些年,深度学习逐渐走进人们的视线
    的头像 发表于 01-11 10:51 ?2872次阅读
    详解深度<b class='flag-5'>学习</b>、<b class='flag-5'>神经网络</b>与卷积<b class='flag-5'>神经网络</b>的应用

    神经网络教程(李亚非)

    源程序  5.3 Gaussian机  第6章自组织神经网络  6.1 竞争型学习  6.2 自适应共振理论(ART)模型  6.3 自组织特征映射(SOM)模型  6.4 CPN模型  第7章 联想
    发表于 03-20 11:32

    labview BP神经网络的实现

    请问:我在用labview做BP神经网络实现故障诊断,在NI官网找到了机器学习工具包(MLT),但是里面没有关于这部分VI的帮助文档,对于”BP神经网络分类“这个范例有很多不懂的地方,
    发表于 02-22 16:08

    分享机器学习卷积神经网络的工作流程和相关操作

    机器学习算法篇--卷积神经网络基础(Convolutional Neural Network)
    发表于 02-14 16:37

    机器学习神经网络参数的代价函数

    吴恩达机器学习笔记之神经网络参数的反向传播算法
    发表于 05-22 15:11

    基于赛灵思FPGA的卷积神经网络实现设计

    ,看一下 FPGA 是否适用于解决大规模机器学习问题。卷积神经网络是一种深度神经网络 (DNN),工程师最近开始将该技术用于各种识别任务。图
    发表于 06-19 07:24

    神经网络结构搜索有什么优势?

    近年来,深度学习的繁荣,尤其是神经网络的发展,颠覆了传统机器学习特征工程的时代,将人工智能的浪潮推到了历史最高点。然而,尽管各种神经网络模型
    发表于 09-11 11:52

    【AI学习】第3篇--人工神经网络

    `本篇主要介绍:人工神经网络的起源、简单神经网络模型、更多神经网络模型、机器学习的步骤:训练与预测、训练的两阶段:正向推演与反向传播、以Te
    发表于 11-05 17:48

    如何用卷积神经网络方法去解决机器监督学习下面的分类问题?

    人工智能下面有哪些机器学习分支?如何用卷积神经网络(CNN)方法去解决机器学习监督学习下面的分类
    发表于 06-16 08:09

    卷积神经网络模型发展及应用

    卷积神经网络模型发展及应用转载****地址:http://fcst.ceaj.org/CN/abstract/abstract2521.shtml深度学习机器学习和人工智能研究的最新
    发表于 08-02 10:39

    卷积神经网络简介:什么是机器学习

    抽象人工智能 (AI) 的世界正在迅速发展,人工智能越来越多地支持以前无法实现或非常难以实现的应用程序。本系列文章解释了卷积神经网络 (CNN) 及其在 AI 系统中机器学习中的重要性。CNN 是从
    发表于 02-23 20:11

    什么是模糊神经网络_模糊神经网络原理详解

    模糊神经网络就是模糊理论神经网络相结合的产物,它汇集了神经网络与模糊理论的优点,集学习、联想、
    发表于 12-29 14:40 ?5w次阅读
    什么是模糊<b class='flag-5'>神经网络</b>_模糊<b class='flag-5'>神经网络</b>原理详解

    为什么使用机器学习神经网络以及需要了解的八种神经网络结构

    机器学习已经在各个行业得到了大规模的广泛应用,并为提升业务流程的效率、提高生产率做出了极大的贡献。这篇文章主要介绍了机器学习中最先进的算法之一——
    的头像 发表于 01-10 16:30 ?1.2w次阅读
    为什么使用<b class='flag-5'>机器</b><b class='flag-5'>学习</b>和<b class='flag-5'>神经网络</b>以及需要了解的八种<b class='flag-5'>神经网络</b>结构

    卷积神经网络简介:什么是机器学习

    随着人工智能(AI)技术的快速发展,AI可以越来越多地支持以前无法实现或者难以实现的应用。本文基于此解释了卷积神经网络(CNN)及其对人工智能和机器学习的意义。CNN是一种能够从复杂数
    的头像 发表于 03-11 23:10 ?1211次阅读

    如何使用神经网络进行建模和预测

    神经网络是一种强大的机器学习技术,可以用于建模和预测变量之间的关系。 神经网络的基本概念 神经网络
    的头像 发表于 07-03 10:23 ?1413次阅读