Classification
简介
定义:输入一个xxx,输出xxx属于哪一种类
- x⇒Function⇒Class nx \Rightarrow Function \Rightarrow Class\ nx⇒Function⇒Class n
应用场景:
- 金融:输入:存款、收入、职位、年龄……输出:贷款ororor拒绝。
- 医疗诊断:输入:症状、年龄、性别……输出:得了什么病。
- 手写识别:输入:图像。输出:是哪个字
- 人脸识别:输入:人脸图像。输出:是哪个人。
- 宝可梦识别:输入:物攻、特攻、生命、物防、特防……输出:这是哪个宝可梦。
不能用Regression做Classification,因为两者评价方法不一样。
一种解法
用类似贝叶斯公式的方法测算概率。
对training data求正态分布,然后用来预测。
fμ,Σ=1(2π)D/2⋅1∣Σ∣1/2e−12(x−μ)TΣ−1(x−μ)f_{μ,Σ}=\frac{1}{(2π)^{D/2}}·\frac{1}{|Σ|^{1/2}}e^{-\frac{1}{2}(x-μ)^TΣ^{-1}(x-μ)}fμ,Σ=(2π)D/21⋅∣Σ∣1/21e−21(x−μ)TΣ−1(x−μ)
如何求μμμ和ΣΣΣ?
L(μ,Σ)=fμ,Σ(x1)fμ,Σ(x2)...fμ,Σ(xm)L(μ,Σ)=f_{μ,Σ}(x^{1})f_{μ,Σ}(x^{2})...f_{μ,Σ}(x^{m})L(μ,Σ)=fμ,Σ(x1)fμ,Σ(x2)...fμ,Σ(xm)
要求(μ∗,Σ∗)(μ^*,Σ^*)(μ∗,Σ∗)使L(μ,Σ)L(μ,Σ)L(μ,Σ)最大,即:
- (μ∗,Σ∗)=arg maxμ,ΣL(μ,Σ)(μ^*,Σ^*)=arg\ max_{μ,Σ}L(μ,Σ)(μ∗,Σ∗)=arg maxμ,ΣL(μ,Σ)
- μ∗=179∑n=179xn,Σ∗=179∑n=179(xn−μ∗)(xn−μ∗)Tμ^*=\frac{1}{79}\sum_{n=1}^{79}{x_n},Σ^*=\frac{1}{79}\sum_{n=1}{79}{(x_n-μ^*)(x_n-μ^*)^T}μ∗=791∑n=179xn,Σ∗=791∑n=179(xn−μ∗)(xn−μ∗)T
然后就可以进行Classification:
- P(C1∣x)=P(x∣C1)P(C1)P(x∣C1)P(C1)+P(x∣C2)P(C2),if P(C1∣x)>0.5,then x belongs to class1P(C_1|x)=\frac{P(x|C_1)P(C_1)}{P(x|C_1)P(C_1)+P(x|C_2)P(C_2)},if\ P(C_1|x)>0.5,then\ x\ belongs\ to\ class1P(C1∣x)=P(x∣C1)P(C1)+P(x∣C2)P(C2)P(x∣C1)P(C1),if P(C1∣x)>0.5,then x belongs to class1
改进
不同的Class可以共用一组covariance(Σ)。原因:如果Σ太多,会导致参数太多,容易出现过拟合的情况。
找到μ1,μ2,Σμ_1,μ_2,Σμ1,μ2,Σ来最大化L(μ1,μ2,Σ)L(μ_1,μ_2,Σ)L(μ1,μ2,Σ)
L(μ1,μ2,Σ)=fμ1,Σ(x1)fμ1,Σ(x2)...fμ1,Σ(x79)fμ2,Σ(x80)fμ2,Σ(x81)...fμ2,Σ(x140)L(μ_1,μ_2,Σ)=f_{μ_1,Σ}(x_1)f_{μ_1,Σ}(x_2)...f_{μ_1,Σ}(x_{79})f_{μ_2,Σ}(x_{80})f_{μ_2,Σ}(x_{81})...f_{μ_2,Σ}(x_{140})L(μ1,μ2,Σ)=fμ1,Σ(x1)fμ1,Σ(x2)...fμ1,Σ(x79)fμ2,Σ(x80)fμ2,Σ(x81)...fμ2,Σ(x140)
μ1,μ2μ_1,μ_2μ1,μ2与之前一样,Σ=79140Σ1+61140Σ2Σ=\frac{79}{140}Σ_1+\frac{61}{140}Σ_2Σ=14079Σ1+14061Σ2
其他情况
很多情况下使用正态分布就可以了,但有时正态分布并不能满足需求,如:
BinariyfeatureBinariy featureBinariyfeature(二元特征),比如判断一个宝可梦是不是神兽。
如果假设所有dimensions都是独立的,这个方法叫做Naive Bayes Classifier。
Posterior Probability
P(C1∣x)=P(x∣C1)P(C1)P(x∣C1)P(C1)+P(x∣C2)P(C2)=11+P(x∣C2)P(C2)P(x∣C1)P(C1)=σ(z)P(C_1|x)=\frac{P(x|C_1)P(C_1)}{P(x|C_1)P(C_1)+P(x|C_2)P(C_2)}=\frac{1}{1+\frac{P(x|C_2)P(C_2)}{P(x|C_1)P(C_1)}}=σ(z)P(C1∣x)=P(x∣C1)P(C1)+P(x∣C2)P(C2)P(x∣C1)P(C1)=1+P(x∣C1)P(C1)P(x∣C2)P(C2)1=σ(z)称此函数为sigmoid functionsigmoid\ functionsigmoid function
设z=lnP(x∣C1)P(C1)P(x∣C2)P(C2)z=ln\frac{P(x|C_1)P(C_1)}{P(x|C_2)P(C_2)}z=lnP(x∣C2)P(C2)P(x∣C1)P(C1),P(C1∣x)=11+e−2P(C_1|x)=\frac{1}{1+e^{-2}}P(C1∣x)=1+e−21
z=lnP(x∣C1)P(x∣C2)+lnP(C1)P(C2)=lnP(x∣C1)P(x∣C2)+lnN1N2z=ln\frac{P(x|C_1)}{P(x|C_2)}+ln\frac{P(C_1)}{P(C_2)}=ln\frac{P(x|C_1)}{P(x|C_2)}+ln\frac{N_1}{N_2}z=lnP(x∣C2)P(x∣C1)+lnP(C2)P(C1)=lnP(x∣C2)P(x∣C1)+lnN2N1
P(x∣C1)=1(2π)D/2⋅1∣Σ1∣1/2e−12(x−μ1)TΣ1−1(x−μ1)P(x|C_1)=\frac{1}{(2π)^{D/2}}·\frac{1}{|Σ_1|^{1/2}}e^{-\frac{1}{2}(x-μ_1)^TΣ_1^{-1}(x-μ_1)}P(x∣C1)=(2π)D/21⋅∣Σ1∣1/21e−21(x−μ1)TΣ1−1(x−μ1)
P(x∣C2)=1(2π)D/2⋅1∣Σ2∣1/2e−12(x−μ2)TΣ2−1(x−μ2)P(x|C_2)=\frac{1}{(2π)^{D/2}}·\frac{1}{|Σ_2|^{1/2}}e^{-\frac{1}{2}(x-μ_2)^TΣ_2^{-1}(x-μ_2)}P(x∣C2)=(2π)D/21⋅∣Σ2∣1/21e−21(x−μ2)TΣ2−1(x−μ2)
相除得到ln∣Σ1∣1/2∣Σ2∣1/2e−12(x−μ1)TΣ1−1(x−μ1)+12(x−μ2)TΣ2−1(x−μ2)ln\frac{|Σ_1|^{1/2}}{|Σ_2|^{1/2}}e^{-\frac{1}{2}(x-μ_1)^TΣ_1^{-1}(x-μ_1)+\frac{1}{2}(x-μ_2)^TΣ_2^{-1}(x-μ_2)}ln∣Σ2∣1/2∣Σ1∣1/2e−21(x−μ1)TΣ1−1(x−μ1)+21(x−μ2)TΣ2−1(x−μ2)
但一般情况下,Σ1=Σ2=ΣΣ_1=Σ_2=ΣΣ1=Σ2=Σ。
所以z=(μ1−μ2)TΣ−1x−12μ1TΣ1−1μ1+12μ2TΣ2−1μ2+lnN1N2=wTx+bz=(μ_1-μ_2)^TΣ^{-1}x-\frac{1}{2}μ_1^TΣ_1^{-1}μ_1+\frac{1}{2}μ_2^TΣ_2^{-1}μ_2+ln\frac{N_1}{N_2}=w^Tx+bz=(μ1−μ2)TΣ−1x−21μ1TΣ1−1μ1+21μ2TΣ2−1μ2+lnN2N1=wTx+b
P(C1∣x)=σ(w⋅x+b)P(C_1|x)=σ(w·x+b)P(C1∣x)=σ(w⋅x+b)
总结
In generative model,we estimate N1,N2,μ1,μ2,ΣN_1,N_2,μ_1,μ_2,ΣN1,N2,μ1,μ2,Σ,Then,we have www and bbb.
但是,能否直接求出www和bbb呢?
请看下篇