Có một triển khai Rừng ngẫu nhiên hoạt động tốt với dữ liệu rất thưa thớt không?


23

Có một triển khai rừng ngẫu nhiên R hoạt động tốt với dữ liệu rất thưa thớt không? Tôi có hàng ngàn hoặc hàng triệu biến đầu vào boolean, nhưng chỉ hàng trăm hoặc hơn sẽ là TRUE cho bất kỳ ví dụ cụ thể nào.

Tôi còn khá mới với R và nhận thấy rằng có một gói 'Ma trận' để xử lý dữ liệu thưa thớt, nhưng gói 'RandomForest' tiêu chuẩn dường như không nhận ra loại dữ liệu này. Nếu có vấn đề, dữ liệu đầu vào sẽ được tạo ra bên ngoài R và được nhập.

Có lời khuyên nào không? Tôi cũng có thể xem xét sử dụng Weka, Mahout hoặc các gói khác.


Theo như tôi có thể nói, không có gói R nào cho các cây quyết định thưa thớt. Tôi tin rằng có các thuật toán ngoài kia cho các cây quyết định thưa thớt, nếu được triển khai trong R, có thể được sử dụng để xây dựng các khu rừng ngẫu nhiên.
Zach

2
Đây là một ứng cử viên tốt: cs.cornell.edu/~nk/fest . Nếu bạn có thể xuất dữ liệu của mình ở định dạng libsvm, bạn có thể sử dụng chương trình dòng lệnh này. Rất thích nhìn thấy một cổng R ...
Zach

Zach - liên kết dường như đã chết.
Benoit_Plante

2
@ cmoibenlepro liên kết là lowrank.net/nikos/fest
seanv507

Liên kết hoạt động tốt với tôi
David Marx

Câu trả lời:


13

Không, không có triển khai RF cho dữ liệu thưa thớt trong R. Một phần vì RF không phù hợp lắm với loại vấn đề này - việc đóng gói và lựa chọn phân tách tối ưu có thể lãng phí phần lớn cái nhìn sâu sắc của mô hình vào các khu vực chỉ có không.

Hãy thử một số phương pháp kernel hoặc tốt hơn là nghĩ đến việc chuyển đổi dữ liệu của bạn thành một số biểu diễn tươi tốt hơn với một số mô tả (hoặc sử dụng một số phương pháp giảm kích thước).


Câu trả lời của Hack-R chỉ ra gói xgboost, hoàn toàn có thể thực hiện các khu rừng ngẫu nhiên với ma trận thưa thớt.
Edgar

7

Trên thực tế, .

nó là xgboost , được tạo ra để tăng cường độ dốc eXtreme. Đây hiện là gói lựa chọn để chạy các mô hình có ma trận thưa thớt trong R cho nhiều người và như liên kết ở trên giải thích, bạn có thể sử dụng nó cho Random Forest bằng cách điều chỉnh các tham số !


4

Gói R "Ranger" nên làm.

https://cran.r-project.org/web/packages/ranger/ranger.pdf

Việc triển khai nhanh Rừng ngẫu nhiên, đặc biệt phù hợp với dữ liệu chiều cao.

So với RandomForest, gói này có lẽ là triển khai RF nhanh nhất tôi từng thấy. Nó xử lý các biến phân loại theo cách bản địa.


-4

Có một blog tên là Quick-R sẽ giúp bạn những điều cơ bản về R.

R hoạt động với các gói. Mỗi gói có thể làm một cái gì đó khác nhau. Có các gói được gọi là "RandomForests" sẽ chỉ là những gì bạn đang yêu cầu.

Xin lưu ý rằng dữ liệu thưa thớt sẽ gây ra vấn đề cho dù bạn áp dụng phương pháp nào. Theo hiểu biết của tôi, đó là một vấn đề rất mở và khai thác dữ liệu nói chung là một nghệ thuật hơn là một khoa học. Rừng ngẫu nhiên làm rất tốt tổng thể nhưng chúng không phải luôn luôn là phương pháp tốt nhất. Bạn có thể muốn thử một mạng lưới thần kinh với rất nhiều lớp, điều đó có thể giúp ích.


4
Không, RandomForest nổi tiếng là xấu với dữ liệu thưa thớt, do đó toàn bộ câu hỏi. tham số classwt không được thực hiện đúng trong suốt RandomForest. Quá khổ quá mức là một cách tiếp cận, nhưng nó làm rối lỗi OOB. Nhân tiện, gói không được gọi là 'RandomForests'.
smci

1
Các phần của điều này là đúng không phải là câu trả lời cho câu hỏi.
Sycorax nói phục hồi Monica
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.