2.3.3 Bayes' theorem for Gaussian variables

Tóm lại

Nếu $p(x)$ và $p(y|x)$ đều là các phân phối chuẩn thì $p(y)$ và $p(x|y)$ cũng là các phân phối chuẩn.


Công thức:

Giả sử

$$
\begin{align}
p(x) & = \mathcal{N}(x|\mathbf{\mu}, \mathbf{\Lambda}
^{-1}\big) \
p(y|x)& = \mathcal{N}\big(y|\mathbf{A}x+\mathbf{b}, \mathbf{L}
^{-1}\big) \
\end{align}
$$

thì

$$
\begin{align}
p(y) & = &\mathcal{N}\big(y|\mathbf{A}\mu+b,\mathbf{L}^{-1}+\mathbf{A}\mathbf{\Lambda}^{-1}\mathbf{A}^{\mathrm{T}}\big)\
p(x|y) & = &\mathcal{N}\big(x|\Sigma{ \mathbf{A}^{\mathrm{T}}\mathbf{L}(y-b)+\mathbf{\Lambda}\mu},\Sigma\big)
\end{align}
$$

với

$$
\Sigma = (\mathbf{\Lambda}+\mathbf{A}^{T}\mathbf{L}\mathbf{A})^{-1}
$$


2.3.4 Maximum likelihood for the Gaussian

Data set

$$
X = (x_ 1,x_ 2,\ldots,x_ N)^{\mathrm{T}}
$$

Giả sử data này theo Gaussian thì dùng Maximum likelihood ta có thể tính được mean và covariance như sau:

$$
\begin{align}
\mu_ {ML} &= \frac{1}{N}\sum_ {n=1}^N x_ n \
\Sigma_ {ML} &= \frac{1}{N}\sum_ {n=1}^N(x_ n-\mu_ {ML})(x_ n-\mu_ {ML})^{\mathrm{T}}
\end{align}
$$


Nếu gọi $\mu$ và $\Sigma$ là true mean, true covariance của phân phối ẩn dưới dữ liệu.
Xét kỳ vọng của các giá trị tìm được

$$
\begin{align}
\mathop{\mathbb{E}}[\mu_ {ML}] &= \mu \
\mathop{\mathbb{E}}[\Sigma_ {ML}] &= \frac{N-1}{N}\Sigma
\end{align}
$$

$\mu_ {ML}$ thì OK nhưng $\Sigma_ {ML}$ thì bị sai số. Cần hiệu chỉnh lại như sau:

$$
\tilde\Sigma = \frac{1}{N-1}\sum_ {n=1}^N(x_ n-\mu_ {ML})(x_ n-\mu_ {ML})^{\mathrm{T}}
$$

  • Note (ngoài sách): thực ra khi N rất lớn thì cái sai số nó chẳng đáng bao nhiêu nên dùng thế nào cũng được.

2.3.5 Sequential estimation

  • 1 kiểu online learning
    • nghĩa là ko phải dùng tất cả dữ liệu cùng 1 lúc (batch processing) mà dùng từng dữ liệu 1 để thay đổi parameter dần dần

    • dùng trong trường hợp batch processing quá nặng (e.g: data nhiều quá không cho hết vào memory được )

    • tất cả data không có trong tay hết mà "đến từ từ" (kiểu các ứng dụng online)


Ví dụ trong Maximum Likelihood for Gaussian

$$
\begin{align}
\mu_ {ML}^{(N)} &= \frac{1}{N}\sum_ {n=1}^N x_ n \
&=\frac{1}{N}x_ N+\frac{1}{N}\sum_ {n=1}^{N-1}x_ n \
&=\frac{1}{N}x_ N + \frac{N-1}{N}\mu_ {ML}^{(N-1)} \
&=\mu_ {ML}^{(N-1)}+\frac{1}{N}\big(x_ N-\mu_ {ML}^{(N-1)}\big)
\end{align}
$$

Như vậy, ta thấy có thể tính $\mu_ {ML}^{(N)}$ dựa vào $\mu_ {ML}^{(N-1)}$ với dữ liệu $x_ N$.


Tổng quát

  • Dùng thuật toán Robbins-Monro
  • Chẳng hạn dùng Maximum likelihood để tìm parameter $\theta$:

$$
\theta^{(N)} = \theta^{(N-1)}-a_ {N-1}\frac{\partial}{\partial \theta^{(N-1)}}\big[ \ln p(x_ N|\theta^{(N-1)} )\big]
$$
với $\{a_ N\}$ là dãy hệ số dương thoả mãn 3 điều kiện:

$$
\lim_ {N \to \infty} = 0 \
\sum_ {N=1}^{\infty} a_ N = \infty \
\sum_ {N=1}^{\infty} a_ N^2 < \infty
$$

Đối với từng bài toán cụ thể thì chọn $\{a_ N\}$ cho hợp lý.


2.3.6 Bayesian inference for the Gaussian

Giả sử có data $\mathbf{X} = \{x_ 1,\ldots,x_ N\}$ với variance $\sigma^2$ đã biết trước. Mục tiêu là tìm mean $\mu$.

Likelihood:

$$
\begin{align}
p(\mathbf{\mathbf{X}|\mu})& = \prod_ {n=1}^{N}p(x_ n|\mu) \
&=\frac{1}{(2\pi\sigma^2)^{N/2}}\exp{\big\{ -\frac{1}{2\sigma^2} \sum_ {n=1}^{N}(x_ n-\mu)^2 \big\}}
\end{align}
$$

Giả sử prior là 1 Gaussian

$$
p(\mu) = \mathcal{N}\big(\mu|\mu_ 0, \sigma_ o^2\big)
$$

thì posterior sẽ là 1 Gaussian

$$
p(\mu|\mathbf{X}) = \mathcal{N}\big(\mu|\mu_ N, \sigma_ N^2\big)
$$

với

$$
\begin{align}
\mu_ N &= \frac{\sigma^2}{N\sigma_ 0^2+\sigma^2}\mu_ 0+\frac{N\sigma_ 0^2}{N\sigma_ 0^2+\sigma^2}\mu_ {ML} \
\frac{1}{\sigma_ N^2} &=\frac{1}{\sigma_ 0^2}+ \frac{N}{\sigma^2}
\end{align}
$$

$\mu_ {ML}$ là cái mean đã tính dùng Maximum likelihood.

Nhìn công thức ta thấy là khi N nhỏ thì $\mu_ N$ sẽ xấp xỉ $\mu_ 0$, N lớn dần thì $\mu_ N$ sẽ càng ngày càng tiệm cận dần $\mu_ {ML}$.
Đối với precision (nghịch đảo của variance) thì cũng tương tự.


Nhìn theo hướng Sequential estimation

$$
p(\mu|\mathbf{X}) \sim \Big[ p(\mu) \prod_ {n=1}^{N-1}p(x_ n|\mu) \Big] p(x_ N|\mu)
$$

Cái trong ngoặc vuông chính là posterior của N-1 data đầu, nhưng có thể nhìn là prior cho N data, với likelihood gắn với $x_ N$.


Đối với bài toán

biết trước $\mu$ và mục đích là đi tìm precision $\lambda = 1/\sigma^2$

Posterior trong trường hợp này có họ với phân phối Gamma, tính lòng vòng 1 lúc thì cũng ra được kết quả.

Kết quả cũng không có gì thú vị lắm nhưng nếu anh em nào quan tâm thì đọc thêm trong sách :sweat_ smile: