揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

86357811 2020-04-15

本文转自雷锋网,如需转载请至雷锋网官网申请授权。

躺尸接近三个月的OpenAI博客终于有了更新,这次它为AI研究者带来的作品是“OpenAI Microscope”,中文译名OpenAI 显微镜。

意为可以像实验室中的显微镜一样工作,帮助AI研究人员更好地理解神经网络的结构和特征。

揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

博客地址:https://openai.com/blog/microscope/


说到底,这个显微镜更像是一个神经元可视化库,里面包含了历史上重要且普遍研究的计算机视觉模型,如2012年ImageNet挑战赛冠军AlexNet,2014年的ImageNet冠军GoogleNet(又名Inception V1)和ResNet v2。

OpenAI Microscope

揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

显微镜地址:https://microscope.openai.com/models

如上图所示,初始版本包含8个计算机视觉领域的神经网络模型。每个神经网络都用可视化的形式展示了一些重要神经元的内部结构。

OpenAI在研究中提到:现代神经网络模型强大的能力来源于成千上万个神经元相互作用,

但神经元之间的“协作”一直是个迷,OpenAI 发布的这个显微镜能够帮助快速探索这些神经元。

例如,一位研究人员可能会推测:InceptionV1 4c:447 is a car detector which is built from a wheel detector (4b:373) and a window detector (4b:237)。
InceptionV1 4c:447是由车轮检测器(4b:373)和车窗检测器(4b:237)组成的汽车检测器。那么,用OpenAI 显微镜就可以评估该推测,并发现新事物。

揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

如,OpenAI显微镜对AlexNet的观察,如上动图所示,从最初的一张完整图片开始,经历了神经网络提取特征,最后图片会“虚化”成一些彩色线条。

揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

(雷锋网(公众号:雷锋网))

这中间发生了什么?显然,弄清楚神经网络中间的运行过程非常重要。

如上,点击神经网络的每一层,OpenAI 显微镜都会对处理图片的过程进行可视化的展示,具体到每一个神经元都会对应一张处理后的图片。非常清晰的展示了每一张图片的“渐进”过程。

据OpenAI介绍,这种探索神经元的过程,对另一份神经网络可解释性研究《Zoom In: An Introduction to Circuits》提供了意想不到的帮助。

“显微镜”技术基于两个概念:模型中的位置和技术。形象一些的讲,位置就是你把显微镜对准的地方,技术就是你给它贴上什么样的透镜。

模型由“节点”(神经网络层)图组成,这些图通过“边”相互连接。每个操作包含数百个“单元”,大致类似于神经元。

值得注意的是,其使用的大多数技术仅在特定分辨率下才有用。例如,特征可视化只能指向一个“单元”,而不是其父“节点”。
另外,在给出这个工具的同时,OpenAI也给出了几点对可解释性研究的贡献:
1、所有的模型和可视化都已经开源,且“显微镜”中所有的可视化都是用lucid库生成。
2、能够将模型和神经元相互联系起来,可以立即对神经元进行审查和进一步探索。
3、可访问性,通过共享可视化研究,保持高度的可访问性。
正如生物学家专注于研究少数“模型生物”一样,“显微镜”也专注于详细探索少数模型。OpenAI的初始版本包括九个常用的视觉模型,未来几个月会扩展到其他模型。
也就是说,目前仅提供DeepDream和函数可视化功能,尚未支持定制模型可视化探索。

可解释性研究:源于DeepDream

可解释性和确定性在机器学习系统方面是一个宽泛的话题,设法了解神经网络在那些层的函数中具体在做什么是一大挑战。

但弄清楚应该如何选择初始化参数这类问题,必须了解神经网络的本质。

AI研究员们也一直朝着这个方向努力。除了Microscope下的神经元可视化之外,近年来的一些工作也试图可视化机器学习模型。

揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

(雷锋网)

例如,Facebook在去年春天推出的Captum,便尝试了使用可视化技术来解释机器学习模型做出的决策。作为基于 Pytorch 的一个模型解释库,其功能强大、灵活且易于使用,并为所有最新的算法提供了解释性,能够帮助研究人员及开发者更好地理解对模型预测结果产生作用的具体特征、神经元及神经网络层。

在当时,Facebook也推出了Captum Insight 的试用版,基于 Captum 构建,提供了解释性的可视化功能。

而在2019年3月,OpenAI和谷歌也曾发布用于可视化机器学习算法做出的决策的激活地图技术(Activation Atlases);

揭开黑盒一角!OpenAI发布“显微镜”,可视化神经网络内部结构

(雷锋网)

如果将之前的研究比作在算法的视觉字母表中显示单个字母,那么激活地图集则提供了整个字典,它能够显示字母是如何组合在一起制作实际词汇。

激活地图集建立在特征可视化的基础上,将关注点从单个神经元转移到可视化这些神经元所共同代表的空间。

显然,今天“显微镜”的这项工作也集成、借助了之前的激活地图技术。

追根溯源,所有的此类可视化研究或许可以归结为一项名为DeepDream的早期实验,这是2015年发布的计算机视觉计划,意图将任何图片变成了自身的“幻觉”版本。

DeepDream展示了google神经网络模型对输入图片的理解,类似于“深度盗梦”,由于画风诡异,其被认为在某些方面,定义了所谓人工智能美学。

相关推荐