Phân loại câu tiếng việt và ứng dụng trong vấn đề hỏi đáp - Pdf 35

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ THƯA

PHÂN LOẠI CÂU TIẾNG VIỆT
VÀ ỨNG DỤNG TRONG VẤN ĐỀ HỎI ĐÁP

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Hà Nội - 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ THƯA

PHÂN LOẠI CÂU TIẾNG VIỆT
VÀ ỨNG DỤNG TRONG VẤN ĐỀ HỎI ĐÁP

Ngành

:

Công nghệ thông tin

Chuyên ngành

:



Nguyễn Thị Thưa


LỜI CẢM ƠN

Đầu tiên, tôi xin gửi lời cảm ơn chân thành đến thầy Phan Xuân Hiếu. Thầy
đã truyền cảm hứng học tập, nhiệt huyết nghiên cứu khoa học và đã dẫn lối tôi
đến với lĩnh vực nghiên cứu này. Thầy cũng là người đã tận tình giúp đỡ tôi vượt
qua những thử thách trong quá trình nghiên cứu luận văn.
Tôi xin gửi lời cảm ơn chân thành đến thầy Hà Quang Thụy. Càng tiếp xúc
với thầy, tôi càng cảm thấy yêu quý và trân trọng thời gian được làm sinh viên
nhiều hơn.
Tôi xin bày tỏ lòng biết ơn chân thành tới các thầy, cô giáo đã giảng dạy tôi
trong suốt 2 năm tại Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội. Mỗi
thầy cô đều cho tôi những bài giảng thật hay và bổ ích.
Tôi xin cảm ơn các anh chị trong Phòng Đào tạo, Phòng Công tác sinh viên,
Phòng Tài vụ và các anh chị khác trong trường. Nhờ có sự làm việc tận tụy của
các anh chị, chúng tôi mới có một ngôi trường đứng nhất nhì cả nước để học tập
và rèn luyện.
Tôi xin bày tỏ sự cảm ơn sâu sắc đến các thành viên trong nhóm MDNTeam. Thời gian chúng tôi ở bên nhau để chia sẻ những khó khăn khi tạo ra ứng
dụng trợ lý ảo cho người Việt - VAV. Đặc biệt là 2 em Nguyễn Văn Hợp và Vũ
Thị Hải Yến đã nhiệt tình giúp đỡ tôi trong quá trình thực nghiệm, tôi sẽ không
bao giờ quên.
Tôi xin gửi lời cảm ơn chân thành các anh chị đồng nghiệp tại Cục Thông
tin khoa học và công nghệ quốc gia – Bộ Khoa học và Công nghệ đã giúp hoàn
thành công việc tại cơ quan để tôi có thể yên tâm học tập.
Tôi cũng xin cảm ơn các anh chị trong Phòng Thí nghiệm công nghệ tri
thức đã góp ý chi tiết ở mỗi buổi seminar hàng tuần để tôi hoàn thiện tốt luận văn
của mình.

3.4.2. Mô hình Naïve Bayes ....................................................................... 33
3.4.4. So sánh MaxEnt, Naïve Bayes và SVMs ............................................ 36
KẾT LUẬN ............................................................................................................................. 38
TÀI LIỆU THAM KHẢO...................................................................................................... 39
PHỤ LỤC ................................................................................................................................ 41

3


DANH SÁCH HÌNH VẼ
Hình 0.1 Giao diện phần mềm ứng dụng VAV – Trợ lý ảo cho người Việt
Hình 0.2 Nguồn dữ liệu cho Big Data
Hình 0.3 Giao diện phần mềm VOS
Hình 1.1 Mô hình đơn giản bài toán phân loại câu tiếng Việt
Hình 1.2 Ví dụ minh hoạ bài toán phân loại câu tiếng Việt
Hình 1.3 Mô hình tổng thể bài toán phân loại câu tiếng Việt
Hình 2.1 Mô hình SVMs
Hình 3.1 Phương pháp Cross Validation Test
Hình 3.2 Số lượng mỗi loại câu thu được qua ASR service (Google Voice)
Hình 3.3 Biểu đồ so sánh độ đo F1 của mô hình MaxEnt trên 2 tập thuộc tính ở
lần lặp thứ 4
Hình 3.4 Biểu đồ so sánh F1 của mô hình Naïve Bayes giữa 2 tập thuộc tính ngrams và n-grams + Dictionary
Hình 3.5 Biểu đồ so sánh độ đo F1 của mô hình SVMs giữa 2 tập thuộc tính ngrams và n-grams + Dictionary sau 4 folds
Hình 3.6 Biểu đồ so sánh độ đo F1 của 3 mô hình MaxEnt, Naïve Bayes và
SVMs ở lần lặp thứ 4 trên tập thuộc tính n-grams
Hình 3.7 Biểu đồ so sánh độ đo F1 của 3 mô hình MaxEnt, Naïve Bayes và
SVMs ở lần lặp thứ 4 trên tập thuộc tính n-grams + Dictionary
Hình PL.1 Sự phân bố dữ liệu khi Phân loại với phương pháp Naïve Bayes
Hình PL.2 Kết quả Phân loại với phương pháp Naïve Bayes
Hình PL.3 Sự phân bố dữ liệu khi Phân loại với phương pháp SVMs

Dictionary với C = 0.1, gamma = 0.5, Kernel = exp (-gamma*|u-v|^2)

5


ĐẶT VẤN ĐỀ
Theo PGS.TS. Bùi Mạnh Hùng [1], để thực hiện mục đích phát ngôn, người
ta thường dùng cấu trúc cú pháp đặc trưng kết hợp với những phương tiện ngôn
ngữ riêng biệt như: tiểu từ, phụ từ, phụ tố, trật tự từ, ngữ điệu, hiện tượng tỉnh
lược, v.v. Nghĩa là có một mối tương quan khá đều đặn giữa hình thức của câu và
mục đích sử dụng nó. Từ đó hình thành nên khái niệm kiểu câu (sentence type)
và những kiểu câu thông dụng nhất thường được nhắc đến là: câu trần thuật, câu
nghi vấn, câu cầu khiến, câu cảm thán (x. J. Sadock & A. Zwicky 1990: 155-156).
Phân loại câu tiếng Việt bằng máy tính là bài toán cơ bản, làm tiền đề cho
các nghiên cứu cao hơn về xử lý và hiểu ngôn ngữ tự nhiên. Phân loại câu là một
trong những thành phần xử lý cốt lõi của hệ thống hỏi – đáp như phần mềm ứng
dụng VAV (Vitual Assistant for Vietnammese) – Trợ lý ảo cho người Việt do
MDN Team thuộc Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội sáng
lập, của hệ thống phân tích social media để nghiên cứu thị trường như các hệ
thống xử lý Big Data hay trong hệ thống tổng hợp tiếng nói như VOS – Tiếng nói
Phương Nam do Đại học Quốc gia Tp. Hồ Chí Minh sáng lập….

Hình 0.1 Giao diện phần mềm ứng dụng VAV – Trợ lý ảo cho người Việt

6


VAV là một ứng dụng thông minh trên di động cho phép người dùng tương
tác bằng giọng nói để hẹn chuông báo thức, đặt lịch cho một cuộc họp, bật định
vị, gọi điện cho ai đó, truy cập một trang web bất kỳ, tìm đường trên bản đồ, định

hoặc có những chiến lược thu hút khách hàng kịp thời.
Tương tự, trong hệ thống tổng hợp tiếng nói, Tiếng nói Phương Nam – VOS
là một hệ thống tổng hợp tiếng nói tiếng Việt, dành cho chính người Việt, có thể
tạo ra giọng nói nhân tạo của người trên máy tính từ dữ liệu đầu vào là văn bản.
Phân loại câu lúc này sẽ giúp hệ thống thêm được sắc thái cho câu văn trong đoạn
text đó.
Trong lĩnh vực truyền thông, hệ thống VOS có thể được áp dụng trong các
ứng dụng truy vấn thông tin qua tổng đài điện thoại, trong đó yêu cầu của người
dùng sẽ được ứng dụng tiếp nhận và xử lý thành dạng văn bản. Thông tin này sẽ
được hệ thống VOS chuyển thành dạng âm thanh và trả về cho người dùng. Các
hệ thống này có khả năng ứng dụng cao do quá trình xử lý hoàn toàn tự động, có
thể hoạt động liên tục, đáp ứng được nhu cầu về thông tin của người dùng, đặc
biệt là các thông tin nóng, cập nhật.
Trong lĩnh vực tự động hóa, hệ thống VOS có thể được tích hợp với hệ thống
định vị GPS trong các ứng dụng tìm đường đi, gắn trên xe hơi để cung cấp các chỉ
dẫn ở dạng âm thanh, hạn chế việc lái xe phải liên tục vừa nhìn màn hình GPS,
làm tăng độ an toàn cho người điều khiển.
Trong lĩnh vực giáo dục, VOS có thể được sử dụng để dạy tiếng Việt cho
con em Việt Kiều định cư ở nước ngoài, nhất là cách đọc, cách phát âm các từ
tiếng Việt. Đây là phần mềm thực hành tiếng Việt hữu hiệu, đặc biệt trong môi
trường mà ngôn ngữ sử dụng không phải là tiếng Việt.

8


Hình 0.3 Giao diện phần mềm VOS

9



dùng để hỏi.
Những cách phân biệt như “câu nghi vấn dùng để hỏi” với “câu nghi vấn
dùng để khẳng định”, “câu nghi vấn dùng để phủ định”, v.v. cho thấy cái gọi là
“phân loại câu theo mục đích phát ngôn” mâu thuẫn như thế nào. Một nhận định
như “câu nghi vấn là câu thường dùng để hỏi” có thể coi là hoàn toàn chính xác,
nhưng đó không phải là một định nghĩa. Một đặc trưng có tính định nghĩa phải là
1

phát ngôn là hành động của ngôn từ.

10


một đặc trưng mà tất cả các đối tượng ứng với định nghĩa đó đều chia sẻ, trừ
những ngoại lệ có phạm vi xác định và có thể giải thích được.
3. Trong rất nhiều trường hợp, mục đích phát ngôn chỉ có thể xác định rõ khi
đặt câu vào ngữ cảnh.
Vì vậy, mặc dù gọi “phân loại câu theo mục đích phát ngôn” và giải thích
khái niệm các kiểu câu bằng cách nêu mục đích phát ngôn mà câu thực hiện thì
trên thực tế các chuyên gia ngôn ngữ học lại áp dụng một cách mặc ẩn dấu hiệu
hình thức để phân loại câu [1]. Cách phân loại đó làm cho việc miêu tả các kiểu
câu tiếng Việt rất thiếu sự nhất quán. Điều đáng tiếc hơn là nó khiến cho nhiều
người thường nghĩ rằng trong trường hợp này công dụng là một tiêu chí để phân
loại câu, một đặc trưng có tính định nghĩa của các kiểu câu. Từ đó hình thành
những cách hiểu thường gặp như “câu trần thuật là câu dùng để kể, miêu tả, thông
báo”; “câu nghi vấn là câu dùng để hỏi”; “câu cầu khiến là câu dùng để ra lệnh,
yêu cầu, đề nghị”; “câu cảm thán là câu dùng để biểu lộ tình cảm, cảm xúc”.
Cách tiếp cận thứ hai thường gặp trong các công trình nghiên cứu ngôn
ngữ châu Âu. Những công trình này đều căn cứ vào hình thức của câu để xác định
các kiểu câu, rồi mới đề cập đến mối tương quan giữa các kiểu câu với công dụng

truyền tải thông điệp muốn nói một cách nhanh nhất là một trong những đặc trưng
cơ bản của văn nói. Một đặc điểm nữa là các câu văn nói thường rất ngắn. Thành
phần của câu như chủ ngữ hay vị ngữ thường bị bỏ qua. Ngoài ra, trong phạm vi
luận văn này, các câu nói của người dùng sau khi cho đi qua hệ thống hỗ trợ thu
nhận ASR (Google Voice) hoàn toàn trở thành chữ thường và không hề có dấu
câu.
Từ những nhập nhằng kể trên, chúng tôi tiến hành phân loại câu theo cách
tiếp cận thứ hai bằng các phương pháp học máy để phần nào giải quyết được
những tranh cãi trong ngành ngôn ngữ học từ bao năm qua.
Về phương pháp tiếp cận của bài toán, ngoài những phương pháp cơ bản
như:
Phương pháp thống kê để thu thập dữ liệu.
Phương pháp chuyên gia khi tham khảo các bài báo, giáo trình, các
bài giảng hay kỷ yếu hội nghị của các chuyên gia trong và ngoài nước
về chủ đề phân loại câu văn bản.
Phương pháp phân tích khi tìm hiểu các phương pháp giải quyết bài
toán, trong quá trình thực nghiệm với bộ dữ liệu đã thu được và tiền
xử lý để trở thành dữ liệu “sạch”.
Phương pháp tổng hợp khi tổng hợp kết quả và đưa ra kết luận.
thì các phương pháp học máy thống kê gồm:
Phương pháp Naïve Bayes
Phương pháp máy vector hỗ trợ SVMs
Phương pháp Maximum Entropy
được sử dụng để phân loại câu cho tập dữ liệu mà Google Voice thu được.
-

12


Luận văn được trình bày theo bố cục như sau:

(Expressive) và niềm tin về điều gì đó (Representative). Tác giả đã tiến hành thực
nghiệm bằng phương pháp máy vector hỗ trợ (SVMs) và sử dụng một loạt các
thuộc tính, bao gồm cả thuộc tính từ vựng kết hợp cú pháp, danh sách những từ
hành động (speech act) lấy từ các nghiên cứu khác hoặc các thuộc tính trong một
miền cụ thể. Kết quả được đánh giá trên bộ dữ liệu thu thập từ một diễn đàn trong
lĩnh vực thú y. Tác giả đã đạt được kết quả khá tốt trong khâu lọc dữ liệu xem một
câu bất kỳ là câu mô tả thông thường hay là câu có chứa hành động. Kết quả cho
thấy Representative và Commissive thường khó để phân loại, mặc dù tác giả đã
bổ sung nhiều các thuộc tính từ vựng, cú pháp và ngữ nghĩa. Tuy nhiên, bộ thuộc
tính này là độc lập về tên miền, nghĩa là với bất cứ lĩnh vực nào thì bộ thuộc tính
này vẫn sử dụng được. Hơn nữa, bộ thuộc tính này được tạo ra chỉ bằng các cụm
từ (part-of-speech tag) mà không cần phân tích ngữ nghĩa. Điều này rất quan trọng
cho những loại văn bản rời rạc trên các diễn đàn mà ở đó các câu văn thường sai
ngữ pháp, sai chính tả và dùng đa dạng các ký hiệu viết tắt.
Trong hội nghị ALTW-2006, Anthony Khoo và các cộng sự [12] thuộc Đại
học Monash, Australia đã trình bày một loạt các thực nghiệm liên quan đến phân
loại câu và chỉ ra các vấn đề khó khăn khi biểu diễn và lựa chọn các thuộc tính.
Dữ liệu được thu thập từ hàng loạt các cuộc hội thoại trên email (Email
Dialogues), diễn đàn.... SVMs được sử dụng để phân lớp loại dữ liệu này. Ngoài
ra, bài báo cũng chỉ ra sự tương đồng giữa phân loại câu và phân lớp văn bản. Tuy
nhiên, bài báo chỉ tập trung vào cách làm thế nào để lựa chọn các thuộc tính và

14


các phương pháp phân loại chứ không phải trình bày một phương pháp phân lớp
mới.
Ben Hachey & Claire Grover [13] thuộc Đại học Edinburgh, Vương quốc
Anh, tại Hội nghị thường niên lần thứ 17 về “Legal Knowledge and Information
System” năm 2004, đã tiến hành các thực nghiệm trong việc xây dựng một bộ

mệnh lệnh và câu cảm thán.
Bảng 1.1 Bảng mô tả các kiểu câu thông dụng

16


Hình 1.1 Mô hình đơn giản bài toán phân loại câu tiếng Việt

Hình 1.2 Ví dụ minh hoạ bài toán phân loại câu tiếng Việt

17


1.2.2. Các phương pháp giải quyết bài toán
Người ta thường dùng phương pháp học máy có giám sát để giải quyết bài
toán phân loại câu. Có rất nhiều phương pháp để tiếp cận với bài toán phân loại
câu như máy vector hỗ trợ (SVMs) [8, 12, 13, 15], Naïve Bayes [12] hay
Maximum Entropy [12, 15]. Trong phạm vi luận văn này, chúng tôi sẽ trình bày
thực nghiệm với cả 3 phương pháp trên. Dưới đây là mô hình chi tiết bài toán
phân loại câu tiếng Việt.

Dữ liệu Huấn luyện
(Labeled data)

Dữ liệu Test
(Labeled Data)

Dữ liệu mới
(UnLabeled Data)


(training data).
Ta cần xây dựng một ánh xạ phân lớp f dựa trên tập dữ liệu huấn luyện D:
S  T sao cho f phân lớp chính xác nhất có thể.
Ánh xạ phân lớp f được gọi là mô hình phân lớp (classification model,
classifier).
Mô hình f có thể xây dựng theo:
-

2.2.

Phương pháp Naïve Bayes
Phương pháp máy vector hỗ trợ (SVMs-Support Vector Machines)
Phương pháp cực đại hóa entropy (MaxEnt - Maximum Entropy
Classification)

Phương pháp Naïve Bayes

Giả sử T là biến ngẫu nhiên đại diện cho các lớp cần phân loại. Xác suất để
T nhận một lớp cụ thể nào đó được ký hiệu bằng các xác suất:
P(T = t1), P(T=t2), P(T = t3), P(T = t4).
Giả sử các câu cần phân lớp s có M thuộc tính (Features). Mỗi thuộc tính i
được biểu diễn bởi một biến ngẫu nhiên Fi, như vậy các đối tượng s được biểu
diễn bởi một bộ M biến ngẫu nhiên F = (F1, F2,… FM).
Ký hiệu P(Fi = vi| T = tk) là xác suất để thuộc tính/biến ngẫu nhiên Fi nhận
giá trị vi Vi với điều kiện s thuộc lớp tk.

19


Xác suất một đối tượng s thuộc lớp tk nào đó được tính như sau:


𝛼 [∏ 𝑃(𝐹𝑖 = 𝑣 𝑖 )| 𝑇 = 𝑡𝐾 ] 𝑃(𝑇 = 𝑡𝐾 )

=

𝑖=1

classify ( s ) = argmax P( T =tk | S =s)
𝑀

= argmax [∏ 𝑃(𝐹𝑖 = 𝑣 𝑖 )| 𝑇 = 𝑡𝑘 ] 𝑃(𝑇 = 𝑡𝑘 )
tk 𝑖=1
𝑀
𝑖
= argmax [log 𝑃(𝑇 = 𝑡𝑘 ) + ∑ log 𝑃(𝐹𝑖 = 𝑣 |𝑇 = 𝑡𝑐 )]
𝑖
tk

20


2.3.

Phương pháp SVMs

Tương tự thuật toán Naïve Bayes, thuật toán SVMs là một phương pháp
thuộc lớp giải thuật phân lớp thống kê. Nó có khả năng xử lý cả dữ liệu tuyến tính
và dữ liệu không tuyến tính. SVMs tiếp cận giải quyết bài toán thông qua khái
niệm gọi là lề, đường biên… (margin). Lề được chọn là khoảng cách nhỏ nhất từ
đường phân cách đến mọi điểm dữ liệu hay là khoảng cách từ đường phân cách


K(si, sj) = Ф(si)Ф(sj) = exp(-gamma*|u-v|^2)
Bằng cách sử dụng hàm này thì ở bất kỳ đâu xuất hiện Ф(si)Ф(sj) ta thay
thế bằng hàm K(si, sj). Do đó, việc tính toán về bản chất sẽ được thực hiện trên
không gian dữ liệu ban đầu – không gian có số chiều nhỏ hơn nhiều.

22


2.4.

Thuật toán Maximum Entropy

Entropy là độ đo về tính đồng đều hay tính không chắc chắn của một phân
phối xác suất. Một phân phối xác suất có entropy càng cao thì phân phối của nó
càng đều.
Với bài toán phân lớp văn bản, trở ngại lớn nhất là số lượng mẫu quan sát rất
lớn nên cần thiết phải có thuật toán học tối ưu. So với các mô hình khác, Maximum
Entropy có khả năng học và nhớ đến hàng trăm nghìn đặc trưng, thậm trí hàng triệu
đặc trưng từ dữ liệu mẫu nhờ vào chiến lược tối ưu hóa hàm nhiều biến hiệu quả.
Đặc điểm này khiến cho Maximum Entropy chiếm ưu thế trong các bài toán phân
lớp văn bản.
Tập dữ liệu học (tức là tập gồm các dữ liệu đã được gán nhãn) được sử dụng
để tìm ra các ràng buộc cho mô hình, đó là cơ sở để ước lượng phân phối cho từng
lớp cụ thể. Những ràng buộc này được thể hiện bởi các giá trị ước lượng được của
các đặc trưng. Từ các ràng buộc sinh ra bởi tập dữ liệu này, mô hình sẽ tiến hành
tính toán để có được một phân phối cho mô hình Maximum Entropy.
Gọi P là không gian của tất cả các phân phối xác suất, C là tập con của P
sẽ được mô tả như sau:


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status