Advertisement

基于神经网络的图像识别,人工神经元网络的特点

阅读量:

如何通过人工神经网络实现图像识别

人工神经网络(Artificial Neural Networks, 简称ANN)系统自20世纪40年代末建立以来仅半个世纪有余,在此期间尽管经历了短暂的发展停滞期,但凭借其信息的分布存储机制与并行计算能力以及自主学习特性,在信息处理、模式识别、智能控制以及系统建模等多个领域展现出显著的应用前景。

特别地,在采用误差反向传播算法构建多层前馈神经网络时(以BP神经网络为典型代表),能够以任意精度近似表示任意连续函数)。此方法在非线性建模与数据拟合、模式识别等领域展现出广泛的应用价值。

目标识别作为模式识别领域中的传统课题之一,在实际应用中具有重要价值。这是因为目标识别并不孤立于其他问题,在模式识别领域中的多数课题都不可避免地会遇到这一核心挑战,并且在各个具体课题中因为具体情况各有不同而导致解决方法也有所不同。因此,在理论与实践层面的研究仍具重要意义。

这里涉及的是目标物体通过成像头(包括红外和可见光等)捕获后生成的图像信号序列经由计算机处理,并利用神经网络进行图像识别的问题。

一、BP神经网络 BP 网络基于 Widrow-Hoff 学习规则以及非线性可微激活函数构建而成,并由多个层级节点组织而成。通常情况下, BP 网络通过梯度下降法进行参数优化,这一过程被视为 Widrow-Hoff 学习法则所规定的标准训练方法.

backpropagation是指用于计算非线性多层网络梯度的方法。以图的形式展示了一个典型的BP网络架构。我们采用向量形式将其展示在下图中。

其中,在每组模式对中,在输出层单元j处的加权输入值等于该单元的实际输出值;同时,在隐含层中的第i个单元处的加权输入值等于其实际输出值;此外所采用的函数f是一个可微递减的函数;具体算法如下所述:第一步初始化网络结构及学习参数如设置各权重矩阵初始值选取学习因子等参数;第二步执行训练过程...

(2)建立训练模型并开始对神经网络进行参数优化过程直至达到预期的学习目标。
(3)前向传播阶段:将给定的输入数据样本代入神经网络进行计算,并将其与预期输出进行对比;
如果发现预测结果与预期不符,则进入步骤(4);
否则继续回到步骤(2)。

(4)反向传播流程:a) 计算当前层单元的误差值;b) 调整权值与阈值参数;c) 返回上一层继续计算(2)。二、三层BP网络中含一个隐藏层时便具备了输入至输出端执行任意非线性函数映射的能力。

增厚神经网络架构中的隐藏层深度有助于减少计算误差并提升预测精度;然而这也会导致模型结构更加复杂,并延缓训练效率;与此同时提升模型性能同样可以通过优化隐藏层节点数量来实现;从整体来看推荐优先考虑增厚隐藏层节点数量以平衡性能与计算需求

三、确定隐含层神经元数量的作用当选用神经网络进行函数映射时,隐含层神经元的数量会对神经网络的学习性能和归纳能力产生显著影响。

当隐含层神经元数量较小时,网络每次训练所需时间相对缩短;但可能因学习不足而导致网络无法完整掌握所有训练信息;相比之下,在隐含层神经元数量较大时,则能显著增强其学习能力;然而耗时增加的同时还伴随存储容量显著提升;然而这种情况下会降低对未知输入数据的归纳能力;由于缺乏理论指导而难以确定隐节点数量;通常靠经验来设定。

四、神经网络图像识别系统采用人工神经网络方法进行模式识别,在处理环境信息较为复杂的情况下表现出一定的效果,并能够容忍样本存在较多的损伤或变形的情况。然而,在当前阶段其模型仍在不断优化和完善中,并不能有效解决所有复杂的模式识别问题。尽管如此,在运行速度上表现得较为突出,并且具备良好的自适应能力;此外还具有较高的分辨率

该系统的图像识别功能属于一种基于模式识别的技术框架,并遵循相同的原理。通常由三个主要环节构成:预处理、特征提取以及神经网络分类器。其中预处理环节的任务是去除原始数据中的无用信息,并对数据进行降噪处理、二进制转换以及标准化处理等步骤以提高识别系统的准确性与稳定性

由于神经网络图像识别系统中的特征提取模块可能不存在的原因,则将其划分为两大类:其一为具有特征提取模块的系统;这类系统主要是传统方法与神经网络技术融合的结果,在其运行过程中能够充分结合人类的经验性知识以及神经网络自动学习的能力进行图像识别。

特征提取必须能反应整个图像的特征。但它的抗干扰能力不如第2类。

未采用特征提取的方式:不再进行特征提取操作,并将整个图像直接作为神经网络的输入数据。采用这种方式后,在系统设计上带来了新的挑战:由此导致了神经网络架构的整体复杂度显著提升;同时由于输入模式的空间维度增加,在实际应用中会导致整个系统的计算规模急剧上升。

此外,在神经网络结构中需要完全消除模式变形的影响。然而网络具有良好的抗干扰能力和高的识别率。当使用BP网络进行分类时,在训练过程中应首先选取各类样本进行训练,并使各类样本的数量尽量接近。

其主要原因在于一方面能够抑制训练后网络对样本数量多的类别响应过于敏感的同时也不会影响样本数量少的类别识别能力。另一方面能够显著提升了训练效率从而有效降低了陷入局部极小值的可能性。

因为BP网络不具备对模式进行不变识别的能力, 所以需要确保该网络能够实现对模式进行平移、旋转以及缩放等变形后的不变性识别, 并应尽量收集涵盖各种可能情况的样本数据。

如举不同姿态、方向、角度和环境等具有代表性的样本进行选取,则能有效确保该系统能够以高精度识别各种场景。

构建神经网络分类器时必须首先确定合适的网络架构;该分类器的输入应由图像特征向量表示;其输出节点数量应与类别总数相匹配。隐藏层的数量及其各层单元数目都需要合理设置,并且通常情况下,在实际应用中发现单隐藏层架构表现较为稳定。

然后要选择适当的学习算法,这样才会有很好的识别效果。

为了提高效率,在训练阶段应当使用大量样本数据对其进行系统性训练与优化。通过对神经网络各层间连接权值进行系统性调整,使模型能够准确识别各类样本。这与人类记忆数字的过程非常相似,其中每个神经元都类似于人类大脑中的一个细胞,而每个连接权值的变化类似于不同脑细胞之间的信息传递机制发生相应变化。在此过程中,每一轮的学习都能逐步优化权重参数,最终使得整个神经网络能够完成预期的任务目标,整个训练过程如同人类从无认识到有意识的过程一般,只不过这里的"认识"是由计算机完成的各种模式识别任务所实现

神经网络依据整体特征向量进行图像记忆,在输入样本具备足够多与已学习样本匹配的特征时,则能被归类为同一类别。由此可见,在样本呈现较大噪声的情况下,神经网络分类器依然能够实现准确识别。

在图像识别阶段中,在将图像表示为点阵向量后,在神经网络分类器进行输入处理时,在经过计算分析后,在得到的结果中即实现了对图像内容的识别。第五部分为仿真实验,在实验对象方面本研究采用了MATLAB平台进行神经网络模型训练,并通过模拟过程实现了对图像识别效果的具体验证。

采用实验数据集提取... 从实验数据库中选择...

将样本划分为两组,在一组中进行训练,在另一组中进行测试。实验中使用了数量为40个单位的样本进行训练,并使用数量为20个单位的样本进行测试。通过调用randn(m,n)函数生成随机噪声

在本试验中采用了三层BP神经网络结构;其中输入层的神经元数量与样本图像中的像素总数(16×8)相等;经过实验测试发现,将隐含层设置为24个神经元时表现最佳

输出层神经元的数量是要识别的模式的数量。此例中存在10种模式。因此选择输出层神经元数量为10个。每个神经元分别对应一个特定的模式。

基于MATLAB语言构建了用于网络训练与仿真的架构,并对其中的神经网络进行了初始化设置

newff(PR,[S1; S2; ...; SN],{TF1, TF2, ..., TFN}, BTF, BLF, PF)是一种用于生成MATLAB函数库中实现N层前向BP神经网络架构的专用函数。该函数通过输入参数PR描述网络输入矢量取值范围的具体上下限矩阵[Pmin; max]来定义输入空间;各层神经元数量分别由S1至SN进行配置;传递函数配置由集合{TF1, TF2, ..., TFN}完成;其中BTF负责指定训练算法的选择权值与阈值的学习策略BLF,并以PF所定义的方式评估网络性能,默认设置下采用均方误差作为性能指标

设置网络性能函数为sse;%平方和误差(SSE)性能函数设定目标平方和误差值为 SSE\_target = 1e-3;%平方和误差目标设定最大训练迭代次数为 max\_ epochs = 5e3;%最大训练步数设定动量学习因子为 learning\_factor = 0.9;%动量常数对网络进行初始化处理net = init(net);%初始化网络并执行训练过程[net,tr]=train(net,P,T);%完成对训练好的神经元网络进行仿真计算D=sim(net,P);A=sim(net,B);其中B代表测试样本向量集合,并由大小为128×20的矩阵表示。

D代表该系统对训练数据集的分类准确率,A则表示测试数据集上的分类准确率。实验数据显示该系统在训练集和测试集上的分类准确率达到满分。图中展示了通过向64579等五个数字符号添加50%随机噪声后的分类效果。

六、通过实验可以看出采用神经网络进行数字识别是完全有效的。仅用于演示基本数字识别的是给出的例子。为了提高复杂目标图像的识别能力,在网络模式下需要降低网络规模并提升其识别能力。

谷歌人工智能写作项目:神经网络伪原创

人工神经网络原理的内容简介

好文案

为了使读者能够利用人工神经网络解决现实问题的需求,《书中》不仅系统地讲解了人工神经网络的应用开发设计流程,并且在附录模块中提供了BP型神经网络用于预测建模、Hopfield型神经网络用于图像自联想记忆以及模拟退火算法应用于TSP求解等不同领域的源程序实例供学习者参考研究

在知识扩展方面,《书中》也较为详细地阐述了人工神经网络的具体实现过程,并探讨了该技术与传统基于规则的人工智能专家系统及模糊逻辑系统的结合

《人工神经网络原理》既可用于计算机科学与技术、电子工程以及通信与自动控制等学科领域的硕士及本科高年级学生的教材学习,也可作为上述领域内从事研究工作的科研工作者和技术人员的教学参考书。

神经网络,什么过拟合?,什么是欠拟合?

模型无法在训练集中达到足够的低误差水平;而过拟合则表现为模型在训练集上的表现远超其在测试集上的表现。相关内容介绍:人工神经网络(ANN)或联结主义系统是受构成动物大脑的生物神经网络启发但并不完全相同的计算系统。

这种系统通过例子来“学习”执行任务,而不用特定于任务的规则进行编程。

例如,在图灵机理论中(注:图灵机理论是一个更准确的技术术语),人工神经网络可能会被用来分析一些图片样本以学习如何辨识包含猫咪的照片;这些图片会被手动标注为"有猫咪"或者"没有猫咪";然后系统会利用这种信息来进行对其他未标注图片中的猫咪进行辨识。

他们这样做是在不具备猫的知识前提下完成的行为模式, 其具体表现包括体毛覆盖、尾部结构以及与家猫相似的表情特征. 相反, 在基于人工神经网络的学习过程中, 则能够自动生成用于识别不同物种的独特特征.

人工 neural network 是由被称为 artificial neurons 的 connection unit 或 node 构成的一个集合体;这些 unit 或 node 是通过类比模拟 biological brain 中的 neuron 构建起来的;类似于 biological brain 中的作用就是通过突触传递信息的方式;每一个 connection 都能传递给另一个

接收信号的人工神经元能够对其发出指令,并将处理后的结果传递给与其连接的辅助人造神经元。

BP神经网络原理

人工神经网络拥有多种模型,在当前领域中应用最为广泛的是多层前馈神经网络及其对应的误差逆传播学习算法(Error Backpropagation Algorithm),通常简称为BP网络(BP network)。

在1986年,《ParallelDistributedProcessing》一书由Rumelhart及其领导的研究团队出版,并系统性地阐述了误差逆传播学习算法及其应用前景。

多层感知网络是一种具有三层或三层以上的阶层型神经网络。

典型的三层前馈神经网络结构通常被归类为图4.1所示的形式。其中包含三个层次:输入层面负责接收外部信号;隐含层面通过非线性变换处理信息并传递到下一个层级;输出层面则根据最终计算结果产生响应。
详细说明如图4.1所示的三层BP神经网络架构中,输入层面充当了与外界信息交换的主要接口环节。

一般输入层仅仅负责存储输入矢量的功能层,并未对其施加任何变换或操作。其神经元数量可通过所求解的问题以及数据特征来合理确定。

通常情况下,在使用图像作为输入时(即作为输入矢量),网络架构可以选择不同的节点数量配置:一种配置是将节点数量设置为与原始图像中像素的数量相匹配;另一种配置则是基于对图像特征进行提取后得到的具体数值设置节点数量

(2)隐含层1989年, Robert Hecht-Nielsen证明了对于定义域内的任意连续函数都可以用单隐层BP神经网络实现逼近,进而表明三层结构的BP神经网络能够实现从n维空间到m维空间的任意映射。

然而增加隐含层数可能会进一步降低误差并提高精度;然而这也会导致网络结构更加复杂进而增加权值训练的时间。

提升误差精度的方式可以通过增大小 hidden layer中的神经元数量来实现;这些训练效果相较于仅增大小 hidden层更易于被观察并进行调整;因此,在大多数情况下,建议首先考虑增大小 hidden layer中的神经元数量,并根据具体情况决定合适的小 hidden层数。

(3)网络训练的结果矢量属于输出层计算而得其维度应在具体应用需求下进行设计尽量降低系统的规模使系统复杂度降低。

如果网络用作识别器,则识别的类别神经元接近1,而其它神经元输出接近0。

在以上三层网络中,相邻层之间的各个神经元均实现了全面连接;即下一层中的每一个神经元与上一层的所有神经元均实现了全面连接;并且同一层内的各个神经元之间并未建立任何直接联系;这些联系强度构成了该网络模型中的权重矩阵W。

该网络的学习过程采用带有指导 teacher-led 的方式进行。随后,在每种输入样本中,教师会指定对应的期望输出结果。接着,在训练过程中会将实际的学习样本输入到神经网络中,并经由输入层依次传递至中间层再到输出层(称作"正向传播")。

实际输出与预期输出之间的差异即为误差。依据误差平方和最小的原则,在反向过程中逐步更新各层参数以优化模型参数配置,在深度学习中这一优化机制被称为“反向传播”(陈正昌, 2005)。

在该系统中,在反向传播算法与前向传递过程之间形成了交替循环的过程

网络的实际输出逐步趋近于各自所对应的期望输出,并且网络对输入模式反应的正确率不断提高。经过这一学习过程后,确定下来各层间的连接权值。

典型三层BP神经网络及其程序流程如下(标志渊等著,2006):首先阐述相关符号定义:输入样本集X={x₁,x₂,...x_m}⊂Rn;目标样本集Y={y₁,y₂,...y_m}⊂Rp;神经网络参数包括权重矩阵W∈R{n×p}、偏置项b∈Rp以及激活函数参数α∈Rm;建立前馈计算模型:对于每个样本xi∈X,在隐藏层计算预设特征φ(xi)=σ(Wxi+b),其中σ表示激活函数;在输出层通过加权求和得到预测值ŷi=Wφ(xi)+b;定义损失函数L(yi,yi)并对其求梯度以更新参数W和b。

(2)初始化阶段。在区间(-1, 1)范围内对每个连接权值wij、vjt、阈值θj与γj进行随机赋值。(3)从输入样本集中随机抽取一批数据,并对应指定的目标输出作为训练样本输入到网络进行训练

(4)基于输入样本、结合权重参数wij以及阈值参数θj对输入样本进行处理以获得中间层各单元的激活值sj;随后将中间层各单元的激活值sj代入传递函数以获得相应的输出bj。

基坑降水工程在环境方面的影响及其评估手段。其中 bj = f(sj),j = 1, 2, …, p (4.5)。通过综合考虑中间层节点输出 bj、各连接权系数 vjt 和激活阈值 γt 的影响来确定 输出层每个单元对应的权重 Lt。随后采用传递函数对 输出层各个单元进行响应计算。

基坑降水工程在环境方面的影响及其评价指标Ct=f(Lt)t=1,2,…,q(4.7)(6)。基于该网络的目标向量V^k, 通过该网络计算得到的实际输出值为Ct(k)=f(L_t^k), t=1,2,…,q(4.7)(6)。进而计算输出层各单元的一般化误差值E_k

基坑降水工程的环境影响与评估方法(7)基于连接权vjt、输出层的一般化误差dt和中间层的输出bj进行中间层各单元的一般化误差分析。

基坑降水工程中环境效应及其评价方法(8)采用广义误差在输出层各单元与中间层各单元输出bj的基础上调整连接权vjt及阈值γt

基坑降水系统在环境效应及评价方法研究中具有重要的应用价值(9)。基于中间层各单元的一般化误差,并引入输入层各单元的输入变量Pk=(a1,a2,...,an),用于调整连接权系数wij和阈值θj。

基坑降水工程的环境效应与评价方法采用编号为(10)的方式进行研究;具体而言,系统将从候选池中随机抽取下一个样本向量输入至网络,转回至第(3)步,直至所有m个训练样本均完成训练后

(11)从m个训练样本中有放回地随机抽取一组输入与目标数据后, 然后递归地执行步骤(3)。该过程会持续直至整个网络的全局误差E降至预设的一个极小阈值以下, 即认为网络已达到收敛状态。若训练迭代次数超过预设上限, 则判定网络无法收敛。(12)学习结束。

可以看出,在学习流程中,(8)、(9)步用于实现数据传输中的误差反向传播机制,(10)、(11)步则负责训练模型并使其收敛。经过训练的数据处理系统还需要进行性能评估以验证其稳定性和准确性。

为了验证系统的性能, 我们采用的方法是选择合适的测试样本向量, 将其输入到网络中进行处理, 最后通过验证确认网络对这些模式分类的准确性. 测试样本向量应包含未来在网络应用过程中可能遇到的主要典型模式(Song Daqi, 2006).

这些样本可以直接获取,在样本数据较少或难以获取的情况下,则可以通过学习样本添加适当噪声或采用特定插值方法进行处理

为了更有效地检验网络的一般化能力,在构建测试样本集时应避免包含与训练样本完全相同的模式(董军, 2007)。

人工神经网络分类方法

从20世纪80年代末期,人工神经网络方法开始应用于遥感图像的自动分类。

当前,在遥感图像的自动分类领域中也存在较多研究的人工神经网络方法主要包括以下几种:其中一种是BP(BackPropagation)神经网络这种前向型的有监督分类算法其通过结合先验知识来优化学习过程表现出良好的适应能力在类别数量较少时仍能实现较高的分类精度

(2)该类神经网络属于反馈型结构。
主要基于Hebbian学习规则进行训练。
通常情况下,在计算效率上具有较高的收敛速度

这种网络是由美国物理学家J.J.Hopfield在1982年首次提出的,并被广泛应用于研究生物神经系统如何存储和恢复记忆的工作机制。

Hopfield神经网络的状态行为轨迹是一个复杂动力学系统,并由一系列非线性差分方程组共同表征。

系统稳定可通过被称为能量函数的指标来进行评估。当满足特定条件时,在网络过程中某一类被称为能量函数的指标会逐渐降低。最终收敛于稳定平衡状态。

Hopfield网络的发展过程涉及计算相关联记忆以及解决优化问题的具体步骤。(3) Kohonen网络。

该自组织神经网络是由芬兰赫尔辛基大学的神经网络专家Kohonen于1981年提出的。它采用了基于无导师信息的学习机制。这种学习机制仅依据输入数据的属性进行权值调整。从而实现环境适应、自动化分类以及数据聚类等功能。

其最突出的优点在于相邻聚类之间存在密切关联性。即便将样本误判至一个不正确的节点位置,在这种情况下它仍会将其误判为同一类别因素或邻近类别,并呈现出与人类认知模式非常相似的现象

人工神经网络的发展

现代意义上对神经网络(特指人工神经网络)的研究普遍认为始于1943年美国芝加哥大学的生理学家W.S.McCulloch和W.A.Pitts提出的M-P神经元模型的建立,距今已有大约六十年

在这六十年中,神经网络的发展走过了一段曲折的道路。

1965年,M.Minsky与S.Papert在其著作《感知机》中阐述了感知机的缺陷并表达了他们对该领域研究持悲观态度的看法。这一发现不仅揭示了感知机的局限性,还导致神经网络研究从其发展的初期阶段转入了停滞时期,这是神经网络发展史上的第一个转折点

到了20世纪80年代初,J.J.Hopfield的贡献以及D.Rumelhart等人发布的PDP报告深刻揭示了神经网络的潜在能力,从而推动了该领域研究从低谷时期迈向蓬勃发展时期,这是神经网络发展史上的关键转折事件

到20世纪90年代中后期

多人对神经网络研究又一次陷入停滞表示担忧,并有人预测支持向量机将会取代它。

值得指出的是,在其所做的报告中,著名学者C.-J.Lin于2003年1月在德国马克斯·普朗克研究所提出的支持向量机尽管是一个非常热门的话题,但目前最主流的分类工具依然是决策树和神经网络。

来自著名支持向量机研究者的这句话显而易见带有特殊意味。实际上,在目前阶段神经网络所处的处境与1965年后的真正低潮时期相比有着显著的不同。

在1965年后的相当长一段时间里,在这两个大国之间未曾有过任何关于神经网络研究项目的资助;然而如今无论是在国际还是国内层面都汇聚了一批稳定的科研团队。

实际情况下,在1965年之后神经网络陷入低潮的原因是当时的该领域研究遭受了质疑或被评价为不成熟。而如今这一领域的状态较为平和主要是因为其技术逐渐成熟,并且随着越来越多的技术得以应用于实际生产与日常生活,导致了原有研究领域空间的缩减。

在科学研究中常见这样一个现象:某个领域的论文数量激增往往标志着该领域不够成熟且研究空间极大;同时由于此时人们对其研究局限认识不清,在这种情况下研究人员的热情容易产生盲目的倾向。

在过去的几十年里,众多领域的研究者们纷纷涌入该领域,并在各类专业期刊中大量报道着"神经网络"的现象。这种现象本质上是一种不健康的繁荣模式,在某种程度上反映了对该领域的过度关注导致资源分配失衡的问题。然而,在经过一段时间的冷静思考后发现,这一领域的研究如今已逐步转向更加理性和正常的阶段

在回顾以往研究成果存在的问题与不足的过程中,在此基础上汲取相关领域最新研究成果的精华,并以此为基础将探索出新的研究方向从而为本领域进一步发展开辟新的研究路径

全部评论 (0)

还没有任何评论哟~