深度学习瞎学之路--感知器

标签: 深度学习、感知器

[TOC]


本文将介绍感知机这一算法。感知机是由美国学者Frank Rosenblattt 在1957年提出来的。为何我们现在还要学习以前的算法?因为感知机是作为神经网络起源的算法。

严格的说,本文所说的感知机应该称为“人工神经元”或“朴素感知机”,但是很多基本的处理都是共通的,所以这里简单的称为“感知机”。
本章我们将简单介绍一下感知机,并应用感知机解决一些简单的问题,希望读者通过这个过程熟悉感知机。

2.1 感知机是什么

感知机接受多个输入信号,输出一个信号。这里所说的信号可以想象成电流那样具备流动的东西。像电流流过导线,向前方输送电子一样,感知机的信号也会形成流,向前方输送信息。但是,和实际的电流不同的是,感知机信号只有"流/和不流"两种取值。分别是,0对应"不流",即不传递信号,1对应"流",即传递信号。

图2-1是一个接受两个输入信号的感知机的例子。x_1x_2是输入信号,y是输出信号,w_1w_2是权重。图中的圆圈(O)称为“神经元”或者“节点”。
输入信号被送往神经元时,会被乘以固定的权重(w_1x_1)。神经元会计算传送过来的信号的总和,只有当这个总和超过了某个阈值 \theta,才会输出1。这也被称为“神经元被激活”。

图2-1
图2-1

感知机的运行原理用数学表达式表示如下
y = \left\{ {\begin{array}{*{20}{c}} 0&{(w_1x_1+w_2x_2 \le \theta )}\\ 1&{(w_1x_1+w_2x_2 > \theta )} \end{array}} \right.

感知机的每个输入信号都有各自固有的权重,这些权重发挥着控制各个信号的重要性的作用。也就是说,权重越大,对应该权重的信号的重要性就越高。

权重相当于电流里所说的电阻。电阻是决定电流流动难度的参数,电阻越低,通过的电流就越大。而感知机的权重则是值越大,通过的信号就越大。不管是电阻还是权重,在控制信号流动难度(或者流动容易度)这一点上的作用都是一样的。

2.2 逻辑电路

2.2.1 与门

现在让我们考虑用感知机来解决简单的问题。这里首先以逻辑电路为题材来思考一下与门
与门是有两个输入和一个输出的门电路。图 2-2 这种输入信号和输出信号的对应表称为“真值表”。如图 2-2 所示,与门仅在两个输入均为1的时候输出才是1,其他时候则输出为0

x_1 x_2 y
0 0 0
0 1 0
1 0 0
1 1 1

下面考虑用感知机来表示这个与门。需要做的就是确定能满足图 2-2 的真值表的w_1w_2\theta 的值。
那么,设定什么样的值才能制作出满足图 2-2 的条件的感知机呢?
实际上,满足图 2-2 的条件的参数的选择方法有无数多个。比如,当
w_1w_2\theta)=(0.5,0.5,0.7)时,可以满足图2-2的条件。
w_1w_2\theta)=(0.5,0.5,0.8) 或者(w_1w_2\theta)=(1.0,1.0,1.0)也满足与门条件。设定这样的参数后,当x_1x_2同时为1的时候,信号的加权总和才会超过给定的\theta

2.2.2 与非门和或门

接着,我们再来考虑一下与非门(NAND gate)。NAND 是 Not AND 的意思,与非门就是颠倒了与门的输出。用真值表表示的话,如图 2-3 所示,仅当x_1x_2同时为 1 时输出 0,其他时候则输出 1。那么与非门的参数又可以是什么样的组合呢?

x_1 x_2 y
0 0 1
1 0 1
1 0 1
1 1 0

要表示与非门,可以用(w_1w_2\theta)=(-0.5,-0.5,-0.7)这样的组合(其他的组合也是无限存在的)。实际上,只要把实现与门的参数值的符号取反,就可以实现与非门。

接下来看一下图 2-4 所示的或门。或门是“只要有一个输入信号是 1,输出就为 1”的逻辑电路。那么我们来思考一下,应该为这个或门设定什么样的参数呢?

x_1 x_2 y
0 0 0
1 0 1
1 0 1
1 1 1

这里决定感知机参数的并不是计算机,而是我们人。我们看着真值表这种“训练数据”,人工考虑(想到)了参数的值。而机器学习的问题就是将这个决定参数值的工作交由计算机自动进行。学习 是确定合适的参数的过程,而人要做的是思考感知机的构造(模型),并把训练数据交给计算机。

如上所示,我们已经知道使用感知机可以表示与门、与非门、或门的逻辑电路。这里重要的一点是:与门、与非门、或门的感知机构造是一样的。实际上,3个门电路只有参数的值(权重和阈值)不同。也就是说,相同构造的感知机(模型),只需通过适当地调整参数的值,就可以像“变色龙演员”表演不同的角色一样,变身为与门、与非门、或门。

2.3 感知机的局限性

到这里我们已经知道,使用感知机可以实现与门、与非门、或门三种逻辑电路。现在我们来考虑一下异或门(XOR gate)

2.3.1 异或门

异或门也被称为逻辑异或 电路。如图 2-5 所示,仅当x_1x_1中的一方为 1 时,才会输出 1(“异或”是拒绝其他的意思)。那么,要用感知机实现这个异或门的话,应该设定什么样的权重参数呢?

x_1 x_2 y
0 0 0
1 0 1
1 0 1
1 1 0

实际上,用前面介绍的感知机是无法实现这个异或门的。为什么用感知机可以实现与门、或门,却无法实现异或门呢?下面我们尝试通过画图来思考其中的原因。
我们将感知机形式修改为另外一种实现形式。在此之前,首先把式(2.1)的 θ 换成 -b ,于是就可以用式(2.2)来表示感知机的行为。
y = \left\{ {\begin{array}{*{20}{c}} 0&{(b+w_1x_1+w_2x_2 \le 0)}\\ 1&{(b+w_1x_1+w_2x_2 > 0 )} \end{array}} \right.
虽然有一个符号不同,但表达的内容是完全相同的。此处,b 称为偏置 w_1w_2称为权重 。
首先,我们试着将或门的动作形象化。或门的情况下,当权重参数为(b,w_1,w_2)=(-0.5,1.0,1.0)时,可满足图2-4的真值表条件。此时,感知机可用如下表达式表示
y = \left\{ {\begin{array}{*{20}{c}} 0&{(-0.5+x_1+x_2 \le 0)}\\ 1&{(-0.5+x_1+x_2 > 0 )} \end{array}} \right.
上式表示的感知机会由直线-0.5+x_1+x_2=0分割的两个空间。其中一个空间输出1,另外一个空间输出0,如图2-6所示。

图2-6
图2-6

或门在
(x_1,x_2)=(0,0)
时输出 0,在
(x_1,x_2)
为 (0, 1)、(1, 0)、(1, 1) 时输出 1。图 2-6 中○ 表示 0,▲表示 1。如果想制作或门,需要用直线将图 2-6 中的○和△分开。实际上,刚才的那条直线就将这 4 个点正确地分开。
那么,换成异或门的话会如何呢?能否像或门那样,用一条直线作出分割图 2-7 中的○和△的空间呢?
2-7
2-7

想要用一条直线将图 2-7 中的○和△分开,无论如何都做不到。事实上,用一条直线是无法将○和△分开的。

2.3.2 线性与非线性

图 2-7 中的○和△无法用一条直线分开,但是如果将“直线”这个限制条件去掉,就可以实现了。比如,我们可以像图 2-8 那样,作出分开○和△的空间。


2-8
2-8

感知机的局限性就在于它只能表示由一条直线分割的空间。图 2-8 这样弯曲的曲线无法用感知机表示。另外,由图 2-8 这样的曲线分割而成的空间称为非线性 空间,由直线分割而成的空间称为线性 空间。线性、非线性这两个术语在机器学习领域很常见,可以将其想象成图 2-6 和图 2-8 所示的直线和曲线。

2.4 多层感知机

感知机不能表示异或门让人深感遗憾,但也无需悲观。实际上,感知机的绝妙之处在于它可以“叠加层”(通过叠加层来表示异或门是本节的要点)。这里,我们暂且不考虑叠加层具体是指什么,先从其他视角来思考一下异或门的问题。

2.4.1 门电路的组合

异或门的制作方法有很多,其中之一就是组合我们前面做好的与门、与非门、或门进行配置。这里,与门、与非门、或门用图 2-9 中的符号表示。另外,图 2-9中与非门前端的○表示反转输出的意思:


2-9
2-9

那么,请思考一下,要实现异或门的话,需要如何配置与门、与非门和或门呢?这里给大家一个提示,用与门、与非门、或门代替图 2-10 中的各个“?”,就可以实现异或门。


2-10
2-10

2.3 节讲到的感知机的局限性,严格地讲,应该是“单层感知机无法表示异或门”或者“单层感知机无法分离非线性空间”。接下来,我们将看到通过组合感知机(叠加层)就可以实现异或门。

异或门可以通过图 2-11 所示的配置来实现。这里,x_1x_2 表示输入信号,y 表示输出信号。 和 是与非门和或门的输入,而与非门和或门的输出(s_1s_2)则是与门的输入。
现在,我们来确认一下图 2-11的配置是否真正实现了异或门。这里,把s_1作为与非门的输出,把s_2 作为或门的输出,填入真值表中。结果如图2-12所示,观察x_1x_2y,可以发现确实符合异或门的输出。

x_1x_2 (s_1s_2) y
(0,0) (1,0) 0
(1,0) (1,1) 1
(0,1) (1,1) 1
(1,1) (0,1) 0

下面我们试着用感知机的表示方法(明确地显示神经元)来表示这个异或门,结果如图 2-11 所示。


2-11
2-11

如图 2-11 所示,异或门是一种多层结构的神经网络。这里,将最左边的一列称为第 0 层,中间的一列称为第 1 层,最右边的一列称为第 2 层。
图 2-13 所示的感知机与前面介绍的与门、或门的感知机(图2-1)形状不同。实际上,与门、或门是单层感知机,而异或门是2层感知机。叠加了多层的感知机也称为多层感知机 (multi-layered perceptron)。

图 2-11 中的感知机总共由 3 层构成,但是因为拥有权重的层实质上只有 2 层(第 0 层和第 1 层之间,第 1 层和第 2 层之间),所以称为“2 层感知机”。不过,有的文献认为图 2-13 的感知机是由 3 层构成的,因而将其称为“3 层感知机”。

在图 2-13 所示的 2 层感知机中,先在第 0 层和第 1 层的神经元之间进行信号的传送和接收,然后在第 1 层和第 2 层之间进行信号的传送和接收,具体如下所示。

  • 第 0 层的两个神经元接收输入信号,并将信号发送至第 1 层的神经元。
  • 第 1 层的神经元将信号发送至第 2 层的神经元,第 2 层的神经元输出 y 。

2.5 总结

  • 感知机是具有输入和输出的算法。给定一个输入后,将输出一个既定的值。
  • 感知机将权重和偏置设定为参数。
  • 使用感知机可以表示与门和或门等逻辑电路。
  • 异或门无法通过单层感知机来表示。
  • 使用2层感知机可以表示异或门。
  • 单层感知机只能表示线性空间,而多层感知机可以表示非线性空间。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352

推荐阅读更多精彩内容