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

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

3天内不再提示

人工神经网络中语音分析与图像识别的研究

0BFC_eet_china 来源:互联网 作者:佚名 2017-09-27 14:20 次阅读

卷积神经网络(Convolutional Neural Network, CNN)是人工神经网络的一种,是当下语音分析和图像识别领域的研究热点。

这篇文章用最简明的语言和最直观的图像,带你入门CNN。准备好了吗?Let’s go——

我们先从最基础的内容说起。

对二维数字信号(图像)的操作,可以写成矩阵形式。

比如对图像做平滑,一个典型的8领域平滑,其结果中的每个值都来源于原对应位置和其周边8个元素与一个3X3矩阵的乘积:

也就相当于对原矩阵,按照顺序将各区域元素与W矩阵相乘,W 矩阵为:

这也被称作核(Kernel, 3X3)

其处理效果如下:

也就是,这个核对图像进行操作,相当于对图像进行了低通滤波。因此这个核也被称为滤波器,整个操作过程按照概念称为卷积。

扩展来讲,对二维图像的滤波操作可以写成卷积,比如常见的高斯滤波、拉普拉斯滤波(算子)等。

滤波器跟卷积神经网络有什么关系呢。不如我们预想一个识别问题:我们要识别图像中的某种特定曲线,也就是说,这个滤波器要对这种曲线有很高的输出,对其他形状则输出很低,这也就像是神经元的激活

我们设计的滤波器和想要识别的曲线如下:

假设上面的核(滤波器)按照卷积顺序沿着下图移动:

那么当它移动到上面的位置时,按照矩阵操作,将这个区域的图像像素值与滤波器相乘,我们得到一个很大的值(6600):

而当这个滤波器移动到其他区域时,我们得到一个相对很小的值:

如此,我们对整个原图进行一次卷积,得到的结果中,在那个特定曲线和周边区域,值就很高,在其他区域,值相对低。这就是一张激活图。对应的高值区域就是我们所要检测曲线的位置。

在训练卷积审计网络(CNN)的某一个卷积层时,我们实际上是在训练一系列的滤波器(filter)。比如,对于一个32x32x3(宽32像素x高32像素xRGB三通道)的图像,如果我们在CNN的第一个卷积层定义训练12个滤波器,那就这一层的输出便是32X32X12.按照不同的任务,我们可以对这个输出做进一步的处理,这包括激活函数,池化,全连接等。

简单来说,训练CNN在相当意义上是在训练每一个卷积层的滤波器。让这些滤波器组对特定的模式有高的激活,以达到CNN网络的分类/检测等目的。

一个实际CNN(AlexNet)第一个卷积层的滤波器>

卷积神经网络的第一个卷积层的滤波器用来检测低阶特征,比如边、角、曲线等。随着卷积层的增加,对应滤波器检测的特征就更加复杂(理性情况下,也是我们想要的情况)。

比如第二个卷积层的输入实际上是第一层的输出(滤波器激活图),这一层的滤波器便是用来检测低价特征的组合等情况(半圆、四边形等),如此累积,以检测越来越复杂的特征。实际上,我们的人类大脑的视觉信息处理也遵循这样的低阶特征到高阶特征的模式。

可参考之前文章《为什么无彩色系(黑白灰色)在色彩搭配中可以和谐地与任何彩色搭配?》:https://www.zhihu.com/question/27380522/answer/36794240

最后一层的滤波器按照训练CNN目的的不同,可能是在检测到人脸、手写字体等时候激活[1]。

所以,在相当程度上,构建卷积神经网络的任务就在于构建这些滤波器。也就是,将这些滤波器变成这样(改变滤波器矩阵的值,也就是Weight)的——能识别特定的特征。这个过程叫做训练

在训练开始之时,卷积层的滤波器是完全随机的,它们不会对任何特征激活(不能检测任何特征)。这就像刚出生的孩子,TA不知道什么是人脸、什么是狗,什么是上下左右。

TA需要学习才知道这些概念,也就是通过接触人脸、狗、上下左右,并被告知这些东西分别是人脸、狗、上下左右。然后TA才能在头脑中记住这些概念,并在之后的某一次见到之后能准确的给出结果。

把一个空白的滤波其,修改其权重(weights)以使它能检测特定的模式,整个过程就如工程里面的反馈。

想想一下,如果有一只无意识的猴子,完全随机的修改一个5X5滤波器矩阵的25个值,那完全可能经过一定的轮次之后,这个滤波器能够检测棱角等特征。这是一种无反馈的训练情况。对神经网络的训练当然不能如此,我们不可能靠运气去做这件事情。

举个例子,我们要训练一个用于分类的神经网络,让它能判定输入图像中的物体最可能是十个类别的哪一类。那么,训练过程就是这样的:

第一次训练,输入一张图像,这个图像通过各层卷积处理输出量一组向量[1,1,1,1,1,1,1,1,1,1], 也就是,对于完全由随机滤波器构建的网络,其输出认为这张图等概率的是十个类别中的某一种。

但是对于训练,我们有一个Gound Thuth, 也就是这张图中物体所属的类别:[0,0,1,0,0,0,0,0,0,0],也就是属于第三类。这时候我们可以定义一个损失函数,比如常见的MSE(mean squared error)。

我们假定L是这个损失函数的输出。这时候我们的目的就是,让L的值反馈(这种神经网络概念下称为 back propagation, 反向传输)给整个卷积神经网络,以修改各个滤波器的权重,使得损失值L最小。

这是一个典型的最优化问题。当然地,在工程上我们几乎不可能一次就把滤波器的权重W修改到使L最小的情况,而是需要多次训练和多次修改。

如果情况理想的话,权重修改的方向是使得L的变化收敛的。这也就是说很可能达到了我们训练这个神经网络的目的——让各个卷积层的滤波器能够组合起来最优化的检测特定的模式。

参考文献

[1] Zeiler, M. D., & Fergus, R. (2014, September). Visualizing and understanding convolutional networks. In European conference on computer vision (pp. 818-833). Springer, Cham.

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

    关注

    42

    文章

    4572

    浏览量

    98746
  • 图像识别
    +关注

    关注

    8

    文章

    447

    浏览量

    37908
  • 人工智能
    +关注

    关注

    1776

    文章

    43845

    浏览量

    230598

原文标题:给你一个卷积神经网络工作原理最直观的解释

文章出处:【微信号:eet-china,微信公众号:电子工程专辑】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    实现图像识别神经网络的步骤

    我们的下一个任务是使用先前标记的图像来训练神经网络,以对新的测试图像进行分类。因此,我们将使用nn模块来构建我们的神经网络
    的头像 发表于 01-22 10:01 442次阅读
    实现<b class='flag-5'>图像识别</b><b class='flag-5'>神经网络</b>的步骤

    如何使用Python进行图像识别的自动学习自动训练?

    如何使用Python进行图像识别的自动学习自动训练? 使用Python进行图像识别的自动学习和自动训练需要掌握一些重要的概念和技术。在本文中,我们将介绍如何使用Python中的一些常用库和算法来实现
    的头像 发表于 01-12 16:06 216次阅读

    卷积神经网络的优点

    卷积神经网络的优点  卷积神经网络(Convolutional Neural Network,CNN)是一种基于深度学习的神经网络模型,在图像识别
    的头像 发表于 12-07 15:37 2962次阅读

    使用Python卷积神经网络(CNN)进行图像识别的基本步骤

    Python 卷积神经网络(CNN)在图像识别领域具有广泛的应用。通过使用卷积神经网络,我们可以让计算机从图像中学习特征,从而实现对图像的分
    的头像 发表于 11-20 11:20 1795次阅读

    离线语音识别和控制的工作原理及应用

    神经网络(RNN)和卷积神经网络(CNN)是最常用的两种技术。RNN 适用于处理时间序列数据,如语音信号,而 CNN 则适用于处理具有网格结构的数据,如图像。通过深度学习技术,可以有效
    发表于 11-07 18:01

    神经网络模型的工作原理和作用

    神经网络模型是一种计算模型,基于人类神经系统的处理和学习机制,模仿大脑神经元的工作方式,对输入数据进行分析处理,实现分类、识别和预测等任务。
    发表于 08-28 18:21 925次阅读

    cnn卷积神经网络算法 cnn卷积神经网络模型

    cnn卷积神经网络算法 cnn卷积神经网络模型 卷积神经网络(CNN)是一种特殊的神经网络,具有很强的图像识别和数据分类能力。它通过学习权重
    的头像 发表于 08-21 17:15 1173次阅读

    图像识别卷积神经网络模型

    Network,CNN)是一种前向反馈神经网络,具有许多层次的神经元,并且在其层次结构中存在着权重共享的机制。这种结构可以使神经网络图像的特征提取和分类非常有效。
    的头像 发表于 08-21 17:11 535次阅读

    卷积神经网络算法流程 卷积神经网络模型工作流程

    卷积神经网络算法流程 卷积神经网络模型工作流程  卷积神经网络(Convolutional Neural Network,CNN)是一种广泛应用于目标跟踪、图像识别
    的头像 发表于 08-21 16:50 1587次阅读

    卷积神经网络算法有哪些?

    算法。它在图像识别语音识别和自然语言处理等领域有着广泛的应用,成为近年来最为热门的人工智能算法之一。CNN基于卷积运算和池化操作,可以对图像
    的头像 发表于 08-21 16:50 1156次阅读

    卷积神经网络应用领域

    卷积神经网络应用领域 卷积神经网络(CNN)是一种广泛应用于图像、视频和自然语言处理领域的深度学习算法。它最初是用于图像识别领域,但目前已经扩展到了许多其他应用领域。本文将详细介绍卷积
    的头像 发表于 08-21 16:49 2840次阅读

    卷积神经网络如何识别图像

    卷积神经网络如何识别图像  卷积神经网络(Convolutional Neural Network, CNN)由于其出色的图像识别能力而成为
    的头像 发表于 08-21 16:49 1420次阅读

    卷积神经网络概述 卷积神经网络的特点 cnn卷积神经网络的优点

    和高效的处理方式,CNN已经成为图像识别语音识别和自然语言处理等领域中的优选技术。CNN对于处理基于网格结构的数据具有天然的优势,因此在处理图像和视频等视觉数据时,具有独特的优越性能
    的头像 发表于 08-21 16:41 1935次阅读

    卷积神经网络用于图像识别的原理

    在机器视觉领域,图像识别是指软件识别人物、场景、物体、动作和图像写入的能力。为了实现图像识别,计算机可以结合人工智能软件和摄像机使用机器视觉
    发表于 08-20 09:56 896次阅读
    卷积<b class='flag-5'>神经网络</b>用于<b class='flag-5'>图像识别的</b>原理

    浅析三种主流深度神经网络

    深层神经网络的迅速发展应用致使语音识别错误率上较传统语音识别方法错误率减少30%(20年来最大降幅),同时也大幅削减了
    的头像 发表于 05-15 14:18 712次阅读
    浅析三种主流深度<b class='flag-5'>神经网络</b>