不知道大家有没有这种感觉?在接触AI时,老感觉神经网络就像个黑盒子,摸不着,看不透,贼神秘了。

其实,神经网络就是对人脑运作模式的智能模拟。和人脑一样,神经网络模型的强大能力,是基于成千上万个神经元的相互作用。以卷积神经网络(CNN)为例,其结构就分为很多层,层与层之间通过线来连接。训练的过程,就是将所有的线设置成合适的值的过程。

为了直观展示,今天就通过可视化带大家看看AI训练时都长啥样。(前方多图预警!

首先,AI模型训练前长这样:

训练中,依次经过卷积-激活、卷积-激活-池化、卷积-激活、卷积-激活-池化……这个过程大概长这样:

最后,训练完成后长这样,一种张扬肆意的凌乱美有没有:

可以看到,经过训练后的模型之所以长得不再“均匀规整”,是因为被赋予了权值不一的特征。虽然训练花了不少时间,但360度观摩神经网络的训练后,让人觉得再漫长的等待都是值得的。

看完上面炫酷的3D展示,接下来我们再通过AI模型全局结构图,一步步拆解训练过程,试着把CNN每一层的操作和变化都展示出来。

首先是卷积层,这一步主要是为了提取特征。因为AI在识别图片时,并非一下子整张图整体识别,而是先对图中的每一个特征进行局部感知。

图:卷积层

然后,到了激活层,这个步骤是对上面提取的特征做一次非线性映射。

图:激活层

接着,来到池化层,用白话来讲就是去除冗余信息,保留关键信息。毕竟一张图像通常包含了大量杂余信息,如果把整张图的所有特征都学习下来,那可不把AI累死。

图:池化层

就这样,以上操作重复N次,就形成了一个深层神经网络,完成自动化的有效特征提取:

最后,来到全连接层,通过对所有得到的特征加权,计算输出预测结果,大功告成。

10

以上,就是一整套AI训练时的正常画风。那么,如果我们给AI悄摸摸喂点对抗样本,训练过程又是什么画风呢?

所谓对抗样本,是指对原始图片添加细微干扰形成输入样本,让人眼看来无明显变化,却能导致AI模型的预测结果走偏、出错。

这里,举个小熊猫图片被加入噪声的例子:

11

首先看看原始的小熊猫图片在神经网络中的一个特征分布情况:

12

再看看小熊猫图片被加入对抗样本后的特征分布情况:

13

可以清楚看到,两者的预测结果截然不同(小熊猫vs车子),但两者在训练过程中的不同之处大家有发现吗?

乍看之下,两者的特征权值分布非常相似,但仔细观察就会发现一些略微不同。这里我们给池化层的第三个filter来个特写镜头,大家来找找茬

14

如上,从这些细微差异中,可以窥见AI的预测逐渐“走偏”的蛛丝马迹。

这就如同蝴蝶效应,最开始的一点点细微干扰,在经过训练过程中重复多次的卷积、激活、池化后,越走越歪,最终输出的结果和原始结果千差万别。

也许,这就是神经网络的奥秘所在吧。欢迎感兴趣的同学与我们交流探讨!

【AI安全小学生系列】往期回顾

  • 照片被盗后,我用这种方法锤死了盗图贼

  • 大厂码农隐秘图片流出.jpg

  • AI是如何发现你手机里的羞羞照片的?

  • 嘘——别出声!

  • 每个老司机,都曾在深夜思考过清除马赛克的方法

  • 翻车的100种方法

  • 如何从一个人入手,搞垮一家企业?

  • 当黑客拥有算力——“洗白”的病毒

  • 当AI吃了毒蘑菇…

  • 我们为什么要阅后即焚?

视频号最新视频

十年磨砺极致性能,挑战极限,打造业界性能NO.1

神经网络可视化,真的很像神经元!相关推荐

  1. CICC科普栏目|神经网络浅讲:从神经元到深度学习

    图1 人脑神经网络 来源: 计算机的潜意识 摘要:神经网络是一门重要的机器学习技术.它是目前最为火热的研究方向–深度学习的基础. 神经网络是一门重要的机器学习技术.它是目前最为火热的研究方向–深度学习 ...

  2. 值得推荐的C/C++框架和库 (真的很强大)

    值得学习的C语言开源项目 - 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的 ...

  3. 本周AI热点回顾:Github私有库无限协作、飞腾适配百度昆仑AI处理器、OpenAI发布神经网络可视化库

    01 Github私有库无限协作,大 AI 模型随便放 4月14日,GitHub 的 CEO Nat Friedman 在官网上发布声明说, "我们很高兴宣布,我们将为所有 GitHub 用 ...

  4. Distill详述「可微图像参数化」:神经网络可视化和风格迁移利器!

    近日,期刊平台 Distill 发布了谷歌研究人员的一篇文章,介绍一个适用于神经网络可视化和风格迁移的强大工具:可微图像参数化.这篇文章从多个方面介绍了该工具. 图像分类神经网络拥有卓越的图像生成能力 ...

  5. 神经网络可视化有3D版本了,美到沦陷!(已开源)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 做计算机视觉,离不开CNN. 可是,卷积.池化.Softmax-- ...

  6. 天将 转:值得推荐的C/C++框架和库(真的很强大)

    转:值得推荐的C/C++框架和库(真的很强大) - 天将 - 博客园 天将 转:值得推荐的C/C++框架和库(真的很强大) 值得学习的C语言开源项目 - 1 Webbench - 2 Tinyhttp ...

  7. 高颜值的神经网络可视化工具:3D、彩色、可定制,还能可视化参数重要性

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要5分钟 Follow小博主,每天更新前沿干货 转载自:量子位 最近,一款神经网络可视化工具火了. 这款工具叫做「nn_vis」,它采用了新的3 ...

  8. 高颜值的神经网络可视化工具:3D、彩色、可定制,还能可视化参数重要性 | 开源...

    子豪 发自 凹非寺 量子位 报道 | 公众号 QbitAI 最近,一款神经网络可视化工具火了. 这款工具叫做「nn_vis」,它采用了新的3D可视化技术,可以呈现这样的效果: 其作者表示,之所以创建这 ...

  9. 反卷积在神经网络可视化上的成功应用

    反卷积(Deconvolution)的概念第一次出现是Zeiler在2010年发表的论文Deconvolutional networks中,但是并没有指定反卷积这个名字,反卷积这个术语正式的使用是在其 ...

最新文章

  1. 美团分布式服务治理框架OCTO之二:Mesh化
  2. JAVA遇见HTML——JSP篇(JSP内置对象上)
  3. Android 系统到底提供了哪些东西,供我们可以开发出优秀的应用程序(文末送书)
  4. Linux centosVMware zip压缩工具、tar打包、打包并压缩
  5. 如何在eclipse中查看源码
  6. 什么是Kubernetes的CRI - 容器运行时接口
  7. c++基础学习(05)--(指针,引用)
  8. 数学建模 分支限界算法求解整数规划原理以及编程实现
  9. 【python】urllib和urllib3,requests 简要概括---笔记
  10. 从txt中读入数据到数组中(fscanf)
  11. mysql函数第一次返回字符串_Mysql字符串处理函数详细介绍、总结
  12. 博文视点大讲堂第14期——掌握命运、规划未来
  13. ESP8266自动下载电路分析
  14. cd40系列芯片_CD40系列芯片大全
  15. 2015中兴笔试+面试
  16. 剑指offer——链表题目集合(Python)
  17. 隐藏身份证中间几位工具类
  18. kolla 部署openstack train版本(三节点controller+compute+storage)------功能测试
  19. iOS开发之 简易随机点名册的设计
  20. SketchBookPro 自然画图软件2014-2021

热门文章

  1. 关于0基础磁盘管理(gpt UEFI...)最好的一篇文章(来自gentoo linux)
  2. 动态规划 HDU1231-------最大连续子序列
  3. 在Linux服务器之间迁移帐号信息
  4. POS消费机C#例子代码
  5. 网络服务器预防dos***的层次
  6. 一天一个设计模式之建造者模式(Builder)
  7. CodeForces - 1426F Number of Subsequences(dp)
  8. CodeForces - 1288E Messenger Simulator(树状数组)
  9. jupyter notebook python插件_Jupyter notebook一款非常好用的python IDE
  10. Minetorch教程