OceaBase开发者大会落地上海!4月20日共同探索数据库前沿趋势!报名戳 了解详情
写点什么

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

  • 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



相关阅读


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


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


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


公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2020-04-04 10:001640

评论

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

基于华为云图像识别标签

乌龟哥哥

4月月更

linux之lscpu命令

入门小站

在线YAML转Properties工具

入门小站

工具

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

鱼恨水

模块三作业

天琪实刚亮

单例模式你不得不知道的底层原理

爱好编程进阶

Java 面试 后端开发

CDF全球调查:软件交付性能停滞不前

SoFlu软件机器人

大量示例彻底搞懂Linux查找,which,whereis

爱好编程进阶

Java 面试 后端开发

Module-3:外包学生管理系统架构设计文档

Jadedev

架构训练营

外包学生管理系统架构设计文档

大眼喵

「架构实战营」

大爆料!Github上100%好评的Java多线程池面试题

爱好编程进阶

Java 面试 后端开发

工作总结!日志打印的15个建议

爱好编程进阶

Java 面试 后端开发

EventBridge 集成云服务实践

阿里巴巴云原生

开发者工具 Top 100 名单

爱好编程进阶

Java 面试 后端开发

学生管理系统的架构文档

Kevin

「架构实战营」

字节奋战7年,回头一看只剩下这份1857页的算法笔记了

爱好编程进阶

Java 面试 后端开发

并发工具之Semaphore与Exchanger

爱好编程进阶

Java 面试 后端开发

再谈企业信息化的本质

秋去冬来春未远

信息化本质

或许你不知道的12条SQL技巧

乌龟哥哥

4月月更

历经4轮2小时,终于斩下美团offer!

爱好编程进阶

Java 面试 后端开发

哪路神仙写的421页MySQL高级笔记,涵盖MySQL所有技术!太香了

爱好编程进阶

Java 面试 后端开发

大数据基础处理框架

爱好编程进阶

Java 面试 后端开发

MapReduce服务初体验

乌龟哥哥

4月月更

华为18级大牛整理总结:微服务设计和分布式服务框架原理实践文档

爱好编程进阶

Java 面试 后端开发

图文并茂 教你在IDEA中如何一键生成代码,提高开发效率!

爱好编程进阶

Java 面试 后端开发

分布式shiro权限验证 二

Rubble

4月日更

模块三作业 架构设计文档

库尔斯

架构实战营

在线CSV转YAML工具

入门小站

工具

性能调优篇:困扰我半年之久的RocketMQ timeout exception 终于破解了

爱好编程进阶

Java 面试 后端开发

「內元宇宙」革命 聯載

因田木

元宇宙 我富國 創世紀 陰陽五行 股權去中心化

10分钟快速入门RDS

乌龟哥哥

4月月更

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