写在前面
本节内容主要讲了杂讯 n o i s e noise noise 以及概率目标函数,最后讲了误差测定的两种方法以及对两种不同错误情况要根据实际情况选择具体的权重。
1. 杂讯和概率目标
∙ \bullet ∙ 杂讯分为好几种情况,我们还是以银行根据客户信息,决定是否对其发放信用卡为例:
♡ \heartsuit ♡ 发生在 y y y 上:本来是要给发放信用卡的客户,最后判定为不发放。
♡ \heartsuit ♡ 发生在 y y y 上:相同的客户信息,但是由于标记的人不同,导致不同的结果。
♡ \heartsuit ♡ 发生在 x x x 上:得到的是不准确的客户信息。
那么在这些情况下 V C b o u n d VC \ bound VC bound 还可以正常工作吗?
∙ \bullet ∙ 我们还是以前面用过的小球为例,之前是通过标记的情况与假设计算的情况是否相符为判断条件,所以只有两种结果,相同(正确)为1,不相同(错误)为0。但是现在引入了 n o i s e noise noise,所以假设计算的结果就不一定是确定的了,它可能会有一定概率表现为橙球,一定概率表现为绿球,所以现在进行判断得时候就引入了概率分布。每种情况出现的概率为 P ( y ∣ x ) P(y|x) P(y∣x)。
∙
\bullet
∙ 我们将
P
(
y
∣
x
)
P(y|x)
P(y∣x) 叫做目标分布(Target Distribution)。它告诉了我们更优的情况以及产生的杂讯。比如说:
P
(
o
∣
x
)
=
0.7
,
P
(
x
∣
x
)
=
0.3
P(o|x)=0.7,P(x|x)=0.3
P(o∣x)=0.7,P(x∣x)=0.3
那么我们最好选择
f
(
x
)
=
o
f(x)=o
f(x)=o,而且此时产生的杂讯就为0.3。同时对于之前提到过的无杂讯情况,我们可以看作是特殊的概率分布,也就是它只有0和1的情况:
P
(
y
∣
x
)
=
1
→
y
=
f
(
x
)
P
(
y
∣
x
)
=
0
→
y
≠
f
(
x
)
\begin{matrix} P(y|x)=1 \rightarrow y=f(x)\\ P(y|x)=0 \rightarrow y≠f(x) \end{matrix}
P(y∣x)=1→y=f(x)P(y∣x)=0→y=f(x)
∙
\bullet
∙ 新的学习流程图:
∙
\bullet
∙ 练习:
对于前面学习过的内容,下面哪一条描述是正确的:
a. 在使用
P
L
A
PLA
PLA 以前我们可以先判断一下数据
D
a
t
a
Data
Data 是否是线性可分的。
b. 如果我们知道数据
D
a
t
a
Data
Data 不是线性可分的,那么目标函数
f
f
f 肯定不是一个线性函数。
c. 如果我们知道数据
D
a
t
a
Data
Data 是线性可分的,那么目标函数
f
f
f 肯定是一个线性函数。
d. 上面提到的都不正确。
对于a,如果我们已经知道它是线性可分的时候,一般我们已经求得了w,不需要再使用PLA进行计算了。
对于b,虽然数据不是线性可分的,但是由于存在杂讯,所以目标函数有可能是一个线性函数。
对于c,虽然数据是线性可分的,但是可能再取样的过程中取得是分布的弯弯曲曲的点,那么目标函数也不一定是线性可分的。
所以选择d。
2. 误差测定
∙ \bullet ∙ 那么我们怎样判断 h y p o t h e s i s hypothesis hypothesis 中每个 x x x 的结果 y ~ \tilde{y} y~ 与预期结果 y y y 是否接近呢?这个时候就要引入误差测定,对于误差有不同的衡量方式,主要分为下面三种情况:
♡ \heartsuit ♡ o u t − o f − s a m p l e {\color{Violet}out-of-sample} out−of−sample : 对于样本以外数据进行检测;
♡ \heartsuit ♡ p o i n t w i s e {\color{Violet}pointwise} pointwise : 对每个数据样本 x x x 进行检测;
♡ \heartsuit ♡ c l a s s i f i c a t i o n {\color{Violet}classification} classification : 看预测(prediction)与目标(target)是否相等,我们通常把 c l a s s i f i c a t i o n e r r o r classification \ error classification error 叫做 0 / 1 e r r o r 0/1 \ error 0/1 error;
∙ \bullet ∙ 我们重点来介绍 P o i n t w i s e E r r o r M e a s u r e Pointwise \ Error \ Measure Pointwise Error Measure,并用 e r r err err 来表示它。
对于样本数据来说:
E
i
n
(
g
)
=
1
N
∑
n
=
1
N
e
r
r
(
g
(
x
n
)
,
f
(
x
n
)
)
E_{in}(g)=\frac{1}{N}\sum_{n=1}^{N}err(g(x_{n}),f(x_{n}))
Ein(g)=N1n=1∑Nerr(g(xn),f(xn))
对于样本以外的数据来说:
E
o
u
t
(
g
)
=
ε
x
∼
P
e
r
r
(
g
(
x
)
,
f
(
x
)
)
E_{out}(g)=\underset{x\sim P }{\varepsilon} \ err(g(x),f(x))
Eout(g)=x∼Pε err(g(x),f(x))
有两种重要的 e r r err err,经常可以用的到:
▹
\triangleright
▹
0
/
1
e
r
r
o
r
{\color{Orange}0/1 \ error}
0/1 error:经常被用于分类,只有两种结果,相等或不相等。
e
r
r
(
y
~
,
y
)
=
[
y
~
≠
y
]
err(\tilde{y},y)=[\tilde{y}≠y]
err(y~,y)=[y~=y]
▹
\triangleright
▹
s
q
u
a
r
d
e
r
r
o
r
{\color{Orange}squard \ error}
squard error:均方误差,用于计算它们之间的举例,常用于回归问题中。
e
r
r
(
y
~
,
y
)
=
(
y
~
−
y
)
2
err(\tilde{y},y)=(\tilde{y}-y)^{2}
err(y~,y)=(y~−y)2
∙
\bullet
∙ 前面学到的理想最小目标(Ideal Mini-Target)由
P
(
y
∣
x
)
P(y|x)
P(y∣x) 和
e
r
r
err
err 共同决定,上面提到的
0
/
1
e
r
r
o
r
0/1 \ error
0/1 error 和
s
q
u
a
r
d
e
r
r
o
r
squard \ error
squard error 计算
m
i
n
i
−
T
a
r
g
e
t
mini-Target
mini−Target 与
I
d
e
a
l
M
i
n
i
−
T
a
r
g
e
t
Ideal \ Mini-Target
Ideal Mini−Target 计算方法不同。其中
0
/
1
e
r
r
o
r
0/1 \ error
0/1 error 是取概率最大的数,而
s
q
u
a
r
d
e
r
r
o
r
squard \ error
squard error 是取均方误差最小的那个数。
∙
\bullet
∙ 继续更新后的学习流程图如下:
3. 算法误差测量
∙
\bullet
∙ 举例:对于指纹识别系统来说,如果识别正常的话返回+1,如果识别错误的话返回-1。可以得到下面的表:
其中
f
f
f 是原本的结果,
g
g
g 为计算得到的结果,当它们相同的时候,肯定没有出错,我们把不同是的两种错误分为两种情况。
f
a
l
s
e
a
c
c
e
p
t
{\color{Red}false \ accept}
false accept 为将错误情况误认为正确情况进行接受;
f
a
l
s
e
r
e
j
e
c
t
{\color{Red}false \ reject}
false reject 为将正确情况误认为错误情况进行拒绝。
可以看到这是典型的分类问题,那么对于这类问题来说,两种错误情况的权重一直是一样的吗?下面通过两个具体的例子来进行检验;
♡ \heartsuit ♡ 超市中对于老顾客进行打折活动,将老顾客错认为新顾客没有进行打折,可能会导致顾客内心不满不愿意在来这家店,甚至劝说朋友也不要来;将新顾客错认为老顾客进行了打折活动,新顾客只会觉得捡了便宜,在这里错误的拒绝就比错误的接受造成的影响更大。
♡ \heartsuit ♡ M国情报系统有个指纹识别系统,对于一个人指纹错误的接受可能会导致M国内肮脏的信息泄露,对M国造成恶劣的影响;对于一个人指纹错误的拒绝可能只会导致这个员工心生不满,但是也就是这样了,在这里错误的接受就比错误的拒绝造成的影响更大。
结 论 {\color{Red}结论} 结论:所以说对于不同的模型,可能会赋予不同的权重,并不一定是一成不变的,需要具体问题具体分析。
∙ \bullet ∙ 机器学习演算法的误差代价函数 e r r err err 一般来说也比较难以计算,所以在计算时要采用 p l a u s i b l e plausible plausible 和 f r i e n d l y friendly friendly。
∙
\bullet
∙ 再次更新学习流程图为:
4. 加权分类
上一节已经提到了 f a l s e a c c e p t false \ accept false accept 和 f a l s e r e j e c t false \ reject false reject,根据具体情况我们要采取不同的权重,在演算法中进行体现,这也就是加权分类。