“Học máy” từ góc nhìn của lý thuyết tính toán (4)
Trong các bài trước ta đã đề cập đến một số vấn đề không học được trong mô hình PAC và tầm quan trọng của việc biểu diễn lớp giả thuyết như thế nào. Có lẽ bài báo đầu tiên nói về tầm quan trọng của (cách biểu diễn) lớp giả thuyết là bài của Pitt và Valiant (JACM, 1988). Có không ít các bài báo tiếp đó đã chứng minh hardness của một số vấn đề học máy khác, ví dụ Blum và Rivest chứng minh rằng training một neural network với 3 nodes là NP-Hard (tương đương với phần hội của 3 halfspaces là không học được), Alekhnovich et al. ở FOCS 04 chứng minh một số các lớp hàm Bool và decision trees là không học được, V. Feldman ở STOC 06 chứng minh rằng lớp DNF không học được trong mô hình PAC kể cả khi learner có thể “hỏi” data (chứ không phải lấy ngẫu nhiên, xem thêm bài này nữa), Guruswami và Raghavendra ở FOCS 06 chứng minh rằng học halfspaces (còn gọi là perceptron, một cấu trúc cổ điển) với nhiễu là khó (ta sẽ nói về nhiễu sau), v.v. Duyệt qua STOC, FOCS,và COLT những năm gần đây sẽ thấy một vài kết quả nữa. Ngoài ra, còn có một mối liên kết giữa PAC-learning và property testing, một đề tài khá “hot” trong lý thuyết tính toán.
Chứng minh rằng học một lớp khái niệm dùng một lớp giả thuyết nào đó là bài toán khó (NP-hard chẳng hạn) không đáng ngạc nhiên (dù không dễ dàng). Thế nếu ta không giới hạn cả lớp giả thuyết nữa thì sao? Bài toán sẽ khó hơn hay dễ hơn? Một mặt, ta cho learner thêm flexibility, bài toán có vẻ “dễ” hơn. Mặt khác, không giới hạn lớp giả thuyết thì learner output cái gì bây giờ? Ta sẽ quay lại đề tài này trong một bài sau.
4. Occam’s learning và mối liên hệ giữa mô hình nhất quán và mô hình PAC, trường hợp lớp khái niệm hữu hạn
Tóm tắt lại mô hình PAC: learner muốn học khái niệm
trong lớp khái niệm
bằng lớp giả thuyết
, nghĩa là learner phải đưa ra một giả thuyết
bằng cách lấy
mẫu theo phân bố
trên miền
sao cho
rất gần
với xác suất rất cao.
Trong đề mục này, ta chỉ xét các lớp giả thuyết hữu hạn,
có thể giống hoặc khác
. Một kết quả cổ điển của Valiant nói rằng: nếu learner đưa ra một giả thuyết nhất quán với “khá nhiều” các mẫu lấy độc lập thì đó chính là PAC learner! (Có thể không phải là efficient PAC learner, nhưng chắc chắn là PAC learner.) Cụ thể hơn:
Định lý Valiant. Nếu learner có thể đưa ra một giả thuyết
nhất quán với
mẫu (i.d.d.) thì giả thuyết đó sẽ thỏa điều kiện
, nghĩa là learner là một PAC-learner.
Chứng minh. Gọi một giả thuyết gọi là giả thuyết tồi nếu
![\text{err}_{\mathcal D}(h) = \text{Prob}_{x \in \mathcal D}[h(\mathbf x) \neq c(\mathbf x)] > \epsilon \text{err}_{\mathcal D}(h) = \text{Prob}_{x \in \mathcal D}[h(\mathbf x) \neq c(\mathbf x)] > \epsilon](/blog/latexrender/pictures/a69a12a36d75764d0e157829eae347f6.gif)
Như vậy, xác suất mà một giả thuyết tồi nhất quán với
ở tất cả
mẫu độc lập nhỏ hơn
. Do đó, xác suất mà giả thuyết learner đưa ra là giả thuyết tồi ≤ xác suất tồn tại một giả thuyết tồi trong
nhất quán với
≤
. Ép vế cuối cùng nhỏ hơn hoặc bằng
là xong!
Định lý này dẫn đến một kết quả khác thường được xem như một cách giải thích về mặt toán học nguyên tắc Occam’s Razor. Đại khái, nguyên tắc này nói rằng khi có một số giả thuyết tốt như nhau cạnh tranh trong việc giải thích cái gì đó thì nên chọn giả thuyết “đơn giản” nhất. Ví dụ: nếu cơ học cổ điển đã đủ để giải thích chuyển động của các hành tinh trong hệ mặt trời thì ta không cần thòng thêm một câu “Thượng đế tạo ra hệ mặt trời” nữa. (Như Laplace nói: “tôi không cần giả thuyết đó“.) Nếu ta chọn “đơn giản” = “ngắn gọn” thì từ định lý Valiant có thể chứng minh được rằng nếu learner đưa ra một hypothesis “đủ ngắn” và nhất quán với data thì learner đó là PAC-learner. (“Đơn giản” = “ngắn gọn” là cái nhìn của lý thuyết thông tin!)
Từ định lý Valiant, có thể thiết kế một số efficient PAC-learner khá dễ dàng. Ví dụ: ta đã thiết kế một PAC learner để học Boolean conjunctions trong đề mục 3.3. Tổng số giả thuyết dạng Boolean conjuction nhiều nhất là
. Dùng định lý Valiant, ta chỉ cần dùng thuật toán trong đề mục 2.1 và tìm một giả thuyết nhất quán với
mẫu là xong. Đây hiển nhiên vẫn là thuật toán thời gian đa thức. Tổng số mẫu ta cần thậm chí còn ít hơn tổng số mẫu cần trong thuật toán đã đưa trong đề mục 3.3.
Nếu ta giữ tổng số mẫu
cố định, có thể đảo định lý Valiant lại và viết
![\text{Prob}\left[ \text{err}_{\mathcal D}(h) \leq \log\left(|\mathcal H|/\delta\right)/m \right] \geq 1 – \delta \text{Prob}\left[ \text{err}_{\mathcal D}(h) \leq \log\left(|\mathcal H|/\delta\right)/m \right] \geq 1 – \delta](/blog/latexrender/pictures/39d929ee6364eeafae9daa57bae09ad1.gif)
Có thể hiểu kết quả này nôm na là: ta càng biết nhiều về lớp giả thuyết thì càng có ít giả thuyết (
giảm) và do đó lỗi của giả thuyết đưa ra càng bé, hoặc càng có nhiều data (
tăng) thì cũng thế.
5. VC-dimension và mối liên hệ giữa mô hình nhất quán và mô hình PAC, trường hợp lớp khái niệm vô hạn
Định lý Valiant xem ra có vẻ hữu dụng. Thế nhưng ta chẳng dùng nó được khi
lớn ơn một hàm đa thức, thậm chí vô hạn. Ví dụ 1: nếu ta muốn học lớp DNF dùng lớp DNF thì
. Ví dụ 2: tổng số các axis-parallel rectangles là vô hạn, vậy mà vẫn tồn tại một efficient PAC-learner cho bài axis-parallel rectangles.
May mà ta vẫn có thể chứng minh được một định lý tương tự định lý Valiant cho trường hợp
là vô hạn, nhưng ta sẽ phải giới thiệu một khái niệm mới cực kỳ thú vị, mang tính tổ hợp, gọi là VC-dimension của một lớp các hàm số. VC-dimension, viết tắt của Vapnik-Chervonenkis dimension, được Vapnik và Chervonenkis giới thiệu trong bài báo kinh điển của họ hồi năm 1971:
V. Vapnik and A. Chervonenkis. “On the uniform convergence of relative frequencies of events to their probabilities.” Theory of Probability and its Applications, 16(2):264–280, 1971.
Bài này của Hosking, Petnault và Sudan viết tổng quan về quan hệ giữa thống kê và data mining giới thiệu khá tốt trực quan của VC-dimension. Blumer et al. ở STOC 89 là bài báo đầu tiên giới thiệu VC-dimension vào ngành COLT; các kết quả của họ là nội dung chính của đề mục này của chúng ta.
5.1. Giới thiệu trực quan về VC-dimension
VC-dimension là một số đo “độ phức tạp” hoặc “dung tích” của một lớp các hàm số. Trong ngữ cảnh của chúng ta, lớp các hàm số chính là lớp giả thuyết. VC-dimension của một lớp giả thuyết là số
lớn nhất sao cho tồn tại
mẫu mà với bất kỳ cách gán nhãn nào cho các mẫu này ta cũng có thể tìm được một giả thuyết nhất quán với chúng. Dĩ nhiên, nếu không tồn tại số
lớn nhất này thì VC-dimension của lớp giả thuyết là vô hạn. VD-dimension cũng được định nghĩa cho cả các lớp hàm biến thực chứ không chỉ các lớp hàm trị 0, 1 như trong bài toán classification ta đang xét.
Trong ngữ cảnh của statistical learning theory thì VC-dimension là số đo “dung tích” của một tập hợp bất kỳ các statistical models. Bài này có một đoạn nói rất tốt nên tôi dịch lại ra đây:
Do khái niệm này được định nghĩa dựa trên tổng số mẫu và tính nhất quán của các models trên các mẫu, nó có thể áp dụng cho hầu như tất cả mọi loại models: tuyến tính, phi tuyến, nonparametric và tổ hợp của chúng, bao gồm mạng neural, classification & regression trees, classification & regression rules, radial basis functions, Bayesian networks, và hầu hết tất cả các họ models có thể tưởng tượng ra được. Thêm nữa, VC-dimension cũng là con số đánh giá rất tốt khả năng “khớp” dữ liệu của một lớp models, tốt hơn số tham số của models. Có các ví dụ models với 1 tham số mà có VC-dimension vô hạn, do đó khớp bất kỳ tập mẫu nào. Cũng có các models với ti tỉ tham số nhưng chỉ có VC-dimension nhỏ … Với một số họ models nhất định thì VC-dimension bằng tổng số tham số, ví dụ như các linear regression/discriminant models.
Vapnik và Chervonenkis dùng VC-dimension trong các bất đẳng thức chặn lỗi cho một lớp models cho trước. Cũng như trong PAC-learning, các chặn của họ không phụ thuộc vào phân bố của dữ liệu, phân bố nào cũng được. Bài báo của Blumer et al. áp dụng ý tưởng và vài kỹ thuật của họ vào PAC-learning.
5.2. Toán học của VC-dimension và vài thuộc tính
Lớp khái niệm
là một tập các hàm số
. Mỗi hàm số có thể xem là một tập con của
: tập các phần tử của
được hàm số gán nhãn bằng
. Với một tập mẫu
bất kỳ, định nghĩa
. Như vậy
là tập tất cả các tập con
sao cho tồn tại một giả thuyết
“cắt”
ra thành
(nhãn = 1) và
(nhãn = 0).
Tập mẫu
bị
băm nát như tương Tàu bởi
nếu
là tập tất cả các tập con của
. Nói cách khác,
bị băm nát như tương Tàu nếu, cho một tập con
bất kỳ ta luôn tìm được một giả thuyết
“cắt”
ra thành
(nhãn = 1) và
(nhãn = 0).
VC-dimension của
, ký hiệu là
là kích thước lớn nhất của một tập mẫu bị
băm nát. (Bỏ “như tương Tàu” đi cho đỡ mỏi tay.) Để hiểu rõ, bạn hãy tự giải thích một cách trực quan các khẳng định sau đây:
-
là tập các nửa đường thẳng mở bên trái trên trục thực,
-
là tập các đoạn đóng trên trục thực,
-
là tập các tập nhiều nhất
đoạn đóng trên trục thực,
-
là tập các nửa mặt phẳng,
-
là tập các nửa không gian (half-spaces) của
,
-
là tập các hình cầu của
,
-
là tập các axis-parallel rectangles,
-
là tập các đa giác lồi d đỉnh trên mặt phẳng,
-
là tập các tổ hợp logic của nhiều nhất
khái niệm trong một lớp khái niệm
cho trước, nếu
hữu hạn thì
hữu hạn.
-
là tập các tập các đoạn đóng trên thục thực, hoặc tập các tập mở (theo nghĩa hình topo), hoặc tập các Borel sets, thì
Bổ đề Sauer Định nghĩa
. Nếu
thì
Như vậy, bổ đề này cho ta biết nếu VC-dimension của lớp hypothesis là hữu hạn thì
sẽ bị chặn trên bởi một đa thức khi
đủ lớn. Kết quả này khá phản trực quan. Chú ý rằng, nếu VC-dimension là vô hạn thì ta luôn có
.
Chứng minh. Quy nạp theo
. Khi
thì dĩ nhiên bổ đề đúng. Khi
thì lớp hàm số
gán tất cả
cùng một giá trị (0 hoặc 1), do đó
.
Xét trường hợp tổng quát
, một tập mẫu
bất kỳ gồm
mẫu, và một phần tử
bất kỳ. Chú ý rằng
chẳng qua là một bộ các tập con của
. Số thành viên trong
có thể tính bằng tổng của hai số hạng: một là tổng số các các tập con
thỏa
, hai là các tổng số các tập con
sao cho
.
Dùng ý tưởng trên, định nghĩa

Ta có
. Dễ thấy rằng
vì nếu
băm nát một tập
nào đó thì
sẽ băm nát
. Áp dụng giả thuyết quy nạp, ta kết luận:
(Xem thêm bài này tôi chứng minh bổ đề Sauer bằng cách khác, có lẽ “sạch sẽ” hơn chứng minh trên.)
5.3. Định lý Valiant cho các lớp khái niệm vô hạn (nhưng có VC-dimension hữu hạn)
Định lý. Tồn tại một hằng số
sao cho: nếu learner có thể đưa ra một giả thuyết
nhất quán với
mẫu (i.d.d.) thì learner là một PAC-learner.
Chứng minh. Đây là một định lý tuyệt vời về mặt kỹ thuật. Nó khẳng định điều tôi đã biết: cùng một cây Ramirez trong tay John Williams thì khác xa trong tay NQH.
Giống như trong định lý Valiant trường hợp lớp giả thuyết hữu hạn, ta chỉ cần chặn trên xác suất sự kiện “tồi” sau đây xảy ra:
: sự kiện tồn tại một giả thuyết tồi
nhất quán với
(Nhớ rằng giả thuyết tồi là giả thuyết có lỗi
.)
Thay vì chặn xác suất
xảy ra, ta sẽ chặn nó bằng xác suất một sự kiện khác dễ “nắm bắt” hơn. Với một tập mẫu
bất kỳ, gọi
là tổng điểm trong
mà
. Bây giờ, gọi
là training set. Giả sử ta lấy thêm
mẫu nữa
(đây chỉ là công cụ phân tích, không phải ta lấy thêm mẫu thật sự khi chạy thuật toán). Định nghĩa một sự kiện thứ hai:
: sự kiện tồn tại một giả thuyết
sao cho
(nghĩa là
vẫn nhất quán với
trên
) nhưng
.
Dễ chứng minh rằng, nếu
thì
dùng bất đẳng thức Markov, và do đó
.
Giả sử ta thảy
đồng tiền xấp ngửa với xác suất 1/2 và tráo
với
nếu đồng tiền thứ
là ngửa. Gọi hai tập mẫu kết quả là
và
. Định nghĩa một sự kiện thứ ba:
: sự kiện tồn tại một giả thuyết
sao cho
(nghĩa là
vẫn nhất quán với
trên
) nhưng
.
Do tính i.i.d. của
và
, dễ thấy rằng
và
có xác suất bằng nhau. Cố định
và
và xét một giả thuyết
bất kỳ. Để cho
và
thì phải có ít nhất
chỉ số
sao cho
, và ít nhất
đồng tiền ra xấp/ngửa sao cho phần đúng nhảy vào
và phần sai nhảy vào
. Do đó
![\text{Prob}[M(h,T)=0, M(h,T')>m\epsilon/2 \ | \ S, S'] \leq 2^{-r} \leq 2^{-m\epsilon/2} \text{Prob}[M(h,T)=0, M(h,T')>m\epsilon/2 \ | \ S, S'] \leq 2^{-r} \leq 2^{-m\epsilon/2}](/blog/latexrender/pictures/18f9ec478b1cbb5f70bf152e9f44390b.gif)
Thay
bằng![E_{S,S'}\left( \text{Prob}[\exists h \in \mathcal H, M(h,T)=0, M(h,T') > m \epsilon / 2 \ | \ S, S'] \right) E_{S,S'}\left( \text{Prob}[\exists h \in \mathcal H, M(h,T)=0, M(h,T') > m \epsilon / 2 \ | \ S, S'] \right)](/blog/latexrender/pictures/382e8b9f1c1ce31f89aa7f6548d20f21.gif)
Sau đó, ta có thể thay
bằng
và suy ra
bằng với![E_{S,S'}\left( \text{Prob}[\exists h \in \Pi_{\mathcal H}(S \cup S'), M(h,T)=0, M(h,T')>m\epsilon/2 \ | \ S, S'] \right) E_{S,S'}\left( \text{Prob}[\exists h \in \Pi_{\mathcal H}(S \cup S'), M(h,T)=0, M(h,T')>m\epsilon/2 \ | \ S, S'] \right)](/blog/latexrender/pictures/196e870743b5ff115835207be7cd018a.gif)
Áp dụng union bound cho ta
![\text{Prob}[D] \leq |\Pi_{\mathcal H}(S \cup S')| 2^{-m\epsilon/2} \text{Prob}[D] \leq |\Pi_{\mathcal H}(S \cup S')| 2^{-m\epsilon/2}](/blog/latexrender/pictures/3c6ec1afa8349a42719807026a9682d0.gif)
Với sự giúp đỡ của bổ đề trong mục trước, phần còn lại chỉ là cơ bắp.
6. Một chặn dưới cho độ phức tạp mẫu.
Trong các đề mục 4 và 5, chúng ta đã thấy các điều kiện đủ để learner là PAC-learner: chỉ cần lấy đủ số mẫu và (nếu có thể) đưa ra một giả thuyết nhất quán với các mẫu này. Có hai câu hỏi tự nhiên: (1) nếu không thể đưa ra một giả thiết nhất quán với mẫu thì sao? (Vì nhiều lý do, trên thực tế khả năng này hoàn toàn có thể xảy ra. Chúng ta sẽ quay lại với nó trong bài tới.) và (2) tổng số mẫu cần thiết là bao nhiêu? Định lý dưới đây trả lời câu hỏi số 2 này.
Định lý: tồn tại một không gian mẫu
, một phân bố
trên đó, và một lớp giả thuyết
với VC-dimension bằng
thỏa mãn điều kiện sau đây: bất kỳ learner nào — nếu chỉ lấy
mẫu — thì
.
Như vậy, nếu chỉ lấy
mẫu thì learner không thể PAC-learn lớp khái niệm trên với tham số lỗi
và tham số độ tin cậy
.
Đại khái, chứng minh định lý trên rất đơn giản: xét một tập con
của
bị băm nát bởi
. Gán
là uniform distribution trên tập con này (phần ngoài tập con có density bằng không). Không mất tính tổng quát ta có thể giả sử
chính là tập tất cả các tập con của
. Như vậy, mỗi mẫu trong
thuộc về một nửa số khái niệm và không thuộc về một nửa số khái niệm còn lại. Giả sử ta lấy một khái niệm một cách ngẫu nhiên, và learner chỉ thấy một nửa của
, thì xác suất mà learner đoán sai trong nửa còn lại sẽ ít nhất là
. Do đó, tồn tại ít nhất một khái niệm mà learner đoán sai với xác suất
. Từ đó, dùng bất đẳng thức Markov, kết thúc định lý không khó khăn gì.

mẫu (i.d.d.) thì giả thuyết đó sẽ thỏa điều kiện
, nghĩa là learner là một PAC-learner.
. Nếu
thì
sao cho: nếu learner có thể đưa ra một giả thuyết
mẫu (i.d.d.) thì learner là một PAC-learner.
thỏa mãn điều kiện sau đây: bất kỳ learner nào — nếu chỉ lấy
.
(lớp khái niêm cho trước) sao cho chúng ta rất tin rằng ![\text{err}_{\mathcal D}(h) = \text{Prob}_{\mathbf x \in \mathcal D}[h(\mathbf x) \neq c(\mathbf x)] \text{err}_{\mathcal D}(h) = \text{Prob}_{\mathbf x \in \mathcal D}[h(\mathbf x) \neq c(\mathbf x)]](/blog/latexrender/pictures/6ad86c7ade507b80ed6e523b28c45245.gif)
càng nhỏ thì
. Kích thước của
, do đó “chặn thông tin” (information theoretic bound) cho ta biết sẽ có rất nhiều concepts cần ít nhất
bits để biểu diễn, không thể nhỏ hơn. (Đấy là trường hợp domain hữu hạn, nếu vô hạn thì còn tệ hơn nữa.)
.
bits. Ví dụ,
hoặc một vector gồm
từ khóa trong một email.