Làm cách nào để tối ưu hóa thuật toán phân tích tình cảm cho các tập dữ liệu lớn hơn?


8

Tôi là một người không biết phân tích tình cảm và tìm thấy một nguồn tài nguyên tốt cho Bayesian Opinion Mining và một cách để làm cho nó tự cải thiện . Mặc dù vậy, tôi đã tự hỏi, nếu phân tích tối ưu phụ thuộc vào tập dữ liệu được cung cấp và vì tự cải thiện có nghĩa là thêm các mẫu đã biết vào tập dữ liệu (theo cách hiểu của tôi), ứng dụng sẽ trở nên quá tải với tập dữ liệu khổng lồ trong quá trình do Thời gian với ngày càng nhiều mẫu được thêm vào tập dữ liệu mỗi ngày? Điều gì nên là cách tiếp cận phù hợp để làm cho ứng dụng có thể mở rộng (nếu tôi đang sử dụng đúng thuật ngữ ở đúng nơi)?


3
Đây có thể là những gì bạn đang tìm kiếm. Nhưng không chắc chắn nếu Java là lựa chọn của bạn. Như vậy một nhận xét. mahout.apache.org . Nó có thể mở rộng và có một số thuật toán bạn có thể sử dụng.
đồ chơi

1
Làm thế nào lớn bộ dữ liệu bạn đang thực hiện ở đây? Mahout sẽ là cách để bạn tiếp tục nếu bạn xử lý hàng terabyte dữ liệu mới. Hãy xem Hadoop quá
Dan Ciborowski - MSFT

Câu trả lời:


1

Tôi nghe có vẻ như bạn đang xây dựng một trình phân loại văn bản với giai đoạn đào tạo được giám sát ngay từ đầu, nơi bạn gán nhãn theo cách thủ công. Mô hình của bạn đang hoạt động tốt (độ chính xác cao và thu hồi), vì vậy bạn muốn bổ sung mô hình đào tạo ban đầu bằng một quy trình đào tạo không giám sát qua các chuỗi đầu vào mới.

Những đầu vào mới này sẽ có một số tín hiệu đã biết (những từ bạn đã thấy trước đó) để mô hình của bạn có thể thực hiện tốt công việc của mình, nhưng chúng cũng sẽ có những tín hiệu không xác định (những từ bạn chưa từng thấy trước đây). Bạn muốn quá trình đào tạo không giám sát của bạn liên kết những từ mới đó với những từ đã biết, để "học". Bằng cách này, bạn tin tưởng rằng sự liên kết giữa từ mới và từ đã biết là chính xác. Bởi vì việc xử lý ngôn ngữ rất khó khăn, có thể bạn sẽ tự động tạo ra các liên kết tích cực sai, điều này sẽ bị loại trừ / sửa chữa trong một môi trường được giám sát. Do đó, bằng cách học không giám sát, bạn đang mạo hiểm hạ thấp độ chính xác của mình.

Câu hỏi của bạn là về việc "quá tải" với rất nhiều dữ liệu. Đây là một mối quan tâm công bằng và phụ thuộc rất nhiều vào kích thước dữ liệu của bạn, lựa chọn triển khai và kỳ vọng hành vi hệ thống. Mặc dù khả năng đáp ứng và khả năng xử lý với số lượng lớn dữ liệu là một điều, tôi cảm thấy rằng độ chính xác và thu hồi thuật toán ghi nhãn tình cảm của bạn có lẽ có tầm quan trọng lớn nhất.

Trong bài viết mà bạn đã liên kết , tác giả có điểm tin cậy khiến các hiệp hội không được giám sát chỉ được xem xét nếu có "độ tin cậy cao". Điều này là tốt, nhưng vẫn có nguy cơ rằng theo thời gian, độ chính xác tổng thể của bạn sẽ giảm xuống. Hệ thống của bạn sẽ phải được định kỳ đánh giá độ chính xác và thu hồi và được đào tạo lại. Ví dụ "Bad Santa" trong các bình luận là một ví dụ điển hình. Tôi khuyên bạn nên đọc về đào tạo bán giám sát và ghi nhãn này ngay trên các tập dữ liệu nhỏ trước khi tin tưởng nó hoạt động tốt trên các tập dữ liệu lớn hơn nhiều. Xử lý ngôn ngữ là khó!


0

Đối với các nhiệm vụ khác như một phần của việc gắn thẻ bài phát biểu , ngưng tụ sau khi tự đào tạo làm cho mô hình nhỏ hơn và tốt hơn! Nếu bạn xác định được vấn đề về khả năng mở rộng, hãy xem theo cách này trước khi thử tối ưu hóa mã của bạn.

Ý tưởng là sau khi tự đào tạo, bạn lặp đi lặp lại tạo một mô hình ban đầu trống rỗng. Sau đó, bạn thêm các điểm dữ liệu vào mô hình mới chỉ khi chúng không được phân loại chính xác. Điều này tránh tình trạng thừa và giữ cho mô hình của bạn nhỏ nhất có thể.

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.