Sự khác biệt giữa bootstrapping và xác nhận chéo là gì?


20

Tôi đã từng áp dụng xác nhận chéo K-Fold để đánh giá mạnh mẽ các mô hình học máy của mình. Nhưng tôi biết về sự tồn tại của phương pháp bootstrapping cho mục đích này. Tuy nhiên, tôi không thể thấy sự khác biệt chính giữa chúng về ước tính hiệu suất.

Theo như tôi thấy, bootstrapping cũng đang tạo ra một số tập con thử nghiệm + đào tạo ngẫu nhiên nhất định (mặc dù theo một cách khác), vậy điểm quan trọng, lợi ích của việc sử dụng phương pháp này so với CV là gì? Điều duy nhất tôi có thể nhận ra rằng trong trường hợp bootstrapping, người ta có thể tạo ra số lượng các tập con như vậy tùy ý trong khi đối với CV, số lượng phiên bản là một giới hạn cho việc này. Nhưng khía cạnh này dường như là một chút phiền toái.

Câu trả lời:


16

Cả xác thực chéo và bootstrapping đều là phương pháp lấy mẫu lại .

  • bootstrap thay thế với các thay thế (và thường tạo ra các tập dữ liệu "thay thế" mới với cùng số lượng các trường hợp như tập dữ liệu gốc). Do bản vẽ có thay thế, một bộ dữ liệu đã được khởi động có thể chứa nhiều trường hợp của cùng một trường hợp ban đầu và có thể bỏ qua hoàn toàn các trường hợp ban đầu khác.
  • các mẫu xác thực chéo mà không thay thế và do đó tạo ra các tập dữ liệu thay thế nhỏ hơn bản gốc. Các bộ dữ liệu này được tạo ra một cách có hệ thống để sau một số lượng bộ dữ liệu thay thế được chỉ định trước , mỗi trường hợp n ban đầu đã bị loại bỏ chính xác một lần. Điều này được gọi là xác thực chéo k-gấp hoặc xác thực chéo- x -out với x = nkn , ví dụ: xác thực chéo bỏ qua một lần bỏ qua 1 trường hợp cho mỗi bộ thay thế, tức làk=n.x=nkk=n

  • Như xác thực chéo tên cho thấy, mục đích chính của nó là đo lường hiệu suất (khái quát hóa) của một mô hình. Ngược lại, bootstrapping chủ yếu được sử dụng để thiết lập các hàm phân phối theo kinh nghiệm cho một phạm vi thống kê rộng rãi (phổ biến như trong phạm vi từ biến thể của trung bình sang biến thể của các mô hình trong các mô hình tập hợp đóng gói).

  • Tương tự bỏ qua một lần của thủ tục bootstrag được gọi là jackknifing (và thực sự cũ hơn bootstrapping).

  • Tương tự bootstrap với các ước tính xác thực chéo của lỗi tổng quát hóa được gọi là ước tính ngoài bootstrap (vì các trường hợp thử nghiệm là những trường hợp bị loại ra khỏi tập huấn luyện được ghép lại bootstrap).

[xác thực chéo so với xác thực ngoài bootstrap] Tuy nhiên, tôi không thể thấy sự khác biệt chính giữa chúng về ước tính hiệu suất.

k

Có một số nỗ lực để giảm sai lệch oob (.632-bootstrap, .632 + -bootstrap) nhưng liệu chúng có thực sự cải thiện tình hình hay không phụ thuộc vào tình huống trong tay.

Văn chương:


Điều duy nhất tôi có thể nhận ra rằng trong trường hợp bootstrapping, người ta có thể tạo ra số lượng các tập con như vậy tùy ý trong khi đối với CV, số lượng phiên bản là một giới hạn cho việc này.

nk

  • (nk)k
  • (2n1n) kết hợp với thay thế (một lần nữa vượt xa so với mô hình thay thế 100 hoặc 1000 thường được đánh giá)

3

Bootstrapping là bất kỳ thử nghiệm hoặc số liệu nào dựa trên lấy mẫu ngẫu nhiên với thay thế. Đây là phương pháp giúp trong nhiều tình huống như xác nhận hiệu suất mô hình dự đoán, phương pháp tập hợp, ước tính sai lệch và phương sai của tham số của mô hình, v.v. thực hiện lấy mẫu với sự thay thế từ bộ dữ liệu ban đầu, đồng thời giả định rằng các điểm dữ liệu chưa được chọn là tập dữ liệu thử nghiệm. Chúng tôi có thể lặp lại quy trình này nhiều lần và tính điểm trung bình dưới dạng ước tính hiệu suất mô hình của chúng tôi. Ngoài ra, Bootstrapping có liên quan đến các phương pháp đào tạo đồng bộ, bởi vì chúng ta có thể xây dựng một mô hình bằng cách sử dụng từng bộ dữ liệu bootstrap và túi đựng các mô hình này trong một nhóm bằng cách sử dụng biểu quyết đa số (để phân loại) hoặc tính trung bình (cho dự đoán bằng số) cho tất cả những mô hình này là kết quả cuối cùng của chúng tôi.

Xác thực chéo là một thủ tục để xác nhận hiệu suất của một mô hình và nó được thực hiện bằng cách chia dữ liệu huấn luyện thành k phần. Chúng tôi giả định rằng các phần k-1 là tập huấn luyện và sử dụng phần khác là tập kiểm tra của chúng tôi. Chúng ta có thể lặp lại rằng k lần khác nhau giữ một phần dữ liệu khác nhau mỗi lần. Cuối cùng, chúng tôi lấy điểm trung bình của điểm k làm ước tính hiệu suất của chúng tôi. Xác nhận chéo có thể bị sai lệch hoặc phương sai. Tăng số lượng phân chia, phương sai cũng sẽ tăng và độ lệch sẽ giảm. Mặt khác, nếu chúng ta giảm số lần chia tách, độ lệch sẽ tăng và phương sai sẽ giảm.

Tóm lại, xác thực chéo chia tách tập dữ liệu có sẵn để tạo nhiều bộ dữ liệu và phương pháp Bootstrapping sử dụng bộ dữ liệu gốc để tạo nhiều bộ dữ liệu sau khi lấy mẫu lại với thay thế. Bootstrapping nó không mạnh bằng xác thực chéo khi nó được sử dụng để xác thực mô hình. Bootstrapping liên quan nhiều hơn đến việc xây dựng các mô hình tập hợp hoặc chỉ ước tính các tham số.


2

Xác thực chéo là một kỹ thuật nhằm mục đích xem mô hình của bạn khái quát hóa tốt như thế nào về dữ liệu không được đào tạo. Nó không ảnh hưởng đến kết quả thuật toán của bạn, nó chỉ đánh giá chúng.

Bootstrapping là một phương pháp của Bộ đồng bộ tổng hợp các đầu ra của một số mô hình, chẳng hạn như Cây quyết định, để tạo ra một đầu ra trung bình . Về mặt kỹ thuật, nó làm giảm phương sai của thuật toán phân loại dựa trên một mô hình duy nhất, vì nó tính trung bình đầu ra trên đầu ra của một số biến thể của cùng một cấu trúc mô hình (với các tham số khác nhau). Do đó, nó thay đổi hiệu suất của thuật toán phân loại, nó không đánh giá nó.

Nói cách khác : Xác thực chéo đánh giá mức độ tổng quát của thuật toán, trong khi bootstrapping thực sự giúp thuật toán tổng quát hóa tốt hơn.

Bạn thực sự có thể sử dụng xác thực chéo trên mô hình bootstrapping để xem mức độ khái quát của nó.


3
Đó là đóng gói không bootstrapping phải không?
elemolotiv

0
  • Xác thực chéo: cung cấp các ước tính về lỗi kiểm tra.
  • Bootstrap: cung cấp lỗi tiêu chuẩn của các ước tính.
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.