破解黑盒?谷歌让你理解机器如何“思考”

2018年03月07日 由 xiaoshan.xiang 发表 156491 0

在2015年,谷歌曾尝试去想象神经网络如何理解产生了迷幻图像的图像。不久之后,谷歌把其代码开源为“DeepDream”,它发展成为一个小型的艺术运动,产生各种神奇的东西。但谷歌也继续了DeepDream背后的研究,试图解决深度学习中最令人兴奋的问题之一:神经网络是如何做到这样的?


DeepDream地址:https://research.googleblog.com/2015/07/deepdream-code-example-for-visualizing.html


去年,在网络期刊《Distill》中,谷歌演示了这些相同的技术如何在网络中展示单个神经元的功能,而不是像DeepDream一样“对网络感兴趣”。这让谷歌的技术人员可以看到网络中央的神经元是如何检测各种事物的——按钮、布片、建筑物——以及如何在网络层上建立起越来越复杂的结构。


破解黑盒?谷歌让你理解机器如何“思考”


GoogLeNet中神经元的可视化。更高层次的神经元代表更高层次的思想。


虽然可视化神经元是令人兴奋的,但谷歌却忽略了一些重要的事情:这些神经元是如何连接到设神经网络的实际操作呢?


今天,谷歌发布了“The Building Blocks of Interpretability”,这是一篇全新的文章,探讨了特征可视化如何与其他解释性技术结合在一起,以了解神经网络如何做出决策。谷歌证明了这些组合可以让谷歌“站在神经网络的角度”,并理解在这一点上做出的一些决定,以及它们如何影响最终的输出。例如,谷歌技术人员可以看到神经网络如何检测到一个毛茸茸的耳朵,然后增加了图像是“拉布拉多寻回犬”或“小猎犬”的概率。


谷歌探索了解神经元在网络中激活的技术。正常情况下,如果问哪些神经元被激活,就会得到一些毫无意义的东西,比如“神经元538被触发了”,这对专家来说并不是很有帮助。谷歌技术通过给每个神经元添加视觉效果,使其对人类更有意义,因此谷歌技术人员可以看到像“毛茸茸的耳朵探测器被激活”之类的东西。这是一种神经网络的核磁共振成像。


破解黑盒?谷歌让你理解机器如何“思考”


谷歌的该项技术还可以缩小和显示整个图像是如何在不同的层“感知”的。这能够让技术人员真正看到从网络中检测到的非常简单的边缘组合,到丰富的纹理和三维结构,到高级结构如耳朵,鼻子,头部和腿的过渡。


破解黑盒?谷歌让你理解机器如何“思考”


这些见解本身令人兴奋,但是当谷歌将它们与神经网络的最终决策联系起来时,它们变得更加令人兴奋。因此,最终不仅可以看到神经网络检测到的毛茸茸的耳朵,也可以看到如何增加图像是拉布拉多寻回犬的可能性。


破解黑盒?谷歌让你理解机器如何“思考”


除了论文,谷歌还发布了Lucid,这是一个建立在DeepDream工作之上的神经网络可视化库。它使你能够制作上面看到的排序清晰的特征可视化图像,以及更多具有艺术性的DeepDream图像。


Lucid地址:https://github.com/tensorflow/lucid


谷歌还发布了colab notebooks。它使得利用Lucid在谷歌文章中重现可视化变得非常简单!只需打开笔记本,点击一个按钮即可运行代码 - 无需安装!


colab notebooks地址:https://github.com/tensorflow/lucid#notebooks


破解黑盒?谷歌让你理解机器如何“思考”


在colab notebooks中,你可以单击一个按钮来运行代码,并查看下面的结果。


这项工作仅仅触及了谷歌认为可以构建的用于理解神经网络的接口的表面。


欢迎关注ATYUN官方公众号
商务合作及内容投稿请联系邮箱:bd@atyun.com
评论 登录
写评论取消
回复取消