可以用势函数来确定非线性的判别函数。
基本思想:
假设需要划分属于
ω
1
\omega_{1}
ω1和
ω
2
\omega_{2}
ω2的模式样本。把属于
ω
1
\omega_{1}
ω1的点比拟为能源点,在该点上电位达到峰值,随着与该点距离的增大,电位分布减小,即把样本
x
k
\mathbf x_{k}
xk附近空间上的
x
\mathbf{x}
x电位分布看成一个势函数
k
(
x
,
x
k
)
k(\mathbf{x,x_{k}})
k(x,xk)。于是,对于属于
ω
1
\omega_{1}
ω1的样本集群,其附近空间会形成高地,而样本点的位置就是山头;相对的,属于
ω
2
\omega_{2}
ω2的样本,其周围会形成凹地。只要在两类电位分布之间选择合适的等高线,就可以认为是模式分类的判别函数。
判别函数的产生:
任意一个
x
k
\mathbf{x_{k}}
xk样本所产生的的势函数以
k
(
x
,
x
k
)
k(\mathbf{x},\mathbf{x_{k}})
k(x,xk)表征,判别函数
d
(
x
)
d(\mathbf{x})
d(x)是由势函数序列
k
(
x
,
x
1
)
k(\mathbf{x,x_{1}})
k(x,x1),
k
(
x
,
x
2
)
,
.
.
.
k(\mathbf{x,x_{2}}),...
k(x,x2),...构成,对应训练样本
x
1
,
x
2
\mathbf{x_{1}},\mathbf{x_{2}}
x1,x2。在训练状态,模式样本逐个输入分类器,第
t
+
1
t+1
t+1步迭代时的积累位势函数
K
t
+
1
(
x
)
K_{t+1}(\mathbf{x})
Kt+1(x)决定于前
t
t
t步势函数的累加
K
t
(
x
)
K_{t}(\mathbf{x})
Kt(x):
当加入第
t
+
1
t+1
t+1个样本时,
(1)若
x
t
+
1
∈
ω
1
\mathbf{x}_{t+1}\in \omega_{1}
xt+1∈ω1且
K
t
(
x
t
+
1
)
>
0
K_{t}(\mathbf{x}_{t+1})>0
Kt(xt+1)>0,或
x
t
+
1
∈
ω
2
\mathbf{x}_{t+1}\in \omega_{2}
xt+1∈ω2且
K
t
(
x
t
+
1
)
<
0
K_{t}(\mathbf{x}_{t+1})<0
Kt(xt+1)<0时,则分类正确,此时
K
t
+
1
(
x
)
=
K
t
(
x
)
K_{t+1}(\mathbf x)=K_{t}(\mathbf x)
Kt+1(x)=Kt(x)
(2)若
x
t
+
1
∈
ω
1
\mathbf{x}_{t+1}\in \omega_{1}
xt+1∈ω1且
K
t
(
x
t
+
1
)
<
0
K_{t}(\mathbf{x}_{t+1})<0
Kt(xt+1)<0,则
K
t
+
1
(
x
)
=
K
t
(
x
)
+
k
(
x
,
x
t
+
1
)
K_{t+1}(\mathbf x)=K_{t}(\mathbf x)+k(\mathbf x, \mathbf x_{t+1})
Kt+1(x)=Kt(x)+k(x,xt+1)
(3)若
x
t
+
1
∈
ω
2
\mathbf{x}_{t+1}\in \omega_{2}
xt+1∈ω2且
K
t
(
x
t
+
1
)
>
0
K_{t}(\mathbf{x}_{t+1})>0
Kt(xt+1)>0,则
K
t
+
1
(
x
)
=
K
t
(
x
)
−
k
(
x
,
x
t
+
1
)
K_{t+1}(\mathbf x)=K_{t}(\mathbf x)-k(\mathbf x, \mathbf x_{t+1})
Kt+1(x)=Kt(x)−k(x,xt+1)
势函数的选择:
有如下三个条件:
(1)
K
(
x
,
x
k
)
=
K
(
x
,
k
x
)
K(\mathbf{x, x_{k}})=K(\mathbf{x,_{k} x})
K(x,xk)=K(x,kx),当
x
=
x
k
\mathbf{x=x_{k}}
x=xk时达到最大值。
(2)当向量
x
\mathbf{x}
x与
x
k
\mathbf{x}_{k}
xk的距离趋于无穷时,
K
(
x
,
x
k
)
K(\mathbf{x,x_{k}})
K(x,xk)趋于0.
(3)
K
(
x
,
x
k
)
K(\mathbf{x,x_{k}})
K(x,xk)是光滑函数,且是
x
\mathbf{x}
x与
x
k
\mathbf{x}_{k}
xk之间距离的单调下降函数。
可以选择双变量
x
\mathbf{x}
x与
x
k
\mathbf{x}_{k}
xk的对称函数作为势函数,即
K
(
x
,
x
k
)
=
K
(
x
k
,
x
)
K(\mathbf{x,x_{k}})=K(\mathbf{x_{k},x})
K(x,xk)=K(xk,x),并且可展开为无穷级数,此为第二类势函数,例如:
K
(
x
,
x
k
)
=
exp
−
α
∣
∣
x
−
x
k
∣
∣
2
K(\mathbf{x,x_{k}})=\exp^{-\alpha||\mathbf{x-x_{k}}||^{2}}
K(x,xk)=exp−α∣∣x−xk∣∣2
实例
ω
1
:
{
(
0
,
0
)
T
,
(
2
,
0
)
T
}
\omega_{1}:\{(0,0)^{T},(2,0)^{T}\}
ω1:{(0,0)T,(2,0)T}
ω
2
:
{
(
1
,
1
)
T
,
(
1
,
−
1
)
T
}
\omega_{2}:\{(1,1)^{T},(1,-1)^{T}\}
ω2:{(1,1)T,(1,−1)T}
用势函数在上述线性不可分的情况下进行分类:
K
(
x
,
x
k
)
=
exp
−
α
∣
∣
x
−
x
k
∣
∣
2
K(\mathbf{x,x_{k}})=\exp^{-\alpha||\mathbf{x-x_{k}}||^{2}}
K(x,xk)=exp−α∣∣x−xk∣∣2。