Bonferroni Sửa chữa & học máy


9

Trong các nghiên cứu tâm lý học, tôi đã học được rằng chúng ta nên sử dụng phương pháp Bonferroni để điều chỉnh mức ý nghĩa khi kiểm tra một số giả thuyết trên một tập dữ liệu.

Hiện tại tôi đang làm việc với các phương pháp học máy như Support Vector Machines hoặc Random Forest để phân loại. Ở đây tôi có một tập dữ liệu duy nhất được sử dụng trong định giá chéo để tìm các tham số tốt nhất (như tham số kernel cho SVM) mang lại độ chính xác tốt nhất.

Trực giác của tôi nói (và có thể là hoàn toàn tắt) rằng đó là một vấn đề tương tự. Nếu tôi đang thử nghiệm quá nhiều kết hợp tham số có thể, khả năng cao là tôi sẽ tìm thấy kết quả mang lại kết quả tuyệt vời. Tuy nhiên, đây có thể chỉ là cơ hội.

Để tóm tắt câu hỏi của tôi:

Trong học máy, chúng tôi sử dụng phương pháp xác định chéo để tìm đúng các tham số của trình phân loại. Chúng ta càng sử dụng nhiều kết hợp tham số, cơ hội tìm thấy một kết quả tuyệt vời càng cao (tình trạng thừa?). Có phải khái niệm đằng sau sự điều chỉnh bonferroni cũng được áp dụng ở đây? Có phải là một vấn đề khác nhau? Nếu vậy, tại sao?


3
Vâng, đó là vấn đề tương tự, đôi khi được gọi là "nạo vét dữ liệu".
DSaxton

5
bạn phải tra tấn dữ liệu cho đến khi nó thú nhận
Soren Havelund Welling

Câu trả lời:


5

Có một mức độ mà những gì bạn đang nói về hiệu chỉnh giá trị p có liên quan, nhưng có một số chi tiết làm cho hai trường hợp rất khác nhau. Vấn đề lớn là trong lựa chọn tham số không có sự độc lập trong các tham số bạn đang đánh giá hoặc trong dữ liệu bạn đang đánh giá chúng. Để dễ thảo luận, tôi sẽ chọn k trong mô hình hồi quy K-Recent-Neighbor làm ví dụ, nhưng khái niệm này cũng khái quát cho các mô hình khác.

Hãy nói rằng chúng ta có một thể hiện xác thực V mà chúng ta dự đoán để có được độ chính xác của mô hình trong các giá trị k khác nhau trong mẫu của chúng ta. Để làm điều này, chúng ta tìm các giá trị k = 1, ..., n gần nhất trong tập huấn luyện mà chúng ta sẽ định nghĩa là T 1 , ..., T n . Đối với giá trị đầu tiên của chúng ta về k = 1 dự đoán của chúng tôi P1 1 sẽ tương đương với T 1 , cho k = 2 , dự đoán P 2 sẽ là (T 1 + T 2 ) / 2 hoặc P 1 /2 + T 2 /2 , chok = 3 nó sẽ được (T 1 + T 2 + T 3 ) / 3 hoặc P 2 * 2/3 + T 3 /3 . Trong thực tế với bất kỳ giá trị k nào, chúng ta có thể xác định dự đoán P k = P k - 1 (k - 1) / k + T k / k . Chúng tôi thấy rằng các dự đoán không độc lập với nhau do đó tính chính xác của các dự đoán sẽ không phải là một trong hai. Trong thực tế, chúng ta thấy rằng giá trị của dự đoán đang tiến gần đến giá trị trung bình của mẫu. Kết quả là, trong hầu hết các trường hợp, các giá trị thử nghiệm của k = 1:20 sẽ chọn cùng giá trị của k là thử nghiệm k = 1: 10.000 trừ khi phù hợp nhất bạn có thể thoát ra khỏi mô hình của mình chỉ là giá trị trung bình của dữ liệu.

Đây là lý do tại sao bạn có thể kiểm tra một loạt các tham số khác nhau trên dữ liệu của mình mà không phải lo lắng quá nhiều về kiểm tra giả thuyết. Vì tác động của các tham số đối với dự đoán không phải là ngẫu nhiên, độ chính xác dự đoán của bạn sẽ ít có khả năng có được sự phù hợp tốt chỉ do tình cờ. Bạn phải lo lắng về việc vẫn còn phù hợp, nhưng đó là một vấn đề riêng biệt từ nhiều thử nghiệm giả thuyết.

Để làm rõ sự khác biệt giữa thử nghiệm nhiều giả thuyết và phù hợp hơn, lần này chúng ta sẽ tưởng tượng tạo ra một mô hình tuyến tính. Nếu chúng ta liên tục lấy mẫu lại dữ liệu để tạo mô hình tuyến tính (nhiều dòng bên dưới) và đánh giá nó, trên dữ liệu thử nghiệm (các điểm tối), tình cờ một trong các dòng sẽ tạo ra một mô hình tốt (đường màu đỏ). Điều này không phải do nó thực sự là một mô hình tuyệt vời, mà là nếu bạn lấy mẫu đủ dữ liệu, một số tập hợp con sẽ hoạt động. Điều quan trọng cần lưu ý ở đây là độ chính xác có vẻ tốt trên dữ liệu thử nghiệm do tất cả các mô hình được thử nghiệm. Trong thực tế vì chúng tôi đang chọn mô hình "tốt nhất" dựa trên dữ liệu thử nghiệm, mô hình thực sự có thể phù hợp với dữ liệu thử nghiệm tốt hơn dữ liệu đào tạo.kiểm tra nhiều giả thuyết

Mặt khác, phù hợp hơn là khi bạn xây dựng một mô hình duy nhất, nhưng sắp xếp các tham số để cho phép mô hình phù hợp với dữ liệu đào tạo vượt quá những gì có thể khái quát. Trong ví dụ bên dưới, mô hình (dòng) hoàn toàn phù hợp với dữ liệu huấn luyện (vòng tròn trống) nhưng khi được đánh giá trên dữ liệu thử nghiệm (vòng tròn đầy) thì sự phù hợp còn tệ hơn nhiều.quá mức


Lập luận tốt đẹp cho tình huống đặc biệt này của việc chọn k
Soren Havelund Welling

Điều này không cụ thể đối với Hàng xóm gần nhất của K, tôi chỉ chọn mô hình đó vì toán học dễ nhìn hơn. Trong mọi mô hình, các lỗi xác thực được tạo bởi một tham số phạm vi (đó là những gì xác thực chéo là về) không độc lập với nhau. Điều này có nghĩa là ý tưởng về hiệu chỉnh Bonferroni tìm cách sửa giá trị p trong nhiều thử nghiệm của các mẫu độc lập không được áp dụng.
Barker

Trong trường hợp thực hiện tìm kiếm lưới khổng lồ với vô số kết hợp các tham số siêu tốc, một mô hình được trang bị hơi nhiều khả năng sẽ xuất hiện tốt nhất, được xác định bởi một số hàm mất dư bình phương, tại đó xảy ra để giải thích bộ xác thực tốt + là may mắn . Một mô hình hơi quá mức thường không chắc là may mắn vì sai lệch. Không giống như kNN, một số mô hình là cây quyết định, có thể mang lại sự phù hợp rất khác nhau bằng những thay đổi nhỏ trong siêu tham số và nếu thử nghiệm nhiều cây khác nhau ... Do đó, trên các mô hình được trang bị và thử nghiệm nhiều tham số có thể liên quan trong thực tế.
Soren Havelund Welling

Các mô hình cây quyết định nhận được kết quả rất khác nhau dựa trên các thay đổi tham số nhỏ thường chỉ ra rằng mô hình không ổn định và một lựa chọn khác nhau của hạt giống ngẫu nhiên cũng có thể bị đổ lỗi như chính các tham số. Tôi sẽ coi đây là một vấn đề ổn định hơn là phù hợp cho mỗi lần nói.
Barker

Chính xác. Đối với nhiều thuật toán mô hình cho dữ liệu đã cho, một loạt các cài đặt tham số mang lại các mô hình không ổn định. Một tập hợp con nhỏ của các mô hình không ổn định này có thể có được điểm dự đoán tốt hơn trên một bộ xác thực cụ thể, so với các mô hình chính quy hợp lý. Đây là lý do tại sao bạn phải xem xét ý nghĩa của nhiều thử nghiệm trong học máy, và không thể chỉ đơn giản dựa vào kết luận của ví dụ kNN, trong đó nó không phải là vấn đề lớn.
Soren Havelund Welling 2/11/2016

3

Tôi đồng ý với Barker về một số mở rộng, tuy nhiên lựa chọn mô hình không chỉ là kNN . Bạn nên sử dụng sơ đồ xác thực chéo, với cả xác thực và bộ kiểm tra. Bạn sử dụng bộ xác thực cho lựa chọn mô hình và bộ kiểm tra để ước tính cuối cùng về lỗi mô hình. Nó có thể được lồng CV gấp hoặc tách dữ liệu đào tạo đơn giản. Hiệu suất được đo bằng bộ xác thực của mô hình hoạt động tốt nhất sẽ bị sai lệch, vì bạn đã chọn mô hình hoạt động tốt nhất. Hiệu suất đo được của bộ kiểm tra không bị sai lệch, vì bạn thực sự chỉ thử nghiệm một mô hình. Bất cứ khi nào nghi ngờ, hãy bao bọc toàn bộ quá trình xử lý và mô hình hóa dữ liệu của bạn trong xác thực chéo bên ngoài để có được ước tính ít sai lệch nhất về độ chính xác trong tương lai.

Như tôi biết, không có hiệu chỉnh toán học đơn giản đáng tin cậy nào phù hợp với bất kỳ lựa chọn nào giữa nhiều mô hình phi tuyến tính. Chúng tôi có xu hướng dựa vào bootstrapping mạnh mẽ để mô phỏng, độ chính xác của mô hình trong tương lai là gì. Nhân tiện, khi ước tính lỗi dự đoán trong tương lai, chúng tôi giả định tập huấn luyện được lấy mẫu ngẫu nhiên từ một dân số và dự đoán kiểm tra trong tương lai được lấy mẫu từ cùng một dân số. Nếu không, ai biết ...

Nếu bạn ví dụ sử dụng CV 5 lần bên trong để chọn mô hình và CV 10 lần bên ngoài lặp lại 10 lần để ước tính lỗi, thì bạn không có khả năng tự đánh lừa mình với ước tính độ chính xác của mô hình quá tự tin.


2
đôi khi bộ xác nhận có thể được đặt tên là bộ hiệu chuẩn và bộ kiểm tra có tên bộ xác thực. Một chút bối rối ...
Soren Havelund Welling
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.