Py学习  »  机器学习算法

深度学习助力读心术-从frmi数据中解读出你想的是那张脸

混沌巡洋舰 • 4 年前 • 479 次点击  

5月的Nature子刊自然通讯上的一篇文,可算是真黑科技,通过对大脑进行frmi的影像学检测,可以通过VAE+GAN,重现出你看到的是什么样的脸,甚至你不需要真正看到这张脸,仅仅在大脑中想象这张脸,就可以重现出这张脸长得是什么样的。





之前的同类研究,能够从大脑frmi数据中识别出你看到的是桌子椅子等不同类别的数据,但是对于人脸这样结构相近,没有明显区别的,该研究却是第一个做到的。在介绍具体使用的模型之前,先看看重现出来的效果如何:





这里展示了4名受试者对不同图片的展示,每组最左边的是展示的图片,中间的是模型重现的图片,最右边是只用PCA和GAN生成的图片。虽然对于金三胖,生成的图片并不是很写实,但还是能看出是亚洲男性与方脸这几个主要的特征的。其他几个人的生成的脸,也是能反映出其主要的特征来的。



该研究用到数据来自4位22-44岁的受试者,每名受试者在一个session中,每6秒会看到一张随机选取的名人的脸部照片,每个session共计看14张照片。一共8个session后,收集到观看脸部照片时的frmi数据,用作模型的构建。除此之外,受试者还被要求在看过的20张脸中想象一张脸(此时受试者看着灰色的照片),以此来验证模型能否重构出想象的脸的样子。



之后简述这背后的网络结构,首先是对图像信息进行编码,通过一个编码器,将脸部的图像数据表征到1024维的一个特征空间中,之后训练生成器来生成与原图相近的图像,最后在通过判别器来决定生成的图片是真的还是假的。模型的套路就是基本的对抗学习,只是在编码阶段加上了降噪自编码器,右图展示的是在1024维的特征空间,能够通过对某一特征的改变,让图片从微笑变得不微笑,从而展示在深度网络提取出了脸部的抽象特征。





有了这一步,在给受试观看脸部照片时,VAE会将图片映射在之前训练好的特征空间上,同时记录看图时的脑部frmi数据,使用线性回归,拟合相关的权重矩阵。而在测试阶段,根据拟合好的矩阵,用frmi数据生成1024维的特征向量,之后通过之前训练好的生成器来生成重构的图像,为了对比深度网络的效果,这里选择将PCA作为传统方法,从这里可以看到之前展示的图中最左边的一组不那么清晰的图片。




接下来说说量化的评价,如何确定模型能够从大脑数据中获知受试者想的是哪一张脸了?实验人员先让受试想象20张脸中的一张,之后随机选出两张图片,其中一张是受试正在想象的那张脸,通过对frmi数据乘以训练时线性回归得出的矩阵,在特征空间上判断对应的数据点是否和正确的图像更近,从而进行俩俩比较,下图展示的是使用不同脑区的frmi数据,判定想象中图片的准确度。


对比实际看图时的识别准确度,可以得出俩点,在想象时使用的脑区和观看时完全不同,观看时使用全部脑区的frmi数据判别的的准确度最高,而在想象时,使用全脑区判定的结果还不如随机猜测,而只使用和记忆与情感有关的脑区(颞叶 temporal lobe)时效果最好,这多半时由于你在想象一张脸的时候,多半大脑会想到别的什么东西吧;其次是相比与看到的,模型的判别准确度不够好,毕竟在模型的权重矩阵是基于看到一张脸的frmi数据拟合出来的,如果能够根据想象的脸来拟合权重矩阵,预期判别效果会更好一些。



该模型生成的脸部图片,按照性别来分,能够明显的区分开,下图右上是生成器根据frmi数据生成的男性脸的平均脸,左下是女性的平均脸。而在判定性别上,只使用和处理视觉信号相关的枕叶(occipital lobe)的效果最好。这里说明了该研究的可以不止用在读心术上,例如判断你看到/想到的人的性别种族年龄,以及脸部的表情,还可以通过判断具体哪个脑区的数据最有组与判别不同的特征,可以助力神经科学对大脑的研究。




总结来看,该研究借用了机器视觉领域成熟的模型,通过对抗学习提取特征,之后使用最简单的线性回归就能够实现读心术,而且处理的是脸部特征这样的精细的区别。该研究的成果作者进行了开源,有兴趣的读者可以基于该研究,进一步的去探索读心术的边界,例如作者的脑洞,能否对短视频,根据脑部的图像,按照内容进行分类。


更多阅读

深度学习助力可穿戴设备提前预警高血压

深度学习在医疗与生物界的应用概述


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/35628
 
479 次点击