在苹果分类分类示例中,在图 8.3 (第 163 页)中的两个类之间绘制了一条曲线分界线。更简单的情况如图 8.7 所示。这里,二维训练样例可以用直线分开。我们将这样一组训练数据称为线性可分。在n 维中需要超平面
分离。这表示维度为n – 1 的线性子空间。
因为R n中的每个(n – 1)维超平面可以用等式描述
ñ
aixi
= θ
i = 1
如下定义线性可分性是有意义的。
图8.8 布尔函数AND可线性分离,但XOR不是(
= 真,
= 假)
⊂⊂
定义8.2两组M 1 R n和M 2 R n称为线性可分离
如果实数a 1 ,…,an,θ存在
ñ
艾希>θ 对于所有X ∈中号1和
i = 1
值θ表示阈值。
ñ
艾希≤ θ 对于所有X ∈中号2。
i = 1
∧
– +
在图8.8中,我们看到AND函数是线性可分的,但XOR函数却不是。为,例如,线X 1 3 / 2分离式的真假解释X 1 X 2与此相反,异或函数不具有分离的一条直线。显然,在这方面,XOR功能具有比AND功能更复杂的结构。
对应于以下规则:
定义8.3让瓦特 = (W 1 ,…,WN)∈ [R Ñ是权重向量和X ∈ [R Ñ
通过感知器,我们提出了一种非常简单的学习算法,可以分离线性可分离的集合。
输入向量。甲感知表示函数P :– [R Ñ
→{ 0 , 1 },其
P(x)=
1如果wx =
wixi> 0,
ni = 1
0其他。
感知器[Ros58,MP69]是一种非常简单的分类算法。它相当于通过阈值函数激活的双层神经网络,如第 171 页的图 8.9 所示。如章节所示。如图9所示,网络中的每个节点代表神经元,并且每个边缘都是突触。但是现在,我们只会这样做
图8.9 感知器作为双层神经网络的图形表示
将感知器视为学习代理,即将特征向量映射到函数值的数学函数。这里,输入变量喜来表示
功能。
正如我们在公式n
wixi> 0中看到的那样,所有点x都超过了
i = 1
=
平面ñ
wixi
我 1
= =
= 0被归类为正( P(x)
= 1),其他所有人都是
ative( P(x)0)。分离超平面穿过原点,因为 θ0。我们将使用一个小技巧来表明没有任意阈值表示没有功率限制。然而,首先,我们要为感知器引入一种简单的学习算法。
1.
学习规则
如果 WX ≤ 0 然后瓦特=瓦特+ X
w = 实数的任意向量
重复
+ –
利用符号M和M分别表示正负训练模式的集合,感知器学习规则读取[MP69]
P ERCEPTRON L EARNING [ M +
,M – ]
对于所有的X ∈ 中号 +
直到所有的X ∈ 中号 +∪ 中号 – 正确分类
如果 wx > 0 那么 w = w – x
对于所有的X ∈ 中号 –
∈
感知器应输出所有x M +的值1 。通过第170 页的定义8.3 ,当wx > 0 时,这是正确的。如果不是这种情况,则将x添加到权重向量w,由此权重向量在正确的方向上改变。
我们看到这个时候我们应用感知到变化的矢量 w ^ + X ,因为
( w + x )・ x = wx + x 2 。
如果这个步骤经常重复,那么在某个时刻,值wx将变为正数,因为它应该是。类似地,我们看到,对于负面的训练数据,
perceptron计算的值越来越小
( w – x )・ x = wx – x 2
在某些时候变得消极。2
= + =
= { – – } =
实施例8.2 感知器是上套进行训练中号+ = {(0,1。8),(2,0。6)} 和中号– (1。2,1。4),(0。4,1)。瓦特(1,1)用作初始权重向量。训练数据和由权重向量wx x 1 x 定义的线显示了2 0
=
在第 173 页的图 8.10中,在第一行的第一张图片中。另外,权重向量绘制为虚线。因为wx 0,这与线正交。
在通过学习算法的循环的第一次迭代中,只有错误地分类训练的例子是(– 1 。 2 , 1 。 4 )因为
1
(– 1。2,1。4)・ 1 = 0。2 > 0。
–
+
= – – = –
这导致瓦特( 1 , 1 )( 1 。 2 , 1 。 4 )( 2 。 2 , 0 。 4 ),如在顶行中绘制的第二图像在图8.10 页173。其他图像显示,在总共五次更改之后,分界线位于两个类之间。因此,感知器正确地对所有数据进行分类。我们在示例中清楚地看到,来自M的每个错误分类的数据点“拉动”权重向量w在其方向上,每个错误分类的点从M “按”相反方向的权重向量。
向量w 。具有如此计算的权重向量的感知器P除以
定理8.1让M +和M – 类可以通过超平面线性分离
已经证明[MP69]感知器总是收敛于线性可分离的数据。我们有
wx = 0.然后 P ERCEPTRON L EARNING 为每次初始化收敛
M +和M – 类,即:
P(X ) = 1 ⇔ X ∈ 中号 +
和
P( X ) = 0 ⇔ X ∈中号 – 。
正如我们在例8.2中可以清楚地看到的那样,上面定义的感知器不能分开任意线性可分离的集合,而只能分辨那些可以通过原点划分的线,或者通过原点的超平面可以被R n整除,因为常数
i = 1
方程n wixi = 0中缺少项θ。
2 小心!这不是感知器学习规则的收敛证明。它仅显示当训练数据集由单个示例组成时感知器收敛。
= = –
=
§
◦
图8.10感知器学习规则应用于两个正()和两个负()数据点。的实线示出了当前的分界线 WX 0。正交虚线是权重向量瓦特和第二虚线的变化矢量 WX或 WX要添加,这是从当前活动数据点计算在包围灰色
通过以下技巧,我们可以生成常数项。我们将输入向量x的最后一个分量xn保持为常量并将其设置为值1.现在权重wn =: – θ就像一个阈值因为
nn – 1 n – 1
wixi = wixi – θ> 0 ⇔ wixi>θ。
i = 1
i = 1
i = 1
i = 1
i = 1
i = 1
=
输入中的这种常数值xn 1称为偏置单元。因为相关的重量导致超平面的恒定移位,所以术语“偏置”非常适合。
在感知器学习算法的应用中,将具有常数值1的比特附加到训练数据矢量。我们观察到在学习过程中学习了权重wn或阈值θ。
现在已经表明,感知器Pθ :– [R ñ
– 1 →{ 0 , 1 }
Pθ(x 1,…,xn – 1)=
i = 1
(8.1)
1如果n –
1 wixi>θ,
0其他
0其他
:→{}
与任意的阈值可以由感知器来模拟P ř Ñ 0 ,1与阈值0。如果我们比较(8.1与线性可分的定义),那么我们可以看到,这两个语句是等价的。总之,我们已经表明:
图8.11用于训练的六种模式。的整个右侧图案是22个测试图案的其中一个第一图案与四个倒位
图8.12 感知器的相对正确性与测试数据中反转位数的函数关系
定理8.2 函数f:– [R Ñ
→{ 0 ,1 } 可以通过一个感知器表示
例8.3 我们现在用六个简单的图形二进制模式训练一个具有阈值的感知器,如图8.11 所示,每个模式有5 × 5像素。
训练数据可以通过P ERCEPTRON L EARNING 在所有模式的四次迭代中学习。作为噪声引入的具有可变数量的反转位的模式用于测试系统的泛化能力。在每种情况下,测试图案中的反转位依次依次排列。在图8.12中,正确分类的模式的百分比被绘制为假位数的函数。
在大约五个连续的反转位之后,正确性急剧下降,考虑到模型的简单性,这并不奇怪。在下一节中,我们将介绍一种在这种情况下表现更好的算法。
2.
优化和展望
作为最简单的基于神经网络的学习算法之一,双层perpivtron只能划分线性可分类。在Sect。9.5我们将看到多层网络功能更强大。尽管结构简单,但是
=±| |
=±
所呈现的形式的感知器收敛非常缓慢。它可以通过改变重量的矢量的标准化来加速。公式 wwx 由 wwx / x 代替。因此,每个数据点在学习期间具有相同的权重,而与其值无关。
收敛速度很大程度上取决于向量w的初始化。理想情况下,根本不需要进行更改,算法会在一次迭代后收敛。我们可以通过使用启发式初始化来更接近这个目标
w 0 = x – x ,
X ∈中号+
X ∈中号–
X ∈中号+
X ∈中号–
我们将在第 217 页的练习 8.5中更密切地进行调查。
如果我们将感知器公式与Sect中提出的评分方法进行比较。7.3.1,我们立即看到它们的等价性。此外,感知器作为最简单的神经网络模型,相当于朴素贝叶斯,这是最简单的贝叶斯网络类型(参见第 219 页的练习 8.16 )。因此,显然几种非常不同的分类算法具有共同的起源。
在Chap。我们将以反向传播算法的形式熟悉感知器的概括,它可以通过使用多个层来划分非线性可分集,并且具有更好的学习规则。