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

Ứng dụng Adaboost cho bài toán gán nhãn ngữ nghĩa nông

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.16 MB, 66 trang )

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

NGUYỄN QUANG HIỆP

ỨNG DỤNG ADABOOST
CHO BÀI TOÁN
GÁN NHÃN NGỮ NGHĨA NÔNG

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 QUANG HIỆP

ỨNG DỤNG ADABOOST
CHO BÀI TOÁN
GÁN NHÃN NGỮ NGHĨA NÔNG

Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60480104
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC : TS. NGUYỄN VĂN VINH

HÀ NỘI – 2015




1

LỜI CAM ĐOAN
Tôi xin cam đoan:
1. Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng
dẫn của TS. Nguyễn Văn Vinh – Bộ môn Khoa học máy tính – Khoa Công nghệ
thông tin – Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội.
2. Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên tác
giả, thời gian, địa điểm công bố.
3. Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, tôi xin chịu hoàn
toàn trách nhiệm trước Nhà trường.

Hà Nội, Ngày 01 tháng 09 năm 2015
Học viên

Nguyễn Quang Hiệp


2

LỜI CẢM ƠN
Trước hết, tôi xin bày tỏ lòng biết ơn sâu sắc và chân thành đến giáo viên
hướng dẫn TS. Nguyễn Văn Vinh, người đã tận tình chỉ bảo tôi trong định
hướng nghiên cứu, đề xuất các ý tưởng và giúp đỡ về mặt phương pháp luận
cũng như việc kiểm tra cuối cùng đối với luận văn này.
Tôi xin chân thành cảm ơn các thày cô trong khoa Công nghệ Thông tin,
trường Viện Đại học Mở Hà Nội, khoa Công nghệ Thông tin – Trường Đại học
Công nghệ - Đại học Quốc gia Hà Nội đã giúp đỡ tôi rất nhiều trong quá trình

học tập, nghiên cứu và tạo điều kiện giúp tôi trong công tác để tôi có thời gian
thực hiện việc học tập và hoàn thành luận văn.
Cuối cùng, tôi xin bày tỏ lòng kính trọng và biết ơn sâu sắc tới bố mẹ
những người động viên tôi về mặt tinh thần và hỗ trợ nhiều về mọi mặt.

Hà Nội, Ngày 01 tháng 09 năm 2015
Học viên

Nguyễn Quang Hiệp


3

Mục lục
1

CHƯƠNG 1 ....................................................................................................... 9
1.1 Giới thiệu ....................................................................................................... 9
1.2 Các phương pháp tiếp cận bài toán gán nhãn vai trò ngữ nghĩa ................. 10
1.2.1

Tiếp cận theo luật ............................................................................... 10

1.2.2

Tiếp cận theo phương pháp thống kê ................................................. 12

1.3 Tổng quan về hệ thống gán nhãn vai trò ngữ nghĩa .................................... 14
1.3.1


Định nghĩa gán nhãn vai trò ngữ nghĩa nông ..................................... 15

1.3.2

Kho ngữ liệu PropBank ..................................................................... 15

1.3.3

Kiến trúc tổng quát của hệ thống gán nhãn vai trò ngữ nghĩa ........... 17

1.4 Ứng dụng của gán nhãn vai trò ngữ nghĩa trong xử lý ngôn ngữ tự nhiên . 20
1.4.1

Trích rút thông tin .............................................................................. 20

1.4.2

Hệ thống hỏi đáp ................................................................................ 21

1.4.3

Tóm tắt văn bản ................................................................................. 21

1.5 Kết luận chương 1 ....................................................................................... 23
2

Chương 2.......................................................................................................... 24
2.1 Giới thiệu ..................................................................................................... 24
2.1.1


Tổng quan về bài toán phân loại ........................................................ 24

2.1.2

Bài toán phân loại .............................................................................. 25

2.1.3

Một số phương pháp phân loại nổi tiếng ........................................... 22

2.2 Phương pháp mô hình AdaBoost ................................................................ 26
2.2.1

Phương pháp Boosting ....................................................................... 26

2.2.2

Phương pháp Adaboost ...................................................................... 26

2.3 Kết luận chương 2 ....................................................................................... 31
3

CHƯƠNG 3 ..................................................................................................... 33
3.1 Mô tả bài toán gán nhãn vai trò ngữ nghĩa nông ......................................... 33
3.2 Thu thập và chuẩn bị dữ liệu ....................................................................... 34


4
3.3 Công cụ Swirl .............................................................................................. 41
3.3.1


Giới thiệu ........................................................................................... 41

3.3.2

Huấn luyện và Kiểm tra ..................................................................... 42

3.4 Kết quả và thảo luận .................................................................................... 47
3.5 Kết luận chương 3 ....................................................................................... 51
4

KẾT LUẬN ...................................................................................................... 52

5

Phụ lục ............................................................................................................. 53
5.1 Danh sách các nhãn sử dụng trong bài toán gán ngữ nghĩa tiếng Việt
(dựa theo mô tả của VietTreebank): .................................................................... 53
5.2 Nhãn từ loại: ................................................................................................ 53
5.3 Nhãn cú pháp ............................................................................................... 53

6

Tài liệu tham khảo ........................................................................................... 56


5

DANH MỤC CHỮ VIẾT TẮT
Viết tắt

CoNLL
DS
DUC

Tiếng Anh
Conference on
Natural Language Learning
Document Summarization
Document Understanding
Conference

Tiếng Việt
Hội nghị học ngôn ngữ tự nhiên
Tóm tắt văn bản
Hội nghị hiểu văn bản
Danh sách các câu hỏi thường

FAQ

Frequent Asked Question list

HMMs

Hidden Markov Models

Mô hình Markov ẩn

IE

Information Extraction


Trích rút thông tin

IIS

Improved Iterative Scaling

Phương pháp lặp cải tiến

L-BFGS

Limited memory- Broyden–
Fletcher–Goldfarb–Shanno

gặp

Phương pháp L-BFGS

Maximum entropy Markov

Maximum entropy Markov

Models

Models

NER

Named- Entity Recognition


Nhận dạng thực thể

NLP

Natural Language Processing

Xử lý ngôn ngữ tự nhiên

PAS

Predicate-Argument Structure Cấu trúc tham tố- vị từ

PoS tagging

Part of Speech tagging

Gán nhãn từ loại

QA

Question Answering

Hệ thống hỏi đáp

SRL

Semantic Role Labelling

Gán nhãn vai trò ngữ nghĩa


MEMMs


6

DANH MỤC HÌNH VẼ
Hình 1.1 Kiến trúc tổng quát hệ thống SRL ............................................................ 17
Hình 2.1 Lược đồ cơ bản của AdaBoost .................................................................. 27
Hình 2.2 Thuật toán học AdaBoost.......................................................................... 28
Hình 3.1 Tệp chứa từ huấn luyện ............................................................................. 34
Hình 3.2 Tệp chứa cú pháp huấn luyện ................................................................... 35
Hình 3.3 Tệp chứa nhãn mệnh đề ............................................................................ 36
Hình 3.4 Tệp chứa nhãn danh từ riêng..................................................................... 36
Hình 3.5 Mẫu dữ liệu ban đầu ................................................................................. 40
Hình 3.6 Mô hình hoạt động Swirl .......................................................................... 42
Hình 3.7 Quá trình huấn luyện ................................................................................. 44
Hình 3.8 Các file model sinh ra sau khi huấn luyện ................................................ 45
Hình 3.9 Quá trình kiểm tra ..................................................................................... 46
Hình 3.10 Kết quả đánh giá các nhãn A0, A1, A2................................................... 48


7

MỞ ĐẦU
Xử lý ngôn ngữ tự nhiên (Natural Language Processing) là làm cách nào
để máy tính hiểu và thao tác trên ngôn ngữ. Trong đó, gán nhãn vai trò ngữ
nghĩa là một trong những bài toán được quan tâm và thu hút rất nhiều công trình
nghiên cứu. Nhiệm vụ chính của bài toán gán nhãn vai trò ngữ nghĩa là xác định
các cấu trúc đối- vị tố (hoặc tham tố- vị từ) (predicate- argument structures) và
gán nhãn các quan hệ giữa vị tố và mỗi argument của nó xuất hiện trong câu. Rõ

ràng, để gán nhãn ngữ nghĩa cho một từ, ta cần phải phân tích ngữ cảnh của nó.
Vấn đề đặt ra ở đây là làm sao lập trình cho máy tính hiểu được ngữ cảnh đó.
Đây chính là một trong những bài toán cơ bản, đầy thử thách của xử lý ngôn ngữ
tự nhiên. Bài toán có mặt trong nhiều ứng dụng nổi bật liên quan đến ngôn ngữ
tự nhiên có thể nhắc đến như: Trích rút thông tin (IE): Yakushiji và cộng sự
(2005) [1]; Tóm tắt văn bản (DS): Melli và cộng sự (2005) [1].
Hướng tiếp cận đầu tiên nhằm xác định nhập nhằng và gán nhãn ngữ
nghĩa được xây dựng dựa trên cơ sở của các hệ luật. Tuy nhiên, hệ thống gán
nhãn ngữ nghĩa xây dựng dựa trên hệ luật tỏ ra kém hiệu quả khi mở rộng quy
mô bao quát hết các hiện tượng của ngôn ngữ. Cải tiến từ những hạn chế của
phương pháp tiếp cận dựa trên hệ luật, các nghiên cứu tiếp sau dần chuyển sang
phương pháp tiếp cận hướng ngữ liệu. Sự chuyển hướng này cũng xuất phát từ
việc ra đời các kho ngữ liệu lớn trên thế giới cùng với sự gia tăng sức mạnh (bộ
nhớ, tốc độ, kỹ thuật) của máy tính trong những năm gần đây. Điểm đặc biệt của
cách tiếp cận này là dựa trên cơ sở lý thuyết ngôn ngữ học để học các quy luật
của ngôn ngữ tự nhiên từ ngữ liệu. Trong đó, mô hình học AdaBoost đã được
đánh giá cao khi thực hiện phân đoạn và gán nhãn chuỗi dữ liệu, trong đó, các
chuỗi nhãn và quan sát hình thành một chuỗi tuyến tính.
Vì vậy, chúng tôi tiến hành nghiên cứu đề tài “Ứng dụng AdaBoost cho
bài toán gán nhãn ngữ nghĩa nông”. Dữ liệu dùng cho bài toán này được lấy từ
kho ngữ liệu PropBank, bổ sung cho Penn Treebank với các chú thích ngữ
nghĩa, dựa trên bộ dữ liệu chuẩn CoNLL 2004. Bố cục luận văn gồm 3 chương:


8
Chương 1: Tổng quan về gán nhãn vai trò ngữ nghĩa.
Nội dung chính của chương này là giới thiệu bài toán gán nhãn vai trò
ngữ nghĩa theo các hướng tiếp cận khác nhau, đưa ra mô hình tổng quát của hệ
thống gán nhãn vai trò ngữ nghĩa và ứng dụng của hệ thống trong lĩnh vực xử lý
ngôn ngữ tự nhiên.

Chương 2: Phương pháp học máy AdaBoost
Nội dung chính của chương này là giới thiệu phương pháp học máy
AdaBoost, trình bày những vấn đề cơ bản nhất về mô hình AdaBoost ứng dụng
trong gán nhãn dữ liệu dạng chuỗi.
Chương 3: Ứng dụng phương pháp AdaBoost cho bài toán gán nhãn
vai trò ngữ nghĩa
Nội dung chính của chương này là mô tả bài toán gán nhãn vai trò ngữ
nghĩa theo hướng áp dụng mô hình học máy AdaBoost và công cụ Swirl trong
gán nhãn chuỗi dữ liệu. Đồng thời, chương này cũng trình bày các kết quả thực
nghiệm thu được và hướng nghiên cứu tiếp theo của đề tài.


CHƯƠNG 1: TỔNG QUAN VỀ
GÁN NHÃN VAI TRÒ NGỮ NGHĨA
Nội dung chính của chương là giới thiệu bài toán gán nhãn vai trò ngữ
nghĩa theo các hướng tiếp cận khác nhau, đưa ra mô hình tổng quát của hệ
thống gán nhãn vai trò ngữ nghĩa, ứng dụng của hệ thống trong xử lý ngôn ngữ
tự nhiên.
1.1 Giới thiệu
Thông thường, gán nhãn vai trò ngữ nghĩa là quá trình gán một cấu trúc
đơn giản:

WHO did WHAT to WHOM, WHEN, WHERE, WHY, HOW,. . .

cho một câu trong văn bản. (Ai? đã làm gì? với ai? khi nào? ở đâu? tại sao? như
thếnào?... ).
Ví dụ:
(i) Mary hit Jack with a ball yesterday.
(ii) Jack was hit by Mary yesterday with a ball.
Ta có thể thấy rằng “Mary, Jack, a ball, yesterday” đóng các vai trò ngữ

nghĩa sau: “Người đánh, vật bị đánh, dụng cụ, thời gian” trong cả hai câu.
Nhiệm vụ của gán nhãn vai trò ngữ nghĩa là gán các nhãn ngữ nghĩa đã được
xác định trước cho những cụm từ này mà không quan tâm tới sự xuất hiện của
chúng trong các nhận dạng cú pháp khác nhau. Lớp thông tin này rất cần thiết để
hiểu một cách đầy đủ ý nghĩa của cả hai câu. Tổng quát hơn, ví dụ trong nghiên
cứu của (Levin 1993 [2]) đã minh họa hiện tượng thay thế một lớp động từ.
Phép thay thế này trong nhận dạng cú pháp của argument ngữ nghĩa có phạm vi
trải rộng, ảnh hưởng tới hầu hết các động từ trong tiếng Anh, và các thành phần
được biểu thị bởi các động từ cụ thể, khá đa dạng. Trong những năm gần đây,
những tiến bộ vượt bậc của các kỹ thuật phân tích cú pháp đã có ảnh hưởng


không nhỏ đến các ứng dụng trong xử lý ngôn ngữ tự nhiên, tuy vậy, việc đi từ
phân tích cú pháp tới hiểu đầy đủ ý nghĩa của một câu vẫn còn là một chặng
đường dài để nghiên cứu. Điều này đã thôi thúc các nhà nghiên cứu phát triển
một kỹ thuật tự động và chính xác cho vấn đề phân tích cú pháp lớp ngữ nghĩa,
và đặt một bước tiến quan trọng hướng tới mục đích hiểu ngôn ngữ.
Gán nhãn vai trò ngữ nghĩa là một bài toán đã được định nghĩa tốt trong
nhiều framework khác nhau, thu hút sự quan tâm của nhiều nhà nghiên cứu. Gán
nhãn vai trò ngữ nghĩa hướng tới việc xác định và gán nhãn tất cả argument
(hoặc vai trò ngữ nghĩa) cho mỗi vị tố xuất hiện trong câu. Cụ thể hơn, nhiệm vụ
này bao gồm việc xác định các thành phần biểu diễn các argument của vị tố và
gán nhãn các vai trò ngữ nghĩa cho các thành phần đó. Sau đây là một số ví dụ
về các nhãn vai trò ngữ nghĩa:
(i) [Agent Mary]hit [Theme Jack][Instrument with a ball][Temporal yesterday].
(ii) [Theme Jack] was hit by [Agent Mary][Temporal yesterday][Instrument with a ball].
(iii) [A0 John] broke [A1 the window].
(iv) [A1 The window] was broken by [A0 John].
Trong các ví dụ này, thông tin được mô tả biễu diễn các nhãn vai trò ngữ
nghĩa mà được gán cho các argument của vị tố (in nghiêng). Hai ví dụ đầu được

phân tích sử dụng chú thích FrameNet, hai ví dụ còn lại được phân tích sử dụng
kho ngữ liệu PropBank.
1.2 Các phương pháp tiếp cận bài toán gán nhãn vai trò ngữ nghĩa
1.2.1 Tiếp cận theo luật
Đây là cách tiếp cận truyền thống xuất phát từ cách làm của các hệ luật
phát sinh trong hệ chuyên gia trong lĩnh vực trí tuệ nhân tạo (AI = Artificial
Intelligence). Thông thường các hệ luật này được xây dựng bằng tay bởi các
chuyên gia xử lý ngôn ngữ tự nhiên.


Nhiều nghiên cứu trước đó được thực hiện bởi Hirst (1987) [17] sử dụng
một phép phân tích cú pháp dựa trên luật và biểu diễn tri thức dựa trên frame,
tương tự như nghiên cứu của Fillmore (1976) [14], Hirst đã sử dụng phương
pháp ánh xạ để kết nối các thành phần cú pháp tới các vị trí frame tương ứng của
chúng và biểu diễn ngữ nghĩa của câu được xây dựng lần lượt từng thành phần.
Các nhóm tác giả Pustejovsky (1995) [30], Copestake và Flickinger (2000) [10]
cũng đã có những nghiên cứu tương tự về các lớp từ vựng và ngữ pháp được xây
dựng thủ công.
Những nghiên cứu trước đây tập trung vào việc xác định các cấu trúc
argument danh nghĩa sử dụng các cách tiếp cận tương tự như trên. Ví dụ, Dahl
và cộng sự (1987) [3] đã sử dụng tập các quy tắc kết hợp các thành phần cú
pháp với các vai trò ngữ nghĩa cho các vị tố danh nghĩa. Xét ví dụ sau của Dahl
và cộng sự:
Investigation revealed [Instrument metal] [Predicate contamination] in [Theme the filter].
Hệ thống tạo bởi Dahl và cộng sự sử dụng các luật sau để xác định các
chất gây ô nhiễm (metal) và thực thể bị ô nhiễm (the filter):
1. Instrument là danh từ đứng trước vị tố contamination.
2. Theme là đối tượng của cụm giới từ theo sau contamination.
Các luật được định nghĩa trên cho phép hệ thống xác định đúng các lớp
vai trò ngữ nghĩa trong ví dụ trên. Hệ thống này không được đánh giá một cách

chính thức nhưng hoàn toàn có cơ sở tin rằng các quy tắc trên có thể đúng khi
được áp dụng.
Các quy tắc trong nghiên cứu của Dahl và cộng sự đã cho thấy những ưu
điểm và hạn chế thường gặp đối với các hệ thống gán nhãn ngữ nghĩa dựa trên
hệ luật. Một mặt, nếu một luật chính xác cho ra một dự đoán, thì dự đoán đó gần
như là đúng (ví dụ như việc xác định các nhãn Instrument và Theme bên trên).
Hơn nữa, các hệ luật được xây dựng đầy đủ vì bất cứ một phép suy diễn nào


cũng đều có thể được giải thích theo các luật đã tạo ra nó. Tuy nhiên, các hệ
thống được mô tả như trên có xu hướng dễ dàng bị phá vỡ đặc biệt khi được áp
dụng trong các loại văn bản mà chưa được dự đoán trước. Đây là kết quả của
bản chất “all or nothing” của việc giải thích ngữ nghĩa và cú pháp dựa trên hệ
luật. Với tính linh hoạt, đa dạng của ngôn ngữ, chúng ta không ngạc nhiên, trong
nhiều trường hợp, một tập giới hạn các quy tắc (luật) gặp thất bại khi áp dụng
vào một câu trong ngôn ngữ tự nhiên.
Vấn đề thực sự nảy sinh khi các nghiên cứu đòi hỏi cần mở rộng quy mô
để bao quát hết các hiện tượng của ngôn ngữ. Ban đầu, người ta cho rằng để mở
rộng quy mô của hệ khử nhập nhằng ngữ nghĩa thì ta cứ việc thêm nhiều luật
vào, nhưng thực tế đã cho thấy khi số luật tăng lên thì bản thân người thiết kế sẽ
khó mà kiểm soát được tính hợp lý và tương thích của các bộ luật do mình đưa
vào vì thế, sẽ xuất hiện nhiều luật mâu thuẫn nhau. Việc xây dựng một hệ luật
như thế đòi hỏi công sức rất lớn và thường không bao quát hết mọi trường hợp,
mặc dù, trong một số miền hẹp thì chúng tỏ ra hiệu quả. Kết quả là những hệ
thống gán nhãn ngữ nghĩa được xây dựng trên luật sẽ có nguy cơ bị sụp đổ bởi
chính sức nặng của chúng.
1.2.2 Tiếp cận theo phương pháp thống kê
Sự ra đời của các kho ngữ liệu lớn như FrameNet và PropBank đã cải tiến
việc xử lý ngữ nghĩa dựa trên hệ luật sang phương pháp hướng ngữ liệu. Nghiên
cứu của Gildea và Jurafsky (2002) [15] đã giải quyết bài toán SRL như một bài

toán học máy có giám sát và sử dụng kho ngữ liệu FrameNet làm dữ liệu huấn
luyện. Gildea và Jurafsky đã sử dụng phương pháp thống kê cực đại hóa
likelihood cho các đặc trưng cú pháp và từ vựng khác nhau để vừa phân biệt
được các biên của phần tử frame bên trong văn bản vừa gán các nhãn vai trò ngữ
nghĩa cho các phần tử được xác định. Mỗi ví dụ huấn luyện được phân tích
thành một cây cú pháp sử dụng bộ phân tích cú pháp Collin (Collin, 1997 [9]) và
một tập các đặc trưng cú pháp và từ vựng, như loại cụm từ của mỗi thành phần,


vị trí của nó,. . . được trích rút. Những đặc trưng này được kết hợp với các tri
thức về vị tố, cũng như các thông tin về xác suất ưu tiên của các cách kết hợp
khác nhau của vai trò ngữ nghĩa. Nghiên cứu này đã đặt nền móng cho các hệ
thống gán nhãn vai trò ngữ nghĩa tự động hiện nay.
Gán nhãn ngữ nghĩa là một nhiệm vụ khá phức tạp, được phân tách thành
các bài toán nhỏ hơn với các chiến lược gán nhãn khác nhau để có thể áp dụng
được các phương pháp học máy. Vấn đề đầu tiên phải kể đến đó là việc chú
thích cho các mệnh đề trong câu. Hầu hết các nhóm nghiên cứu tham dự CoNLL
2004 đều xác định việc chú thích vai trò ngữ nghĩa cho mỗi động từ vị ngữ trong
câu là một nhiệm vụ độc lập. Tuy nhiên hệ thống của Carreras và cộng sự
(2004) [4] thực hiện chú thích đồng thời cho tất cả các mệnh đề. Do vậy, nhóm
đầu tiên coi bài toán SRL tương tự với việc nhận dạng các cấu trúc dạng chuỗi
(ví dụ bài toán chunking), trong khi đó, nhóm còn lại chỉ ra một cấu trúc phân
cấp được hình thành bởi các argument của tất cả các mệnh đề. Các nghiên cứu
này cũng đã chỉ ra ba chiến lược gán nhãn chủ yếu được sử dụng. Chiến lược
đầu tiên xác định các ai trò một cách trực tiếp dựa vào việc gán nhãn chuỗi có
định dạng BIO. Chiến lược thứ hai bao gồm việc chia bài toán thành hai giai
đoạn độc lập: giai đoạn nhận dạng (identification) các argument và giai đoạn
gán nhãn (labelling). Chiến lược thứ ba cũng tiến hành dựa trên hai quá trình:
quá trình lọc (filtering) quyết định tập argument và quá trình gán nhãn
(labeling), trong đó, tập các argument tối ưu được rút ra từ tập ban đầu.

Tốc độ phát triển nhanh chóng của các kỹ thuật học máy đã có nhiều đóng
góp trong việc giải quyết bài toán gán nhãn vai trò ngữ nghĩa. Hacioglu và cộng
sự tại hội nghị CoNLL 2004 [16] đã lựa chọn SVMs để thực hiện phân lớp vai
trò ngữ nghĩa. Động cơ khi chọn bộ phân lớp này là khả năng xử lý một số
lượng cực lớn các đặc trưng tương tác hoặc đặc trưng chồng chéo với tính khái
quát hóa cao. Cùng giải quyết bài toán này, Lim và cộng sự [21] đã đề xuất
phương pháp gán nhãn sử dụng mô hình entropy cực đại (Maximum Entropy).


Ban đầu, để xây dựng mô hình, các tác giả này đã sử dụng các thông tin về cú
pháp của việc biểu diễn vai trò ngữ nghĩa trong một mệnh đề: các argument của
một vị tố được đặt trong mệnh đề hoặc các mệnh đề bên trên. Sau đó, đối với tập
các đặc trưng, mối quan hệ giữa các thuộc tính cú pháp và ngữ nghĩa của một
ngữ cảnh cho trước được xem xét và lựa chọn. Việc lựa chọn thuật toán học máy
Entropy cực đại cho phép không những khai thác được tập các đặc trưng phong
phú mà còn giúp giảm bớt vấn đề dữ liệu thưa. Ngoài ra còn một số thuật toán
học máy được sử dụng hiệu quả như Memory - based learning, Voted
perceptron, Transformation -based errors driven learning...
1.3 Tổng quan về hệ thống gán nhãn vai trò ngữ nghĩa
Phân tích ngữ nghĩa là nhiệm vụ ánh xạ một câu trong ngôn ngữ tự nhiên
tới một dạng biểu diễn hình thức, quy cách và hoàn chỉnh sử dụng một ngôn ngữ
biểu diễn có nghĩa. Nó tạo ra một phép phân tích ngữ nghĩa sâu mà sản phẩm là
một dạng biểu diễn của câu trong logic vị tố hoặc các dạng ngôn ngữ hình thức
khác, hỗ trợ các lập luận tự động. Bên cạnh đó, mục tiêu của gán nhãn vai trò
ngữ nghĩa, bản chất là một dạng phân tích ngữ nghĩa nông, là xác định và gán
các nhãn như "agent, patient, manner" (FrameNet) cho các thành phần trong câu
đối với một vị tố cụ thể, và không cần sinh các dạng biểu diễn hình thức, quy
cách và đầy đủ.
Tốc độ phát triển không ngừng nghỉ của lĩnh vực học máy thống kê đòi hỏi
một lượng lớn dữ liệu xử lý, bởi vậy, các kho ngữ liệu chú thích ngày càng trở

nên quan trọng trong xử lý ngôn ngữ tự nhiên. Trong phần này ta sẽ tìm hiểu
kho ngữ liệu sử dụng cho bài toán gán nhãn vai trò ngữ nghĩa. Dự án FrameNet
Berkeley (Baker and Fillmore, 1998 [3]) và PropBank (Palmer, Gildea và
Kingsbury, 2005 [27]) là hai kho ngữ liệu chú thích phổ biến, cung cấp các chú
thích vai trò ngữ nghĩa. Tuy nhiên, kho ngữ liệu PropBank vẫn được sử dụng
rộng rãi hơn trong các bài toán gán nhãn vai trò ngữ nghĩa bởi tính đa dạng của
nó và cung cấp nhiều ví dụ huấn luyện hơn FrameNet.


1.3.1 Định nghĩa gán nhãn vai trò ngữ nghĩa nông
Định nghĩa: gán nhãn vai trò ngữ nghĩa nông (Semantic Role Labeling
with shallow parsing) là việc gán nhãn cụm từ của một câu với các vai trò ngữ
nghĩa đối với một từ mục tiêu.
Ví dụ:
Shaw Publishing offered Mr. Smith a reimbursement last March.
Được gán nhãn là:


[AGENT Shaw Publishing] offered [RECEPIENT Mr. Smith] [THEME a
reimbursement] [TIME last March] .

1.3.2 Kho ngữ liệu PropBank
Kho ngữ liệu PropBank tập trung vào các cấu trúc argument của động từ,
cung cấp một kho ngữ liệu hoàn chỉnh được chú thích bởi các nhãn ngữ nghĩa,
bao gồm cả các vai trò ngữ nghĩa được xem xét một cách truyền thống như các
argument và các trạng từ. PropBank cho phép chúng ta bước đầu quyết định
được tần số của các biến thể cú pháp trong thực tế, đặt ra nhiều bài toán và chiến
lược mới đối với vấn đề hiểu ngôn ngữ tự nhiên. Ví dụ về nhãn vai trò ngữ
nghĩa theo ngữ liệu PropBank như sau:
[A0 He] [AM-MOD would] [AM-NEG n’t] [V accept] [A1 anything of value] from [A2

those he was writing about].
Trong đó, V: động từ (verb), A0: người đồng ý (acceptor), A1: vật được
đồng ý (thing accepted), A2: đồng ý từ (accepted -from), A3: thuộc tính
(attribute), AM-MOD: động từ khuyết thiếu (modal), AM-NEG: tính phủ định
(negation).
Mục tiêu: PropBank hướng tới mục tiêu hoàn thiện đầy đủ kho ngữ liệu
chú thích vai trò ngữ nghĩa Penn Treebank. Từ vựng của PropBank ban đầu
được thêm vào các chú thích, sau đó được phát triển thành một tài nguyên trên


chính nó. Với mỗi trạng thái động từ, chỉ có duy nhất một frameset được hình
thành, chứa đựng tập các vai trò ngữ nghĩa tại các nhận dạng cú pháp hoàn chỉnh
của nó.
Phương pháp chú thích: Một trong những khác biệt lớn nhất trong
phương pháp luận của hai kho ngữ liệu FrameNet và PropBank đó là, PropBank
quan tâm chính vào chú thích của mỗi verb frame vì chúng giải thích tất cả các
câu trong Penn Treebank. PropBank định nghĩa các vai trò ngữ nghĩa trên cơ sở
verb to verb. Đặc biệt, đối với mỗi vị tố cụ thể, một mẫu các câu từ kho ngữ liệu
chứa động từ này được kiểm tra và nhóm lại thành một hoặc nhiều trạng thái
chính, mỗi trạng thái chính chuyển thành một frameset đơn. Các trạng thái động
từ sẽ được xét riêng biệt nếu chúng có đặc trưng cú pháp riêng biệt mà liên hệ
với các dạng argument khác. Các vai trò ngữ nghĩa của mỗi động từ được đánh
số lần lượt từ Arg0 đến Arg5. Arg0 thông thường là argument biểu diễn các đặc
trưng của một Agent nguyên thủy, Arg1 là Patient hoặc Theme nguyên thủy. Bổ
sung vào các vai trò được đánh số của các động từ cụ thể, một danh mục các vai
trò ngữ nghĩa về mặt thời gian cũng được định nghĩa với tag ArgM và một tập
các tag chức năng (13 tag chức năng) ký hiệu vai trò của các thành phần bên
trong vị tố, như là ArgM- LOC (Locatives marker) và ArgM- TMP (Temporal
marker). Những nhãn chức năng này cũng xuất hiện trên các argument được
đánh số. Chú thích PropBank ra đời có sự kế thừa từ Penn Treebank: không chỉ

bộ chú thích được biểu diễn trên cây cú pháp khi phân tích một câu, chúng còn
được ràng buộc với việc gán các nhãn ngữ nghĩa cho các phần của câu tương
ứng với các nút trong cây.
Các phiên bản gần đây: English PropBank I dành cho tiếng Anh được
phát hành vào năm 2004, gồm 3323 động từ vị ngữ và 4659 frameset. Ngoài 787
động từ thường xuyên xuất hiện, 521 động từ chỉ có 1 frameset và 169 động từ
có 2 frameset và 97 động từ có nhiều hơn 3 frameset. Chinese PropBank cho
tiếng Trung và Korean PropBank cho tiếng Hàn được phát hành năm 2005 và


2006. Chú thích PropBank đã được khai thác trong lĩnh vực sinh học bởi Chou
và các đồng nghiệp 2006 [7] bằng cách thêm chú thích PropBank vào đầu kho
ngữ liệu GENIA Treebank (Tateisi và cộng sự 2005 [32]).
1.3.3 Kiến trúc tổng quát của hệ thống gán nhãn vai trò ngữ nghĩa
Hầu hết các nghiên cứu phát triển hệ thống SRL gần đây hướng tới xây
dựng một hệ thống học máy thống kê và phân loại tất cả các vai trò ngữ nghĩa
cho đa dạng các loại vị tố trong một văn bản không giới hạn. Gildea và Jurafsky
(2002) [15] đã giới thiệu hệ thống thống kê SRL đầu tiên trên FrameNet. Hệ
thống này dựa vào một bộ phân lớp thống kê được huấn luyện trên 50 000 câu,
được trích rút từ kho ngữ liệu FrameNet. Mỗi ví dụ huấn luyện được phân tích
thành một cây cú pháp sử dụng bộ phân tích cú pháp Collin (Collin, 1997) [9] và
một tập các đặc trưng cú pháp và từ vựng, như loại cụm từ của mỗi thành phần,
vị trí,. . . được trích rút. Những đặc trưng này được kết hợp với các tri thức về vị
tố, cũng như các thông tin về xác suất ưu tiên của các kết hợp khác nhau của vai
trò ngữ nghĩa. Nghiên cứu này đặt nền móng cho các hệ thống gán nhãn vai trò
ngữ nghĩa tự động hiện nay. Nó xây dựng nên một kiến trúc hệ thống SRL tổng
quát và cung cấp một tập đặc trưng quan trọng, cốt lõi đã được sử dụng rộng rãi
bởi hầu hết các hệ thống SRL hiện tại.

Hình 1:1 Kiến trúc tổng quát hệ thống SRL



Đối với mỗi câu cho trước và các vị tố mục tiêu, một hệ thống SRL phải
xác định được tất cả các thành phần trong câu đóng vai trò ngữ nghĩa đối với
mỗi vị tố. Thành phần Bộ chú giải (Annotator) làm giàu thông tin bằng cách sử
dụng các bộ phân tích cú pháp (cây phân tích cú pháp) hoặc bộ phân tích nông
(thông tin phân cụm) hoặc các bản thể luận ngữ nghĩa như WordNet/ VerbNet
hoặc Name Entity Identifier - bộ nhận dạng thực thể. Sau đó, thành phần trích
rút đặc trưng (Feature Extractor), sẽ trích rút các đặc trưng được định nghĩa
trước như là từ loại, thể thức của vị tố (bị động/chủ động), … từ đầu ra của bộ
chú giải.
Các đặc trưng đã trích rút sau đó được đưa vào thành phần học (Learning)
để huấn luyện. Thành phần học này thường được chia thành hai bộ phận: một là
nhận dạng, xác định vai trò ngữ nghĩa (the semantic role identification
component), hai là phân lớp vai trò ngữ nghĩa (the semantic role classification
component). Quá trình xác định vai trò ngữ nghĩa là quá trình nhận dạng các
thành phần được phân tích trong câu, đại diện cho các argument ngữ nghĩa của
một vị tố cho trước. Quá trình phân lớp vai trò ngữ nghĩa là một quá trình gán
các nhãn argument tương ứng với một thành phần đã được xác định ở trên. Giả
sử bộ chú giải cung cấp một cây cú pháp của câu, khi đó, mỗi nút trên cây phân
tích có thể được phân lớp như là một argument ngữ nghĩa (a non- null node)
hoặc không đại diện cho argument ngữ nghĩa (a null node). Mục đích của việc
xác định vai trò ngữ nghĩa là phân biệt các nút rỗng (null nodes) từ các nút
không rỗng (non- null nodes). Các nút không rỗng sau đó được phân lớp bởi tập
các nhãn argument bằng thành phần phân lớp vai trò ngữ nghĩa.
Các đặc trưng khác nhau có thể giúp ích cho các nhiệm vụ riêng biệt. Ví
dụ, các đặc trưng cấu trúc thì thường có ích hơn với việc nhận dạng, xác định
argument trong khi đó, các đặc trưng từ vựng thì có ích hơn đối với việc phân
loại argument (Pradhan, Ward và Martin, 2008 [28]). Thành phần học sử dụng
một mô hình địa phương, trong đó ước lượng xác suất vai trò ngữ nghĩa đối với



mỗi thành phần là độc lập. Với giả thiết độc lập mạnh này, các hệ thống có thể
đạt được hiệu suất thấp nhận được. Một vài ràng buộc cứng, như: không có sự
chồng chéo giữa các thành phần được gán nhãn với các vai trò ngữ nghĩa hoặc
chuỗi nhãn vai trò ngữ nghĩa phải hợp lệ, được đặt ra, đóng vai trò như một
bước hậu xử lý (post- processing). Một vài hệ thống quan tâm tới việc phụ thuộc
bên trong giữa các nhãn của các thành phần trong một framework kết hợp và đạt
được hiệu suất cao hơn về chi phí và chiến lược học phức tạp hơn.
Một số thiết lập điển hình cho SRL
Chú thích: đối với một câu cho trước, cây phân tích cú pháp của câu nói
chung được coi là đầu vào của hệ thống SRL và mỗi xâu con của câu có một
nhãn ngữ nghĩa tương ứng với một thành phần cú pháp trong câu. Việc xác định
các thành phần là đặc biệt quan trọng đối với PropBank vì quá trình chú thích
bao gồm cả việc bổ sung thông tin ngữ nghĩa vào các thành phần trong Penn
Treebank. Cho đến nay, các chú thích được sử dụng nhiều nhất cho bài toán
SRL là cây phân tích cú pháp đầy đủ dựa trên các chú thích tham tố- vị từ
PropBank. Một số nghiên cứu gần đây đã cho thấy sự không cần thiết sử dụng
các cây phân tích đầy đủ này đối với việc sử dụng các cấu trúc phụ thuộc hoặc
thông tin cú pháp nông ở mức độ phân đoạn các cụm từ trong câu. Dựa trên các
chú thích cú pháp của câu đầu vào, các đặc trưng được trích rút từ những cây
phân tích cú pháp. Một tập cụ thể các đặc trưng như vậy được sử dụng rộng rãi
trong hệ thống gán nhãn vai trò ngữ nghĩa.
Thành phần Learning: Khá nhiều chiến lược học máy khác nhau đã
được áp dụng như: các mô hình sinh Bayes (Gildea và Jurafsky, 2002 [15]), cây
quyết định (Chen và Rambow, 2003 [25]), Maximum Entropy (Xue và Palmer,
2004 [33]), Support vector machine- SVMs (Pradhan và cộng sự, 2004 [29]),
Tree Conditional Random Fields (Cohn và Blunsom, 2005 [8]).
Đánh giá: Nói chung, các độ đo tiêu chuẩn cho hiệu suất của hệ thống
gán nhãn vai trò ngữ nghĩa là: Precision, Recall và F-score. Đối với mỗi vai trò



ngữ nghĩa, ví dụ A0, các tiêu chuẩn trên được tính toán và hiệu suất của toàn hệ
thống được đánh giá theo số lượng các argument được gán nhãn đúng, số lượng
các argument được gán nhãn và số lượng các gold argument. Về phía đánh giá
tổng thể hệ thống, việc đánh giá các bài toán con của các định và phân loại nhãn
argument cũng được cung cấp để thu được các phân tích và so sánh tốt hơn. Ba
chỉ số này được tính toán như sau:
Precision

=

Recall

=

F-score

=

!ố$ượ'()á)+,(-./'0đượ)(á''2ã'đú'(
!ố$ượ'()á)+,(-./'0!đượ)(á''2ã'
!ố$ượ'()á)+,(-./'0đượ)(á''2ã'đú'(
!ố$ượ'()á)(5$6+,(-./'0
7∗9,/):!:5'∗,/)+$$
9,/):!:5';,/)+$$

1.4 Ứng dụng của gán nhãn vai trò ngữ nghĩa trong xử lý ngôn ngữ tự
nhiên
1.4.1 Trích rút thông tin

Mục tiêu chính của bài toán trích rút thông tin (IE) là cung cấp những
mẩu thông tin nổi bật quan trọng đối với nhu cầu của người dùng. Các loại
thông tin được trích rút, rất đa dạng về chi tiết và độ tin cậy. Ví dụ: nhận dạng
thực thể (NER), các thực thể có liên quan tới việc xác định các thuộc tính và sự
kiện, và việc xác định chỉ mục mức sự kiện là toàn bộ những bài toán con của
bài toán trích rút thông tin. Một hệ thống trích rút thông tin kinh điển được đề
xuất bởi Surdeanu (2003) và cộng sự [31] đã khai thác được những ưu điểm của
cấu trúc tham tố- vị từ. Nghiên cứu này đã xây dựng một hệ thống gán nhãn vai
trò ngữ nghĩa và sử dụng các thông tin ngữ nghĩa trích rút được, để mở rộng các
template sử dụng lại cho mục đích trích rút thông tin. Gần đây, việc trích rút các
mối quan hệ có ý nghĩa giữa các thực thể từ một văn bản ngôn ngữ tự nhiên phi
cấu trúc đã thu hút được nhiều sự quan tâm của các nhà khoa học.
Các cấu trúc tham tố- vị từ (Predicate- Argument structures, PAS) cũng
được áp dụng cho bài toán trích rút thông tin trong lĩnh vực y sinh học.


Yakushiji (2005) [34] và cộng sự đã trích rút mối quan hệ tương tác giữa các
protein bằng cách tận dụng các lợi điểm của cấu trúc PAS. Đặc biệt, các câu ban
đầu được đưa qua một bộ phân tích ngữ pháp đầy đủ và một cấu trúc PAS được
trích rút từ các phân tích cú pháp mà có thể hấp thụ những dạng đảo ngược của
câu bề mặt. Mức trừu tượng này sau đó hỗ trợ việc trích rút tự động các quy tắc,
sử dụng cho biểu diễn tương tác của các protein. Kết quả này cũng thu được
hiệu suất đáng kể và có thể mang so sánh với các quy tắc trích rút được tạo ra
thủ công.
1.4.2 Hệ thống hỏi đáp
Hệ thống hỏi đáp hiện tại (QA) trích rút các câu trả lời từ một tập các văn
bản lớn theo các bước sau:
(1) Phân loại dạng câu trả lời mong muốn.
(2) Sử dụng các từ khóa hoặc các mẫu hỏi kết hợp với các câu hỏi để xác
định các đoạn có chứa câu trả lời.

(3) Xếp hạng các câu trả lời có thể để quyết định đoạn nào chứa câu trả
lời chính xác.
Trong kết quả của Narayanan và Harabagiu (2004) [26], thông tin vai trò
ngữ nghĩa được kết hợp cả trong các câu hỏi và văn bản. Ban đầu, thông tin này
giúp xác định mô hình chủ đề, hỗ trợ cho quá trình giải thích câu hỏi, sau đó, sử
dụng để xây dựng một mô hình mở rộng của các hành vi và sự kiện, mà cho
phép lập luận phức tạp được đề xuất bởi hệ thống QA bên trong một ngữ cảnh
phức tạp.
1.4.3 Tóm tắt văn bản
Nhiệm vụ của hội nghị DUC - 2005 (Document Understanding
Conference 2005) là tạo ra một đoạn tóm tắt 250 từ dựa trên các câu hỏi cho sẵn
và nhiều văn bản liên quan. Melli và công sự (2005) [25] đã tích hợp thành phần
gán nhãn vai trò ngữ nghĩa vào trong hệ thống SQUASH. Trong hệ thống này,


thành phần lõi ROUGE-2 là một bước cải tiến lớn trong việc xem xét ảnh hưởng
của các đặc trưng khác. ROUGE - Recall Oriented Understudy for Gisting
Evaluation, gồm các phương pháp tự động quyết định chất lượng của một đoạn
tóm tắt bằng cách so sánh nó với các đoạn văn bản tóm tắt lý tưởng do người
dùng tạo ra. Các phương pháp này tính toán số lượng đơn vị chồng chéo như là
N- gram, chuỗi từ, và các cặp từ giữa đoạn tóm tắt sinh bởi máy để đánh giá và
các đoạn tóm tắt lý tưởng. Lõi ROUGE-2 là phương pháp để đo những gram
giống nhau trong đoạn tóm tắt.
Trong hệ thống SQUASH, thông tin vai trò ngữ nghĩa được dùng để lựa
chọn câu và nén câu. Đối với lựa chọn câu, các thông tin ngữ nghĩa này đóng
góp cho việc ước lượng độ cần thiết được gán cho mỗi câu trong nhóm các vai
trò ngữ nghĩa mà bao gồm các thực thể đóng vai trò trong câu. Thêm vào đó, nó
cũng giúp đo độ tương tự của các câu và loại bỏ các thông tin thừa trong câu để
đoạn tóm tắt vừa đủ 250 từ. Ví dụ: những thành phần sau có thể được nắm bắt
vai trò ngữ nghĩa bằng các nhãn ngữ nghĩa ARG- TMP (temporal markers) và

ARG- DIS (discourse markers) được loại bỏ phục vụ mục đích nén câu.
1.5 Một số phương pháp phân loại nổi tiếng
1.5.1 Cây quyết định
Một cây quyết định là một cấu trúc cây, trong đó mỗi node trong biểu thị
cho một phép phân nhánh tương ứng cho một thuộc tính, mỗi nhánh biểu thị cho
một kết quả của một phép thử, các node lá biểu thị cho lớp hoặc các phân bố
lớp. Node trên cùng trong một cây được gọi là gốc.
Để phân lớp một mẫu chưa biết, những giá trị thuộc tính của mẫu đó được
thử ngược lại trên cây quyết định. Một đường dẫn từ gốc đến một node lá là cơ
sở cho việc dự đoán lớp của một mẫu. Cây quyết định có thể dễ dàng chuyển đổi
sang một tập các luật phân lớp. Cơ sở toán học của cây quyết định là thuật toán


tham lam, thuật toán này đã xây dựng cây quyết định đệ quy từ trên xuống dưới,
theo phương pháp chia để trị.
1.5.2 Mạng Bayes
Bayesian là phương pháp phân lớp dựa vào thống kê. Ta có thể dự đoán
xác suất của các lớp trong tập dữ liệu, dựa vào xác suất này có thể xếp các mẫu
vào các lớp riêng biệt. Thuật toán phân lớp Bayesian giả thiết rằng giá trị các
thuộc tính của một lớp độc lập với giá trị của các thuộc tính khác, giả thiết này
còn được gọi là lớp độc lập có điều kiện, nó làm đơn giản các tính toán sau này.
Mạng Bayesian là một đồ thị, trên đồ thị cho phép biểu diễn mối quan hệ giữa
các thuộc tính.
1.5.3 Support Vector Machine
Support Vector Machine (SVM) là một phương pháp mới để phân lớp dữ
liệu. Nó dễ sử dụng hơn mạng neural, tuy nhiên nếu không sử dụng nó chính xác
thì dễ bị bỏ qua một số bước đơn giản nhưng cần thiết, dẫn đến kết quả không
được thỏa mãn. Mục đích của phương pháp SVM là phát sinh ra một mô hình từ
tập mẫu học, mô hình này có khả năng dự đoán lớp cho các mẫu thử. SVM tìm
ra một hàm quyết định phi tưyến trong tập mẫu học bằng cách ánh xạ hoàn toàn

các mẫu học vào một không gian đặc trưng kích thước lớn có thể phân lớp tuyến
tính và phân lớp dữ liệu trong không gian này bằng cách cực đại khoảng cách lề
(geometric margin) và cực tiểu lỗi học cùng một lúc.

1.6 Kết luận chương 1
Nội dung chính của chương là giới thiệu bài toán gán nhãn vai trò ngữ
nghĩa theo các hướng tiếp cận khác nhau, đưa ra mô hình tổng quát của hệ thống
gãn nhãn vai trò ngữ nghĩa, ứng dụng của hệ thống trong xử lý ngôn ngữ tự
nhiên.


×