考虑我们想要基于默写动物的特征,学习区分大象 ( y = 1 ) (y=1) (y=1)和狗 ( y = 0 ) (y=0) (y=0)的分类问题。给定一个训练集,像logistic regression或者感知机算法是试图找到一条直线——或一条决策边界——来分开大象和狗。然后,为了分辨新动物是大象还是狗,就检查它落到决策边界的哪边,根据这来预测属于哪一类。
实际上,还有另一种算法。先对两种动物分别进行建模,对大象建立一个专门用于判断一个动物是否是大象的模型,对狗建立一个专门用于判断一个动物是否是狗的模型,对新动物分类时,分别用大象模型和狗模型测试,就看其在上述两个经过训练集训练的模型上更像大象还是狗。
前面学习的,通过直接学习 p ( y ∣ x ) p(y|x) p(y∣x)(像logistic regression),或者从输入 X \mathcal{X} X特征值空间直接映射到标签 0 , 1 {0, 1} 0,1空间的算法(像感知机算法)通常被称作判别学习算法discriminative learning algorithms 。接下来我们不再直接学习 p ( x ∣ y ) p(x|y) p(x∣y) 和 p ( y ) p(y) p(y)。它们叫生成学习算法(generative learning algorithms)。
上面的例子中,我们用 y y y表示一个动物究竟是狗 ( y = 0 ) (y=0) (y=0)还是大象 ( y = 1 ) (y=1) (y=1)。那么模型 p ( x ∣ y = 0 ) p(x∣y=0) p(x∣y=0)就是狗的特征分布,模型 p ( x ∣ y = 1 ) p(x∣y=1) p(x∣y=1)就是大象的特征分布。
通过对 p ( y ) p(y) p(y)(称为类先验class priors)和 p ( x ∣ y ) p(x∣y) p(x∣y)建模,我们可以用贝叶斯公式来推导出在条件 x x x给出的情况下, y y y的后验概率: p ( y ∣ x ) = p ( x ∣ y ) p ( y ) p ( x ) (1) \begin{aligned} p(y|x)&=\frac{p(x|y)p(y)}{p(x)} \end{aligned} \tag{1} p(y∣x)=p(x)p(x∣y)p(y)(1) 上式中的分母 p ( x ) p(x) p(x)可以用全概率公式展开为: p ( x ) = p ( x ∣ y = 1 ) p ( y = 1 ) + p ( x ∣ y = 0 ) p ( y = 0 ) (2) p(x)= p(x|y = 1)p(y = 1) + p(x|y = 0)p(y = 0)\tag{2} p(x)=p(x∣y=1)p(y=1)+p(x∣y=0)p(y=0)(2) 实际上,如果我们计算 p ( y ∣ x ) p(y \mid x) p(y∣x)是为了预测,我们不需要计算分母 p ( x ) p(x) p(x)(对于不同类别 p ( x ) p(x) p(x)都是一样的): arg max y p ( y ∣ x ) = arg max y p ( x ∣ y ) p ( y ) p ( x ) = arg max y p ( x ∣ y ) p ( y ) (3) \begin{aligned} \arg \max_y p(y|x) & =\arg \max_y \frac{p(x|y)p(y)}{p(x)}\\ \\ &= \arg \max_y p(x|y)p(y) \end{aligned}\tag{3} argymaxp(y∣x)=argymaxp(x)p(x∣y)p(y)=argymaxp(x∣y)p(y)(3)
我们先看看第一种生成学习算法是高斯判别分析(GDA)。在这个模型中,我们假设 p ( x ∣ y ) p(x\mid y) p(x∣y)是服从高斯分布的。所以先讨论一下多元高斯分布(the multivariate Gaussian distribution)。
在 n n n维上的多元正态分布(the multivariate normal distribution),也被称为多元高斯分布。它由一个期望向量(mean vector) μ ∈ R n \mu \in R^n μ∈Rn和一个协方差矩阵 Σ ∈ R n × n \Sigma \in R^{n\times n} Σ∈Rn×n参数化,其中,是 Σ \Sigma Σ是一个对称(symmetric)的半正定(positive semi-definite)矩阵。这个分布也被写作“ N ( μ , Σ ) \mathcal{N}(\mu, \Sigma) N(μ,Σ)”,它的概率密度函数为: p ( x ; μ , Σ ) = 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 e x p ( − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) ) (4) p(x;\mu,\Sigma)=\frac{1}{(2\pi)^{n/2}|\Sigma|^{1/2}} exp(-\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu))\tag{4} p(x;μ,Σ)=(2π)n/2∣Σ∣1/21exp(−21(x−μ)TΣ−1(x−μ))(4) 其中," ∣ Σ ∣ |\Sigma| ∣Σ∣"是协方差矩阵 Σ \Sigma Σ的行列式(determinant)。
对于随机变量 X X X分布服从 N ( μ , Σ ) \mathcal{N}(\mu, \Sigma) N(μ,Σ),其均值为 μ \mu μ: E [ X ] = ∫ x x p ( x ; μ , Σ ) d x = μ (5) E[X]=\int_x xp(x;\mu,\Sigma)dx=\mu \tag{5} E[X]=∫xxp(x;μ,Σ)dx=μ(5) 下面用一个小段梳理下协方差。
协方差是衡量两个随机变量的联合变化程度。简单理解为,两个随机变量越线性相关,协方差越大,完全线性无关,协方差为零。定义如下。 cov ( X Y ) = E [ ( X − E [ X ] ) ( Y − E [ Y ] ) ] (6) \operatorname{cov}(X Y)=E[(X-E[X])(Y-E[Y])] \tag{6} cov(XY)=E[(X−E[X])(Y−E[Y])](6) 若 X , Y X,Y X,Y是同一变量,那么式6变为: cov ( X , X ) = E [ ( X − E [ X ] ) ( X − E [ X ] ) ] = E [ ( X − E [ X ] ) 2 ] = var ( X ) (7) \begin{aligned} \operatorname{cov}(X, X)&=E[(X-E[X])(X-E[X])] \\&=\mathrm{E}\left[(X-\mathrm{E}[X])^{2}\right] \\&=\operatorname{var}(X) \end{aligned} \tag{7} cov(X,X)=E[(X−E[X])(X−E[X])]=E[(X−E[X])2]=var(X)(7)
上面是标量的协方差的计算,下面介绍向量,如果 X X X是 n n n维随机变量, X = [ X 1 X 2 ⋮ X n ] (8) \mathbf{X}=\left[\begin{array}{c} X_{1} \\ X_{2} \\ \vdots \\ X_{n} \end{array}\right]\tag{8} X=⎣⎢⎢⎢⎡X1X2⋮Xn⎦⎥⎥⎥⎤(8) 另有, μ i \mu_{i} μi是 X i \mathbf{X}_i Xi的期望,每一列求均值。
根据标量协方差的定义,要对每两两标量元素间进行协方差计算,协方差矩阵的第 ( i , j ) (i, j) (i,j)项 Σ i j \Sigma_{i j} Σij为: Σ i j = cov ( X i , X j ) = E [ ( X i − μ i ) ( X j − μ j ) T ] (9) \Sigma_{i j}=\operatorname{cov}\left(X_{i}, X_{j}\right)=\mathrm{E}\left[\left(X_{i}-\mu_{i}\right)\left(X_{j}-\mu_{j}\right)^{\mathrm{T}}\right] \tag{9} Σij=cov(Xi,Xj)=E[(Xi−μi)(Xj−μj)T](9) 那么, Σ = E [ ( X − E [ X ] ) ( X − E [ X ] ) T ] = [ E [ ( X 1 − μ 1 ) ( X 1 − μ 1 ) ] E [ ( X 1 − μ 1 ) ( X 2 − μ 2 ) ] ⋯ E [ ( X 1 − μ 1 ) ( X n − μ n ) ] E [ ( X 2 − μ 2 ) ( X 1 − μ 1 ) ] E [ ( X 2 − μ 2 ) ( X 2 − μ 2 ) ] ⋯ E [ ( X 2 − μ 2 ) ( X n − μ n ) ] ⋮ ⋮ ⋱ ⋮ E [ ( X n − μ n ) ( X 1 − μ 1 ) ] E [ ( X n − μ n ) ( X 2 − μ 2 ) ] ⋯ E [ ( X n − μ n ) ( X n − μ n ) ] ] (10) \begin{aligned} \Sigma &=\mathrm{E}\left[(\mathbf{X}-\mathrm{E}[\mathbf{X}])(\mathbf{X}-\mathrm{E}[\mathbf{X}])^{\mathrm{T}}\right] \\ &=\left[\begin{array}{cccc} \mathrm{E}\left[\left(X_{1}-\mu_{1}\right)\left(X_{1}-\mu_{1}\right)\right] & \mathrm{E}\left[\left(X_{1}-\mu_{1}\right)\left(X_{2}-\mu_{2}\right)\right] & \cdots & \mathrm{E}\left[\left(X_{1}-\mu_{1}\right)\left(X_{n}-\mu_{n}\right)\right] \\ \mathrm{E}\left[\left(X_{2}-\mu_{2}\right)\left(X_{1}-\mu_{1}\right)\right] & \mathrm{E}\left[\left(X_{2}-\mu_{2}\right)\left(X_{2}-\mu_{2}\right)\right] & \cdots & \mathrm{E}\left[\left(X_{2}-\mu_{2}\right)\left(X_{n}-\mu_{n}\right)\right] \\ \vdots & \vdots & \ddots & \vdots \\ \mathrm{E}\left[\left(X_{n}-\mu_{n}\right)\left(X_{1}-\mu_{1}\right)\right] & \mathrm{E}\left[\left(X_{n}-\mu_{n}\right)\left(X_{2}-\mu_{2}\right)\right] & \cdots & \mathrm{E}\left[\left(X_{n}-\mu_{n}\right)\left(X_{n}-\mu_{n}\right)\right] \end{array}\right]\\ \end{aligned}\tag{10} Σ=E[(X−E[X])(X−E[X])T]=⎣⎢⎢⎢⎡E[(X1−μ1)(X1−μ1)]E[(X2−μ2)(X1−μ1)]⋮E[(Xn−μn)(X1−μ1)]E[(X1−μ1)(X2−μ2)]E[(X2−μ2)(X2−μ2)]⋮E[(Xn−μn)(X2−μ2)]⋯⋯⋱⋯E[(X1−μ1)(Xn−μn)]E[(X2−μ2)(Xn−μn)]⋮E[(Xn−μn)(Xn−μn)]⎦⎥⎥⎥⎤(10)
接下来证明: cov ( X , X ) = E [ X X T ] − ( E [ X ] ) ( E [ X ] ) T \operatorname{cov}(X, X)= E[XX^T]-(E[X])(E[X])^T cov(X,X)=E[XXT]−(E[X])(E[X])T
其实,往另外一个方向证明会很简单。(尝试把式10第一行展开证明,得到下式没有成功) Σ = [ Cov [ X 1 , X 1 ] ⋯ Cov [ X 1 , X n ] ⋮ ⋱ ⋮ Cov [ X n , X 1 ] ⋯ Cov [ X n , X n ] ] = [ E [ X 1 2 ] − E [ X 1 ] E [ X 1 ] ⋯ E [ X 1 X n ] − E [ X 1 ] E [ X n ] ⋮ ⋱ ⋮ E [ X n X 1 ] − E [ X n ] E [ X 1 ] ⋯ E [ X n 2 ] − E [ X n ] E [ X n ] ] = [ E [ X 1 2 ] ⋯ E [ X 1 X n ] ⋮ ⋱ ⋮ E [ X n X 1 ] ⋯ E [ X n 2 ] ] − [ E [ X 1 ] E [ X 1 ] ⋯ E [ X 1 ] E [ X n ] ⋮ ⋱ ⋮ E [ X n ] E [ X 1 ] ⋯ E [ X n ] E [ X n ] ] = E [ X X T ] − E [ X ] E [ X ] T = … = E [ ( X − E [ X ] ) ( X − E [ X ] ) T ] (11) \begin{aligned} \Sigma &=\left[\begin{array}{ccc} \operatorname{Cov}\left[X_{1}, X_{1}\right] & \cdots & \operatorname{Cov}\left[X_{1}, X_{n}\right] \\ \vdots & \ddots & \vdots \\ \operatorname{Cov}\left[X_{n}, X_{1}\right] & \cdots & \operatorname{Cov}\left[X_{n}, X_{n}\right] \end{array}\right] \\ &=\left[\begin{array}{ccc} E\left[X_{1}^{2}\right]-E\left[X_{1}\right] E\left[X_{1}\right] & \cdots & E\left[X_{1} X_{n}\right]-E\left[X_{1}\right] E\left[X_{n}\right] \\ \vdots & \ddots & \vdots \\ E\left[X_{n} X_{1}\right]-E\left[X_{n}\right] E\left[X_{1}\right] & \cdots & E\left[X_{n}^{2}\right]-E\left[X_{n}\right] E\left[X_{n}\right] \end{array}\right] \\ &=\left[\begin{array}{ccc} E\left[X_{1}^{2}\right] & \cdots & E\left[X_{1} X_{n}\right] \\ \vdots & \ddots & \vdots \\ E\left[X_{n} X_{1}\right] & \cdots & E\left[X_{n}^{2}\right] \end{array}\right]-\left[\begin{array}{ccc} E\left[X_{1}\right] E\left[X_{1}\right] & \cdots & E\left[X_{1}\right] E\left[X_{n}\right] \\ \vdots & \ddots & \vdots \\ E\left[X_{n}\right] E\left[X_{1}\right] & \cdots & E\left[X_{n}\right] E\left[X_{n}\right] \end{array}\right] \\ &=E\left[X X^{T}\right]-E[X] E[X]^{T}=\ldots=E\left[(X-E[X])(X-E[X])^{T}\right] \end{aligned}\tag{11} Σ=⎣⎢⎡Cov[X1,X1]⋮Cov[Xn,X1]⋯⋱⋯Cov[X1,Xn]⋮Cov[Xn,Xn]⎦⎥⎤=⎣⎢⎡E[X12]−E[X1]E[X1]⋮E[XnX1]−E[Xn]E[X1]⋯⋱⋯E[X1Xn]−E[X1]E[Xn]⋮E[Xn2]−E[Xn]E[Xn]⎦⎥⎤=⎣⎢⎡E[X12]⋮E[XnX1]⋯⋱⋯E[X1Xn]⋮E[Xn2]⎦⎥⎤−⎣⎢⎡E[X1]E[X1]⋮E[Xn]E[X1]⋯⋱⋯E[X1]E[Xn]⋮E[Xn]E[Xn]⎦⎥⎤=E[XXT]−E[X]E[X]T=…=E[(X−E[X])(X−E[X])T](11) 协方差矩阵的几何解释和多重高斯分布
下面试一些高斯分布图像的例子,
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Lv6uA48-1603468888537)(https://i.loli.net/2020/10/23/Po9GbjLkCq7flD4.png)]
最左边的图为均值为0(就是 2 × 1 2\times 1 2×1的零向量)和协方差矩阵 Σ = I \Sigma = I Σ=I( 2 × 2 2\times 2 2×2的单位矩阵)的高斯。均值为0、协方差为单位正的高斯叫做标准正态分布standard normal distribution 。中间图为均值为0、 Σ = 0.6 I \Sigma=0.6I Σ=0.6I的高斯分布概率密度;最右边的 Σ = 2 I \Sigma=2I Σ=2I。
由此,我们看出: Σ \Sigma Σ越大,高斯分布越分散;反之,越集中。
再看看更多例子。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JW4iDB5X-1603468888542)(C:\Users\yy\AppData\Roaming\Typora\typora-user-images\image-20201023221156578.png)]
上图中对应均值为0,协方差矩阵分别为: Σ = [ 1 0 0 1 ] ; Σ = [ 1 0.5 0.5 1 ] ; Σ = [ 1 0.8 0.8 1 ] \Sigma =\begin{bmatrix} 1 & 0 \\ 0 & 1 \\ \end{bmatrix}; \Sigma =\begin{bmatrix} 1 & 0.5 \\ 0.5 & 1 \\ \end{bmatrix}; \Sigma =\begin{bmatrix} 1 & 0.8 \\ 0.8 & 1 \\ \end{bmatrix} Σ=[1001];Σ=[10.50.51];Σ=[10.80.81] 最左边的图类似于标准正态分布,我们可以看到随着 Σ \Sigma Σ副对角线元素的增大,概率密度朝着$45^\circ 方 向 压 缩 ( 方向压缩( 方向压缩(x_1=x_2$)。我们可以从三幅等高线图可以更加清楚地表示这个变化(由于图形宽高比的原因第一幅图也像是椭圆,但实际上,它是一个正圆形):
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sUIFyyiY-1603468888546)(https://i.loli.net/2020/10/23/yqaYJ5PISVfZBci.png)]
下面是最后一组通过改变 Σ \Sigma Σ生成的例子:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FMCaFhQ5-1603468888549)(https://i.loli.net/2020/10/23/Rb2WtFX8xgnyoBj.png)]
上图对应的协方差如下: Σ = [ 1 0.5 0.5 1 ] ; Σ = [ 1 0.8 0.8 1 ] Σ = [ 3 0.8 0.8 1 ] ; \Sigma =\begin{bmatrix} 1 & 0.5 \\ 0.5 & 1 \\ \end{bmatrix}; \Sigma =\begin{bmatrix} 1 & 0.8 \\ 0.8 & 1 \\ \end{bmatrix} \Sigma =\begin{bmatrix} 3 & 0.8 \\ 0.8 & 1 \\ \end{bmatrix}; Σ=[10.50.51];Σ=[10.80.81]Σ=[30.80.81]; 从最左边和中间的图,我们看到通过减小协方差矩阵的副对角线元素,概率密度分布开始压缩,不过是在相反方向。最后,随着我们改变参数,一般等高线会形成椭圆(像最右边图展示的)。
我们最后一组例子,固定 Σ = I \Sigma=I Σ=I,改变 μ \mu μ,我们也可以移动概率密度分布的。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fORR1BIe-1603468888552)(https://i.loli.net/2020/10/23/3lUp4JhetBZTxXq.png)]上图由 Σ = I \Sigma=I Σ=I,对应均值如下生成: μ = [ 1 0 ] ; μ = [ − 0.5 0 ] ; μ = [ − 1 − 1.5 ] ; \mu =\begin{bmatrix} 1 \\ 0 \\ \end{bmatrix}; \mu =\begin{bmatrix} -0.5 \\ 0 \\ \end{bmatrix}; \mu =\begin{bmatrix} -1 \\ -1.5 \\ \end{bmatrix}; μ=[10];μ=[−0.50];μ=[−1−1.5];
当我们有一个输入特征 x x x是连续随机变量的分类问题时,我们可以使用高斯判别分析(GDA)模型,该模型使用多元正态分布对 p ( x ∣ y ) p(x|y) p(x∣y)进行建模。 该模型是: y ∼ B e r n o u l l i ( ϕ ) x ∣ y = 0 ∼ N ( μ o , Σ ) x ∣ y = 1 ∼ N ( μ 1 , Σ ) \begin{aligned} y & \sim Bernoulli(\phi)\\ x|y = 0 & \sim N(\mu_o,\Sigma)\\ x|y = 1 & \sim N(\mu_1,\Sigma)\\ \end{aligned} yx∣y=0x∣y=1∼Bernoulli(ϕ)∼N(μo,Σ)∼N(μ1,Σ) 其分布为: p ( y ) = ϕ y ( 1 − ϕ ) 1 − y p ( x ∣ y = 0 ) = 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 e x p ( − 1 2 ( x − μ 0 ) T Σ − 1 ( x − μ 0 ) ) p ( x ∣ y = 1 ) = 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 e x p ( − 1 2 ( x − μ 1 ) T Σ − 1 ( x − μ 1 ) ) (12) \begin{aligned} p(y) & =\phi^y (1-\phi)^{1-y}\\ p(x|y=0) & = \frac{1}{(2\pi)^{n/2}|\Sigma|^{1/2}} exp ( - \frac{1}{2}(x-\mu_0)^T\Sigma^{-1}(x-\mu_0) )\\ p(x|y=1) & = \frac{1}{(2\pi)^{n/2}|\Sigma|^{1/2}} exp ( - \frac{1}{2}(x-\mu_1)^T\Sigma^{-1}(x-\mu_1) )\\ \end{aligned}\tag{12} p(y)p(x∣y=0)p(x∣y=1)=ϕy(1−ϕ)1−y=(2π)n/2∣Σ∣1/21exp(−21(x−μ0)TΣ−1(x−μ0))=(2π)n/2∣Σ∣1/21exp(−21(x−μ1)TΣ−1(x−μ1))(12) 这里,我们的模型的参数是 ϕ , Σ , μ 0 和 μ 1 \phi, \Sigma, \mu_0 和 \mu_1 ϕ,Σ,μ0和μ1。(注意,虽然存在两个不同的均值向量 μ 0 \mu_0 μ0 和 μ 1 \mu_1 μ1,但是该模型通常仅使用同一个协方差矩阵 Σ \Sigma Σ。)数据对数似然如下式: l ( ϕ , μ 0 , μ 1 , Σ ) = log ∏ i = 1 m p ( x ( i ) , y ( i ) ; ϕ , μ 0 , μ 1 , Σ ) = log ∏ i = 1 m p ( x ( i ) ∣ y ( i ) ; μ 0 , μ 1 , Σ ) p ( y ( i ) ; ϕ ) (13) \begin{aligned} l(\phi,\mu_0,\mu_1,\Sigma) &= \log \prod^m_{i=1}p(x^{(i)},y^{(i)};\phi,\mu_0,\mu_1,\Sigma)\\ &= \log \prod^m_{i=1}p(x^{(i)}|y^{(i)};\mu_0,\mu_1,\Sigma)p(y^{(i)};\phi)\\ \end{aligned}\tag{13} l(ϕ,μ0,μ1,Σ)=logi=1∏mp(x(i),y(i);ϕ,μ0,μ1,Σ)=logi=1∏mp(x(i)∣y(i);μ0,μ1,Σ)p(y(i);ϕ)(13) 通过关于参数最大化 ℓ \ell ℓ,我们发现参数的最大似然估计为: ϕ = 1 m ∑ i = 1 m 1 { y ( i ) = 1 } μ 0 = ∑ i = 1 m 1 { y ( i ) = 0 } x ( i ) ∑ i = 1 m 1 { y ( i ) = 0 } μ 1 = ∑ i = 1 m 1 { y ( i ) = 1 } x ( i ) ∑ i = 1 m 1 { y ( i ) = 1 } Σ = 1 m ∑ i = 1 m ( x ( i ) − μ y ( i ) ) ( x ( i ) − μ y ( i ) ) T (14) \begin{aligned} \phi & = \frac {1}{m} \sum^m_{i=1}1\{y^{(i)}=1\}\\ \mu_0 & = \frac{\sum^m_{i=1}1\{y^{(i)}=0\}x^{(i)}}{\sum^m_{i=1}1\{y^{(i)}=0\}}\\ \mu_1 & = \frac{\sum^m_{i=1}1\{y^{(i)}=1\}x^{(i)}}{\sum^m_{i=1}1\{y^{(i)}=1\}}\\ \Sigma & = \frac{1}{m}\sum^m_{i=1}(x^{(i)}-\mu_{y^{(i)}})(x^{(i)}-\mu_{y^{(i)}})^T\\ \end{aligned}\tag{14} ϕμ0μ1Σ=m1i=1∑m1{y(i)=1}=∑i=1m1{y(i)=0}∑i=1m1{y(i)=0}x(i)=∑i=1m1{y(i)=1}∑i=1m1{y(i)=1}x(i)=m1i=1∑m(x(i)−μy(i))(x(i)−μy(i))T(14) 证明:
由式12,可以写出: P ( x ∣ y ) = 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 exp ( − 1 2 ( x − μ y ) T Σ − 1 ( x − μ y ) ) (15) P(x|y) = \frac1{(2π)^{n/2}|Σ|^{1/2} }\text{exp} \Big (−\frac 12(x − \mu_y)^T Σ^{−1}(x − \mu_y)\Big)\tag{15} P(x∣y)=(2π)n/2∣Σ∣1/21exp(−21(x−μy)TΣ−1(x−μy))(15) 取 l o g log log: log P ( x , y ) = log P ( x ∣ y ) P ( y ) = log ( 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 exp ( − 1 2 ( x − μ y ) T Σ − 1 ( x − μ y ) ) ϕ 1 { y = 1 } ( 1 − ϕ ) 1 { y = 0 } ) = log 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 − 1 2 ( x − μ y ) T Σ − 1 ( x − μ y ) + 1 { y = 1 } log ϕ + 1 { y = 0 } log ( 1 − ϕ ) \begin{aligned} \text{log} P(x,y) &= \text{log}P(x|y)P(y)\\ &=\text{log}\Big( \frac1{(2π)^{n/2}|Σ|^{1/2} }\text{exp} \Big (−\frac 12(x − \mu_y)^T Σ^{−1}(x − \mu_y)\Big) \phi ^{ 1\{y = 1\}} (1-\phi)^{^{ 1\{y =0\}}} \Big) \\ &= \text{log} \frac1{(2π)^{n/2}|Σ|^{1/2}} −\frac 12(x − \mu_y)^T Σ^{−1}(x − \mu_y) + 1\{y = 1\} \text{log} \phi + 1\{y = 0\} \log(1-\phi) \end{aligned} logP(x,y)=logP(x∣y)P(y)=log((2π)n/2∣Σ∣1/21exp(−21(x−μy)TΣ−1(x−μy))ϕ1{y=1}(1−ϕ)1{y=0})=log(2π)n/2∣Σ∣1/21−21(x−μy)TΣ−1(x−μy)+1{y=1}logϕ+1{y=0}log(1−ϕ) 由式13得对数似然为: ℓ ( ϕ , μ − 1 , μ 1 , Σ ) = log ∏ i = 1 m p ( x ( i ) , y ( i ) ; φ , μ 0 , μ 1 , Σ ) = ∑ i = 1 m log p ( x ( i ) , y ( i ) ; φ , μ 0 , μ 1 , Σ ) = ∑ i = 1 m ( log 1 ( 2 π ) n / 2 ∣ Σ ∣ 1 / 2 − 1 2 ( x ( i ) − μ y ( i ) ) T Σ − 1 ( x ( i ) − μ y ( i ) ) + 1 { y ( i ) = 1 } log ϕ + 1 { y ( i ) = 0 } log ( 1 − ϕ ) ) \begin{aligned} \ell(\phi, \mu_{−1}, \mu_1, Σ) &=\text{log}\prod_{i=1}^m p(x^{(i)}, y^{(i)}; φ, \mu_{0}, \mu_1, Σ)\\ &= \sum_{i=1}^{m} \text{log} p(x^{(i)}, y^{(i)}; φ, \mu_{0}, \mu_1, Σ)\\ &= \sum_{i=1}^{m} \Big( \text{log} \frac1{(2π)^{n/2}|Σ|^{1/2}} −\frac 12(x^{(i)} − \mu_{y^{(i)}})^T Σ^{−1}(x^{(i)} − \mu_{y^{(i)}}) + 1\{y^{(i)} = 1\} \text{log} \phi + 1\{y^{(i)} = 0\} \log(1-\phi) \Big)\\ \end{aligned} ℓ(ϕ,μ−1,μ1,Σ)=logi=1∏mp(x(i),y(i);φ,μ0,μ1,Σ)=i=1∑mlogp(x(i),y(i);φ,μ0,μ1,Σ)=i=1∑m(log(2π)n/2∣Σ∣1/21−21(x(i)−μy(i))TΣ−1(x(i)−μy(i))+1{y(i)=1}logϕ+1{y(i)=0}log(1−ϕ))