Do đó trong nội dung của luận văn này, học viên tập trung khai thác bài toán rút trích thông tin theo hướng rút trích đồng thời thực thể và quan hệ joint entity and relation extraction ,
Trang 1ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
——————–
BÙI LÊ NGỌC MIN
ỨNG DỤNG HỌC SÂU VÀO XÂY DỰNG MÔ HÌNH RÚT TRÍCH
Trang 2ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
——————–
BÙI LÊ NGỌC MIN
ỨNG DỤNG HỌC SÂU VÀO XÂY DỰNG MÔ HÌNH RÚT TRÍCH
Trang 3CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG-HCM Cán bộ hướng dẫn khoa học:
Cán bộ chấm nhận xét 1:
Cán bộ chấm nhận xét 2:
Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày tháng năm 2022
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)
1
2
3
4
5
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
KỸ THUẬT MÁY TÍNH
Trang 4ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: BÙI LÊ NGỌC MIN MSHV: 2070105
Ngày, tháng, năm sinh: 10/08/1996 Nơi sinh: Phú Yên
Chuyên ngành: Khoa học Máy tính Mã số : 8480101
I TÊN ĐỀ TÀI: ỨNG DỤNG HỌC SÂU VÀO XÂY DỰNG HỆ THỐNG RÚT
TRÍCH THÔNG TIN
II NHIỆM VỤ VÀ NỘI DUNG:
- Nghiên cứu, xây dựng hệ thống rút trích thực thể và quan hệ sử dụng các mô hình học sâu
- Nghiên cứu và đề xuất các phương pháp nhằm cải thiện độ chính xác của mô hình
- Thực nghiệm và đánh giá kết quả của các phương pháp đề xuất
III NGÀY GIAO NHIỆM VỤ : 06/09/2021
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 06/06/2022
V CÁN BỘ HƯỚNG DẪN: PGS.TS Quản Thành Thơ, TS.Nguyễn Thiên Bình
Trang 5LỜI CÁM ƠN
Sau một thời gian tiến hành triển khai nghiên cứu, em cũng đã hoàn thànhnội dung luận văn Luận văn được hoàn thành không chỉ là công sức của bảnthân tác giả mà còn có sự giúp đỡ, hỗ trợ tích cực của nhiều cá nhân và tậpthể
Trước hết, em xin gửi lời cảm ơn chân thành và sâu sắc đến PGS.TSQuản Thành Thơ, thầy là người hướng dẫn trực tiếp trong quá trình thựchiện luận văn, nhờ những lắng nghe và đóng góp ý kiến của thầy giúp emhình thành và hoàn thiện nhiều ý tưởng Hơn hết thầy là người đã truyền cảmhứng cho em rất nhiều về niềm đam mê với học máy, học sâu, và xử lí ngônngữ tự nhiên
Em cũng xin gửi lời cảm ơn đến chị Nguyễn Võ Thùy Trang đã giúp đỡ,động viên em nhiều trong thời gian ban đầu, khoảng thời gian khó khăn nhấtcủa em trong quá trình thực hiện luận văn, hơn nữa quyết tâm và niềm đam
mê của chị là động lực rất lớn cho em cố gắng hơn từng ngày
Em xin gửi lời cảm ơn đến toàn thể anh, chị, em đồng nghiệp trong công
ty KARGO365 đã luôn tạo điều kiện cho em trong quá trình học và thựchiện luận văn tốt nghiệp
Em cũng xin gửi lời cảm ơn chân thành đến gia đình, bạn bè, các anh,chị cùng lớp cao học đã luôn động viên, quan tâm giúp đỡ em trong quátrình học tập và thực hiện luận văn
Trang 6TÓM TẮT LUẬN VĂN
Rút trích thực thể và quan hệ là một trong những tác vụ quan trọng trongbài toán rút trích thông tin, thực thể thường là các danh từ, tên riêng, địachỉ, quan hệ thể hiện mối liên quan về ngữ nghĩa giữa hai thực thể Trướcđây, các phương pháp truyền thống thường sử dụng mô hình “pipeline”, xácđịnh thực thể trước, sau đó xác định quan hệ giữa các cặp thực thể nếu có.Điều này dẫn đến việc lan truyền lỗi từ bước rút trích thực thể sang bước rúttrích quan hệ Đồng thời chưa thể hiện được rõ ràng sự đóng góp của quan
hệ vào việc rút trích thực thể Do đó trong nội dung của luận văn này, học
viên tập trung khai thác bài toán rút trích thông tin theo hướng rút trích đồng thời thực thể và quan hệ (joint entity and relation extraction) , và
đưa ra ba đề xuất có thể cải thiện độ chính xác của mô hình so với mô hìnhtham khảo
• Sử dụng thông tin loại thực thể vào dự đoán quan hệ: học viên sửdụng thông tin loại thực thể (entity type) cho việc dự đoán loại quan
hệ giữa hai thực thể Trong đó học viên dùng thêm cổng cập nhật đểlọc ra lượng thông tin cần dùng từ loại thực thể nhằm hạn chế vấn
đề cascading errors đồng thời thay đổi cách huấn luyện mô hình từteacher-forcing sang non-teacher-forcing để mô hình làm quen và tựđiều chỉnh nếu bước rút trích thực thể sai
• Sử dụng thông tin của quan hệ vào dự đoán loại thực thể: để phần nàochia sẻ thông tin từ việc rút trích quan hệ cho việc rút trích thực thể,sau khi rút trích quan hệ, học viên nhúng thông tin của loại quan hệvào hai thực thể cấu thành quan hệ, và thực hiện phân lớp thực thể,mỗi thực thể lúc này được gắn thêm nhãn thể hiện thực thể đó có đónggóp vào mối quan hệ nào hay không Điều này cung cấp thêm thôngtin cho mô hình, giúp cải thiện độ chính xác
• Tích hợp thông tin dependency parse vào dự đoán quan hệ: học viêntích hợp thông tin dependency parse của các từ trong câu vào vectorbiểu diễn quan hệ Thông tin dependency parse của mỗi từ lấy đượcbằng việc sử dụng thư viện sciSpacy (đối với tập dữ liệu trong lĩnhvực khoa học) Theo quan sát và thực nghiệm chứng tỏ việc tích hợpthêm thông tin dependency parse góp phần cải thiện độ chính xác choviệc dự đoán quan hệ
Trang 7ABSTRACT OF DISSERTATION
Entity and relation extraction is one of the most essential tasks in tion extraction, entities are nouns, names, and addresses, a relation is asemantic relation between two entities The traditional method often uses
informa-“pipeline” models which address these tasks as independent components of
a pipeline This causes cascading errors from the entity recognition task tothe relation extraction task And also these “pipeline” models can’t showthe contribution of the relation extraction task to the entity recognition task.Therefore, in this dissertation, I focus on the joint entity and relation extrac-tion task, which is an end-to-end model for extracting entity and relation,and I have 3 proposes to improve the performance of the baseline model:
• Use entity type in relation extraction task: I use the information of twoentity types to extract their relation type I also use an update gate tofilter essential information of entity types to alleviate cascading errorsand change the way train model from teacher forcing to non-teacherforcing to help the model can adapt if entity type is wrong
• Use relation type in entity recognition task: to share information fromrelation extraction task to entity recognition task, after predicting therelation type of two entities, I concatenate relation type information
to vector represent entity mention and then classify entity type videsvide information to entities, and helps increase model perfor-mance
Tpro-• Intergrate dependency parse in relation extraction task: I intergratedependency parse tag of each word in vector represent relation I usesciSpacy (in domain science) to get dependency parse ishowsmation
As experience show that using dependency parse Information can prove performance in relation extraction tasks
Trang 8im-LỜI CAM ĐOAN
Tôi xin cam đoan luận văn tốt nghiệp: “ỨNG DỤNG HỌC SÂU VÀOXÂY DỰNG HỆ THỐNG RÚT TRÍCH THÔNG TIN” là công trình nghiêncứu của bản thân Những phần sử dụng tài liệu tham khảo trong luận văn
đã được nêu rõ trong phần tài liệu tham khảo Các số liệu, kết quả trình bàytrong luận văn là hoàn toàn trung thực, nếu sai tôi xin chịu hoàn toàn tráchnhiệm và chịu mọi kỷ luật của bộ môn và nhà trường đề ra
Trang 9Mục lục
Chương 1 GIỚI THIỆU ĐỀ TÀI 1
1.1 Giới thiệu đề tài 1
1.2 Mô tả bài toán rút trích đồng thời thực thể và quan hệ 1
1.3 Mục tiêu và nhiệm vụ của luận văn 3
1.4 Giới hạn đề tài 4
1.5 Đóng góp của luận văn 5
1.6 Tóm tắt nội dung 5
Chương 2 CƠ SỞ KIẾN THỨC 7
2.1 Mô hình Artificial Neural Network - ANN 7
2.2 Mô hình Recurrent Neural Network - RNN 11
2.3 Mô hình Long Short-Term Memory 14
2.4 Cơ chế Attention 17
Chương 3 CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN 21
3.1 Hướng tiếp cận span-based 22
3.2 Mô hình đa tác vụ cho bài toán rút trích quan hệ và thực thể 23 3.2.1 Mô hình đa tác vụ 23
3.2.2 Sử dụng đa tác vụ kết hợp đồ thị 26
3.3 BERT ra đời và sự trở lại của hệ thống pipeline 27
Chương 4 MÔ HÌNH ĐỀ XUẤT 30
4.1 Mô hình tham khảo 30
4.2 Phương pháp đánh giá 33
4.2.1 precision, reall và f1-score 33
4.2.2 micro-F1 và macro-F1 34
Trang 104.3 Đề xuất 1: Sử dụng thông tin loại thực thể vào dự đoán quan hệ 35
4.3.1 Động lực và ý tưởng 35
4.3.2 Mô tả mô hình 36
4.3.3 Tham số cấu hình của mô hình 38
4.3.4 Kết quả thực nhiệm và thảo luận 39
4.4 Đề xuất 2: Sử dụng thông tin loại quan hệ vào dự đoán thực thể 41 4.4.1 Động lực và ý tưởng 41
4.4.2 Mô tả mô hình 42
4.4.3 Tham số cấu hình của mô hình 43
4.4.4 Kết quả thực nhiệm và thảo luận 44
4.5 Đề xuất 3: Tích hợp thông tin dependency parse vào dự đoán quan hệ 46
4.5.1 Động lực và ý tưởng 46
4.5.2 Mô tả mô hình 47
4.5.3 Tham số cấu hình của mô hình 49
4.5.4 Kết quả thực nhiệm và thảo luận 51
Chương 5 KẾT LUẬN 53
Tài liệu tham khảo 56
Trang 11Danh sách hình vẽ
2.1 Các thành phần cơ bản của một nơ-ron sinh học 7
2.2 Cấu trúc của một perceptron 8
2.3 Một số hàm kích hoạt được sử dụng trong perceptron 9
2.4 Cấu trúc mô hình Artificial Neural Network 10
2.5 Cấu trúc mô hình Recurrent Neural Network 12
2.6 Cơ chế hoạt động của perceptron trong mô hình Recurrent Neural Network 13
2.7 Cơ chế hoạt động của perceptron trong mô hình Long Short-Term Memory 16
2.8 Kiến trúc mô hình Bidirectional LSTM 17
2.9 Kiến trúc mô hình Sequence-to-Sequence cho bài toán dịch từ tiếng Việt sang tiếng Anh 18
2.10 Mô phỏng quá trình áp dụng cơ chế Attention trong bài toán dịch câu tiếng Việt sang câu tiếng Anh 20
3.1 Các mốc quan trọng của bài toán rút trích đồng thời thực thể và quan hệ theo hướng span-based 21
3.2 Mô hình SciIE 24
3.3 Ví dụ cho thấy sự tương tác, hỗ trợ lẫn nhau giữa các tác vụ rút trích thực thể, quan hệ 26
3.4 Mô hình DyGIE 27
3.5 Mô hình PURE cho tác vụ rút trích quan hệ 29
4.1 Mô hình đề xuất tận dụng thông tin của loại thực thể vào rút trích quan hệ 31
Trang 124.2 Mô hình đề xuất SpERT.ET, tận dụng thông tin của loại
quan hệ vào rút trích thực thể 374.3 Mô hình đề xuất tận dụng thông tin của loại thực thể vào rút
trích quan hệ 424.4 Các quan hệ Dependency parse trong một câu 474.5 Mô hình đề xuất SpERT.DP, tận dụng thông tin Dependency
parse vào rút trích quan hệ 484.6 Mô hình đề xuất SpERT.PDP, kết hợp giữa POS và Depen-
dency Parse 49
Trang 13tham khảo trên tập dataset SciERC 444.5 Các tham số cho mô hình SpERT.DP 504.6 Các tham số cho mô hình SpERT.PDP 504.7 Kết quả thực nghiệm của mô hình SpERT.DP và SpERT.PDP
so với mô hình tham khảo trên tập dataset SciERC 51
Trang 14Chương 1
GIỚI THIỆU ĐỀ TÀI
Ngày nay, với sự phát triển của Internet, chúng ta cũng sử dụng ngàycàng nhiều các ứng ứng dụng, mạng xã hội, trang web tin tức, kênh muabán hàng, , từ đó làm khối lượng thông tin trên Internet ngày càng bùng
nổ Tuy nhiên, người dùng khó có thể đọc và nắm bắt được thông tin từlượng dữ liệu khổng lồ trên Internet Để có thể tự động hóa công việc rúttrích những thông tin quan trọng từ Internet, chúng ta cần chuyển đổi dữ liệukhông cấu trúc sang dữ liệu có cấu trúc, giúp máy tính có thể dễ dàng đọc
và xử lí Từ đó, ta có thể thực hiện các truy vấn đa dạng và phức tạp hơn,
sử dụng nguồn thông tin có chất lượng vào các ứng dụng như hỏi đáp, phântích cảm xúc khách hàng, tổng hợp văn bản, Đây chính là mục tiêu quantrọng của bài toán rút trích thông tin trong khoa học máy tính
và quan hệ
Đầu vào của mô hình là một câu, tập E = {e1, e2, em} chứa m loại thựcthể cho trước và tập R = {r1, r2, rn} chứa n loại quan hệ cho trước, lưu ýtập E và R sẽ khác nhau tùy vào lĩnh vực (domain) của mỗi dataset
Đầu ra của mô hình bao gồm 3 thành phần chính:
1 Danh sách các thực thể có trong câu (entity mention), là một từ hoặc
cụm từ trong câu chỉ một thực thể
Trang 152 Xác định nhãn ei với ei ∈ E cho từng entity mention.
3 Xác định quan hệ (nếu có) < em1, em2, rj > với em1, em2 lần lượt là 2
entity mentionxác định được ở bước 1, rj ∈ R
Trong tác vụ thứ 3, ta còn chia ra làm hai cách đánh giá là strickly
− Đối với strickly relation, một quan hệ < em1, em2, r > được xem là
đúng khi mô hình dự đoán đúng hai entity mention em1, em2, dự đoánđúng nhãn e1, e2 cho em1 và em2 và quan hệ r giữa hai entity mention.
− Còn non-strickly relation, một quan hệ < em1, em2, r > được xem là
đúng khi mô hình chỉ cần dự đoán đúng hai entity mention em1, em2
và quan hệ r giữa hai entity mention Trong các nghiên cứu trước đây
về bài toán rút trích đồng thời thực thể và quan hệ, cách đánh giá
non-strickly relation được sử dụng chủ yếu, và chính vì thế nó cũng mở ramột hướng nghiên cứu mới để giải quyết bài toán rút trích thông tin là
sử dụng các mô hình đa tác vụ (multi-task) Mô hình đa tác vụ là các
mô hình mà cùng lúc thực hiện nhiều tác vụ, ví dụ vừa dự đoán loạithực thể, vừa dự đoán loại quan hệ, hai thao tác này cùng chia sẻ với
nhau các entity mention Việc chia sẻ chung entity mention giúp mô hình hoàn toàn có thể dự đoán đúng non-strickly relation giữa 2 entity
mention mà không bị phụ thuộc vào kết quả dự đoán nhãn cho từng
entity mention
Ví dụ với câu S = “Paris, John’s sister, is staying in New York”, thì đầu ra
của mô hình bài gồm:
Trang 16Thực thể Quan hệ
Paris : PER < Paris, John > : PER-SOCJohn : PER < Paris, New York > : PHYSNew York : GPE
Bảng 1.1: Đầu ra của mô hình rút trích thực thể và quan hệ với câu S đầu
vào
Mục tiêu của luận văn hướng đến việc nghiên cứu và xây dựng mô hìnhrút trích thông tin sử dụng các phương pháp học sâu và kĩ thuật xử lí ngônngữ tự nhiên Cụ thể:
− Hiểu và sử dụng được các mô hình học sâu, các kĩ thuật trong xử língôn ngữ tự nhiên
− Xác định rõ tác vụ sẽ tập trung giải quyết trong bài toán rút trích thôngtin: đầu ra của mô hình là gì? Mô hình sử dụng dataset có gán nhãnhay không? Domain, ngôn ngữ của dataset được sử dụng là gì?
− Nắm được các phương pháp giải quyết cho bài toán, đặc biệt là cácphương pháp gần đây sử dụng các mô hình học sâu Từ đó chỉ ra đượccác ưu nhược điểm của từng phương pháp
− Đưa ra đề xuất có thể cải thiện hiệu suất của mô hình dựa trên thựcnghiệm
− Sau luận văn, học viên có cái nhìn chính xác hơn về xử lí ngôn ngữ tựnhiên nói riêng và học sâu, học máy nói chung Hiểu rõ hơn các vấn
đề, thách thức và tính khả thi khi áp dụng học sâu, học máy vào giảiquyết một bài toán thực tế
Trang 17Từ những mục tiêu trên, học viên đề ra các nhiệm vụ cần thực hiện trongquá trình làm luận văn:
− Tìm hiểu bài toán rút trích đồng thời thực thể và quan hệ, các côngtrình liên quan, các phương pháp giải quyết bài toán, ưu và nhượcđiểm của các phương pháp
− Đề xuất các mô hình giúp cải thiện độ chính xác cho bài toán rút tríchđồng thời thực thể và quan hệ
− Thực nghiệm, đánh giá kết quả của các mô hình đề xuất
− Kết luận, nêu ra các vấn đề còn tồn đọng đồng thời đưa ra các nghiêncứu trong tương lai
Rút trích thông tin là một bài toán rộng và có nhiều tác vụ cũng nhưnhiều phương pháp khác nhau, vì vậy nội dung luận văn sẽ được giới hạnnhư sau:
− Tập trung vào bài toán rút trích đồng thời thực thể và quan hệ theohướng học có giám sát
− Ngôn ngữ của tập dữ liệu là tiếng Anh
− Các mô hình học sâu: RNN, LSTM, BiLSTM, BERT, cơ chế tion
Atten-− Mô hình được đánh giá dựa trên độ đo F1-score cho tác vụ rút tríchthực thể và quan hệ
Trang 181.5 Đóng góp của luận văn
Trong luận văn, học viên đề xuất 3 phương pháp giúp cải thiện độ hiệusuất của mô hình rút trích thực thể và quan hệ:
− Sử dụng thông tin loại thực thể vào tác vụ dự đoán quan hệ
− Sử dụng thông tin của loại quan hệ vào tác vụ dự đoán thực thể
− Tích hợp thông tin dependency parse vào tác vụ dự đoán quan hệ
Nội dung của luận văn gồm 5 chương:
− Chương 1 GIỚI THIỆU ĐỀ TÀI: giới thiệu về nhu cầu của việc rút
trích thông tin hiện nay, mô tả bài toán rút trích quan hệ và thực thể,các dataset thường được sử dụng cũng như phương pháp đánh giá
− Chương 2 CƠ SỞ KIẾN THỨC: bàn về cơ sở kiến thức cơ bản
trong deep learning, từ Artificial Neural Network tới Recurrent NeuralNetwork, Long Short-Term Memory và cơ chế attention
− Chương 3 CÁC CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN: nói
về các công trình nghiên cứu liên quan, bắt đầu từ công trình coreref của Lee [1], mở ra hàng loạt công trình tiếp theo cho hướng
e2e-nghiên cứu end-to-end cho bài toán rút trích đồng thời thực thể và
quan hệ, và đó cũng là cơ sở quan trọng cho nghiên cứu của học viêntrong luận văn
− Chương 4 CÁC MÔ HÌNH ĐỀ XUẤT: Chương 4 nói cụ thể về các
mô hình đề xuất của học viên cho bài toán rút trích đồng thời thực thể
Trang 19và quan hệ dựa trên mô hình cơ sở SpERT [2], và các kết quả thựcnhiệm.
− Chương 5 KẾT LUẬN: tổng kết các đóng góp của luận văn, các vấn
đề còn tồn tại của bài toán rút trích thông đồng thời nói về nghiên cứutrong tương lai
Trang 20Chương 2
CƠ SỞ KIẾN THỨC
Mô hình Artificial Neural Network - ANN (Mạng nơ-ron nhân tạo) [3]
là mô hình tính toán được xây dựng dựa trên ý tưởng lấy từ cấu trúc và cáchhoạt động của mạng nơ-ron thần kinh trong não người nhằm thực hiện mộttác vụ nào đó với tập dữ liệu đầu vào
Một mạng nơ-ron thần kinh được tạo nên từ nhiều nơ-ron sinh học kếtnối và hoạt động cùng nhau Mỗi nơ-ron sinh học đó được cấu tạo bởi cácthành phần cơ bản được mô tả trong Hình 2.1 bao gồm các đuôi gai, thânnơ-ron và sợi trục
Hình 2.1: Các thành phần cơ bản của một nơ-ron sinh học
Nơ-ron thần kinh hoạt động bằng cách tiếp nhận các thông tin đưa vào
từ các đuôi gai (dendrites), tính toán và tổng hợp tại thân nơ-ron (cell body), sau đó lan truyền kết quả đến các nơ-ron khác thông qua sợi trục (axon).
Trang 21Có thể dễ dàng rút ra nhận xét rằng nơ-ron sinh học nhận nhiều thông
Tương tự như cách thức hoạt động nêu trên của mạng nơ-ron thần kinh,
ANN cũng được cấu thành từ nhiều nơ-ron được gọi là perceptron có cấu
trúc như Hình 2.2 Trong đó:
− x1, x2, x3, xn là các thông tin dữ liệu đầu vào;
− phép cộng (summation) và hàm kích hoạt (activation function) chính
là các phép tính toán và tổng hợp các thông tin dữ liệu đầu vào;
− w0, w1, w2, w3, wn là các trọng số cần phải học, đóng vai trò thamgia quá trình tính toán và chuyển đổi các thông tin đầu vào thànhthông tin đầu ra;
− y là dữ liệu đầu ra
Hình 2.2: Cấu trúc của một perceptron
Cụ thể hơn, phương thức tính toán và tổng hợp dữ liệu của một tron được mô tả theo từng bước sau:
Trang 22percep-1 Sau khi tiếp nhận tập các dữ liệu đầu vào {x1, x2, , xn}, perceptronthực hiện phép cộng bằng cách tính tổng giá trị tất cả các tích số củatừng cặp dữ liệu đầu vào và giá trị trọng số tương ứng;
2 Kết quả a của phép cộng được đưa vào hàm kích hoạt là hàm không
tuyến tính như sigmoid, tanh, ReLU, LeakyReLU (Hình 2.3);
Hình 2.3: Một số hàm kích hoạt được sử dụng trong perceptron
3 Sau đó, perceptron thực hiện phép so sánh giá trị nhận được từ hàm
kích hoạt f (a) với một giá trị ngưỡng (threshold) là t cho trước nhằm
xác định giá trị đầu rabyđược hiểu là tín hiệu kích hoạt của perceptron
Trang 23Giả sử tín hiệu kích hoạt là 1 và tín hiệu không kích hoạt là 0, ta có:
y=
0 i f f (a) < t
(2.2)
Hình 2.4: Cấu trúc mô hình Artificial Neural Network
Bằng cách kết hợp nhiều percentron với nhau sẽ tạo nên cấu trúc môhình ANN như Hình 2.4 và các perceptron được phân thành từng lớp cónhiệm vụ đặc thù riêng:
− Tầng dữ kiện (input layer) là tầng đầu tiên, thể hiện các dữ liệu đầu
vào của mô hình
− Tầng ẩn (hidden layer) là tầng nằm giữa gồm các phép tính toán
chuyển đổi dữ liệu đầu vào sang dữ liệu đầu ra Số lượng tầng ẩntrong mô hình là không giới hạn mà phụ thuộc vào cách giải quyết bàitoán
− Tầng kết quả (output layer) là tầng cuối cùng thể hiện dữ liệu đầu ra
Trang 24Văn bản ngôn ngữ tự nhiên được xác định là dữ liệu dạng chuỗi
(se-quence data) vì ý nghĩa của văn bản phụ thuộc vào vị trí của từng từ trongcâu, ý nghĩa của từ đứng sau phụ thuộc vào những từ đứng trước và tất cảcác từ đều liên kết với nhau nhằm tạo nên ngữ cảnh của văn bản Ngoài ra,
dữ liệu của một bản nhạc, dữ liệu giọng nói, cũng là dữ liệu dạng chuỗi
Do đó, để xử lý được dữ liệu ngôn ngữ tự nhiên cần mô hình học máy phùhợp với những đặc điểm này
RNN (mạng nơ-ron hồi quy) [5] là một trong những mô hình học máy
được thiết kế để giải quyết các bài toán xử lý dữ liệu dạng chuỗi, đặc biệt
là dữ liệu ngôn ngữ tự nhiên nên được gọi là mô hình ngôn ngữ Để thích
hợp với các đặc điểm của dữ liệu dạng chuỗi đã được liệt kê trước đó, môhình RNN ra đời với ý tưởng chính là sử dụng một bộ nhớ để lưu lại thôngtin nằm phía trước nhằm dựa vào đó mà tính toán với thông tin phía sau để
ra kết quả dự đoán cho bài toán
Cấu trúc mô hình RNN chỉ bao gồm một tầng xử lý dữ liệu có số lượngperceptron bằng chiều dài của chuỗi dữ liệu đầu vào Bên cạnh thông tin củachuỗi dữ liệu đầu vào, perceptron còn có thông tin đầu vào khác là kết quảđầu ra của perceptron ở vị trí ngay trước đó Có thể hiểu rõ cách hoạt độngnày bằng cách tham khảo mô hình được mô tả trong Hình 2.5
Trang 25Hình 2.5: Cấu trúc mô hình Recurrent Neural Network
Trong đó:
− xt, t ∈ [1, n] là vector biểu diễn thành phần thứ t của chuỗi dữ liệuđầu vào;
− ht, t ∈ [0, n] là vector hidden state (trạng thái ẩn) của dữ liệu tại bước
xử lý t, có thể hiểu đây là kết quả của bước xử lý thứ t đồng thời là dữliệu đầu vào cho bước xử lý t + 1;
− yt, t ∈ [1, n] là vector biểu diễn thành phần thứ t của chuỗi dữ liệuđầu ra
Có thể thấy rằng độ dài chuỗi dữ liệu đầu ra y1, y2, yn trong Hình 2.5đúng bằng với độ dài chuỗi dữ liệu đầu vào x1, x2, xn Thực ra, tùy vào yêucầu bài toán mà xác định độ dài của hai chuỗi này có thể giống hoặc khácnhau Tuy nhiên, việc xác định chỉ rơi vào 3 trường hợp:
1 Dữ liệu đầu vào có độ dài là 1 và dữ liệu đầu ra có độ dài lớn hơn 1;
2 Dữ liệu đầu vào có độ dài lớn hơn 1 và dữ liệu đầu ra có độ dài là 1;
3 Cả hai chuỗi dữ liệu đều có độ dài bằng nhau và lớn hơn 1
Trang 26Quá trình biến đổi các vector đầu vào xt và ht−1 sang các vector đầu ra
ht và yt tại bước xử lý dữ liệu thứ t là quá trình huấn luyện các bộ ma trậntrọng số Wxh, Whh và Why được thực hiện bởi perceptron với các phép tínhtoán được sắp xếp theo các thứ tự sau (Hình 2.6):
Hình 2.6: Cơ chế hoạt động của perceptron trong mô hình Recurrent
Trang 274 Dữ liệu đầu vào là kết quả của hàm so f tmax có gái trị tham số là tíchcủa ma trận trọng số Why và hidden state ht.
yt = so f tmax(Why ht) (2.4)
Mô hình RNN là mô hình được thiết kế để xử lý các dữ liệu dạng chuỗi.Tuy nhiên, với yêu cầu về kết quả dự đoán ngày càng cao của con người thìRNN vẫn chưa đáp ứng được nếu dữ liệu dạng chuỗi đầu vào có độ dài tươngđối lớn Vì đặc điểm của dữ liệu chuỗi là thông tin đứng sau phụ thuộc vàocác thông tin đứng trước nên cần một mô hình có khả năng nhớ được các từphía trước lâu hơn và dài hơn Bên cạnh đó, mô hình cần chọn lọc thông tin
để nhớ tại mỗi bước xử lý chứ không nhớ tất cả các thông tin vì trong thực
tế thông tin đứng sau chỉ liên hệ đến một phần trong số các thông tin đứngtrước
Nhằm giải quyết vấn đề này, mô hình Long Short-Term Memory (LSTM)[6] ra đời dựa trên kiến trúc của mô hình RNN Tuy nhiên, dữ liệu đầu vàocủa mô hình LSTM không chỉ là xt và ht−1 như mô hình RNN mà còn cầngiá trị cell state ct−1 Cụ thể hơn, phương thức hoạt động của từng percep-tron trong mô hình LSTM được thiết kế phức tạp với cơ chế gating như mô
tả trong Hình 4.5 theo từng bước như sau:
1 Bước đầu tiên sẽ tính toán và tổng hợp thông tin từ hidden state trước
đó ht−1 và dữ liệu đầu vào xt như cách perceptron trong mô hình RNNthực hiện:
e
Ct = tanh(Wc [ht−1, xt] + bc) (2.5)
2 Cổng quên (forget gate) là phần quyết định sẽ giữ lại bao nhiêu phần
Trang 28của vector cell state trước ct−1 với việc thực hiện phép tính toán đốivới vector hidden state trước ht−1 và vector biểu diễn thành phần dữliệu thứ t, sau đó đưa kết quả qua hàm sigmoid:
ft = σ (Wf [ht−1, xt] + bf) (2.6)
3 Cổng cập nhật (update gate) là phần quyết định sẽ giữ lại bao nhiêu
phần từ vector hidden state trước ht −1 và vector dữ liệu xt với phéptính sau:
ut = σ (Wu [ht−1, xt] + bu) (2.7)
4 Từ kết quả của bước 1, 2 và 3 có thể xác định được giá trị của cellstate ct bằng công thức:
ct = ft∗ ct−1+ ut ∗ eCt (2.8)
5 Cổng xuất (output gate) là phần quyết định lấy bao nhiêu phần giá trị
cell state trước ct−1 để trở thành giá trị của hidden state ht bằng phéptính:
ot = σ (Wo [ht−1, xt] + bo) (2.9)
6 Cuối cùng là phép tính giá trị hidden state ht từ giá trị của cell state ct
ở bước 4 và ot ở bước 5 như sau:
ht = ot∗ tanh(ct) (2.10)
Trang 29Hình 2.7: Cơ chế hoạt động của perceptron trong mô hình Long
Short-Term Memory
Kết hợp các perceptron có cấu trúc như Hình 4.5 sẽ cấu tạo thành môhình LSTM với chiều huấn luyện từ trái sang phải (chiều xuôi) Mô hình nàygọi là mô hình LSTM một chiều Điểm yếu của mô hình này là chỉ có khảnăng dự đoán với độ chính xác cao khi được cung cấp một vài thông tin ởphần đầu của chuỗi dữ liệu Nhằm khắc phục điểm yếu này, các nhà nghiêncứu khoa học đã đề xuất việc kết hợp hai mô hình LSTM ngược chiều nhau.Điều này có nghĩa là hệ thống sẽ huấn luyện dữ liệu với mô hình LSTMchiều từ trái sang phải, đồng thời huấn luyện dữ liệu với mô hình LSTMchiều từ phải sang trái, sau đó kết hợp kết quả của cả hai mô hình và thực
hiện tác vụ dự đoán của bài toán Mô hình kết hợp này được gọi là
Trang 30Bidirec-tional LSTM - BiLSTM có kiến trúc như Hình 2.8.
Hình 2.8: Kiến trúc mô hình Bidirectional LSTM
Cơ chế Attention được đề xuất lần đầu tiên bởi Bahdanau và cộng sự vào năm 2015 [7] với mục đích cải tiến hiệu quả của bài toán machine
translation (dịch máy) Sau đó, vào năm 2017, Vaswani và cộng sự đã công
bố bài báo "Attention Is All You Need" [8] Cả hai bài báo này đã thực sựgây được tiếng vang rất lớn trong cộng đồng các nhà nghiên cứu về các mô
hình học máy Theo thống kê của trang scholar.google.com, tính đến tháng
5 năm 2021 thì cả hai bài báo này, mỗi bài đã được trích dẫn bởi khoảng20.000 bài báo khoa học khác Điều này có thể chứng tỏ được hiệu quả của
cơ chế Attention khi được áp dụng vào các bài toán xử lý ngôn ngữ tự nhiên
là rất lớn và chưa có cơ chế hay mô hình nào thay thế được
Thực tế, cơ chế Attention đều áp dụng được với tất cả các bài toán xử lý
dữ liệu dạng chuỗi với mô hình học máy có áp dụng RNN và Seq2Seq [9].Tuy nhiên, để dễ hiểu thì nên bắt đầu với việc áp dụng cơ chế Attention cho
Trang 31bài toán machine translation như mô hình được đề xuất lần đầu tiên.
Mục tiêu của Bahdanau và cộng sự là xây dựng mô hình dịch máy gồm
hai phần Encoder-Decoder (Seq2Seq), trong đó Encoder là phần học và rút
trích thông tin từng từ trong câu ngôn ngữ gốc bằng mô hình RNN Decoder
là phần học cách dịch những thông tin đã học được trong phần Encoder thànhcâu ngôn ngữ dịch Trong Hình 2.9 là mô hình Seq2Seq minh họa việc dịchcâu tiếng Việt sang câu tiếng Anh
Hình 2.9: Kiến trúc mô hình Sequence-to-Sequence cho bài toán dịch từ
tiếng Việt sang tiếng Anh
Bahdanau và cộng sự đã nhận thấy rằng, trong từng bước xử lý của phần
Decoder chỉ cần dùng một phần liên quan trong context vector , kết quả của quá trình Encoder, là đủ thông tin để dự đoán từ tiếp theo trong câu ngôn
ngữ dịch Phương pháp này được đặt tên là Attention là cơ chế tạo sự chú ý
đến những phần thông tin liên quan đến việc dự đoán trong Encoder thay vì
là tất cả thông tin như hầu hết các công trình nghiên cứu về học máy trướcđó
Các bước áp dụng cơ chế Attention trong bài toán machine translation
(Hình 2.10) được mô tả chi tiết như sau:
1 Tính attention score của từng từ trong câu ngôn ngữ gốc bằng phép
Trang 32nhân vô hướng (dot product như công thức dưới đây Trong đó ht là
vector hidden state của bước xử lý thứ t trong phần Decoder và ¯hs là
tập hợp các vector hidden state của từng từ trong phần Encoder.
score(htT, ¯hs) = hTt ¯hs (2.11)
2 Tính attention weight bằng cách đưa kết quả tính attention score
qua hàm so f tmax
αts = so f tmax(score(hTt , ¯hs)) (2.12)
3 Tính context vector bằng phép tính tổng các tích số của attention
weight và vector hidden state của từng từ trong phần Encoder
ct =∑
s
4 Tạo phân phối xác suất attention distribution là tích của ma trận
trọng số Wc và ma trận gộp của context vector và ht là vector hidden
state của bước xử lý thứ t trong phần Decoder
Pt = Wc [ct; ht] (2.14)
5 Cuối cùng là đưa attention distribution qua hàm tanh để có được attention vector
Trang 33Như vậy, sau khi hoàn thành các phép tính trên và thu được kết quả là
attention vector chứa một phần thông tin của Encoder được chú ý tại thời
điểm t Đến bước này, ta có thể đưa ra kết quả dự đoán từ tiếp theo trong câungôn ngữ dịch bằng công thức:
b
Hình 2.10: Mô phỏng quá trình áp dụng cơ chế Attention trong bài toán
dịch câu tiếng Việt sang câu tiếng Anh
Trang 34Chương 3
CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN
Hình 3.1: Các mốc quan trọng của bài toán rút trích đồng thời thực thể và
quan hệ theo hướng span-based
Hình 3.1 thể hiện các cột mốc quan trọng trong quá trình phát triển của
các nghiên cứu cho bài toán rút trích thông tin dựa trên span-based, từ thời
điểm mà phần lớn các nghiên cứu vẫn còn sử dụng BIO/BLOU để biểu diễnmột thực thể, và đa phần các mô hình truyền thống còn được xây dựng theo
hướng pipeline (các mô hình rút trích thực thể, rút trích quan hệ được huấn
luyện độc lập, đầu ra của tác vụ rút trích thực thể sẽ là đầu vào của mô hìnhrút trích quan hệ), cho đến khi công trình đầu tiên về cách biểu diễn một
thực thể dưới dạng span-based ra đời (2017) Đi theo đó là các công trình
sử dụng span-based kết hợp mô hình đa tác vụ (multi-task) Với sự ra đời
của BERT [10], các mô hình đa tác vụ kết hợp với BERT chứng minh sự cảithiện đáng kể Và khi BERT đã làm rất rất tốt việc làm giàu thông tin cho
Trang 35các vector biểu diễn thực thể, nhiều công trình nghiên cứu đã chứng minhrằng mô hình đa tác vụ không còn là những mô hình tốt nhất, thay vào đó là
sự trở lại của các mô hình pipeline.
Một trong những vấn đề đầu tiên trong bài toán rút trích thực thể vàquan hệ là làm thế nào để biểu diễn một thực thể, vì mỗi thực thể khôngchỉ đơn thuần là một từ mà là một cụm từ Trước năm 2017, phương phápBIO/BILOU được sử dụng chủ yếu, theo đó mỗi từ trong câu sẽ được gán
1 nhãn (tag) đánh dấu vị trí của từ nó trong thực thể: B-begin, I-inside, last, O-outside, U-unit Tuy nhiên, nhược điểm rất lớn của phương pháp này
L-là mỗi từ chỉ có thể được gán cho một nhãn duy nhất, do đó trong trường
hợp chồng chéo thực thể (overlapping entities), hai hoặc nhiều thực thể cùng
chứa một từ thì BIO/BILOU không thể diễn tả được hết các thực thể có trongcâu
Ví dụ câu “Ford’s Chicago plant employs 4,000 workers” Trong câu
trên cả Chicago và Chicago plant đều là thực thể và cùng chứa Chicago.
Do đó, năm 2017 Lee [1] đã đề xuất phương pháp span-based, sử dụng
span (mỗi span là một cụm từ) để biểu diễn thực thể Phương pháp này liệt
kê tất cả các span có thể có trong câu, xem mỗi span là một mẫu cho đầu vào của mô hình Ví dụ các span được liệt kê ở câu trên: [’Ford’, ’Ford Chicago’,
’Ford Chicago plan’, ’Ford Chicago plan employee’, ’workers’] Như vậyviệc bị trùng lặp thực thể sẽ được giải quyết
Tuy nhiên ta hoàn toàn có thể nhận ra vấn đề lớn khác của phương pháp
span-based là số lượng span được liệt kê trong một câu rất lớn, từ đó dẫn
đến việc tổng số cặp quan hệ giữa hai thực thể bùng nổ tới con số O(n4), với
n là số lượng từ trong câu Để giải quyết vấn đề về số lượng lớn cặp quan
Trang 36hệ có thể sinh ra, Lee giới hạn độ dài của mỗi span, giới hạn số lượng span trong mỗi câu, và dùng beam search để lọc ra các span có khả năng là entity
mentioncao
Tiếp theo, sau khi đã có danh sách các span, việc cần làm là tìm cách
để biểu diễn các span thành vector Từ câu đầu vào, tác giả đưa vào mạng BiLSTM, sau đó với mỗi span, trích xuất được head-word vector xi , và size
embedding φ (i) Một span được biểu diễn dưới dạng:
Với x∗START(i) và x∗END(i)lầnn lượt là vector biểu diễn từ đầu tiên và cuối cùng
của span sau lớp BiLSTM.
Công trình nghiên cứu này giải quyết bài toán coreference resolution
(tìm các từ đồng tham chiếu với nhau và gom thành một cụm) chứ khôngphải về rút trích thực thể và quan hệ Tuy nhiên ý tưởng về việc biểu diễn
thực thể dưới dạng span và sử dụng mô hình end-to-end để giải quyết bài
toán đã mở ra hướng nghiên cứu cho nhiều bài báo khoa học sau này, có
công trình trong số đó đang đạt SOTA (state of the art) cho bài toán rút
trích đồng thời thực thể và quan hệ
quan hệ và thực thể.
3.2.1 Mô hình đa tác vụ.
Các mô hình rút trích thực thể và quan hệ truyền thống [11] [12] [13]
thường sử dụng mô hình pipeline để rút trích thực thể và quan hệ Trong
các mô hình này, các thực thể rút trích được từ mô hình thực thể sẽ được sử