写点什么

EmoPy:一个用于面部表情识别的开源工具包

  • 2018-11-26
  • 本文字数:1682 字

    阅读完需:约 6 分钟

EmoPy:一个用于面部表情识别的开源工具包

Angelica Perez 在最近的一篇 ThoughtWorks 博客中分享了一个新开源项目的相关信息,这个项目旨在提供交互式电影体验。该项目就是 EmoPy,专注于面部表情识别(FER)。利用所提供的工具包,开发者可以根据传递给服务的图像准确预测情绪。


Perez 将 FER 定义为“一个更广泛的计算机视觉领域的图像分类问题”。计算机视觉是一个热门话题,它吸引了许多大型云提供商的投资,从而实现通过公共 API 自主访问这些机器学习模型。但挑战在于,这些服务背后的模型和算法并没有公开提供,访问高质量数据集也很困难。Perez 解释了 EmoPy 的不同之处:


我们的目标是扩大公众对这一关键新兴技术的接触,因为目前的开发通常在商业上是对外封闭的。我们欢迎外界多提问题,也欢迎来自开源开发社区的源代码贡献,希望 EmoPy 能为开发者的项目提供帮助。


获得 FER 训练模型是非常重要的,常用的一套标准的情绪分类包括:


1、生气


2、厌恶


3、恐惧


4、快乐


5、悲伤


6、惊讶


7、中性(平静)



EmoPY 工具包是 ThoughtWorks Arts 项目的一部分,ThoughtWorks Arts 旨在孵化艺术家关于社会和技术的项目。ThoughtWorks 团队支持常驻艺术家 Karen Palmer 创作了一个叫 RIOT 的交互式电影体验。


RIOT 将观众放置在屏幕前,给他们看一个有争议的视频。这些视频是根据包括抢劫者和防暴警察在内的暴乱情况剪辑制作的。我们用网络摄像头记录和分析观众的面部表情,并将其加载到 EmoPy 中。



EmoPy 是受 Hongying Meng 博士的研究启发,从零开始创建的。EmoPy 的核心要求包括:


  • 神经网络结构包括依次向对方提供输出的层。这些结构的性能在很大程度上取决于组成神经网络结构的层的选择和排序。

  • 选择数据集非常重要,因为图像库越大,模型的准确性和可概括性就越高。如今,可用的公共数据集并不多。EmoPy 还可以利用微软 FER2013 和扩展的 Cohn-Kanade 数据集。FER2013 数据集包含了 35000 多种面部表情,涵盖了七种情绪类别,包括愤怒、厌恶、恐惧、快乐、悲伤、惊讶和平静。Cohn-Kanade 数据集包含的是面部表情序列,而不是静态图像,这些序列展现了面部表情之间的转换。Cohn-Kanade 数据集包含 327 个序列。



  • 训练过程是 ThoughtWorks 团队下一步要考虑的问题。该过程包括神经网络和选定数据集的训练。数据集分为两部分:训练集和验证集。这个过程包括:

  • 训练集中的图像被用来训练神经网络,在神经网络中,情绪预测是基于加权和参数进行评估的。

  • 然后神经网络将预测的情绪和真实的情绪进行比较,计算出损失值。

  • 这个损失值将被用于调整神经网络的权重。这个迭代过程可以使预测模型变得更加智能和准确。

  • 验证集用于测试经过训练的神经网络。对 Thoughtworks 团队来说,拥有两个不同的数据集是非常重要的。通过使用与训练集不同的图像集,他们能够更客观地评价模型。使用这种方法还可以防止“过度拟合”,即“当神经网络能够从训练样本中很好地学习模式时,反而会导致神经网络在给定新样本时无法推广学习”。当发生过度拟合时,训练集的准确率远高于验证集。

  • 测量性能是 EmoPy 的最终要求。ThoughtWorks 团队试图测试出,在基于训练集和验证集预测情绪时,结构的准确性如何?在获得的结果中,ConvolutionINN 模型性能最好。在厌恶、快乐和惊讶等情绪集中,神经网络能够从 10 张从未见过的图片中正确预测 9 张。虽然厌恶、快乐和惊讶的准确率很高,但其他情绪的准确率并没有那么高。分类错误是有可能出现的,尤其针对恐惧这一情绪,就很容易分类错误。处理这些错误分类的最佳方法是使用尽可能大的数据集。


EmoPy 项目正在积极寻找贡献者。无论你是想为项目做出贡献,还是只是使用它,我们的项目团队都无限制的许可,使它尽可能地提供给最广泛的受众。


项目地址:


https://www.thoughtworks.com/insights/blog/emopy-machine-learning-toolkit-emotional-expression


查看英文原文:


https://www.infoq.com/news/2018/10/EmoPy-Computer-Vision

活动推荐


12 月 7 日北京 ArchSummit 全球架构师峰会上,来自 Google、Netflix、BAT、滴滴、美团 等公司技术讲师齐聚一堂,共同分享“微服务、金融技术、前端黑科技、智能运维等相关经验与实践。详情点击 https://bj2018.archsummit.com/schedule


2018-11-26 16:0648769
用户头像

发布了 21 篇内容, 共 14.3 次阅读, 收获喜欢 14 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

【架构视角】一篇文章带你彻底吃透Spring

潘大壮

spring 后端 springboot 后端开发

Apache APISIX Summit ASIA 2022——5月20日开启开源生态探索之旅

API7.ai 技术团队

网关 API网关 APISIX 开源生态 summit

没想到我也可以入职阿里,两年CRUD,二本毕业,备战两个月面试阿里,侥幸拿下offer定

Java架构追梦

Java 程序员 后端开发

低通信量是筛选分布式多方安全计算常用安全协议方案的先决条件

易观分析

安全多方计算 低通信量

【高并发】如何使用互斥锁解决多线程的原子性问题?这次终于明白了!

冰河

并发编程 多线程 协程 异步编程 精通高并发系列

蚂蚁三面被挂,幸获内推,历经5轮终于拿到口碑offer

Java架构追梦

java面试 后端开发 程序员面试 大厂Offer

总结JAVA全栈知识点,七面阿里成功斩获P8Offer

Java架构追梦

程序员 java面试 后端开发

【堡垒机】2022年网络安全堡垒机厂商排名看这里!

行云管家

网络安全 堡垒机 移动云 网络安全堡垒机

我以为自己MySQL够牛逼了,直到看到了Alibaba的面试题,是我不配了。。

Java架构追梦

Java 后端开发 MySQL 运维 程序员面试

netty系列之:可能有人听过ThreadLocal,但一定没人听过ThreadLocal对象池

程序那些事

Java Netty 程序那些事 4月月更

恒源云(Gpushare)_VSA:一个可变形尺寸窗口自注意力模型

恒源云

深度学习 GPU算力

百度ToB垂类账号权限平台的设计与实践

百度开发者中心

OneFlow学习笔记:从OpExprInterpreter到OpKernel

OneFlow

数据结构 学习笔记 虚拟机 代码 oneflow

大数据培训Spark SQL知识点与实战分析

@零度

spark 大数据开发

划重点,2022 常见的面试题和八股文都为大家总结出来了

Java架构追梦

程序员 java面试 后端开发 Java面试八股文

【三级等保】三级等保办理流程经验大分享

行云管家

网络安全 等保 等级保护 等保三级 等保2.0

浅谈小程序开源业务架构建设之路

百度开发者中心

知乎疯传3W次,堪称最强Java面试题,顺利拿下京东T5的35K*16 薪 Offer...

Java架构追梦

程序员 java面试 offer 后端开发

云电脑的四重守护,安全有谱

天翼云开发者社区

安全 云电脑

蒙牛乳业加入星策开源社区,携手推动企业智能化转型建设

星策开源社区

人工智能 机器学习 企业数智化 智能化转型

原生JavaScript灵魂拷问(二),你能全部答对吗?

战场小包

JavaScript 前端 4月月更

KMRE 再升级!你们想要的功能它来了~

优麒麟

开源 软件 安卓 优麒麟 KMRE

使用xdebug调试php详细教程

CRMEB

神秘男嘉宾登场,引爆全场灯光?

龙智—DevSecOps解决方案

Atlassian Confluence confluence插件

基于SpringBoot2+redis+Vue商管系统,秒杀等,可二次开发接私活

Java架构追梦

Java spring 后端开发

已开源,就等你来!优酷动态模板研发体系为分发提效30%!

阿里巴巴文娱技术

开源 前端 开发工具 移动开发 开发框架

已开源!分发业务看过来【跨端动态模板引擎】

阿里巴巴文娱技术

ios android 开源 开发工具 移动开发

国产ETL自动化运维调度工具 TASKCTL 控制容器概述

敏捷调度TASKCTL

大数据 DevOps 分布式 自动化运维 Kafka ETL

三生万物,万企明道|明道云发布三周年

明道云

EmoPy:一个用于面部表情识别的开源工具包_AI&大模型_Kent Weare_InfoQ精选文章