You are on page 1of 12

学习笔记——MP 网络

物试 82 马玉辰

2021 年 1 月 17 日

摘要

McCulloch 和 Pitts 借鉴了生物神经细胞之间的连接方式和信息传递特点,提出了将其应用于逻辑

运算的想法,奠定了 M-P 网络的基础。本报告上浅显地讨论了人工神经网络的发展历程,结构,特点

及相关方法。此外,在进化学角度浅谈历史,说明了自然神经网络与人工神经网络更加细致的联系。

1 引

这篇报告介绍了 MP 神经网络,包括它的背景、提出,以及在机器学习方面的应用等。以周志

华老师的《机器学习》中对神经网络的介绍为主要框架,其中加入了来自各种文献,论坛,以及科

普性文章视频中获取的信息,来表达我个人对 MP 神经网络的理解。也作为学习过程的记录。

2 MP 神经网络的背景和提出

1943 年 McCulloch 和 Pitts 在他们的论文 A Logical Calculus of the Ideas Immanent in Nervous

Activity 中,首次借鉴了生物神经细胞之间的连接方式和信息传递特点,提出了将其应用于逻辑运

算的想法。[3]

2.1 生物神经网络的架构

神经网络中最基本的成分是神经元。在生物神经网络中,每个神经元胞体与其他神经元胞体通

过突触相连,当一个神经元“兴奋”时,就会向相连的神经元发送化学物质,从而改变这些神经元

内的电位——可以是促进性的作用,也可以是抑制性的作用。如果某神经元的电位超过了一个“阈

值”,那么它就会被激活,即“兴奋” 起来,向其他神经元发送化学物质。从而在神经元之间实现信

号的传递。[1]

在这里,有一段更加详细的关于神经细胞传导信号机制的探讨,涉及到恢弘壮大的进化过程,直

接决定了寒武纪的物种爆发。虽然它对理解神经网络有着很大的帮助,并且能令人体悟到自然的玄

妙,然而我认为它不适合作为一个主要分支插入,故在附录 A 中展示。

1
2.2 McCulloch 和 Pitts 的想法 [3]

神经生理学家沃伦·麦克洛克(McCulloch)和数学家沃尔特·皮茨(Pitts)对上面的神经结构

进行了“过度简化”的概括,然而这种概括却十分的有效并且抓住了内核。他们对神经细胞传递信

息的物理过程做出了以下几个假设:

1. 神经元的活动是布尔型的”all or none” 过程。(这决定了可以用逻辑语言表述)

2. 为了在任何时候都能激发神经元,必须在潜伏期内激发一定数量的突触,而该数量与先前在

神经元上的活动和位置无关。(个人理解:是否与输入有关?)

3. 只考虑突触之间对信号的衰减(距离无关?)

4. 任何抑制性突触的活动都绝对会阻止神经元在那个时候的兴奋。

5. 神经网的结构不随时间改变。

通过一些非常“数学性”的证明,McCulloch 和 Pitts 证明了由于神经活动的“all or none”特

征,神经事件及其之间的关系可以通过比例逻辑加以处理。如通过改变神经元的激发阙值,就可完

成“与(AND)
”、“或(OR)
”及“非(NOT)
”等三个状态转换功能。并且在可能的神经生理学假

设中,许多特定的选择是等效的。同时他们的工作也给出了一套完整的对神经网络的表示方法,为

之后的理论研究提供了工具。

2
图 1: 一些简单的神经元网络和对应的逻辑表示 [3]

3
2.3 发展历程 [6, 7]

19 世纪 40 年代,M-P 神经元模型、Hebb 学习率,五十年代的感知机 [4] 相继出现,神经网络

发展迎来第一个高潮期。

1969 年,马文·明斯基和西摩尔·派普特(Seymour Papert)在出版了《感知机:计算几何简

介”》一书, 书中论述了感知机模型存在的两个关键问题:

(1)单层的神经网络无法解决不可线性分割的问题,典型例子如异或门电路;

(2)更为严重的问题是,即使使用当时最先进的计算机,也没有足够计算能力,完成神经网络

模型所需要的超大的计算量(比如调整网络中的权重参数)。

这个论断使神经网络进入了一段“冰河期”。

1974 年,Pual Werbos 发明了 BP 算法,但此时正值神经网络的“冰河期”,并没有引起重视,

直到 1983 年 John Hopfiled 利用神经网络,在旅行商问题的求解上获得了当时最好的结果,引起了

轰动;紧接着 Rumellhart 重新发明了 BP 算法,在 Hopfield 带来的兴奋之下,BP 算法迅速走红,

神经网络迎来了第二次高潮。

但是到了二十世纪九十年代中期,随着统计学习理论和支持向量机的兴起,神经网络学习的理

论性质不够清楚、试错性强、在使用中充斥了大量的“窍门”的弱点更为明显,于是神经网络又陷

入低谷。

2010 年前后,计算能力迅速提升, 大数据普及,神经网络的研究在“深度学习”的名义下重新

崛起,迎来了第三次高潮。

3 人工神经网络 [1]

3.1 神经元模型

将上述叙述抽象为??所示的简单模型,在这个模型中,神经元接收到来自 n 个其他神经元传递

过来的输入信号,这些输入信号通过带权重的连接进行传递神经元接收到的总输入值将与神经元的

阈值进行比较,然后通过“激活函数”处理以产生神经元的输出

4
图 2: 神经元示意 [1]

理想中的激活函数是阶跃函数,它将输入值映射为输出值“0”或“1”, 显然“1” 对应于神经元

兴奋,“0” 对应抑制实际中,常常使用 Sigmod 函数作为激活函数

图 3: 激活函数 [1]

除了 Sigmod 函数之外,还经常采用如 tanh 函数,ReLU 函数等来适配不同问题环境。

把许多个这样的神经元按一定的层次结构连接起来,就得到了神经网络。

3.2 感知机、多层网络

感知机 (Perceptron) 由两层神经元组成,,输入层接收外界输入信号后传递给输出层,输出层

是 M-P 神经元,亦称“阈值逻辑单元”。

5
图 4: 感知机 [1]

y = f (Σwi xi —θ)

f 是阶跃函数

通过调整权重,感知机能容易地实现逻辑与、或、非运算。如:

w1 = w2 = 1, θ = 2,此时仅当 x1 = x2 = 1�y = 1,即“与”门

阈值可看做一个固定输入为-1 的“哑节点”,由此网络的调整统一为权重的学习。

不过可以注意到,单层的阈值逻辑单元无法实现复杂功能,甚至连最简单的非线性“异或”问

题都无法解决,这时,需要引入更多层的神经元,以达到更好地非线性学习效果。

输出层与输入区之间的神经元,被称为隐层或隐含层 (hidden layer),隐含层和输出层神经元都

是拥有激活函数的功能神经元.

图 5: 线性可分问题与非线性的异或问题 [1]

6
图 6: 异或问题与对应的双层感知机 [1]

3.3 学习方法

给定已知输入输出,通过某种规则调整网络权重的过程是学习。网络的信息在一定意义上就是

存储于权重中。误差逆传播 (error BackPropagation) 即 BP 算法就是其中最杰出的代表,它是迄今

最成功的神经网络学习算法

BP 算法基于最小二乘误差和梯度下降法给出了一个简单高效的更新规则:

图 7: 变量符号标记 [1]

( )
对训练例 (xk , y k ) , 假定神经网络的输出为 ŷ k = ŷ1k , ŷ2k , . . . , ŷlk , 即

ŷjk = f (βj − θj )

则网络在 (xk , y k ) 上的均方误差为

1 ∑( k )2
l
Ek = ŷj − yjk
2
j=1

图 5.7 的网络中有 (d + l + 1)q + l 个参数需确定: 输入层到隐层的 d × q 个权值、隐层到输出层的

7
q × l 个权值、q 个隐层神经元的间值、l 个输出层神经元的间值. BP 是一个迭代学习算法, 在迭代

的每一轮中采用广义的感知机学习规则对参数进行更新估计, 即与式 (5.1) 类似, 任意参数 v 的更新

估计式为

v ← v + ∆v

以隐层到输出层的连接权 whj 为例,对上述误差 Ek , 给定学习率 η, 有

∂Ek
∆whj = −η
∂whj

由链式法则
∂Ek ∂Ek ∂ ŷjk ∂βj
= · ·
∂whj ∂ ŷjk ∂βj ∂whj

根据 βj 的定义, 显然有
∂βj
= bh
∂whj

Sigmoid 函数有一个很好的性质:

f ′ (x) = f (x)(1 − f (x))

联合上述各式,可以得到 whj 的迭代规则

∆whj = ηgj bh

其中,
∂Ek ∂ ŷjk
gj = − ·
∂ ŷjk ∂βj
( )
= − ŷjk − yjk f ′ (βj − θj )
( )( )
= ŷjk 1 − ŷjk yjk − ŷjk

同理,可以得到其它的更新规则。

总结如下:

8
图 8: BP 算法 [1]

3.4 一些问题

3.4.1 过拟合,欠拟合 [2, 1]

机器学习的主要挑战是我们的算法必须能够在先前未观测的新输入上表现良好,而不只是在训

练集上表现良好。在先前未观测到的输入上表现良好的能力被称为泛化 (generalization)。

通常,我们度量模型在训练集中分出来的测试集 (test set) 样本上的性能,来评估机器学习模型

的泛化误差。

我们会在训练集上采样,然后挑选参数去降低训练集误差,然后再在测试集上采样。在这个过

程中,测试误差期望会大于或等于训练误差期望。以下是决定机器学习算法效果是否好的因素:

1. 降低训练误差。

2. 缩小训练误差和测试误差的差距。

这两个因素对应机器学习的两个主要挑战: 欠拟合 (underfitting) 和过拟合 (overfitting)。欠拟

合是指模型不能在训练集上获得足够低的误差。而过拟合是指训练误差和和测试误差之间的差距太

大。通过调整模型的容量 (capacity),我们可以控制模型是否偏向于过拟合或者欠拟合。

9
图 9: 欠拟合、恰当拟合与过拟合 [2]

另一种避免过拟合的方法 [1] 是正则化:基本思想为,在误差目标函数 E 中增加一个描述网络

复杂度的成分,来使网络在学习模型与避免学习过度之间“竞争”。

3.4.2 局部最小

网络可能会陷入局部最优解。

图 10: 全局最优与局部最优 [1]

解决的办法如:同时设定多个初值、模拟退火(有概率接受更差的结果)、随机梯度下降(随机

梯度下降的核心是,梯度是期望。期望可使用小规模的样本近似估计。具体而言,在算法的每一步,

我们从训练集中均匀抽出一小批量 (minibatch) 样本 B = x(1), ..., x(m�)。小批量的数目 m� 通常是

一个相对较小的数,从一到几百。重要的是,当训练集大小 m 增长时,m� 通常是固定的。我们可能

在拟合几十亿的样本时,每次更新计算只用到几百个样本 [2])

10
3.5 其他神经网络

除了上述的前馈神经网络,还有 RBF,ART,SOM,玻尔兹曼机等其他网络类型,但都基于 M-P

网络的思想。

4 附录

A 进化角度看神经网络 [8]

这一部分的内容主要来自 @YJango 老师《学习观 16》的讲解。

生命的诞生和进化是一个涌现的过程,即实现“个体之和大于整体”的质变过程。比如,蛋白质间

的涌现构成了草履虫应激反应;组织精妙配合,靠的是细胞间的涌现;社会结构、繁荣经济的诞生

是人类个体间的涌现。这与 Anderson 教授“more is different[5]”的思想呼应。

涌现的条件苛刻,因为单纯的堆叠不能形成质变。正如 6.4 亿年前艾迪卡拉纪的阿瓦隆大爆发,

细胞间虽然形成了整体稳定结构,但是相当于线性聚集,没有质变。

但在同一时期,变异出了特异化功能的神经细胞,为接下来的架构奠定了基础。

蛋白质的配合赋予了神经细胞产生并且传递电脉冲的能力:

1. 在“静息电位”,膜电位由 Na-K 离子泵保持在-70mV;

2. 当轴突与胞体连接处的轴丘膜电位收到影响,升高至-55mV 的阈值时,神经细胞被激活,电

压门控钠离子通道打开,膜电位飙升至 +40mV(像极了激活函数,或者应该为激活函数像极了它)

3. 当膜电位高于 +40mV 时,电压门控钾离子通道被激活,使得膜电位骤减至-70mV 以下。这

样就完成了一次循环

但是,信息的传播还需要调频,这一功能来自于突触。囊泡中所含的不同神经递质释放后,与

受体结合会产生不同影响,影响膜电位变化速度,实现调频。

神经网的出现给生物带来了前所未有的信息处理能力,直接导致了众多高级功能的出现——动物、

捕食者就此出现,形成进化的正反馈,至此彻底引发了寒武纪的物种大爆发。

神经网如何实现复杂的功能?答案是学习:“突触可塑性”。突触的受体不再固定不变,而是可

以根据经验调节:长期增强或长期抑制可以增加或减少受体数量。
(权重)它有着重要意义——使得

个体在生命周期内能够适应环境,而不是传统的以死亡为代价的种群进化。(神经达尔文主义)

非线性函数对应激活条件,可变频突触对应网络权重,Dropout 等机制也是模仿个体学习的遗

忘过程。当然,我们并不知道生物通过何种方法更新,人工神经网络中,采用 BP 算法代替之。

11
参考文献

[1] 周志华. 机器学习: = Machine learning[M]. 清华大学出版社, 2016.

[2] I Goodfellow,Y Bengio,A Courville:Deep Learning[M].

[3] Mcculloch W S , Pitts W . A Logical Calculus of the Ideas Immanent in Nervous Activity[J].

biol math biophys, 1943.

[4] Rosenblatt F . The perceptron: a probabilistic model for information storage and organization

in the brain.[M]// Neurocomputing: foundations of research. MIT Press, 1988.

[5] Anderson P W . More is different.[J]. Science, 1972, 177(4047):393-396.

[6] https://developer.aliyun.com/article/90565

[7] https://blog.csdn.net/kabuto_hui/article/details/79885017?utm_medium=distribute.pc_relevant.none-

task-blog-BlogCommendFromBaidu-9.control&depth_1-utm_source=distribute.pc_relevant.none-

task-blog-BlogCommendFromBaidu-9.control

[8] https://www.bilibili.com/video/BV1g4411r7jo?from=search&seid=14265089005276732793

12

You might also like