2011-12-30 37 views
11

Tôi dường như không thể tìm thấy khuôn khổ ML/AI dựa trên C++, thực hiện nhiều thuật toán mạng nơron khác nhau. Tôi đã sử dụng Encog cho các mục đích này khi làm việc trong Java, nhưng tôi không thấy bất cứ điều gì tương tự, chức năng khôn ngoan, trong C++. Gần nhất tôi đã thấy là FANN, nhưng nó thiếu một số thứ, LMA & ủ ví dụ.C++ khung học máy học

CHỈNH SỬA: Cách thay thế tốt nhất tôi tìm thấy là Shark, nhưng như tôi đã nói, nó vẫn còn thiếu và chỉ có các tính năng được sử dụng phổ biến hơn, không có LMA, ủ hoặc PSO hoặc bất kỳ cấp nào.

+0

Các google fu còn yếu nhưng trông giống như đội encog có spin-off: http://code.google .com/p/encog-cpp/ – AJG85

+1

@ AJG85 Cam kết cuối cùng trong đó là tháng 10 năm 2010, trông khá chết với tôi ... – TC1

+1

@ TC1 bạn nói đã chết, tôi nói ** cuối cùng **. :) –

Trả lời

9

Ok, vì vậy sau vài ngày tìm kiếm bật và tắt, tôi nghĩ rằng tôi có thể nói khá an toàn rằng không có điều như vậy. Không có libs nào cung cấp bất cứ thứ gì thậm chí gần với mức độ tinh tế của Encog, và vì một trong những lý do chính tôi muốn nó trong C++ là thực tế là tôi cần tích hợp QT, tôi cho rằng tôi sẽ chỉ sử dụng Encog và Jambi. Tuy nhiên, về cơ bản ba khung/thư viện cung cấp các tính năng hơi hợp lý, và chúng thực sự là đủ nếu bạn không muốn LMA, PSO, ủ hoặc bất kỳ những thứ kỳ lạ hơn:

Đó là khá nhiều. Phần còn lại là chưa trưởng thành/đã chết hoặc chỉ thực sự quá thiếu chức năng-khôn ngoan để đề cập đến. Nếu tôi quyết định cuộn dự án của riêng mình (khá có thể, vì tôi rất cần nó cho công việc), tôi chắc chắn sẽ cập nhật địa điểm này bằng một liên kết.

1

Mặc dù OpenCV chủ yếu được sử dụng cho computer vision của nó machine learning library (ml) chứa các lớp có thể xử lý cây quyết định, Bayes phân loại, nhiều lớp Perceptron, thúc đẩy, vv

+0

Khá gọn gàng, tốt hơn bất cứ thứ gì tôi tìm thấy, nhưng vẫn còn, phần MLP chỉ hỗ trợ RProp .. – TC1

8

Các kho mloss có một số C++ dựa trên mã nguồn mở khung học máy. Cá nhân, tôi thấy dlib khá hữu ích.

+0

Bạn cũng có thể xem [thư viện MLPACK C++] (http://mlpack.org), trong đó có nhiều thuật toán học máy học – mtall

2

Đây là tốt nhất mà tôi từng thấy cho Neural Networks: EBLearn

+2

Tốt hơn cung cấp một số chi tiết. Giống như cách và tại sao bạn nghĩ nó là tốt nhất. –