2012-05-16 26 views
18

Tôi muốn bắt đầu thử nghiệm các thuật toán nhận dạng các mẫu trong dữ liệu. Tôi xử lý nhiều loại chuỗi (pixel hình ảnh, nhập văn bản, chuyển động của người dùng) và sẽ rất thú vị khi sử dụng Pattern Recognition để cố gắng lấy dữ liệu có ý nghĩa ra khỏi các tập dữ liệu khác nhau. Giống như phần lớn trang web, dữ liệu của tôi chủ yếu dựa trên văn bản hoặc khóa số nguyên.Thuật toán nhận dạng mẫu trong Node.js hoặc PHP?

Có bất kỳ lớp học nào cung cấp khung cơ bản để kiểm tra/tạo mẫu cho PHP hoặc Nodej không?

+3

PHP/JS có phải là công cụ thích hợp cho việc này không? – webbiedave

+3

@webbiedave, vì tôi có các ứng dụng PHP và node.js đang hoạt động trên dữ liệu này. Đó là công cụ * đủ mạnh để làm việc nhẹ. Có lẽ C sẽ tốt hơn, nhưng các ứng dụng của tôi không có trong C. – Xeoncross

+0

Tôi cũng nghĩ cả hai ngôn ngữ sẽ hoàn toàn hút vào đó vì không có mô hình luồng. Tôi sẽ sử dụng một cái gì đó như Java ví dụ cho việc này. Ngoài ra tôi nghĩ rằng đây là một vấn đề khá khó khăn và có lẽ chưa giải quyết được ..? – Alfred

Trả lời

11

Tôi chưa bao giờ tìm thấy một thư viện nào chứa đựng các mẫu phân tích khác nhau. Bạn có thể dễ dàng tìm thấy các giải pháp cụ thể.

N-Gram phân tích ví dụ có thể được thực hiện với phần mở rộng PHP này: http://pecl.php.net/package/TextCat

Có một số Bayes triển khai là tốt, thậm chí hướng dẫn.

Tôi chưa bao giờ tìm thấy bản đồ Kohonen hoặc bản đồ tự tổ chức được thực hiện bằng PHP, nhưng các perceptron nhiều lớp là tầm thường. IA có thể phân tích mẫu một cách công bằng.

Có các dự án liên kết PHP với OpenCV (thư viện để phân tích hình ảnh/video trong thời gian thực). Hiện tại, việc thực hiện duy nhất tôi biết là phát hiện khuôn mặt người trong ảnh. Mã nguồn mở là https://github.com/infusion/PHP-Facedetect, do đó, nó sẽ dễ dàng ràng buộc sự tốt lành OpenCV khác (OpenCV có thể làm được rất nhiều thứ với hình ảnh).

Chính PHP được giải thích, hầu hết các giải pháp nặng để phân tích mẫu sẽ không hoạt động tốt theo giới hạn này. Đây là lý do tại sao hầu hết các giải pháp cho điều này trong PHP được viết bằng C dưới dạng phần mở rộng.

+0

Hai dự án này là một khởi đầu tốt, nhưng tôi đang tìm kiếm các ví dụ nâng cao/hoàn chỉnh hơn bao gồm các hình thức xử lý văn bản khác ngoài [bộ lọc bigram cơ bản] (https://gitorious.org/textus/php-language-detection) (textcat). – Xeoncross

+0

Tôi đồng ý với tuyên bố cuối cùng. Nếu bạn đang cố gắng thực hiện một số tính toán nặng với PHP, bạn có thể muốn bắt đầu điều tra cách thực hiện nó trong C và sau đó thực hiện một phần mở rộng tùy chỉnh. – afuzzyllama

3

Đối với máy học tập, bạn có thể xem xét sử dụng một ngôn ngữ mà nhiều 'ở nhà' vì nó sẽ được dễ dàng hơn để diễn tả mô hình ..

Ví dụ mã nguồn cho các mới 'Machine Learning cho hacker' cuốn sách, viết bằng R có thể được tìm thấy trong Github https://github.com/johnmyleswhite/ML_for_Hackers

Và sau đó, cũng có Prediction API của Google, đó là tốt cho thử nghiệm https://developers.google.com/prediction/docs/developer-guide

0

tôi nhận ra đây là một câu hỏi cũ, nhưng kể từ khi nó được đưa ra tại đầu truy vấn của Google, nó nó nên có chứa một tham chiếu đến các ràng buộc Node cho opencv, node-opencv.