Biện pháp nào về lỗi đào tạo để báo cáo cho Rừng ngẫu nhiên?


15

Tôi hiện đang điều chỉnh các khu rừng ngẫu nhiên cho một vấn đề phân loại bằng cách sử dụng randomForestgói trong R và không chắc chắn về cách báo cáo lỗi đào tạo cho các mô hình này.

Lỗi đào tạo của tôi gần bằng 0% khi tôi tính toán nó bằng các dự đoán mà tôi nhận được bằng lệnh:

predict(model, data=X_train)

nơi X_trainlà dữ liệu huấn luyện.

Trong câu trả lời cho một câu hỏi liên quan , tôi đọc rằng người ta nên sử dụng lỗi đào tạo ngoài túi (OOB) làm chỉ số lỗi đào tạo cho các khu rừng ngẫu nhiên. Số lượng này được tính từ các dự đoán thu được bằng lệnh:

predict(model)

Trong trường hợp này, lỗi đào tạo OOB gần hơn với lỗi kiểm tra 10 CV trung bình, là 11%.

Tôi đang tự hỏi:

  1. Có phải thường được chấp nhận để báo cáo lỗi đào tạo OOB là thước đo lỗi đào tạo cho các khu rừng ngẫu nhiên không?

  2. Có đúng là các biện pháp truyền thống về lỗi đào tạo là thấp giả tạo?

  3. Nếu biện pháp truyền thống về lỗi đào tạo thấp một cách giả tạo, thì tôi có thể so sánh hai biện pháp nào để kiểm tra xem RF có quá mức không?

Câu trả lời:


10

Để thêm vào câu trả lời của @Soren H. Welling.

1. Có phải thường được chấp nhận để báo cáo lỗi đào tạo OOB là thước đo lỗi đào tạo cho các khu rừng ngẫu nhiên không?

Không. Lỗi OOB trên mô hình được đào tạo không giống như lỗi đào tạo. Tuy nhiên, nó có thể phục vụ như một thước đo độ chính xác dự đoán.

2. Có đúng là các biện pháp truyền thống về lỗi đào tạo là thấp giả tạo?

Điều này đúng nếu chúng ta đang chạy một vấn đề phân loại bằng các cài đặt mặc định. Quá trình chính xác được mô tả trong một bài đăng trên diễn đàn bởi Andy Liaw , người duy trì randomForestgói trong R, như sau:

Đối với hầu hết các phần, hiệu suất trên tập huấn luyện là vô nghĩa. (Đó là trường hợp của hầu hết các thuật toán, nhưng đặc biệt là đối với RF.) Trong cài đặt mặc định (và được khuyến nghị), các cây được phát triển đến kích thước tối đa, điều đó có nghĩa là rất có thể chỉ có một điểm dữ liệu trong hầu hết các nút đầu cuối và dự đoán tại các nút đầu cuối được xác định bởi lớp đa số trong nút hoặc điểm dữ liệu đơn độc. Giả sử đó là trường hợp tất cả các thời gian; tức là, trong tất cả các cây, tất cả các nút đầu cuối chỉ có một điểm dữ liệu. Một điểm dữ liệu cụ thể sẽ là "trong túi" trong khoảng 64% số cây trong rừng và mỗi một trong số những cây đó có dự đoán chính xác cho điểm dữ liệu đó. Ngay cả khi tất cả các cây mà các điểm dữ liệu đó nằm ngoài dự đoán đều đưa ra dự đoán sai, theo đa số phiếu của tất cả các cây, bạn vẫn nhận được câu trả lời đúng cuối cùng Do đó, về cơ bản, dự đoán hoàn hảo về thiết lập tàu cho RF là "theo thiết kế".

nodesize > 1sampsize < 0.5N(xTôi,yTôi)

3. Nếu biện pháp lỗi đào tạo truyền thống thấp một cách giả tạo, thì tôi có thể so sánh hai biện pháp nào để kiểm tra xem RF có bị quá tải không?

Nếu chúng ta chạy RF với nodesize = 1sampsize > 0.5, thì lỗi đào tạo của RF sẽ luôn ở mức 0. Trong trường hợp này, cách duy nhất để biết liệu mô hình có bị quá mức hay không là giữ một số dữ liệu dưới dạng tập xác thực độc lập. Sau đó, chúng tôi có thể so sánh lỗi kiểm tra 10 CV (hoặc lỗi kiểm tra OOB) với lỗi trên bộ xác thực độc lập. Nếu lỗi kiểm tra 10 CV thấp hơn nhiều so với lỗi trên bộ xác thực độc lập, thì mô hình có thể bị quá mức.


2

[chỉnh sửa 21.7.15 8:31 CEST]

Tôi cho rằng bạn đã sử dụng RF để phân loại. Bởi vì trong trường hợp này, thuật toán tạo ra các cây được trồng hoàn toàn với các nút đầu cuối thuần túy chỉ có một lớp mục tiêu.

predict(model, data=X_train)

Dòng mã hóa này giống như một con chó đuổi theo [~ 66%] đuôi của chính nó. Dự đoán của bất kỳ mẫu đào tạo nào là lớp của chính mẫu đào tạo đó. Đối với hồi quy RF dừng nếu nút có 5 mẫu hoặc ít hơn trong đó hoặc nếu nút là thuần túy. Ở đây lỗi dự đoán sẽ nhỏ nhưng không phải là 0%.

Trong học máy chúng ta thường làm việc với không gian giả thuyết lớn. Điều này có nghĩa là sẽ luôn có nhiều giả thuyết / giải thích / mô hình chưa được làm sai lệch về cấu trúc dữ liệu của tập huấn luyện của chúng tôi. Trong thống kê cổ điển là không gian giả thuyết thường nhỏ và do đó, sự phù hợp mô hình trực tiếp là thông tin phù hợp với một số lý thuyết xác suất giả định. Trong học máy, sự thiếu phù hợp trực tiếp liên quan đến sự thiên vị của mô hình. Xu hướng là "tính không linh hoạt" của mô hình. Nó khôngdù sao cũng cung cấp một xấp xỉ sức mạnh tổng quát (khả năng dự đoán các sự kiện mới). Đối với các mô hình thuật toán, xác thực chéo là công cụ tốt nhất để ước lượng sức mạnh tổng quát, vì không có lý thuyết nào được đưa ra. Tuy nhiên, nếu các giả định mô hình của lấy mẫu độc lập thất bại, dù sao thì mô hình có thể vô dụng, ngay cả khi xác thực chéo được thực hiện tốt đề xuất khác. Cuối cùng, bằng chứng mạnh mẽ nhất là dự đoán thỏa đáng một số bộ thử nghiệm bên ngoài có nguồn gốc khác nhau.

Quay lại CV: Out-bag-bag thường là một loại CV được chấp nhận. Cá nhân tôi cho rằng OOB-CV cung cấp kết quả tương tự như 5 lần CV, nhưng đây là một phiền toái rất nhỏ. Nếu để so sánh, hãy nói RF với SVM, thì OOB-CV không hữu ích vì chúng ta thường tránh bỏ túi SVM. Thay vào đó, cả SVM và RF sẽ được nhúng vào cùng một sơ đồ xác thực chéo chính xác, ví dụ 10 lần lặp lại 10 lần với các phân vùng phù hợp cho mỗi lần lặp lại. Bất kỳ bước kỹ thuật tính năng nào cũng thường sẽ cần được xác nhận chéo. Nếu để giữ mọi thứ sạch sẽ, toàn bộ đường ống dữ liệu có thể được nhúng trong CV.

Nếu bạn điều chỉnh mô hình của mình bằng bộ kiểm tra (hoặc xác thực chéo), bạn sẽ lại tăng thêm không gian giả thuyết của mình và hiệu suất dự đoán được xác thực có khả năng quá lạc quan. Thay vào đó, bạn sẽ cần một bộ hiệu chuẩn (hoặc vòng CV hiệu chỉnh) để điều chỉnh và bộ xác thực kiểm tra (hoặc vòng CV xác thực) để đánh giá mô hình tối ưu cuối cùng của bạn.

Theo nghĩa cực đoan, điểm xác nhận của bạn sẽ chỉ là không thiên vị nếu bạn không bao giờ hành động với kết quả này, khi bạn nhìn thấy nó. Đây là nghịch lý của xác nhận, vì tại sao chúng ta sẽ có được một kiến ​​thức chỉ đúng nếu bạn không hành động theo nó. Trong thực tế, cộng đồng sẵn sàng chấp nhận một số sai lệch xuất bản, trong đó những nhà nghiên cứu có xác nhận quá lạc quan một cách ngẫu nhiên có nhiều khả năng xuất bản hơn so với những người không may mắn xác nhận quá bi quan. Vì vậy, đôi khi tại sao không thể sao chép các mô hình khác.


Cảm ơn vì điều này. Hai câu hỏi: (1) Dự đoán của bất kỳ mẫu đào tạo nào về lớp của chính mẫu đào tạo đó? Có phải cây nào không sử dụng mẫu đào tạo được sử dụng trong quy trình bỏ phiếu đa số không? (2) Vậy bạn sẽ đánh giá như thế nào nếu một biện pháp RF bị quá mức?
Berk U.

(1) vâng, tôi đã hơi nhanh ở đó, tôi chỉnh sửa câu trả lời. Bất kỳ mẫu nào cũng sẽ được inbag trong ~ 66% số cây. Nếu một mẫu trong cây bị bỏ túi trong quá trình huấn luyện, nó sẽ kết thúc ở cùng một nút đó trong dự đoán ở mức ~ 66%, và điều đó đủ để giành được đa số phiếu mỗi lần. Xác nhận điều này bằng cách hạ thấp kích thước xuống còn 30% mẫu xe lửa và nhận thấy sự gia tăng từ lỗi phân loại 0%. (2) Tôi nghĩ rằng tôi đã trả lời rằng. RF không phải là quá phù hợp, nhưng bạn có thể tạo một bối cảnh trong khi điều chỉnh, nơi bạn sẽ nhận được kết quả OOB-CV quá lạc quan. Nhúng toàn bộ quá trình của bạn vào một CV mới để biết chắc chắn.
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.