热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

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

第一篇博客就不用Markdown(什么鬼)来写了。今天主要是被老板一通说,然后说两月看10篇paper,算了,还是丫丫自己先多码码论文吧。再加之这几天有开博的想法,就索性一起开了,顺道总

第一篇博客就不用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结合。



推荐阅读
  • 本博文基于《Amalgamationofproteinsequence,structureandtextualinformationforimprovingprote ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本文介绍了腾讯最近开源的BERT推理模型TurboTransformers,该模型在推理速度上比PyTorch快1~4倍。TurboTransformers采用了分层设计的思想,通过简化问题和加速开发,实现了快速推理能力。同时,文章还探讨了PyTorch在中间层延迟和深度神经网络中存在的问题,并提出了合并计算的解决方案。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 建立分类感知器二元模型对样本数据进行分类
    本文介绍了建立分类感知器二元模型对样本数据进行分类的方法。通过建立线性模型,使用最小二乘、Logistic回归等方法进行建模,考虑到可能性的大小等因素。通过极大似然估计求得分类器的参数,使用牛顿-拉菲森迭代方法求解方程组。同时介绍了梯度上升算法和牛顿迭代的收敛速度比较。最后给出了公式法和logistic regression的实现示例。 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • angular.element使用方法及总结
    2019独角兽企业重金招聘Python工程师标准在线查询:http:each.sinaapp.comangularapielement.html使用方法 ... [详细]
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • 3年半巨亏242亿!商汤高估了深度学习,下错了棋?
    转自:新智元三年半研发开支近70亿,累计亏损242亿。AI这门生意好像越来越不好做了。近日,商汤科技已向港交所递交IPO申请。招股书显示& ... [详细]
  • 当写稿机器人真有了观点和感情,我们是该高兴还是恐惧?
    目前,写稿机器人多是撰写以数据为主的稿件,当它们能够为文章注入观点之时,这些观点真的是其所“想”吗?最近,《南 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 1关于字符串相邻的两个或多个字符串字面值(引号引起来的字符)将会自动连接到一起:str_catpython!str_cat输出:python!把很长 ... [详细]
  • 师者,所以传道授业解惑。以师品正学生之人品,以灼灼教导,引学生于正路。请允许笔者犯一下规——笔者在这篇文章中将阐述四位老师。青春懵懂长愧于心这部分笔者将说到初中时期的两位竞赛带队老 ... [详细]
  • 驭势科技签约禾赛科技,携手推进“全场景”自动驾驶商业化
    2021年12月8日,全球领先的激光雷达公司禾赛科技和自动驾驶商业化全球领跑的公司驭势科技共同宣布,双方达成战略合作协议。根据协议,禾赛将 ... [详细]
author-avatar
终-极-幻-想
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有