写点什么

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

  • 2020-04-02
  • 本文字数:2525 字

    阅读完需:约 8 分钟

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

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


前文所述,神经网络是以从神经元抽象出来的数学模型为出发点的。下面,我们将更详细地考察神经元的工作,并将其在数学上抽象化。

整理神经元的工作

人的大脑是由多个神经元互相连接形成网络而构成的。也就是说,一个神经元从其他神经元接收信号,也向其他神经元发出信号。大脑就是根据这个网络上的信号的流动来处理各种各样的信息的。



让我们来更详细地看一下神经元传递信息的结构。如上图所示,神经元是由细胞体、树突、轴突三个主要部分构成的。其他神经元的信号(输入信号)通过树突传递到细胞体(也就是神经元本体)中,细胞体把从其他多个神经元传递进来的输入信号进行合并加工,然后再通过轴突前端的突触传递给别的神经元。


那么,神经元究竟是怎样对输入信号进行合并加工的呢?让我们来看看它的构造。


假设一个神经元从其他多个神经元接收了输入信号,这时如果所接收的信号之和比较小,没有超过这个神经元固有的边界值(称为 阈值),这个神经元的细胞体就会忽略接收到的信号,不做任何反应。



注:对于生命来说,神经元忽略微小的输入信号,这是十分重要的。反之,如果神经元对于任何微小的信号都变得兴奋,神经系统就将“情绪不稳定”。


不过,如果输入信号之和超过神经元固有的边界值(也就是阈值),细胞体就会做出反应,向与轴突连接的其他神经元传递信号,这称为点火。



那么,点火时神经元的输出信号是什么样的呢?有趣的是,信号的大小是固定的。即便从邻近的神经元接收到很大的刺激,或者轴突连接着其他多个神经元,这个神经元也只输出固定大小的信号。点火的输出信号是由 0 或 1 表示的数字信息。

神经元工作的数学表示

让我们整理一下已经考察过的神经元点火的结构。


(i) 来自其他多个神经元的信号之和成为神经元的输入。


(ii) 如果这个信号之和超过神经元固有的阈值,则点火。


(iii) 神经元的输出信号可以用数字信号 0 和 1 来表示。即使有多个输出端,其值也是同一个。


下面让我们用数学方式表示神经元点火的结构。


首先,我们用数学式表示输入信号。由于输入信号是来自相邻神经元的输出信号,所以根据 (iii),输入信号也可以用“有”“无”两种信息表示。因此,用变量 表示输入信号时,如下所示。



注:与视细胞直接连接的神经元等个别神经元并不一定如此,因为视细胞的输入是模拟信号。


接下来,我们用数学式表示输出信号。根据 (iii),输出信号可以用表示点火与否的“有”“无”两种信息来表示。因此,用变量 表示输出信号时,如下所示。




最后,我们用数学方式来表示点火的判定条件。


从 (i) 和 (ii) 可知,神经元点火与否是根据来自其他神经元的输入信号的和来判定的,但这个求和的方式应该不是简单的求和。例如在网球比赛中,对于来自视觉神经的信号和来自听觉神经的信号,大脑是通过改变权重来处理的。因此,神经元的输入信号应该是考虑了权重的信号之和。用数学语言来表示的话,例如,来自相邻神经元 1、2、3 的输入信号分别为 ,则神经元的输入信号之和可以如下表示。


式中的 是输入信号 对应的 权重(weight)。



根据 (ii),神经元在信号之和超过阈值时点火,不超过阈值时不点火。于是,利用式 (1),点火条件可以如下表示。



这里, 是该神经元固有的阈值。


例 1 来自两个神经元 1、2 的输入信号分别为变量 ,权重为 ,神经元的阈值为 。当 时,考察信号之和 的值与表示点火与否的输出信号 的值。


输入 $\boldsymbol{x_1} $输入 $\boldsymbol{x_2} $和 $\boldsymbol{w_1x_1+w_2x_2} $点火输出信号 $\boldsymbol{y}$
00$5\times0+3\times0=0<4$0
01$5\times0+3\times1=3<4$0
10$5\times1+3\times0=5\geqslant4$1
11$5\times1+3\times1=8\geqslant4$1

点火条件的图形表示

下面我们将表示点火条件的式 (2) 图形化。以神经元的输入信号之和为横轴,神经元的输出信号 为纵轴,将式 (2) 用图形表示出来。如下图所示,当信号之和小于 时, 取值 0,反之 取值 1。



如果用函数式来表示这个图形,就需要用到下面的 单位阶跃函数


单位阶跃函数的图形如下所示。



利用单位阶跃函数 ,式 (2) 可以用一个式子表示如下。


点火的式子:


通过下表可以确认式 (3) 和式 (2) 是一样的。


|||||


|-|-|


|0(无点火)|小于 ||0|


|1(点火)|大于等于 ||1|


此外,该表中的 (式 (3) 的阶跃函数的参数)的表达式


称为该神经元的 加权输入


备注 的处理

有的文献会像下面这样处理式 (2) 的不等号。

在生物上这也许是很大的差异,不过对于接下来的讨论而言是没有问题的。因为我们的主角是 Sigmoid 函数,所以不会发生这样的问题。


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



相关阅读


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


2020-04-02 10:002157

评论

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

WLAN无线局域网技术基础(三)无线侧组网概念,2.4GHz频段与5GHz频段区别和优缺点,胖AP架构和瘦AP架构的优缺点

Python-派大星

10月月更

【一Go到底】第三十一天---查找

指剑

Go golang 10月月更

面试官:说说你平时都用过哪些分布式ID生成方案?

程序员小毕

Java 程序员 分布式 后端 分布式ID

ubuntu16.04安装deb软件包教程

DS小龙哥

10月月更

【运维】Centos 7 一键 搭建 Java开发者环境

石臻臻的杂货铺

Java 运维 10月月更

数据湖(十五):Spark与Iceberg整合写操作

Lansonli

数据湖 10月月更

字母大小写全排列

掘金安东尼

算法 10月月更

如何向表中插入数据以及如何更新、删除表中的数据

芯动大师

Python 10月月更 插入数据

ndarray的赋值、视图、拷贝和广播

芯动大师

Python 赋值结构 10月月更

VM虚拟机下Ubuntu系统扩展磁盘大小方法

DS小龙哥

10月月更

dockerfile分层构建业务镜像

忙着长大#

Docker 镜像

数据处理

芯动大师

Python 数据处理 10月月更

Numpy 基础教程之Numpy的介绍

芯动大师

Python Numpy 10月月更

分享一份2022最新Java面试八股文:从基础到高级整整涵盖了Java14 个核心技术

程序员小毕

Java 程序员 面试 程序人生 后端

云数据库助力电池云(二)

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

SQL注入的题目

w010w

网络安全 SQL注入 SQL语句 10月月更

【web 开发基础】PHP 自定义函数之函数的调用 -PHP 快速入门 (25)

迷彩

函数调用 函数 10月月更 web开发基础 PHP基础

Vagrant定制个性化CentOS7模板

程序员欣宸

vagrant 虚拟机 10月月更

极客时间运维进阶训练营第二周作业

老曹

海龟编程 python绘图工具turtle库的用法 turtle库使用方法大全,画笔设置 画布设置 绘图设置,画笔粗细,画笔颜色, 画笔速度。

Python-派大星

10月月更

【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(上)

洛神灬殇

分布式事务 TCC 分布式事务管理

图解 | 聊聊「秒杀」

小小怪下士

Java 程序员 高并发 秒杀

【一Go到底】第三十天---排序

指剑

Go golang 10月月更

SAP | Processing Blocks的三种类型

暮春零贰

SAP abap 10月月更

电脑安装Ubuntu桌面系统(部署开发环境、直接U盘安装,针对I386工控板)

DS小龙哥

10月月更

Python 文件处理 open()函数

Python-派大星

10月月更

C++从入门到精通(第七篇) :string类的讲解和模拟实现

雪芙花

c 10月月更 C++

Web3学习日记

无人之路

日志 web3

ndarray 的创建及属性

芯动大师

Python 10月月更 ndarray

运维进阶训练营 -W02H

赤色闪电

运维

C++从入门到精通(第七篇) :vector深度剖析及模拟实现

雪芙花

c 10月月更 C++

深度学习的数学(二):神经元工作的数学表示_AI&大模型_涌井良幸,涌井贞美_InfoQ精选文章