LDA vs word2vec


39

Tôi đang cố gắng hiểu thế nào là tương đồng giữa Phân bổ Dirichlet tiềm ẩnword2vec để tính độ tương tự từ.

Theo tôi hiểu, LDA ánh xạ các từ thành một vectơ xác suất của các chủ đề tiềm ẩn , trong khi word2vec ánh xạ chúng thành một vectơ của các số thực (liên quan đến phân rã giá trị số ít của thông tin tương hỗ theo điểm, xem O. Levy, Y. Goldberg, "Nhúng từ thần kinh như Hệ số ma trận tiềm ẩn " ; xem thêm Word2vec hoạt động như thế nào? ).

Tôi quan tâm cả về quan hệ lý thuyết (có thể được coi là một khái quát, hoặc biến thể của cái khác) và thực tế (khi sử dụng cái này nhưng không phải cái khác).

Liên quan:


Tôi thấy bài thuyết trình này là tại chỗ: sl slideshoware.net/ChristopherMoody3/iêu
Piotr Migdal

Bạn nên nhìn vào Doc2vec (hay còn gọi là đoạn2vec). Vectơ tài liệu tóm tắt tài liệu thay vì từ ngữ.
sachinruk

Câu trả lời:


19

Một câu trả lời cho các mô hình Chủ đề và các phương thức đồng phát từ bao gồm sự khác biệt (Skip-gram word2vec là nén thông tin lẫn nhau theo chiều (PMI) ).

Vì thế:

  • không phương pháp nào là khái quát hóa cái khác,
  • vktôing-vmmộtn+vwommộtnvqbạneen
  • LDA thấy tương quan cao hơn hai yếu tố,
  • LDA cung cấp các chủ đề có thể giải thích.

Một số khác biệt được thảo luận trong các slide word2vec, LDA và giới thiệu một thuật toán lai mới: lda2vec - Christopher Moody .


1
Tôi muốn báo trước "LDA đưa ra các chủ đề có thể hiểu được" để nói rằng các chủ đề của LDA có khả năng diễn giải được. Ý tưởng về "chủ đề" của LDA là một cấu trúc toán học thuần túy không phải lúc nào cũng ánh xạ vào những gì con người nghĩ về một chủ đề.
Wayne

Một khái niệm quan trọng mà bạn bỏ qua là LDA sử dụng cách tiếp cận từ ngữ, vì vậy nó chỉ biết về các sự xuất hiện trong tài liệu, trong khi word2vec (hoặc có thể so sánh hơn là doc2vec) xem xét ngữ cảnh của một từ.
Wayne

13

Hai thuật toán khác nhau khá nhiều trong mục đích của chúng.

LDA chủ yếu nhằm mục đích mô tả các tài liệu và bộ sưu tập tài liệu bằng cách chỉ định phân phối chủ đề cho chúng, do đó có phân phối từ được gán, như bạn đề cập.

word2vec tìm cách nhúng các từ trong không gian vectơ nhân tố tiềm ẩn, một ý tưởng bắt nguồn từ các biểu diễn phân tán của Bengio et al. Nó cũng có thể được sử dụng để mô tả các tài liệu, nhưng không thực sự được thiết kế cho nhiệm vụ.


1
Về mặt lý thuyết, bạn có thể có được một cái gì đó tương tự với các nhúng vector của word2vec bằng cách tính P (topic | word) từ LDA, nhưng như @Bar cho biết các mô hình này được thiết kế cho các nhiệm vụ khác nhau. Nếu bạn so sánh các bản phân phối P (topic | word) của LDA với các nhúng vector của word2vec, tôi nghi ngờ chúng sẽ rất giống nhau. LDA đang nắm bắt các hiệp hội cấp độ tài liệu trong khi word2vec đang nắm bắt các liên kết rất cục bộ.
Zubin

4

Toptôic2Vectogether wtôith

D= ={w1:z1,...,wM:zM}ztôiwtôi

LCBÔiW(D)= =1MΣtôi= =1M(đăng nhậpp(wtôi|wext)+đăng nhậpp(ztôi|wext))

LSktôip-grmộtm(D)= =1MΣtôi= =1MΣ-kck,c0(đăng nhậpp(wtôi+c|wtôi)+đăng nhậpp(wtôi+c|ztôi))

CÔiSTôiVIẾT SAI RỒIE STôiMTôiLMộtRTôiTY

Hơn nữa, bạn sẽ tìm thấy bên trong đó một số cụm từ như:

"xác suất không phải là lựa chọn tốt nhất cho đại diện tính năng"

"LDA thích mô tả mối quan hệ thống kê về các lần xuất hiện hơn là thông tin ngữ nghĩa thực sự được nhúng trong các từ, chủ đề và tài liệu"

Điều này sẽ giúp bạn hiểu rõ hơn các mô hình khác nhau.


2

Các câu trả lời khác ở đây bao gồm sự khác biệt về kỹ thuật giữa hai thuật toán đó, tuy nhiên tôi nghĩ rằng sự khác biệt cốt lõi là mục đích của chúng: Hai thuật toán đó được thiết kế để làm những việc khác nhau:

word2veccuối cùng mang lại một ánh xạ giữa các từ và một vectơ có độ dài cố định. Nếu chúng ta so sánh nó với một cách tiếp cận nổi tiếng khác, sẽ hợp lý hơn khi sử dụng một công cụ khác được thiết kế cho cùng một mục đích, như Bag of Words (mô hình BOW). Cái này cũng làm như vậy nhưng thiếu một số tính năng mong muốn word2vecnhư sử dụng thứ tự các từ và gán nghĩa ngữ nghĩa cho khoảng cách giữa các từ đại diện.

LDAmặt khác tạo ra một ánh xạ từ một tài liệu có độ dài khác nhau đến một vectơ. Tài liệu này có thể là một câu, đoạn văn hoặc tệp văn bản đầy đủ nhưng nó không phải là một từ đơn. Sẽ có ý nghĩa hơn khi so sánh nó với doc2veccông việc tương tự và được giới thiệu bởi Tomas Mikolov ở đây (tác giả sử dụng thuật ngữ này paragraph vectors). Hoặc với LSIvấn đề đó.

Vì vậy, để trả lời trực tiếp hai câu hỏi của bạn:

  1. Không ai trong số họ là một khái quát hoặc biến thể của khác
  2. Sử dụng LDA để ánh xạ một tài liệu tới một vectơ có độ dài cố định. Sau đó, bạn có thể sử dụng vectơ này trong thuật toán ML truyền thống như trình phân loại chấp nhận tài liệu và dự đoán nhãn tình cảm chẳng hạn.
  3. Sử dụng word2vecđể ánh xạ một từ đến một vectơ có độ dài cố định. Bạn có thể sử dụng tương tự các vectơ này để cung cấp các mô hình ML là đầu vào là các từ, ví dụ như khi phát triển trình hoàn thành tự động cung cấp các từ trước đó và cố gắng dự đoán từ tiếp theo.

1

Từ quan điểm thực tế ...

LDA bắt đầu bằng một đầu vào từ trong đó xem xét những từ nào cùng xuất hiện trong tài liệu, nhưng không chú ý đến ngữ cảnh ngay lập tức của từ. Điều này có nghĩa là các từ có thể xuất hiện ở bất cứ đâu trong tài liệu và theo bất kỳ thứ tự nào, loại bỏ một mức thông tin nhất định. Ngược lại, word2vec là tất cả về bối cảnh mà một từ được sử dụng - mặc dù có lẽ không theo thứ tự chính xác.

"Chủ đề" của LDA là một cấu trúc toán học và bạn không nên nhầm lẫn chúng với các chủ đề thực tế của con người. Bạn có thể kết thúc với các chủ đề không có sự giải thích của con người - chúng giống như các tạo tác của quá trình hơn là các chủ đề thực tế - và bạn có thể kết thúc với các chủ đề ở các mức độ trừu tượng khác nhau, bao gồm các chủ đề bao gồm cùng một chủ đề về con người. Nó hơi giống như đọc lá trà.

Tôi đã thấy LDA hữu ích để khám phá dữ liệu, nhưng không hữu ích cho việc cung cấp giải pháp, nhưng số dặm của bạn có thể thay đổi.

Word2vec hoàn toàn không tạo chủ đề. Nó chiếu các từ vào một không gian nhiều chiều dựa trên cách sử dụng tương tự, do đó, nó có thể có những bất ngờ riêng về các từ mà bạn nghĩ là khác biệt - hoặc thậm chí ngược lại - có thể ở gần nhau trong không gian.

Bạn có thể sử dụng một trong hai để xác định xem các từ có "tương tự" hay không. Với LDA: các từ có trọng số tương tự trong cùng một chủ đề. Với word2vec: chúng có đóng (bằng một số biện pháp) trong không gian nhúng.

Bạn có thể sử dụng hoặc để xác định xem các tài liệu có giống nhau không. Với LDA, bạn sẽ tìm kiếm một hỗn hợp các chủ đề tương tự, và với word2vec, bạn sẽ làm một cái gì đó như thêm các vectơ của các từ của tài liệu. ("Tài liệu" có thể là một câu, đoạn, trang hoặc toàn bộ tài liệu.) Doc2vec là phiên bản sửa đổi của word2vec cho phép so sánh trực tiếp các tài liệu.

Mặc dù LDA loại bỏ một số thông tin theo ngữ cảnh với cách tiếp cận từ ngữ, nhưng nó có các chủ đề (hoặc "chủ đề"), mà word2vec không có. Vì vậy, thật đơn giản khi sử dụng doc2vec để nói: "Hiển thị cho tôi các tài liệu tương tự như tài liệu này", trong khi với LDA, thật đơn giản để nói, "Hiển thị cho tôi các tài liệu trong đó chủ đề A nổi bật." (Một lần nữa, biết rằng "chủ đề A" xuất hiện từ một quá trình toán học trên các tài liệu của bạn và sau đó bạn tìm ra chủ đề con người mà nó chủ yếu tương ứng với.)

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.