0. 前言
感知器是最简单的神经元结构,是研究单个训练样本的二分类器。
1. 单个感知器
对于一个感知器,其输入数据是二进制(0,1),输出也是二进制数。
感知器可以看做是根据权重来做出决策的单元,对于给定的w和b,感知器能够对数据进行分类预测。
1.1 单层结构
1.2 表达式
o u t p u t = { 0 , w ⋅ x + b ≤ 0 1 , w ⋅ x + b > 0 output=\left\{\begin{aligned} 0, & \text w \cdot x+b≤0 \\1, & \text w \cdot x+b>0 \end{aligned}\right. output={0,1,w⋅x+b≤0w⋅x+b>0
2. 多个感知器
多个感知器组合,就形成了多层感知器的网络结构
2.1 多层结构
3. 举例说明
3.1 单个神经元实现逻辑与
假设 x 1 , x 2 ∈ { 0 , 1 } x_1,x_2\in\{0,1\} x1,x2∈{0,1}; W = ( 2 , 2 , − 3 ) W = (2, 2,-3) W=(2,2,−3); y = x 1 A N D x 2 y = x_1 AND x_2 y=x1ANDx2
x 1 x_1 x1 | x 2 x_2 x2 | y t r u e y_{true} ytrue |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
构建感知器模型
令
z
=
w
⋅
x
+
b
z = w\cdot x+b
z=w⋅x+b
y
=
h
(
2
⋅
x
1
+
2
⋅
x
2
−
3
)
=
{
0
,
z
<
0
1
,
z
≥
0
y = h(2\cdot x_1+2\cdot x_2-3)=\left\{\begin{aligned} 0, & \text z<0 \\1, & \text z≥0 \end{aligned}\right.
y=h(2⋅x1+2⋅x2−3)={0,1,z<0z≥0
上面的情况,对应下图中的分布,可以通过一条线很轻松分成两类
3.2 多个神经元实现逻辑与
对于下面这种分布,没办法通过一个神经元将其分开,因为是非线性可分的
可以通过多个神经元将其分开
z
1
=
x
1
A
N
D
x
2
z_1=x_1 AND x_2
z1=x1ANDx2;
z
2
=
x
1
O
R
x
2
z_2=x_1 OR x_2
z2=x1ORx2;
y
t
r
u
e
=
z
1
A
N
D
z
2
y_{true}=z_1 AND z_2
ytrue=z1ANDz2
x 1 x_1 x1 | x 2 x_2 x2 | z 1 z_1 z1 | z 2 z_2 z2 | y t r u e y_{true} ytrue |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 0 |
1 | 0 | 0 | 1 | 0 |
1 | 1 | 1 | 1 | 1 |
假设 W 1 = ( 2 , 2 , − 3 ) W_1 = (2, 2,-3) W1=(2,2,−3), W 2 = ( 2 , 2 , − 1 ) W_2 = (2, 2,-1) W2=(2,2,−1), W z = ( 1 , 3 , − 3 ) W_z = (1, 3,-3) Wz=(1,3,−3)
y = h ( z ) = { 0 , z < 0 1 , z ≥ 0 y = h(z)=\left\{\begin{aligned} 0, & \text z<0 \\1, & \text z≥0 \end{aligned}\right. y=h(z)={0,1,z<0z≥0