Machine Learning Review Notes


Pattern Recognition and Machine Learning (PRML) focuses on traditional machine learning algorithms and their probabilistic interpretations.

Clustering

K-means (Hard Clustering)

J=n=1Nk=1Krnkxnμk2J = \sum_{n=1}^N \sum_{k=1}^K r_{n k} \|\| x_n - \mu_k \|\|^2, where rnk{0,1}r_{n k} \in \{0, 1\}, k=1Krnk=1\sum_{k=1}^K r_{n k} = 1

rnk={1if k=argminjxnμj20otherwiser_{n k} = \begin{cases} 1 & \text{if } k = \arg \min_j \|\| x_n - \mu_j \|\|^2 \\\\ 0 & \text{otherwise} \end{cases}

μk=n=1Nrnkxnn=1Nrnk\mu_k = \frac{\sum_{n=1}^N r_{n k} x_n}{\sum_{n=1}^N r_{n k}}

Probabilistic Clustering (Soft Clustering)

GMMBernoulli
p(xθ)p(x \| \theta)p(xμk,Σk)=N(xμk,Σk)p(x \| \mu_k, \Sigma_k) = \mathcal{N}(x \| \mu_k, \Sigma_k)p(xμk)=i=1Dμkixi(1μki)1xip(x \| \mu_k) = \prod_{i=1}^D \mu_{k i}^{x_i} (1 - \mu_{k i})^{1 - x_i}
p(xπ,θ)p(x \| \pi, \theta)k=1KπkN(xμk,Σk)\sum_{k=1}^K \pi_k \mathcal{N}(x \| \mu_k, \Sigma_k)k=1Kπkp(xμk)\sum_{k=1}^K \pi_k p(x \| \mu_k)
lnp(Xπ,θ)\ln p(X \| \pi, \theta)lnp(Xπ,μ,Σ)=n=1Nln(k=1KπkN(xnμk,Σk))\ln p(X \| \pi, \mu, \Sigma) = \sum_{n=1}^N \ln \left( \sum_{k=1}^K \pi_k \mathcal{N}(x_n \| \mu_k, \Sigma_k) \right)lnp(Xμ,π)=n=1Nln(k=1Kπkp(xnμk))\ln p(X \| \mu, \pi) = \sum_{n=1}^N \ln \left( \sum_{k=1}^K \pi_k p(x_n \| \mu_k) \right)
p(zπ)p(z \| \pi)p(zπ)=k=1Kπkzkp(z \| \pi) = \prod_{k=1}^K \pi_k^{z_k}p(zπ)=k=1Kπkzkp(z \| \pi) = \prod_{k=1}^K \pi_k^{z_k}
p(xz,θ)p(x \| z, \theta)p(xz,μ,Σ)=k=1KN(xμk,Σk)zkp(x \| z, \mu, \Sigma) = \prod_{k=1}^K \mathcal{N}(x \| \mu_k, \Sigma_k)^{z_k}p(xz,μ)=k=1Kp(xμk)zkp(x \| z, \mu) = \prod_{k=1}^K p(x \| \mu_k)^{z_k}
p(X,Zπ,θ)p(X, Z \| \pi, \theta)p(X,Zμ,Σ,π)=n=1Nk=1KπkznkN(xnμk,Σk)znkp(X, Z \| \mu, \Sigma, \pi) = \prod_{n=1}^N \prod_{k=1}^K \pi_k^{z_{n k}} \mathcal{N}(x_n \| \mu_k, \Sigma_k)^{z_{n k}}p(X,Zμ,π)=n=1Nk=1Kπkznkp(xnμk)znkp(X, Z \| \mu, \pi) = \prod_{n=1}^N \prod_{k=1}^K \pi_k^{z_{n k}} p(x_n \| \mu_k)^{z_{n k}}
γ(znk)=E[znk]\gamma(z_{n k}) = \mathbb{E}[z_{n k}]πkN(xnμk,Σk)j=1KπjN(xnμj,Σj)\frac{\pi_k \mathcal{N}(x_n \| \mu_k, \Sigma_k)}{\sum_{j=1}^K \pi_j \mathcal{N}(x_n \| \mu_j, \Sigma_j)}πkp(xnμk)j=1Kπjp(xnμj)\frac{\pi_k p(x_n \| \mu_k)}{\sum_{j=1}^K \pi_j p(x_n \| \mu_j)}
EZ[lnp(X,Zπ,θ)]\mathbb{E}_Z[\ln p(X, Z \| \pi, \theta)]n=1Nk=1Kγ(znk)[lnπk+lnN(xnμk,Σk)]\sum_{n=1}^N \sum_{k=1}^K \gamma(z_{n k}) \left[ \ln \pi_k + \ln \mathcal{N}(x_n \| \mu_k, \Sigma_k) \right]n=1Nk=1Kγ(znk)[lnπk+lnp(xμk)]\sum_{n=1}^N \sum_{k=1}^K \gamma(z_{n k}) \left[ \ln \pi_k + \ln p(x \| \mu_k) \right]
Expectationγ(znk)=πkN(xnμk,Σk)j=1KπjN(xnμj,Σj)\gamma(z_{n k}) = \frac{\pi_k \mathcal{N}(x_n \| \mu_k, \Sigma_k)}{\sum_{j=1}^K \pi_j \mathcal{N}(x_n \| \mu_j, \Sigma_j)}
Nk=n=1Nγ(znk)N_k = \sum_{n=1}^N \gamma(z_{n k})
γ(znk)=πkp(xnμk)j=1Kπjp(xnμj)\gamma(z_{n k}) = \frac{\pi_k p(x_n \| \mu_k)}{\sum_{j=1}^K \pi_j p(x_n \| \mu_j)}
Nk=n=1Nγ(znk)N_k = \sum_{n=1}^N \gamma(z_{n k})
Maximizationμk(new)=1Nkn=1Nγ(znk)xn\mu_k^{(\text{new})} = \frac{1}{N_k} \sum_{n=1}^N \gamma(z_{n k}) x_n
Σk(new)=1Nkn=1Nγ(znk)(xnμk)(xnμk)T\Sigma_k^{(\text{new})} = \frac{1}{N_k} \sum_{n=1}^N \gamma(z_{n k})(x_n - \mu_k)(x_n - \mu_k)^T
πk(new)=NkN\pi_k^{(\text{new})} = \frac{N_k}{N}
μk(new)=1Nkn=1Nγ(znk)xn\mu_k^{(\text{new})} = \frac{1}{N_k} \sum_{n=1}^N \gamma(z_{n k}) x_n
πk(new)=NkN\pi_k^{(\text{new})} = \frac{N_k}{N}
When a $\ \mu_k\ $ is degraded to a specific data point, the $\ \Sigma_k\ $ will be degraded to 0 and singularity will occur. This will lead to the unbounded value of the likelihood function.

The connction between GMM and K-means

We can consider a GMM with Σk=εI\Sigma_k = \varepsilon I. The distribution will be

p(xμk,Σk)=i=1D12πεexp((xiμki)22ε)p(x|\mu_k, \Sigma_k) = \prod_{i=1}^D \frac{1}{\sqrt{2\pi \varepsilon}} \exp \left( -\frac{(x_i - \mu_{k i})^2}{2 \varepsilon} \right)

We see ε\varepsilon as a constant, then for a specific data point, the responsibility will be

γ(znk)=πkexp(xnμk22ε)j=1Kπjexp(xnμj22ε)\gamma(z_{n k}) = \frac{\pi_k \exp \left( -\frac{\|x_n - \mu_k\|^2}{2 \varepsilon} \right)}{\sum_{j=1}^K \pi_j \exp \left( -\frac{\|x_n - \mu_j\|^2}{2 \varepsilon} \right)}

If we consider  ε0\ \varepsilon \to 0, then the responsibility will be

γ(znk)={1if k=argminjxnμj20otherwise\gamma(z_{n k}) = \begin{cases} 1 & \text{if } k = \arg \min_j \|\| x_n - \mu_j \|\|^2 \\\\ 0 & \text{otherwise} \end{cases}

γ(znk)rnk \gamma(z_{n k}) \to r_{n k}\ which is the same as K-means.

The generalization of EM algorithm

Consider a probabilistic model where:

  • Observed variable: XX
  • Latent variable: ZZ
  • Model parameters: θ\theta

The goal is to maximize the likelihood function:

p(Xθ)=Zp(X,Zθ)p(X | \theta) = \sum_Z p(X, Z | \theta)
**Directly maximizing $\ p(X | \theta)\ $ is more difficult than maximizing the joint distribution $\ p(X, Z | \theta)\ $.**

We can decompose the log-likelihood function as:

lnp(Xθ)=L(q,θ)+DKL(qp)\ln p(X | \theta) = \mathcal{L}(q, \theta) + \mathcal{D}_{KL}(q || p)

where:

  • q(Z)q(Z) is the distribution over the latent variables.
  • Lower bound:
L(q,θ)=Zq(Z)lnp(X,Zθ)q(Z)\mathcal{L}(q, \theta) = \sum_Z q(Z) \ln \frac{p(X, Z | \theta)}{q(Z)}
  • KL divergence:
DKL(qp)=Zq(Z)lnp(ZX,θ)q(Z)\mathcal{D}_{KL}(q || p) = - \sum_Z q(Z) \ln \frac{p(Z | X, \theta)}{q(Z)}

Since KL divergence satisfies:  DKL(qp)0 \ \mathcal{D}_{KL}(q || p) \geq 0\ , it implies that:  L(q,θ) \ \mathcal{L}(q, \theta)\ serves as a lower bound for  lnp(Xθ) \ \ln p(X | \theta)\ .

Based on the above observations, the EM algorithm consists of two steps:

  1. E-step:

    • Keep  θ \ \theta\ fixed.
    • Maximize  L(q,θ) \ \mathcal{L}(q, \theta)\ by minimizing  DKL(qp) \ \mathcal{D}_{KL}(q || p)\ .
    • At maximum  DKL(qp)=0 \ \mathcal{D}_{KL}(q || p) = 0\ , which implies:  q(Z)=p(ZX,θold) \ q(Z) = p(Z | X, \theta^{\text{old}})\ .
  2. M-step:

    • Maximize the lower bound L(q,θ)\mathcal{L}(q, \theta) with respect to θ\theta.
    • Since  DKL(qp)0 \ \mathcal{D}_{KL}(q || p) \geq 0\ , any increase in L\mathcal{L} ensures that  lnp(Xθ) \ \ln p(X | \theta)\ also increases.

Practical Reformulation

From the E-step, we use:

q(Z)=p(ZX,θold)q(Z) = p(Z | X, \theta^{\text{old}})

and derive:

L(q,θ)=Zp(ZX,θold)lnp(X,Zθ)Zp(ZX,θold)lnp(ZX,θold)\mathcal{L}(q, \theta) = \sum_Z p(Z | X, \theta^{\text{old}}) \ln p(X, Z | \theta) - \sum_Z p(Z | X, \theta^{\text{old}}) \ln p(Z | X, \theta^{\text{old}})

Let:

Q(θ,θold)=Zp(ZX,θold)lnp(X,Zθ)\mathcal{Q}(\theta, \theta^{\text{old}}) = \sum_Z p(Z | X, \theta^{\text{old}}) \ln p(X, Z | \theta)

The remaining term is a constant (information entropy), so the M-step effectively maximizes  Q(θ,θold)\ \mathcal{Q}(\theta, \theta^{\text{old}}) .

  • The EM algorithm alternates between estimating the latent variable distribution (q(Z)q(Z)) and maximizing the lower bound with respect to parameters (θ\theta).
  • The KL divergence guarantees that each iteration increases the likelihood  p(Xθ)\ p(X | \theta) .
  • The reformulated objective function simplifies computations by focusing on the expected complete-data log-likelihood (Q\mathcal{Q}).

Hidden Markov Matrix

**Why Do We Need Hidden Markov Models (HMMs)?**

The complexity of Markov Chain Models is tightly linked to the dependency on prior data for conditional probabilities. This dependency leads to an exponentially growing model complexity as the order of dependencies increases.

To address this, Hidden Markov Models (HMMs) are introduced to construct arbitrary-order sequence models without being constrained by the Markov assumption, while requiring fewer parameters.

  • Transmission Probabilities:  p(zn=kzn1=j)=Ajk \ p(z_n = k | z_{n-1} = j) = A_{jk}\
    • Initial state probabilities:  p(z1=k)=πk\ p(z_1 = k) = \pi_k
  • Emission Probabilities:  p(xnzn,ϕ)=k=1Kp(xnϕk)znk \ p(x_n | z_n, \phi) = \prod_{k=1}^K p(x_n | \phi_k)^{z_{nk}}\
    • Example with Gaussian emissions:  p(xnzn,ϕ)=k=1KN(xnμk,Σk)znk \ p(x_n | z_n, \phi) = \prod_{k=1}^K \mathcal{N}(x_n | \mu_k, \Sigma_k)^{z_{nk}}\
  • Joint Probability of Observations and Hidden States:  p({xN},{zN})=p(z1)[n=2Np(znzn1)]n=1Np(xnzn,ϕ) \ p(\{x_N\}, \{z_N\}) = p(z_1) \left[ \prod_{n=2}^{N} p(z_n | z_{n-1}) \right] \prod_{n=1}^{N} p(x_n | z_n, \phi)\
    • Thus, the parameters controlling the model can be represented as:  θ={π,A,ϕ} \ \theta = \{\pi, A, \phi\}\

Three Key Problems for HMMs

  1. Learning (Parameter Estimation):

    • Goal: What is the most likely HMM model (θ\theta) for a given observation sequence  {x1,,xN} \ \\\{x_1, \dots, x_N\\\}\ ?
    • Solution: Use the Expectation-Maximization (EM) strategy.
  2. Evaluation (Likelihood Computation):

    • Goal: Given an HMM model  θ={π,A,ϕ} \ \theta = \\\{\pi, A, \phi\\\}\ , what is the likelihood of the observation sequence  {x1,,xN} \ \\\{x_1, \dots, x_N\\\}\ generated by this model?
    • Solution: Use the Forward-Backward Algorithm to efficiently compute probabilities.
  3. Decoding (Hidden State Inference):

    • Goal: Given an HMM model  θ={π,A,ϕ} \ \theta = \\\{\pi, A, \phi\\\}\ , what is the most likely sequence of latent states  {z1,,zN} \ \\\{z_1, \dots, z_N\\\}\ for an observation sequence  {x1,,xN} \ \\\{x_1, \dots, x_N\\\}\ ?
    • Solution: Use the Viterbi Algorithm to determine the most probable hidden state path.

Expectation-Maximization (EM) for HMMs

E-StepEquations
γ(zn),γ(znk)\gamma(z_n), \gamma(z_{n k})p(znX,θold),E[znk]=znγ(z)znkp(z_n \| X, \theta^{\text{old}}), \quad \mathbb{E}[z_{n k}] = \sum_{z_n} \gamma(z) z_{n k}
ξ(zn1,zn),ξ(z[n1][j],z[n][k])\xi(z_{n-1}, z_n), \xi(z_{[n-1][j]}, z_{[n][k]})p(zn1,znX,θold),E[z[n1][j]z[n][k]]=zn1,znξ(zn1,zn)z[n1][j]z[n][k]p(z_{n-1}, z_n \| X, \theta^{\text{old}}), \quad \mathbb{E}[z_{[n-1][j]} z_{[n][k]}] = \sum_{z_{n-1}, z_n} \xi(z_{n-1}, z_n) z_{[n-1][j]} z_{[n][k]}
M-StepEquations
Q(θ,θold)Q(\theta, \theta^{\text{old}})kγ(z1k)lnπk+n=2NjKkKξ(z[n1][j],z[n][k])lnAjk+nkγ(znk)lnp(xnϕk)\sum_k \gamma(z_{1 k}) \ln \pi_k + \sum_{n=2}^N \sum_j^K \sum_k^K \xi(z_{[n-1][j]}, z_{[n][k]}) \ln A_{j k} + \sum_n \sum_k \gamma(z_{n k}) \ln p(x_n \| \phi_k)
πk\pi_kγ(z1k)j=1Kγ(z1j)\frac{\gamma(z_{1 k})}{\sum_{j=1}^K \gamma(z_{1 j})}
AjkA_{j k}n=2Nξ(z[n1][j],z[n][k])l=1Kn=2Nξ(z[n1][j],z[n][l])\frac{\sum_{n=2}^N \xi(z_{[n-1][j]}, z_{[n][k]})}{\sum_{l=1}^K \sum_{n=2}^N \xi(z_{[n-1][j]}, z_{[n][l]})}
Gaussian
p(xz,ϕ)=k=1KN(xμk,Σk)zkp(x \| z, \phi) = \prod_{k=1}^K \mathcal{N}(x \| \mu_k, \Sigma_k)^{z_k}μk=n=1Nγ(znk)xnn=1Nγ(znk),Σk=n=1Nγ(znk)(xnμk)(xnμk)Tn=1Nγ(znk)\mu_k = \frac{\sum_{n=1}^N \gamma(z_{n k}) x_n}{\sum_{n=1}^N \gamma(z_{n k})}, \quad \Sigma_k = \frac{\sum_{n=1}^N \gamma(z_{n k})(x_n - \mu_k)(x_n - \mu_k)^T}{\sum_{n=1}^N \gamma(z_{n k})}
Discrete
p(xz,ϕ)=i=1Dk=1Kμikxizkp(x \| z, \phi) = \prod_{i=1}^D \prod_{k=1}^K \mu_{i k}^{x_i z_k}μik=n=1Nγ(znk)xnin=1Nγ(znk)\mu_{i k} = \frac{\sum_{n=1}^N \gamma(z_{n k}) x_{n i}}{\sum_{n=1}^N \gamma(z_{n k})}

Forward-Backward Algorithm

  • Forward Algorithm:
    • Initialization:  α1(z1)=p(x1z1,ϕ)p(z1π) \ \alpha_1(z_1) = p(x_1 | z_1, \phi) p(z_1 | \pi)\
    • Recursion:  αn+1(zn+1)=p(xn+1zn+1,ϕ)znαn(zn)p(zn+1zn,A) \ \alpha_{n+1}(z_{n+1}) = p(x_{n+1} | z_{n+1}, \phi) \sum_{z_n} \alpha_n(z_n) p(z_{n+1} | z_n, A)\
    • Termination:  p(xθ)=zNαN(zN) \ p(x | \theta) = \sum_{z_N} \alpha_N(z_N)\
  • Backward Algorithm:
    • Initialization:  βN(zN)=1 \ \beta_N(z_N) = 1\
    • Recursion:  βn(zn)=zn+1p(xn+1zn+1,ϕ)p(zn+1zn,A)βn+1(zn+1) \ \beta_n(z_n) = \sum_{z_{n+1}} p(x_{n+1} | z_{n+1}, \phi) p(z_{n+1} | z_n, A) \beta_{n+1}(z_{n+1})\
    • Termination:  p(xθ)=z1π(z1)p(x1z1,ϕ)β1(z1) \ p(x | \theta) = \sum_{z_1} \pi(z_1) p(x_1 | z_1, \phi) \beta_1(z_1)\

评论 · 0

还没有评论,来抢沙发