Nothing in life is to be feared, it is only to be understood. Now is the time to understand more, so that we may fear less.
——Marie Curie
当前深度神经网络由成千上万个神经元构成,这些神经元相互作用赋予整个网络能力(capacity)。我们希望能够了解它们的行为,快速轻松地详细研究这些神经元的相互作用,并分享这些观察结果。OpenAI最近提出Microscope项目,为深度神经网络的可视化和可解释性社区作出卓越贡献,其目的是提供在协作环境下提供快速搜索神经元,评估并发现新事物的能力。我们来一起了解一下~
举个栗子
Inception v1
,也称为GoogLeNet,该网络在2014年将ImageNet分类赛道取得最优结果。
如上图右侧所示,模型中数据流从下向上流动,512维的mixed4b
feature map经过再次计算得到同样是512维的mixed4c
处的feature map。
通过观察mixed4b-unit373
(以下简称4b373
),不同车轮的形状出现在可视化feature map的不同位置,在我们人类的认知中该unit应该是一个用于检测车轮的检测器。
同理观察4b237
可知这是一个窗户检测器。
我们再观察上一级4c
中的信息,不难看出4c447
大概率是一个汽车检测器。这种观察即符合人类先验,同时也通过Microscope得到了可视化和可解释性的佐证。
现在支持的8个CV模型
就像生物学家经常专注于研究几种“模型生物”一样,Microscope也专注于详细研究少量模型。Microscope的初始版本包括九个经常研究的视觉模型,以及OpenAI发现在研究它们中特别有用的几种可视化技术。OpenAI计划在未来几个月内扩展到其他模型和技术。
AlexNet
:2012年ImageNet的获胜者,计算机视觉的一个里程碑,被引用超过50,000AlexNet (Places)
:与经典AlexNet模型相同的体系结构,但在Places365数据集上进行了训练Inception v1
:也称为GoogLeNet,该网络在2014年将ImageNet分类赛道取得SOTAInception v1 (Places)
:与经典的Inception v1模型相同的体系结构,但是在Places365数据集上进行了训练VGG 19
:该网络于2014年推出,比Inception变体更简单,仅使用3x3卷积,没有分支结构Inception v3
:Inception架构于2015年发布,此迭代版本提高了性能和效率Inception v4
:该版本于2016年发布,是初始架构的第四次迭代,着重于一致性ResNet v2 50
:ResNets使用残差连接在更深的网络中实现更强的梯度传导
OpenAI对可解释性社区的支持
- 尽管这些模型和可视化已经开放源代码( OpenAI 维护了 lucid 库,该库用于在 Microscope 中生成所有可视化),但对神经元进行可视化却是乏味的。Microscope 将探索神经元的反馈回路从几分钟更改为几秒钟。快速的反馈回路对于我们在进行中的 circuits 项目中发现意想不到的功能(例如高低频检测器)至关重要。
- 使模型和神经元可链接的操作,满足立即进行审查的需求,并同时支持探索做出有关这些神经元的进一步研究。它还消除了有关正在讨论哪个模型和神经元的潜在混淆和歧义。这对于协作特别有帮助,特别是当研究人员位于不同的机构时。
- 可解释性作为ML领域之一,妙处在于它的可访问性。与许多其他ML领域相比,它需要较少的计算访问权限。但是系统地可视化神经网络仍然需要花费数百个GPU小时。OpenAI希望通过共享可视化内容,帮助保持可解释性的高度可访问性。
Reference
- https://microscope.openai.com/
- https://openai.com/blog/microscope/
- https://github.com/tensorflow/lucid/