Trong việc thúc đẩy, tại sao người học lại yếu thế?


28

Xem thêm một câu hỏi tương tự trên stats.SE .

Trong các thuật toán thúc đẩy như AdaBoostLPBoost , người ta biết rằng những người học "yếu" được kết hợp chỉ phải thực hiện tốt hơn cơ hội có ích, từ Wikipedia:

Các trình phân loại mà nó sử dụng có thể yếu (nghĩa là hiển thị tỷ lệ lỗi đáng kể), nhưng miễn là hiệu suất của chúng không phải là ngẫu nhiên (dẫn đến tỷ lệ lỗi 0,5 cho phân loại nhị phân), chúng sẽ cải thiện mô hình cuối cùng. Ngay cả các bộ phân loại có tỷ lệ lỗi cao hơn mong đợi từ bộ phân loại ngẫu nhiên cũng sẽ hữu ích, vì chúng sẽ có hệ số âm trong tổ hợp tuyến tính cuối cùng của bộ phân loại và do đó hoạt động giống như nghịch đảo của chúng.

  • Lợi ích của việc sử dụng yếu so với người học mạnh là gì? (ví dụ tại sao không tăng cường với các phương pháp học tập "mạnh mẽ" - chúng ta có dễ bị thừa hơn không?)

  • Có một số loại sức mạnh "tối ưu" cho những người học yếu? Và điều này có liên quan đến số lượng người học trong đoàn không?

Có lý thuyết nào để sao lưu câu trả lời cho những câu hỏi này không?


Người học yếu cũng tránh việc quá phù hợp với dữ liệu đào tạo
Aman Deep Gautam

Câu trả lời:


15

Vì vậy, boosting là một thuật toán học tập, có thể tạo ra các dự đoán có độ chính xác cao bằng cách sử dụng như một chương trình con khác, thuật toán này có thể tạo ra các giả thuyết tốt hơn một chút (bằng một đa thức nghịch đảo) so với đoán ngẫu nhiên.

Ưu điểm chính của nó là tốc độ.

Khi Schapire trình bày nó vào năm 1990, một bước đột phá ở chỗ nó cho thấy rằng một người học thời gian đa thức tạo ra các giả thuyết với sai số chỉ nhỏ hơn 1/2 có thể được chuyển thành một người học thời gian đa thức tạo ra các giả thuyết với một lỗi nhỏ tùy ý.

Vì vậy, lý thuyết để sao lưu câu hỏi của bạn là trong "Sức mạnh của khả năng học hỏi yếu" ( pdf ) trong đó về cơ bản, ông đã chỉ ra rằng việc học "mạnh" và "yếu" là tương đương.

Và có lẽ câu trả lời cho câu hỏi ban đầu là, "không có điểm nào xây dựng những người học mạnh mẽ khi bạn có thể xây dựng những người yếu hơn với giá rẻ hơn".


Từ các bài báo tương đối gần đây, có "Về sự tương đương của khả năng học hỏi yếu và khả năng phân tách tuyến tính: thư giãn mới và thuật toán thúc đẩy hiệu quả" ( pdf ) mà tôi không hiểu nhưng có vẻ liên quan và có thể được những người có học vấn cao hơn :)


1
+1 tài liệu tham khảo tốt đẹp. Vì vậy, có lẽ câu trả lời là: "không có điểm nào xây dựng những người học mạnh mẽ khi bạn có thể xây dựng những người yếu hơn với giá rẻ hơn"?
tdc

yeah, nghe có vẻ như vậy - Tôi đã cập nhật câu trả lời! Ngoài ra, nếu tôi hiểu chính xác, điều này không phụ thuộc vào sức mạnh của những người học yếu của bạn - họ chỉ cần "hơi" tốt hơn ngẫu nhiên.
andreister

1
Tôi nghĩ điều mà cả hai bạn thực sự muốn nói là: không có điểm nào trong việc xây dựng những người học mạnh mẽ tốn kém khi kỹ năng tương tự hoặc thậm chí tốt hơn có thể đạt được chỉ bằng cách kết hợp nhiều người học yếu kém giá rẻ . Thật vậy, nếu kỹ năng mà người học mạnh đạt được cao hơn nhiều so với kỹ năng mà người học yếu đạt được, thì tôi hoàn toàn có thể thấy được điểm trong việc xây dựng những người học mạnh ...
Antoine

9

Tôi sẽ giải quyết vấn đề quá mức, chưa được đề cập, với một lời giải thích trực quan hơn. Câu hỏi đầu tiên của bạn là:

Lợi ích của việc sử dụng yếu so với người học mạnh là gì? (ví dụ tại sao không tăng cường với các phương pháp học tập "mạnh mẽ" - chúng ta có dễ bị thừa hơn không?)

Những lý do chính, theo cách hiểu của tôi, là:

  • Tốc độ , như được bao phủ khá tốt trong các câu trả lời khác;
  • Cải thiện độ chính xác : nếu bạn đã có một người học mạnh mẽ, lợi ích của việc thúc đẩy ít liên quan hơn;
  • Tránh ăn quá nhiều , như bạn đoán. Nghĩ về nó theo cách này:

Những gì thúc đẩy làm là kết hợp nhiều giả thuyết khác nhau từ không gian giả thuyết để chúng ta kết thúc với một giả thuyết cuối cùng tốt hơn. Sức mạnh to lớn của việc thúc đẩy, do đó, đến từ sự đa dạng của giả thuyết kết hợp.

Nếu chúng ta sử dụng một người học mạnh mẽ, sự đa dạng này có xu hướng giảm: sau mỗi lần lặp sẽ không có nhiều lỗi (vì mô hình rất phức tạp), điều đó sẽ không làm tăng sự thay đổi giả thuyết mới. Với giả thuyết rất giống nhau, đoàn thể sẽ rất giống với một mô hình phức tạp duy nhất, do đó có xu hướng quá phù hợp!


4
Đây là câu trả lời thực sự.
Matthew Drury

6

Trong việc thúc đẩy chúng tôi sử dụng những người học yếu chủ yếu vì họ được đào tạo nhanh hơn so với những người học mạnh. Hãy suy nghĩ về nó. Nếu tôi sử dụng Mạng thần kinh nhiều lớp làm người học, thì tôi cần phải đào tạo rất nhiều trong số họ. Mặt khác, một cây quyết định có thể nhanh hơn rất nhiều, sau đó tôi có thể huấn luyện rất nhiều trong số chúng.

Giả sử tôi sử dụng 100 người học. Tôi huấn luyện NN trong 100 giây và cây quyết định trong 10 giây. Lần tăng đầu tiên của tôi với NN sẽ mất 100 * 100 giây trong khi lần tăng thứ hai với cây quyết định sẽ mất 100 * 10 giây.

Điều đó nói rằng tôi đã thấy các bài báo, trong đó sử dụng những người học mạnh mẽ trong việc thúc đẩy. Nhưng trong vấn đề đó, những người học mạnh mẽ đã nhanh chóng theo ý kiến ​​của tôi.

Tôi đã cố gắng đào tạo MLP trên Bộ dữ liệu phát hiện xâm nhập KDD99, (hơn 4 triệu) bằng Weka. Phải mất hơn 72 giờ trên máy của tôi. Nhưng việc tăng tốc (AdaBoostM1 với Cây quyết định - gốc quyết định) chỉ mất 3 giờ. Trong vấn đề này, rõ ràng là tôi không thể sử dụng việc tăng cường với một người học mạnh mẽ, đó là một người học mất quá nhiều thời gian.


1
"Tôi đã thấy các bài báo, trong đó sử dụng những người học mạnh mẽ trong việc thúc đẩy" - bất kỳ tài liệu tham khảo nào?
tdc
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.