Có ai từng áp dụng ReInforcement Learning vào NLP chưa nhỉ?
Như tít. Mình muốn hỏi anh em có ai áp dụng học tăng cường (RL) vào NLP chưa nhỉ. Mình đang có 1 bài toàn: hàng ngày bạn có 1 bài viết , review liên tục từ user. Cần rút gọn, phân loại (setiment analys). Nhưng bài viết mỗi lần mới, review mỗi lần mới. Mà nếu sử dụng 1 model train từ đầu thì kết quả gần như cố định. Làm sao để nó có thể học mới từ những data mới? Và mình nghĩ đến RL. (Nếu có phương án khác thì nhờ anh em đề xuất giúp)
1 CÂU TRẢ LỜI
Bạn làm nhiều bài toán thế. 😃) Mình thì chưa làm về ReInforcement Learning, trước có nghe 1 lần nhưng bài toán khác, là tương tác với game thông qua ngôn ngữ con người nhập vào để bot tự chơi game 😦( Cũng không đọng được mấy
Nhưng bài toán của bạn thì mình nghĩ không nên và cũng không phải dùng ReInforcement Learning. ReInforcement Learning là bài toán agent thực hiện các actions trong môi trường để từ những cải thiện ở môi trường thay đổi lại state của agent(Mình đoán thế chứ mình không biết 😃) ). Nếu bạn coi đây là bài toán ReInforcement Learning vậy bạn phân tích thử agent của bạn là gì, agent thực hiện action gì để thay đổi state trong environment. Thế nên RL mới được áp dụng nhiều trong lý thuyết trờ chơi, lý thuyết điều khiển và các hệ thống tác tử,...
Quay lại với bài toán của bạn. Có 2 cách để giải quết. Cách 1: Vẫn không có gì thay đổi trừ việc khi có nhiều dữ liệu mới mà có vẻ khác với dữ liệu cũ thì bạn thực hiện train lại mô hình, cập nhật mô hình mới. Mình nghĩ hiện tại đa phần các công ty ở Việt Nam vẫn sử dụng phương pháp này. Nếu dữ liệu của bạn nhiều, mang tính tổng quát và không thay đổi theo xu hướng xã hội(mang tính tổng quát cao) thì việc phải cập nhật là rất ít. Mình khuyên bạn dùng cách này kết hợp lí thuyết về semi-supervised.
Cách 2; Đúng như mong muốn của bạn, mô hình liên tục được học từ dữ liệu mới và có thể dữ liệu của bạn quá lớn đến mức không thể huấn luyện được mô hình cùng lúc với toàn bộ dữ liệu. Nhưng không phải ReInforcement Learning mà là Online learning. Cái này mình thấy rất hay nhưng không khuyên dùng trừ khi dữ liệu stream của bạn là lớn.
Vẫn quanh đi quẩn loại mấy bài đó. Hướng đi này là hướng mà mình đang lo về sau này khi data khách hàng nhiều. Phải đi học lại thì hơi cực => hệ thống phần cứng phải thay đổi theo. Nên mình đang muốn học theo data mới nữa.
@kstn_hut_hat Nhiều phải nhiều như Viettel, ngoài ra thì không sợ )
Bạn tìm hiểu về Online Learning đi )
https://datascience.stackexchange.com/questions/12761/should-a-model-be-re-trained-if-new-observations-are-available Mình thấy có câu trả lời ở đây, mình có đọc thêm vài câu trả lời phía dưới thấy ý tưởng train batch của tombarti khá hay. Bạn tham khảo xem :v