Giao diện
Ở Bài 04, chúng ta giả định rằng tại mỗi bước lặp, thuật toán luôn tính toán được chính xác tuyệt đối của toàn bộ hàm mục tiêu. Thế nhưng khi bước vào thế giới học sâu hiện đại, giả định đó lập tức vấp phải bức tường thực tế: Các tập dữ liệu huấn luyện (từ thị giác máy tính đến các mô hình ngôn ngữ lớn) thường chứa hàng triệu, thậm chí hàng nghìn tỷ mẫu dữ liệu. Việc duyệt qua toàn bộ dữ liệu chỉ để thực hiện một bước cập nhật duy nhất là điều hoàn toàn bất khả thi về mặt tài nguyên và thời gian.
Để vượt qua giới hạn này, kỹ nghệ học sâu vận hành dựa trên nguyên lý tối ưu hóa ngẫu nhiên (stochastic optimization) then chốt: Thay vì tính toán chính xác trên toàn bộ tập dữ liệu (Full-batch), ta ước lượng gradient thông qua một lô dữ liệu nhỏ (mini-batch) được lấy mẫu ngẫu nhiên. Bước chuyển dịch này kéo theo hàng loạt câu hỏi cốt lõi:
- Làm sao bảo đảm trên lô nhỏ phản ánh đúng xu hướng suy giảm chung của toàn bộ dữ liệu?
- Làm thế nào để kiểm soát và chế ngự nhiễu ngẫu nhiên sinh ra từ việc lấy mẫu?
- Cơ chế quán tính () và kỹ thuật nhìn trước (Nesterov) giúp thuật toán vượt qua các thung lũng hẹp và điểm yên ngựa ra sao?
- Tại sao việc khởi tạo trọng số ngẫu nhiên lại quyết định sự sống còn của dòng chảy tín hiệu trong các mạng nơ-ron sâu?
1. Hàm mục tiêu thực nghiệm và Ranh giới Khái quát hóa
Trong học máy có giám sát, ta có một tập huấn luyện gồm
Nếu áp dụng kỹ thuật điều chuẩn (regularization), ta cộng thêm số hạng phạt độ phức tạp
Ở đây, chúng ta cần phân biệt rạch ròi giữa hai mục tiêu hoàn toàn khác nhau:
- Bài toán tối ưu (Optimization): Tìm bộ
để cực tiểu hóa hàm mất mát thực nghiệm trên dữ liệu đã biết trong tập huấn luyện. - Khả năng khái quát hóa (Generalization): Đo lường chất lượng dự đoán của mô hình trên phân phối dữ liệu thực tế chưa từng xuất hiện trong quá trình huấn luyện.
Một thuật toán tối ưu hội tụ hoàn hảo về điểm có mất mát bằng 0 trên tập huấn luyện hoàn toàn không đồng nghĩa với việc mô hình sẽ hoạt động tốt trên thực tế vì mô hình có thể rơi vào bẫy học vẹt (overfitting). Do đó, trong thực hành ta luôn chia tách dữ liệu thành:
- Tập huấn luyện (Training set): Dùng trực tiếp để tính và cập nhật .
- Tập xác thực (Validation set): Dùng để tinh chỉnh siêu và theo dõi hiện tượng overfitting.
- Tập kiểm thử (Test set): Giữ tuyệt đối cho lần đánh giá năng lực cuối cùng.
2. Gradient ước lượng từ Lô nhỏ (Mini-batch Gradient)
Do phép lấy đạo hàm có tính tuyến tính, của hàm mất mát thực nghiệm bằng trung bình cộng các gradient trên từng mẫu:
Thay vì tính tổng trên toàn bộ
Tính không chệch và Phương sai của ước lượng
Nếu các chỉ số
Đẳng thức này khẳng định
Tuy nhiên, ước lượng này đi kèm với ngẫu nhiên. Giả sử phương sai của trên một mẫu đơn lẻ là
Định luật này giải thích vì sao kích thước lô
- Tăng kích thước lô
làm giảm , ít bị nhiễu hơn, cho phép bước đi ổn định hơn. - Nhưng khi
tăng quá lớn, chi phí tính toán tăng tuyến tính trong khi chỉ giảm với tốc độ căn bậc hai ( ), dẫn tới hiệu suất biên giảm dần. - Thú vị hơn, trong học sâu, chính sự dao động ngẫu nhiên của các lô nhỏ vừa phải (
) lại hoạt động như một cơ chế điều chuẩn ngầm, giúp mô hình thoát khỏi các hố cực tiểu cục bộ nhọn (sharp minima) và định vị các cực tiểu phẳng (flat minima) có tính khái quát hóa bền bỉ hơn!
Ví dụ: Quan sát nhiễu ngẫu nhiên trên mô hình một tham số
Xét tập dữ liệu cực nhỏ gồm hai mẫu có nhãn
toàn phần là
- Tại
: mẫu 1 là . Gradient mẫu 2 là . Gradient toàn phần là . Nếu cập nhật với tốc độ học : - Cập nhật full-batch:
. - Nếu gặp riêng mẫu 1:
(đứng yên). - Nếu gặp riêng mẫu 2:
. Trung bình cập nhật của hai mẫu đúng bằng .
- Cập nhật full-batch:
- Tại điểm tối ưu
: toàn phần triệt tiêu hoàn toàn ( ). Thế nhưng gradient của từng mẫu đơn lẻ lần lượt là và . Do đó, một bước với tốc độ học cố định sẽ tiếp tục nhảy lệch khỏi điểm tối ưu thay vì dừng lại!
Câu hỏi đào sâu: Tại điểm cực tiểu toàn cục $\theta = 1$, nếu bước cập nhật bốc phải mẫu $b = 0$ với $\eta = 0.1$, hàm mất mát toàn phần sẽ biến thiên ra sao?
Tại
Mất mát đã tăng lên! Điều này cho thấy tính không chệch của chỉ là một bảo đảm về mặt thống kê. Hệ quả là, nó tuyệt đối không bảo đảm rằng hàm mục tiêu sẽ giảm sau từng bước cập nhật ngẫu nhiên đơn lẻ.
3. Thuật toán Stochastic Gradient Descent (SGD)
Thuật toán (SGD) cập nhật tại bước thứ
trong đó
Một epoch được định nghĩa là một chu trình hoàn chỉnh duyệt qua toàn bộ tập dữ liệu huấn luyện. Trong thực hành, người ta xáo trộn ngẫu nhiên (shuffle) tập dữ liệu ở đầu mỗi epoch, sau đó chia thành các lô nhỏ liên tiếp không hoàn lại.
Vì luôn chứa thành phần nhiễu ngẫu nhiên, thuật toán không thể hội tụ về điểm dừng nếu giữ nguyên tốc độ học cố định
Điều kiện thứ nhất bảo đảm bước đi đủ dài để đi tới nghiệm dù xuất phát từ bất kỳ đâu, trong khi điều kiện thứ hai bảo đảm tích lũy của nhiễu bị triệt tiêu dần khi tiệm cận nghiệm.
Đoạn mã Python mô phỏng chính xác thuật toán trên mô hình đơn :
python
def sgd_scalar(theta, targets, rate, draws):
history = [theta]
for i in draws: # chỉ số lấy mẫu được cung cấp để tái lập
gradient = theta-targets[i]
theta -= rate*gradient
history.append(theta)
return history
print(sgd_scalar(0.0, [0.0, 2.0], 0.1, [0, 1, 0, 1]))
# [0.0, 0.0, 0.2, 0.18, 0.362]4. Cơ chế Quán tính: Momentum và Trạng thái Vận tốc
Khi bề mặt hàm mất mát có dạng hẻm núi hẹp (độ cong theo một số hướng lớn hơn gấp nhiều lần các hướng khác), sẽ dao động mạnh qua lại giữa hai sườn dốc và di chuyển rất chậm chạp dọc theo đáy thung lũng.
Thuật toán mượn ý tưởng trực quan từ cơ học cổ điển: Coi như một hòn bi có khối lượng lăn trên bề mặt thế năng mất mát. Hòn bi tích lũy vận tốc theo thời gian, giúp nó vượt qua các gờ nhấp nhô và giữ đà lao nhanh dọc theo hướng dốc chính.
Khởi tạo vector vận tốc
trong đó
Ý nghĩa của hệ số
- Nếu các vector ở các bước liên tiếp cùng hướng, số hạng vận tốc sẽ tích lũy theo cấp số nhân:Với
, bước nhảy thực tế dọc theo hướng ổn định sẽ được khuếch đại gấp 10 lần! - Nếu các vector liên tục đổi dấu (như dao động giữa hai sườn dốc hẹp), các số hạng sẽ triệt tiêu lẫn nhau trong tổng vận tốc, giúp dập tắt dao động ziczac.
Ví dụ: Tính toán định lượng hai bước lặp Momentum
Xét hàm số
- Bước 1:
- :
. - Vận tốc mới:
. - Cập nhật vị trí:
.
- :
- Bước 2:
- :
. - Vận tốc mới:
- Cập nhật vị trí:
.
- :
Để so sánh: Descent thuần túy ở bước 2 chỉ đạt tới
5. Nesterov Accelerated Gradient (NAG): Kỹ thuật Nhìn trước
Mặc dù thông thường tăng tốc rất tốt, nhược điểm của nó là có thể tích lũy quán tính quá lớn và lao vọt qua đáy thung lũng trước khi kịp hãm phanh.
Accelerated (NAG) giải quyết điều này bằng một cơ chế thông minh: Tính toán gradient tại vị trí nhìn trước (lookahead point) thay vì tại vị trí hiện tại.
Quy tắc cập nhật :
- Dự phóng vị trí tương lai theo quán tính thuần túy:
. - Đo độ dốc địa hình tại điểm dự phóng:
. - Cập nhật vận tốc và vị trí:
Sự khác biệt cốt tử giữa nằm ở vị trí lấy đạo hàm:
- thông thường: Tính tại điểm đang đứng
, rồi mới cộng quán tính . - : Nhảy một bước thử theo quán tính tới
, quan sát xem phía trước dốc lên hay dốc xuống để tự động "nhấn phanh" hãm đà nếu sắp lao qua đỉnh đối diện!
Ví dụ: Kiểm chứng bước Nesterov trên cùng bài toán
Với bài toán
- Bước 1: Vì
, trùng điểm hiện tại . Kết quả thu được (giống Momentum). - Bước 2:
- :
. - tại :
. - Vận tốc mới:
- Cập nhật vị trí:
.
- :
Ta thấy vận tốc (
Bước 0: (2.0000, 2.0000) và f = 22.0000.
Xem code và điều kiện mô phỏng
Chương trình dùng dữ liệu nhỏ tự đặt. Các quan hệ toán được ghi ngay trong Notes. Mô phỏng hữu hạn không thay chứng minh cho mọi điểm. Code tính toán được chia sẻ giữa component và kiểm tra tại docs/.vitepress/theme/math-ai.mjs.
js
const lookahead = point.map((x,i) => x+mu*velocity[i]);
const g = gradient(lookahead);
velocity = velocity.map((v,i) => mu*v-rate*g[i]);
point = point.map((x,i) => x+velocity[i]);6. Khởi tạo Trọng số và Nguyên lý Bảo toàn Phương sai Glorot (Xavier)
Trước khi thuật toán tối ưu hóa bắt đầu bước đi đầu tiên, bài toán đặt ra là: Nên khởi tạo các trọng số của mạng nơ-ron như thế nào?
Nếu ta khởi tạo toàn bộ trọng số của một tầng ẩn bằng 0:
- Tất cả các nơ-ron trong tầng đó sẽ nhận tín hiệu đầu vào giống nhau và sinh ra đầu ra giống hệt nhau.
- Trong pha lan truyền ngược, tất cả các nơ-ron sẽ nhận cùng một , dẫn tới việc chúng được cập nhật cùng một giá trị như nhau ở mọi bước lặp.
- Mạng nơ-ron hoàn toàn mất khả năng học các đặc trưng đa dạng, hiện tượng này được gọi là sự sụp đổ đối xứng (symmetry trap).
Để phá vỡ đối xứng, ta bắt buộc phải khởi tạo trọng số ngẫu nhiên. Nhưng ngẫu nhiên với bao nhiêu?
- Nếu quá lớn: Tín hiệu kích hoạt sẽ phóng đại theo cấp số nhân qua các tầng, dẫn tới hiện tượng bùng nổ (exploding gradients).
- Nếu quá nhỏ: Tín hiệu kích hoạt sẽ suy giảm dần về 0 khi đi sâu vào mạng, dẫn tới hiện tượng triệt tiêu (vanishing gradients).
Phân tích bảo toàn phương sai của Xavier Glorot & Yoshua Bengio (2010)
Xét một nơ-ron tuyến tính tính tổng trọng số
của tổ hợp tuyến tính là:
Để của tín hiệu không bị phóng đại hay triệt tiêu khi truyền xuôi qua tầng (
Mặt khác, trong pha lan truyền ngược, để bảo toàn của truyền từ tầng sau (
Không thể đồng thời thỏa mãn cả hai điều kiện khi
Nếu khởi tạo theo phân phối đều đối xứng
Chẳng hạn với một tầng có 4 đầu vào (
- Biên độ phân phối đều:
. - Trọng số được lấy mẫu từ
với .
Bài tập tự luyện
Bài tập 1: Tính toán gradient lô nhỏ
Xét bài toán một với hai mẫu
- Tính của từng mẫu riêng biệt
và . - Tính của lô chứa cả hai mẫu và so sánh với đạo hàm toàn phần
.
Lời giải
- từng mẫu:
- Mẫu 1:
. - Mẫu 2:
.
- Mẫu 1:
- của lô hai mẫu:Đạo hàm toàn phần:Hai kết quả trùng khớp hoàn hảo. Chú ý: Nếu cộng các mà quên chia cho kích thước lô
, ta sẽ thu được , làm sai lệch thang đo của bước cập nhật.
Bài tập 2: Thực hiện bước thứ ba của thuật toán Momentum
Tiếp tục ví dụ ở mục 4: Tại cuối bước 2, ta có
Lời giải
- Tính tại vị trí hiện tại
: - Cập nhật vận tốc mới
: - Cập nhật vị trí mới
:
Vận tốc tiếp tục tăng từ
Bài tập 3: Tính toán tham số khởi tạo Glorot cho tầng ẩn
Một tầng ẩn trong mạng nơ-ron sâu nhận 8 đầu vào (
- Xác định khởi tạo Glorot cho ma trận trọng số của tầng này.
- Nếu dùng phân phối đều
, hãy tính giá trị cận biên .
Lời giải
- Glorot chuẩn hóa:
- Biên độ phân phối đều:
Trọng số của tầng này cần được lấy mẫu ngẫu nhiên từ phân phối
Bài tập 4: Phân tích thống kê: Kỳ vọng, hiệp phương sai và nhiễu của gradient mini-batch
Cho tập dữ liệu huấn luyện gồm
Tại mỗi bước lặp, thuật toán Mini-batch chọn ngẫu nhiên đồng đều không hoàn lại một tập chỉ số
- Chứng minh rằng
là một ước lượng không chệch của toàn thể : . - Giả sử của từng mẫu đơn lẻ có bị chặn:
. Trong trường hợp lấy mẫu có hoàn lại, hãy tính ma trận hiệp phương sai của theo kích thước lô . - Nêu ý nghĩa của tỉ số tín hiệu trên nhiễu (SNR) của : Tại sao khi tăng kích thước lô
lên 4 lần thì của nhiễu chỉ giảm đi 2 lần?
Lời giải
- Tính không chệch của mini-batch: Đặt chỉ thị
. Xác suất để một mẫu thứ bất kỳ lọt vào lô kích thước là: mini-batch được viết lại dưới dạng:Lấy toán học theo phân phối chọn mẫu:
\mathbb{E}[g_B(\theta)] &= \frac{1}{m} \sum_{i=1}^N \mathbb{E}[I_i] \nabla \ell(\theta, z_i) \ &= \frac{1}{m} \sum_{i=1}^N \left(\frac{m}{N}\right) \nabla \ell(\theta, z_i) \ &= \frac{1}{N} \sum_{i=1}^N \nabla \ell(\theta, z_i) = \nabla f(\theta). \end
\begin{aligned} \operatorname{Cov}\big(g_B(\theta)\big) &= \operatorname{Cov}\left(\frac{1}{m} \sum_{i \in B} \nabla \ell(\theta, z_i)\right) \ &= \frac{1}{m^2} \sum_{i \in B} \operatorname{Cov}\big(\nabla \ell(\theta, z_i)\big) \ \preceq \frac{1}{m^2} \big(m \sigma^2 I\big) &= \frac{\sigma^2}{m} I. \end
\text{Noise std} = \sqrt{\operatorname{Tr}(\operatorname{Cov})} \propto \frac{\sigma}{\sqrt{m}}.
\text{SNR} = \frac{|\nabla f(\theta)|_2}{\sigma / \sqrt{m}} \propto \sqrt{m}.
Bài tập 5: Bất đẳng thức bước giảm (Descent Lemma) và tốc độ hội tụ của SGD
Cho hàm mục tiêu
- Bổ đề giảm bước (Descent Lemma): Chứng minh rằng với mọi
, ta luôn có bất đẳng thức bậc hai chặn trên: - Xét bước cập nhật hạ :
, với và . Chứng minh rằng: - Nếu chọn tốc độ học cố định
, hãy giải thích tại sao không hội tụ về điểm dừng chính xác mà chỉ dao động quanh một quả cầu sai số phụ thuộc vào nhiễu .
Lời giải
- Chứng minh Descent Lemma: Theo định lý cơ bản của giải tích vi tích phân:Cộng và trừ số hạng
: Áp dụng bất đẳng thức Cauchy-Schwarz và tính chất Lipschitz của :
\left|f(y) - f(x) - \nabla f(x)^T (y - x)\right| &\le \int_0^1 \left|\nabla f\big(x + \tau(y - x)\big) - \nabla f(x)\right|_2 |y - x|_2 , \mathrm{d}\tau \ &\le \int_0^1 L \tau |y - x|_2^2 , \mathrm{d}\tau = L |y - x|_2^2 \left[\frac{\tau^2}{2}\right]_0^1 = \frac{L}{2}|y - x|_2^2. \end
f(\theta_{t+1}) \le f(\theta_t) - \eta \nabla f(\theta_t)^T g_t + \frac{\eta^2 L}{2}|g_t|_2^2.
\begin{aligned} \mathbb{E}[f(\theta_{t+1}) \mid \theta_t] &\le f(\theta_t) - \eta \nabla f(\theta_t)^T \mathbb{E}[g_t \mid \theta_t] + \frac{\eta^2 L}{2}\mathbb{E}[|g_t|_2^2 \mid \theta_t] \ &= f(\theta_t) - \eta |\nabla f(\theta_t)|_2^2 + \frac{\eta^2 L}{2}\mathbb{E}[|g_t|_2^2 \mid \theta_t]. \end
\mathbb{E}[f(\theta_{t+1}) \mid \theta_t] \le f(\theta_t) - \eta \left(1 - \frac{\eta L}{2}\right) |\nabla f(\theta_t)|_2^2 + \frac{\eta^2 L G^2}{2}.
\eta \left(1 - \frac{\eta L}{2}\right) |\nabla f(\theta_t)|_2^2 > \frac{\eta^2 L G^2}{2} \iff |\nabla f(\theta_t)|_2^2 > \frac{\eta L G^2}{2 - \eta L}.
Bài tập 6: Cơ chế nhìn trước (Look-ahead) của Nesterov Accelerated Gradient (NAG)
Xét hàm toàn phương một chiều:
Giả sử tại bước lặp hiện tại, vị trí là
- Tính bước cập nhật theo thuật toán Polyak Heavy-Ball :
- Tính tại điểm hiện tại
. - Cập nhật vận tốc mới
và vị trí mới .
- Tính tại điểm hiện tại
- Tính bước cập nhật theo thuật toán Accelerated (NAG):
- Tính vị trí nhìn trước
. - Tính tại vị trí nhìn trước
. - Cập nhật vận tốc mới
và vị trí mới .
- Tính vị trí nhìn trước
- So sánh hai kết quả và giải thích cơ chế "hãm đà thông minh" của giúp ngăn chặn hiện tượng trượt quá đà (overshooting).
Lời giải
Thuật toán Polyak :
- Vị trí hiện tại:
, vận tốc cũ . - tại vị trí hiện tại:
- Cập nhật vận tốc mới:
- Cập nhật vị trí mới:
Nhận xét: Vị trí mới
bị đẩy ra xa cực tiểu hơn so với vị trí ban đầu do quán tính quá lớn. - Vị trí hiện tại:
Thuật toán (NAG):
- (Look-ahead point):
- tại :
- Cập nhật vận tốc mới:
- Cập nhật vị trí mới:
- (Look-ahead point):
Bản chất cơ chế hãm đà của :
- Polyak tính tại điểm cũ (
) nên chỉ nhận được lực kéo về là , khiến vận tốc sau khi trừ vẫn còn rất lớn ( ). - chủ động phóng tầm mắt tới vị trí mà quán tính sẽ đưa hạt vật chất tới (
). Tại đó, độ dốc vách núi dốc hơn nhiều ( ), sinh ra một lực phanh ngược chiều mạnh hơn ( ). - Nhờ lực phanh này, vận tốc của bị triệt tiêu bớt (
), giúp hạt vật chất dừng lại sớm hơn và giảm thiểu chấn động dao động quanh điểm cực tiểu.
- Polyak tính tại điểm cũ (
Bài tập 7: Khởi tạo He (Kaiming) cho hàm kích hoạt ReLU và sự bảo toàn phương sai
Xét một tầng tuyến tính trong mạng nơ-ron:
- Giả sử đối xứng
có . Chứng minh rằng: - Để bảo toàn của tín hiệu qua các tầng mạng sâu (
), hãy chứng minh công thức khởi tạo He (Kaiming): - Giải thích tại sao nếu dùng công thức Glorot
cho mạng sâu dùng ReLU, tín hiệu sẽ bị triệt tiêu theo cấp số nhân qua từng tầng.
Lời giải
bình phương qua hàm kích hoạt ReLU:
có hàm mật độ xác suất đối xứng quanh : . Biến đổi qua ReLU: . Kỳ vọng bình phương được tính bằng tích phân: Do tính đối xứng của hàm mật độ chuẩn:
Hàm kích hoạt ReLU triệt tiêu đúng một nửa năng lượng tín hiệu ở phần âm.
Thiết lập công thức khởi tạo He (Kaiming): Xét thành phần thứ
của đầu ra tuyến tính . Vì và , : Kế tiếp, qua tầng ReLU, theo kết quả câu 1:
Để năng lượng tín hiệu không bị co cụm hay bùng nổ qua từng tầng (
), ta cần hệ số nhân bằng đúng 1: Đây chính là công thức khởi tạo He (Kaiming Initialization) nổi tiếng.
Hậu quả khi dùng nhầm khởi tạo Glorot cho ReLU: Khởi tạo Glorot được thiết kế cho các hàm kích hoạt tuyến tính hoặc sigmoid/tanh đối xứng quanh gốc tọa độ, với giả định tín hiệu không bị mất năng lượng qua hàm kích hoạt (
), dẫn tới hệ số . Nếu áp dụng công thức này cho mạng ReLU: Qua mỗi tầng mạng, của tín hiệu bị giảm đi một nửa. Qua
tầng tích chập hoặc tầng ẩn, năng lượng tín hiệu bị suy giảm theo tỉ lệ: Tín hiệu lan truyền xuôi và lan truyền ngược bị triệt tiêu hoàn toàn về 0, khiến mạng sâu không thể học được bất cứ điều gì.
Bài tập 8: Bất đẳng thức tập trung Chebyshev và Hoeffding trong kiểm soát sai số mini-batch
Khi huấn luyện mô hình phân loại trên tập dữ liệu kích thước lớn, ta dùng
- Áp dụng Bất đẳng thức Chebyshev: Cần kích thước lô
tối thiểu là bao nhiêu để xác suất sai số không vượt quá ( )? - Áp dụng Bất đẳng thức Hoeffding: Với cùng sai số
và độ tin cậy ( ), hãy tính kích thước lô theo cận hàm mũ. - So sánh hai kết quả và giải thích tại sao bất đẳng thức Hoeffding mang lại cận kích thước mẫu vượt trội hơn khi yêu cầu độ tin cậy cực cao (
).
Lời giải
Áp dụng Bất đẳng thức Chebyshev: Kỳ vọng của trung bình mẫu là
, và là . Bất đẳng thức Chebyshev phát biểu rằng với mọi : Yêu cầu xác suất vi phạm không vượt quá
: Theo Chebyshev, cần kích thước lô ít nhất
mẫu. Áp dụng Bất đẳng thức Hoeffding: Vì mỗi
bị chặn trong đoạn , độ dài khoảng chặn là . Bất đẳng thức Hoeffding cho biến ngẫu nhiên bị chặn: Yêu cầu cận trên không vượt quá
: Lấy logarit tự nhiên hai vế:
Làm tròn lên, ta cần
mẫu. So sánh bản chất của hai bất đẳng thức:
- Khi độ tin cậy ở mức thông thường (
), Chebyshev có thể cho cận số học nhỏ hơn nếu thực tế nhỏ hơn nhiều so với độ rộng khoảng chặn ( có biên độ tối đa cho phép phương sai lên tới ). - Tuy nhiên, sự khác biệt then chốt nằm ở tốc độ suy giảm theo xác suất lỗi
: - Cận kích thước mẫu của Chebyshev tỷ lệ với
(suy giảm dạng đa thức chậm). Nếu đòi hỏi , Chebyshev đòi hỏi mẫu. - Cận kích thước mẫu của Hoeffding tỷ lệ với
(suy giảm dạng hàm mũ). Với , Hoeffding chỉ đòi hỏi mẫu.
- Cận kích thước mẫu của Chebyshev tỷ lệ với
Bất đẳng thức Hoeffding khai thác triệt để phân phối đuôi mỏng hàm mũ (sub- tails), tạo nền tảng vững chắc cho lý thuyết học thống kê (PAC learning) và cận khái quát hóa trong trí tuệ nhân tạo.
- Khi độ tin cậy ở mức thông thường (
Tóm tắt cốt lõi
- Tối ưu hóa vs Khái quát hóa: Cực tiểu hóa mất mát thực nghiệm trên tập huấn luyện là phương tiện, trong khi mục tiêu tối thượng của học máy là khả năng khái quát hóa trên dữ liệu thực tế chưa biết.
- Bản chất của Mini-batch : Gradient lô nhỏ là ước lượng không chệch với tỉ lệ nghịch với kích thước lô (
). Nhiễu ngẫu nhiên vừa là thách thức vừa là công cụ điều chuẩn hữu hiệu. - : Tích lũy quán tính giúp triệt tiêu dao động ziczac trong hẻm núi hẹp. Nesterov cải tiến vượt bậc bằng cách lấy tại vị trí nhìn trước để chủ động hãm đà khi tới gần đáy.
- Khởi tạo Glorot: Bảo toàn của dòng chảy tín hiệu lan truyền xuôi và lan truyền ngược, ngăn chặn triệt để thảm họa bùng nổ hay triệt tiêu gradient.
Tài liệu tham khảo và Đọc thêm
Dành cho người học muốn nghiên cứu chuyên sâu về tối ưu hóa trong học sâu:
- Ian Goodfellow, Yoshua Bengio & Aaron Courville, Deep Learning, MIT Press. Đọc kỹ Chương 8 (Tối ưu hóa trong huấn luyện mô hình học sâu: Các thách thức giải tích, thuật toán cơ bản, thuật toán với , và chiến lược khởi tạo).
- Xavier Glorot & Yoshua Bengio (2010), Understanding the difficulty of training deep feedforward neural networks, AISTATS. Công trình nền tảng khai sinh phương pháp khởi tạo chuẩn hóa (Glorot / Xavier initialization).
Tiếp theo: Bài 06: Các phương pháp tối ưu thích nghi: AdaGrad, RMSProp và Adam.