hinton,人工智能方向需要学习python还是深度学习呢?
要回答这个问题,首先,我们先了解一下什么是Python和深度学习,各用于什么领域?了解了这两个问题,对于人工智能方向是需要学什么?先学什么?都会有一个清晰的答案。

一、Python
Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
Python是一种解释型脚本语言,可以应用于以下领域:
Web 和 Internet开发科学计算和统计人工智能桌面界面开发软件开发后端开发网络爬虫Python与人工智能的关系:
Python是一门在人工智能科学领域被广泛应用的计算机程序语言,广泛应用就表明各种库,各种相关联的框架都是以Python作为主要语言开发出来的。
谷歌的TensorFlow大部分代码都是Python,其他语言一般只有几千行。
Python虽然是脚本语言,但是因为容易学,迅速成为科学家的工具,从而积累了大量的工具库、架构,人工智能涉及大量的数据计算,用Python是很自然的,简单高效。
Python有非常多优秀的深度学习库可用,现在大部分深度学习框架都支持Python。
二、深度学习
深度学习(DL, Deep Learning)是机器学习(ML, Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI, Artificial Intelligence)。
深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。 深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。
深度学习是一类模式分析方法的统称,就具体研究内容而言,主要涉及三类方法:
(1)基于卷积运算的神经网络系统,即卷积神经网络(CNN)。
(2)基于多层神经元的自编码神经网络,包括自编码( Auto encoder)以及近年来受到广泛关注的稀疏编码两类( Sparse Coding)。
(3)以多层自编码神经网络的方式进行预训练,进而结合鉴别信息进一步优化神经网络权值的深度置信网络(DBN)。
通过多层处理,逐渐将初始的“低层”特征表示转化为“高层”特征表示后,用“简单模型”即可完成复杂的分类等学习任务。由此可将深度学习理解为进行“特征学习”(feature learning)或“表示学习”(representation learning)。
以往在机器学习用于现实任务时,描述样本的特征通常需由人类专家来设计,这成为“特征工程”(feature engineering)。众所周知,特征的好坏对泛化性能有至关重要的影响,人类专家设计出好特征也并非易事;特征学习(表征学习)则通过机器学习技术自身来产生好特征,这使机器学习向“全自动数据分析”又前进了一步。
近年来,研究人员也逐渐将这几类方法结合起来,如对原本是以有监督学习为基础的卷积神经网络结合自编码神经网络进行无监督的预训练,进而利用鉴别信息微调网络参数形成的卷积深度置信网络。与传统的学习方法相比,深度学习方法预设了更多的模型参数,因此模型训练难度更大,根据统计学习的一般规律知道,模型参数越多,需要参与训练的数据量也越大。
20世纪八九十年代由于计算机计算能力有限和相关技术的限制,可用于分析的数据量太小,深度学习在模式分析中并没有表现出优异的识别性能。自从2006年, Hinton等提出快速计算受限玻耳兹曼机(RBM)网络权值及偏差的CD-K算法以后,RBM就成了增加神经网络深度的有力工具,导致后面使用广泛的DBN(由 Hinton等开发并已被微软等公司用于语音识别中)等深度网络的出现。与此同时,稀疏编码等由于能自动从数据中提取特征也被应用于深度学习中。基于局部数据区域的卷积神经网络方法今年来也被大量研究。
深度学习的典型模型
典型的深度学习模型有卷积神经网络( convolutional neural network)、DBN和堆栈自编码网络(stacked auto-encoder network)模型等,下面对这些模型进行描述。
(一)卷积神经网络模型
在无监督预训练出现之前,训练深度神经网络通常非常困难,而其中一个特例是卷积神经网络。卷积神经网
络受视觉系统的结构启发而产生。第一个卷积神经网络计算模型是在Fukushima(D的神经认知机中提出的,基于神经元之间的局部连接和分层组织图像转换,将有相同参数的神经元应用于前一层神经网络的不同位置,得到一种平移不变神经网络结构形式。后来,Le Cun等人在该思想的基础上,用误差梯度设计并训练卷积神经网络,在一些模式识别任务上得到优越的性能。至今,基于卷积神经网络的模式识别系统是最好的实现系统之一,尤其在手写体字符识别任务上表现出非凡的性能。
(二)深度信任网络模型
DBN可以解释为贝叶斯概率生成模型,由多层随机隐变量组成,上面的两层具有无向对称连接,下面的层得到来自上一层的自顶向下的有向连接,最底层单元的状态为可见输入数据向量。DBN由若2F结构单元堆栈组成,结构单元通常为RBM(RestIlcted Boltzmann Machine,受限玻尔兹曼机)。堆栈中每个RBM单元的可视层神经元数量等于前一RBM单元的隐层神经元数量。根据深度学习机制,采用输入样例训练第一层RBM单元,并利用其输出训练第二层RBM模型,将RBM模型进行堆栈通过增加层来改善模型性能。在无监督预训练过程中,DBN编码输入到顶层RBM后,解码顶层的状态到最底层的单元,实现输入的重构。RBM作为DBN的结构单元,与每一层DBN共享参数。
(三)堆栈自编码网络模型
堆栈自编码网络的结构与DBN类似,由若干结构单元堆栈组成,不同之处在于其结构单元为自编码模型( auto-en-coder)而不是RBM。自编码模型是一个两层的神经网络,第一层称为编码层,第二层称为解码层。
人工智能、机器学习、深度学习的关系:
人工智能是一类非常广泛的问题,机器学习是解决这类问题的一个重要手段。深度学习则是机器学习的一个分支。在很多人工智能问题上,深度学习的方法突破了传统机器学习方法的瓶颈,推动了人工智能领域的发展。
三、总结:
从以上内容可以看出,Python只是一个编程工具,但是,由于在人工智能领域应用较多,因此,如果未来想往人工智能方向发展,这是必须要首先学习掌握的。
深度学习是机器学习的一个分支,可以认为是浅层次的人工智能应用。
因此,如果未来准备往人工智能方向发展,也是需要首先学习了解的。
总之,如果未来准备往人工智能方向发展,首先要学习掌握Python,这个不难,其次,要学习了解深度学习、机器学习的相关内容,这是学习人工智能的初级内容。
希望回答对您有所帮助。
是因为某个技术获得突破性进展了吗?
不只是现在人工智能这么热……在历史上它也曾经很热过一阵子。
人们总是高估了短时期内能够获得的成就,却低估长时期的成果。这是人类社会的天性,一直如此。1956年达特茅斯会议提出了人工智能的概念,当时的科学家们信心满满,希望能够在十年内让人工智能解决人类智力能解决的问题——当时的一位大牛认为让机器看见、看懂东西是非常简单的任务,让他的博士生在一个月内解决机器视觉问题。当然,结果如我们所知,这个问题直到今天还没有解决。
人工智能是一个极其重要的领域。也正因为如此,人们对它的想法也总是在几个极端之间徘徊。上世纪六十年代的人们满怀热情希望解决自然语言问题,希望能在几年内制造出万能翻译机,让人们都能彼此理解,让巴别塔不再是废墟。但是投入了大量人力和资金之后,研究者们狠狠撞上了墙。于是人工智能的热潮迅速退去,接下来的十几年中,整个领域一片悲观,长达十几年的“人工智能之冬”就此开始。
然而,依然还有许多研究者在继续钻研——毕竟人工智能的吸引力实在太大。从上世纪九十年代开始,有一些新思路得以应用,人工智能领域又开始渐渐活跃起来。但是其中最大的变革,应该是2006年“深度学习”方法的提出。这种方法建立在神经网络的基础之上,模拟人脑的学习方法,构建多层机器学习模型。
最重要的,是这种方法具有很强的通用性,可以让机器“学会”如何理解真实世界中的对象。于是从图像识别、机器翻译直到作曲和写作这些领域,都有了深度学习的尝试;其中自然语言处理发展的势头相当不错。
如果说人工智能的发展有哪些突破性技术的话,深度学习应该算其中一项。但是这个领域的火热,并不仅仅是由深度学习带动的;计算机工具的普及、计算能力的提升、互联网的发展,都是促成今日人工智能发展的重要因素。
如何看待华为徐直军表示AI就是暴力计算?
现阶段的人工智能主要依赖于深度神经网络(Deep Neural Network,DNN)技术,深度神经网络技术非常依赖芯片提供的算力、优质的数据集和深度神经网络的方法。单块芯片的算力是基础,多机器多芯片组成的计算集群能提供超强算力。
深度神经网络深度神经网络,是一种机器学习技术,又被成为深度学习。它主要是对已有数据集的某种模式进行学习,得到一个模型,然后就可以用模型来预测新的数据。例如,对一组图像数据进行学习后,再给定一个新的带有狗的图像,深度学习模型可以将这张图片识别为“狗”,如下图所示。深度学习模拟了生物的神经元面对外部刺激产生应激的机制,因此被冠以神经网络的名字。
整个深度学习模型是通过学习得到的,在学习的开始,模型并不能很好地预测一张图片的内容是什么,幸运的是,数据集的这张图片上标注(Label)了它是“猫”还是“狗”。深度学习模型一般随机初始化,这时候模型还不能预测一张图是什么内容,学习的过程就是不断逼近标注的过程,一般采用梯度下降(Gradient Descent)的方法,让模型从一个初始权重(Initial weight)慢慢逼近到最优效果,就可以“学到”数据集中特有的模式。这个学习的过程可以理解成一个暴力计算的过程,当数据量越大,计算机学习到得越准确,也越依赖算力。
神经网络成功的几大因素神经网络的思想其实在60年代就已经被提出,但是鉴于当年计算机的处理能力有限,无法存储和计算大规模数据,因此神经网络并没有取得像现在这样的显著效果。进入20世纪,神经网络的发展出现了转机,几个关键的因素包括:
美国芯片公司英伟达(NVidia)的显卡(GPU)在并行计算上比CPU有优势,推出了一种通用的GPU编程接口CUDA,研发人员可以使用CUDA加速计算程序,得到成千上万被的速度提升。关于GPU的介绍可以参考我的头条文章:https://www.toutiao.com/i6720379288006165003/华裔科学家李飞飞主导的ImageNet数据集项目为全世界研究者提供了一个图像视觉领域的图片库,并创立了基于此数据集的年度挑战赛。ImageNet数据集有一千五百万张高像素的图片,每张图片都标注了属于哪个分类,共计22,000个图片分类。在此之前,并没有这样大规模的标注数据集。2012年,深度学习之父Geoffrey Hinton和他的学生提出了一种深度神经网络结构,在ImageNet挑战赛中以超出第二名41%的成绩夺魁。在他们发布的论文中提到,他们利用了ImageNet提供的数据集,并使用GPU加速,以取得这样颠覆式的创新。这项创新被广泛认为是当前深度学习革命的开始,揭开了人工智能时代的序幕。可见,深度学习的发展离不开芯片提供的算力、优质的数据集和深度神经网络的方法。大数据时代,我们掌握了收集、存储和计算大规模数据的方法,深度神经网络开始大放异彩。
算力算力在深度学习中起到了基础性的作用,它能让深度学习的暴力求解时间缩短千百倍。算力由芯片提供,比如CPU、GPU、FPGA等各类芯片。以GPU为例,个人桌面电脑CPU只有2到8个CPU核心,数据中心的服务器上也只有20到40个左右CPU核心,GPU却有上千个核心。与CPU的核心不同,GPU的核心只能专注于某些特定的任务。有人把CPU比作大学教授,把GPU比作一个学校几千个小学生:同样是做加减法,几千个小学生所能做的计算,远比几十个大学教授要多得多。俗话说,三个臭皮匠,顶一个诸葛亮。大学教授的知识结构和个人能力远强于小学生,能独立解决复杂问题,小学生的知识有限,只能进行简单的计算。
上图为当前最强GPU英伟达V100的设计图,图中绿色部分密密麻麻的计算核心,共计5120个核心,一块这样的GPU售价7万人民币。华为8月刚刚发布了昇腾910芯片,直接对标这款V100,华为徐直军称华为昇腾910的算力完胜V100。
在最顶尖的人工智能场景,算力都不是单个芯片提供的,而是有一大批高性能的计算机节点组成的集群来提供的。将整个计算任务划分成很小的任务,每个节点处理一部分,最后将结果汇总。
比如Google 2018年推出的超越人类阅读理解能力的深度学习模型BERT,英伟达宣称,使用92个计算机节点组成的的共计1472块V100 显卡的大型集群来学习一个BERT模型,需要53分钟。这个集群价值近亿元人民币,这样的算力不可不谓之恐怖。详情:
https://devblogs.nvidia.com/training-bert-with-gpus/
小结算力是当前人工智能技术的基础,数据量越大,对结果要求越精确,越需要更高性能的算力支持。算力一般由多个计算机节点组成的高性能集群提供。
计算机视觉AI的算法有哪些?
从概念的提出到走向繁荣1956年,几个计算机科学家相聚在达特茅斯会议(Dartmouth Conferences),提出了“人工智能”的概念。其后,人工智能就一直萦绕于人们的脑海之中,并在科研实验室中慢慢孵化。之后的几十年,人工智能一直在两极反转,或被称作人类文明耀眼未来的预言;或者被当成技术疯子的狂想扔到垃圾堆里。坦白说,直到2012年之前,这两种声音还在同时存在。过去几年,尤其是2015年以来,人工智能开始大爆发。很大一部分是由于GPU的广泛应用,使得并行计算变得更快、更便宜、更有效。当然,无限拓展的存储能力和骤然爆发的数据洪流(大数据)的组合拳,也使得图像数据、文本数据、交易数据、映射数据全面海量爆发。让我们慢慢梳理一下计算机科学家们是如何将人工智能从最早的一点点苗头,发展到能够支撑那些每天被数亿用户使用的应用的。人工智能(Artificial Intelligence)——为机器赋予人的智能成王(King me):能下国际跳棋的程序是早期人工智能的一个典型应用,在二十世纪五十年代曾掀起一阵风潮。(译者注:国际跳棋棋子到达底线位置后,可以成王,成王棋子可以向后移动)。早在1956年夏天那次会议,人工智能的先驱们就梦想着用当时刚刚出现的计算机来构造复杂的、拥有与人类智慧同样本质特性的机器。这就是我们现在所说的“强人工智能”(General AI)。这个无所不能的机器,它有着我们所有的感知(甚至比人更多),我们所有的理性,可以像我们一样思考。人们在电影里也总是看到这样的机器:友好的,像星球大战中的C-3PO;邪恶的,如终结者。强人工智能现在还只存在于电影和科幻小说中,原因不难理解,我们还没法实现它们,至少目前还不行。我们目前能实现的,一般被称为“弱人工智能”(Narrow AI)。弱人工智能是能够与人一样,甚至比人更好地执行特定任务的技术。例如,Pinterest上的图像分类;或者Facebook的人脸识别。这些是弱人工智能在实践中的例子。这些技术实现的是人类智能的一些具体的局部。但它们是如何实现的?这种智能是从何而来?这就带我们来到同心圆的里面一层,机器学习。机器学习—— 一种实现人工智能的方法健康食谱(Spam free diet):机器学习能够帮你过滤电子信箱里的(大部分)垃圾邮件。(译者注:英文中垃圾邮件的单词spam来源于二战中美国曾大量援助英国的午餐肉品牌SPAM。直到六十年代,英国的农业一直没有从二战的损失中恢复,因而从美国大量进口了这种廉价的罐头肉制品。据传闻不甚好吃且充斥市场。)机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。与传统的为解决特定任务、硬编码的软件程序不同,机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务。机器学习直接来源于早期的人工智能领域。传统算法包括决策树学习、推导逻辑规划、聚类、强化学习和贝叶斯网络等等。众所周知,我们还没有实现强人工智能。早期机器学习方法甚至都无法实现弱人工智能。机器学习最成功的应用领域是计算机视觉,虽然也还是需要大量的手工编码来完成工作。人们需要手工编写分类器、边缘检测滤波器,以便让程序能识别物体从哪里开始,到哪里结束;写形状检测程序来判断检测对象是不是有八条边;写分类器来识别字母“ST-O-P”。使用以上这些手工编写的分类器,人们总算可以开发算法来感知图像,判断图像是不是一个停止标志牌。这个结果还算不错,但并不是那种能让人为之一振的成功。特别是遇到云雾天,标志牌变得不是那么清晰可见,又或者被树遮挡一部分,算法就难以成功了。这就是为什么前一段时间,计算机视觉的性能一直无法接近到人的能力。它太僵化,太容易受环境条件的干扰。随着时间的推进,学习算法的发展改变了一切。深度学习——一种实现机器学习的技术放猫(Herding Cats):从YouTube视频里面寻找猫的图片是深度学习杰出性能的首次展现。(译者注:herdingcats是英语习语,照顾一群喜欢自由,不喜欢驯服的猫,用来形容局面混乱,任务难以完成。)人工神经网络(Artificial Neural Networks)是早期机器学习中的一个重要的算法,历经数十年风风雨雨。神经网络的原理是受我们大脑的生理结构——互相交叉相连的神经元启发。但与大脑中一个神经元可以连接一定距离内的任意神经元不同,人工神经网络具有离散的层、连接和数据传播的方向。例如,我们可以把一幅图像切分成图像块,输入到神经网络的第一层。在第一层的每一个神经元都把数据传递到第二层。第二层的神经元也是完成类似的工作,把数据传递到第三层,以此类推,直到最后一层,然后生成结果。每一个神经元都为它的输入分配权重,这个权重的正确与否与其执行的任务直接相关。最终的输出由这些权重加总来决定。我们仍以停止(Stop)标志牌为例。将一个停止标志牌图像的所有元素都打碎,然后用神经元进行“检查”:八边形的外形、救火车般的红颜色、鲜明突出的字母、交通标志的典型尺寸和静止不动运动特性等等。神经网络的任务就是给出结论,它到底是不是一个停止标志牌。神经网络会根据所有权重,给出一个经过深思熟虑的猜测——“概率向量”。这个例子里,系统可能会给出这样的结果:86%可能是一个停止标志牌;7%的可能是一个限速标志牌;5%的可能是一个风筝挂在树上等等。然后网络结构告知神经网络,它的结论是否正确。即使是这个例子,也算是比较超前了。直到前不久,神经网络也还是为人工智能圈所淡忘。其实在人工智能出现的早期,神经网络就已经存在了,但神经网络对于“智能”的贡献微乎其微。主要问题是,即使是最基本的神经网络,也需要大量的运算。神经网络算法的运算需求难以得到满足。不过,还是有一些虔诚的研究团队,以多伦多大学的Geoffrey Hinton为代表,坚持研究,实现了以超算为目标的并行算法的运行与概念证明。但也直到GPU得到广泛应用,这些努力才见到成效。我们回过头来看这个停止标志识别的例子。神经网络是调制、训练出来的,时不时还是很容易出错的。它最需要的,就是训练。需要成百上千甚至几百万张图像来训练,直到神经元的输入的权值都被调制得十分精确,无论是否有雾,晴天还是雨天,每次都能得到正确的结果。只有这个时候,我们才可以说神经网络成功地自学习到一个停止标志的样子;或者在Facebook的应用里,神经网络自学习了你妈妈的脸;又或者是2012年吴恩达(Andrew Ng)教授在Google实现了神经网络学习到猫的样子等等。吴教授的突破在于,把这些神经网络从基础上显著地增大了。层数非常多,神经元也非常多,然后给系统输入海量的数据,来训练网络。在吴教授这里,数据是一千万YouTube视频中的图像。吴教授为深度学习(deep learning)加入了“深度”(deep)。这里的“深度”就是说神经网络中众多的层。现在,经过深度学习训练的图像识别,在一些场景中甚至可以比人做得更好:从识别猫,到辨别血液中癌症的早期成分,到识别核磁共振成像中的肿瘤。Google的AlphaGo先是学会了如何下围棋,然后与它自己下棋训练。它训练自己神经网络的方法,就是不断地与自己下棋,反复地下,永不停歇。深度学习,给人工智能以璀璨的未来深度学习使得机器学习能够实现众多的应用,并拓展了人工智能的领域范围。深度学习摧枯拉朽般地实现了各种任务,使得似乎所有的机器辅助功能都变为可能。无人驾驶汽车,预防性医疗保健,甚至是更好的电影推荐,都近在眼前,或者即将实现。人工智能就在现在,就在明天。有了深度学习,人工智能甚至可以达到我们畅想的科幻小说一般。你的C-3PO我拿走了,你有你的终结者就好了。
如何完全基于卷积神经网络实现语音识别系统?
音频特征提取的主要方法
语音信号处理领域通过对原始的频谱特征进行变换产生的波形非常多。过去虽然对原始频谱进行变换丢失了不少的语音数据信息,但是产生的多种变换特征促进了语音识别和语音情感分类系统的识别率提升。比较典型的除了短时平均幅值、短时最大幅值、共振峰、基频等,被应用最多的为梅尔频率倒谱系统(MFCC)特征。梅尔频率倒谱系数将人耳的听觉感知特性和语音信号的产生机制有机结合,其通过对频谱能量谱用三角滤波变换后得到滤波器组,然后取对数,最后进行反离散余弦得到MFCC,在语音情感分类领域利用39维的MFCC系数取得了一定的突破,但是MFCC丢失了很多原始信息,而利用卷积神经网络进行学习时越原始的数据带来越好的效果。原始频域不仅保留更多的信息,而且可以使用卷积和池化(pooling)操作表达处理语音多变性。这里根据Sainath等人[2]提出的通过学习定义在能量谱上的滤波器数组参数作为输入特征。(见图3)
(1)具体处理过程如下:
(2)首先读取音频时域数据和采样率。
(3)对时域数据进行分帧处理。
(4)对分帧数据加汉明窗。
(5)进行傅立叶变换转化为频域数据。
(6)利用滤波器组进行变换每一帧得到40组梅尔滤波器组特征。
(7)进行归一化操作。
(8)对音频进行裁剪,裁剪的音频帧数为40。
3 使用卷积神经网络进行音频情感分类
3.1 卷积神经网络
人工神经网络提出于20世纪80年代,由单层感知机逐步发展为多层感知机,它从信息处理角度对人脑的神经元进行抽象。大量的节点之间相互连接,每个节点都有特定的激励函数。在早期发展阶段,由于梯度爆炸问题和计算能力有限,神经网络的发展一直停滞。2006年Hinton提出了深度置信网络(Deep Belief Network,DBN)的深度产生模式[3]。使用这种算法可以更好地初始化DNN的训练,从而开启了深度学习发展的新篇章。
卷积神经网络(Convolution Neural Network)为深度学习在目标识别和分类领域的较早应用。近年GPU计算能力增加和海量业务数据的出现,使得大规模的CNN在机器视觉和语音分类等领域得到了广泛应用。 卷积神经网络本质是一种前馈神经网络,卷积神经网络有3种结构上的特征:局部连接、权重共享以及空间或时间上的次采样。卷积神经网络的层与层之间采用局部连接,减少了计算量。
卷积神经网络的层与层之间的连接权值是共享的,比如图4中的m层与m-1层,每个m层神经元与3个m-1层的神经元进行连接,这个3个连接的权值是一样的。实际应用中,可以通过设置多种不同的滤波器来提取不同的滤波参数,从而实现提取不同的目标特征。例如对于图像而言,就是提取不同的图像边缘。在卷积神经网络中隐藏层的参数个数和隐藏层的神经元个数无关,只和滤波器大小和滤波器的种类有关系。
卷积神经网络除了局部连接和权值共享的特性,纠正线性单元(ReLU,Rectified Linear Units)激活函数也保证了实际训练中的单边抑值和稀疏特性,同时为了保证泛化特性,采用L2/L1正则化范数作为激活偏置。
3.2 具体实现
(1)输入层:输入按帧数进行裁剪的音频40×40。
(2)卷积层1:滤波器大小为3×3,共有20个滤波器,得到20个大小为36×36的特征映射。
(3)池化层1:卷积层1后面跟着子采样层。子采样层的目的是减少特征映射的神经元个数。通过池化操作,可以大大降低特征的维数,避免过拟合。最大子采样函数的定义为:
(1)
该层采用最大子采样方法,由特征映射中2×2的领域点采样为1个点,也就是4个数中最大的。最终的特征映射数目为18×18。
(4)卷积层2:滤波器大小为3×3,采用40组滤波,最终特征映射的数目为16×16。神经元的个数共有40×16×16=10240。
(5)池化层2:采用2×2的池化操作,特征映射数目为8×8。
(6)卷积层3:采用的滤波器大小为3×3,采用60组滤波器,最终特征映射的数目为6×6,神经元的个数为60×6×6。
(7)池化层3:得到特征映射数目为3×3。
(8)卷积层4:采用滤波器大小为2×2,采用80组滤波。特征映射数目为2×2。
(9)全联接层:共有80×2×2=320个神经元。
(10)输出层:通过softmax回归算法将特征映射到目标的6个分类。softmax是logistic回归的多类形态。利用softmax函数定义目标y=c的后验概率为:
(2)
对于样本(x,y),输出目标y={1,…,C}。我们用C维的one-hot向量表示输出目标。对于类别C
(3)
具体表现见图5。
4 测试与验证
验证采用CASIA汉语情感语料库。该数据库由中科院自动化所录制,由4位录音人(两男两女)在纯净录音环境下(信噪比约为35 dB)分别在5类不同情感下(高兴、悲哀、生气、惊吓、中性)对500句文本进行演绎而得到,16 kHz采样,16 bit量化。经过听辨筛选,最终保留其中9 600句。
输出结果测试:见图6。
在epoch次数为200时准确率达到81%。


还没有评论,来说两句吧...