CHƯƠNG 1. Mô hình xử lý ngôn ngữ tự nhiên 1.1 Hoạt động Các mô hình NLP hoạt động bằng cách tìm mối quan hệ giữa các phần cấu thành của ngôn ngữ - ví dụ: các chữ cái, từ và câu được tìm thấy trong tập dữ liệu văn bản. Kiến trúc NLP sử dụng các phương pháp khác nhau để tiền xử lý dữ liệu, trích xuất tính năng và mô hình hóa.1 Tiền xử lý dữ liệu: Stemming và lemmatization: hai kỹ thuật rút gọn từ trong NPL o Stemming rút gọn từ bằng cách loại bỏ hậu tố của từ. VD: o Lemmatization là quá trình rút gọn từ (lemma) của từ dựa trên từ loại và ngữ cảnh của từ (So với stemming, lemmatization cung cấp kết quả chính xác hơn vì nó giữ lại một số thông tin ngữ nghĩa của từ) VD: Trong câu "Cats are chasing mice", từ "chasing" có thể được rút gọn thành "chase" bằng lemmatization, vì "chase" là dạng cơ bản của từ "chasing".
Tuy nhiên, nếu từ "chasing" xuất hiện trong câu "I am chasing a dream", thì nó sẽ không được rút gọn thành "chase", mà sẽ được giữ nguyên vì trong trường hợp này, "chasing" đang được sử dụng như một động từ. Sentence segmentation - Phân đoạn: là quá trình tách các câu trong văn bản thành các đoạn văn ngắn hơn, được gọi là các câu. Stop word removal: nhằm mục đích loại bỏ các từ phổ biến nhất không thêm nhiều thông tin vào văn bản. Ví dụ: "the", "a", "an", v.
Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Tokenization: Tokenization là quá trình chuyển đổi một văn bản thành các đơn vị nhỏ hơn, gọi là token. Các token thường là các từ hoặc các ký tự đơn nhất nhưng có thể có nhiều hơn tùy thuộc vào mục đích sử dụng. Downloaded by V? Hoàng (dohoangvu.2 Feature extraction Feature extraction: là quá trình tạo ra các đặc trưng mô tả một tài liệu trong tập văn bản chứa nó. Các đặc trưng này thường là các số và được tạo ra bằng các kỹ thuật như Bag- of-Words, TF-IDF, và kỹ thuật trích xuất đặc trưng chung như độ dài tài liệu, tính từ tích cực hoặc tiêu cực của từ và siêu dữ liệu.
Các kỹ thuật gần đây hơn bao gồm Word2Vec, GLoVE và học đặc trưng trong quá trình huấn luyện của mạng neural.1 Bag-of-Words Bag-of-Words đếm số lần mỗi từ hoặc n-gram (kết hợp của n từ) xuất hiện trong một tài liệu. Ví dụ, dưới đây, mô hình Bag-of-Words tạo ra một biểu diễn số học của tập dữ liệu dựa trên số lần xuất hiện của mỗi từ trong word_index trong tài liệu. Downloaded by V? Hoàng (dohoangvu.1 TF- IDF Trong Bag-of-Words, chúng ta đếm số lần xuất hiện của mỗi từ hoặc n-gram trong một tài liệu. Ngược lại, với TF-IDF, chúng ta trọng số hóa mỗi từ theo độ quan trọng của nó.
Để đánh giá tầm quan trọng của một từ, chúng ta xem xét hai điều: o Term Frequency (TF): Tỷ lệ quan trọng của từ đó trong tài liệu. TF(word in a document) = Số lần xuất hiện của từ đó trong tài liệu / Tổng số từ trong tài liệu o Inverse Document Frequency (IDF): Tỷ lệ quan trọng của từ đó trong toàn bộ tập văn bản. IDF(word in a corpus) = log(Tổng số tài liệu trong tập văn bản / Số tài liệu chứa từ đó) Một từ quan trọng nếu nó xuất hiện nhiều lần trong một tài liệu. Tuy nhiên, điều đó tạo ra một vấn đề, vì các từ như "a" và "the" thường xuất hiện nhiều.
Vì vậy, điểm số TF của chúng sẽ luôn cao. Chúng ta giải quyết vấn đề này bằng cách sử dụng IDF, điều này cao khi từ hiếm và thấp khi từ phổ biến trên toàn bộ tập văn bản. Điểm số TF-IDF của một thuật ngữ là tích của TF và IDF. Downloaded by V? Hoàng (dohoangvu.2 Word2Vec Word2Vec sử dụng một mạng neural cơ bản để học các word embeddings có số chiều cao từ văn bản thô.
Có hai biên thể là Skip-Gram và CBOW Mô hình Skip-Gram: Mô hình skip-gam giả định rằng một từ có thể được sử dụng để sinh ra các từ xung quanh nó trong một chuỗi văn bản Ví dụ, giả sử chuỗi văn bản là “the”, “man”, “loves”, “his” và “son”. Ta sử dụng “loves” làm từ đích trung tâm và đặt kích thước cửa sổ ngữ cảnh bằng 2. Như mô tả trong hình dưới, với từ đích trung tâm “loves”, mô hình skip-gram quan tâm đến xác suất có điều kiện sinh ra các từ ngữ cảnh (“the”, “man”, “his” và “son”) nằm trong khoảng cách không quá 2 từ: Ta giả định rằng, với từ đích trung tâm cho trước, các từ ngữ cảnh được sinh ra độc lập với nhau. Trong trường hợp này, công thức trên có thể được viết lại thành: Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Trong mô hình Skip-Gram, mỗi từ được biểu diễn bằng hai vector -chiều để tính xác suất có điều kiện.
Giả sử chỉ số của một từ trong từ điển là , vector của từ được biểu diễn là khi từ này là từ đích trung tâm và là khi từ này là một ngữ cảnh. Gọi c và o lần lượt là chỉ số của từ đích trung tâm và từ ngữ cảnh. Ta có: Huấn luyện mô hình skip-gram: Các tham số trong mô hình skip-gram là vector từ đích trung tâm và vector từ ngữ cảnh cho từng từ riêng lẻ. Trong quá trình huấn luyện, chúng ta sẽ học các tham số mô hình bằng cách cực đại hóa hàm hợp lý, còn gọi là ước lượng hợp lý cực đại.
Việc này tương tự với việc giảm thiểu hàm mất mát sau đây: Ta có thể dùng SGD (Stochastic Gradient Decent) để tối ưu hàm này. Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Trong mỗi vòng lặp ta chọn ra một chuỗi con nhỏ hơn bằng việc lấy mẫu ngẫu nhiên để tính toán mất mát cho chuỗi con đó. Sau đó tính Gradient để cập nhật mô hình: Sau khi huấn luyện xong, với từ bất kỳ có chỉ số là trong từ điển, ta sẽ nhận được tập hai vector từ và. Trong các ứng dụng xử lý ngôn ngữ tự nhiên, vector từ đích trung tâm trong mô hình skip-gram thường được sử dụng để làm vector biểu diễn một từ.
Mô hình túi từ liên tục (Continuous bag of words - CBOW): Mô hình này tương tự như mô hình skip-gram. Khác biệt lớn nhất là mô hình CBOW giả định rằng từ đích trung tâm được tạo ra dựa trên các từ ngữ cảnh phía trước và sau nó trong một chuỗi văn bản. Với cùng một chuỗi văn bản gồm các từ “the”, “man”, “loves”, “his” và “son”, trong đó “love” là từ đích trung tâm, với kích thước cửa sổ ngữ cảnh bằng 2, mô hình CBOW quan tâm đến xác suất có điều kiện để sinh ra từ đích “love” dựa trên các từ ngữ cảnh “the”, “man”, “his” và “son” Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Vì có quá nhiều từ ngữ cảnh trong mô hình CBOW, ta sẽ lấy trung bình các vector từ của chúng và sau đó sử dụng phương pháp tương tự như trong mô hình skip- gram để tính xác suất có điều kiện. Giả sử và là vector từ ngữ cảnh và vector từ đích trung tâm của từ có chỉ số i trong từ điển.
Gọi c là chỉ số của từ đích trung tâm , và là chỉ số các từ ngữ cảnh trong từ điển. Do đó, xác suất có điều kiện sinh ra từ đích trung tâm dựa vào các từ ngữ cảnh cho trước là Huấn luyện mô hình CBOW: Quá trình huấn luyện mô hình CBOW khá giống với quá trình huấn luyện mô hình skip-gram. Uớc lượng hợp lý cực đại của mô hình CBOW tương đương với việc cực tiểu hóa hàm mất mát: Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Với Tính đạo hàm: Sau đó, ta sử dụng cùng phương pháp đó để tính gradient cho các vector của từ khác. Không giống như mô hình skip-gam, trong mô hình CBOW ta thường sử dụng vector từ ngữ cảnh làm vector biểu diễn một từ.
Downloaded by V? Hoàng (dohoangvu.3 Modeling Sau khi dữ liệu đã được tiền xử lý, nó được đưa vào một kiến trúc NLP để mô hình hóa dữ liệu và hoàn thành nhiều nhiệm vụ khác nhau. Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Các đặc trưng số được trích xuất bằng các kỹ thuật như TF-IDF hoặc Bag-of-Words có thể được đưa vào các mô hình khác nhau tùy thuộc vào nhiệm vụ cần hoàn thành. Ví dụ, đầu ra từ TF-IDF có thể được cung cấp cho các mô hình như logistic regression, naive Bayes, decision trees hoặc gradient boosted trees trong các bài toán phân loại. Hoặc, trong bài toán nhận dạng thực thể tên, chúng ta có thể sử dụng mô hình hidden Markov kết hợp với n-grams.2 Mô hình ngôn ngữ Mô hình ngôn ngữ là một phân bố xác suất trên các tập văn bản.
Nói đơn giản, mô hình ngôn ngữ có thể cho biết xác suất một câu (hoặc cụm từ) thuộc một ngôn ngữ là bao nhiêu. Ví dụ: Khi áp dụng mô hình ngôn ngữ cho tiếng Việt P[“hôm qua là thứ năm”] = 0.1 Knowledge-based Language Model - Mô hình ngôn ngữ dựa trên kiến thức Mô hình này sử dụng các tri thức bổ sung từ bên ngoài, chẳng hạn như kiến thức từ đồng ngữ hoặc từ các nguồn thông tin khác như bách khoa toàn thư, để cải thiện khả năng dự đoán của mô hình. Khi các kiến thức này được định nghĩa bằng các luật, nó sẽ xây dựng lên một mô hình ngôn ngữ, do đó Knowledge-based Language Model còn được gọi là rule-based language model. Grammatical - Ungrammatical Intra-grammatical - Extra-grammatical Non-grammatical - Out-of-grammatical Qualitative LM - Quantitative LM Tuy nhiên cách tiếp cận này có khá nhiều nhược điểm: Downloaded by V? Hoàng (dohoangvu.com) lOMoARcPSD|32919683 Khó xây dựng: Do yêu cầu về kiến thức chuyên sâu về ngôn ngữ học mà lại thể hiện chúng dưới dạng mô hình và thuật toán thì rất tốn thời gian và chi phí.
Chỉ nhận diện được các từ thuộc intra-grammatical: Intra-grammatical có thể hiểu như là văn viết (formal), trái ngược với extra-grammatical là văn nói (informal). Nếu học ngôn ngữ thì ngôn ngữ nào cũng có sự khác biệt giữa văn nói và văn viết. Thiếu tính tần số (Lack of frequencies): Độ phổ biến của câu từ đóng vai trò không kém quan trọng, chẳng hạn như "How to recognize speech" và "How to wreck a nice beach" đều đúng ngữ pháp nhưng câu đầu đúng hơn vì phổ biến hơn và câu sau có nghĩa hơi kì lạ. Chỉ phân biệt được hợp lý hay không: Do cấu trúc của mô hình nên kết quả của mô hình này đối với một câu là có hợp lý (hay đúng ngữ pháp) của một ngôn ngữ hay không chứ không có dự đoán hay gợi ý được từ.2 Statistical Language Model (Count-based) Xây dựng mô hình ngôn ngữ dựa trên thống kê là việc cố gắng đi xác định giá trị của từ tập dữ liệu thu thập được.