主要讲了GDA和NB。
还有laplace smoothing。
感觉三个模型都不是特别难啊。
Gaussian Discriminant Analysis.
之前讲了广义线性模型、牛顿的算法。
之前说的都是discriminant algorithm。
学习P(Y|X)或者
outputhθ(x)∈{0,1}
generative learning algorithm.
P(x|y),P(y)
看特征的情况。
根据bayes,
P(y=1|x)=P(x|y=1)P(y=1)P(x)
并且
P(x)=P(y=0)P(x)+P(y=1)P(x)
举例。
Gaussian Discriminant Analysis.
多元高斯分布。
P(x|y) is Gaussian Distribution.
z∼N(→μ,Σ)
Σ是协方差矩阵。
且
p(x;μ,Σ)=1(2π)n/2|Σ|1/2exp(−12(x−u)TΣ−1(x−u))
□不是很懂这个公式,但是实际上正态分布函数是不需要算的。
这里可以看讲义。

注意这里就是做P(x|y=1)和
P(x|y=0)的二元高斯分布的投影,然后求交点连线。
定义式
P(y)=ϕy(1−ϕ)1−y
并且,
P(x|y=0)=1(2π)n/2|Σ|1/2exp(−12(x−u0)TΣ−1(x−u0))
P(x|y=1)=1(2π)n/2|Σ|1/2exp(−12(x−u1)TΣ−1(x−u1))
实际上我不太懂这里又不是P(ϵ)处于大事件,→0,为什么要max∏P(x(i),y(i)).
就是另外一种算法而已。
然而,逻辑回归是
max∏P(y(i)|x(i))。
就是这样,没说谁好。
它和logistic 的关系到底是什么样的?
假设点是正样本。
GDA是logistic,因为有更严格的假设。

所以这个计算是通过bayes出来的,
图中计算出,P(x|y=1),P(y=1)
然后,P(x)=P(x|y=1)P(y=1)+P(x|y=0)P(y=0)。
哈哈,原来是这样。
就得到了P(y|x)。
这个多假设的条件是,
x|y∼N
→
P(y=1|x)是一个logistic函数。
但是不能反着来。
x|y=1∼Possion(λ1)和
x|y=0∼Possion(λ0)
→
P(y=1|x)是一个logistic函数。
所以这又是个参数方程的锅啊。
但是呢,显然GDA不需要太多的数据,因为假设强啊。
第二个就是
Naive Bayes。
也是
generative learning algorithm.
为什么要说,因为GDA要求x都是连续变量。
但是NB可以是离散的。
y=1是垃圾邮件。
假设我们有个字典,按顺序,如果邮件中存在这个词,位于第i行,xi=1否则xi=0。
因此,x∈{0,1}n。
也就是说x有2n种可能性。
因此每个xi∼B,那么就要联立那么多,显然是不可能的,要估计2n−1个参数。
给一个强假设。
xi|y条件独立。
P(x1,⋯,xn|y)=P(x1|y)P(x2|y,x1)⋯P(xn|y,x1,⋯,xn−1)=P(x1|y)P(x2|y)⋯P(xn|y)
P(x2|y,x1)=P(x2|y)说明,x1不影响x2。
虽然强到错,但是还是很有效。
假设一些参数,
ϕi|y=1=p(xi=1|y=1)=∑mi=1I{x(i)j=1,y(i)=1}∑mi=1I{y(i)=1}
ϕi|y=0=p(xi=1|y=0)
ϕy=p(y=1)=∑mi=1{y(i)=1}m
p(y|x)←p(x|y)p(y)
这个模型的假设,只在joint distribution上。
朴素贝叶斯这样写更容易理解,
p(y=1|x)=p(x|y=1)p(y=1)p(x|y=1)p(y=1)+p(x|y=0)p(y=0)
但是p(x|y)=0也就是说x对于y这个事件没有出现过,那么就出现了,
p(y=1|x)=0⋅p(y=1)0
因此要修正。
就是laplace smoothing
laplace smoothing
P(y=1)=n1+1n1+1+n0+1
这样的话,即使训练组中,n1=0,也保留了一点可能性,预测y=1。
一般地,
P(y=j)=∑mj=1I{y(i)=j}+1m+k
ϕi|y=1=p(xi=1|y=1)=∑mi=1I{x(i)j=1,y(i)=1}+1∑mi=1I{y(i)=1}+2