Tải bản đầy đủ (.pdf) (52 trang)

Nlp Trí tuệ nhân tạo

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.15 MB, 52 trang )

lOMoARcPSD|32919683

NLP TAD - NLP
Trí Tuệ Nhân Tạo (Trường Đại học Bách khoa Hà Nội)

Studocu is not sponsored or endorsed by any college or university
Downloaded by V? Hoàng ()


lOMoARcPSD|32919683

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.1.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.v.

Downloaded by V? Hoàng ()


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? Hồng ()


lOMoARcPSD|32919683

1.1.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ư Bagof-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.1.1.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 ()


lOMoARcPSD|32919683

1.1.2.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 tồ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 ()


lOMoARcPSD|32919683

1.1.2.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 ()


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 ()


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 tố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 ()


lOMoARcPSD|32919683

Vì có q 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 skipgram để 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:
Q trình huấn luyện mơ hình CBOW khá giống với q 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 ()


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 ()


lOMoARcPSD|32919683

1.1.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à hồn thành nhiều nhiệm vụ khác nhau.

Downloaded by V? Hoàng ()


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 hồ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.

1.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.001
P[“năm thứ hôm là qua”] = 0
Các hướng tiếp cận
Ta có thể tiếp cận theo ba hướng chính:
 Knowledge-based Language Model
 Statistical Language Model (Count-based)
 Neural Network Language Model (Continuous-space)
1.2.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 tồn thư, để cải thiện khả năng dự
đố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 ()


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 tố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ự đốn hay gợi ý được từ.

1.2.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.

với N là số lượng cụm từ có độ dài N trong tập dữ liệu. Do đó, Statistical Language
Model cịn được gọi là Count based Model
Hoặc trong trường hợp việc xác định N là khó thực hiện, chúng ta hồn tồn có thể sử
dụng cơng thức xác suất có điều kiện trong trường hợp này:

Downloaded by V? Hoàng ()


lOMoARcPSD|32919683

Dựa theo cách thức xác định giá trị xác suất trong Statistical Language Model lại được
chia thành 2 hướng tiếp cận nhỏ hơn
 N-gram Language Models
Mơ hình n-gram giả định việc mơ hình ngơn ngữ là một chuỗi Markov, thỏa mãn
tính chất Markov. Chúng ta có tính chất Markov được định nghĩa như sau:
“Một q trình mang tính ngẫu nhiên có thuộc tính Markov nếu phân bố xác suất
có điều kiện của các trạng thái tương lai của quá trình, khi biết trạng thái hiện
tại, phụ thuộc chỉ vào trạng thái hiện tại đó”

Chuỗi Markov là một hệ thống tốn học mơ tả q trình chuyển đổi từ một trạng thái
sang trạng thái khác theo các quy tắc xác suất nhất định. Các trạng thái tương lai chỉ phụ
thuộc vào trạng thái hiện tại, và không phụ thuộc vào lịch sử của q trình.


Trong ngơn ngữ của xác suất có điều kiện và các biến ngẫu nhiên, chuỗi Markov là một
chuỗi

của các biến ngẫu nhiên thỏa mãn quy tắc độc lập có điều kiện:

Ma trận chuyển tiếp:

Downloaded by V? Hồng ()


lOMoARcPSD|32919683

Thuộc tính:
Chuỗi Markov có thể được mơ tả bằng ma trận chuyển tiếp P và một tập hợp trạng thái
{X0, X1, ...}. Các mơ tả sau đây có thể giúp hiểu rõ hơn về hành vi của chuỗi Markov:
 Trạng thái có thời gian k ≥ 1 nếu bất kỳ chuỗi nào bắt đầu từ trạng thái đó và trở
về trạng thái đó với xác suất dương phải thực hiện một số bước chia hết cho k.
Nếu k = 1, thì trạng thái đó được gọi là định kỳ, và nếu k > 1, trạng thái đó được
gọi là khơng định kỳ.
 Một chuỗi Markov là không thể rút gọn nếu tồn tại một chuỗi các bước giữa hai
trạng thái bất kỳ có xác suất dương.
 Trạng thái hấp thụ là một trạng thái mà Pii = 1. Trạng thái hấp thụ là rất quan trọng
cho cuộc thảo luận về việc hấp thụ chuỗi Markov.
 Một trạng thái được gọi là tái phát hoặc thoáng qua tùy thuộc vào việc chuỗi
Markov cuối cùng có quay trở lại nó hay khơng. Trạng thái tái phát được gọi là tái
phát dương tính nếu nó dự kiến sẽ trở lại trong một số bước hữu hạn và tái phát
null nếu không.
 Một trạng thái được gọi là ergodic nếu nó định kỳ, tái phát và không định kỳ. Một
chuỗi Markov là ergodic nếu tất cả các trạng thái của nó là ergodic.


Ví dụ:

Downloaded by V? Hoàng ()


lOMoARcPSD|32919683

=> Để có thể tính được xác suất của văn bản với lượng bộ nhớ chấp nhận được, ta sử
dụng xấp xỉ Markov bậc n:

Nếu áp dụng xấp xỉ Markov, xác suất xuất hiện của một từ được coi như chỉ phụ thuộc
vào n từ đứng liền trước nó () chứ khơng phải phụ thuộc vào tồn bộ dãy từ đứng trước
(). Như vậy, cơng thức tính xác suất văn bản được tính lại theo cơng thức:

Downloaded by V? Hồng ()


lOMoARcPSD|32919683

Với cơng thức này, ta có thể xây dựng mơ hình ngơn ngữ dựa trên việc thống kê các cụm
có ít hơn n+1 từ. Mơ hình ngơn ngữ này gọi là mơ hình ngơn ngữ N-gram.

Một cụm N-gram là 1 dãy con gồm n phần tử liên tiếp nhau của 1 dãy các phần tử cho
trước.

 Structured Language Models
Một nhược điểm của mơ hình n-gram là khơng đánh giá được ngữ cảnh của tồn bộ câu,
do đó, trong nhiều trường hợp, nó khơng thể đưa ra một xác suất chính xác. Một ví dụ có
thể kể đến như W = "The dogs chasing the cat bark" (tạm dịch là Những con chó vừa nãy

đuổi con mèo thì đang sủa). Động từ "bark" (sủa) ở đây nhận chủ ngữ là "The dogs", tuy
nhiên, nếu sử dụng 3-gram, mơ hình sẽ đi tính xác suất p(bark∣thecat), và kết quả thu
được sẽ là bằng 0.

Để giải quyết vấn đề này, Structured Language Models ra đời. Structured Language
Models hay mơ hình ngơn ngữ có cấu trúc, cố gắng hướng đến một hệ thống phân cấp
cho các từ vựng trong một câu văn. Việc này kết hợp với n-gram sẽ cho kết quả bao quát
được ngữ cảnh của tồn câu văn, cải thiện độ chính xác của mơ hình

Downloaded by V? Hồng ()


lOMoARcPSD|32919683

1.2.3 Neural Network Language Model
Neural Network Language Model cũng được chia thành 2 hướng tiếp cận chính
 Feed-forward neural network based LM
Feed-forward neural network được đề xuất để giải quyết 1 vấn đề khác của N-gram
liên quan đến độ thưa thớt dữ liệu (khi tồn tại nhiều câu, cụm từ trong thực tế nhưng
lại không được thu thập trong dữ liệu train). Mạng neural được sử dụng ở đây là 1
mạng neural 3 lớp (lớp đầu vào, lớp ẩn và lớp đầu ra.) , nhằm mục tiêu học được các
tham số cần thiết để tính xác suất

 Recurrent Neural Network Based LM: là một loại mơ hình ngơn ngữ trong đó các
mạng nơ-ron hồi quy được sử dụng để mơ hình hóa các phụ thuộc ngữ cảnh dài
hạn giữa các từ trong một câu hoặc đoạn văn. (nói ở phần sau)

Downloaded by V? Hoàng ()



lOMoARcPSD|32919683

CHƯƠNG 2. Các mơ hình xử lý ngơn ngữ tự nhiên
2.1 Mạng neural hồi quy (RNN)
Một mạng neural hồi quy (RNN) là một mạng neural chứa một chu trình trong các kết nối
của nó, và giá trị của các đơn vị phụ thuộc trực tiếp hoặc gián tiếp vào đầu ra trước đó
của nó.

Hình 9.1 minh họa cấu trúc của một mạng RNN. Tương tự như các mạng feedforward
thông thường, một vector đầu vào đại diện cho đầu vào hiện tại được nhân với ma trận
trọng số và sau đó được truyền qua một hàm kích hoạt phi tuyến để tính tốn các giá trị
cho một lớp đơn vị ẩn. Lớp ẩn này sau đó được sử dụng để tính toán một đầu ra tương
ứng, .
Lớp ẩn từ bước thời gian trước cung cấp một hình thức bộ nhớ hoặc ngữ cảnh, mã hóa
việc xử lý trước đó và thơng báo các quyết định sẽ được đưa ra tại các điểm thời gian sau
này.

Downloaded by V? Hoàng ()


lOMoARcPSD|32919683

1.1.2 Inference in RNNs

Việc tính tốn tiến (mapping một chuỗi đầu vào thành một chuỗi đầu ra) trong một mạng
RNN gần như giống với các mạng feedforward. Để tính tốn đầu ra cho đầu vào , chúng
ta cần giá trị kích hoạt cho lớp ẩn .

Ta đặt kích thước lớp đầu vào, lớp ẩn và lớp đầu ra lần lượt là Suy ra ba ma trận tham số
có kích thước

Trong bài toán phân loại mềm, các đầu ra được coi là một phân phối xác suất trên các lớp
đầu ra. Để tính tốn phân phối xác suất này, chúng ta sử dụng hàm softmax trên vector
đầu ra . Hàm softmax chuyển đổi các giá trị trong vector thành một phân phối xác suất,
trong đó giá trị của mỗi lớp đầu ra tương ứng với xác suất của lớp đó. Vì vậy, khi chúng
ta nói về phân loại mềm, thì tính tốn đầu ra của RNN bao gồm một phép tính softmax để
tính tốn phân phối xác suất trên các lớp đầu ra.

Để tính tốn đầu ra tại thời điểm t, cần giá trị của lớp ẩn từ bước thời gian t - 1, điều này
địi hỏi một thuật tốn suy luận tăng dần từ đầu đến cuối chuỗi (H9.3). Sự tuần tự của
RNN có thể được thấy bằng cách giải mã mạng theo thời gian. Các lớp đơn vị được sao
chép cho mỗi bước thời gian để minh họa rằng chúng có các giá trị khác nhau theo thời
gian. Các ma trận trọng số được chia sẻ qua thời gian(H9.4).

Downloaded by V? Hoàng ()



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×