所有文章 > 正文

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

作者: 蒋宝尚

时间: 2020-04-16 16:16

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

202004160601.gif

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

202004160602.jpg

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

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

OpenAI Microscope

202004160603.jpg

显微镜地址: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 显微镜就可以评估该推测,并发现新事物。

202004160604.gif

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

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

202004160605.gif

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

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

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

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

值得注意的是,其使用的大多数技术仅在特定分辨率下才有用。例如,特征可视化只能指向一个“单元”,而不是其父“节点”。

另外,在给出这个工具的同时,OpenAI 也给出了几点对可解释性研究的贡献:

1、所有的模型和可视化都已经开源,且“显微镜”中所有的可视化都是用lucid库生成。

2、能够将模型和神经元相互联系起来,可以立即对神经元进行审查和进一步探索。

3、可访问性,通过共享可视化研究,保持高度的可访问性。

正如生物学家专注于研究少数“模型生物”一样,“显微镜”也专注于详细探索少数模型。OpenAI 的初始版本包括九个常用的视觉模型,未来几个月会扩展到其他模型。

也就是说,目前仅提供 DeepDream 和函数可视化功能,尚未支持定制模型可视化探索。

可解释性研究:源于 DeepDream

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

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

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

202004160606.jpg

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

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

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

202004160607.jpg

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

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

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

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

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

或许,从那时候,AI 研究人员就对神经网络模型眼中的世界产生了好奇,开启了可解释性探秘之路。

正如 OpenAI 的 Chris OlahOlah 曾经说过的那样:“在某些方面,这一切都始于 DeepDream。”

本文经授权转载自:AI科技评论,作者:蒋宝尚。感谢原作者的精彩分享。

往期回顾:

最新重磅:吃了蝙蝠的流浪狗,可能才是人类感染新冠病毒的源头!

20 篇聊天机器人领域必读论文速递!

清华创业团队发布 3D 视觉技术白皮书,万字长文详述ToF | 附PDF完整版下载

[关于转载]:本文为“AI科技评论”微信公众号文章,转载本文请联系原作者获取授权。谢谢您的合作。

二维码 扫码微信阅读
推荐阅读 更多