Câu trả lời:
Kích thước VC là ước tính cho khả năng của phân loại nhị phân. Nếu bạn có thể tìm thấy một tập hợp điểm, thì nó có thể bị phá vỡ bởi trình phân loại (nghĩa là phân loại chính xác tất cả các nhãn 2 n có thể ) và bạn không thể tìm thấy bất kỳ tập hợp n + 1 điểm nào có thể bị phá vỡ (ví dụ: đối với bất kỳ tập hợp nào của n + 1 điểm có ít nhất một thứ tự ghi nhãn để bộ phân loại không thể tách rời tất cả các điểm một cách chính xác), thì kích thước VC là n .
Trong trường hợp của bạn, trước tiên hãy xem xét hai điểm và x 2 , sao cho x 1 < x 2 . Sau đó, có 2 2 = 4 nhãn có thể
Tất cả các nhãn có thể đạt được thông qua bộ phân loại bằng cách đặt tham số a < b ∈ R sao cho
tương ứng. (Trên thực tế, có thể được giả định là wlog nhưng nó đủ để tìm một bộ có thể bị phá vỡ.)
Bây giờ, hãy xem xét ba điểm (!) Tùy ý , x 2 , x 3 và giả sử x 1 < x 2 < x 3 , sau đó bạn không thể đạt được nhãn (1,0,1). Như trong trường hợp 3 ở trên, các nhãn x 1 : 1 và x 2 : 0 ngụ ý a < x 1 < b < x 2 . Điều này ngụ ý x 3 > b và do đó nhãn của x 3 phải bằng 0. Do đó, bộ phân loại không thể phá vỡ bất kỳ tập hợp ba điểm nào và do đó kích thước VC là 2.
-
Có lẽ nó trở nên rõ ràng hơn với một phân loại hữu ích hơn. Chúng ta hãy xem xét các siêu phẳng (tức là các dòng trong 2D).
Thật dễ dàng để tìm thấy một bộ ba điểm có thể được phân loại chính xác cho dù chúng được dán nhãn như thế nào:
Đối với tất cả nhãn có thể, chúng ta có thể tìm thấy một siêu phẳng ngăn cách chúng một cách hoàn hảo.
Tuy nhiên, chúng tôi không thể tìm thấy bất kỳ bộ 4 điểm nào để chúng tôi có thể phân loại chính xác tất cả nhãn có thể. Thay vì một bằng chứng chính thức, tôi cố gắng trình bày một lập luận trực quan:
Giả sử bây giờ, 4 điểm tạo thành một hình có 4 cạnh. Sau đó, không thể tìm thấy một siêu phẳng có thể phân tách các điểm một cách chính xác nếu chúng ta dán nhãn các góc đối diện với cùng một nhãn:
Nếu chúng không tạo thành một hình có 4 cạnh, có hai "trường hợp biên": Các điểm "bên ngoài" phải tạo thành một hình tam giác hoặc tất cả tạo thành một đường thẳng. Trong trường hợp của tam giác, dễ dàng nhận thấy rằng việc ghi nhãn trong đó điểm "bên trong" (hoặc điểm giữa hai góc) được dán nhãn khác với các điểm khác không thể đạt được:
Trong trường hợp của một phân khúc dòng, ý tưởng tương tự được áp dụng. Nếu các điểm cuối được dán nhãn khác với một trong những điểm khác, chúng không thể được phân tách bằng một siêu phẳng.
Vì chúng tôi bao gồm tất cả các hình thành có thể có 4 điểm trong 2D, chúng tôi có thể kết luận rằng không có 4 điểm nào có thể bị phá vỡ. Do đó, kích thước VC phải là 3.
Kích thước VC của trình phân loại được xác định theo cách sau:
VC = 1
found = False
while True:
for point_distribution in all possible point distributions of VC+1 points:
allcorrect = True
for classdist in every way the classes could be assigned to the classes:
adjust classifier
if classifier can't classify everything correct:
allcorrect = False
break
if allcorrect:
VC += 1
continue
break
Vì vậy, chỉ có một cách để đặt ba điểm sao cho tất cả các phân phối lớp có thể trong số vị trí điểm này có thể được phân loại đúng cách.
Nếu bạn không đặt ba điểm trên một dòng, nhận thức sẽ đúng. Nhưng không có cách nào để nhận thức phân loại tất cả các phân phối lớp có thể là 4 điểm, bất kể bạn đặt điểm như thế nào
VC-Dimension 2: Nó có thể phân loại chính xác cả bốn tình huống.
VC-Dimension 3: Không, điều đó không hoạt động. Hãy tưởng tượng các lớp học true
và false
được ra lệnh như thế nào True False True
. Phân loại của bạn không thể đối phó với điều đó. Do đó, nó có kích thước VC là 2.