写点什么

深度学习的数学(四):用恶魔来讲解神经网络的结构

  • 2020-04-04
  • 本文字数:2478 字

    阅读完需:约 8 分钟

深度学习的数学(四):用恶魔来讲解神经网络的结构

编者按:本文节选自图灵程序设计丛书 《深度学习的数学》一书中的部分章节。


前文我们概述了神经网络的,但没有具体介绍其中最难的隐藏层。这是因为隐藏层肩负着 特征提取(feature extraction)的重要职责,需要很长的篇幅来介绍。本节我们就来好好看一下隐藏层。

重要的隐藏层

如上一节考察过的那样,神经网络是将神经单元部署成网络状而形成的。然而,将神经单元胡乱地连接起来并不能得到有用的神经网络,因此需要设计者的预估,这种预估对于隐藏层是特别重要的。因为支撑整个神经网络工作的就是这个隐藏层。下面让我们利用上一节考察过的 例题,来逐渐展开有关隐藏层的具体话题。


例题 建立一个神经网络,用来识别通过 4×3 像素的图像读取的手写数字 0 和 1。学习数据是 64 张图像,其中像素是单色二值。


前面已经提到过,模式识别的难点在于答案不标准,这个 例题 也体现了这样的特性。即使是区区一个 4×3 像素的二值图像,所读入的手写数字 0 和 1 的像素模式也是多种多样的。例如,下列图像可以认为是读入了手写数字 0。



对于这样的数字 0,即使人能设法识别出来,让计算机来判断也十分困难。

思路:由神经单元之间的关系强度给出答案

对于这种没有标准答案、识别困难的问题,怎么解决才好呢?思路就是“由网络进行判断”。乍一听会觉得这个方法不可思议,不过其中的逻辑却一点都不难,我们可以用恶魔组织的信息网络来做比喻。虽然这个比喻并不算准确,但是可以突出其本质。


假设有一个如下图所示的恶魔组织,隐藏层住着 3 个隐藏恶魔 A、B、C,输出层住着 2 个输出恶魔 0 和 1。输入层有 12 个手下①~⑫为隐藏恶魔 A、B、C 服务。


注:这里将生物学中的特征提取细胞的工作抽象化为 3 个恶魔 A、B、C。



最下层(输入层)的 12 个手下分别住在 4×3 像素图像的各个像素上,其工作是如果像素信号为 OFF(值为 0)就处于休眠状态;如果像素信号为 ON(值为 1)则变得兴奋,并将兴奋度信息传递给他们的主人隐藏恶魔 A、B、C。


注:即便不是黑白二值像素的情况,处理方式也是相同的。



住在隐藏层的 3 个隐藏恶魔,从下层(输入层)的 12 个手下那里获得兴奋度信息。接着,将获得的信息进行整合,根据其值的大小,自己也变兴奋,并将这个兴奋度传递给住在上层的输出恶魔。


不过,隐藏恶魔 A、B、C 有不同的喜好。他们分别喜欢下图所示的模式 A、模式 B、模式 C 的图案。这个性质影响了神经网络的特性。(看清他们的不同“偏好”,就是我们最初所提及的设计者的预估。)



住在最上层的 2 个输出恶魔也是从住在下层的 3 个隐藏恶魔那里得到兴奋度信息。与隐藏恶魔一样,他们将得到的兴奋度信息进行整合,根据其值的大小,自己也变兴奋。然后,这些输出恶魔的兴奋度就成为整个恶魔组织的意向。如果输出恶魔 0 的兴奋度比输出恶魔 1 的兴奋度大,神经网络就判定图像的数字为 0,反之则判定为 1。



可见,恶魔的世界里也存在着人际关系。


隐藏恶魔 A、B、C 对模式有着各自的偏好,与 12 个手下有不同的交情。隐藏恶魔 A 的偏好是之前的模式 A,因此与④、⑦性情相投。因为模式 A 的 4 号像素与 7 号像素是 ON,所以理所当然地与对应的看守人④、⑦性情相投。



同样地,手下⑤、⑧与隐藏恶魔 B,手下⑥、⑨与隐藏恶魔 C 性情相投,因此他们之间传递兴奋度的管道也变粗了(下图)。



住在隐藏层的隐藏恶魔 A、B、C 与住在上层的 2 个输出恶魔也有着人际关系。由于某种羁绊,输出恶魔 0 与隐藏恶魔 A、C 性情相投,而输出恶魔 1 与隐藏恶魔 B 性情相投。



以上就是恶魔组织的所有人际关系。除了隐藏恶魔 A、B、C 有不一样的偏好以外,这是一个人类社会中到处都可能存在的简单的组织。


那么,这里让我们读入手写数字 0。



于是,作为像素看守人的手下④、⑦和手下⑥、⑨看到这个图像就变得非常兴奋了(下图)。



这时,兴奋的手下④、⑦向性情相投的隐藏恶魔 A 传递了较强的兴奋度信息,兴奋的手下⑥、⑨也向性情相投的隐藏恶魔 C 传递了较强的兴奋度信息。相对地,几乎没有手下向隐藏恶魔 B 传递兴奋度信息(下图)。



接收了来自手下的兴奋度信息的隐藏恶魔们会怎样呢?接收了较强的兴奋度信息的隐藏恶魔 A 和隐藏恶魔 C 自然也变兴奋了。另一方面,隐藏恶魔 B 变得怎样呢?因为几乎没有从手下接收到兴奋度信息,所以一直保持冷静。



住在最上层的输出恶魔变得怎样了呢?输出恶魔 0 由于与兴奋的隐藏恶魔 A、C 关系亲密,从而获得了较强的兴奋度信息,所以自己也兴奋起来了。相对地,输出恶魔 1 与隐藏恶魔 A、C 关系疏远,而与之关系亲密的隐藏恶魔 B 一直保持冷静,所以输出恶魔 1 没有获得兴奋度信息,因此也保持冷静。



这样一来,读取手写数字 0 的图像后,根据恶魔之间的连锁关系,最终得到了“输出恶魔 0 兴奋,输出恶魔 1 冷静”的结果。根据前文中的“如果输出恶魔 0 的兴奋度比输出恶魔 1 的兴奋度大,神经网络就判断图像的数字为 0”,恶魔的网络推导出了 0 这个解答。


恶魔的心的偏置

在这个恶魔组织中,下层的兴奋度会或多或少地传递到上层。但是,除了具有亲密关系的各层之间传递的兴奋度信息以外,还遗漏了少量信息,就是“噪声”。如果这些噪声迷住了恶魔的心,就会导致无法正确地传递兴奋度信息。因此,这就需要减少噪声的功能。对于恶魔组织的情形,我们就将这个功能称为“心的偏置”吧!具体来说,将偏置放在恶魔的心中,以忽略少量的噪声。这个“心的偏置”是各个恶魔固有的值(也就是个性)。

从关系中得到信息

像上面那样,恶魔组织实现了手写数字的模式识别。我们应该关注到,是恶魔之间的关系(也就是交情)和各个恶魔的个性(也就是心的偏置)协力合作推导出了答案。也就是说,网络作为一个整体做出了判断。


问题 在图中示范一下在读取数字 1 的图像时,恶魔组织得出 1 这个解答的全过程。

在这种情况下,也能够根据上层恶魔与下层恶魔之间交情的好坏来判断图像中的数字是 1。下图就是解答。沿着下图的粗线,输出恶魔 1 兴奋起来,判断出图像中的数字是 1。


图书简介http://www.ituring.com.cn/book/2593



相关阅读


深度学习的数学(一):神经网络和深度学习


深度学习的数学(二):神经元工作的数学表示


深度学习的数学(三):神经元工作的数学表示


2020-04-04 10:001855

评论

发布
暂无评论
发现更多内容

设定Docker容器日志的大小和轮询规则

耳东@Erdong

Docker log 9月日更

图数据库在社交方向上的应用

6979阿强

社交网络 GraphScope 图数据 图关系

IP地理定位之数据驱动广告矩阵

郑州埃文科技

企业级数据融合平台上线,DataPipeline助力中国最大保险公司海外业务再创佳绩!

DataPipeline数见科技

OpenMetric与时序数据库模型之主流TSDB分析

华为云开发者联盟

Prometheus Influxdb 时序数据库 tsdb OpenMetric

新基建+新科技,智慧港口船舶抢抓数字化转型先机

一只数据鲸鱼

数据可视化 智慧港口 智慧船舶 智慧码头

盘点 | 主流云原生数据库技术方案

RadonDB

数据库 云原生

在线JSON转typescript工具

入门小站

工具

18.理智分析--人类离威胁还相当遥远

Databri_AI

人工智能

国足历届世界杯对战记录整理

6979阿强

图算法 GraphScope 2022年卡塔尔世界杯 中国国足

共助数据自主创新生态|DataPipeline实时数据融合平台与华为云GaussDB数据库完成兼容互认证

DataPipeline数见科技

选择低代码应用程序开发框架的5个关键标准

低代码小观

程序员 低代码 企业开发 低代码开发 开发框架

学生管理系统架构设计

一叶知秋

#架构实战营

架构训练营模块三作业

TIEDPAG

架构训练营 模块三

Go 编码习惯

baiyutang

Go 语言 9月日更

Vue进阶(幺幺叁):element ui 表单验证 this.$refs[formName].validate()问题解决

No Silver Bullet

Vue 9月日更

数据中台建设的9大误区,你中了几条?

博文视点Broadview

架构实战营 外包学生管理系统的架构文档

💤 ZZzz💤

架构实战营

固定QPS压测初试

FunTester

性能测试 测试框架 压力测试 QPS FunTester

谈 C++17 里的 Observer 模式

hedzr

c++ 设计模式 Design Patterns c++17 observer pattern

玩转TypeScript工具类型(中)

有道技术团队

typescript 大前端 网易有道

10行代码集2000张美女图,Python爬虫120例,再上征途

梦想橡皮擦

9月日更

眼界大开 声临其境丨胡宜峰:视频深度伪造检测技术在内容安全领域的探索与实践

网易云信

人工智能 深度学习 音视频

双赞的一体机主板能应用到哪些行业?

双赞工控

面试官让手写队列,差点挂了

bigsai

深入了解现代web浏览器(第四部分)

GKNick

密码学系列之:bcrypt加密算法详解

程序那些事

算法 加密解密 密码学 程序那些事

腾讯看点CTO徐羽: QQ浏览器背后的推荐AI中台 | AICon

博文视点Broadview

【Flutter 专题】45 图解矩阵变换 Transform 类 (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 9月日更

【LeetCode】从根到叶的二进制数之和Java题解

Albert

算法 LeetCode 9月日更

企业数字化转型选用“低代码平台”的8条建议!

优秀

低代码

深度学习的数学(四):用恶魔来讲解神经网络的结构_AI&大模型_涌井良幸,涌井贞美_InfoQ精选文章