一位中国博士把整个 CNN 都给可视化了,可交互有细节,每次卷积 ReLU 池化都清清楚楚...

本文主要是介绍一位中国博士把整个 CNN 都给可视化了,可交互有细节,每次卷积 ReLU 池化都清清楚楚...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


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

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

本文带你一张图看懂CNN。

标签:人工智能技术

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

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

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

好吧,维基百科解决不了的问题,有人给解决了。

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

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

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

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

看清卷积

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

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

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

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

看清ReLU和最大池化层

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

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

看清CNN是怎么输出预测的

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

可以查看Softmax函数的详情:

识别「狸克」试试?

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

比如这个:

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

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

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

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

就会被识别成espresso。


佐治亚理工中国博士出品

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

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


传送门

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

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

论文:

https://arxiv.org/abs/2004.15004

编辑:于腾凯

校对:林亦霖

这篇关于一位中国博士把整个 CNN 都给可视化了,可交互有细节,每次卷积 ReLU 池化都清清楚楚...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/901393

相关文章

基于Python打造一个可视化FTP服务器

《基于Python打造一个可视化FTP服务器》在日常办公和团队协作中,文件共享是一个不可或缺的需求,所以本文将使用Python+Tkinter+pyftpdlib开发一款可视化FTP服务器,有需要的小... 目录1. 概述2. 功能介绍3. 如何使用4. 代码解析5. 运行效果6.相关源码7. 总结与展望1

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

使用Folium在Python中进行地图可视化的操作指南

《使用Folium在Python中进行地图可视化的操作指南》在数据分析和可视化领域,地图可视化是一项非常重要的技能,它能够帮助我们更直观地理解和展示地理空间数据,Folium是一个基于Python的地... 目录引言一、Folium简介与安装1. Folium简介2. 安装Folium二、基础使用1. 创建

基于Python开发PDF转PNG的可视化工具

《基于Python开发PDF转PNG的可视化工具》在数字文档处理领域,PDF到图像格式的转换是常见需求,本文介绍如何利用Python的PyMuPDF库和Tkinter框架开发一个带图形界面的PDF转P... 目录一、引言二、功能特性三、技术架构1. 技术栈组成2. 系统架构javascript设计3.效果图

SpringBoot项目注入 traceId 追踪整个请求的日志链路(过程详解)

《SpringBoot项目注入traceId追踪整个请求的日志链路(过程详解)》本文介绍了如何在单体SpringBoot项目中通过手动实现过滤器或拦截器来注入traceId,以追踪整个请求的日志链... SpringBoot项目注入 traceId 来追踪整个请求的日志链路,有了 traceId, 我们在排

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

跨国公司撤出在华研发中心的启示:中国IT产业的挑战与机遇

近日,IBM中国宣布撤出在华的两大研发中心,这一决定在IT行业引发了广泛的讨论和关注。跨国公司在华研发中心的撤出,不仅对众多IT从业者的职业发展带来了直接的冲击,也引发了人们对全球化背景下中国IT产业竞争力和未来发展方向的深思。面对这一突如其来的变化,我们应如何看待跨国公司的决策?中国IT人才又该如何应对?中国IT产业将何去何从?本文将围绕这些问题展开探讨。 跨国公司撤出的背景与