热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

中国学者实现CNN全程可视化,详尽展示每次卷积、ReLU和池化过程

本文经AI新媒体量子位(公众号ID:qbitai)授权转载,转载请联系出处

本文约900字,建议阅读5分钟。

本文带你一张图看懂CNN。

标签:人工智能技术

CNN是什么?美国有线电视新闻网吗?

每一个对AI抱有憧憬的小白,在开始的时候都会遇到CNN(卷积神经网络)这个词。

但每次,当小白们想了解CNN到底是怎么回事,为什么就能聪明的识别人脸、听辨声音的时候,就懵了,只好理解为玄学:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

好吧,***解决不了的问题,有人给解决了。

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

这个名叫CNN解释器在线交互可视化工具,把CNN拆开了揉碎了,告诉小白们CNN究竟是怎么一回事,为什么可以辨识物品。

它用TensorFlow.js加载了一个10层的预训练模型,相当于在你的浏览器上跑一个CNN模型,只需要打开电脑,就能了解CNN究竟是怎么回事。

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

而且,这个网页工具还可以实现交互,只要点击其中任何一个格子——就是CNN中的“神经元”,就能显示它的输入是哪些、经过了怎样细微的变化。

甚至,连每一次卷积运算都能看得清。

看清卷积

这个CNN解释器的使用方式也非常简单:鼠标戳戳戳就好了。

单击神经元,进入弹性解释视图,就可以看到卷积核滑动的过程的动画模拟:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

点击一个正在卷积的过程图,就可以看到更具体的过程:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

可以看到底层的卷积运算过程,3×3的卷积核是如何经过运算被变成1个数字的。

看清ReLU和最大池化层

点击一个ReLU层的神经元,可以看具体过程,ReLU函数是这样工作的:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

点击一个池化神经元,也可以看具体最大池化层是怎样工作的:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

看清CNN是怎么输出预测的

点击最右侧的输出神经元,进入弹性解释视图:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

可以查看Softmax函数的详情:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

识别「狸克」试试?

CNN解释器默认有10张图片,你也可以增加自己的自定义图片。

比如这个:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

芝士焗灯笼椒?灯笼椒披萨?还是什么鬼?

复制图片链接或者上传图片之后,它经过了10层处理,得出结论:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

是灯笼椒,但也可能是臭虫。

但是,只能归类于右侧原有的10个品类里,比如放一只狸克:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

就会被识别成espresso。

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

佐治亚理工中国博士出品

最后,这个CNN解释器的作者是一位中国小哥,佐治亚理工的Zijie Wang,去年刚开始读机器学习博士,本科毕业于威斯康星大学麦迪逊分校,是一位GPA 3.95/4.00的大学霸。

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

他也曾经做过一些其他有趣的数据可视化项目,比如威斯康星大学麦迪逊分校的中国本科生都来自哪里:

中国博士把整个 CNN 都给可视化了,每次卷积 ReLU 池化都清楚

 

传送门

CNN解释器:https://poloclub.github.io/cnn-explainer/

GitHub:https://github.com/poloclub/cnn-explainer

论文:

https://arxiv.org/abs/2004.15004

\编辑:于腾凯

校对:林亦霖

—完—


推荐阅读
  • 本文探讨了图像标签的多种分类场景及其在以图搜图技术中的应用,涵盖了从基础理论到实际项目实施的全面解析。 ... [详细]
  • 本文探讨了如何在Android应用中实现图片的保存至外部存储,并通过原生方式分享这些图片。主要介绍了保存图片的不同策略以及通过Intent进行文件分享的具体步骤。 ... [详细]
  • 本文档旨在帮助开发者回顾游戏开发中的人工智能技术,涵盖移动算法、群聚行为、路径规划、脚本AI、有限状态机、模糊逻辑、规则式AI、概率论与贝叶斯技术、神经网络及遗传算法等内容。 ... [详细]
  • 本文探讨了亚马逊Go如何通过技术创新推动零售业的发展,以及面临的市场和隐私挑战。同时,介绍了亚马逊最新的‘刷手支付’技术及其潜在影响。 ... [详细]
  • 利用Java与Tesseract-OCR实现数字识别
    本文深入探讨了如何利用Java语言结合Tesseract-OCR技术来实现图像中的数字识别功能,旨在为开发者提供详细的指导和实践案例。 ... [详细]
  • 本文介绍了如何在VB.NET版机房收费系统中实现数据从DataGridView导出至Excel的功能,包括环境配置、代码实现及常见问题解决方法。 ... [详细]
  • 回顾与学习是进步的阶梯。再次审视卷积神经网络(CNNs),我对之前不甚明了的概念有了更深的理解。本文旨在分享这些新的见解,并探讨CNNs在图像识别和自然语言处理等领域中的实际应用。 ... [详细]
  • 吴恩达推出TensorFlow实践课程,Python基础即可入门,四个月掌握核心技能
    量子位报道,deeplearning.ai最新发布了TensorFlow实践课程,适合希望使用TensorFlow开发AI应用的学习者。该课程涵盖机器学习模型构建、图像识别、自然语言处理及时间序列预测等多个方面。 ... [详细]
  • 本文旨在探讨如何利用决策树算法实现对男女性别的分类。通过引入信息熵和信息增益的概念,结合具体的数据集,详细介绍了决策树的构建过程,并展示了其在实际应用中的效果。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • 三星Galaxy S8/S8+即将登场,全面解析新旗舰
    3月29日晚11点,备受瞩目的三星Galaxy S8/S8+将正式发布。作为三星在Note 7爆炸事件后的重磅产品,S8/S8+不仅承载着恢复消费者信心的重任,其创新的设计和技术也备受期待。 ... [详细]
  • 2017年人工智能领域的十大里程碑事件回顾
    随着2018年的临近,我们一同回顾过去一年中人工智能领域的重要进展。这一年,无论是政策层面的支持,还是技术上的突破,都显示了人工智能发展的迅猛势头。以下是精选的2017年人工智能领域最具影响力的事件。 ... [详细]
  • 本文分析了一个基于ASP代码改编的PHP MD5加密函数,指出其存在的问题,并提供了解决方案。通过对比ASP和PHP在处理相同数据时的不同表现,探讨了两种语言在实现MD5算法上的细微差别。 ... [详细]
  • 在Ubuntu 16.04中使用Anaconda安装TensorFlow
    本文详细介绍了如何在Ubuntu 16.04系统上通过Anaconda环境管理工具安装TensorFlow。首先,需要下载并安装Anaconda,然后配置环境变量以确保系统能够识别Anaconda命令。接着,创建一个特定的Python环境用于安装TensorFlow,并通过指定的镜像源加速安装过程。最后,通过一个简单的线性回归示例验证TensorFlow的安装是否成功。 ... [详细]
  • 强人工智能时代,区块链的角色与前景
    随着强人工智能的崛起,区块链技术在新的技术生态中扮演着怎样的角色?本文探讨了区块链与强人工智能之间的互补关系及其在未来技术发展中的重要性。 ... [详细]
author-avatar
mobiledu2502875123
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有