在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

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

  • 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:002219

评论

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

校招面试真题 | 和面试官聊的很 high,但就是拿不到 offer,怎么办?

测试人

KubeCube 版本转换:K8s 升级再也不用担心影响老版本了

网易数帆

开源 Kubernetes 云原生 KubeCube 企业号十月 PK 榜

一站式移动工作平台,让企业实现运营管理全面数字化

BeeWorks

业务系统发布新版本咋流量保障

CTO技术共享

个人成长 灰度发布 10月月更

React + Springboot + Quartz,从0实现Excel报表自动化

葡萄城技术团队

React SpringB

阿里平头哥RISC-V补丁并入安卓系统源代码,RISC-V与安卓融合再提速

Lily

OpenYurt v1.0 正式发布!一文了解三大社区 SIG 重点更新

阿里巴巴云原生

阿里云 开源 云原生 openyurt 版本升级

Kubernetes 安全专家(CKS)考试技巧

HummerCloud

Kubernetes 云原生 考试经验 CKS 10月月更

探究线程与进程的区别这一问题

C++后台开发

线程 多线程 进程 linux开发 C++开发

基金营销存量博弈时代,数字内容小程序化助力破局

Speedoooo

小程序 基金 数字内容 小程序容器 买方投顾

信息安全 Dapr 策略咋控制

CTO技术共享

个人成长 dapr 10月月更

一篇带你了解如何使用纯前端类Excel表格构建现金流量表

葡萄城技术团队

管理 流量

HCI 解决方案对比:Harvester 和 OpenStack

Rancher

Kubernetes k8s rancher

没错!在 Excel 中也能对海量数据进行明细钻取啦

Kyligence

数据分析 海量数据

新来个技术总监,给团队引入了这款开发神器,同事直呼哇塞

Liam

前后端分离 开发 Postman API 开发效率

校招面试真题 | 面试官必问面试题之你有什么想问我的?

霍格沃兹测试开发学社

观测云获亚马逊云科技年度 DevOps 合作伙伴奖

观测云

软件测试 | 测试开发 | 校招面试真题 | 面试官必问面试题之你有什么想问我的?

测吧(北京)科技有限公司

测试

分布式事务-什么是分布式事务

zarmnosaj

10月月更

虚拟集群vcluster 多租户实战演练

CTO技术共享

个人成长 集群管理 10月月更

万物皆可集成系列:低代码通过Web API

葡萄城技术团队

集成 数据录入

WorkPlus数智化移动平台,打造政企强安全的超级门户

BeeWorks

GPU在高性能仿真计算中的应用

Finovy Cloud

高性能 GPU算力

澜舟科技机器翻译新进展:汉语与世界15 种主要语言的翻译超越谷歌

澜舟孟子开源社区

人工智能 机器翻译 nlp 澜舟科技

网络安全实战之靶场渗透技术

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

报告发布|“双轮驱动”重磅升级,天猫联合瓴羊、罗兰贝格发布《天猫DTC企业经营指南 :以人为本,品牌致胜》

瓴羊企业智能服务

【案例】星环科技×某能源企业:数据中台实践

星环科技

技术贴 | 走进 PostgreSQL 行级安全策略

KaiwuDB

时序 #数据库

【原创】k8s 微服务滚动发布(服务持续可用)实践笔记

车江毅

k8s 不停机发布 滚动发布

Go语言入门02—运算符

良猿

Go golang 后端 10月月更

提高工作效率的神器:基于前端表格实现Chrome Excel扩展插件

葡萄城技术团队

chrome Excel 插件 扩展

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