Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Em chào anh!!! Anh có thể hướng dẫn em các bước chạy mã này khi tải xuống (word2vecVN) #3

Closed
cuong369 opened this issue Jun 15, 2018 · 5 comments

Comments

@cuong369
Copy link

Anh có thể hướng dẫn em các bước chạy mã này khi tải xuống (word2vecVN) - em thường chạy mã python trên win, ubuntu. các phiên bản python, gensim tương ứng của mã (vì em sợ nếu chạy các bản python mới hơn, gensim mới hơn) mã sau khi tải xuống sẽ không hoạt động. Ngoài ra một số thư viện khác nếu đi kèm như (tensorflow, vvv..) anh cũng cấp cho em phiên bản của nó luôn nhé. Em cũng muốn hỏi là "word2vec" có được xem như một mạng nơ ron không anh?
em cảm ơn anh. Chúc anh sức khoẻ, hạnh phúc, thành công trong công việc, trong cuộc sống (Mong nhận được hồi âm của anh sớm nhất). Em chào anh!!!

@sonvx
Copy link
Owner

sonvx commented Jun 28, 2018

Em xem ở folder word2vec-simple-visualization có gì ko hiểu ko? E làm theo hướng dẫn là ok thôi. Word2vec khi train đc thiết kế là two-layer neural network em nhé (ko phải là deep). Em xem 2 mô hình phổ biến được mô tả trong bài báo word2vec là SKIP-GRAM và CBOW để hiểu hơn.

@cuong369
Copy link
Author

Dạ Vâng! Em cảm ơn anh, mong anh có thật nhiều sức khoẻ, niềm vui, thuận lợi để có thể tạo ra nhiều sản phẩm dành cho người việt.

@cuong369
Copy link
Author

à, anh ơi! em có một thắc mắc khi đọc bài báo này "Cách tạo Word2vec Tiếng việt" từ link sau:
https://streetcodevn.com/blog/w2vvn
khi em đọc bài này có đoạn sau em thắc mắc, chưa hiểu. Em tra mạng rồi mà không có thông tin để tìm hiểu. Đoạn em thắc mắc, chưa hiểu là "văn bản Tiếng Việt đã tách từ là đầu vào của mạng nơ ron Recurrent Neural Network (RNN) để cho ra mô hình Work2Vector. Work2Vector là kết quả của một mô hình học nông của mạng nơ ron Recurrent Neural Network. ". Anh cho em hỏi là:
*) làm thế nào để mạng RNN tạo ra mô hình Word2vec khi truyền đầu vào là văn bản tiếng việt đã tách từ???
*) Tại sao lại gọi Word2vector là kết quả của một mô hình học nông của mạng nơ ron RNN ạ???
Nếu nằm trong tầm hiểu biết về RNN, phạm vi nghiên cứu của anh, em mong nhận được sự giải thích từ anh. Em cảm ơn anh rất nhiều

@sonvx
Copy link
Owner

sonvx commented Jul 3, 2018

Bài blog em gửi có thông tin cũng ko thống nhất nên a tóm tắt lại một số vđề trc khi trả lời câu hỏi của e nhé:

  1. Bài blog vẽ mô hình 1 kiểu và thực hành 1 kiểu. Thực hành dùng thư việc gensim (ko hề dùng RNN) và mô hình lại vẽ dùng RNN. Gợi ý: nên thay RNN bằng Learning Word Representation và giải thích là có thể dùng gensim để thực hiện.
  2. Câu hỏi tiếp theo là gensim dùng mô hình nào để học? Để nói kỹ thì sẽ không khác gì em lôi paper word2vec của Mikolov ra đọc, a tóm tắt sơ qua như sau. Em tạo một NN với 3 layers là input layer, hidden layer, và output layer. Sau đó đẩy dữ liệu học dưới dạng bài toán biết một từ và đoán từ bên cạnh nó - neighbor words (chính là mô hình Skip-Gram, còn mô hình CBOW là ngược lại - cho từ bên cạnh và đoán từ ở giữa (center word)). Sau khi train xong rồi e vứt output layer đi chỉ giữ lại hidden layer thì cái hidden layer này chính là word representation của đống text ban đầu. Chú ý input layeroutput layer có kích thước bằng nhau và chính là vocab_size.
  3. Mô hình tương tự trên đều được gensim làm sẵn rồi, e chỉ feed dữ liệu vào là ok. Nếu ko dùng gensim thì sao? Đương nhiên ko dùng gensim, e cũng có thể tự tạo 1 neural network (dùng keras hoặc TF).

Về câu hỏi của em:

  1. Làm thế nào để RNN học language model thì em đọc bài Recurrent neural network based language model của Mikolov. E chú ý cái hình 1 trong bài báo có đoạn context (t) -> context (t-1). Đây chính là đoạn RNN trong mô hình này. Về cơ bản RNNLM là version cũ được Mikolov giới thiệu năm 2010. Mô hình mất nhiều thời gian train trong khi hiệu quả kém.
  2. Tại sao lại gọi Word2vector là kết quả của một mô hình học nông của mạng nơ ron RNN ạ???
    Câu này nằm trong đoạn giải thích ở trên của anh. Chỉ cần 1 hidden layer e đã có good representation của đống text ban đầu.

@cuong369
Copy link
Author

cuong369 commented Jul 6, 2018

Em cảm ơn anh. Anh giải thích thật cặn kẽ. Cảm ơn anh nhiều nhé!!!

@sonvx sonvx closed this as completed Jul 26, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants