前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >神经网络决策过程可视化:AI眼中马云、马化腾、李彦宏谁最有吸引力?

神经网络决策过程可视化:AI眼中马云、马化腾、李彦宏谁最有吸引力?

作者头像
新智元
发布2018-03-20 15:50:24
8970
发布2018-03-20 15:50:24
举报
文章被收录于专栏:新智元新智元
来源:thehive.ai

作者:Hive机器学习工程师Ryan

编译:费欣欣

【新智元导读】神经网络在进行图像分类时如何做决策?The Hive的机器学习工程师利用开源的grad-cam项目,预测神经网络决策和图像分析时的焦点,发现神经网络关注的部分实际上与人十分类似。但是,也是有意外的地方。

神经网络所学会的“吸引力”是什么?

在判断一张图片是否安全时,神经网络看的是哪些部分?

使用grad-cam,我们探索了模型的预测过程,对于不同类型的图片,包括动作/静态、暴力、吸引力、年龄、种族等等。

很显然,在上面展示的图片中,吸引力模型关注的是身体而非面部。有趣的是,模型在训练过程中没有接触任何明确定义的边界框,但即使如此,仍然学会了定位人体

这个模型使用200k图像做训练,标记由Hive团队完成,一共分为3个类别:有吸引力(hot)、中立(neutral)、没有吸引力。

然后,所有得分会综合在一起,创建一个从0到10的评分等级。分类器地址:https://thehive.ai/demo/attractiveness

举个例子,如果让模型来判断BAT各家掌门人的吸引力得分,将会是这个样子:

关键的想法是,在全局池化前将logit层应用到最后一个卷积层。这会创建一个map,显示网络决策过程中每个像素的重要性。

一个穿西装的人位于图片正中(上图右),表明这是电视节目,而不是商业广告。电视节目/商业广告模型,很好地展示了grad-CAM发现的模型决策背后的意外原因。另一方面,模型也能证实了我们的预期,比如左边那幅单板滑雪的例子(上图左)。

上面是动画节目分类器的结果。很有意思的是,在Bart & Morty中,最重要的部分是边缘(上图左)和背景(上图右),令人颇为意外。

CAM & GradCam:分类时,神经网络正在看什么

类别激活地图(CAM)由Zhou[2]首先开发,能够显示网络正在看什么。对于每个类别,CAM能表明这个类别中最重要的部分。

后来,Ramprasaath对CAM做了扩展,让它在不需要做任何更改的情况下,能够适用于更广泛的架构。具体说,grad-CAM可以处理全连接层和更复杂的问题,如问题回答。幸运的是,我们完全不需要修改网络来计算grad-CAM。

最近,grad-CAM++ Chattopadhyay[4]进一步扩展了这种方法,提高输出热图的精度。Grad-CAM++能够更好地处理类别的多个实例,并突出显示整个类别,而不仅仅是最显著的部分。Grad-CAM++使用正偏导数的加权组合来实现这一点。

TensorFlow实现及代码

这只返回一个num_classes元素的数组,其中只有预测类别的logit非零。这定义了损失。

然后,计算相对于网络的最后一个卷积层的损失的导数,并对这些梯度进行正则化。

运行图,计算我们输入的最后一个卷积层。

计算权重作为每个10x10网格的梯度值的均值(假设输入大小为299x299)。有2048个权重,因为我们使用的网络在10x10的最终卷积层上有2048个输出通道。

创建cam 10x10粗略输出,作为平均梯度值和最终卷积层的加权和。

将cam输入一个RELU,只接收这个类别的正向建议。然后,将粗略cam输出调整为输入大小并混合显示。

最后,主要函数获取TensorFlow Slim模型的定义和预处理函数。用这些算法计算grad-CAM输出,并将其与输入照片混合。在下面的代码中,我们使用softmax概率最大的类别作为grad_cam的输入。例如:

该模型首选预测酒精为99%,赌博只有0.4%。不过,通过将预测类别从酒类转为赌博,我们可以看到,尽管类别概率很低,但模型仍然可以清楚地指出图像中的赌博元素(见右图)。

参考资料

  1. Our attractiveness classifier: https://thehive.ai/demo/attractiveness
  2. Bolei Zhou, Aditya Khosla, Àgata Lapedriza, Aude Oliva, and Antonio Torralba. Learning deep features for discriminative localization. CoRR, abs/1512.04150, 2015
  3. Ramprasaath R. Selvaraju, Abhishek Das, Ramakrishna Vedantam, Michael Cogswell, Devi Parikh, and Dhruv Batra. Grad-cam: Why did you say that? visual explanations from deep networks via gradient-based localization. CoRR, abs/1610.02391, 2016
  4. Aditya Chattopadhyay, Anirban Sarkar, Prantik Howlader, and Vineeth N. Balasubramanian. Grad-cam++: Generalized gradient-based visual explanations for deep convolutional networks. CoRR, abs/1710.11063, 2017
  5. Tensorflow Slim: https://github.com/tensorflow/models/tree/master/research/slim
  6. Our grad-cam github: https://github.com/hiveml/tensorflow-grad-cam
  7. Original grad-cam repo https://github.com/Ankush96/grad-cam.tensorflow
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档