基于概率态受限玻尔兹曼机级联的人脸检测方法

文档序号:9646797阅读:346来源:国知局
基于概率态受限玻尔兹曼机级联的人脸检测方法
【技术领域】
[0001] 本发明属于生物特征识别及信息安全的技术领域,特别涉及一种基于概率态受限 玻尔兹曼机(P-RBM)级联的人脸检测方法。
【背景技术】
[0002] 人脸检测一直是计算机视觉和模式识别领域一个非常活跃的研究课题,它具有不 易被观测对象发现的显著优势。伴随着视频网络的覆盖程度迅速增长,视频人脸检测由于 在视频监控、智能化设备、智慧城市以及安全等领域所具有的应用价值受到越来越多的关 注。但是由于视频图像是在自然环境下采集的,因此检测背景多变,且人脸在竖直或水平方 向具有一定的旋转角度,这给基于视频帧的人脸检测带来了一定的困难。而在现有的人脸 检测算法中,基于机器学习的检测算法虽然不会受到人为选定先验知识或者匹配特征所带 来的局限性的影响,但是传统的浅层机器学习网络在有限样本和计算能力的限制下,如果 设计的相对简单,则有较好的鲁棒性,但分类正确率不高;如果采用复杂结构,可以实现较 高的正确率但鲁棒性差。
[0003] 多隐藏层神经网络模仿人类的学习层次,通过建立类似于人脑分层次分析问题的 机制,对输入数据逐级提取从底层到高层的特征,从而建立从底层信号到高层语义的映射 关系。同时,多隐藏层神经网络通过学习隐藏在数据内部的关系,从而使得学习到的特征更 具有推广性和表达力。逐层贪婪学习算法的提出使得以受限玻尔兹曼机为核心的多隐藏层 神经网络得以实现。目前多层受限玻尔兹曼机神经网络已经在语音识别,图像识别,自然语 言处理,搜索广告点击率预估等领域取得了较好的研究成果,但是根据已经公开的文献资 料,多层受限玻尔兹曼机神经网络还未在人脸检测上面得到应用,并且受限玻尔兹曼机中 神经元对信号的响应状态和人脑神经元的真实响应状态并不十分相符。

【发明内容】

[0004] 本发明的目的就是根据人脑神经元的激活响应状态,提出一种基于概率态受限玻 尔兹曼机(P-RBM)级联的人脸检测方法,本发明方法以概率态受限玻尔兹曼机(P-RBM)为 核心,构建级联型P-RMB神经网络,并将其应用于人脸检测领域。
[0005] 本发明具体包括如下步骤:
[0006] 步骤1、根据人脑对图像分层次学习过程,以P-RBM为基础,构建一个具有一层可 视层、四层隐藏层和一层分类层的级联型P-RBM神经网络,其中可视层与隐藏层构成一个 P-RBM、相邻的隐藏层亦构成三个P-RBM,从而组成四层级联P-RBM结构;
[0007] 步骤2、利用逐层贪婪学习算法和对比差异算法训练四层级联P-RBM结构;然后 利用交叉熵和共辄梯度法训练分类层,最后再利用交叉熵和共辄梯度法优化整个级联型 P-RBM神经网络;
[0008] 步骤3、利用肤色椭圆拟合算法提取人脸候选区域,再将候选区域逐个输入至级联 型P-RBM神经网络,根据分类层的分类结果完成候选区域的人脸分类,从而实现人脸检测。
[0009] 步骤1所述级联型P-RBM神经网络由一层可视层、四层隐藏层以及一层分类层组 成;其中可视层神经元数为输入图片维数;第一隐藏层神经元数大于可视层神经元数,且 之后相邻的隐藏层的神经元数逐层递减;分类层为两个神经元。
[0010] 步骤2所述的利用逐层贪婪学习算法和对比差异算法训练四层级联P-RBM结构; 具体如下:
[0011] 2-1、将训练样本输入四层级联P-RBM结构,即将输入图像的像素值归一化后逐个 赋给可视层神经元,作为其初始激活状态;
[0012] 2-2、根据单个P-RBM的性质获得隐藏层神经元被激活的概率P:
[0014] 其中卜表示隐藏层第j个神经元;V表示可视层;b^表示隐藏层中第j个神经元 的偏置;Wj表示相邻层连接权值W的第j列;
[0015] 所述的P-RBM的性质为同一层神经元彼此之间条件独立的性质;
[0016] 2-3、采用对比差异算法调整网络参数,完成单个P-RBM训练,网络参数的更新公 式具体如下:
[0017]Δ¥^=momentum*ΔwiS+ε(<vihj>P〇-<vihj>P1-wcost*wis)
[0018] Wij=wΔ
[0019]Λbj=momentum*Λbj+ε(<hj>p0-〈hj>P1)
[0020] bj=bj+Δbj
[0021] Δ〇;=momentum*Δc;+ε(<vi>P〇-<vi>P1)
[0022] cx=cx+Δcx
[0023] 其中ΛWlj,Λbj,ΛCl分别表示相邻层连接权值W的第i行第j列的更新量,隐藏 层中第j个神经元的偏置的更新量,可视层中第i个神经元的偏置的更新量;Vl表示可视层 第i个神经元;Cl表示可视层第i个神经元的偏置;表示数据在Pi下的均值;ε表示 学习率;momentum表示动量因子;weC]St表示权重衰减因子;
[0024] 2-4、在获得单个P-RBM最优参数情况下,求得第一隐藏层神经元的概率值,然后 把该概率值作为第二个P-RBM的输入数据,即在此时,第一隐藏层变为了第二隐藏层的输 入层,然后按照第一个P-RBM的训练方式训练该P-RBM,直至训练完四个P-RBM。
[0025] 步骤2所述的利用交叉熵和共辄梯度法训练分类层,具体如下:
[0026] 2-5、获取第四隐藏层神经元的概率,并将第四隐藏层作为分类层的输入层,具体 的:采用sigmoid函数作为传递函数,将第四隐藏层的数据传递至分类层;然后根据分类结 果和真实结果的交叉熵来判断该神经网络的分类性能;交叉熵的值越小则表示分类准确率 越尚;
[0027] 2-6、采用共辄梯度法来调整分类层参数,从而使交叉熵最小即神经网络分类性能 最优,具体如下:
[0028] 1)、从初始化参数值X(1) =(Wdm, 开始,计算交叉熵/y(Kih在该参数值下的 梯度gl=(#-厂,)(々-,>"-!);
[0030]2)、若I|gl||〈σ,则X(1)为所求的极小值点,即此时的网络参数是最优参数,结束 调整;否则在最优搜索步长λJ沿负梯度方向d⑴=-g遛索到点X(2) =X(1)+λlCl(1);
[0031]3)、计算交叉熵if(pj)在点x(2)下的梯度g2 =((>-;
[0032] 若||g2||〈σ,则x(2)为所求的极小值点,即此时的网络参数是最优参数,结束 调整;否则在最优搜索步长λ2下沿d(1)的共辄方向d(2)= _g2+i32d(1)搜索到点X(3)= X⑵+A2d⑵;
[0033]重复步骤3),直至满足条件或者完成所要求的迭代次数Ν;当超过迭代次数Ν时, 结束调整,并将第Ν次迭代时的调整结果最为最优参数;

[0034] 表示第k次搜索时的最优搜索步长; ,. 子;σ表示所要求的精度;w^ss表示分类层与第四隐藏层的连接权值,B^ss表示分类层偏 置W表示数据的真实结果,!>表示数据的分类结果,H4表示第四隐藏层。
[0035] 步骤2所述的利用交叉熵和共辄梯度法优化整个级联型P-RBM神经网络,即将训 练获得的P-RBM和分类层单个最优参数优化为整个神经网络的最优参数;具体如下:
[0036] 1)、从初始化参数值X-(Wclass?^classJW4,B4,W3,B3,W2,B2,Wu开始,计算交叉熵 mp力在该参数值下的梯度& = ((A-ff);
[0037] 2)、若I|gl| |〈〇,则χ
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1