II- NHIỆM VỤ VÀ NỘI DUNG : Phân tích và xác định vấn đề : nghiên cứu các giải thuật clustering đã có sẵn và lý thuyết về giải thuật clustering, để từ đó xây dựng một giải thuật cluster
Trang 1-
NGUYỄN HOÀNG PHÚC NGUYÊN
và vấn đề cải tiến mô hình ngôn ngữ trong
lĩnh vực xử lý văn bản tiếng Anh
Chuyên ngành : Công Nghệ Thông Tin
Mã số ngành : 01.02.10
LUẬN VĂN THẠC SĨ
TP HỒ CHÍ MINH, tháng 12 năm 2003
Trang 2
Cán bộ hướng dẫn khoa học : phó giáo sư, tiến sĩ Phan Thị Tươi
Cán bộ chấm nhận xét 1 : tiến sĩ Cao Hoàng Trụ
Cán bộ chấm nhận xét 2 : tiến sĩ Nguyễn Xuân Dũng
Luận văn thạc sĩ được bảo vệ tại HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ
TRƯỜNG ĐẠI HỌC BÁCK KHOA, ngày 08 tháng 01 năm 2004
Trang 3NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ và tên học viên : NGUYỄN HOÀNG PHÚC NGUYÊN Phái : Nam
Ngày, tháng, năm sinh : Ngày 20 tháng 12 năm 1978 Nơi sinh : An Giang Chuyên ngành : Công Nghệ Thông Tin MSHV : CNTT12-019
I- TÊN ĐỀ TÀI :
Clustering và vấn đề cải tiến mô hình ngôn ngữ trong lĩnh vực xử lý văn
bản tiếng Anh
II- NHIỆM VỤ VÀ NỘI DUNG :
Phân tích và xác định vấn đề : nghiên cứu các giải thuật clustering đã có sẵn và lý thuyết
về giải thuật clustering, để từ đó xây dựng một giải thuật clustering hoàn toàn tự
động, nhằm nâng cao hiệu quả của mô hình ngôn ngữ, thông qua việc xây dựng mô
hình ngôn ngữ bi-gram dựa trên tập cluster
Phương pháp luận : xây dựng giải thuật clustering dựa trên lý thuyết cơ bản của giải
thuật clustering, xác định mô hình ngôn ngữ
Hiện thực : minh hoạ chương trình
III- NGÀY GIAO NHIỆM VỤ : ngày 01 tháng 07 năm 2003
IV- NGÀY HOÀN THÀNH NHIỆM VỤ : ngày 08 tháng 01 năm 2004
V- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN : Phó giáo sư, tiến sĩ Phan Thị Tươi.
CÁN BỘ HƯỚNG DẪN
Phó giáo sư,Ts Phan Thị Tươi ï
CHỦ NHIỆM NGÀNH
Ts Dương Tuấn Anh
BỘ MÔN QUẢN LÝ NGÀNH
Nội dung và đề cương luận văn thạc sĩ đã được Hội Đồng Chuyên Ngành thông qua
Ngày tháng năm
Trang 4-o0o -
Qua hơn 5 tháng tìm tòi, nghiên cứu, từng bước phân tích và hiện thực giải thuật
clustering để xây dựng nên mô hình ngôn ngữ bigram dựa trên cluster, cuối cùng tôi đã
hoàn thành luận văn tốt nghiệp
Tôi xin gởi lời cảm ơn chân thành đến tất cả các thầy cô giảng dạy sau đại học của trường Đại học Báck Khoa thành phố Hồ Chí Minh vì sự dạy dỗ nhiệt tình trong những tháng ngày học tập và nghiên cứu Những kiến thức thầy cô cung cấp là nền tảng cơ bản cho tôi trong quá trình nghiên cứu và thực hiện luận văn này Tôi cũng xin gởi lời cảm
ơn chân thành nhất đến cô Phan Thị Tươi, ắt hẳn luận văn sẽ khó có thể hoàn thành nếu thiếu sự hướng dẫn nhiệt tình của cô Và tôi cũng xin gởi lời cám ơn đến thầy Dương Tuấn Anh đã tận tình chỉ dẫn cách trình bày luận văn này
Cuối cùng, tôi xin gởi lời cảm ơn thương yêu nhất đến toàn thể gia đình và ông bà, cha mẹ vì sự hy sinh, quan tâm, khuyến khích và hỗ trợ mạnh mẽ tôi trong suốt cuộc đời
Trang 5-o0o -
Một trong những công dụng thường thấy của mô hình ngôn ngữ là dự đoán xác suất của một chuỗi từ thuộc về một ngôn ngữ tự nhiên Tuy nhiên, nó thường gặp nhiều hạn chế khi dữ liệu mẫu không đầy đủ và số lượng thông số cần tính toán
quá lớn Giải thuật clustering có thể khắc phục được nhược điểm trên, vì nó có
thể giảm thiểu số lượng thông số cần tính toán của mô hình ngôn ngữ và không đòi hỏi một số lượng lớn dữ liệu mẫu Do đó, một trong những giải pháp hiệu quả
để giải quyết vấn đề đã nêu là xây dựng mô hình ngôn ngữ dựa trên tập cluster kết quả của giải thuật clustering Mặc dù, đã tồn tại nhiều giải thuật clustering như giải thuật Brown, giải thuật clustering từ của Pereira, nhưng chúng vẫn chưa tạo được tập cluster tốt nhằm để nâng cao hiệu quả của mô hình ngôn ngữ, thông qua việc làm giảm thông số perplexity
Trong luận văn này, tôi xin trình bày một giải thuật clustering phân chia các
đối tượng dữ liệu vào từng nhóm hay còn gọi là cluster, dựa trên các đặc điểm và
thuộc tính gần giống nhau của chúng như từ loại, ngữ nghĩa, xác suất phân bố, vai trò ngữ pháp và các từ xung quanh Từ đó, giải thuật của đề tài đã xây dựng được
mô hình ngôn ngữ bigram dựa trên tập cluster, có thể cải thiện được hiệu quả của mô hình bigram truyền thống của Markov
Giải thuật clustering của đề tài thao tác trên corpus Wall Street Journal, thu
thập hầu hết các thông tin về ngôn ngữ như cú pháp, ngữ nghĩa, ngữ cảnh xung
quanh và xác suất phân bố, để tạo nên tập cluster kết quả tốt
Trước tiên, giải thuật dựa vào thông tin cú pháp, để tạo nên một tập các tập
cluster cơ bản, như tập cluster danh từ, tập cluster động từ, tập cluster tính từ, …
Tiếp theo, giải thuật sử dụng hàm mục tiêu của agglomerative clustering có cấu trúc để kết hợp các cặp cluster giống nhau trong từng tập cluster cơ bản, căn cứ
vào các từ xung quanh, ngữ nghĩa và thônh tin chung của chúng
Hơn thế nữa, giải thuật của đề tài đã sử dụng tự điển điện tử WordNet, để
kiểm tra sự giống nhau về ngữ nghĩa và đưa thêm vào các cluster các từ đồng nghĩa Từ đó, đề tài đã xây dựng được mô hình ngôn ngữ bi-gram dựa trên tập
cluster
Trang 6-o0o -
One of the goals of statistical language models is to learn the joint probability function of sequences of words in a natural language However, statistical language models frequently suffer from lacking of training data and the large number of free parameters This problem can be alleviated by clustering algorithm, because it reduces the number of free parameters that need to be trained and needs a suitable amount of data only Therefore, one available approach to solve the above-mentioned problem is to construct a cluster-based language model Although there are many existing clustering algorithms, such as Brown clustering, word clustering of Pereira, etc, these algorithms cannot create
a set of good clusters to significantly improve the performance of a language model on the criterion of perplexity reduction
In this thesis, I would like to present a clustering algorithm that is used to classify words into clusters or groups, using their linguistic similarities such as lexicon, meaning, distribution probability, grammar role, and neighboring context This clustering algorithm is used to construct the cluster based bi-gram language model, improving the performance of the bi-gram one of Markov
The clustering algorithm of this thesis processes Wall Street Journal corpus, collecting all of linguistic information of English words such as lexicon, meaning, neighboring context and distribution probability in order to create the good set of clusters
First, basing on lexicon, it clusters words into basic clusters such as noun clusters, verb clusters, etc Next, it uses an agglomerative hierarchical clustering that has similarity function using neighboring context, meaning similarity, and mutual information to decide on merging a pair of most similar clusters in each basic cluster
Furthermore, it uses WordNet dictionary to check meaning similarity and adds a lot of synonyms to clusters That helps to build cluster-based bi-gram language model better than bi-gram model
Trang 7MỤC LỤC
MỤC LỤC 1
CHƯƠNG 1 PHÁT BIỂU VẤN ĐỀ 4
1.1 Đề tài nghiên cứu 4
1.2 Giới thiệu giải thuật clustering 4
1.3 Quá trình generalization 6
1.4 Giới thiệu mô hình ngôn ngữ 6
1.5 Ứng dụng của giải thuật clustering trong việc cải tiến mô hình ngôn ngữ thông qua generalization 8
1.6 Lý do thực hiện đề tài 10
1.7 Những đóng góp của đề tài 10
1.8 Sơ lược cấu trúc của luận văn 11
1.9 Qui ước về thuật ngữ và ký hiệu 12
1.10 Kết luận 13
CHƯƠNG 2 TỔNG THUẬT VỀ CÁC CÔNG TRÌNH ĐÃ CÓ TRÊN THẾ GIỚI LIÊN QUAN ĐẾN ĐỀ TÀI 14
2.1 Đặt vấn đề 14
2.2 Các giải thuật clustering xử lý dữ liệu số hoặc có liên quan đến không gian hình học 14
2.2.1 Các giải thuật partitional clustering dùng trọng tâm, phần tử trọng tâm 14
2.2.2 Các giải thuật clustering có thứ bậc 15
2.2.3 Những hạn chế của các giải thuật trên 15
2.3 Các giải thuật clustering xử lý ngôn ngữ tự nhiên 18
2.3.1 Giải thuật HAC của đại học Bar-IIan 18
2.3.2 Giải thuật clustering cải thiện mô hình ngôn ngữ bi-gram của John W Miller và Fil Alleva, nhân viên công ty Microsoft của Mỹ 18
2.3.3 Giải thuật Brown et al 1992 19
2.3.4 Giải thuật word clustering cho mô hình bigram và trigram 20
2.3.5 Giải thuật word clustering của Pereira, Tishby, và Lee 21
2.3.6 Giải thuật word clustering của Hang Li, phòng thí nghiệm NEC 22
2.3.7 Giải thuật clustering CIAULA cho động từ 23
2.3.8 Giải thuật clustering cho tính từ 24
2.3.9 Giải thuật word clustering sử dụng thẻ có cấu trúc 25
2.4 Kết luận 25
CHƯƠNG 3 CƠ SỞ LÝ THUYẾT VÀ PHƯƠNG PHÁP 27
3.1 Đặt vấn đề 27
3.2 Cơ sở toán học 27
Trang 83.3 Mô hình Markov (n-gram) 32
3.4 Perplexity Thông số đánh giá chất lượng mô hình ngôn ngữ 33
3.5 Một số điểm ngữ pháp cơ bản của tiếng Anh 34
3.5.1 Câu đơn 35
3.5.2 Câu ghép 35
3.5.3 Danh từ 35
3.5.4 Động từ 36
3.5.5 Tính từ 36
3.5.6 Giới từ, mạo từ, phó từ 36
3.6 Corpus 37
3.7 Tự điển điện tử WordNet 41
3.8 Phương pháp cơ bản mô hình hoá các đối tượng ngôn ngữ trong cluster 42 3.9 Phương pháp cơ bản xác định ngữ nghĩa của từ 43
3.10 Phương pháp phân loại K nearest neighbor 44
3.11 Giải thuật clustering 44
3.11.1 Khái niệm 44
3.11.2 Đặc điểm 45
3.11.3 Clustering có thức bậc 49
3.11.4 Clustering phẳng 50
3.12 Kết luận 52
CHƯƠNG 4 THIẾT KẾ VÀ HIỆN THỰC ĐỀ TÀI 53
4.1 Mô hình tổng quát của giải thuật clustering theo hướng phát triển của đề tài 53
4.1.1 Ý tưởng tổng quát 53
4.1.2 Mô hình thiết kế tổng quát của giải thuật 55
4.2 Các tiêu chuẩn của hàm mục tiêu sim(w1,w2) dùng để đánh giá sự giống nhau của các từ 57
4.3 Các tiêu chuẩn của hàm mục tiêu sim(c1,c2) dùng để đánh giá sự giống nhau của các cluster 63
4.4 Mô hình hiện thực của giải thuật clustering theo hướng phát triển của đề tài 64
4.4.1 Giải thuật phân tích cú pháp, từ vựng, ngữ nghĩa và xác suất phân bố của từ:Tokenization 64
4.4.2 Giải thuật word clustering 66
4.4.3 Khả năng học hỏi, tích lũy kinh nghiệm của giải thuật clustering 71
4.5 Độ phức tạp của giải thuật 72
4.6 Mô hình ngôn ngữ cluster-based bigram sau khi áp dụng giải thuật clustering 73
Trang 94.7 Chương trình hiện thực 74
4.7.1 Đặt vấn đề 74
4.7.2 Cấu trúc class 75
4.7.3 Dữ liệu 76
4.7.4 Giao diện 77
4.7.5 Kết luận 81
4.8 Một số kết quả thực thi của giải thuật clustering 81
4.9 Kết luận 82
CHƯƠNG 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 83
5.1 Đánh giá luận văn 83
5.2 Hướng phát triển của đề tài 83
5.3 Kết luận 84
REFERENCE 85
Trang 10CHƯƠNG 1 PHÁT BIỂU VẤN ĐỀ
1.1 Đề tài nghiên cứu
Đề tài được nghiên cứu là “Clustering và vấn đề cải tiến mô hình ngôn ngữ trong
lĩnh vực xử lý văn bản tiếng Anh”
Mục tiêu của đề tài là nghiên cứu các giải thuật clustering đã có sẵn và lý thuyết về giải thuật clustering, để từ đó xây dựng một giải thuật clustering hoàn
toàn tự động, nhằm nâng cao hiệu quả của mô hình ngôn ngữ, thông qua việc thực
hiện quá trình generalization trên các văn bản, tài liệu tiếng Anh
Mô hình ngôn ngữ mà đề tài chọn là mô hình ngôn ngữ bigram của Markov, và từ đó xây dựng thành mô hình cluster-based bigram có nhiều ưu điểm hơn mô hình bigram thông thường.
1.2 Giới thiệu giải thuật clustering
Giải thuật clustering phân chia các đối tượng dữ liệu có các đặc điểm và thuộc tính gần giống nhau vào từng nhóm hay còn gọi là cluster Sự phân chia thành tập
cluster diễn ra một cách tự nhiên theo đặc điểm ngôn ngữ của dữ liệu mẫu
Dựa vào đặc điểm cấu trúc, ta có hai loại clustering: clustering có thức bậc và
clustering không thứ bậc hay còn gọi là clustering phẳng Clustering phẳng cho
kết quả là tập các cluster và mối quan hệ giữa chúng là không xác định trước Trong khi đó, clustering có thứ bậc là một hệ thống cấp bậc như một cây cluster
với mỗi nút đều có nút mẹ Và lá của cây là một đối tượng ngôn ngữ đơn của tập
cluster Đối tượng ngôn ngữ này có thể là một từ, một câu hay một cluster
Ngoài ra, clustering còn được phân biệt bằng phép gán đối tượng vào cluster
theo hai loại cứng và mềm Phép gán cứng gán một đối tượng vào một và chỉ một
cluster Phép gán mềm qui định mức độ của mối quan hệ giữa các đối tượng và cluster, hoặc là chỉ ra khả năng của một đối tượng thuộc về nhiều cluster Theo
đó, tồn tại một xác suất cho biết đối tượng xi thuộc về cluster cj: P(cj | xi)
Vấn đề đặt ra là tiêu chuẩn để xác định độ tương tự giữa các đối tượng ngôn
ngữ hay giữa các cluster để có thể tiến hành kết hợp các cluster này thành một
cluster mới hoặc quyết định tách một cluster thành nhiều cluster khác nhau Một
trong những yếu tố để giải quyết vấn đề trên là phải xác định thành phần đại diện
cho mỗi cluster, từ đó sử dụng thành phần đại diện này để xác định sự phụ thuộc của các đối tượng ngôn ngữ vào cluster
Thành phần đại diện cho mỗi cluster có thể được xác định theo nhiều cách khác nhau Theo single-link clustering hay complete-link clustering, tất cả các
Trang 11phần tử thuộc cluster đều tham gia đại diện cho cluster đó Và sự tương đồng của hai cluster được quyết định bởi hai đối tượng gần giống nhau nhất hoặc ít giống nhau nhất của hai cluster này
Các phương pháp khác thì sử dụng trọng tâm hoặc phần tử trọng tâm làm đại
diện cho các cluster Theo đó, trọng tâm là giá trị trung bình của các giá trị thuộc tính, đặc điểm của tất các các đối tượng thành viên thuộc về cluster; còn phần tử trọng tâm là một đối tượng ngôn ngữ của cluster giữ chức năng đại diện cho
cluster đó Ngoài ra, cluster còn có thể được đại diện bằng một tập các đối tượng
con của nó
Các giải thuật clustering thường được thực hiện trên tập dữ liệu mẫu gọi là
corpus
Ví dụ: ta có một dendrogram của single-link clustering của 22 từ tiếng Anh trong
corpus Brown, thực chất nó là một biểu đồ cấu trúc cây thể hiện sự giống nhau
của các nút thông qua chiều dài của sự kết nối giữa chúng Mỗi nút của cây biểu
diễn một cluster, và được tạo thành từ hai nút con Cụ thể, in và on hình thành một cluster, with và for cũng tạo nên một cluster khác Và hai cluster con này kết hợp tạo nên một cluster chứa bốn từ trên [1] [3] [4] [6]
Hình 1.1: dendrogram của 22 từ tiếng Anh
be not he I it this the his a and but in on with for at from of to as is was
Trang 121.3 Quá trình generalization
Là quá trình xây dựng các cluster chứa các đối tượng ngôn ngữ có thuộc tính, đặc điểm gần giống nhau Từ đây, quá trình generalization có thể tiên đoán được tính
chất của một đối tượng ngôn ngữ dựa vào các đặc điểm của các đối tượng khác
cùng thuộc một cluster với nó
Ví dụ như chúng ta muốn biết giới từ đi trước được sử dụng kèm theo danh từ
Firday, với giả thiết rằng ta có đoạn văn bản tiếng Anh chứa các cụm từ on Moday, on Thursday nhưng không có on Friday Sau khi giải thuật clustering thực
hiện generalization, ta có Moday, Thursday và Friday cùng nằm trong một cluster
vì chúng có cùng từ loại và ngữ nghĩa là những từ chỉ về ngày trong tuần Do vậy,
ngoài các cụm từ on Moday, on Thursday đã tồn tại trong văn bản, ta có thể khẳng định tính đúng đắn của cụm từ on Friday, cho dù chúng không xuất hiện
trong văn bản mẫu
Đây là một trong những phương pháp góp phần nâng cao hiệu quả của mô hình ngôn ngữ, nhất là trong trường hợp mô hình ngôn ngữ không đủ dữ liệu mẫu để tính toán [1] [14] [15]
1.4 Giới thiệu mô hình ngôn ngữ
Kể từ khi khoa học máy tính phát triển cho đến nay, nhu cầu cung cấp cho máy tính những khả năng gần giống như con người như nhận biết được lời nói, chữ viết, phân tích văn bản, hiểu được ngôn ngữ tự nhiên ngày càng trở nên phổ biến và đa dạng Tuy nhiên tất cả những yêu cầu trên sẽ không thể trở thành hiện thực, nếu như chúng ta không trang bị cho máy tính những kiến thức cơ bản về ngôn ngữ học Và mô hình ngôn ngữ thường được sử dụng để mã hoá các khái niệm ngôn ngữ học, cho phép máy tính có thể thao tác và sử dụng được chúng Dó đó, mô hình ngôn ngữ là một trong những công cụ không thể thiếu của quá trình xử lý ngôn ngữ tự nhiên
Ví dụ như, trong quá trình nhận dạng tiếng nói, công cụ nhận dạng không thể
phân biệt hai từ President Kenedy và precedent Kenedy Tuy nhiên, mô hình ngôn ngữ có thể xác định President Kenedy chính xác hơn precedent Kenedy Dựa vào đó, công cụ nhận dạng tiếng nói mới có thể khẳng định President Kenedy là cụm
từ được phát âm
Đặc biệt, khi xử lý văn bản, tài liệu, ta phải tính toán mối liên hệ của một từ
W với mô hình ngôn ngữ P(H), tức là ta đi tìm xác suất có điều kiện P (W | H)
Do vậy, mô hình ngôn ngữ thường giải quyết bài toán dự đoán một hay nhiều từ dựa vào các từ cho trước Điều này rất có ý nghĩa trong quá trình tìm kiếm thông
Trang 13tin dựa trên các từ khóa, hay xử lý các văn bản như kiểm tra từ, lỗi chính tả, hoặc trong một số trường hợp khác là khôi phục lại một chuỗi từ tiếng Anh sau khi nó được truyền qua kênh nhiễu
Cụ thể hơn, mô hình ngôn ngữ thường được sử dụng để tính toán xác suất của một chuỗi từ, và nó cũng được dùng để tiên đoán các từ chưa biết chính xác, khi
dựa vào các từ đã biết trong một corpus Và mô hình ngôn ngữ thường dựa trên
ngôn ngữ phi ngữ cảnh, hay cây quyết định, nhưng nổi bật hơn cả là nó dựa trên
mô hình n-gram của Markov
Ta có ví dụ dựa trên mô hình n-gram của Markov:
•Dữ liệu mẫu : <s> <s> He can buy the can of soda
- Mô hình unigram: p1(He) = p1(buy) = p1(the) = p1(of) = p1(soda) = p1(.) = 125
p1(can) = 25
- Mô hình bigram: p2(He | <s>) = 1
p2(can | He) = 1 p2(buy | can) = 0.5 p2(of | can) = 0.5
p2(the | buy) = 1
- Mô hình trigram: p3(He | <s>,<s>) = 1
p3(can | <s>,He) = 1 p3(buy | He,can) = 1
p3(of | the,can) = 1 p3( | of,soda) = 1
- Entropy: H(p1) = 2.75, H(p2) = 25, H(p3) = 0
Mô hình ngôn ngữ mà đề tài quan tâm, thực chất là mô hình bigram sử dụng
giả thiết của Markov, theo đó sự xuất hiện của một từ chỉ phụ thuộc vào từ phía trước nó Mục đích của việc cải thiện mô hình ngôn ngữ là tìm một hàm Π để gán
từ vào các cluster, nhằm làm giảm thông số perplexity của mô hình ngôn ngữ Thật vậy, chúng ta có cross entropy của một corpus L = w1 wN của hàm Π ở trên dựa trên giả thiết của Markov
) w P(w log N
w w P w
w C
N−− w∑w
≈
Trang 14Tiếp theo, đề tài sử dụng giả thiết của quá trình generalization, tức là sự xuất hiện của một từ thuộc cluster c2 chỉ phụ thuộc vào cluster c1 chứa các từ đứng phía trước nó
Công thức trên có thể được viết lại như sau:
)
| ( )
| ( log ) ( 1
1
2 1
c w P c c P w
w C N
1
) ( log )
| ( log 1
) ( )
( log )
| ( log 1
) ( )
,
2 1 2
2 2 2
1
w w w
w
c P c
c P N
w w C c
P c
w P N
w w C L
1
)(
)
|(log1
)()
()
|(log1
)(
2
1 2 2
1 2
2 2 2
1
c w
w
c P
c c P N
c c C c
P c w P N
w w C
c P w
P w P
) ( log ) ( )
( log ) (
2 1
2 1 2
1
= H(w) – I(c1;c2)
với C(x) là số lần xuất hiện của đối tượng ngôn ngữ x
Công thức trên cho thấy cross entropy có thể đạt giá trị nhỏ nhất, nếu ta chọn được hàm Π sao cho thông tin chung của hai cluster kề nhau I(c1 ; c2) là lớn nhất
Do đó mô hình ngôn ngữ có thể được cải thiện bằng cách chọn các cluster sao cho
thông tin chung giữa chúng lớn nhất
[1] [11][12][13][17][18][26] [30] [35] [49]
1.5 Ứng dụng của giải thuật clustering trong việc cải tiến mô hình ngôn ngữ thông qua generalization
Clustering có nhiều ứng dụng trong quá trình xử lý ngôn ngữ tự nhiên theo
phương pháp thống kê Thứ nhất, clustering được sử dụng trong quá trình phân
tích dữ liệu Nó cung cấp hình ảnh trực quan cho các đối tượng ngôn ngữ và cung cấp cấu trúc có thứ bậc Ngoài ra, một trong những công dụng chính của
clustering trong xử lý ngôn ngữ tự nhiên là được sử dụng để thực hiện quá trìnhø
Trang 15generalization nhằm nâng cao hiệu quả của mô hình ngôn ngữ Theo đó, các đặc
điểm, thuộc tính của một đối tượng ngôn ngữ trong một cluster có thể được áp dụng cho các đối tượng khác trong cluster đó Đặc biệt, trong quá trình nhận dạng và xử lý văn bản tiếng Anh, công dụng trên của clustering khi thực hiện
generalization như là một cách để học hỏi, tiên đoán
Từ việc đoán được các thuộc tính của các đối tượng ngôn ngữ thuộc về các
cluster trong bài toán generalization đã làm tăng tính chính xác của mô hình ngôn
ngữ, ngay cả trong trường hợp mô hình ngôn ngữ không đủ dữ liệu mẫu để tiến hành tính toán xác suất và thực hiện thống kê
Hơn thế nữa, mô hình ngôn ngữ thường phụ thuộc rất lớn vào dữ liệu mẫu, số lượng dữ liệu mẫu càng lớn thì hiệu quả của mô hình ngôn ngữ càng cao; nhưng phải kèm theo việc tính toán số lượng thông số độc lập của nó rất lớn Tuy nhiên,
clustering có thể khắc phục sự phụ thuộc này Bởi vì, nó giúp mô hình ngôn ngữ
hạn chế được nhiều thông số đầu vào
Ta có thể thấy rõ hơn qua vai trò của giải thuật clustering đối với chất lượng
mô hình ngôn ngữ Chất lượng của mô hình ngôn ngữ thường được đánh giá thông
qua các thông số perplexity và entropy Mô hình ngôn ngữ có perplexity càng nhỏ thì xác suất của nó càng lớn Đối với corpus có kích thước là N, thì mô hình 1-
gram có N -1 tham số độc lập Mô hình bigram có (N -1)N tham số Một cách
tổng quát, mô hình n-gram có Nn-1(N -1) tham số Do đó, với một corpus có số lượng từ tương đối lớn, nếu ta sử dụng mô hình n-gram với n khá lớn, thì số lượng
tham số cần tính toán sẽ rất lớn Điều này có thể dẫn đến không thể tính toán mô hình này trên máy tính hoặc phải mất rất nhiều thời gian và công sức
Ngoài ra, nếu như corpus không đủ lượng từ cần thiết, thì mô hình ngôn ngữ
cũng sẽ cho kết quả không chính xác Để giải quyết vấn đề trên, giải pháp sử
dụng giải thuật clustering là cần thiết và hiệu quả Vì thực nghiệm cho thấy các từ thường đi cùng trước và sau từ Thursday và xác suất phân bố của chúng thường giống với các từ đi cùng của Friday Do đó, nếu các từ trong corpus được đưa vào các cluster, thì mô hình ngôn ngữ có thể tính toán được xác suất của một từ khi dữ liệu mẫu về nó chưa đầy đủ, bằng cách dựa vào các từ khác trong cluster mà nó
đã biết
Như đã trình bày ở trên, việc áp dụng giải thuật clustering còn có một công
dụng khác là làm giảm thiểu số lượng tham số cần tính toán của mô hình ngôn
ngữ Thật vậy, giả sử corpus có kích thước N, và sau khi áp dụng giải thuật
clustering trên corpus này, ta được C cluster Trong quá trình clustering, ta sử
dụng một hàm π để gán một từ wi vào cluster Ci Lúc này ta có thể tính P(wk| w1, , wk-1) = P(wk| Ck)P(Ck | C1 Ck-1) Do đó, mô hình n-gram chỉ còn có Cn - 1 +
N – C tham số Ngoại trừ trường hợp C = N, còn các trường hợp khác số lượng
Trang 16tham số độc lập của mô hình ngôn ngữ sử dụng giải thuật clustering đều nhỏ hơn
so với số lượng tham số của mô hình ngôn ngữ n-gram thông thường
[1][7][11][12] [16] [17] [18] [20] [21] [30] [35] [38]
1.6 Lý do thực hiện đề tài
Ngày nay, hầu hết các tài liệu, thông tin khoa học trên thế giới đều được viết
bằng tiếng Anh Do đó, các vấn đề về data mining, cơ sở tri thức hay xử lý ngôn
ngữ tự nhiên theo hướng thống kê, ngày càng trở nên quan trọng, đặc biệt là nhu cầu phân tích thông tin trong các văn bản, tài liệu tiếng Anh để phục vụ cho các
mục đích tham khảo, nghiên cứu, dịch thuật Bên cạnh đó, clustering là một trong
những kỹ thuật thông dụng cho việc phân tích dữ liệu, và tổng quát hóa dữ liệu
phân tích Các cluster có thể được dùng để giải thích các đặc điểm ngôn ngữ của
tập đối tượng dữ liệu hoặc có thể là nền tảng cho việc phân tích dữ liệu trong quá trình xử lý ngôn ngữ tự nhiên
Do vậy, giải thuật này được sử dụng trong nhiều ứng dụng quan trọng trong lĩnh vực xử lý ngôn ngữ tự nhiên Ví dụ như nó có thể giúp các nhà tự điển học biên soạn tự điển, các nhà ngôn ngữ học biên dịch ngữ nghĩa của từ vì nó cung cấp cơ sở cho quá trình xác định ngữ nghĩa của từ hay một nhóm từ Và đặc biệt là khả năng hỗ trợ mô hình ngôn ngữ trong quá trình nhận dạng, xử lý văn bản
Ngoài ra, nhiều giải thuật clustering đã và đang được các nhà khoa học nghiên
cứu và phát triển, tuy nhiên chúng còn có nhiều đặc điểm, hạn chế, nhất là trong việc xây dựng một mô hình ngôn ngữ cho việc xử lý, nhận dạng văn bản tiếng Anh Chính vì những lý do trên nảy sinh nhu cầu thực hiện đề tài này
1.7 Những đóng góp của đề tài
Từ lý thuyết của giải thuật clustering và quá trình nghiên cứu các giải thuật
clustering có sẵn, đề tài đã xây dựng được giải thuật clustering thao tác trên corpus tiếng Anh, và đạt được mục tiêu nâng cao hiệu quả của mô hình ngôn ngữ bi-gram bằng cách xây dựng mô hình ngôn ngữ cluster-based bigram
Cụ thể hơn, thông qua quá trình tokenization tập hợp được hầu hết các đặc điểm ngôn ngữ của từ trong corpus, hàm mục tiêu của giải thuật đã khai thác
không những về sự phân bố tự nhiên của các từ, mà còn về cú pháp, vai trò ngữ pháp và ngữ nghĩa của từ Việc giải thuật sử dụng tự điển WordNet để cung cấp
thêm một lượng lớn các từ đồng nghĩa vào các cluster đã làm tăng thêm chất lượng cho những cluster này
Trang 17Hơn thế nữa, tiến bộ hơn so với các giải thuật Brown, giải thuật clustering từ của Pereira, giải thuật clustering của đề tài đã khai thác triệt để khía cạnh cú pháp, bước đầu tạo nên tập các cluster cơ bản danh từ, động từ, tính từ, trạng từ, Sau đó, giải thuật của đề tài mới tiến hành bottom-up clustering trên từng tập
cluster cơ bản trên
Mặc dù không đi sâu vào khía cạnh quan hệ ngữ nghĩa như giải thuật
CIAULA, nhưng giải thuật clustering của đề tài đã vận dụng linh hoạt tự điển
điện tử WordNet, để xác định sự giống nhau về ngữ nghĩa của các hầu hết các từ
trong corpus Tuy vậy, CIAULA có sử dụng quan hệ ngữ nghĩa, nhưng quan hệ ngữ nghĩa này lại dựa trên quan hệ cú pháp, và giải thuật CIAULA chỉ cluster
cho tập động từ [10][56][24][48][1]
Ngoài những giải thuật clustering nêu trên, cũng đã có một giải thuật
clustering từ dành cho mô hình ngôn ngữ bi-gram và tri- gram của Markov Giải
thuật này tiến hành đưa các từ vào các cluster sao cho có lợi đối với thông số
perplexity của mô hình ngôn ngữ Do đó, quá trình tính toán của giải thuật này rất
phức tạp, đòi hỏi nhiều công sức tính toán và cũng chưa tận dụng được các thông tin về ngôn ngữ học như giải thuật của đề tài đã làm
Do đó, với việc tiến hành tạo tập cluster cơ bản về từ loại, và sử dụng hàm
mục tiêu khai thác các đặc tính như ngữ nghĩa, ngữ cảnh xung quanh của từ,
thông tin chung của các cluster, giải thuật clustering của đề tài tiến hành cluster
trên các đối tượng ngôn ngữ là từ với tốc độ và độ phức tạp chấp nhận được
1.8 Sơ lược cấu trúc của luận văn
Chương 1 là chương phát biểu đề tài, và cho biết đề tài đang làm là về vấn đề gì, tại sao cần thiết phải làm đề tài này, và đã sử dụng phương pháp nào để giải quyết đề tài Do đó, nó trình bày nội dung của đề tài, giới thiệu sơ lược về giải
thuật clustering, bài toán generalization, cùng với mô hình ngôn ngữ, và những ứng dụng của giải thuật clustering cho việc cải thiện mô hình ngôn ngữ Từ đó
nêu bật được lý do thực hiện đề tài Đồng thời, chương cũng trình bày những kết quả và đóng góp mà đề tài đạt được
Chương 2 là chương điểm qua các công trình khoa học đã công bố trên thế giới có liên quan đến đề tài Khi điểm qua, phần này đã nêu lên cách tiếp cận của từng công trình, ưu khuyết điểm của từng cách tiếp cận, những chỗ còn chưa được giải quyết thỏa đáng trong các công trình đi trước Chương này còn có mục đích gián tiếp biện minh cho sự cần thiết phải tiến hành đề tài đang làm Do đó, chương đã
trình bày các giải thuật clustering xử lý dữ liệu số hoặc có liên quan đến không
Trang 18gian hình học và các giải thuật clustering xử lý ngôn ngữ tự nhiên cùng với những
hạn chế của chúng
Chương 3 trình bày cơ sở lý thuyết và phương pháp sẽ được dùng để giải quyết vấn đề của đề tài Chính vì vậy, chương đã trình bày cơ sở toán học, và các kiến thức, công cụ được đề tài sử dụng như mô hình Markov, tự điển WordNet, phương
pháp K nearest neighbor, Quan trọng nhất, chương đã trình bày cụ thể lý thuyết giải thuật clustering
Chương 4 trình bày giải thuật clustering của đề tài và mô hình ngôn ngữ
cluster-based bigram Đề tài đã phát triển một giải thuật clustering hướng về việc xây
dựng mô hình ngôn ngữ cluster-based bigram Và giải thuật đã khai thác được hầu hết các thông tin, đặc điểm ngôn ngữ của các từ tiếng Anh trong corpus như
về từ loại, ngữ nghĩa, xác suất phân bố, các từ xung quanh Do vậy, giải thuật đã
xây dựng nên một tập cluster kết quả vừa có thể cải thiện mô hình ngôn ngữ, vừa cung cấp một mô hình có cấu trúc trực quan cho các corpus tiếng Anh
Chương 5 nhận xét và đánh giá ưu khuyết điểm của việc giải quyết và hiện thực đề tài, đồng thời đưa ra hướng phát triển của đề tài và kết luận
1.9 Qui ước về thuật ngữ và ký hiệu
X tập các đối tượng ngôn ngữ
N kích thước của corpus, là số lượng từ trong corpus
C(x) số lần xuất hiện của x trong corpus
C số lượng cluster
PP Thông số perlexity
Sim(w,v) hàm đo độ tương tự hay sự giống nhau của hai đối tượng ngôn ngữ w và v
arg min X chọn X khi nó giá trị nhỏ nhất thông qua một hàm xác định giá trị Các từ tiếng Anh khó có thể dịch đúng nghĩa bằng tiếng Việt và các từ làm ví dụ sẽ được in nghiêng
Trang 191.10 Kết luận
Chương này cho biết nội dung của đề tài là phát triển một giải thuật clustering thao tác trên các corpus tiếng Anh, và hướng tới mục tiêu cải thiện mô hình ngôn ngữ n-gram, cụ thể là mô hình bigram và xây dựng mô hình cluster-based bigram Chương cũng giới thiệu khái quát về giải thuật clustering và mô hình ngôn ngữ, đồng thời cũng nêu được những ứng dụng cơ bản của giải thuật clustering, trong
đó nhấn mạnh đến ứng dụng nâng cao hiệu quả mô hình ngôn ngữ của nó Từ đó, chương cũng trình bày lý do thực hiện đề tài, cấu trúc cơ bản của luận văn, một số thuật ngữ, ký hiệu được đề tài sử dụng, và những đóng góp của đề tài
Trang 20CHƯƠNG 2 TỔNG THUẬT VỀ CÁC CÔNG TRÌNH ĐÃ CÓ TRÊN
THẾ GIỚI LIÊN QUAN ĐẾN ĐỀ TÀI
2.1 Đặt vấn đề
Hiện nay, trên thế giới, các nhà khoa học đã tiến hành nghiên cứu một số giải
thuật clustering như K-means, Pam (partitioning around medoids), Clarans (clustering large applications based upon randomized search), Dbscan, Cure,
Rock Nhưng hầu hết các giải thuật này đều sử dụng mô hình tĩnh trong việc phân
tích các cluster
Chẳng hạn như các giải thuật K-means, Pam, Clarans đều lấy giả thiết rằng
các cluster là các elipxoit có dạng hình cầu và có kích thước tương tự nhau; còn giải thuật Dbscan thì cho rằng các cluster đều có mật độ các phần tử lớn Ngoài
ra các giải thuật clustering có thứ bậc như Cure, Rock cũng sử dụng mô hình tĩnh để tìm ra và kết hợp hai cluster tương tự nhau nhất Cure thì xác định sự gần
giống nhau bằng cách dựa vào sự giống nhau của hai tập điểm gần giống nhau
nhất đại diện cho hai cluster đó, mà không quan tâm đến tính đồng nhất của hai
cluster này Trong khi đó Rock sử dụng các đặc tính kết nối hai cluster do người
sử dụng xác định
Một đặc điểm chung của các giải thuật nêu trên là chúng thường áp dụng cho dữ liệu có liên quan đến số, hoặc dễ dàng đưa về không gian hình học Ngoài các
giải thuật truyền thống trên, một số giải thuật clustering như HAC, Brown et al,
được phát triển nhằm đáp ứng cho nhu cầu xử lý các tài liệu, văn bản của ngôn ngữ tự nhiên
[3][6][7][8][9][18] [22]
2.2 Các giải thuật clustering xử lý dữ liệu số hoặc có liên quan đến không
gian hình học
2.2.1 Các giải thuật partitional clustering dùng trọng tâm, phần tử trọng tâm
Cụ thể, các giải thuật K-means, Isodata, Pam, Clarans phân chia tập dữ liệu
thành K cluster K-means, Isodata sử dụng trọng tâm là giá trị trung bình của các phần tử trong cluster, làm đại diện cho các cluster và việc gán một đối tượng vào một cluster được thực hiện khi khoảng cách từ đối tượng đó đến trọng tâm của
cluster là nhỏ nhất Phương pháp sử dụng trọng tâm chỉ thích hợp đối với các loại
dữ liệu có liên quan đến không gian hình học, để từ đó giải thuật có thể tính trọng tâm của một tập các đối tượng Tượng tự, các giải thuật Pam và Clarans sử dụng
Trang 21phần tử đại diện là một đối tượng thành viên của cluster đại diện cho cluster đó
[3][6][7][8][9][18] [22]
2.2.2 Các giải thuật clustering có thứ bậc
Đối với các giải thuật bottom-up clustering có thứ bậc bắt đầu bằng một tập
cluster, trong đó, mỗi cluster chỉ chứa một đối tượng dữ liệu Sau đó, nó tiến hành
kết hợp hai cluster gần giống nhau nhất thành một cluster mới Sau mỗi lần kết hợp, tổng số cluster sẽ giảm đi một Quá trình kết hợp các cluster sẽ được tiếp tục thực hiện cho đến khi đạt đến số lượng cluster xác định trước hoặc không thể kết hợp bất cứ hai cluster nào nữa
Có nhiều giải thuật bottom-up clustering có thứ bậc đang được nghiên cứu,
chúng chỉ khác nhau ở cách thức xác định độ tương tự hay gần giống nhau giữa
các cluster Tuy nhiên, đối với các giải thuật sử dụng phương pháp trọng tâm hay phần tử trọng tâm hoặc toàn bộ các đối tượng dữ liệu như single-link, complete-
link có thể bị thất bại đối với các cluster có hình dạng ngẫu nhiên hay kích thước
khác nhau Giải thuật Cure có thể khắc phục các nhược điểm trên bằng cách kết hợp các ưu điểm của chúng Thay vì sử dụng một trung tâm đơn như trọng tâm hay phần tử trọng tâm, Cure sử dụng một tập các đối tượng ngôn ngữ thuộc
cluster làm đại diện cho cluster đó Theo đó, độ tương tự giữa hai cluster được
xác định bằng độ tương tự của hai đối tượng gần nhau nhất nằm trong hai tập đại
diện đó Sau đó một tập các đối tượng bao quanh trọng tâm của cluster mới được xác định làm đại diện cho cluster này
Trong khi đó, giải thuật Rock lại sử dụng độ tượng tự hay gần giống nhau của
từng cặp đối tượng ngôn ngữ thuộc hai cluster để đánh giá độ tương tự của hai
cluster đó Tức là quan tâm đến sự kết nối bên trong của hai cluster hay nói khác
hơn là sử dụng giá trị so sánh trung bình của các cặp đối tượng thuộc hai cluster
Hầu hết các giải thuật giống như Rock sử dụng ma trận tương tự n x n, trong đó, phần tử (i , j) đại diện cho độ tương tự của hai đối tượng dữ liệu thứ i và thứ j
Sau đó ma trận này thường được chuyển thành đồ thị, các cluster có thể được kết hợp với nhau dựa vào spanning tree nhỏ nhất của đồ thị đó [3][6][7][8][9][18]
[22]
2.2.3 Những hạn chế của các giải thuật trên
Các giải thuật clustering sử dụng trọng tâm hay phần tử trọng tâm làm đại diện cho cluster có thể cho tập cluster kết quả sai vì có một số đối tượng của một
Trang 22cluster lại có khoảng cách gần trung tâm của các cluster khác hơn trung tâm của cluster đang chứa nó
Ví dụ:
Hình 2.1: mô tả hạn chế của clustering sử dụng trọng tâm
Tuy có cải thiện được một số hạn chế của các phương pháp trước, nhưng Cure
và Rock có thể gặp thất bại đối với các cluster có những đặc diểm cá biệt, không
phù hợp với mô hình xử lý dữ liệu của chúng
Ngoài ra, một trong những hạn chế chủ yếu của các giải thuật có thứ bậc như
Rock và Cure là sử dụng mô hình tĩnh để quyết định việc kết hợp các cluster
Ví dụ về hạn chế của Cure
Hình 2.2: mô tả hạn chế của Cure
Đối với 4 cluster (a), (b), (c), (d) trên, Cure sẽ kết hợp (a) và (b) bởi vì khoảng
cách nhỏ nhất của hai tập đối tượng đại diện của (a) và (b) nhỏ hơn so với (c) và
(d) Tuy vậy, hai cluster (c) và (d) nên được kết hợp trước vì khoảng cách nhỏ
nhất của các đối tượng ở biên của (c) và (d) gần bằng khoảng cách trung bình của
Các cluster có kích thước
khác nhau Các cluster có hình dáng lồi
Trang 23các đối tượng bên trong hai cluster Do đó, cluster hình thành bởi sự kết hợp của (c) và (d) đồng nhất và tự nhiên hơn so với cluster được tạo nên từ (a) và (b)
Ví dụ về hạn chế của Rock
Hình 2.3: mô tả hạn chế của Rock
Rock sử dụng cơ chế giá trị so sánh trung bình của các cặp cluster, nên nó sẽ kết hợp hai cluster (c) và (d), nhưng hai cluster (a) và (b) thích hợp để kết hợp hơn
Do vậy các giải thuật trên đều gặp khó khăn trong việc xử lý các cluster có mật
độ các phần tử dày đặc, hình dạng khác nhau hay kích thước quá lớn Thậm chí,
quá trình clustering của chúng có thể cho kết quả sai trong trường hợp các thông số của mô hình tĩnh xác định sự tương tự của các cluster không phù hợp với tập
dữ liệu đang xử lý
Trong khi đó, chất lượng của các cluster rất quan trọng trong việc cải thiện
mô hình ngôn ngữ Ngoài ra, trong lĩnh vực xử lý văn bản tiếng Anh, các dữ liệu rất đa dạng về chủng loại và phức tạp về ngữ nghĩa, chúng không tuân thủ theo các chuẩn mực đã xác định trước Do vậy, hầu hết các giải thuật trên đều không thích hợp cho việc xử lý các văn bản, tài liệu tiếng Anh Chính vì thế, việc sử
dụng các giải thuật clustering đã được nghiên cứu để xây dựng một tập cluster
hiệu quả trong việc cải tiến mô hình ngôn ngữ trong quá trình xử lý văn bản tiếng Anh là rất khó, vì đa phần chúng được xây dựng nhằm đáp ứng các lĩnh vực khác
Do đó vấn đề trên, một lần nữa, yêu cầu đề tài xây dựng một giải thuật clustering cung cấp tập cluster có chất lượng cho việc nâng cao hiệu quả của mô hình ngôn
ngữ [8][19][22]
Trang 242.3 Các giải thuật clustering xử lý ngôn ngữ tự nhiên
2.3.1 Giải thuật HAC của đại học Bar-IIan
Gồm hai giai đoạn: giai đoạn phân tích hình thái học và giai đoạn bottom-up
clustering
- Giai đoạn phân tích hình thái học:
+ Phân tích các từ thành những token
+ Xác định từ loại của các từ
+ Sử dụng thông số
i
N
N
log IDFi Gsigi = = ; với N là số lượng tập tin trong
corpus và Ni là số lượng tập tin chứa từ i
+ Thay các từ bằng các từ gốc nguyên mẫu
- Giai đoạn bottom-up clustering:
Đối tượng cơ bản của HAC là một đoạn văn bản, và quá trình clustering của nó
sẽ tiến hành kết hợp hai đoạn giống nhau nhất lại với nhau Và HAC sử dụng
thông số Proximity để xác định độ tương tự của hai đoạn văn bản kề nhau
∑
+ + = n
k i i
i k i k i
i
S S
w w S
S
oximity
) 1 , )(
, 1
Trong đó, Si là vector biễu diễn cho đoạn i và || Si|| là chiều dài của nó, và wk,i
là trọng số của từ k trong đoạn văn i Ta có
w = với fk,i là tần số của từ k trong i
- Hạn chế của giải thuật HAC:
+ Giải thuật đòi hỏi số lượng corpus lớn
+ Quá trình tính toán các thông số quá phức tạp, đòi hỏi một khối lượng tính toán lớn
+ Đối tượng cơ bản là đoạn văn, không xét đến các đơn vị nhỏ hơn như
câu, từ Từ đó tập kết quả cluster không thể hiện một cách sâu sắc cấu trúc ngôn
ngữ
+ Không quan tâm đến vấn đề cải thiện mô hình ngôn ngữ [63]
2.3.2 Giải thuật clustering cải thiện mô hình ngôn ngữ bi-gram của John W Miller và Fil Alleva, nhân viên công ty Microsoft của Mỹ
- Là một giải thuật tìm kiếm các cluster cho từng từ Trong quá trình tìm kiếm, nó sẽ tính toán và so sánh mô hình ngôn ngữ đối với việc gán một từ vào các cluster
Trang 25khác nhau Phép gán nào có lợi cho mô hình ngôn ngữ nhất, tức là có thông số
perplexity nhỏ nhất, sẽ được thực hiện Số lượng các cluster được xác định trước
là 256 Số cluster này được xác định thông qua thực nghiệm các lần chạy thử giải
thuật
Nó sử dụng một hàm G(w) dùng cho việc gán từ vào cluster
Với F(w) là tần suất xuất hiện của từ w trong corpus, và F(C) là tần suất xuất hiện của cluster C Ta có F(Ci-1, Ci) = F(G(wi-1), G(wi)) Và xác suất của một từ
dựa trên từ phía trước nó theo mô hình bigram được tính như sau:
1 - i c n
+ Bản chất là một giải thuật tìm kiếm, phải tính toán nhiều cho việc gán
thử một từ vào tất cả các cluster, để tìm ra cluster thích hợp có lợi cho mô hình
ngôn ngữ [17]
2.3.3 Giải thuật Brown et al 1992
- Là một giải thuật greedy tìm kiếm để kết hợp các cluster sao cho thông tin chung giữa chúng là lớn nhất Nói một cách khác là đối với mỗi bigram wi-1wi
trong corpus, giải thuật sử dụng thông số ước đoán khả năng xuất hiện cao nhất (MLE), để chọn các cluster C(wi-1) và C(wi), sao cho ít thiệt hại thông tin chung của chúng nhất
Đầu tiên, giải thuật sẽ gán mỗi từ vào một cluster, sau đó tiến hành kết hợp
chúng lại với nhau sao cho sự hao hụt thông tin chung giữa chúng là thấp nhất
Cụ thể, giải thuật sử dụng mô hình bigram L(Π) như sau
) Pr(
) Pr(
log ) Pr(
2 1
2 1 ,
2 1
2
c c c
c I
c
c∑
=
Do H độc lập với Π, nên việc tối đa thông tin chung của hai cluster sẽ kéo theo
tối đa hàm L(Π)
Giải thuật sẽ thực thi cho đến khi đạt được k=1000 cluster thì dừng
Trang 26- Hạn chế: quá trình clustering chủ yếu dựa vào xác suất xuất hiện của các từ trong corpus, chưa sử dụng các đặc tính ngôn ngữ của các từ, để từ đó có thể tạo nên tập cluster chất lượng hơn Ngoài ra, việc qui định số lượng cluster kết quả
làm cho giải thuật không được tổng quát [24] [48] [1]
2.3.4 Giải thuật word clustering cho mô hình bigram và trigram
- Giới thiệu mô hình lớp bigram:
Giải thuật chia corpus có kích thước W thành một số cố định G lớp của từ, bằng
cách áp dụng hàm ánh xạ G : w → gw, để đưa một từ w vào lớp gw Từ đây, việc
xét một bigram (v,w) trong corpus sẽ được đưa về xét cặp (gv, gw), là hai lớp
tương ứng của chúng
Đối với mô hình lớp này, ta có hai loại xác suất phân bố cân xem xét
+ Hàm xác suất chuyển tiếp P(gw | gv), để dự đoán lớp gw dựa trên lớp trước nó là gv
+ Hàm xác suất thành viên P(w | g), dùng để ước đoán từ w thuộc về lớp g hay không
Do đó, mô hình lớp bigram cho ta
P(w | v) = P(w | gw) P(gw | gv)
Và
) N(g
) g , N(g ) g
|
P(g
) N(g
N(w) )
w
w w
=
=
Với N(.) là số lần xuất hiện của đối tượng trong ngoặc
Từ đây, ta có hàm log của thông số ước đoán khả năng xuất hiện cao nhất MLE như sau
) ( ) (
) , ( log ).
, ( )
( log ) (
) ( log ) ( )
( log ) ( 2 ) , ( log ).
, (
) (
) , ( log ).
, ( )
(
) ( log ).
( v)
| log(w w).
N(v, F
, ,
, w
bi
w v
w v g
g
w v w
w v g
g
w v
g
w v w
v
g N g N
g g N g
g N w
N w N
w N w N g
N g N g
g N g g N
g N
g g N g
g N g
N
w N w
N
w v
w
v
w v
Trang 27- Giới thiệu mô hình lớp trigram:
Ta có p(w | u,v) = p(w | gw) p(gw | gu, gv)
Tương tự như mô hình bigram, giải thuật cũng tiến hành xây dựng hàm log của
thông số ước đoán khả năng xuất hiện cao nhất MLE
) ( ) , (
) , , ( log ) , , ( )
( log ).
(
,
w v u
w v u tri
g N g g N
g g g N g
g g N w
N w N F
w v u
=
- Giải thuật clustering:
Bắt đầu bằng việc ánh xạ w → gw
For each w
For each lớp k
Chuyển từ w từ lớp gw vào lớp k sao cho có lợi đối với
thông số perplexity , đồng thời cập nhật giá trị
perplexity của mô hình
Until gặp các tiêu chuẩn dừng giải thuật
Giải thuật chạy trên máy R4000-SGI workstation thao tác trên một corpus 1Mbytes thì mất khoảng 2 giờ cho mỗi lần lặp, còn nếu thực thi trên corpus 38
Mbytes thì mất 10 ngày cho mỗi lần lặp
- Hạn chế: mặc dù giải thuật xây dựng nên được hai mô hình ngôn ngữ bigram và
trigram, nhưng quá trình thực hiện quá phức tạp do phải tiến hành ánh xạ thử
chọn cho từng từ, dẫn đến tốn rất nhiều công sức tính toán và thời gian thực thi Ngoài ra, giải thuật cũng không lợi dụng đến các đặc tính ngôn ngữ học của các
từ để tiến hành cluster.[30]
2.3.5 Giải thuật word clustering của Pereira, Tishby, và Lee
Ý tưởng cơ bản của giải thuật là tiến hành cluster từ dựa trên sự phân bố cú pháp
của chúng trong một ngữ cảnh xác định Tần số xuất hiện của từ trong ngữ cảnh cú pháp sẽ được sử dụng làm tiêu chuẩn đánh giá sự giống nhau của các từ trong
n
Với C là cluster chứa các danh từ trong corpus
Trang 28Ta có thể trình bày theo cách khác
)
|()
|(),()
C
) ,
) (
) ( )
|
(
n n
C f
n f C
n
) (
) ( )
v f C
v
m là kích thước của corpus
f(Cn, Cv) là tần suất xuất hiện của từng cặp danh từ , động từ trong cặp cluster
(Cn, Cv)
f(n), f(v) là tần suất xuất hiện của từng danh từ n và động từ v
f(Cn), f(Cv) là tần suất xuất hiện của những từ trong cluster Cn, Cv
Giải thuật thuộc loại clustering mềm vì một danh từ có thể thuộc nhiều cluster Nó sử dụng xác suất P(w | c) để xác định một từ w thuộc về cluster c
-Hạn chế: giải thuật quá phụ thuộc vào sự phân loại cú pháp của danh từ và động từ, nên mang tính đặc thù không tổng quát, và cũng không có lợi cho mô hình
ngôn ngữ [56]
2.3.6 Giải thuật word clustering của Hang Li, phòng thí nghiệm NEC
Cũng xuất phát từ ý tưởng, những từ có các từ đi cùng ở trước hoặc sau giống
nhau sẽ được đưa vào chung một cluster, giải thuật đã sử dụng xác suất phân bố của những cặp danh từ và động từ đi liền nhau để tiến hành quá trình clustering
Thay vì dùng thông số ước đoán khả năng xảy ra lớn nhất (MLE), giải thuật sử dụng thông số miêu tả chiều dài ngắn nhất (MDL), bao gồm hai thông số con là thông số chiều dài miêu tả dữ liệu và thông số chiều dài miêu tả mô hình Từ đó,
giải thuật tạo ra hai cluster danh từ và động từ bằng việc lặp đi lặp lại quá trình kết hợp các từ vào cluster tương ứng Ở mỗi lần lặp, giải thuật sẽ tính toán lại
thông số MDL sao cho lần lặp trên có lợi cho thông số MDL nhất Theo đó, nó tính toán lại thông số chiều dài mô tả mô hình L(M), thực chất là chiều dài đoạn mã của quá trình mã hóa dữ liệu của mô hình và đồng thời tính lại thông số chiều dài miêu tả dữ liệu L(S | M) Tiếp theo, giải thuật sẽ cộng hai thông số trên để được thông số MDL như sau L(S : M) = L(M) + L(S | M)
Trang 29Ta có thông số chiều dài mô tả dữ liệu được tính như sau
∑
=
) , (
) , ( log )
|
(
v n
v n P M
2 )
trong đó k chỉ số lượng thông số của mô hình, và N vẫn là kích thước của corpus
Ta có độ phức tạp của giải thuật là O(|N||N| |V||V|), với |N|, |V| lần lượt là kích thước của tập danh từ và động từ
- Hạn chế: giải thuật có độ phức tạp khá cao và chỉ tiến hành cluster trên hai tập
danh từ và động từ Mặc dù, sử dụng thông số MDL, nhưng giải thuật cũng đơn thuần sử dụng chủ yếu vào sự phân bố của danh từ và động từ, chưa quan tâm đến các đặc tính khác như ngữ nghĩa [25]
2.3.7 Giải thuật clustering CIAULA cho động từ
Giải thuật được sử dụng cho việc phân loại động từ trong corpus dựa trên vai trò
ngữ nghĩa của chúng Giải thuật dựa trên mối quan hệ cú pháp của động từ như
N_V (company, carry), V_N (carry, food), V_prep_N (carry, with, truck) Đối với
một loại quan hệ cú pháp như trên sẽ được giải thuật lưu trữ cùng với tần số xuất
hiện của chúng trong corpus Sau đó, động từ được gán cho các thẻ ngữ nghĩa
kèm theo như ACT, PLACE, HUMAN_ENTITY, GOOD Và ngoài ra, các mối quan hệ về cú pháp trên có thể được đánh giá thông qua mối quan hệ ngữ nghĩa
Ví dụ như quan hệ cú pháp V_prep_N(carry, with, truck) là một thể hiện của quy
luật ngữ nghĩa [ACT]->(INSTRUMENT)->[MACHINE]
Theo đó, vai trò ngữ nghĩa của động từ v trong một câu được thể hiện bằng vector đặc điểm như sau v / (RI : CatJ), với RI là một trong những vai trò ngữ nghĩa AGENT, INSTRUMENT, và CatJ là loại khái niệm của từ GOOD, MACHINE, …
Ví dụ: Produce / (AGENT : HUMAN_ENTITY, OBJECT : GOOD)
Theo đó, các cluster động từ sẽ tập hợp các động từ có cùng vai trò cú pháp và
ngữ nghĩa theo một xác suất nhất định
Trang 30- Hạn chế: bản chất của giải thuật là một giải thuật clustering mềm, mặc dù có
xét đến khía cạnh ngữ nghĩa, nhưng chỉ quan tâm đến động từ Do đó nó không có vai trò trong việc cải thiện mô hình ngôn ngữ [10]
2.3.8 Giải thuật clustering cho tính từ
Giải thuật thao tác trên corpus và tận dụng các mối quan hệ của tính từ đối với các từ xung quanh để tiến hành cluster tính từ Giải thuật kiểm tra các ngữ danh từ trong corpus, và gán thẻ ngữ nghĩa cho danh từ Sau đó căn cứ vào sự xuất hiện
đồng thời của các tính từ với các danh từ được gắn thẻ ngữ nghĩa, giải thuật sẽ
thực hiện quá trình cluster tính từ Giải thuật sử dụng khoảng 1001 thẻ ngữ nghĩa
để gán cho các danh từ đi cùng với tính từ
Và giải thuật xác định 9123 các tính từ khác nhau sẽ tham gia quá trình
clustering Do đó, nó đã dùng một ma trận tên là OM, có 1001 cột chỉ 1001 thẻ
ngữ nghĩa của danh từ và 9123 hàng để chỉ các tính từ, nhằm mục đích thể hiện sự xuất hiện đồng thời của chúng Trong đó, mỗi ô hàng i, cột j của matrận chứa tần suất xuất hiện đồng thời của tính từ i với thẻ ngữ nghĩa danh từ j Ngoài ra, giải thuật còn sử dụng một ma trận bit BM cùng kích thước với OM, được xác định như sau:
Đối với mỗi ô OM(i,j), nếu OM(i,j) > 0 thì BM(i,j ) =1, ngược lại BM(i, j)
= 0
Lúc này, sự giống nhau của hai tính từ được xác định bằng các vector hàng của
ma trận BM Ta gọi RVi[k] là phần từ thứ k của vector hàng i Ta có hàm tương tự của giải thuật như sau:
] [ ] [ 1001
=
- Hạn chế: mặc dù giải thuật có sử dụng đến thẻ ngữ nghĩa của danh từ, nhưng nó
cũng thể hiện sự cụ thể, không tổng quát Nó chỉ cluster tính từ, bỏ qua các từ loại
quan trong khác, và đồng thời xác định cụ thể số lượng tính từ, cũng như số lượng
thẻ ngữ nghĩa danh từ, làm cho quá trình clustering không còn được tự nhiên dựa vào sự phân bố ngẫu nhiên của các từ trong corpus Chính vì thế, nó không có lợi
cho việc cải thiện mô hình ngôn ngữ [62]
Trang 312.3.9 Giải thuật word clustering sử dụng thẻ có cấu trúc
Giải thuật sử dụng thông tin chung trung bình của các cluster và sử dụng một cấu
trúc thẻ để biểu diễn các cluster Theo đó, mỗi từ được đại diện bằng một thẻ nhị
phân 16 bits Thẻ nhị phân này không những chứa thông tin về các đặc điểm của
từ, mà còn chứa luôn thông tin về cluster của từ đó Do đó, việc xác định một từ thuộc về một cluster rất dễ dàng, điều này làm cho cấu trúc thẻ rất tiện dụng đối
với mô hình ngôn ngữ
Ta có thể tóm tắt nội dung giải thuật như sau Trước tiên, giải thuật đưa một
số từ có tần suất xuất hiện cao nhất vào các cluster Mỗi từ sẽ được gán một thẻ
cấu trúc ngẫu nhiên và duy nhất Và giải thuật sử dụng giá trị trung bình thông tin
chung của các cluster để kết hợp các cluster này
i
c
c c P c
c P f
M
) , ( log ) , ( )
(
Với f là một lần sắp xếp lại các từ trong các cluster Đầu tiên, f xử lý bit đầu tiên của mỗi từ, nếu bit này bằng 0 thì đưa từ đang xét vào cluster 0 và nếu bit đó bằng 1 thì từ thuộc về cluster 1 Sau khi phân chia các từ vào hai cluster 0 và 1, f sẽ tiến hành quá trình di chuyển các từ của hai cluster qua lại, mỗi lần di chuyển một từ thuộc cluster 0 sang cluster 1, hoặc ngược lại thì f tính lại giá trị thông tin chung trung bình của các cluster
Và sự di chuyển của các từ qua lại giữa hai cluster chỉ có hiệu lực khi và chỉ
khi sự di chuyển này có giá trị thông tin chung trung bình lớn nhất f vẫn chưa xử
lý đến bit thứ hai, cho đến khi không còn có thể di chuyển các từ vào các cluster
để làm tăng giá trị thông tin chung trung bình Quá trình trên có độ phức tạp là O(n3) Quá trình xử lý bit thứ hai tương đương với việc tách mỗi cluster 0 và 1 thành hai cluster 0 và 1 con, rồi lại lặp lại quá trình di chuyển từ
- Hạn chế: do không khai thác các đặc điểm ngôn ngữ khác của từ và chỉ dựa vào
thông số thông tin chung nên giải thuật đòi hỏi lượng corpus khá lớn, mới có thể
cung cấp đủ dữ liệu tin cậy về thông tin chung Và quá trình di chuyển qua lại của các từ khá phức tạp [43]
Trang 32thuật, từ đó, đề tài có thể rút ra được những kiến thức và kinh nghiệm để hiện
thực giải thuật clustering của đề tài
Trang 33CHƯƠNG 3 CƠ SỞ LÝ THUYẾT VÀ PHƯƠNG PHÁP
3.1 Đặt vấn đề
Đề tài sẽ tiến hành nghiên cứu các giải thuật clustering đã và đang được phát
triển; từ đó khắc phục những hạn chế của những giải thuật này, để xây dựng nên
giải thuật clustering phù hợp cho vấn đề xử lý các văn bản tiếng Anh, và áp dụng vào bài toán generalization cho ngôn ngữ tiếng Anh nhằm mục đích nâng cao
hiệu quả của mô hình ngôn ngữ Chính vì thế, các vấn đề nghiên cứu của đề tài thuộc về lĩnh vực xử lý ngôn ngữ tự nhiên có tính thống kê Do vậy, nó đòi hỏi các kiến thức về toán xác suất thống kê, lý thuyết về ngôn ngữ và thông tin
3.2 Cơ sở toán học
Bên cạnh các khái niệm cơ bản về xác suất, thống kê Ngoài ra, ta nên xét một số công thức có liên quan đến xác suất như
- Xác suất có điều kiện:
P(A | B) P(B) P(A) P(B | A) =
P(X | E) P(Y | X,E) = P(X | Y,E) P(Y | E)
Trang 34Entropy là đại lượng tính toán lượng thông tin được chứa trong biến X, nó đo
lường sự không chắc chắn trung bình của X
Ngoài ra, ta có joint entropy của cặp biến X, Y :
H(X,Y) = -∑ ∑ p(x,y) log2 p(x,y)
x ∈ X y ∈ Y
- Entropy có điều kiện của biến ngẫu nhiên Y theo biến X:
H(Y | X) = ∑ p(x) H(Y | X=x) = ∑ p(x) [- ∑ p(y | x) log2 p(y | x)]
x ∈ X x ∈ X y ∈ Y
Từ đây, ta cũng có luật Chain của entropy
H(X,Y) = H(X) + H(Y|X)
H(X1,…, Xn) = H(X1) + H(X2| X1) + … + H(Xn| X1,…, Xn-1)
- Thông tin chung:
Ta có mutual entropy:
H(X,Y) = H(X) + H(Y | X) = H(Y) + H(X | Y)
Do đó
H(X) – H(X | Y) = H(Y ) –H(Y | X)
Ta gọi I(X;Y) = H(X) – H(X | Y) = H(Y ) –H(Y | X) là giá trị đo lường thông tin chung của X và Y
Ngoài cách tính thông tin chung dựa vào entropy, ta có một cách tính khác của
thông tin chung của X và Y như sau
) ( ) (
) , ( log ) , ( )
,
Y P X P
Y X P Y
X P Y
Y X C C
Y X C Y
X
(.)
) , ( (.,.)
) , ( ) ,
Với N là kích thước của corpus, và C(x) là số lần xuất hiện của sự kiện x
Trong một số trường hợp, thông tin chung của X và Y được tính như sau
) ( ) (
) , ( log )
,
Y P X P
Y X P Y
X
Trang 35).
, ( log ) , ( )
,
(
Y C X C
N Y X C N
Y X C Y
(
).
, ( log )
,
(
Y C X C
N Y X C Y
) ( ) (
) , ( log ) , ( )
x P C
C
I
- Entropy quan hệ của hai hàm xác suất p(x) và q(x), còn được gọi là sự phân biệt
Kullback-Leibler dùng để đo lường sự khác nhau của hai phân bố xác suất:
Với qui ước
Từ đây, ta có thông Divergence của hai phân bố xác suất P và Q là
Div(P,Q) = Div(Q,P) = D(P||Q) + D(Q||P)
- Cross entropy diễn tả mối quan hệ ngôn ngữ, thường được dùng để đo lường chất lượng của mô hình ngôn ngữ Ta có cross entropy của một biến ngẫu nhiên X
có xác suất phân bố là p(x) và mô hình của p là q là
- Entropy của tiếng Anh theo giả thiết của Markov, cho rằng xác suất xuất hiện
của một từ chỉ phụ thuộc vào k từ trước nó, từ đây ta có xác suất phân bố của từ đó
p
D
) (
) ( log ) ( )
p
∑
−
= +
=
x
x q x p q
p D X H q
X
Trang 36x1n là chuỗi từ có vị trí từ 1 đến n
Ta có thể tính perplexity theo công thức khác như sau
[P w w N ]N
Perplexity= ( 1 ) −1
Theo đó, perplexity của mô hình n-gram như sau
N N
n
N
N h w P Perplexity
1
1
)
| (
hN là chuỗi các từ xuất hiện trước wN
Căn cứ theo mô hình n-gram, thông số perplexity còn được tính theo công thức
Nw là chiều dài của chuỗi từ, 0 < n < Nw Nếu i – j < 0 với j = 1 n, thì từ wi-j
không xuất hiện trong công thức
Thông số perplexity nói lên số lượng từ có thể đặt vào một vị trí từ cần xác định
trong một câu, một ngữ hay một đoạn văn Do vậy thông số này càng nhỏ thì việc ước đoán các từ ngữ càng chính xác Chính vì lý do này, mà nó thường dùng để đánh giá chất lượng của mô hình ngôn ngữ
- Thông số ước đoán khả năng xảy ra lớn nhất (MLE)
Thông số này dùng để tính tần số xuất hiện của từ Giả sử, ta có kích thước của
corpus là N, C(w) là số lần xuất hiện của w trong corpus Ta có
N
) w C(w ) w (w
) w C(w
) w w C(w ) w w
| (w
P
1 - n 1
n 1 - n 1 1
n 1 n
- Mặc dù thông số ước đoán khả năng xảy ra lớn nhất (MLE) được sử dụng hầu hết trong các quá trình xử lý ngôn ngữ, nhưng nó một số hạn chế
+ Nhưng hạn chế này thường xảy ra
+ Xác suất của các từ không xuất hiện trong corpus rất thấp
+ Xác suất của những từ có tần suất xuất hiện lớn thì lại rất cao
n n
m m x
1 1 )
, H(x
Trang 37+ Việc ước đoán các từ có tần suất xuất hiện cao thì chính xác
+ Việc ước đoán các từ có tần suất xuất hiện thấp thì thường không tin cậy
Do đó, ta cần tinh chỉnh thông số này khi sử dụng nó trong đề tài theo luật
Laplace
V ) w C(w
1 ) w w C(w ) w w
| (w
P
1 - n 1
n 1 - n 1 1
n 1 n MLE
-+
+
=Với V là kích thước của từ vựng
- Phức tạp hơn, ta có cách điều chỉnh thông số ước đoán khả năng xảy ra lớn nhất (MLE) như sau
P(wn| w1…wn-1) = Pdiscount(wn| w1…wn-1) + θ Pdiscount(wn| w1…wn-1) α(w1…wn-1) P(wn)
0 , 1 )
(
x
x x
θ
) 1
1
(
) 1 1 1
1
( 1
1
0 ) (
: 1
| 0 ) (
:
1 )
(
n wn wn w n
discount
n n
wn wn w n
discount n
w C
w
P
w w w C
(
(
)
| (
1 1
) 1 1 ) 1 1 ( 1 1
n C n
n discount
w w C
w w w C w w w D w
w w P
DC (w1…wn-1 wn) là thông số giảm bớt, được tính như sau Gọi nr là số lượng
từ xuất hiện đúng r lần trong corpus Ta có
r
r
n
n r
r* =( +1 ) +1
1 1 1 1
*
) 1 ( 1
) 1 (
n
n
n k r
r
D
k
k r
- Căn cứ vào thông số ước đoán khả năng xảy ra lớn nhất (MLE), ta có xác suất
của một đối tượng ngôn ngữ w thuộc về cluster c như sau
) (
) ( )
|
(
c C
w C c
Trang 38+ Thông số Dice:
Y X
Y X
Y X
|
|
Y X
Y
Với |X| là module của X [1] [23][54][60]
3.3 Mô hình Markov (n-gram)
Mô hình ngôn ngữ cho biết xác suất P(w1, , wn) của một chuỗi n-gram bao
gồm n từ w1, , wn liên tiếp trong corpus
Một bài toán phổ biến trong các lĩnh vực nhận dạng ký tự, xử lý văn bản, kiểm tra lỗi chính tả, hay dịch máy là sử dụng mô hình ngôn ngữ để dự đoán khả năng xuất hiện của một hay nhiều từ, khi dựa vào các từ ở phía trước nó Một trong những khó khăn của mô hình ngôn ngữ là chuỗi từ mà nó kiểm tra có thể khác so
với các chuỗi từ trong corpus Và thực nghiệm cho thấy giải pháp cho vấn đề trên
có thể được giải quyết một cách đơn giản và hiệu quả bằng việc sử dụng mô hình Markov
Mô hình Markov, cụ thể là mô hình n-gram, dựa trên giả thiết cho rằng sự xuất hiện của một từ chỉ phụ thuộc vào n từ xuất hiện trước nó trong corpus và
đồng thời đưa ra hàm xác suất P(wn| w1, , wn-1) là xác suất cho sự xuất hiện wn
khi biết trước w1, , wn-1 đã xuất hiện w1, , wn-1 được gọi là lịch sử của wn Và xác suất xuất hiện của w1, , wn được tính như sau:
P(w1, , wn) = P(w1) P(w2| w1 ) P(w3| w1 w2 ) P(wn| w1, , wn-1)
Ta sẽ ước lượng tham số của mô hình n-gram bằng ví dụ sau Giả sử, ta sử dụng
corpus có kích thước N C(w) là số lần xuất hiện w trong corpus Đối với mô hình 1-gram, sự ước đoán khả năng xảy ra cao nhất cho tham số P(w) là C(w) / N Để
ước tính tham số của mô hình n-gram, ta sẽ tính toán tham số của mô hình (n-1)
gram là mô hình con của nó, và sau đó, ta tính giá trị tối đa của tham số thứ n
P(wn| w1, , wn-1) theo phương pháp ước đoán khả năng xảy ra cao nhất
Trang 39=
w C( w w w )
w C(w
) w , , w
| P(w
1 - n 1.
n) 1.
1 - n 1 n
Ngoài ra, Markov còn chỉ ra rằng wn chỉ phụ thuộc vào k từ đứng trước nó với k <
n Lúc đó, ta có
P(wi| w1, , wi-1) = P(wi| wi-k, , wi-1)
Đối với mô hình bigram, ta có công thức như sau
)
|()
|()
|()(),
()(W =P w1 w2 , ,w n =P w1 P w2 w1 P w3 w2 P w n w n− 1
không đúng ngữ pháp
He is a brilliant financial analyst
He is a brilliant financial analysts
Đề tài nhận thấy bản chất của mô hình ngôn ngữ n-gram là mô hình ngôn ngữ xử
lý trên đối tượng ngôn ngữ là từ Chính vì thế, bên cạnh những lợi điểm, nó cũng
có một số khiếm khuyết Do vậy, đề tài xây dựng lại mô hình ngôn ngữ n-gram, nhưng dựa trên các cluster và được gọi là cluster-based n-gram Theo đó, một từ sẽ được gán vào duy nhất một cluster Rõ ràng, mô hình cluster-based n-gram có nhiều lợi điểm hơn mô hình n-gram thông thường Thứ nhất, nó giảm thiểu một
cách đáng kể số lượng các từ đứng trước từ đang xét Hơn thế nữa, nó còn có độ chính xác cao hơn, vì nó có thể cho dự đoán về một từ ngay khi từ đó không có
trong corpus đang xét [1][17][20][21] [35][49]
3.4 Perplexity Thông số đánh giá chất lượng mô hình ngôn ngữ
Việc sử dụng mô hình ngôn ngữ gắn liền với độ chính xác của xác suất dự đoán mà mô hình ngôn ngữ đó cung cấp Và cơ sở đánh giá mô hình ngôn ngữ thường
sử dụng cross entropy và thông số perplexity
Đề tài sẽ sử dụng thông số perplexity để đánh giá mô hình ngôn ngữ Vì thông số
perplexity kết hợp khái niệm lý thuyết thông tin và khái niệm entropy để đo lường
mô hình ngôn ngữ
Ta có thông số cross entropy được định nghĩa như sau:
Trang 40log 1
Và ngoài ra thông số perplexity được định nghĩa như sau:
)
| (
1log
1 2 PP
1 1
w
w w w P N i
x
Với Nw là tổng số từ trong corpus Và mô hình ngôn ngữ có giá trị perplexity
càng thấp thì có chất lượng càng cao.[1]
3.5 Một số điểm ngữ pháp cơ bản của tiếng Anh
Giải thuật clustering của đề tài thao tác trên corpus tiếng Anh và quá trình phân chia các từ vào các cluster, đòi hỏi phải căn cứ vào cú pháp, ngữ nghĩa của từ Do
đó đề tài phải nghiên cứu về một số đặc điểm cơ bản của tiếng Anh Đặc biệt là về từ loại như danh từ, động từ, tính từ, trạng từ, và các thành phần chủ ngữ,
vị ngữ, bổ ngữ, … của câu
Theo quan điểm của hình thái học, tiếng Anh là một ngôn ngữ biến cách Do vậy nó có một số đặc điểm sau:
- Danh từ có nhiều chức năng, ví dụ như có thể là chủ từ, có thể là túc từ bổ nghĩa cho động từ
- Có một sự thống nhất, ràng buộc phức tạp giữa mạo từ, tính từ, động từ và danh từ
- Các động từ được chia theo các thì thích hợp và phải thống nhất với chủ từ của nó Ví dụ như động từ số ít đi với danh từ số ít hoặc danh từ không đếm được
Ngoài ra, trong tiếng Anh, thứ tự các từ trong câu rất quan trọng, nó quyết định ý nghĩa của câu Nhóm từ góp phần tạo nên câu như nhóm từ bắt đầu bằng danh từ, nhóm từ bắt đầu bằng giới từ, nhóm từ bắt đầu bằng động từ nguyên mẫu, … Một mệnh đề là một nhóm từ bao gồm chủ ngữ, động từ và túc từ hoặc bổ ngữ Một câu chứa một mệnh đề được gọi là một câu đơn giản, ngược lại, câu chứa nhiều mệnh đề thì được gọi là câu ghép
Một câu thuộc về một trong bốn hình thức sau:
- Câu phát biểu, tường thuật
- Câu hỏi
- Câu mệnh lệnh