Bao nhiêu là quá nhiều quá mức?


9

Về mặt khái niệm, bạn vẽ đường thẳng giữa một mô hình overfit và mô hình phù hợp đầy đủ?

Rõ ràng rằng nếu mô hình của bạn đang thực hiện tốt hơn một vài phần trăm trên tập huấn luyện của bạn so với tập kiểm tra của bạn, thì bạn đang thừa. Nhưng giả sử về mặt lý thuyết, tôi đã đào tạo một mô hình trên một tập huấn luyện, sau đó xác nhận trên một tập kiểm tra và phát hiện ra rằng tập huấn luyện của tôi có độ chính xác cao hơn 0,2% so với tập kiểm tra của tôi. Đây có phải là quá nhiều quá mức?

Câu trả lời:


9

Rõ ràng rằng nếu mô hình của bạn đang thực hiện tốt hơn một vài phần trăm trên tập huấn luyện của bạn so với tập kiểm tra của bạn, thì bạn đang thừa.

Điều đó không đúng Mô hình của bạn đã học dựa trên đào tạo và chưa "nhìn thấy" trước tập kiểm tra, vì vậy rõ ràng nó sẽ hoạt động tốt hơn trên tập huấn luyện. Thực tế là nó hoạt động (một chút) tệ hơn trên bộ kiểm tra không có nghĩa là mô hình bị quá mức - sự khác biệt "đáng chú ý" có thể gợi ý nó.

Kiểm tra định nghĩa và mô tả từ Wikipedia :

Quá mức xảy ra khi một mô hình thống kê mô tả lỗi ngẫu nhiên hoặc tiếng ồn thay vì mối quan hệ cơ bản. Quá mức thường xảy ra khi một mô hình quá phức tạp, chẳng hạn như có quá nhiều tham số liên quan đến số lượng quan sát. Một mô hình đã được điều chỉnh quá mức nhìn chung sẽ có hiệu suất dự đoán kém, vì nó có thể phóng đại các biến động nhỏ trong dữ liệu.

Khả năng quá mức tồn tại bởi vì tiêu chí được sử dụng để đào tạo mô hình không giống với tiêu chí được sử dụng để đánh giá hiệu quả của một mô hình. Cụ thể, một mô hình thường được đào tạo bằng cách tối đa hóa hiệu suất của nó trên một số bộ dữ liệu đào tạo. Tuy nhiên, hiệu quả của nó được xác định không phải bởi hiệu suất của nó trên dữ liệu đào tạo mà bởi khả năng thực hiện tốt trên dữ liệu chưa xem. Quá mức xảy ra khi một mô hình bắt đầu "ghi nhớ" dữ liệu đào tạo thay vì "học" để khái quát hóa theo xu hướng.

Trong trường hợp cực đoan, mô hình quá mức phù hợp hoàn hảo với dữ liệu đào tạo và kém với dữ liệu thử nghiệm. Tuy nhiên, trong hầu hết các ví dụ thực tế, điều này tinh tế hơn nhiều và có thể khó hơn nhiều để đánh giá tình trạng thừa. Cuối cùng, có thể xảy ra rằng dữ liệu bạn có cho tập huấn luyện và kiểm tra của bạn là tương tự nhau, do đó mô hình dường như hoạt động tốt trên cả hai bộ, nhưng khi bạn sử dụng nó trên một số tập dữ liệu mới, nó hoạt động kém vì quá nhiều, như trong xu hướng dịch cúm của Google Ví dụ .

Hãy tưởng tượng bạn có dữ liệu về một số và xu hướng thời gian của nó (được vẽ dưới đây). Bạn có dữ liệu về nó đúng hạn từ 0 đến 30 và quyết định sử dụng 0-20 phần dữ liệu làm tập huấn luyện và 21-30 làm mẫu chờ. Nó hoạt động rất tốt trên cả hai mẫu, có một xu hướng tuyến tính rõ ràng, tuy nhiên khi bạn đưa ra dự đoán về sự không nhìn thấy mới trước khi dữ liệu cao hơn 30 lần, sự phù hợp tốt dường như là ảo tưởng.Y

nhập mô tả hình ảnh ở đây

Đây là một ví dụ trừu tượng, nhưng hãy tưởng tượng một cuộc sống thực: bạn có một mô hình dự đoán doanh số của một số sản phẩm, nó hoạt động rất tốt vào mùa hè, nhưng mùa thu đến và hiệu suất giảm. Mô hình của bạn quá phù hợp với dữ liệu mùa hè - có thể nó chỉ tốt cho dữ liệu mùa hè, có thể nó chỉ hoạt động tốt trên dữ liệu mùa hè năm nay, có thể mùa thu này là một ngoại lệ và mô hình vẫn ổn ...


3
Với các mô hình hạt nhân, chẳng hạn như SVM, không có gì lạ khi có hiệu suất tổng quát hóa tốt nhất với lỗi không trên tập huấn luyện. IMHO nhìn vào lỗi tập huấn luyện gây ra nhiều vấn đề hơn giá trị, tốt hơn là chỉ nhìn vào lỗi tập xác thực (mặc dù điều đó cũng có thể quá phù hợp nếu bạn điều chỉnh siêu tham số quá nhiều).
Dikran Marsupial

Có nên xem xét sự khác biệt giữa lỗi trong tập huấn luyện và tập kiểm thử trong khi so sánh hai mô hình khác nhau hoặc mô hình nào có ít lỗi nhất trên tập kiểm thử không?
Siddhesh

1
@Siddhesh bạn có hai mô hình: model1phân loại chính xác 2% trường hợp trong xe lửa và 2% trong bộ thử nghiệm (chênh lệch 0%), model2phân loại chính xác 90% trường hợp trong tàu và 50% trong bộ thử nghiệm (chênh lệch 30%) - cái nào sẽ bạn chọn ..? Sự khác biệt có thể gợi ý các vấn đề, nhưng nó không đo lường hiệu suất mô hình mỗi se .
Tim

@Tim: Nhưng điều gì xảy ra nếu lỗi kiểm tra có thể so sánh được, đây là câu hỏi tôi có số liệu thống kê.stackexchange.com/questions/202339/ mẹo
Siddhesh

1
@Siddhesh như được viết bởi Dikran Marsupial và như đã nêu trong câu trả lời của tôi và nhận xét ở trên, sự khác biệt không phải đề xuất bất cứ điều gì. Ví dụ trong câu trả lời của tôi minh họa tình huống không có sự khác biệt giữa các bộ kiểm tra và thử nghiệm nhưng mô hình vẫn hoạt động kém trên dữ liệu trong tương lai.
Tim
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.