Vectơ từ

Trong xử lý ngôn ngữ tự nhiên (NLP), vectơ từ (còn được gọi là biểu diễn từ, nhúng từ, hay word embedding) là một cách biểu diễn từ ngữ. Vectơ từ được sử dụng trong phân tích văn bản. Thông thường, cách biểu diễn này là một vectơ giá trị thực mã hóa ý nghĩa của từ theo cách mà các từ gần nhau trong không gian vectơ được kỳ vọng là có ý nghĩa tương tự nhau. Vectơ từ có thể thu được bằng cách sử dụng các kỹ thuật mô hình ngôn ngữ và học đặc trưng (feature learning), trong đó các từ hoặc cụm từ trong từ điển được ánh xạ (mapping) thành các vectơ của số thực.

Các phương pháp ánh xạ này bao gồm mạng nơ-ron, sự giảm chiều dữ liệu trên ma trận đồng xuất hiện (co-occurrence matrix) của từ, các mô hình xác suất, phương pháp sử dụng cơ sở tri thức có thể giải thích được, và những ngữ cảnh rõ ràng mà từ xuất hiện.

Các vectơ từ và cụm từ, khi được sử dụng làm biểu diễn đầu vào cơ bản, đã được chứng minh là nâng cao hiệu suất trong các nhiệm vụ NLP như phân tích cú pháp và phân tích tình cảm.

Sự phát triển và lịch sử của phương pháp 
Trong ngữ nghĩa phân bố (distributional semantics), một phương pháp tiếp cận định lượng để hiểu nghĩa trong ngôn ngữ quan sát, các vectơ từ hoặc mô hình không gian đặc trưng ngữ nghĩa (semantic feature space model) đã được sử dụng như một "biểu diễn tri thức" (knowledge representation) từ khá lâu. Các mô hình này nhằm định lượng và phân loại các sự tương đồng về ngữ nghĩa giữa các đơn vị ngôn ngữ dựa trên tính chất phân bố của chúng trong các mẫu dữ liệu ngôn ngữ lớn. Ý tưởng cơ bản là "một từ được xác định qua những từ ngữ mà nó đi kèm", và đã được đề xuất trong một bài viết năm 1957 bởi John Rupert Firth, nhưng ý tưởng này cũng có nguồn gốc từ các nghiên cứu đương thời về hệ thống tìm kiếm và trong tâm lý học nhận thức.

Khái niệm về không gian ngữ nghĩa với các mục từ (từ hoặc các cụm từ có nhiều từ) được biểu diễn dưới dạng các vectơ hoặc vectơ từ dựa trên những thách thức trong việc tính toán các đặc tính phân bố và sử dụng chúng cho các ứng dụng thực tế để đo lường sự tương đồng giữa các từ, cụm từ, hoặc toàn bộ văn bản. Thế hệ đầu tiên của các mô hình không gian ngữ nghĩa là mô hình không gian vectơ dành cho truy xuất thông tin. Các mô hình không gian vectơ này dành cho từ và dữ liệu phân bố của chúng, khi được triển khai dưới dạng đơn giản nhất, tạo ra một không gian vectơ rất thưa thớt với độ chiều lớn (còn được gọi là lời nguyền của chiều không gian - curse of dimensionality). Việc giảm số lượng chiều bằng cách sử dụng các phương pháp đại số tuyến tính như phân rã giá trị suy biến (singular value decomposition - SVD) đã dẫn đến sự ra đời của phân tích ngữ nghĩa tiềm ẩn vào cuối những năm 1980 và phương pháp chỉ số ngẫu nhiên (random indexing) để thu thập các ngữ cảnh đồng xuất hiện của từ. Năm 2000, Yoshua Bengio và cộng sự đã cung cấp một loạt các bài báo có tựa đề "Các mô hình ngôn ngữ xác suất thần kinh" nhằm giảm số chiều lớn của các biểu diễn từ trong các ngữ cảnh bằng cách "học một biểu diễn phân tán cho các từ".

Một nghiên cứu được xuất bản tại NeurIPS (NIPS) 2002 đã giới thiệu việc sử dụng cả vectơ từ và vectơ tài liệu bằng cách áp dụng phương pháp kernel CCA cho các kho ngữ liệu song ngữ (và đa ngữ), đồng thời cung cấp một ví dụ sớm về học tự giám sát (self-supervised learning) của các vectơ từ.

Vectơ từ có hai kiểu khác nhau. Một kiểu, trong đó các từ được biểu diễn dưới dạng các vectơ của các từ cùng xuất hiện. Kiểu khác, trong đó các từ được biểu diễn dưới dạng các vectơ ngữ cảnh ngôn ngữ mà các từ xuất hiện; các kiểu này được nghiên cứu bởi Lavelli và cộng sự năm 2004. Roweis và Saul đã công bố trên Science về cách sử dụng "nhúng tuyến tính cục bộ" (locally-linear embedding - LLE) để khám phá các biểu diễn của các cấu trúc dữ liệu có độ chiều lớn. Hầu hết các kỹ thuật vectơ từ mới sau khoảng năm 2005 đều dựa vào kiến trúc mạng nơ-ron thay vì các mô hình xác suất và đại số, sau các công trình nền tảng của Yoshua Bengio và các đồng nghiệp.

Cách tiếp cận này đã được nhiều nhóm nghiên cứu áp dụng sau các tiến bộ lý thuyết vào năm 2010 về chất lượng của các vectơ và tốc độ huấn luyện mô hình, cũng như sau khi các tiến bộ về phần cứng cho phép khám phá một không gian tham số rộng hơn một cách có lợi. Vào năm 2013, một nhóm tại Google do Tomas Mikolov dẫn dắt đã tạo ra word2vec, một bộ công cụ vectơ từ có thể huấn luyện các mô hình không gian vectơ nhanh hơn các phương pháp trước đó. Phương pháp word2vec đã được sử dụng rộng rãi trong thử nghiệm và đóng vai trò quan trọng trong việc nâng cao sự quan tâm đến vectơ từ như một công nghệ, đưa hướng nghiên cứu này từ lĩnh vực chuyên biệt sang thử nghiệm rộng rãi hơn và cuối cùng mở đường cho các ứng dụng thực tiễn.

Đa nghĩa và đồng âm 

Lịch sử cho thấy, một trong những hạn chế chính của các vectơ từ tĩnh hoặc các mô hình không gian vectơ từ là những từ có nhiều nghĩa bị hợp nhất thành một biểu diễn duy nhất (một vectơ duy nhất trong không gian ngữ nghĩa). Nói cách khác, các hiện tượng từ đa nghĩa và từ đồng âm không được xử lý đúng cách. Ví dụ, trong câu "The club I tried yesterday was great!" (Câu lạc bộ tôi thử hôm qua rất tuyệt!), không rõ liệu từ club có liên quan đến club sandwich, clubhouse, golf club hay bất kỳ từ nào khác mà từ club có thể có. Nhu cầu xử lý nhiều nghĩa cho mỗi từ trong các vectơ khác nhau (vectơ từ đa nghĩa) là động lực cho nhiều đóng góp trong Xử lý Ngôn ngữ Tự nhiên (NLP) để chia nhỏ các biểu diễn đơn nghĩa thành các biểu diễn đa nghĩa.

Hầu hết các cách tiếp cận để tạo ra các vectơ từ đa nghĩa có thể chia thành hai loại chính trong việc biểu diễn nghĩa của từ, đó là không giám sát và dựa trên kiến thức. Dựa trên word2vec skip-gram, Multi-Sense Skip-Gram (MSSG) thực hiện việc phân biệt và biểu diễn nghĩa từ một cách đồng thời, cải thiện thời gian huấn luyện, đồng thời giả định một số lượng nghĩa nhất định cho mỗi từ. Trong Multi-Sense Skip-Gram không tham số (NP-MSSG), số lượng nghĩa này có thể thay đổi tùy thuộc vào từng từ. Kết hợp kiến thức trước đó từ các cơ sở dữ liệu từ vựng (ví dụ, WordNet, ConceptNet, BabelNet), Most Suitable Sense Annotation (MSSA) gán nhãn các nghĩa từ thông qua phương pháp không giám sát và dựa trên kiến thức, xem xét ngữ cảnh của từ trong một cửa sổ trượt được định trước. Sau khi các từ được phân biệt, chúng có thể được sử dụng trong một kỹ thuật vectơ từ chuẩn, nhờ đó các vectơ từ đa nghĩa được tạo ra. Kiến trúc của MSSA cho phép quy trình phân biệt và gán nhãn được thực hiện lặp lại một cách tự cải thiện.

Việc sử dụng các vectơ từ đa nghĩa được biết đến là giúp cải thiện hiệu suất trong một số nhiệm vụ NLP, chẳng hạn như gán nhãn từ loại, xác định quan hệ ngữ nghĩa, liên quan ngữ nghĩa, nhận dạng thực thể có tên và phân tích cảm xúc.

Từ cuối thập niên 2010, các biểu diễn ngữ nghĩa ngữ cảnh như ELMo và BERT đã được phát triển. Khác với các vectơ từ tĩnh, những biểu diễn này ở mức token, nghĩa là mỗi lần xuất hiện của một từ sẽ có biểu diễn riêng của nó. Các vectơ này phản ánh tốt hơn bản chất đa nghĩa của các từ, vì các lần xuất hiện của từ trong các ngữ cảnh tương tự sẽ được đặt trong các vùng tương tự của không gian vectơ BERT.

Đối với chuỗi sinh học: BioVectors
Vectơ từ cho các n-grams trong các chuỗi sinh học (ví dụ: DNA, RNA và Protein) đã được đề xuất bởi Asgari và Mofrad cho các ứng dụng tin sinh học. Được gọi là bio-vectors (BioVec) để chỉ chung các chuỗi sinh học với protein-vectors (ProtVec) cho các protein (chuỗi axit amin) và gene-vectors (GeneVec) cho các chuỗi gen, biểu diễn này có thể được sử dụng rộng rãi trong các ứng dụng học sâu trong proteomics và genomics. Kết quả được trình bày bởi Asgari và Mofrad cho thấy rằng BioVectors có thể mô tả các chuỗi sinh học theo các giải thích hóa sinh và vật lý sinh học về các mẫu tiềm ẩn.

Thiết kế trò chơi
Vectơ từ với các ứng dụng trong thiết kế trò chơi đã được đề xuất bởi Rabii và Cook như một cách để khám phá lối chơi phát sinh (emergent gameplay) bằng cách sử dụng các nhật ký dữ liệu trò chơi. Quá trình này yêu cầu phiên âm các hành động xảy ra trong một trò chơi thành ngôn ngữ hình thức và sau đó sử dụng văn bản kết quả để tạo vectơ từ. Kết quả do Rabii và Cook trình bày cho thấy rằng các vectơ kết quả có thể nắm bắt kiến thức chuyên môn về các trò chơi như cờ vua mà không được nêu rõ ràng trong quy tắc của trò chơi.

Vectơ câu (sentence embedding)

Ý tưởng này đã được mở rộng để biểu diễn cả các câu hoàn chỉnh hoặc thậm chí tài liệu, cũng gần giống như khái niệm "vectơ suy nghĩ" (thought vector). Vào năm 2015, một số nhà nghiên cứu đã đề xuất "vectơ bỏ qua câu" (skip-thought vector) như một phương pháp cải thiện chất lượng của dịch máy. Một phương pháp phổ biến hơn gần đây để biểu diễn câu là Sentence-BERT, hay SentenceTransformers, phương pháp này cải tiến BERT bằng cách sử dụng cấu trúc mạng siamese và triplet.

Phần mềm
Phần mềm để huấn luyện và sử dụng vectơ từ bao gồm Word2vec của Tomáš Mikolov, GloVe của Đại học Stanford, GN-GloVe, biểu diễn Flair (Flair embedding), ELMo của AllenNLP, BERT, fastText, Gensim, Indra, và Deeplearning4j. Phép phân tích thành phần chính (PCA) và T-Distributed Stochastic Neighbour Embedding (t-SNE) đều được sử dụng để giảm chiều của không gian vectơ từ và trực quan hóa vectơ từ và cụm từ.

Ví dụ ứng dụng
Ví dụ, fastText cũng được sử dụng để tính toán vectơ từ cho ngữ liệu văn bản trong Sketch Engine có sẵn trực tuyến.

Những hệ quả đạo đức
Vectơ từ có thể chứa đựng các định kiến và khuôn mẫu có trong bộ dữ liệu huấn luyện, như Bolukbasi và các cộng sự đã chỉ ra trong bài báo năm 2016 "Man is to Computer Programmer as Woman is to Homemaker? Debiasing Word Embeddings" rằng một bộ vectơ từ word2vec có sẵn công khai (và phổ biến) được huấn luyện trên văn bản Google News (một tập dữ liệu phổ biến), mặc dù được viết bởi các nhà báo chuyên nghiệp, vẫn cho thấy các liên kết từ ngữ không cân xứng phản ánh những định kiến giới tính và chủng tộc khi trích xuất các phép tương đồng từ. Ví dụ, một trong những phép tương đồng được tạo ra bằng cách sử dụng vectơ từ đã đề cập là "man is to computer programmer as woman is to homemaker".

Nghiên cứu của Jieyu Zhou và các cộng sự cho thấy rằng việc áp dụng các vectơ từ được huấn luyện này mà không giám sát cẩn thận có khả năng duy trì các định kiến hiện có trong xã hội, điều này được giới thiệu thông qua dữ liệu huấn luyện không thay đổi. Hơn nữa, vectơ từ thậm chí có thể làm gia tăng những định kiến này.

Tham khảo

Mô hình hóa ngôn ngữ
Mạng thần kinh nhân tạo
Xử lý ngôn ngữ tự nhiên
Ngôn ngữ học tính toán