您的位置:首页 > 其它

基于深度学习的人脸表情识别(一)

2016-03-08 19:40 411 查看
第一篇博客就不用Markdown(什么鬼)来写了。

今天主要是被老板一通说,然后说两月看10篇paper,算了,还是丫丫自己先多码码论文吧。再加之这几天有开博的想法,就索性一起开了,顺道总结下最近看的一篇中文的


Facial Expression Recognition 的文章。


主要是找了 浙理工的施徐敢的毕设论文和他的一篇《融合深度信念网络和多层感知器的人脸表情识别》,再结合DL_toolbox里的DBN实例做个总结。再有其他什么想法再陆陆续续发哈。(轻喷。。。)


DBN(深度信念网络)的关键部分都是RBM(受限玻尔兹曼机)(Restricted Boltzmann Machines, RBM)的步骤,所以先放一张rbm的结构,帮助理解(网上找的图)。










V是可视层,h是隐藏层。b,c是相应的偏置单元(或者是b,a)。其对RBM的训练过程为如下:






其中某些公式的推导可参考

http://blog.csdn.net/hanzihan123/article/details/23707143


伪代码如下





当RBM训练好后,对其叠加便构成DBN了。即DBN是一种深度学习结构,它是由多个受限玻尔兹曼机(RBM)叠加而成.


DBNs 的工作原理是:低层的输出作

为下一层的输入,下一层的输出再作为更高一层的输入,以此传递,通过微调参数和权重偏置来增强 DBNs 的抽取性能,结构如下图 所示





但DBN只能用来训练学习,是一种无监督学习模式,而无法单纯用来分类识别,故这里可结合多层感知器(MLP,Multilayer Perceptron)来进行识别。

MLP 神经网络模型:

多层感知器是一种前馈人工神经网络模型,其把输入层的多个数据集映射到唯一的输

出层的数据集上。多层感知器的神经网络模型是由很多层神经元模型组成的,而每个节点都是一个独立的神经元模型。

深度信念网络与多层感知器的融合的方法包括DBN的学习,MLP 初始化和人脸表情识别。深度信念网络的特征学习,包括模型中的预训练和微调,对提取的原始人脸表情图像的初级特征(原始像素特征)

进行学习,得到更高层次的抽象特征。由于 DBNs 实际上是一种含有多层隐藏层的深度学

习神经网络,提取得到的更高层次的抽象特征可以用在每一个 DBNs 的隐藏层中。在这项

工作中,DBNs 的最高隐藏层学习得到的抽象特征用来初始化传统的多层感知器(MLP)

模型中的隐层网络权重值。被初始化的 MLP 模型具有和 DNBS 模型相同的参数,比如隐

藏层的数目,每个隐藏层上的节点数,以及每个隐藏层的权重。最后,我们使用初始化的

MLP 作为分类器来进行人脸表情识别。

这里主要是讲用于分类识别的MLP将用于学习的DBN结合一起,关键是将DBN得到的 参数应用于多层感知器的初始化,即指建立一个在隐层层数、 隐层节点数、 以及每一层隐层的网络权重值三个

方面上, 与训练好之后的深度信念网络完全一样的多层感知器模型. 这个就是其创新点所在。

所以,往后可以思考:

(1)是否可用CNN替换DBN

(2)是否可用其他分类法来于DL结合。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: