Nền tảnggiáo trình tự học
Chương 317 phút đọcToán cho học máy

3Xác suất và thống kê#

Chương 2 mô tả dữ liệu và mô hình bằng vector và ma trận, như thể mọi con số đều chính xác. Thực tế thì không: hai căn nhà cùng diện tích vẫn có giá khác nhau, nhãn do người gán có lúc sai, và mỗi lần thu thập lại dữ liệu ta được một mẫu khác. Mô hình học từ một mẫu hữu hạn như vậy, nên bản thân nó cũng là một đại lượng ngẫu nhiên. Xác suất là ngôn ngữ để nói về sự không chắc chắn đó, và nó còn trả lời được hai câu hỏi mà đại số tuyến tính không trả lời được: vì sao hàm mất mát có dạng như vậy, và vì sao regularization có tác dụng.

3.1Vai trò của xác suất trong học máy#

Xác suất xuất hiện trong giáo trình theo ba cách. Cách thứ nhất là mô tả dự đoán không chắc chắn. Hồi quy logistic (Chương 6) trả về xác suất một điểm thuộc lớp dương chứ không chỉ một nhãn, và nhờ có xác suất, ta chọn được ngưỡng quyết định theo chi phí của từng loại sai (Chương 8). Cách thứ hai là giải thích nguồn gốc của hàm mất mát. Bình phương sai số và cross-entropy không phải hai lựa chọn tuỳ ý; Chương 10 chỉ ra rằng chúng là hệ quả của nguyên lý hợp lý cực đại dưới hai giả thiết khác nhau về nhiễu. Cách thứ ba là giải thích nguồn gốc của regularization: Mục 10.4 chỉ ra rằng hồi quy ridge trùng với ước lượng hậu nghiệm cực đại khi tiên nghiệm của trọng số là phân phối Gauss, và kiểm chứng điều này bằng số.

3.2Kỳ vọng và phương sai#

Định nghĩa 3.1 (Kỳ vọng, phương sai)

Với biến ngẫu nhiên XX có hàm xác suất (hoặc hàm mật độ) pp, kỳ vọng của XX là

E[X]=∑xx p(x)(rời rạc),E[X]=∫x p(x) dx(lieˆn tục),\begin{aligned} \mathbb{E}[X] &= \sum_x x\,p(x) && \text{(rời rạc)}, \\ \mathbb{E}[X] &= \int x\,p(x)\,dx && \text{(liên tục)}, \end{aligned}

và phương sai của XX là Var⁡(X)=E[(X−EX)2]=E[X2]−(EX)2\operatorname{Var}(X) = \mathbb{E}\big[(X - \mathbb{E}X)^2\big] = \mathbb{E}[X^2] - (\mathbb{E}X)^2.

Kỳ vọng là giá trị trung bình nếu lặp lại phép thử rất nhiều lần. Phương sai đo mức phân tán quanh giá trị trung bình đó; căn bậc hai của nó là độ lệch chuẩn, có cùng đơn vị với XX.

Các tính chất sau được dùng nhiều lần. Với hằng số a,ba, b,

E[aX+b]=a E[X]+b,Var⁡(aX+b)=a2Var⁡(X).\mathbb{E}[aX + b] = a\,\mathbb{E}[X] + b, \qquad \operatorname{Var}(aX + b) = a^2 \operatorname{Var}(X).

Kỳ vọng của tổng luôn bằng tổng các kỳ vọng, không cần điều kiện gì: E[X+Y]=E[X]+E[Y]\mathbb{E}[X + Y] = \mathbb{E}[X] + \mathbb{E}[Y]. Phương sai của tổng thì phụ thuộc vào mức độ hai biến liên quan với nhau:

Var⁡(X+Y)=Var⁡(X)+Var⁡(Y)+2Cov⁡(X,Y),\operatorname{Var}(X + Y) = \operatorname{Var}(X) + \operatorname{Var}(Y) + 2\operatorname{Cov}(X, Y),

trong đó hiệp phương sai Cov⁡(X,Y)=E[(X−EX)(Y−EY)]\operatorname{Cov}(X, Y) = \mathbb{E}\big[(X - \mathbb{E}X)(Y - \mathbb{E}Y)\big]. Chuẩn hoá hiệp phương sai bằng tích hai độ lệch chuẩn ta được hệ số tương quan ρ=Cov⁡(X,Y)/(σXσY)∈[−1,1]\rho = \operatorname{Cov}(X,Y)/(\sigma_X\sigma_Y) \in [-1, 1]. Chỉ khi XX và YY không tương quan (ρ=0\rho = 0), chẳng hạn khi chúng độc lập, phương sai của tổng mới bằng tổng các phương sai.

Ví dụ 3.1 (Trung bình của nhiều mô hình)

Giả sử có nn mô hình, dự đoán của mỗi mô hình là một biến ngẫu nhiên có phương sai σ2\sigma^2, và mỗi cặp mô hình có hệ số tương quan ρ\rho. Phương sai của trung bình nn dự đoán là

Var⁡(1n∑i=1nXi)=ρ σ2+1−ρn σ2.\operatorname{Var}\Big(\frac1n\sum_{i=1}^n X_i\Big) = \rho\,\sigma^2 + \frac{1-\rho}{n}\,\sigma^2.

Với σ2=1\sigma^2 = 1 và n=10n = 10: nếu các mô hình không tương quan (ρ=0\rho = 0), phương sai giảm còn 0,10{,}1; nếu ρ=0,5\rho = 0{,}5, phương sai chỉ giảm còn 0,5+0,05=0,550{,}5 + 0{,}05 = 0{,}55. Dù có thêm bao nhiêu mô hình, phương sai không xuống dưới ρσ2\rho\sigma^2.

Ví dụ này là cơ sở lý thuyết của phương pháp bagging và rừng ngẫu nhiên: lấy trung bình nhiều mô hình chỉ giảm phương sai hiệu quả khi các mô hình ít tương quan với nhau. Rừng ngẫu nhiên chọn ngẫu nhiên một tập con đặc trưng ở mỗi nhát cắt của cây chính là để giảm ρ\rho. Mục 3.3 của Học sâu đo hiện tượng này trên dữ liệu.

3.3Ma trận hiệp phương sai#

Khi dữ liệu có nhiều chiều, ta cần biết phương sai của từng chiều và hiệp phương sai giữa mọi cặp chiều. Các con số đó được xếp vào một ma trận.

Định nghĩa 3.2 (Ma trận hiệp phương sai)

Với vector ngẫu nhiên x∈Rdx \in \mathbb{R}^d có kỳ vọng μ\mu, ma trận hiệp phương sai là

Σ=E[(x−μ)(x−μ)⊤]∈Rd×d,Σjk=Cov⁡(xj,xk).\Sigma = \mathbb{E}\big[(x - \mu)(x - \mu)^\top\big] \in \mathbb{R}^{d \times d}, \qquad \Sigma_{jk} = \operatorname{Cov}(x_j, x_k).

Từ nn điểm dữ liệu, gọi XcX_c là ma trận dữ liệu đã trừ trung bình của từng cột, ước lượng mẫu của Σ\Sigma là

Σ^=1n−1Xc⊤Xc.\hat\Sigma = \frac{1}{n-1} X_c^\top X_c.

Đường chéo của Σ\Sigma chứa phương sai của từng đặc trưng; các phần tử ngoài đường chéo chứa hiệp phương sai giữa từng cặp đặc trưng. Ma trận này có ba tính chất, ứng với ba chỗ dùng ở các chương sau. Trước hết, Σ\Sigma đối xứng và nửa xác định dương, vì z⊤Σz=Var⁡(z⊤x)≥0z^\top \Sigma z = \operatorname{Var}(z^\top x) \ge 0 với mọi zz. Theo định lý phổ, Σ\Sigma có hệ vector riêng trực chuẩn, và đó là các thành phần chính của PCA (Chương 14). Tiếp theo, trị riêng lớn nhất của Σ\Sigma là phương sai lớn nhất mà một phép chiếu lên một hướng đơn vị có thể đạt được, và hướng đạt giá trị đó là vector riêng tương ứng. Cuối cùng, giả thiết "naive" của thuật toán Naive Bayes Gauss tương đương với việc ép Σ\Sigma của mỗi lớp thành ma trận đường chéo, tức coi mọi cặp đặc trưng là không tương quan khi đã biết lớp; Mục 7.4 kiểm chứng điều này bằng số và cho thấy Naive Bayes, LDA và QDA chỉ khác nhau ở ràng buộc đặt lên Σ\Sigma.

Bốn căn hộ của Chương 2 cho một ma trận hiệp phương sai cụ thể. Lấy hai đặc trưng là diện tích và giá; trừ trung bình 70 m² và 2,25 tỉ, các hàng của XcX_c là (−30; −0,75)(-30;\ -0{,}75), (−10; −0,15)(-10;\ -0{,}15), (10; 0,15)(10;\ 0{,}15) và (30; 0,75)(30;\ 0{,}75), nên

Σ^=13Xc⊤Xc=(666,716160,39).\hat\Sigma = \frac13 X_c^\top X_c = \begin{pmatrix}666{,}7 & 16\\ 16 & 0{,}39\end{pmatrix}.

Phương sai của diện tích là 666,7, tức độ lệch chuẩn khoảng 25,8 m²; phương sai của giá là 0,39, tức độ lệch chuẩn khoảng 0,62 tỉ. Hiệp phương sai 16 dương, tức căn rộng hơn thì đắt hơn, và hệ số tương quan 16/666,7×0,39≈0,99216/\sqrt{666{,}7 \times 0{,}39} \approx 0{,}992 cho thấy giá gần như tỉ lệ thuận với diện tích. Tỉ số 16/666,7=0,02416/666{,}7 = 0{,}024 là con số sẽ gặp lại ở Chương 4: đó là độ dốc của đường thẳng khớp bốn căn hộ tốt nhất. Hai phần tử trên đường chéo chênh nhau khoảng 1 700 lần chỉ vì đơn vị đo, mét vuông so với tỉ đồng, nên vector riêng ứng với trị riêng lớn nhất gần như trùng với trục diện tích; Mục 14.2 cho thấy vì sao cần chuẩn hoá trước khi dùng các vector riêng này.

Mẫu số n−1n - 1 thay cho nn trong ước lượng mẫu có lý do, được giải thích ở Ví dụ 3.4.

3.4Phân phối Gauss#

Phân phối Gauss, hay phân phối chuẩn, là phân phối được dùng nhiều nhất, vì hai lý do. Về lý thuyết, định lý giới hạn trung tâm nói rằng tổng của nhiều biến ngẫu nhiên độc lập nhỏ xấp xỉ phân phối Gauss, nên nhiễu tổng hợp từ nhiều nguồn thường có dạng Gauss. Về tính toán, logarit của mật độ Gauss là một hàm bậc hai, nên các bài toán tối ưu dẫn xuất từ nó thường có nghiệm dạng đóng.

Định nghĩa 3.3 (Phân phối Gauss)

Biến ngẫu nhiên một chiều x∼N(μ,σ2)x \sim \mathcal{N}(\mu, \sigma^2) có mật độ

p(x)=12πσ2exp⁡ ⁣(−(x−μ)22σ2).p(x) = \frac{1}{\sqrt{2\pi\sigma^2}}\exp\!\left(-\frac{(x-\mu)^2}{2\sigma^2}\right).

Vector ngẫu nhiên x∈Rdx \in \mathbb{R}^d có phân phối Gauss nhiều chiều N(μ,Σ)\mathcal{N}(\mu, \Sigma), với Σ\Sigma xác định dương, nếu có mật độ

p(x)=1(2π)d/2∣Σ∣1/2exp⁡ ⁣(−12(x−μ)⊤Σ−1(x−μ)).p(x) = \frac{1}{(2\pi)^{d/2}|\Sigma|^{1/2}}\exp\!\left(-\tfrac12 (x-\mu)^\top \Sigma^{-1}(x-\mu)\right).

Đại lượng trong hàm mũ, Δ2(x)=(x−μ)⊤Σ−1(x−μ)\Delta^2(x) = (x-\mu)^\top \Sigma^{-1}(x-\mu), gọi là bình phương khoảng cách Mahalanobis từ xx tới μ\mu. Các điểm có cùng khoảng cách Mahalanobis nằm trên một đường elip, có các trục là vector riêng của Σ\Sigma và độ dài bán trục tỉ lệ với căn bậc hai của trị riêng tương ứng.

Ví dụ 3.2

Cho μ=0\mu = 0 và Σ=diag⁡(4,1)\Sigma = \operatorname{diag}(4, 1), tức độ lệch chuẩn theo trục thứ nhất là 2 và theo trục thứ hai là 1. Hai điểm a=(2,0)a = (2, 0) và b=(0,2)b = (0, 2) cùng cách gốc 2 đơn vị theo khoảng cách Euclid. Nhưng Δ2(a)=22/4=1\Delta^2(a) = 2^2/4 = 1 còn Δ2(b)=22/1=4\Delta^2(b) = 2^2/1 = 4, tức aa cách tâm 1 độ lệch chuẩn còn bb cách tâm 2 độ lệch chuẩn. Theo phân phối này, điểm aa bình thường hơn điểm bb nhiều.

Ví dụ trên cho thấy khoảng cách Mahalanobis là khoảng cách Euclid sau khi đã quy mỗi hướng về đơn vị độ lệch chuẩn của dữ liệu theo hướng đó. Đi một đơn vị theo hướng dữ liệu trải rộng thì "gần", còn theo hướng dữ liệu co hẹp thì "xa".

Lấy logarit của mật độ Gauss ta được

log⁡p(x)=−12(x−μ)⊤Σ−1(x−μ)+ha˘ˋng soˆˊ,\log p(x) = -\tfrac12 (x-\mu)^\top \Sigma^{-1}(x-\mu) + \text{hằng số},

một hàm bậc hai của xx. Nhận xét đơn giản này có hai hệ quả lớn: hợp lý cực đại dưới giả thiết nhiễu Gauss dẫn tới bài toán bình phương tối thiểu (Mục 10.2), và bộ phân loại dùng phân phối Gauss cho mỗi lớp có biên quyết định là mặt bậc hai (Mục 7.4).

3.5Định lý Bayes#

Định lý 3.1 (Định lý Bayes)

Với hai biến cố (hoặc biến ngẫu nhiên) AA và BB, p(B)>0p(B) > 0:

p(A∣B)=p(B∣A) p(A)p(B),p(B)=∑A′p(B∣A′) p(A′).p(A \mid B) = \frac{p(B \mid A)\, p(A)}{p(B)}, \qquad p(B) = \sum_{A'} p(B \mid A')\,p(A').

Định lý Bayes cho phép đổi chiều một xác suất có điều kiện: biết xác suất quan sát được BB khi AA xảy ra, suy ra xác suất AA xảy ra khi đã quan sát được BB. Hai chiều này rất khác nhau, và nhầm lẫn chúng là lỗi suy luận phổ biến.

Ví dụ 3.3 (Xét nghiệm bệnh hiếm)

Một bệnh có tỉ lệ mắc 1% dân số. Xét nghiệm cho kết quả dương tính với 99% người mắc bệnh, và dương tính nhầm với 5% người không mắc bệnh. Một người có kết quả dương tính. Xác suất người đó thật sự mắc bệnh là

p(bệnh∣+)=0,99×0,010,99×0,01+0,05×0,99=0,00990,0594≈0,167.p(\text{bệnh} \mid +) = \frac{0{,}99 \times 0{,}01}{0{,}99 \times 0{,}01 + 0{,}05 \times 0{,}99} = \frac{0{,}0099}{0{,}0594} \approx 0{,}167.

Chỉ khoảng 1 trong 6 người có kết quả dương tính thật sự mắc bệnh, dù xét nghiệm "đúng 99%". Lý do là số người khoẻ rất lớn, nên 5% dương tính nhầm của họ vẫn nhiều hơn số người bệnh được phát hiện.

Hiện tượng trong Ví dụ 3.3 xuất hiện lại ở Chương 8 dưới tên gọi khác: khi lớp dương hiếm, precision của bộ phân loại có thể rất thấp dù tỉ lệ báo động nhầm nhỏ.

Trong học máy, định lý Bayes được dùng với AA là tham số θ\theta của mô hình và BB là dữ liệu D\mathcal{D}:

p(θ∣D)⏟hậu nghiệm=p(D∣θ)⏞hợp lyˊ  p(θ)⏞tieˆn nghiệmp(D)⏟ba˘ˋng chứng.\underbrace{p(\theta \mid \mathcal{D})}_{\text{hậu nghiệm}} = \frac{\overbrace{p(\mathcal{D} \mid \theta)}^{\text{hợp lý}} \; \overbrace{p(\theta)}^{\text{tiên nghiệm}}}{\underbrace{p(\mathcal{D})}_{\text{bằng chứng}}}.

Phân phối tiên nghiệm p(θ)p(\theta) mô tả hiểu biết về tham số trước khi thấy dữ liệu. Hàm hợp lý p(D∣θ)p(\mathcal{D} \mid \theta) cho biết dữ liệu quan sát được có khả năng xảy ra tới mức nào nếu tham số là θ\theta. Phân phối hậu nghiệm p(θ∣D)p(\theta \mid \mathcal{D}) là hiểu biết đã được cập nhật sau khi thấy dữ liệu. Mẫu số p(D)p(\mathcal{D}) không phụ thuộc θ\theta, nên khi tìm θ\theta làm hậu nghiệm lớn nhất có thể bỏ qua nó:

arg⁡max⁡θp(θ∣D)=arg⁡max⁡θ  p(D∣θ) p(θ)=arg⁡min⁡θ  [−log⁡p(D∣θ)−log⁡p(θ)].\begin{aligned} \arg\max_\theta p(\theta \mid \mathcal{D}) &= \arg\max_\theta \; p(\mathcal{D} \mid \theta)\,p(\theta) \\ &= \arg\min_\theta \;\big[-\log p(\mathcal{D} \mid \theta) - \log p(\theta)\big]. \end{aligned}

Vế phải có dạng "mất mát cộng thành phần phạt". Chương 10 khai triển đẳng thức này và cho thấy thành phần phạt chính là regularization.

3.6Ước lượng tham số: độ chệch và phương sai#

Học một mô hình từ dữ liệu là ước lượng tham số của nó. Vì dữ liệu là một mẫu ngẫu nhiên, ước lượng thu được cũng là ngẫu nhiên: lấy một mẫu khác thì được một giá trị khác.

Định nghĩa 3.4 (Độ chệch, phương sai của ước lượng)

Một ước lượng θ^\hat\theta của tham số θ\theta là một hàm của dữ liệu. Độ chệch (bias) và phương sai của nó là

Bias⁡(θ^)=E[θ^]−θ,Var⁡(θ^)=E[(θ^−Eθ^)2].\operatorname{Bias}(\hat\theta) = \mathbb{E}[\hat\theta] - \theta, \qquad \operatorname{Var}(\hat\theta) = \mathbb{E}\big[(\hat\theta - \mathbb{E}\hat\theta)^2\big].

Ước lượng có độ chệch bằng 0 gọi là ước lượng không chệch.

Ở đây kỳ vọng được lấy trên mọi tập dữ liệu có thể rút ra từ cùng một phân phối, không phải trên các điểm trong một tập dữ liệu. Để hình dung, hãy lặp lại việc thu thập dữ liệu và huấn luyện rất nhiều lần: độ chệch là khoảng cách từ trung bình các kết quả tới giá trị thật, còn phương sai là mức các kết quả tản ra quanh trung bình của chúng.

Định lý 3.2 (Phân tích sai số bình phương trung bình)

Với mọi ước lượng θ^\hat\theta,

E[(θ^−θ)2]=Bias⁡(θ^)2+Var⁡(θ^).\mathbb{E}\big[(\hat\theta - \theta)^2\big] = \operatorname{Bias}(\hat\theta)^2 + \operatorname{Var}(\hat\theta).

Chứng minh

Đặt m=E[θ^]m = \mathbb{E}[\hat\theta]. Viết θ^−θ=(θ^−m)+(m−θ)\hat\theta - \theta = (\hat\theta - m) + (m - \theta) rồi bình phương và lấy kỳ vọng. Số hạng chéo 2(m−θ) E[θ^−m]2(m - \theta)\,\mathbb{E}[\hat\theta - m] bằng 0 vì E[θ^−m]=0\mathbb{E}[\hat\theta - m] = 0. Hai số hạng còn lại là Var⁡(θ^)\operatorname{Var}(\hat\theta) và (m−θ)2(m - \theta)^2.

Ví dụ 3.4 (Vì sao chia cho n−1n-1)

Với nn quan sát độc lập có phương sai σ2\sigma^2, ước lượng σ^n2=1n∑i(xi−xˉ)2\hat\sigma^2_n = \frac1n\sum_i (x_i - \bar x)^2 có kỳ vọng n−1nσ2\frac{n-1}{n}\sigma^2, tức luôn nhỏ hơn giá trị thật. Nguyên nhân là xˉ\bar x được tính từ chính dữ liệu, nên các điểm luôn gần xˉ\bar x hơn so với gần giá trị trung bình thật. Chia cho n−1n - 1 thay cho nn cho ước lượng không chệch. Với n=5n = 5 và σ2=1\sigma^2 = 1, mô phỏng 200 000 lần cho giá trị trung bình của σ^n2\hat\sigma^2_n là 0,8020{,}802, khớp với 4/5=0,84/5 = 0{,}8.

Định lý 3.2 cho thấy một ước lượng không chệch chưa chắc là ước lượng tốt: nếu phương sai lớn, sai số tổng vẫn lớn. Ngược lại, chấp nhận một chút độ chệch để đổi lấy phương sai nhỏ hơn nhiều có thể làm sai số tổng giảm. Hồi quy ridge ở Chương 9 là ví dụ điển hình: nó là ước lượng có chệch, trong khi bình phương tối thiểu thông thường là ước lượng không chệch, vậy mà ridge thường có sai số nhỏ hơn. Mục 9.3 chỉ ra phần phương sai mà ridge cắt đi nằm ở những hướng nào.

Cùng ý tưởng này áp dụng cho dự đoán của cả mô hình, dưới tên gọi đánh đổi độ chệch – phương sai (bias–variance tradeoff). Chương 2 của Học sâu trình bày đầy đủ phân tích đó và đo từng thành phần trên 250 tập huấn luyện mô phỏng.

3.7Tóm tắt#

Kỳ vọng và phương sai mô tả giá trị trung bình và mức phân tán của một đại lượng ngẫu nhiên. Phương sai của tổng phụ thuộc vào hiệp phương sai, nên lấy trung bình nhiều mô hình chỉ giảm phương sai xuống tới mức ρσ2\rho\sigma^2. Ma trận hiệp phương sai gom phương sai và hiệp phương sai của mọi cặp đặc trưng; nó đối xứng, nửa xác định dương, và các vector riêng của nó là các thành phần chính của PCA. Với bốn căn hộ, hiệp phương sai 16 giữa diện tích và giá chia cho phương sai 666,7 của diện tích cho đúng độ dốc 0,024 của Chương 4. Logarit mật độ Gauss là một hàm bậc hai, điều sẽ biến hợp lý cực đại thành bình phương tối thiểu. Định lý Bayes đổi chiều xác suất có điều kiện, như ví dụ xét nghiệm bệnh hiếm cho thấy chỉ khoảng 16,7% người dương tính thật sự mắc bệnh, và viết hậu nghiệm thành dạng mất mát cộng thành phần phạt. Cuối cùng, sai số bình phương của một ước lượng tách thành độ chệch bình phương cộng phương sai, nên một ước lượng có chệch nhưng ít dao động có thể tốt hơn một ước lượng không chệch.

Có đại số tuyến tính và xác suất, ta đã đủ công cụ cho thuật toán học máy đầu tiên. Chương 4 xét hồi quy tuyến tính, bài toán đơn giản tới mức có nghiệm dạng đóng, nên mọi hiện tượng của nó quan sát được trực tiếp.


Tự kiểm tra

4 câu. Chọn đáp án để xem ngay lời giải thích.

  1. 1Phát biểu nào đúng?

  2. 2Ép ma trận hiệp phương sai của mỗi lớp thành ma trận đường chéo tương đương với giả thiết nào?

  3. 3Bệnh có tỉ lệ mắc 1%, xét nghiệm dương tính với 99% người bệnh và dương tính nhầm với 5% người khoẻ. Một người có kết quả dương tính. Xác suất người đó mắc bệnh khoảng bao nhiêu?

  4. 4Vì sao ước lượng phương sai mẫu chia cho n−1n-1 thay vì nn?

Đã trả lời 0/4