pg下载 孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

频道:生活应用 日期: 浏览:3

1. 介绍卷积神经网络的基本原理和工作流程

阐述卷积神经网络之中的四大基本构成部分,分别是池化操作,激活函数,全连接层,目标函数。

3. 解析通用的人脸识别技术

雷锋网 AI 研习社将其分享内容整理如下:

今儿个我要跟大伙分享一下,卷积神经网络于人脸识别技术里的应用情况。其一啥也不说先给说深度学习和机器学习二者之间的关系,人工智能涵盖了机器学习这一子领域范畴对,机器学习它又包含着表示学习,嘿,这儿的表示学习是一种能自行抽取特征的学习方式,深度学习,它可是表示学习当中最具代表性的那一种学习类别矣。咱今儿要讲的 CNN 也就是卷积神经网络,它是深度学习当中的一类。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

学习机器的核心思想实际上就是靠着特征去学到我们所需要的知识,故而一种新的工作产生了,那便是专门从事特征工程的那一类工程师。并且特征工程的优劣,会对机器学习最终效果造成影响。科学家们便思索,可不可以让机器自行学习特征,而无需人去开展特征工程呢?结论为:能够。表示学习便是依据特征去进行学习。

使用深度学习,实际上极为简便,乃是端到端的学习方式,仅需历经三步:其一,将数据给予它(机器);其二,等待深度学习予以处理;其三,获取结果。

下面,我们来看一下我们今天要讲的卷积神经网络的发展历程:

1980年的时候,科学家提出了“神经认知”,而如今人们觉得“神经认知”乃是卷积神经网络的前身。

1998 年的时候,有两位科学家提出了卷积神经网,它叫做 LeNet,是基于梯度学习的成果。它是第一个且是大规模成功应用的图像识别理念构成。在美国当时,大量的那种邮寄工作,都需要专门的人来去完成那种报邮编、搞清晰准确无误的寄送地址呀一类的活。假若全然依靠人工去做的话。讲真效率超级低下好不好?咱寻思一个人一秒到底能麻利儿识别几个?哪怕识别速度在某些人那儿看似很快的情况下。然而,人的速度越快,出现错误的概率可能就会变得越高。所以,这个 LeNet 就被投入应用到手写数字的字符识别行列当中。并且错误率仅仅只有 1%,能够大规模地进行推广运用。

2012年,Hinton团队提出了卷积神经网络Alex-net,此团队参加了李菲菲教授的Image Net比赛,并且拿到了冠军,当时它凭比第二名提高12%的准确率而遥遥领先,以前,第一名比第二名通常仅仅会提前一、二个百分点,三、四个百分点便已算多的了,然而这一回,这个团队一次性就领先了十二个百分点。这是由于,Alex-net 首次运用了 ReLU 激活函数,还运用了最大池化,并且运用了 DROP Out,另外用到了 GPU 加速这些新的技术。

在 2014 年的时候,Google 提出了 Inception-net,其中所蕴含的核心思想乃是可进行反复堆叠操作的具备高效性能的卷积神经网络结构,其成功地把错误率降低到了 Alex-net 的一半。

在2015年的时候,微软推出的ResNet成功训练出了拥有152层的深层次网络,以往存在一些神经网络,这边进行输入,中间存在众多的神经元,然而仅仅只有一层,而增加层次的相关技术,在当时很难实现突破,微软的这个ResNet一下子增加到了152层,这算得上是一个突破,与此同时,它把错误率降低到了3.46%,再度刷新了记录。

此后,基本上每年,甚至每几个月,都会出现新一代的技术,比如新的网络结构,更深的网络的训练方法等。可以说,是CNN引领了这次深度学习的浪潮。

那卷积神经网络到底是什么?它的核心是卷积操作。

大家能够参照下图,在图的左上角存在着一个呈现为绿色的、规格是5*5的矩阵,于这个矩阵当中,有一块标记为黄色的区域,它属于一个规格为3*3的卷积核,黄色区域所具备的功能,是针对那个覆盖于与之对应的矩阵之上的数开展加权相加处理,依据这种方式计算而得出的数,也就是可以看到的处于紫色区域的数,这部分数将会被规整放置到另外一个新创设的矩阵当中。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

接着呢,往后瞧右上角所处位置的第二张图片,黄色的那片区域朝着右边挪动一位,这便是所谓一步,此“步”所指的乃是步长,其作为 CNN当中的别样参数;这里先明确一个参数是卷积核,而在这儿步长呗设定成了1步。在移动了1步之后,同样按照要求针对黄色区域开展加权求和操作,如此一来又得到了一个全新的数,并将这个新数与第一个数一同放置到紫色区域里。

整个黄色区域,我们能够把它看成是一个相框,其大小、长宽是固定不变的,顺序是从左往右、接着从上往下,移动三次,依次会出现三个全新的数,随后再依次放置到下一个矩阵里实施计算。这属于一种局部操作。原始数据,也就是5*5的输入,经过9次卷积,便能够得到卷积之后的结果。这个结果被称作卷积特征,它是一个全新的3*3矩阵,这个矩阵又作为下一层操作的输入,并且进行一些池化操作。

继而下至我们去查看一回 CNN 的工作流程。先行察阅一番几个核心的概念:其一便是我们此前谈论的卷积操作;其二可为这个同样是极为关键的池化操作;其三则是其激活函数、全连接层以及目标函数。

然后,再瞧下方这张长图。第一步,我们先将原始数据输入给它(机器),接着以像卷积层加池化层加激活函数这样的组合形式开展卷积操作,后面,再同样运用这种组合形式进行下一组卷积操作、再接着下一组、另一组接着如此一路不停地循环,一直到将所有特征全抽取出来。随后,抽取出来的所有特征跟全连接层进行对接,得出可用于预测的值,并用此预测值跟目标值去作对比。最后,机器会针对二者的差值予以修复,而后重新进行训练。这是一套完整的工作流程。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

之后我们再去瞧一瞧卷积操作,它不存在参数,我们仅仅只需为其设定最大池化以及平均池化。最大池化乃是把覆盖区域之中的最大值给提取出来——它的意图就是把最为显著的特征提取出来,将某些不太显著的特征给忽视掉。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

卷积操作有三大特点:

首先是特征不变性,我们能够去设想一张图片经过卷积之后,图片的右下角呈现为一条直线,要是在图像左上角所识别的(图形)卷积特征跟直线的卷积特征是一致的,那么左上角的这个图形必然也同样是一条直线,原因在于特征是一样的。这还是卷积神经网络当中的一个特性,也就是两个特征的相对位置相较于它们在图片里的绝对位置更为重要。

第二个特点是特征降维,我们上面所用的是5*5的矩阵,然而实际上10024*798的图片像素会消耗极大的性能,并且其中大部分属于没必要的计算,最大池化是把最显著的特征提取出来,摒弃那些不太明显的特征,以此节省一些计算资源。

第三个特点在于起到防止过拟合的作用,之所以如此,是由于所抽取的均为极其明显的特征,而这般情况能够达成防止过度拟合的效果。

接下来,我们再来瞧一瞧激活函数。以往有过从事机器学习经历的同学们,或许会碰到另外一个激活函数,也就是 sigmoid 函数,它是一条取值范围处于 0 至 1 的曲线。

下面来讲述这个ReLU函数,它能够被表示成如下这样的蓝线,此状态存在于下图之中。实际上它属于一个分段函数,当赋予函数这样的值,即小于0的时候,也就是不管是负多少的值,不管其具备怎样为负程度的数值,都会返回一个0。当去赋予它为大于或者等于0的值的时候,同样不管给出此阶段怎样的值,也就是无视给予这种情况下到底是何值,它都能够返回本身也就是X,这实际上是一个特别简单的函数。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

那激活函数到底有什么用?

打个比方,我手上握着一根针,准备去扎另一只手pg下载网站麻将胡了,初始时刻隔得很遥远,我不会感觉到疼,随后针缓缓朝着我的另一只手靠近,直至最终扎到了,我手上的这块神经就会向我的大脑传达信息,说明我的手被扎到了——我便会感觉到疼,这就等同于「激活」了。

针和,我的另一只手的,距离存在,一个阈值。当,这个距离小于,这个阈值,并且最终,完全贴近了,我的神经,就会马上告诉,我的大脑(疼),进而激活,我的「疼感」。激活函数,就是这么一个原理。机器平时训练制造,出来的一些东西,若没有达到阈值,特征,就不会被激活,而要是超过阈值,特征,则会被激活,井且被输出。

再往下,我们会以一个整体的视角,来看一下卷积神经网络的运作。先瞧下面的这张图,这是一个字母 A,首先得进行卷积操作,之后要依据设置的卷积核和步长,去找到卷积核的特征,最后将所有激活的神经元,和最后的全连接层一一对应起来,凭借矩阵乘法,看它们是否真的被激活了。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

全连接层于整个 CNN 里发挥着「分类器」的功效,该功效通常是在最后予以达成的。

接着是目标函数,在卷积神经网络里数量占比最多的回归问题,所采用的皆是欧式(Euclidean)距离,其算法如下:

我们通常选用最右边的那个公式,那个公式是求和公式,从1开始取值一直取到n,针对两个数之间的差值去进行计算。

这个欧几里得距离能起到什么作用呀?比如说存在两个目标对象,要是它们之间的距离处于相近状态,那么相似度相对而言就会比较高。所以借助计算欧几里得距离,我们能够判断它们之间是不是近似。

有关卷积神经网络的基础原理,还有几个关键核心概念,都已经介绍完毕了。接下来,我们要进入人脸识别的阶段,这一阶段总体上划分成四步:第一步是进行人脸边框的检测,第二步是开展图像校准的操作,第三步是对图像进行转向量的转换,第四步是实施向量对比的工作。

最先要做的是人脸边框检测,在一张图片之中,存在着这样一种可能性,并非仅仅只有一张脸,而是会有好多张脸同时存在,不论究竟有多少张脸,我们先行把契合人脸特征的边框找寻出来,并且将这个边框截取出来。

怎么进行截取操作呢?要先进行定位,定位是依据人脸具有的特征来开展的,就如同刚刚所讲述的那样,要是在某个特定位置存在一只眼睛,且与之对称的地方同样存在一只眼睛的话,那么这样(机器)便能够探寻到眼部所处的位置,进而也就能够寻找到眼角的那一部分。在人脸识别这个范畴里,边框特征对应的范围是极为重要的,原因在于机器凭借这些,就能够勾勒出完整的脸部位置界限。机器能够参照的主要特征当中的一个是下巴,这是由于嘴角是会出现张开、闭合情况的,然而下巴通常是不会有太大变化的。第二个主要特征是眉毛,一旦寻找到了眼睛,那么寻觅眉毛(就会便捷许多),就比较容易找到了。第三个是鼻梁、鼻尖,上、下嘴唇。

把这些全部寻到之后,就要去找出脸的边框,这边框有可能是方脸样式的,也有可能是瓜子脸样式的,还有可能是圆脸样式的 ,机器会于脸部边框之上生成一些点,随后运用图形边框,像是圆边框这种,去开展对比,发觉差了那么一点,它就会持续不断地调整系数,一直至全然契合。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

但在进行截取操作的时候,脸的周边部位是需要预留出一定的距离空间的,完全依照边框来截取是不行的,举例来说,就像上面图片内的头发那一部分,(人)存在戴着帽子这种可能性,所以机器是没办法进行完整无缺的截取工作的,而是要在其周围留出一定的空余地方,之后再把图片截取出来。要是一张脸上存在有多个点的情况,那就截取出多个脸部的边框。

其第二步是校准图像,此概念实际上跟对于计算机处理数据而生成的思路是相契合的,姑且不论你给予机器的是图片,亦或是语音,还是数字,又或者是字符串,再或者是其他类别的一些数据,它一概都会把那些数据转化为计算机能够识别的数据。

人脸校准同样要处理,要是给机器的头,它时而歪着,时而低下,时而扬起,总之姿势位置皆不正确,那就得先把脸的边框截取出来,针对每个点去开展定位工作pg下载麻将胡了安卓专属特惠.安卓应用版本.中国,就如同图里的绿点标明那样操作,接着依据这些定位点去确定出一个坐标,把这个算出来的坐标跟真正处于摆正状态的脸所对应的坐标加以对比,两者之间相差的角度,此角度便是头歪的角度数值,随后把图像朝着相反方向进行旋转,图像便会回归到正常端正的状态了。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

就是这样的效果,它极具用途,原因在于它能够削减那些不必要的误差。机器学习也是如此这般,当你给予它一堆尚未处理过的数据用以训练时,它最终训练得出的结果,不仅极有可能是不佳的,而且还有可能是截然相反的,会致使为你做出的决定全都是错误的。试举一例,像是进行商品智能推荐,要是输入的数据未曾经过处理,甚至所设定的维度都是毫无用处的,那么机器就很有可能朝着错误的方向去实施推荐。

所以说,针对数据开展操作极为关键,得设法去除那些并非必要的误差,并且要把全部的算法都设置于切实具备效用的计算之处,这般的一种思想是颇为重要的哟。

生成的图像导向,是第三个向量。怎么生成该图像导向的呢?卷积产生图像向量,池化产生图像向量,操作过后的就是生成的图像向量。向量具备大小,向量具备方向,两个向量之间夹角极小会怎样?向量会非常接近。

孙启超:卷积神经网络在人脸识别技术中的应用 | AI研习社第51期猿桌会

以比较向量间夹角的方式,能够判断两个目标有无相似之处。比如说,要判定计算机视觉相关的两篇文章是否相似,首先得找出两篇文章,接着把其中一篇文章的关键词提取出来,一个关键词就是一个向量,等所有关键词都找出来后,计算一下向量的方向与大小。另一篇文章也做同样的操作,最后机器对两组向量予以对比,若几乎重合,那就表明两篇文章的内容极为相似。向量在机器学习里所起的作用,是特别重要的。

当图像转变为向量后,便要将此向量计算得出,接着与目标函数的向量开展对比,随后运用余项定理求取它们之间的夹角,先前两篇相似文章的对比,正是运用了此定理。此向量与目标向量并非必定要全然重合,夹角处于极小的状况下,只要处于阈值范围之内,就能判定二者相似,而阈值皆是由人预先设定好的。

接下来的这一步,关键在于向量作出对比;长得一样的人脸,与之对应的向量距离会比较小;而那些不一样的人脸,其向量距离无疑就会更大。

向量计算里存在着一个名词,这个名词是内积pg下载,内积是对应元素乘积的求和,通过这种求和能够计算出刚才上面所提及到的夹角,其公式为:

。夹角越小,说明两张人脸越相似。

网友留言(0)

评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。