Tài nguyên cho việc học cách thực hiện các phương pháp tập hợp


13

Tôi hiểu về mặt lý thuyết (loại) cách chúng sẽ hoạt động, nhưng không chắc chắn về cách thực sự sử dụng một phương pháp tập hợp (như bỏ phiếu, hỗn hợp có trọng số, v.v.).

  • Các nguồn lực tốt để thực hiện các phương pháp tập hợp là gì?
  • Có tài nguyên cụ thể nào liên quan đến việc thực hiện trong Python không?

BIÊN TẬP:

Để làm rõ một số dựa trên cuộc thảo luận về các bình luận, tôi không tìm kiếm các thuật toán đồng bộ như RandomForest, v.v. Thay vào đó, tôi tự hỏi làm thế nào bạn có thể kết hợp các phân loại khác nhau từ các thuật toán khác nhau.

Ví dụ, giả sử ai đó sử dụng hồi quy logistic, SVM và một số phương pháp khác để dự đoán lớp của một quan sát nhất định. Cách tốt nhất để nắm bắt ước tính tốt nhất của lớp dựa trên những dự đoán này là gì?

Câu trả lời:


12

Một nơi tốt để bắt đầu là để có được một cái nhìn tổng quan về học tập hòa tấu. Đặc biệt là bạn sẽ muốn xem xét việc tăng cườngđóng gói . Một phương pháp khác được sử dụng bởi nhóm "Nhóm hòa tấu" trong Giải thưởng Netflix, được gọi là "pha trộn" hoặc xếp chồng tính năng .

Sau đó, chỉ cần tìm một số thư viện thực hiện những cái đó và làm việc từ đó. Một con googling nhanh chóng bật lên scikitmàu cam , cả hai đều nên có bao và tăng sức mạnh (và cả hai đều là Python).

Nếu ngoài việc chỉ sử dụng các phương pháp tập hợp, bạn muốn tìm hiểu một chút về lý thuyết, thì tôi nghĩ rằng bài viết này sẽ là một điểm khởi đầu tốt (làm theo các tài liệu tham khảo cho các phần bạn quan tâm).

Chúc mừng.


(+1) woa, tài liệu tham khảo tuyệt vời ở đây: O!
steffen

Cảm ơn. Chỉ cần cố gắng đóng góp một cái gì đó về một trong số ít chủ đề tôi biết bất cứ điều gì.
Stumpy Joe Pete

4

'Phương pháp tập hợp trong khai thác dữ liệu: Cải thiện độ chính xác thông qua việc kết hợp các dự đoán', Seni và Elder - Tài liệu tham khảo tuyệt vời về lý thuyết và thực hiện đồng bộ thực tế, nhưng mã đi kèm là dựa trên R.

'Học máy: Một viễn cảnh thuật toán,' S. Marsland - Văn bản thực tế dựa trên Python tuyệt vời, nhưng không dành riêng cho các khái niệm tập hợp thuần túy như tài liệu tham khảo đầu tiên.


2

Phản hồi của Stumpy Joe Pete là hoàn hảo, nhưng vì bạn đã đề cập đến việc triển khai Python, tôi muốn đề cập đến dự án sản xuất bia từ Đại học Liên bang de Pernambuco.

https://github.com/viisar/brew

from brew.base import Ensemble
from brew.base import EnsembleClassifier
from brew.combination import import Combiner

# create your Ensemble
clfs = your_list_of_classifiers # [clf1, clf2]
ens = Ensemble(classifiers = clfs)

# create your Combiner
# the rules can be 'majority_vote', 'max', 'min', 'mean' or 'median'
comb = Combiner(rule='majority_vote')

# now create your ensemble classifier
ensemble_clf = EnsembleClassifier(ensemble=ens, combiner=comb)
ensemble_clf.predict(X)

Tại thời điểm này, họ có sự lựa chọn đồng bộ thế hệ, kết hợp, cắt tỉa và năng động.

Hạn chế: chỉ phân loại; không xếp chồng trong phiên bản công khai hiện tại; tài liệu không nhiều.


0

Salford Systems có một gói phần mềm được gọi là Rừng ngẫu nhiên thực hiện việc này để phân loại và hồi quy cây. Tôi không có gói R miễn phí nào để cung cấp. Tôi tưởng tượng họ có một hướng dẫn sử dụng sẽ giải thích việc thực hiện của họ. Bằng cách tương tự, bạn có thể tìm ra cách thực hiện nó cho các phương thức tập hợp khác.


2
Có rất nhiều gói R tuyệt vời cho các nhóm cây: ví dụ RandomForest (thuật toán cổ điển), party :: cforest (rừng ngẫu nhiên sử dụng cây suy luận có điều kiện), gbm (tăng cường độ dốc của cây) để đặt tên cho một số. Tôi đọc OP như muốn triển khai các nhóm bất khả tri phân loại / hồi quy. Thủ tục đơn giản nhất là tất nhiên để dự đoán trung bình.
B_Miner

@B_Miner Thật vui khi biết rằng có các triển khai có sẵn trong R. Có lẽ ai đó có thể giải thích cho tôi tại sao một triển khai cụ thể trong Python là mong muốn (xin vui lòng loại bỏ sự thiếu hiểu biết của tôi về R). Tôi đọc OP để biết các nguồn mô tả cách thực hiện các phương thức tập hợp. Gói Salford là một gói mà tôi biết rằng có thể có một số tài liệu.
Michael R. Chernick

Mặc dù dựa trên các công trình tăng cường giấy Freund và Schapire nói chung theo như tôi biết, kết quả tốt nhất đã đến khi sử dụng phân loại cây.
Michael R. Chernick

Cá nhân tôi nhận được kết quả thực sự tốt bằng cách tính trung bình các xác suất đơn giản - nhưng tên miền của tôi quan tâm đến xác suất hơn là chọn nhãn lớp.
B_Miner

@MichaelChernick Nếu bạn đang làm việc tiên đoán thực sự căng thẳng (như ... một cuộc thi Kaggle), bạn sẽ không phải chọn một trong hai thúc đẩy hoặc ngẫu nhiên rừng. Bạn sẽ muốn tổng hợp càng nhiều mô hình càng tốt sẽ giúp bạn (thường là nhiều hơn một mô hình). Vì vậy, trong bối cảnh đó, các phương pháp tập hợp khác sẽ rất quan trọng, ngay cả khi các khu rừng ngẫu nhiên là cách tuyệt vời hơn bất cứ điều gì khác.
Stumpy Joe Pete


0

Hướng dẫn tập hợp Scikit-learn cung cấp việc đóng góităng các trình phân loại và hồi quy meta. Ngoài ra, thư viện mlxtend cung cấp các triển khai sắp xếp các siêu phân loại và hồi quy.

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.