Some mathematical background
Inner product
向量内积 (Inner product):
⟨ x , y ⟩ = x T y = ∑ i = 1 n x i y i , for x , y ∈ R n \langle x,y\rangle=x^Ty=\sum_{i=1}^nx_iy_i,\quad\text{for }x,y\in\mathbf{R}^n
⟨ x , y ⟩ = x T y = i = 1 ∑ n x i y i , for x , y ∈ R n
二范数 (ℓ 2 \ell_{2} ℓ 2 norm):
∥ x ∥ 2 = ( x T x ) 1 / 2 = ( x 1 2 + ⋯ + x n 2 ) 1 / 2 \|x\|_2=(x^Tx)^{1/2}=(x_1^2+\cdots+x_n^2)^{1/2}
∥ x ∥ 2 = ( x T x ) 1/2 = ( x 1 2 + ⋯ + x n 2 ) 1/2
形如 R m × n \mathbb{R}^{m\times n} R m × n 矩阵内积:
⟨ X , Y ⟩ = t r ( X T Y ) = ∑ i = 1 m ∑ j = 1 n X i j Y i j , f o r X , Y ∈ R m × n \langle X,Y\rangle=\mathrm{tr}(X^TY)=\sum_{i=1}^m\sum_{j=1}^nX_{ij}Y_{ij},\quad\mathrm{for~}X,Y\in\mathbb{R}^{m\times n}
⟨ X , Y ⟩ = tr ( X T Y ) = i = 1 ∑ m j = 1 ∑ n X ij Y ij , for X , Y ∈ R m × n
两个向量的距离 (distance)
d i s t ( x , y ) = ∥ x − y ∥ dist(x,y) = \left\| x-y \right\|_{}
d i s t ( x , y ) = ∥ x − y ∥
ℓ p \ell_{p} ℓ p norm:
∥ x ∥ p = ( ∣ x 1 ∣ p + ⋯ + ∣ x n ∣ p ) 1 / p \|x\|_p=(|x_1|^p+\cdots+|x_n|^p)^{1/p}
∥ x ∥ p = ( ∣ x 1 ∣ p + ⋯ + ∣ x n ∣ p ) 1/ p
P-quadratic norms: P ∈ S + + n P \in S^{n}_{++} P ∈ S ++ n
∥ x ∥ P = ( x T P x ) 1 / 2 = ∥ P 1 / 2 x ∥ 2 \|x\|_P=(x^TPx)^{1/2}=\|P^{1/2}x\|_2
∥ x ∥ P = ( x T P x ) 1/2 = ∥ P 1/2 x ∥ 2
Taylor series
标量形式:
∑ n = 0 ∞ f ( n ) ( a ) n ! ( x − a ) n = f ( a ) + f ′ ( a ) 1 ! ( x − a ) + f ′ ′ ( a ) 2 ! ( x − a ) 2 + ⋯ \sum_{n=0}^\infty\frac{f^{(n)}(a)}{n!}(x-a)^n=f(a)+\frac{f^{\prime}(a)}{1!}(x-a)+\frac{f^{\prime\prime}(a)}{2!}(x-a)^2+\cdots
n = 0 ∑ ∞ n ! f ( n ) ( a ) ( x − a ) n = f ( a ) + 1 ! f ′ ( a ) ( x − a ) + 2 ! f ′′ ( a ) ( x − a ) 2 + ⋯
矢量形式:
f ( a ) + ∇ f ( a ) T ( x − a ) + 1 2 ! ( x − a ) T ∇ 2 f ( a ) ( x − a ) + ⋯ f(a)+\nabla f(a)^T(x-a)+\frac1{2!}(x-a)^T\nabla^2f(a)(x-a)+\cdots
f ( a ) + ∇ f ( a ) T ( x − a ) + 2 ! 1 ( x − a ) T ∇ 2 f ( a ) ( x − a ) + ⋯
或者可以写成
f ( x + Δ x ) = f ( x ) + ∇ f ( x ) T Δ x + 1 2 ! Δ x T H ( x ) Δ x + ⋯ f(x+\Delta x)=f(x)+\nabla f(x)^T\Delta x+\frac{1}{2!}\Delta x^TH(x)\Delta x+\cdots
f ( x + Δ x ) = f ( x ) + ∇ f ( x ) T Δ x + 2 ! 1 Δ x T H ( x ) Δ x + ⋯
其中 H ( x ) = [ ∂ 2 f ∂ x i ∂ x j ] H(x)=[\frac{\partial^{2}f}{\partial x_{i}\partial x_{j}}] H ( x ) = [ ∂ x i ∂ x j ∂ 2 f ] ,为 Hessian matrix。
Symmetric matrix decomposition
如果 A ∈ S n A\in\mathbf{S}^n A ∈ S n ,即 A A A 为 n × n n\times n n × n 的实对称阵,那么可以进行特征分解:
A = Q Λ Q T A = Q \Lambda Q^{\mathrm{T}}
A = Q Λ Q T
其中 Q ∈ R n × n Q \in \mathbb{R}^{n\times n} Q ∈ R n × n 为正交阵,即满足 Q T Q = I Q^{\mathrm{T}}Q = I Q T Q = I ,矩阵 Q Q Q 的列为 A A A 的特征向量。Λ \Lambda Λ 为对角阵,即 Λ = diag ( λ 1 , … , λ n ) \Lambda = \operatorname{diag}(\lambda_1, \ldots ,\lambda_n) Λ = diag ( λ 1 , … , λ n ) ,其中的实数 λ i \lambda_i λ i 就是矩阵 A A A 的特征值,它们也是特征多项式 det ( s I − A ) \det (sI-A) det ( s I − A ) 的根。
A = Q Λ Q T ⇒ A Q = Q Λ Q T Q = Q Λ ⇒ A ( q 1 , q 2 , … q n ) = ( q 1 , q 2 , … q n ) [ λ 1 λ 2 ⋱ λ n ] \begin{aligned}
&A = Q \Lambda Q^{\mathrm{T}} \\
\Rightarrow & AQ = Q \Lambda Q^{\mathrm{T}} Q = Q \Lambda \\
\Rightarrow & A(q_1,q_2, \ldots q_n) = (q_1,q_2, \ldots q_n) \begin{bmatrix}\lambda_{1}&&&\\&\lambda_{2}&&\\&&\ddots &\\&&&\lambda_{n}\end{bmatrix}
\end{aligned}
⇒ ⇒ A = Q Λ Q T A Q = Q Λ Q T Q = Q Λ A ( q 1 , q 2 , … q n ) = ( q 1 , q 2 , … q n ) λ 1 λ 2 ⋱ λ n
发现有 A q j = λ j q j A q_j = \lambda_j q_j A q j = λ j q j ,符合对特征向量的定义。
假定 λ 1 ≥ λ 2 ≥ ⋯ λ n \lambda_1\ge \lambda_2\ge \cdots \lambda_n λ 1 ≥ λ 2 ≥ ⋯ λ n ,并且记 λ i ( A ) \lambda_i(A) λ i ( A ) 为矩阵 A A A 第 i i i 大的特征向量。
det ( A ) = ∏ i = 1 n λ i : det ( A ) = det ( Q ) det ( Λ ) det ( Q T ) = det ( Λ ) \det (A) = \prod_{i=1}^{n} \lambda_i: \det (A) = \det (Q) \det (\Lambda) \det (Q^{\mathrm{T}}) = \det (\Lambda)
det ( A ) = i = 1 ∏ n λ i : det ( A ) = det ( Q ) det ( Λ ) det ( Q T ) = det ( Λ )
T r ( A ) = ∑ i = 1 n λ i : T r ( A ) = T r ( Q Λ Q T ) = T r ( Λ Q T Q ) = T r ( Λ ) Tr(A) = \sum_{i=1}^{n}\lambda_i : Tr(A) = Tr(Q \Lambda Q^{\mathrm{T}}) = Tr(\Lambda Q^{\mathrm{T}} Q) = Tr(\Lambda)
T r ( A ) = i = 1 ∑ n λ i : T r ( A ) = T r ( Q Λ Q T ) = T r ( Λ Q T Q ) = T r ( Λ )
Singular Value Decomposition (SVD)
假设矩阵 A ∈ R m × n A \in \mathbb{R}^{m\times n} A ∈ R m × n ,同时 rank A = r \operatorname{rank} A = r rank A = r ,那么 A A A 可以写成
A = U Σ V T A = U \Sigma V^{\mathrm{T}}
A = U Σ V T
其中 U ∈ R m × r U \in \mathbb{R}^{m\times r} U ∈ R m × r 满足 U T U = I U^{\mathrm{T}}U=I U T U = I ,V ∈ R n × r V \in R^{n\times r} V ∈ R n × r 满足 V T V = I V^{\mathrm{T}}V=I V T V = I ,Σ = diag ( σ 1 , … σ r ) \Sigma = \operatorname{diag}(\sigma_1, \ldots \sigma_r) Σ = diag ( σ 1 , … σ r ) :
σ 1 ≥ σ 2 ≥ ⋯ ≥ σ r > 0 \sigma_1\ge \sigma_2\ge \cdots \ge \sigma_r >0
σ 1 ≥ σ 2 ≥ ⋯ ≥ σ r > 0
Principal Component Analysis (PCA)
我们如果遇到一堆点,在几何上有一定的方向性。在 GMM 中我们使用高斯混合模型的参数来拟合数据的特征,而在 PCA 中,我们则使用向量来描述这个方向性。
Define the error
我们曾经用平均值 μ {\mu} μ 来表示一堆点,这里又引入了方向 w {w} w ,∥ w ∥ = 1 \left\| {w} \right\|_{}=1 ∥ w ∥ = 1 。为了选择一个最合适的方向,那么需要定义误差 (error),通过最小化误差来得到 w {w} w 。
对于一个点而言,误差可以定义为这个点到方向向量的距离,即 e t = x t − y t w e_t=x_t-y_tw e t = x t − y t w ,由此得到总的误差函数为:
J ( w ) = 1 N ∑ t = 1 N ∣ ∣ x t − ( x t T w ) w ∣ ∣ 2 J(w)=\frac1N\sum_{t=1}^N||x_t-(x_t^Tw)w||^2
J ( w ) = N 1 t = 1 ∑ N ∣∣ x t − ( x t T w ) w ∣ ∣ 2
对于更加一般的形式,有
J ( μ , w ) = ∑ t = 1 N ∥ ( x t − μ ) − ( ( x t − μ ) T w ) w ∥ 2 J(\mu,w) = \sum_{t=1}^{N} \left\| (x_t-\mu) - ((x_t-\mu)^{\mathrm{T}}w)w \right\|_{}^{2}
J ( μ , w ) = t = 1 ∑ N ( x t − μ ) − (( x t − μ ) T w ) w 2
这里为了简便,直接写出了 μ \mu μ 为平均值,并且 x t ← x t − μ x_t \leftarrow x_t-\mu x t ← x t − μ ,相当于进行了去中心化处理。
Mean Square Error (MSE)
考虑 J ( w ) J(w) J ( w ) 中的一项:
∣ ∣ x t − ( x t T w ) w ∣ ∣ 2 = ( x t − ( x t T w ) w ) T ( x t − ( x t T w ) w ) = x t T x t − ( x t T w ) w T x t − x t T ( x t T w ) w + ( x t T w ) w T ( x t T w ) w = x t T x t − w T ( x t x t T ) w \begin{aligned}
&||x_t-(x_t^Tw)w||^2\\
=& (x_t-(x_t^Tw)w)^{\mathrm{T}}(x_t-(x_t^Tw)w) \\
=&x_t^Tx_t-(x_t^Tw)w^Tx_t-x_t^T(x_t^Tw)w+(x_t^Tw)w^T(x_t^Tw)w\\
=&x_t^Tx_t-w^T(x_tx_t^T)w
\end{aligned}
= = = ∣∣ x t − ( x t T w ) w ∣ ∣ 2 ( x t − ( x t T w ) w ) T ( x t − ( x t T w ) w ) x t T x t − ( x t T w ) w T x t − x t T ( x t T w ) w + ( x t T w ) w T ( x t T w ) w x t T x t − w T ( x t x t T ) w
发现 x t T x t x_t^Tx_t x t T x t 为常量,而样本协方差矩阵
Σ x = 1 N ∑ t = 1 N x t x t T \Sigma_x=\frac{1}{N}\sum_{t=1}^Nx_tx_t^T
Σ x = N 1 t = 1 ∑ N x t x t T
因此需要优化的 w w w 的目标函数为 w T Σ x w w^{\mathrm{T}} \Sigma_{x} w w T Σ x w 。
考虑到 ∥ w ∥ 2 = 1 \left\| w \right\|_{}^{2}=1 ∥ w ∥ 2 = 1 的约束,使用拉格朗日乘子法:
L ( { x t } , w ) = J ( { x t } , w ) − λ ⋅ ( w T w − 1 ) ∂ J ( w ) ∂ w − λ ⋅ ∂ ( w T w − 1 ) ∂ w = − 2 ( Σ x w ) − λ ⋅ 2 w = 0 \begin{aligned}
&L(\{x_{t}\},w)=J(\{x_{t}\},w)-\lambda\cdot(w^{T}w-1)\\&\frac{\partial J(w)}{\partial w}-\lambda\cdot\frac{\partial(w^Tw-1)}{\partial w}=-2(\Sigma_xw)-\lambda\cdot2w=0
\end{aligned}
L ({ x t } , w ) = J ({ x t } , w ) − λ ⋅ ( w T w − 1 ) ∂ w ∂ J ( w ) − λ ⋅ ∂ w ∂ ( w T w − 1 ) = − 2 ( Σ x w ) − λ ⋅ 2 w = 0
可以得到解为 Σ x w = ( − λ ) w \Sigma_{x}w = (-\lambda) w Σ x w = ( − λ ) w ,目标的方向向量即为样本协方差矩阵的特征向量。同时考虑到目标为最小化 J ( w ) J(w) J ( w ) ,即最大化 w T Σ x w = w T ( − λ ) w w^{\mathrm{T}}\Sigma_{x}w = w^{\mathrm{T}}(-\lambda)w w T Σ x w = w T ( − λ ) w ,所以取 w w w 值的时候,需要取对应的 ∣ λ ∣ \left\vert \lambda \right\vert ∣ λ ∣ 最大的。
From matrix factorization perspective
由上面的讨论,知道使用 PCA 即为求样本协方差矩阵的最大特征值对应的特征向量。
Σ X ≈ U Λ U T U = [ u 1 , . . . , u k ] d × N T Λ = diag [ λ 1 , . . . , λ k ] \begin{aligned}
&\Sigma_{\mathcal{X}}\approx U\Lambda U^T\\&U=[\boldsymbol{u}_1,...,\boldsymbol{u}_\mathrm{k}]_{d\times N}^\mathrm{T}\\&\Lambda=\operatorname{diag}[\lambda_1,...,\lambda_k]
\end{aligned}
Σ X ≈ U Λ U T U = [ u 1 , ... , u k ] d × N T Λ = diag [ λ 1 , ... , λ k ]
Σ x = 1 N ∑ t = 1 N x t x t T = 1 N X X T X = [ x 1 , . . . , x N ] d × N \begin{aligned}
&\Sigma_x=\frac1N\sum_{t=1}^Nx_tx_t^T=\frac1NXX^T\\&X=[x_1,...,x_N]_{d\times N}
\end{aligned}
Σ x = N 1 t = 1 ∑ N x t x t T = N 1 X X T X = [ x 1 , ... , x N ] d × N
对于样本矩阵 X X X ,考虑 SVD
X = U D V T X X T = U D V T ⋅ V D U T = U D 2 U T \begin{aligned}
&X=UDV^T\\&XX^T=UDV^T\cdot VDU^T=UD^2U^T
\end{aligned}
X = U D V T X X T = U D V T ⋅ V D U T = U D 2 U T
我们发现特征向量就在 SVD 得到的一个矩阵中。
Hebbian learning, LMSER and PCA
Hebbian learning
基本思想:和神经网络类似。如果两个神经元经常同时受到刺激,那么这两个神经元之间的联系会更加紧密。
y = ∑ j w j x j = w T x y=\sum_{j}w_{j}x_{j}=w^{\mathrm{T}}x
y = j ∑ w j x j = w T x
神经元之间的权值 w i w_i w i 就代表了这两个神经元联系的紧密程度。参数的更新方法为:
w n e w ← w o l d + η y x w^{new} \leftarrow w^{old} + \eta y x
w n e w ← w o l d + ηy x
其中 η \eta η 为可以设定的学习率。上式的分量式形如 w 1 n e w ← w 1 o l d + η y x 1 w_1^{new} \leftarrow w_1^{old} + \eta y x_1 w 1 n e w ← w 1 o l d + ηy x 1 。这种更新方式课可以理解为,如果输出和输入变化都为正或都为负,那么权重增大;反之减小。
但是 Hebbian learning 会有问题,即 w w w 不断更新,可能会导致 ∥ w ∥ → + ∞ \left\| w \right\|_{}\rightarrow +\infty ∥ w ∥ → + ∞ 。这个问题可以通过归一化的方式解决,即
w n e w ← w n e w ∥ w n e w ∥ w^{new} \leftarrow \frac{w^{new}}{\left\| w^{new} \right\|_{}}
w n e w ← ∥ w n e w ∥ w n e w
如果希望把两步合成一步,即
w n e w ← w o l d + η y x ∥ w o l d + η y x ∥ w^{new} \leftarrow \frac{w^{old}+\eta y x}{\left\| w^{old}+\eta y x \right\|_{}}
w n e w ← ∥ w o l d + ηy x ∥ w o l d + ηy x
又发现分母过于冗长,希望再移到分子上。此时对分母利用泰勒展开,保留一阶和二阶项,有
w n e w ← w o l d + η y ( x − y w o l d ) + O ( η 2 ) w^{new} \leftarrow w^{old} + \eta y(x-yw^{old}) + O(\eta^{2})
w n e w ← w o l d + ηy ( x − y w o l d ) + O ( η 2 )
这个新的 learning rule 被称为 Oja rule ,提出这个算法的论文中也证明了 Hebbian learning 实际上学习的是 PCA 的方向。
LMSER for PCA
Least Mean Square Error Reconstruction (LMSR)
该方法希望学习一个 W W W ,有:
y = W x x = W T y min ∥ x − x ^ ∥ y=Wx \quad x=W^{\mathrm{T}}y \\
\min_{} \left\| x-\hat{x} \right\|_{}
y = W x x = W T y min ∥ x − x ^ ∥
如果有多个输入 x x x ,即为最小化
J ( W ) = 1 N ∑ t = 1 N ∥ x t − W T W x t ∥ 2 J(W) = \frac{1}{N} \sum_{t=1}^{N} \left\| x_t-W^{\mathrm{T}}W x_t \right\|_{}^{2}
J ( W ) = N 1 t = 1 ∑ N x t − W T W x t 2
可以看出如果希望最小化 J ( W ) J(W) J ( W ) ,那么相当于最小化 ∥ I − W T W ∥ \left\| I-W^{\mathrm{T}}W \right\|_{} I − W T W ,因此 W W W 中的向量会趋近于正交的单位向量,因此不会引起参数过大的问题。
Algorithm for PCA
Eigen-decomposition:
Σ x w = − λ w \Sigma_{x}w = -\lambda w Σ x w = − λ w
求出了所有特征向量,但是有可能求不准,比如样本比较少的时候,Σ x \Sigma_{x} Σ x 不准确。
SVD:
X = U D V T X X T = U D V T ⋅ V D U T = U D 2 U T X=UDV^T\quad XX^T=UDV^T\cdot VDU^T=UD^2U^T X = U D V T X X T = U D V T ⋅ V D U T = U D 2 U T
和 PCA 有同样的问题
Hebbian learning rule
τ W d W d t = z ‾ x ‾ t \tau^{W}\frac{dW}{dt}=\overline{z}\overline{x}^{t} τ W d t d W = z x t
可能会导致参数爆炸
Oja learning rule
τ W d W d t = z ‾ x ‾ t − y ‾ u ‾ t \tau^W\frac{dW}{dt}=\overline{z}\overline{x}^t-\overline{y}\overline{u}^t τ W d t d W = z x t − y u t
Lmser rule
τ W d W d t = z ‾ x ‾ t − y ‾ u ‾ t + z ‾ x ‾ t − y ‾ t x ‾ t \tau^W\frac{dW}{dt}=\overline{z}\overline{x}^t-\overline{y}\overline{u}^t+\overline{z}\overline{x}^t-\overline{y}^t\overline{x}^t τ W d t d W = z x t − y u t + z x t − y t x t
对于上面几个 learning rule,有 z ⃗ = y ⃗ y ⃗ = W x ⃗ , u ⃗ = W t y ⃗ , y ⃗ r = W u ⃗ \vec{z}=\vec{y}\quad\vec{y}=W\vec{x},\vec{u}=W^{t}\vec{y},\vec{y}^{r}=W\vec{u} z = y y = W x , u = W t y , y r = W u
Probabilistic PCA, Factor Analysis(FA)
从产生式模型的角度看 PCA。PCA 中的 y y y 可以看成是隐变量。
Gaussian distribution
f X ( x 1 , … , x k ) = exp ( − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) ) ( 2 π ) k ∣ Σ ∣ f_\mathbf{X}(x_1,\ldots,x_k)=\frac{\exp(-\frac12(\mathbf{x}-\boldsymbol{\mu})^\mathrm{T}\boldsymbol{\Sigma}^{-1}(\mathbf{x}-\boldsymbol{\mu}))}{\sqrt{(2\pi)^k|\boldsymbol{\Sigma}|}}
f X ( x 1 , … , x k ) = ( 2 π ) k ∣ Σ ∣ exp ( − 2 1 ( x − μ ) T Σ − 1 ( x − μ ))
特别的,在二维情况下(k = rank Σ = 2 k=\operatorname{rank}\Sigma=2 k = rank Σ = 2 ),有
f ( x , y ) = 1 2 π σ X σ Y 1 − ρ 2 exp ( − 1 2 ( 1 − ρ 2 ) [ ( x − μ X ) 2 σ X 2 + ( y − μ Y ) 2 σ Y 2 − 2 ρ ( x − μ X ) ( y − μ Y ) σ X σ Y ] ) f(x,y)=\frac1{2\pi\sigma_X\sigma_Y\sqrt{1-\rho^2}}\exp\left(-\frac1{2(1-\rho^2)}\left[\frac{(x-\mu_X)^2}{\sigma_X^2}+\frac{(y-\mu_Y)^2}{\sigma_Y^2}-\frac{2\rho(x-\mu_X)(y-\mu_Y)}{\sigma_X\sigma_Y}\right]\right)
f ( x , y ) = 2 π σ X σ Y 1 − ρ 2 1 exp ( − 2 ( 1 − ρ 2 ) 1 [ σ X 2 ( x − μ X ) 2 + σ Y 2 ( y − μ Y ) 2 − σ X σ Y 2 ρ ( x − μ X ) ( y − μ Y ) ] )
其中 ρ \rho ρ 是 X X X 和 Y Y Y 的相关系数。同时在本例子中,
μ = ( μ X μ Y ) , Σ = ( σ X 2 ρ σ X σ Y ρ σ X σ Y σ Y 2 ) \boldsymbol{\mu}=\binom{\mu_X}{\mu_Y},\quad
\left.\boldsymbol{\Sigma}=\left(\begin{array}{cc}\sigma_X^2&\rho\sigma_X\sigma_Y\\\rho\sigma_X\sigma_Y&\sigma_Y^2\end{array}\right.\right)
μ = ( μ Y μ X ) , Σ = ( σ X 2 ρ σ X σ Y ρ σ X σ Y σ Y 2 )
协方差矩阵推导:
Σ = Cov ( ( x , y ) T ) = E [ ( ( x y ) − ( μ x μ y ) ) ( ( x y ) − ( μ x μ y ) ) T ] = E ( ( x − μ x ) 2 ( x − μ x ) ( y − μ y ) ( y − μ y ) ( x − μ x ) ( y − μ y ) 2 ) \Sigma = \operatorname{Cov}((x,y)^{\mathrm{T}}) =
E \left[
\left( \begin{pmatrix} x \\y \end{pmatrix} - \begin{pmatrix} \mu_{x} \\ \mu_{y} \end{pmatrix} \right)
\left( \begin{pmatrix} x \\y \end{pmatrix} - \begin{pmatrix} \mu_{x} \\ \mu_{y} \end{pmatrix} \right) ^{\mathrm{T}}
\right] \\
= E \begin{pmatrix}
(x-\mu_{x})^{2} & (x-\mu_{x})(y-\mu_{y}) \\
(y-\mu_y)(x-\mu_{x}) & (y-\mu_y)^{2}
\end{pmatrix}
Σ = Cov (( x , y ) T ) = E [ ( ( x y ) − ( μ x μ y ) ) ( ( x y ) − ( μ x μ y ) ) T ] = E ( ( x − μ x ) 2 ( y − μ y ) ( x − μ x ) ( x − μ x ) ( y − μ y ) ( y − μ y ) 2 )
Conditional Gaussian
如果 x \mathbf{x} x 是一个 N N N 维的向量,满足混合高斯分布。按照如下方式切分:
x = [ x 1 x 2 ] with sizes [ q × 1 ( N − q ) × 1 ] \mathbf{x}=\begin{bmatrix}\mathbf{x}_1\\\mathbf{x}_2\end{bmatrix}\text{with sizes}\begin{bmatrix}q\times1\\(N-q)\times1\end{bmatrix}
x = [ x 1 x 2 ] with sizes [ q × 1 ( N − q ) × 1 ]
那么 μ \boldsymbol{\mu} μ 和 Σ \boldsymbol{\Sigma} Σ 有
μ = [ μ 1 μ 2 ] with sizes [ q × 1 ( N − q ) × 1 ] Σ = [ Σ 11 Σ 12 Σ 21 Σ 22 ] with sizes [ q × q q × ( N − q ) ( N − q ) × q ( N − q ) × ( N − q ) ] \begin{aligned}&\boldsymbol{\mu}=\begin{bmatrix}\boldsymbol{\mu}_1\\\boldsymbol{\mu}_2\end{bmatrix}\text{with sizes}\begin{bmatrix}q\times1\\(N-q)\times1\end{bmatrix}\\&\boldsymbol{\Sigma}=\begin{bmatrix}\boldsymbol{\Sigma}_{11}&\boldsymbol{\Sigma}_{12}\\\boldsymbol{\Sigma}_{21}&\boldsymbol{\Sigma}_{22}\end{bmatrix}\text{with sizes}\begin{bmatrix}q\times q&q\times(N-q)\\(N-q)\times q&(N-q)\times(N-q)\end{bmatrix}\end{aligned}
μ = [ μ 1 μ 2 ] with sizes [ q × 1 ( N − q ) × 1 ] Σ = [ Σ 11 Σ 21 Σ 12 Σ 22 ] with sizes [ q × q ( N − q ) × q q × ( N − q ) ( N − q ) × ( N − q ) ]
此时考虑 x 2 = a \mathbf{x}_2=\mathbf{a} x 2 = a 时 x 1 \mathbf{x}_1 x 1 的条件概率,得知其仍是一个混合高斯分布 ( x 1 ∣ x 2 = a ) ∼ N ( μ ‾ , Σ ‾ ) (\mathbf{x}_{1}\mid\mathbf{x}_{2}=\mathbf{a})\sim N(\overline{\mathbf{\mu}},\overline{\mathbf{\Sigma}}) ( x 1 ∣ x 2 = a ) ∼ N ( μ , Σ ) 。可以算得:
μ ˉ = μ 1 + Σ 12 Σ 22 − 1 ( a − μ 2 ) Σ ‾ = Σ 11 − Σ 12 Σ 22 − 1 Σ 21 . \begin{aligned}
\bar{\boldsymbol{\mu}}&=\boldsymbol{\mu}_1+\boldsymbol{\Sigma}_{12}\boldsymbol{\Sigma}_{22}^{-1}\left(\mathbf{a}-\boldsymbol{\mu}_2\right) \\
\overline{\mathbf{\Sigma}}&=\mathbf{\Sigma}_{11}-\mathbf{\Sigma}_{12}\mathbf{\Sigma}_{22}^{-1}\mathbf{\Sigma}_{21}.
\end{aligned}
μ ˉ Σ = μ 1 + Σ 12 Σ 22 − 1 ( a − μ 2 ) = Σ 11 − Σ 12 Σ 22 − 1 Σ 21 .
线性变换对高斯分布封闭。如果 Y = c + B X \mathbf{Y}=\mathbf{c}+\mathbf{BX} Y = c + BX ,且 X ∼ N ( μ , Σ ) \mathbf{X}\sim\mathcal{N}(\boldsymbol{\mu},\boldsymbol{\Sigma}) X ∼ N ( μ , Σ ) ,那么 Y ∼ N ( c + B μ , B Σ B T ) \mathbf{Y}\sim\mathcal{N}\left(\mathbf{c}+\mathbf{B}\boldsymbol{\mu},\mathbf{B}\boldsymbol{\Sigma}\mathbf{B}^\mathrm{T}\right) Y ∼ N ( c + B μ , B Σ B T ) 。推导过程:
E [ Y ] = E [ c + B X ] = c + B E ( X ) = c + B μ Cov [ Y ] = E [ ( c + B X − ( c + B μ ) ) ( c + B X − ( c + B μ ) ) T ] = E [ B ( x − μ ) ( x − μ ) T ] = B Σ B T \begin{aligned}
E[\mathbf{Y}] &= E[\mathbf{c}+\mathbf{B}\mathbf{X}] = \mathbf{c}+\mathbf{B}E(\mathbf{X}) = \mathbf{c}+\mathbf{B}\boldsymbol{\mu}\\
\operatorname{Cov}[\mathbf{Y}] &= E[(\mathbf{c}+\mathbf{B}\mathbf{X}-(\mathbf{c}+\mathbf{B}\boldsymbol{\mu}))(\mathbf{c}+\mathbf{B}\mathbf{X}-(\mathbf{c}+\mathbf{B}\boldsymbol{\mu}))^{\mathrm{T}}] \\
&=E[\mathbf{B}(\mathbf{x}-\boldsymbol{\mu})(\mathbf{x}-\boldsymbol{\mu})^{\mathrm{T}}] = \mathbf{B}\boldsymbol{\Sigma}\mathbf{B}^{\mathrm{T}}
\end{aligned}
E [ Y ] Cov [ Y ] = E [ c + BX ] = c + B E ( X ) = c + B μ = E [( c + BX − ( c + B μ )) ( c + BX − ( c + B μ ) ) T ] = E [ B ( x − μ ) ( x − μ ) T ] = B Σ B T
从线性变换的性质可以看出,任意一个混合高斯分布都可以看成是一个标准的 n n n 维高斯分布得到。将 Σ \mathbf{\Sigma} Σ 做特征值分解:Σ = U Λ U T = U Λ 1 / 2 ( U Λ 1 / 2 ) T \mathbf{\Sigma}=\mathbf{U}\mathbf{\Lambda}\mathbf{U}^{\mathrm{T}}=\mathbf{U}\mathbf{\Lambda}^{1/2}(\mathbf{U}\mathbf{\Lambda}^{1/2})^{\mathrm{T}} Σ = UΛ U T = U Λ 1/2 ( U Λ 1/2 ) T ,那么有:
X ∼ N ( μ , Σ ) ⟺ X ∼ μ + U Λ 1 / 2 N ( 0 , I ) \mathbf{X}\sim\mathcal{N}(\boldsymbol{\mu},\boldsymbol{\Sigma})\iff\mathbf{X}\sim\boldsymbol{\mu}+\mathbf{U}\mathbf{\Lambda}^{1/2}\mathcal{N}(0,\mathbf{I})
X ∼ N ( μ , Σ ) ⟺ X ∼ μ + U Λ 1/2 N ( 0 , I )
Generative model perspective
PCA 中,认为隐变量是 y \boldsymbol{y} y 。假设
y t ∼ G ( y ∣ 0 , Σ y ) e t ∼ G ( e ∣ 0 , σ 2 I ) x t = A y t + μ + e t \boldsymbol{y}_t\boldsymbol{\sim}G(\boldsymbol{y}|\boldsymbol{0},\Sigma_y) \\
\boldsymbol{e}_t\boldsymbol{\sim}G(\boldsymbol{e}|0,\sigma^2I)\\
\boldsymbol{x}_t=\boldsymbol{A} \boldsymbol{y}_t+\boldsymbol{\mu}+\boldsymbol{e}_t
y t ∼ G ( y ∣ 0 , Σ y ) e t ∼ G ( e ∣0 , σ 2 I ) x t = A y t + μ + e t
其中将 y \boldsymbol{y} y 的均值设为 0 \boldsymbol{0} 0 ,是为了防止和 μ \boldsymbol{\mu} μ 的冗余。 e \boldsymbol{e} e 为噪声。
y → x \boldsymbol{y}\rightarrow \boldsymbol{x} y → x
下面考虑知道了 y \boldsymbol{y} y 之后来生成 x \boldsymbol{x} x 之后 x \boldsymbol{x} x 的分布。
q ( y ) = G ( y ∣ 0 , Σ y ) q ( x ∣ y ) = G ( x ∣ A y + μ , Σ e ) ( Σ e = σ 2 I ) q ( x , y ) = q ( x ∣ y ) q ( y ) q ( x ∣ θ ) = ∫ q ( x ∣ y ) q ( y ) d y \begin{aligned}
q(\boldsymbol{y}) &= G(\boldsymbol{y}|\boldsymbol{0},\Sigma_y)\\
q(\boldsymbol{x}|\boldsymbol{y}) &= G(\mathbf{x}|\boldsymbol{A} \boldsymbol{y}+\boldsymbol{\mu}, \Sigma_e) \quad (\Sigma_e=\sigma^{2}\boldsymbol{I}) \\
q(\boldsymbol{x},\boldsymbol{y}) &= q(\boldsymbol{x}|\boldsymbol{y}) q(\boldsymbol{y})\\
q(\boldsymbol{x}|\theta) &= \int q(\boldsymbol{x}|\boldsymbol{y}) q(\boldsymbol{y}) \mathrm{d} \boldsymbol{y}
\end{aligned}
q ( y ) q ( x ∣ y ) q ( x , y ) q ( x ∣ θ ) = G ( y ∣ 0 , Σ y ) = G ( x ∣ A y + μ , Σ e ) ( Σ e = σ 2 I ) = q ( x ∣ y ) q ( y ) = ∫ q ( x ∣ y ) q ( y ) d y
在 x t = A y t + μ + e t \boldsymbol{x}_t=A \boldsymbol{y}_t+\boldsymbol{\mu}+\boldsymbol{e}_t x t = A y t + μ + e t 中,由于 y t \boldsymbol{y}_t y t 和 e t \boldsymbol{e}_t e t 都为高斯分布且相互独立,可以证明 x t \boldsymbol{x}_t x t 也为高斯分布。接下来求 x \boldsymbol{x} x 的均值和协方差。
E [ x ] = A E [ y ] + μ + E [ e ] = μ E[\boldsymbol{x}] = \boldsymbol{A} E[\boldsymbol{y}] + \boldsymbol{\mu} +E[\boldsymbol{e}] = \boldsymbol{\mu}
E [ x ] = A E [ y ] + μ + E [ e ] = μ
Cov [ x ] = E [ ( A y + e ) ( A y + e ) T ] = E [ A y y T A T + A y e T + e y T A T + e e T ] = Cov [ A y ] + 2 Cov [ A y , e ] + Cov [ e ] = A Σ y A T + Σ e ( Cov [ A y , e ] = 0 ) \begin{aligned}
\operatorname{Cov}[\boldsymbol{x}] &= E[(\boldsymbol{Ay}+\boldsymbol{e})(\boldsymbol{Ay}+\boldsymbol{e})^{\mathrm{T}}] \\
&= E[\boldsymbol{A}\boldsymbol{y}\boldsymbol{y}^{\mathrm{T}}\boldsymbol{A}^{\mathrm{T}}+\boldsymbol{A}\boldsymbol{y}\boldsymbol{e}^{\mathrm{T}}+\boldsymbol{e}\boldsymbol{y}^{\mathrm{T}}\boldsymbol{A}^{\mathrm{T}}+\boldsymbol{e}\boldsymbol{e}^{\mathrm{T}}] \\
&= \operatorname{Cov}[\boldsymbol{Ay}] + 2\operatorname{Cov}[\boldsymbol{Ay},e] + \operatorname{Cov}[\boldsymbol{e}] \\
&= \boldsymbol{A} \boldsymbol{\Sigma_y} \boldsymbol{A}^{\mathrm{T}} + \boldsymbol{\Sigma_e} \quad (\operatorname{Cov}[\boldsymbol{Ay},e]=0)
\end{aligned}
Cov [ x ] = E [( Ay + e ) ( Ay + e ) T ] = E [ A y y T A T + A y e T + e y T A T + e e T ] = Cov [ Ay ] + 2 Cov [ Ay , e ] + Cov [ e ] = A Σ y A T + Σ e ( Cov [ Ay , e ] = 0 )
因此有 q ( x ∣ θ ) ∼ G ( x ∣ μ , A Σ y A T + Σ e ) q(\boldsymbol{x}|\theta)\sim G(\boldsymbol{x}|\boldsymbol{\mu}, \boldsymbol{A}\boldsymbol{\Sigma_y}\boldsymbol{A}^{\mathrm{T}}+\boldsymbol{\Sigma_e}) q ( x ∣ θ ) ∼ G ( x ∣ μ , A Σ y A T + Σ e )
既然我们用高斯分布来拟合数据 x \boldsymbol{x} x 的分布,那么希望均值 E [ x ] E[\boldsymbol{x}] E [ x ] 为样本均值 1 N ∑ t = 1 N x t \frac{1}{N}\sum_{t=1}^{N}\boldsymbol{x}_t N 1 ∑ t = 1 N x t ,协方差 Cov [ x ] \operatorname{Cov}[\boldsymbol{x}] Cov [ x ] 为样本的协方差矩阵 S x = 1 N ∑ t = 1 N ( x t − μ ) ( x t − μ ) T S_{x}=\frac{1}{N}\sum_{t=1}^{N}(\boldsymbol{x}_t-\boldsymbol{\mu})(\boldsymbol{x}_t-\boldsymbol{\mu})^{\mathrm{T}} S x = N 1 ∑ t = 1 N ( x t − μ ) ( x t − μ ) T
此时我们考察 Cov ( x ) \operatorname{Cov}(\boldsymbol{x}) Cov ( x ) ,发现 A Σ y A T \boldsymbol{A}\boldsymbol{\Sigma_y}\boldsymbol{A}^{\mathrm{T}} A Σ y A T 中可能会有冗余,即 A \boldsymbol{A} A 和 Σ y \boldsymbol{\Sigma_y} Σ y 可能不唯一。为了防止冗余,可以仿照特征分解,要求 Σ y \Sigma_y Σ y 为对角阵,且 A \boldsymbol{A} A 为正交阵。但是在文献中,通常取 Σ y = I \boldsymbol{\Sigma_y}=\boldsymbol{I} Σ y = I ,此时 A A T \boldsymbol{A}\boldsymbol{A}^{\mathrm{T}} A A T 表征协方差,此时会导致 A \boldsymbol{A} A 不唯一。如果限定 A \boldsymbol{A} A 正交阵,会不方便求导,因此实际中还是采用了这种不唯一的写法。
General EM Algorithm
E-step
计算 p ( y ∣ x , θ ) p(\boldsymbol{y}|\boldsymbol{x},\theta) p ( y ∣ x , θ ) 。在这里我们用 q ( y ∣ x ) q(\boldsymbol{y}|\boldsymbol{x}) q ( y ∣ x ) 来估计 p ( y ∣ x , θ ) p(\boldsymbol{y}|\boldsymbol{x},\theta) p ( y ∣ x , θ ) 。而
q ( y ∣ x ) = q ( x ∣ y ) q ( y ) q ( x ∣ θ ) ≡ G ( μ y ∣ x , Σ y ∣ x ) q(\boldsymbol{y}|\boldsymbol{x}) = \frac{q(\boldsymbol{x}|\boldsymbol{y})q(\boldsymbol{y})}{q(\boldsymbol{x}|\theta)} \equiv G(\boldsymbol{\mu}_{\boldsymbol{y}|\boldsymbol{x}}, \boldsymbol{\Sigma}_{\boldsymbol{y}|\boldsymbol{x}})
q ( y ∣ x ) = q ( x ∣ θ ) q ( x ∣ y ) q ( y ) ≡ G ( μ y ∣ x , Σ y ∣ x )
我们需要计算得到 μ y ∣ x , Σ y ∣ x \boldsymbol{\mu}_{\boldsymbol{y}|\boldsymbol{x}}, \boldsymbol{\Sigma}_{\boldsymbol{y}|\boldsymbol{x}} μ y ∣ x , Σ y ∣ x 。这里可以通过配方的方法求解。
q ( y ) = 1 ( 2 π ) m exp ( − 1 2 y T y ) q(\boldsymbol{y}) = \frac{1}{(\sqrt{2\pi})^{m}}\exp (-\frac{1}{2}\boldsymbol{y}^{\mathrm{T}}\boldsymbol{y})
q ( y ) = ( 2 π ) m 1 exp ( − 2 1 y T y )
q ( x ∣ y ) = 1 ( 2 π ) n ∣ Σ e ∣ 1 2 exp { − 1 2 ( x − A y − μ ) T Σ e − 1 ( x − A y − μ ) } q(\boldsymbol{x}|\boldsymbol{y}) = \frac{1}{(\sqrt{2\pi})^{n}\left\vert \boldsymbol{\Sigma_e} \right\vert ^{\frac{1}{2}}} \exp \left \{ -\frac{1}{2}(\boldsymbol{x}-\boldsymbol{A}\boldsymbol{y}-\boldsymbol{\mu})^{\mathrm{T}}\boldsymbol{\Sigma_e}^{-1}(\boldsymbol{x}-\boldsymbol{A}\boldsymbol{y}-\boldsymbol{\mu}) \right\}
q ( x ∣ y ) = ( 2 π ) n ∣ Σ e ∣ 2 1 1 exp { − 2 1 ( x − A y − μ ) T Σ e − 1 ( x − A y − μ ) }
q ( x ∣ θ ) = 1 ( 2 π ) n ∣ A A T + Σ e ∣ 1 2 exp { − 1 2 ( x − μ ) T ( A A T + Σ e ) − 1 ( x − μ ) } q(\boldsymbol{x}|\boldsymbol{\theta}) = \frac{1}{(\sqrt{2\pi})^{n} \left\vert \boldsymbol{A}\boldsymbol{A}^{\mathrm{T}} + \boldsymbol{\Sigma_e} \right\vert ^{\frac{1}{2}}} \exp \left\{ -\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu})^{\mathrm{T}}(\boldsymbol{A}\boldsymbol{A}^{\mathrm{T}}+\boldsymbol{\Sigma_e})^{-1} (\boldsymbol{x}-\boldsymbol{\mu}) \right\}
q ( x ∣ θ ) = ( 2 π ) n A A T + Σ e 2 1 1 exp { − 2 1 ( x − μ ) T ( A A T + Σ e ) − 1 ( x − μ ) }
因此
q ( y ∣ x ) = q ( y ) q ( x ∣ y ) q ( x ∣ θ ) = ∣ A A T + Σ e ∣ 1 2 ( 2 π ) m ∣ Σ e ∣ 1 2 exp { − 1 2 y T y − 1 2 ( x − A y − μ ) T Σ e − 1 ( x − A y − μ ) + 1 2 ( x − μ ) T ( A A T + Σ e ) − 1 ( x − μ ) } ≡ 1 ( 2 π ) m ∣ Σ y ∣ x ∣ 1 2 exp { − 1 2 ( y − μ y ∣ x ) T Σ y ∣ x − 1 ( y − μ y ∣ x ) } \begin{aligned}
q(\boldsymbol{y}|\boldsymbol{x}) &= \frac{q(\boldsymbol{y})q(\boldsymbol{x}|\boldsymbol{y})}{q(\boldsymbol{x}|\boldsymbol{\theta})} \\
&= \frac{\left\vert \boldsymbol{A}\boldsymbol{A}^{\mathrm{T}} + \boldsymbol{\Sigma_e} \right\vert^{\frac{1}{2}} }{(\sqrt{2\pi})^{m} \left\vert \boldsymbol{\Sigma_e} \right\vert^{\frac{1}{2}} } \exp \left\{ -\frac{1}{2}\boldsymbol{y}^{\mathrm{T}}\boldsymbol{y} -\frac{1}{2}(\boldsymbol{x}-\boldsymbol{A}\boldsymbol{y}-\boldsymbol{\mu})^{\mathrm{T}}\boldsymbol{\Sigma_e}^{-1}(\boldsymbol{x}-\boldsymbol{A}\boldsymbol{y}-\boldsymbol{\mu}) + \frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu})^{\mathrm{T}}(\boldsymbol{A}\boldsymbol{A}^{\mathrm{T}}+\boldsymbol{\Sigma_e})^{-1} (\boldsymbol{x}-\boldsymbol{\mu}) \right\} \\
& \equiv \frac{1}{(\sqrt{2\pi})^{m}\left\vert \boldsymbol{\Sigma}_{\boldsymbol{y}|\boldsymbol{x}} \right\vert^{\frac{1}{2}} } \exp \left\{ -\frac{1}{2}(\boldsymbol{y}-\boldsymbol{\mu}_{\boldsymbol{y}|\boldsymbol{x}})^{\mathrm{T}} \boldsymbol{\Sigma}_{\boldsymbol{y}|\boldsymbol{x}}^{-1} (\boldsymbol{y}-\boldsymbol{\mu}_{\boldsymbol{y}|\boldsymbol{x}}) \right\}
\end{aligned}
q ( y ∣ x ) = q ( x ∣ θ ) q ( y ) q ( x ∣ y ) = ( 2 π ) m ∣ Σ e ∣ 2 1 A A T + Σ e 2 1 exp { − 2 1 y T y − 2 1 ( x − A y − μ ) T Σ e − 1 ( x − A y − μ ) + 2 1 ( x − μ ) T ( A A T + Σ e ) − 1 ( x − μ ) } ≡ ( 2 π ) m Σ y ∣ x 2 1 1 exp { − 2 1 ( y − μ y ∣ x ) T Σ y ∣ x − 1 ( y − μ y ∣ x ) }
通过比较 y T y \boldsymbol{y}^{\mathrm{T}}\boldsymbol{y} y T y 项,可以得到
Σ y ∣ x = ( I + A T Σ e − 1 A ) − 1 \boldsymbol{\Sigma}_{\boldsymbol{y}|\boldsymbol{x}} = (\boldsymbol{I}+\boldsymbol{A}^{\mathrm{T}}\boldsymbol{\Sigma_e}^{-1}\boldsymbol{A})^{-1}
Σ y ∣ x = ( I + A T Σ e − 1 A ) − 1
再通过比较 y T \boldsymbol{y}^{\mathrm{T}} y T 项,可以得到
μ y ∣ x = Σ y ∣ x A T Σ e − 1 ( x − μ ) = ( I + A T Σ e − 1 A ) − 1 A T Σ e − 1 ( x − μ ) \begin{aligned}
\boldsymbol{\mu}_{\boldsymbol{y}|\boldsymbol{x}} &= \Sigma_{\boldsymbol{y}|\boldsymbol{x}} \boldsymbol{A}^{\mathrm{T}} \boldsymbol{\Sigma_e}^{-1} (\boldsymbol{x}-\boldsymbol{\mu}) \\
&= (\boldsymbol{I}+\boldsymbol{A}^{\mathrm{T}}\boldsymbol{\Sigma_e}^{-1}\boldsymbol{A})^{-1}\boldsymbol{A}^{\mathrm{T}}\boldsymbol{\Sigma_e}^{-1}(\boldsymbol{x}-\boldsymbol{\mu})
\end{aligned}
μ y ∣ x = Σ y ∣ x A T Σ e − 1 ( x − μ ) = ( I + A T Σ e − 1 A ) − 1 A T Σ e − 1 ( x − μ )
M-step:
Q ( θ , θ o l d ) = ∑ y p ( Y ∣ X , θ o l d ) ln p ( X , Y ∣ θ ) ≡ ∑ t = 1 N Q t Q(\bm{\theta},\bm{\theta}^{old}) = \sum_{\mathbf{y}}p(\boldsymbol{Y}|\boldsymbol{X}, \bm{\theta}^{old})\ln p(\boldsymbol{X},\boldsymbol{Y}|\bm{\theta}) \equiv \sum_{t=1}^{N}Q_t
Q ( θ , θ o l d ) = y ∑ p ( Y ∣ X , θ o l d ) ln p ( X , Y ∣ θ ) ≡ t = 1 ∑ N Q t
上式用到了上一章关于 M-step 推导过程中的一个中间结论。
Q t = ∫ p ( y ∣ x t , θ o l d ) ln p ( x t , y ∣ θ ) d y Q_t = \int p(\boldsymbol{y}|\boldsymbol{x}_t, \bm{\theta}^{old})\ln p(\boldsymbol{x}_t, \boldsymbol{y}|\bm{\theta}) \mathrm{d}\boldsymbol{y}
Q t = ∫ p ( y ∣ x t , θ o l d ) ln p ( x t , y ∣ θ ) d y
p ( y ∣ x t , θ o l d ) p(\boldsymbol{y}|\boldsymbol{x}_t, \bm{\theta}^{old}) p ( y ∣ x t , θ o l d ) 可以看成是求期望的权重,而
p ( x t , y ) = q ( y ) q ( x t ∣ y ) = G ( y ∣ 0 , I ) G ( x t ∣ A y + μ , Σ e ) \begin{aligned}
p(\boldsymbol{x}_t,\boldsymbol{y}) &= q(\boldsymbol{y})q(\boldsymbol{x}_t|\boldsymbol{y}) \\
&= G(\boldsymbol{y}|\boldsymbol{0}, \boldsymbol{I}) G(\boldsymbol{x}_t|\boldsymbol{A}\boldsymbol{y}+\boldsymbol{\mu}, \bm{\Sigma_e})
\end{aligned}
p ( x t , y ) = q ( y ) q ( x t ∣ y ) = G ( y ∣ 0 , I ) G ( x t ∣ A y + μ , Σ e )
因此
Q t = E p y ∣ x o l d [ G ( y ∣ 0 , I ) G ( x t ∣ A y + μ , Σ e ) ] = − m 2 ln 2 π − n 2 ln 2 π − 1 2 ln ∣ Σ e ∣ − 1 2 E p y ∣ x o l d [ y T y ] − 1 2 E p y ∣ x o l d { y T A T Σ e − 1 A y − 2 y T A T Σ e ( x − μ ) + ( x − μ ) T ( x − μ ) } \begin{aligned}
Q_t =& E_{p_{\boldsymbol{y}|\boldsymbol{x}}^{old}} \left[ G(\boldsymbol{y}|\boldsymbol{0}, \boldsymbol{I}) G(\boldsymbol{x}_t|\boldsymbol{A}\boldsymbol{y}+\boldsymbol{\mu}, \bm{\Sigma_e}) \right] \\
=&- \frac{m}{2}\ln 2\pi - \frac{n}{2} \ln 2\pi -\frac{1}{2}\ln \left\vert \boldsymbol{\Sigma_e} \right\vert - \frac{1}{2} E_{p_{\boldsymbol{y}|\boldsymbol{x}}^{old}}[\boldsymbol{y}^{\mathrm{T}}\boldsymbol{y}] \\
& - \frac{1}{2} E_{p_{\boldsymbol{y}|\boldsymbol{x}}^{old}} \left\{ \boldsymbol{y}^{\mathrm{T}}\boldsymbol{A}^{\mathrm{T}}\boldsymbol{\Sigma_e}^{-1} \boldsymbol{A}\boldsymbol{y} - 2\boldsymbol{y}^{\mathrm{T}}\boldsymbol{A}^{\mathrm{T}}\boldsymbol{\Sigma_e}(\boldsymbol{x}-\boldsymbol{\mu}) +(\boldsymbol{x}-\boldsymbol{\mu})^{\mathrm{T}}(\boldsymbol{x}-\boldsymbol{\mu}) \right \}
\end{aligned}
Q t = = E p y ∣ x o l d [ G ( y ∣ 0 , I ) G ( x t ∣ A y + μ , Σ e ) ] − 2 m ln 2 π − 2 n ln 2 π − 2 1 ln ∣ Σ e ∣ − 2 1 E p y ∣ x o l d [ y T y ] − 2 1 E p y ∣ x o l d { y T A T Σ e − 1 A y − 2 y T A T Σ e ( x − μ ) + ( x − μ ) T ( x − μ ) }
此时需要通过求期望的方式将 Q t Q_t Q t 中的 y y y 消掉。因此需要考虑其中和 y y y 相关的项。对于一阶项 y y y ,有
E p y ∣ x o l d [ y ] = μ y ∣ x E_{p_{y|x}^{old}}[y] = \mu_{y|x}
E p y ∣ x o l d [ y ] = μ y ∣ x
对于二阶项 y T y y^{\mathrm{T}}y y T y ,有
Σ y ∣ x = E [ ( y − μ y ∣ x ) ( y − μ y ∣ x ) T ] = E [ y y T − y μ y ∣ x T − μ y ∣ x y T + μ y ∣ x μ y ∣ x T ] = E [ y y T ] − μ y ∣ x μ y ∣ x T ⇒ E [ y y T ] = Σ y ∣ x + μ y ∣ x μ y ∣ x T \begin{aligned}
\Sigma_{y|x} &= E[(y-\mu_{y|x})(y-\mu_{y|x})^{\mathrm{T}}] \\
&= E[yy^{\mathrm{T}}-y \mu_{y|x}^{\mathrm{T}} - \mu_{y|x}y^{\mathrm{T}} + \mu_{y|x}\mu_{y|x}^{\mathrm{T}}] \\
&= E[yy^{\mathrm{T}}] - \mu_{y|x}\mu_{y|x}^{\mathrm{T}}
\Rightarrow E[yy^{\mathrm{T}}] = \Sigma_{y|x} + \mu_{y|x}\mu_{y|x}^{\mathrm{T}}
\end{aligned}
Σ y ∣ x = E [( y − μ y ∣ x ) ( y − μ y ∣ x ) T ] = E [ y y T − y μ y ∣ x T − μ y ∣ x y T + μ y ∣ x μ y ∣ x T ] = E [ y y T ] − μ y ∣ x μ y ∣ x T ⇒ E [ y y T ] = Σ y ∣ x + μ y ∣ x μ y ∣ x T
那么在式子中,
E [ y y T ] = tr ( E [ y T y ] ) E[yy^{\mathrm{T}}] = \operatorname{tr}(E[y^{\mathrm{T}}y])
E [ y y T ] = tr ( E [ y T y ])
E [ y T A T Σ e A y ] = E [ tr ( y T A T Σ e A y ) ] = E [ tr ( A T Σ e A y y T ) ] = tr ( A T Σ e A E [ y y T ] ) \begin{aligned}
E[y^{\mathrm{T}}A^{\mathrm{T}}\Sigma_e A y] &= E[\operatorname{tr}(y^{\mathrm{T}}A^{\mathrm{T}}\Sigma_e A y)] \\
&= E[\operatorname{tr}(A^{\mathrm{T}}\Sigma_e A y y^{\mathrm{T}})] \\
&= \operatorname{tr}(A^{\mathrm{T}}\Sigma_e A E[y y^{\mathrm{T}}])
\end{aligned}
E [ y T A T Σ e A y ] = E [ tr ( y T A T Σ e A y )] = E [ tr ( A T Σ e A y y T )] = tr ( A T Σ e A E [ y y T ])
接下来考虑对 A A A 做微分:
d Q t = − 1 2 { d tr ( A T Σ e − 1 A E [ y y T ] ) − 2 d tr ( E [ y T ] A T Σ e − 1 ( x − μ ) ) } = − 1 2 { tr ( d A T Σ e − 1 A E [ y y T ] + A T Σ e − 1 d A E [ y y T ] ) − 2 tr ( E [ y T ] d A T Σ e − 1 ( x − μ ) ) } = − 1 2 { 2 tr ( d A T Σ e − 1 A E [ y y T ] ) − 2 tr ( E [ d A T y T ] Σ e − 1 ( x − μ ) ) } \begin{aligned}
\mathrm{d}Q_t &= -\frac{1}{2} \left \{ \mathrm{d}\operatorname{tr}(A^{\mathrm{T}}\Sigma_e^{-1}A E[yy^{\mathrm{T}}]) - 2\mathrm{d}\operatorname{tr}(E[y^{\mathrm{T}}]A^{\mathrm{T}}\Sigma_e^{-1}(x-\mu)) \right \} \\
&= -\frac{1}{2} \left\{ \operatorname{tr}(\mathrm{d}A^{\mathrm{T}}\Sigma_e^{-1}AE[yy^{\mathrm{T}}] + A^{\mathrm{T}}\Sigma_e^{-1}\mathrm{d}A E[yy^{\mathrm{T}}] ) - 2\operatorname{tr}(E[y^{\mathrm{T}}]\mathrm{d}A^{\mathrm{T}}\Sigma_e^{-1}(x-\mu)) \right\} \\
&= -\frac{1}{2} \left\{ 2\operatorname{tr}(\mathrm{d}A^{\mathrm{T}}\Sigma_e^{-1}AE[yy^{\mathrm{T}}]) -2\operatorname{tr}(E[\mathrm{d}A^{\mathrm{T}}y^{\mathrm{T}}]\Sigma_e^{-1}(x-\mu)) \right\}
\end{aligned}
d Q t = − 2 1 { d tr ( A T Σ e − 1 A E [ y y T ]) − 2 d tr ( E [ y T ] A T Σ e − 1 ( x − μ )) } = − 2 1 { tr ( d A T Σ e − 1 A E [ y y T ] + A T Σ e − 1 d A E [ y y T ]) − 2 tr ( E [ y T ] d A T Σ e − 1 ( x − μ )) } = − 2 1 { 2 tr ( d A T Σ e − 1 A E [ y y T ]) − 2 tr ( E [ d A T y T ] Σ e − 1 ( x − μ )) }
∂ Q ∂ A = − Σ e − 1 A ∑ t = 1 N E p y ∣ x o l d [ y y T ] + Σ e − 1 ∑ t = 1 N ( x t − μ ) E p y ∣ x o l d [ y T ] = 0 \frac{\partial Q}{\partial A} = -\Sigma_e^{-1}A \sum_{t=1}^{N} E_{p_{y|x}^{old}}[yy^{\mathrm{T}}] + \Sigma_e^{-1}\sum_{t=1}^{N}(x_t-\mu)E_{p_{y|x}^{old}}[y^{\mathrm{T}}] =0
∂ A ∂ Q = − Σ e − 1 A t = 1 ∑ N E p y ∣ x o l d [ y y T ] + Σ e − 1 t = 1 ∑ N ( x t − μ ) E p y ∣ x o l d [ y T ] = 0
⇒ A = Σ e − 1 ∑ t = 1 N ( x t − μ ) E p y ∣ x o l d [ y T ] ( ∑ t = 1 N E [ y y T ∣ x t ] ) − 1 \Rightarrow A = \Sigma_e^{-1}\sum_{t=1}^{N}(x_t-\mu)E_{p_{y|x}^{old}}[y^{\mathrm{T}}] (\sum_{t=1}^{N} E[yy^{\mathrm{T}}|x_t])^{-1}
⇒ A = Σ e − 1 t = 1 ∑ N ( x t − μ ) E p y ∣ x o l d [ y T ] ( t = 1 ∑ N E [ y y T ∣ x t ] ) − 1
对 Σ e = σ e 2 I \Sigma_e=\sigma_e^{2}I Σ e = σ e 2 I 做微分,类似上述过程,最终可以得到:
σ e 2 = 1 n N ∑ t = 1 N E p y ∣ x o l d [ ( x t − A y − μ ) T ( x t − A y − μ ) ] = 1 n N ∑ t = 1 N { ( x t − μ ) T ( x t − μ ) − 2 E [ y T ] A T ( x − μ ) + tr ( A T A E [ y y T ] ) } \begin{aligned}
\sigma_e^{2} &= \frac{1}{nN} \sum_{t=1}^{N} E_{p_{y|x}^{old}}\left[ (x_t-A_y-\mu)^{\mathrm{T}}(x_t-A_y-\mu) \right] \\
&= \frac{1}{nN} \sum_{t=1}^{N} \left\{ (x_t-\mu)^{\mathrm{T}}(x_t-\mu)-2E[y^{\mathrm{T}}]A^{\mathrm{T}}(x-\mu) + \operatorname{tr}(A^{\mathrm{T}}A E[yy^{\mathrm{T}}]) \right\}
\end{aligned}
σ e 2 = n N 1 t = 1 ∑ N E p y ∣ x o l d [ ( x t − A y − μ ) T ( x t − A y − μ ) ] = n N 1 t = 1 ∑ N { ( x t − μ ) T ( x t − μ ) − 2 E [ y T ] A T ( x − μ ) + tr ( A T A E [ y y T ]) }
Maximum likelihood FA implements PCA
PCA 相当于用 Σ x = A A T + Σ e \Sigma_{x}=AA^{\mathrm{T}}+\Sigma_e Σ x = A A T + Σ e 来拟合 S x = 1 N ∑ t = 1 N ( x t − μ ) ( x t − μ ) T S_{x}=\frac{1}{N}\sum_{t=1}^{N}(x_t-\mu)(x_t-\mu)^{\mathrm{T}} S x = N 1 ∑ t = 1 N ( x t − μ ) ( x t − μ ) T
首先不考虑 Σ e \Sigma_e Σ e ,那么相当于 A A T ∼ S x AA^{\mathrm{T}} \sim S_{x} A A T ∼ S x 。如果对 S x S_{x} S x 做特征值分解,有 S x = U D U T S_{x}=UDU^{\mathrm{T}} S x = U D U T ,其中 S x S_{x} S x 为 n × n n\times n n × n 的矩阵,因此 D D D 为 diag ( s 1 , s 2 , … , s n ) \operatorname{diag}(s_1,s_2, \ldots ,s_n) diag ( s 1 , s 2 , … , s n ) ;而 A A A 是 n × m n\times m n × m 的矩阵,因此如果分解 A A T = U Λ U T AA^{\mathrm{T}}=U\Lambda U^{\mathrm{T}} A A T = U Λ U T 的话,那么 Λ = diag ( λ 1 , … λ m , 0 , … 0 ) \Lambda=\operatorname{diag}(\lambda_1, \ldots \lambda_m, 0, \ldots 0) Λ = diag ( λ 1 , … λ m , 0 , … 0 ) 。
然后 Σ e \Sigma_e Σ e 可以写作 Σ e = σ e 2 I = U ( σ e 2 I ) U T \Sigma_e=\sigma_e^{2}I=U(\sigma_e^{2}I)U^{\mathrm{T}} Σ e = σ e 2 I = U ( σ e 2 I ) U T 。Σ x \Sigma_{x} Σ x 和 S x S_{x} S x 的匹配可以看作是 U ( Λ + σ e 2 I ) U T U(\Lambda+\sigma_e^{2}I)U^{\mathrm{T}} U ( Λ + σ e 2 I ) U T 和 U D U T UDU^{\mathrm{T}} U D U T 的匹配。
那么 PCA 最终得到:
{ A ^ n × m M L = U n × m ( D m − σ ^ e 2 ) 1 2 R T , σ ^ e 2 , M L = 1 n − m ∑ i = m + 1 n s i , \left\{\begin{array}{l}\hat{\mathbf{A}}_{n\times m}^{ML}=\mathbf{U}_{n\times m}(\mathbf{D}_{m}-\hat{\sigma}_{e}^{2})^{\frac{1}{2}}\mathbf{R}^{T},\\\hat{\sigma}_{e}^{2,ML}=\frac{1}{n-m}\sum_{i=m+1}^{n}s_{i},\end{array}\right.
{ A ^ n × m M L = U n × m ( D m − σ ^ e 2 ) 2 1 R T , σ ^ e 2 , M L = n − m 1 ∑ i = m + 1 n s i ,
旋转矩阵 R T R^{\mathrm{T}} R T 导致了 A A A 的不确定性。
Independent Component Analysis (ICA)
Preliminaries
独立(independence): p ( y 1 , y 2 ) = p 1 ( y 1 ) p 2 ( y 2 ) p(y_1,y_2)=p_1(y_1)p_2(y_2) p ( y 1 , y 2 ) = p 1 ( y 1 ) p 2 ( y 2 )
不相关(uncorrelated): E { y 1 y 2 } − E { y 1 } E { y 2 } = 0 E\{y_1y_2\}-E\{y_1\}E\{y_2\}=0 E { y 1 y 2 } − E { y 1 } E { y 2 } = 0
不相关指的仅仅是线性上不相关。因此变量不相关不等于独立。
Conditional independence
p ( X , Y ∣ Z ) = p ( X ∣ Z ) p ( Y ∣ Z ) p(X,Y|Z)=p(X|Z)p(Y|Z) p ( X , Y ∣ Z ) = p ( X ∣ Z ) p ( Y ∣ Z ) ,即当 Z Z Z 已知时,X , Y X,Y X , Y 不相关。X , Y X,Y X , Y 原先的相关性可能是因为有共同的原因或者共同的结果:
Some properties of Gaussian
在高斯分布中,不相关等于独立。因为高斯分布只有一阶和二阶统计量,其他阶的统计量都可以用一阶和二阶信息表示。
中心极限定理(central limit theorem (CLT) ):
S = 1 n ∑ i = 1 n X i ↔ G ( x ∣ μ , Σ ) μ = E [ X ] , Σ = Var ( X ) S= \frac{1}{n}\sum_{i=1}^{n}X_{i} \leftrightarrow G(x|\mu, \Sigma) \\
\mu=E[X], \quad \Sigma=\operatorname{Var}(X)
S = n 1 i = 1 ∑ n X i ↔ G ( x ∣ μ , Σ ) μ = E [ X ] , Σ = Var ( X )
Cramér’s decomposition theorem :
如果一个随机变量 ξ \xi ξ 服从高斯分布,且 ξ \xi ξ 由两个独立的随机变量 ξ 1 , ξ 2 \xi_1,\xi_2 ξ 1 , ξ 2 相加得到:ξ = ξ 1 + ξ 2 \xi=\xi_1+\xi_2 ξ = ξ 1 + ξ 2 ,那么 ξ 1 \xi_1 ξ 1 和 ξ 2 \xi_2 ξ 2 也一定是高斯分布。
Sub-Gaussian and Super-Gaussian
Super Guassian 指的是大多数数据集中在中心。
GMM 不是高斯分布。
Measure the independence of two variables
通常使用互信息来衡量两个变量的相关性:
I ( X ; Y ) = ∑ y ∑ x P ( x , y ) log ( P ( x , y ) P ( x ) P ( y ) ) , I ( X ; Y ) = ∫ ∫ p ( x , y ) log ( p ( x , y ) p ( x ) p ( y ) ) d x d y , I(X;Y)=\sum_y\sum_xP(x,y)\log\left(\frac{P(x,y)}{P(x)P(y)}\right),\\
I(X;Y)=\int\int p(x,y)\log\left(\frac{p(x,y)}{p(x)p(y)}\right)\mathrm{d} x\mathrm{d} y,
I ( X ; Y ) = y ∑ x ∑ P ( x , y ) log ( P ( x ) P ( y ) P ( x , y ) ) , I ( X ; Y ) = ∫∫ p ( x , y ) log ( p ( x ) p ( y ) p ( x , y ) ) d x d y ,
可以看出互信息就是 p ( x , y ) p(x,y) p ( x , y ) 和 p ( x ) p ( y ) p(x)p(y) p ( x ) p ( y ) 之间的 KL divergence。
Independent Component Analysis (ICA)
把数据投影到低维空间,希望地位空间的每一个分量都是相互独立的。而 PCA 投影到的低维空间只要求在高斯的情况下相互独立(即不相关)。同时 PCA 的投影是线性的,而 ICA 则走向了非线性。
Blind Source Separation (BSS)
希望解决在很多声音混合的情况下,把每一种声音都分出来。或者两张重叠的图像,还原这两张图。
模型建立:假设原信号为 s \boldsymbol{s} s ,得到的信息为 x \boldsymbol{x} x ,希望还原出原信号:
x = A s x 1 ( t ) = a 11 s 1 + a 12 s 2 x 2 ( t ) = a 21 s 1 + a 22 s 2 \begin{gathered}
x=A\boldsymbol{s} \\
x_1(t)=a_{11}s_1+a_{12}s_2 \\
x_2(t)=a_{21}s_1+a_{22}s_2
\end{gathered}
x = A s x 1 ( t ) = a 11 s 1 + a 12 s 2 x 2 ( t ) = a 21 s 1 + a 22 s 2
因此 ICA 的目标为:找到一个 W W W ,使得 s = W x \boldsymbol{s}=W \boldsymbol{x} s = W x
Indeterminacies of ICA
首先需要限定还原出的信号的强度,即指定 E [ s i 2 ] = 1 E[s_i^{2}]=1 E [ s i 2 ] = 1 ,因为
x = A s = ∑ i = 1 n a s i = ∑ i = 1 n ( a ⋅ λ i − 1 ) ( λ i s i ) \boldsymbol{x}=A\boldsymbol{s}=\sum_{i=1}^n\boldsymbol{a}s_i=\sum_{i=1}^n(\boldsymbol{a}\cdot\lambda_i^{-1})(\lambda_is_i)
x = A s = i = 1 ∑ n a s i = i = 1 ∑ n ( a ⋅ λ i − 1 ) ( λ i s i )
原信号乘以 λ i \lambda_i λ i 不影响方程。
同时需要指定源信号的顺序,否则乘以一个 permutation matrix 也不影响方程:
x = A s = ( A P − 1 ) ( P s ) x=As=(AP^{-1})(Ps)
x = A s = ( A P − 1 ) ( P s )
Principles of ICA estimation
如果为高斯分布:p ( x 1 , x 2 ) = 1 2 π exp ( − x 1 2 + x 2 2 2 ) p(x_1,x_2)=\frac1{2\pi}\exp\left(-\frac{x_1^2+x_2^2}2\right) p ( x 1 , x 2 ) = 2 π 1 exp ( − 2 x 1 2 + x 2 2 ) ,那么该分布经过一个旋转矩阵之后还是相同的,这不符合源信号之间的独立性。因此需要使用非高斯分布。
根据中心极限定理,无数个随机变量相加趋近于高斯分布。那么可以理解为两个独立的变量相加后,分布会更接近高斯分布。现在考虑还原得到的一个源信号:
y = w T x = w T A s = ( w T A ) s = z T s y=\boldsymbol{w}^{\mathrm{T}}\boldsymbol{x}=\boldsymbol{w}^{\mathrm{T}}A \boldsymbol{s}=(\boldsymbol{w}^{\mathrm{T}}A)\boldsymbol{s}=\boldsymbol{z}^{\mathrm{T}}\boldsymbol{s}
y = w T x = w T A s = ( w T A ) s = z T s
根据上面的分析,z T s \boldsymbol{z}^{\mathrm{T}}\boldsymbol{s} z T s 应当比任意一个 s i s_i s i 更接近高斯分布,因此我们的任务是找到 w \boldsymbol{w} w ,使得 y y y 的非高斯性最大化。 此时需要度量非高斯性。
Measure of non-Gaussian
Kurtosis or the fourth order cumulantk u r t ( y ) = E { y 4 } − 3 ( E { y 2 } ) 2 = E { y 4 } − 3 , i f E { y 2 } = 1 f o r u n i t v a r i a n c e . \begin{aligned}
kurt(y)& =E\{y^4\}-3(E\{y^2\})^2 \\
&=E\{y^4\}-3,\mathrm{if}E\{y^2\}=1\mathrm{~for~unit~variance}.
\end{aligned}
k u r t ( y ) = E { y 4 } − 3 ( E { y 2 } ) 2 = E { y 4 } − 3 , if E { y 2 } = 1 for unit variance .
Negentorpy:J ( y ) = H ( y g a u s s ) − H ( y ) J(\mathbf{y})=H(\mathbf{y}_{\mathrm{gauss}})-H(\mathbf{y}) J ( y ) = H ( y gauss ) − H ( y )
由于高斯分布的熵最大,那么某个随机变量的熵越小,就越远离高斯分布。
Mutual information:I ( y 1 , y 2 , . . . , y m ) = ∑ i = 1 m H ( y i ) − H ( y ) I(y_1,y_2,...,y_m)=\sum_{i=1}^mH(y_i)-H(y) I ( y 1 , y 2 , ... , y m ) = ∑ i = 1 m H ( y i ) − H ( y ) 。这相当于是 P ( y 1 , . . . , y m ) P(y_1,...,y_m) P ( y 1 , ... , y m ) 和 P ( y 1 ) ⋅ ⋅ ⋅ P ( y m ) P(y_1)\cdotp\cdotp\cdotp P(y_m) P ( y 1 ) ⋅⋅⋅ P ( y m ) 的 KL divergence。下面以两个变量为例解释:K L ( P ( x , y ) ∥ P ( x ) P ( y ) ) = ∫ P ( x , y ) log P ( x , y ) P ( x ) P ( y ) d x d y = ∫ P ( x , y ) { log P ( x , y ) − log P ( x ) − log P ( y ) } = − H ( x , y ) + H ( x ) + H ( y ) \begin{aligned}
&KL(P(x,y)\|P(x)P(y)) \\
=&\int P(x,y)\log\frac{P(x,y)}{P(x)P(y)}\mathrm{d}x\mathrm{d}y \\
=&\int P(x,y) \left\{ \log P(x,y)-\log P(x)-\log P(y) \right\} \\
=&-H\left(x,y\right)+H\left(x\right)+H\left(y\right)
\end{aligned}
= = = K L ( P ( x , y ) ∥ P ( x ) P ( y )) ∫ P ( x , y ) log P ( x ) P ( y ) P ( x , y ) d x d y ∫ P ( x , y ) { log P ( x , y ) − log P ( x ) − log P ( y ) } − H ( x , y ) + H ( x ) + H ( y )
PCA vs. ICA
PCA
x = A y + e x=Ay+e x = A y + e
y ∼ G ( y ∣ 0 , I ) , q ( y ) = ∏ i = 1 m q ( y i ) y \sim G(y|0,I),\quad q(y)=\prod_{i=1}^{m}q(y_{i}) y ∼ G ( y ∣0 , I ) , q ( y ) = ∏ i = 1 m q ( y i ) , 其中 y i ∼ G ( y i ∣ 0 , 1 ) y_i \sim G(y_i|0,1) y i ∼ G ( y i ∣0 , 1 )
dim(y y y ) << dim(x x x )
目标是非相关性,考虑数据的二阶信息。
ICA
x = A y x=Ay x = A y
q ( y ) = ∏ i = 1 m q ( y i ) q(y)=\prod_{i=1}^{m}q(y_{i}) q ( y ) = ∏ i = 1 m q ( y i )
dim(y y y ) = dim(x x x )
目标是独立性,考虑数据更高阶的信息。
Independent FA (IFA), Non-Gaussian FA (NFA)
Generative model for ICA with noise
和 PCA 相似的,有
x = Λ y + e x j = ∑ i = 1 k λ j i y i + e j p ( y ) = ∏ i = 1 k f ( y i ) p ( x ∣ y ) = G ( x ∣ Λ y , Ψ ) \begin{gathered}
\boldsymbol{x}=\Lambda \boldsymbol{y}+\boldsymbol{e} \\
x_j=\sum_{i=1}^k\lambda_{ji}y_i+e_j\\
p(\boldsymbol{y})=\prod_{i=1}^kf(y_i) \\
p(\boldsymbol{x}|\boldsymbol{y}) = G(\boldsymbol{x}|\Lambda \boldsymbol{y}, \Psi)
\end{gathered}
x = Λ y + e x j = i = 1 ∑ k λ ji y i + e j p ( y ) = i = 1 ∏ k f ( y i ) p ( x ∣ y ) = G ( x ∣Λ y , Ψ )
而与 PCA 不同之处在于,f ( y i ) f(y_i) f ( y i ) 为非高斯分布。想要表示非高斯分布,最简单的方式是使用 GMM:
f ( y i ) = ∑ q i = 1 m i w i , q i N ( μ i , q i , ν i , q i ) f(y_i)=\sum_{q_i=1}^{m_i}w_{i,q_i}\mathcal{N}\left(\mu_{i,q_i},\nu_{i,q_i}\right)
f ( y i ) = q i = 1 ∑ m i w i , q i N ( μ i , q i , ν i , q i )