Tôi tự hỏi tại sao Skip-gram tốt hơn cho các từ không thường xuyên hơn CBOW trong word2vec. Tôi đã đọc khiếu nại trên https://code.google.com.vn/p/word2vec/ .
Tôi tự hỏi tại sao Skip-gram tốt hơn cho các từ không thường xuyên hơn CBOW trong word2vec. Tôi đã đọc khiếu nại trên https://code.google.com.vn/p/word2vec/ .
Câu trả lời:
Trong CBOW, các vectơ từ các từ ngữ cảnh được tính trung bình trước khi dự đoán từ trung tâm. Trong Skip-gram không có trung bình của các vectơ nhúng. Có vẻ như mô hình có thể học các biểu diễn tốt hơn cho các từ hiếm khi vectơ của chúng không được tính trung bình với các từ ngữ cảnh khác trong quá trình đưa ra dự đoán.
Đây là sự hiểu biết quá đơn giản và khá ngây thơ của tôi về sự khác biệt:
Như chúng ta biết, CBOW đang học cách dự đoán từ theo ngữ cảnh. Hoặc tối đa hóa xác suất của từ mục tiêu bằng cách nhìn vào ngữ cảnh. Và điều này xảy ra là một vấn đề cho những từ hiếm. Ví dụ, với yesterday was really [...] day
mô hình CBOW bối cảnh sẽ cho bạn biết rằng hầu hết có lẽ là từ beautiful
hoặc nice
. Những từ như delightful
sẽ nhận được ít sự chú ý của mô hình hơn, bởi vì nó được thiết kế để dự đoán từ có thể xảy ra nhất. Các từ hiếm sẽ được làm mịn qua rất nhiều ví dụ với các từ thường xuyên hơn.
Mặt khác, Skip-gram được thiết kế để dự đoán bối cảnh. Cho từ delightful
này nó phải hiểu nó và nói với chúng tôi, rằng có xác suất rất lớn, bối cảnh là yesterday was really [...] day
, hoặc một số bối cảnh có liên quan khác. Với Skip-gram , từ delightful
này sẽ không cố gắng cạnh tranh với từ beautiful
mà thay vào đó, delightful+context
các cặp sẽ được coi là những quan sát mới. Bởi vì điều này, Skip-gram sẽ cần nhiều dữ liệu hơn nên nó sẽ học cách hiểu những từ thậm chí hiếm.
Tôi vừa bắt gặp một bài báo cho thấy điều ngược lại: rằng CBOW tốt hơn cho những từ không thường xuyên hơn Skip-gram https://arxiv.org/abs/1609.08293 . Tôi tự hỏi các nguồn của khiếu nại đã nêu trên https://code.google.com.vn/p/word2vec/ .