1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch

116 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Tác giả Võ Thanh Vương Đạo
Người hướng dẫn TS. Trương Hoàng Vinh
Trường học Trường Đại Học Mở Thành Phố Hồ Chí Minh
Chuyên ngành Khoa học máy tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 116
Dung lượng 10,94 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đồ thị tri thức biểu diễn các dữ liệu liên quan đến tri thức của con người, có thể đặt ra các câu hỏi phức tạp về dữ liệu tri thức thu thập được và nhận được câu trả lời tốt từ kho dữ li

Trang 1

1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH

- ∞0∞ -

VÕ THANH VƯƠNG ĐẠO

PHƯƠNG PHÁP TRẢ LỜI CÂU HỎI DỰA VÀO ĐỒ THỊ TRI THỨC THUỘC MIỀN DỮ LIỆU DU LỊCH

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

TP HỒ CHÍ MINH, NĂM 2022

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH

- ∞0∞ -

VÕ THANH VƯƠNG ĐẠO

PHƯƠNG PHÁP TRẢ LỜI CÂU HỎI DỰA VÀO ĐỒ THỊ TRI THỨC THUỘC MIỀN DỮ LIỆU DU LỊCH

Chuyên ngành: Khoa học máy tính

Mã số chuyên ngành: 60 48 01 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Giảng viên hướng dẫn: TS TRƯƠNG HOÀNG VINH

TP HỒ CHÍ MINH, NĂM 2022

Trang 3

Tôi tên là: VÕ THANH VƯƠNG ĐẠO

Ngày sinh: 05/10/1967 Nơi sinh: tỉnh Bến Tre

Chuyên ngành: Khoa học máy tính Mã học viên: 1784801010023

Tôi đồng ý cung cấp toàn văn thông tin luận văn tốt nghiệp hợp lệ về bản quyền cho

Thư viện trường đại học Mở Thành phố Hồ Chí Minh Thư viện trường đại học Mở

Thành phố Hồ Chí Minh sẽ kết nối toàn văn thông tin luận văn tốt nghiệp vào hệ thống

thông tin khoa học của Sở Khoa học và Công nghệ Thành phố Hồ Chí Minh

Trang 5

LỜI CAM ĐOAN

Tôi tên là Võ Thanh Vương Đạo, học viên cao học lớp MCOM017A niênkhoá 2017 - 2019 Tôi xin cam đoan luận văn “Phương pháp trả lời câu hỏi dựavào Đồ thị tri thức thuộc miền dữ liệu du lịch” là bài nghiên cứu của chính tôidưới sự hướng dẫn của thầy tiến sĩ Trương Hoàng Vinh

Những kết quả đạt được và những đóng góp từ luận văn là kết quả của quátrình tìm hiểu, nghiên cứu và thực nghiệm của chính bản thân tôi Bên cạnh đó,luận văn sử dụng một số tài liệu, một số công trình nghiên cứu trước đây Tất

cả những tài liệu và công trình nghiên cứu này được tôi trích dẫn và ghi nguồntrích dẫn rõ ràng, theo đúng quy định

Kết quả của luận văn này chưa được nộp để nhận bất kỳ bằng cấp nào tạicác trường đại học hoặc cơ sở đào tạo khác Tôi xin cam đoan và chịu hoàn toàntrách nhiệm về nội dung này

Thành phố Hồ Chí Minh, năm 2021

Võ Thanh Vương Đạo

Trang 6

LỜI CẢM ƠN

Trong thời gian học tập, nghiên cứu để hoàn thiện luận văn, tôi đã nhận được

sự hướng dẫn, giúp đỡ rất tận tình của quý thầy cô trong khoa CNTT, khoaSau Đại Học của trường Đại học Mở Tp.HCM

Tôi xin gởi lời cảm ơn chân thành đến tiến sĩ Trương Hoàng Vinh Thầy đãrất nhiệt tình hỗ trợ, hướng dẫn tôi trong suốt thời gian nghiên cứu cũng nhưthực hiện luận văn Bên cạnh đó, thầy còn khơi gợi, truyền đạt tinh thần nghiêncứu khoa học và công bố khoa học thông qua các bài báo tại các hội nghị quốc

tế Tôi đã rất may mắn khi được cùng cộng tác, cùng làm việc chung với thầy.Một lần nữa, xin gởi đến thầy lòng biết ơn sâu sắc nhất

Bên cạnh đó, tôi cũng xin cảm ơn các thầy đã giảng dạy một số bộ môntrong quá trình học tập tại trường Ngoài việc truyền đạt kiến thức, các thầycòn hướng dẫn, đưa ra những lời khuyên, những kinh nghiệm cho việc chọn đềtài nghiên cứu và viết đề tài luận văn

Cuối cùng, tôi xin gởi lời cảm ơn đến những người thân yêu trong gia đình,một số bạn bè thân thiết Những người đã luôn ở bên cạnh, hỗ trợ, động viên

và tạo điều kiện thuận lợi nhất để tôi hoàn thành luận văn, cũng như chươngtrình học thạc sĩ tại trường

Trang 7

TÓM TẮT

Cơ sở dữ liệu đồ thị có thể biểu diễn được các mối liên hệ phức tạp của thôngtin trong thế giới thực, hỗ trợ lưu trữ, truy vấn, xử lý thông tin một cách hiệuquả mà không cần phải thông qua các lệnh kết nối JOIN khá tốn kém của cơ sở

dữ liệu quan hệ Thông thường, các nhu cầu truy xuất thông tin trong cơ sở dữliệu chỉ giới hạn trong một đồ thị con, từ một hoặc tập hợp các điểm (nút) banđầu có thể khám phá dữ liệu các điểm xung quanh thông qua các cung (quanhệ) với chi phí xử lý thấp dù là tổng kích thước của toàn bộ dữ liệu đồ thị làrất lớn Với các ưu điểm của cơ sở dữ liệu đồ thị, đã có các nghiên cứu mô hìnhhóa tri thức với hệ thống dữ liệu được xây dựng dựa trên cơ sở dữ liệu đồ thị,

nó được gọi là đồ thị tri thức (Knowledge Graph) Đồ thị tri thức biểu diễn các

dữ liệu liên quan đến tri thức của con người, có thể đặt ra các câu hỏi phức tạp

về dữ liệu tri thức thu thập được và nhận được câu trả lời tốt từ kho dữ liệunày theo thời gian thực Đồ thị tri thức có thể ứng dụng trong nhiều lĩnh vựccủa ngành khoa học máy tính trong đó có xử lý ngôn ngữ tự nhiên

Đã có những tiến bộ lớn của công nghệ xử lý ngôn ngữ tự nhiên (NaturalLanguage Processing - NLP) giúp máy tính có thể “hiểu” được câu hỏi/lệnh củacon người để tìm ra các nội dung kết quả trả lời phù hợp Người ta thường gọimột hệ thống như vậy là một ứng dụng chatbot hay một hệ thống trò chuyện.Một ứng dụng máy tính đóng vai trò thay thế con người để trò chuyện gọi làAgent (tác nhân/người đại diện) Agent cần cung cấp câu trả lời ngắn gọn, trực

Trang 8

tiếp cho các truy vấn của người dùng dựa trên kiến thức được rút ra từ cácnguồn dữ liệu khác nhau như tài liệu từ Web, hoặc dữ liệu được chuẩn bị trướcnhư bộ dữ liệu bán hàng, tiếp thị Agent cũng có thể hoàn thành các nhiệm

vụ của người dùng (task completion) như gọi xe, đặt chỗ nhà hàng, lập lịch họp hoặc trò chuyện (social chat) liền mạch như một con người thật sự (được đobằng bài kiểm tra Turing) và cung cấp các đề nghị phù hợp [1]

Những năm gần đây đã chứng kiến nhu cầu ngày càng tăng đối với cácChatbot đàm thoại trả lời câu hỏi (Question Answering- QA) cho phép ngườidùng truy vấn từ đồ thị tri thức (Knowledge Base - KB) quy mô lớn hoặc từmột tập các tài liệu bằng ngôn ngữ tự nhiên [1] Trong tài liệu này xin gọi tắt

là bài toán QA-KB (Question Answering - Knowledge Base)

Luận văn của chúng tôi tập trung nghiên cứu một phương pháp trả lời câuhỏi (tiếng Việt) dựa trên KB Thông qua phân tích, trích xuất các thực thể từcâu hỏi, sau đó sử dụng các thuật toán tìm kiếm, phân tích dữ liệu trong một

đồ thị con của KB để tìm ra câu trả lời (tốt nhất có thể) Tận dụng ưu điểm củamột KB để giải quyết bài toán QA mà không phải tốn quá nhiều chi phí chocông việc xử lý ngôn ngữ tự nhiên: chuyển đổi câu hỏi bằng ngôn ngữ tự nhiênthành biểu diễn ý nghĩa (meaning representations – MR) mà chương trình máytính có thể “hiểu” được Luận văn gồm có 4 chương:

• Chương 1 Tổng quan

1 Giới thiệu về luận văn

– Giới thiệu các công trình nghiên cứu liên quan

– Trình bày lý do chọn đề tài nghiên cứu

2 Các đề xuất cho nghiên cứu trong luận văn

– Phạm vi nghiên cứu, nội dung, phương pháp nghiên cứu

– Đóng góp khoa học, thực tiễn

• Chương 2 Cơ sở lý thuyết

Trang 9

– Giới thiệu về đồ thị, một số thuật toán trên đồ thị

– Giới thiệu về đồ thị tri thức

– Giới thiệu về xử lý ngôn ngữ tự nhiên (NLP)

– Một số tác vụ cơ bản trong xử lý ngôn ngữ tự nhiên

– Nhận dạng thực thể được đặt tên (NER)

– Transformers and Transfer Learning (học chuyển giao)

– Kỹ thuật Bidirectional Encoder Representations from Transformers (BERT)

• Chương 3 Phương pháp trả lời câu hỏi về du lịch Bến Tre

– Xây dựng bộ câu hỏi thường gặp về du lịch Bến Tre

– Tách từ và nhận dạng thực thể được đặt tên từ câu hỏi đầu vào

– Tạo dựng một cơ sở dữ liệu đồ thị tri thức để thử nghiệm phương pháp– Phân loại các dạng câu hỏi thường gặp về du lịch Bến Tre và phươngpháp tìm câu trả lời

• Chương 4 Kết quả thử nghiệm phương pháp đã đề xuất

– Giới thiệu đồ thị tri thức sử dụng để thử nghiệm

– Giới thiệu các câu hỏi sử dụng thử nghiệm và cài đặt thuật toán trả lờicâu hỏi

– Thực hiện tách từ và nhận dạng thực thể

– Thử nghiệm Modul trả lời câu hỏi và kết quả sau thử nghiệm

– Kết luận, hướng phát triển của Luận văn

NGƯỜI HƯỚNG DẪN Thành phố Hồ Chí Minh, năm 2021

HỌC VIÊN

TS.Trương Hoàng Vinh Võ Thanh Vương Đạo

Trang 10

Graph databases can represent complex relationships of information in thereal world, supporting efficient storage, querying, and processing of informationwithout having to go through commands JOIN connections are quite expensivefor relational databases Usually, the information retrieval needs in the databaseare limited to a subgraph, from one or a set of points (nodes) that can initiallyexplore the data of surrounding points through arcs (relation) with low process-ing cost even though the total size of the entire graph data is very large With theadvantages of graph databases, there have been studies on knowledge modelingwith data systems built based on graph databases, which are called Knowledgegraphs Knowledge graphs represent data related to human knowledge, can askcomplex questions about collected knowledge data and get good answers fromthis data warehouse over real time Knowledge graphs can be applied in manyareas of computer science, including Natural language processing

There have been great advances in Natural Language Processing (NLP) nology to help computers "understand" human questions/commands to find theright answers It is common to call such a system a chatbot application or a chatsystem A computer application that acts as a substitute for humans to chat iscalled an Agent Agents need to provide concise, direct answers to user queriesbased on knowledge drawn from disparate data sources such as documents fromthe Web, or pre-prepared data such as sales, marketing data sets Agent can

Trang 11

tech-also complete user tasks (task completion) such as calling a car, making rant reservations, scheduling meetings or chatting (social chat) seamlessly like

restau-a humrestau-an rerestau-al (restau-as merestau-asured by the Turing test) restau-and provide relevrestau-ant offers [1].Recent years have seen an increasing demand for Conversation Answering(QA) Chatbots that allow users to query from large-scale Knowledge Base (KB)

or from a set of documents in natural language [1] In this document, refer tothe problem as QA-KB (Question Answering - Knowledge Base)

Our thesis focuses on researching a method of answering questions (in namese) based on KB Through analysis, extract entities from the question, thenusing search algorithms, analyze the data in a subgraph of the KB to find the an-swer (the best possible) Take advantage of a KB to solve a QA problem withoutspending too much on natural language processing: converting natural languagequestions into meaningful representations (MR) ) that a computer program can

Viet-"understand"

The thesis consists of 4 chapters:

• Chapter 1 Overview

1 Introduction to the thesis

– Introduction of related research works

– Explain the reasons for choosing the research topic

2 Proposals for research in the thesis

– Research scope, content, research methods

– Scientific and practical contributions

• Chapter 2 Theoretical Basis

– Introduction to graphs, some algorithms on graphs

– Introduction to knowledge graphs

– An introduction to natural language processing (NLP)

Trang 12

– Some basic tasks in natural language processing.

– Named Entity Identity (NER)

– Transformers and Transfer Learning

– Bidirectional Encoder Representations from Transformers (BERT)

• Chapter 3 Method of answering questions about tourism in BenTre

– Building a set of frequently asked questions about Ben Tre tourism.– Word extraction and named entity recognition from input questions.– Build a knowledge graph database for method testing

– Classification of frequently asked questions about Ben Tre tourism andmethods of finding answers

• Chapter 4 Test results of the proposed method

– Introduction to knowledge graphs used for testing

– Introduce test usage questions and set up question-answering algorithms.– Perform word separation and entity recognition

– Testing Module answers questions and results after testing

– Conclusion, development direction of the thesis

INSTRUCTOR Hồ Chí Minh City, Year 2021

STUDENT

Ph.D Trương Hoàng Vinh Võ Thanh Vương Đạo

Trang 14

2.1.3 Đường đi và chu trình 152.1.4 Thuật toán tìm kiếm theo chiều sâu(Depth First Search): 162.1.5 Thuật toán tìm kiếm theo chiều rộng (Beardth First Search) 162.1.6 Đồ thị tri thức (Knowledge Graph) 172.2 Nhận dạng thực thể trong Xử lý ngôn ngữ tự nhiên 192.2.1 Giới thiệu về xử lý ngôn ngữ tự nhiên 192.2.2 Một số tác vụ cơ bản trong xử lý ngôn ngữ tự nhiên 232.2.3 Nhận dạng thực thể được đặt tên (Named entity recogni-

tion - NER) 292.3 Transformers and Transfer Learning (học chuyển giao) 332.4 BERT - Bidirectional Encoder Representations from Transformers 34

3 Phương pháp trả lời câu hỏi về du lịch Bến Tre 373.1 Xây dựng bộ câu hỏi thường gặp về du lịch Bến Tre 373.2 Tách từ và nhận dạng thực thể được đặt tên 393.3 Tạo dựng một cơ sở dữ liệu đồ thị tri thức để thử nghiệm phươngpháp 403.4 Trả lời câu hỏi thường gặp về du lịch Bến Tre với kết quả là mộtdanh sách đối tượng 433.5 Trả lời câu hỏi thường gặp về du lịch Bến Tre với kết quả là đặcđiểm của một đối tượng/thực thể cụ thể 46

4 Kết quả thực nghiệm phương pháp đã đề xuất 514.1 Tạo lược đồ của đồ thị tri thức 514.2 Thu thập dữ liệu về du lịch Bến Tre vào đồ thị tri thức 534.3 Xây dựng bộ câu hỏi huấn luyện, tìm phương pháp trả lời câu hỏi 544.4 Thực hiện tách từ và nhận dạng thực thể 564.5 Rút trích đặc trưng 594.6 Xác định thực thể chính của câu hỏi 60

Trang 15

4.7 Phương pháp suy diễn trả lời câu hỏi 614.8 Thực nghiệm và kết quả sau thực nghiệm 644.9 Hướng phát triển luận văn 68

Trang 16

DANH MỤC HÌNH

2.1 Hình vẽ Đồ thị vô hướng có 6 đỉnh và 7 cạnh 13

2.2 Hình vẽ Đồ thị có hướng có trọng số 14

2.3 Ví dụ về thuật toán tìm kiếm trên đồ thị 16

2.4 Ví dụ về một đồ thị tri thức 18

2.5 Ví dụ về cây phân tích cú pháp phụ thuộc Hình được trích từ tài liệu tham khảo [11] 26

2.6 Kết quả nhận dạng thực thể được đặt tên kết xuất từ mô hình PhoNLP 31

2.7 Nguyên lý kỹ thuật cảm ứng đặc trưng 32

2.8 Cơ chế chú ý 36

3.1 Cây đối tượng của lược đồ đồ thị tri thức thử nghiệm 42

3.2 Tìm kiếm danh sách các điểm tham quan trên dữ liệu đồ thị 45

3.3 Tìm thuộc tính địa chỉ của nút khách sạn "Hàm Luông" 47

3.4 Nút "Bến Tre" có các thuộc tính bổ sung 49

4.1 File mô tả đối tượng Person của lược đồ để import vào cây lược đồ của đồ thị 52

4.2 Một phần cây lược đồ sau khi đã hoàn thành 53

4.3 Minh họa một hàng trong file dữ liệu thu thập gồm Tên đối tượng - thuộc tính - giá trị 54

Trang 17

4.4 Minh họa bộ câu hỏi được xây dựng để huấn luyện hệ thống 554.5 Lệnh nạp VnCorNLP kích hoạt dịch vụ tách từ 564.6 Minh họa tách từ và nhận dạng thực thể 584.7 Các điểm tham quan, du lịch,khách sạn trên đồ thị hội tụ vềtỉnh, thành phố 614.8 Minh họa về trả lời câu hỏi dạng danh sách 634.9 Câu hỏi dạng danh sách không có trong bộ câu hỏi huấn luyện 654.10 Tách từ và nhận dạng thực thể sai 674.11 Câu hỏi mẫu huấn luyện Dialogflow và các thực thể được ngườidùng xác định 70

Trang 18

Path : Đường đi trong đồ thị

Circuit : Chu trình trong đồ thị

Depth First Search : Tìm theo chiều sâu

Beardth First Search : Tìm theo chiều rộng

Triple : Bộ ba dữ liệu liên hệ

Intent : Ý định, mục đích (xây dựng Chatbot)

Trang 19

NER : Named entity recognition

NLP : Natural Language Processing

POST Part-of-speech tagging

QA : Question Answering

Trang 20

MỞ ĐẦU

Xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP) là một lĩnhvực nghiên cứu rất rộng, là đối tượng nghiên cứu của ngành khoa học máy tính.NLP đóng vai trò quan trọng trong giao tiếp giữa người và máy tính, giúp máytính giao tiếp được với con người một cách tự động, “hiểu” được con người Cácứng dụng của NLP có thể là:

- Nhận dạng chữ viết (chữ in hoặc chữ viết tay) sau đó chuyển đổi thành vănbản điện tử

- Nhận dạng tiếng nói: sử dụng để chuyển lời nói thành văn bản điện tử, giúpthao tác của con người trên máy tính nhanh hơn, đơn giản hơn;

- Tổng hợp tiếng nói: từ một văn bản điện tử máy tính tổng hợp thành tiếngnói, tự động đọc tài liệu cho con người;

- Dịch tự động (Machine translate): là việc dịch từ ngôn ngữ này sang ngônngữ khác một cách tự động;

- Trả lời câu hỏi (Question Aswering - QA): con người đặt câu hỏi, máy tính

sẽ tự tìm ra các nội dung phù hợp và trả lời, người ta thường gọi một hệ thốngnhư vậy là một ứng dụng chatbot hay một hệ thống trò chuyện

Các loại vấn đề mà một hệ thống trò chuyện phải giải quyết có thể là:

- Trả lời câu hỏi: ứng dụng máy tính đóng vai trò thay thế con người để tròchuyện gọi là Agent (tác nhân/người đại diện) Agent cần cung cấp câu trả lờingắn gọn, trực tiếp cho các truy vấn của người dùng dựa trên kiến thức được

Trang 21

rút ra từ các nguồn dữ liệu khác nhau như tài liệu từ Web, hoặc dữ liệu đượcchuẩn bị trước như bộ dữ liệu bán hàng, tiếp thị

- Hoàn thành nhiệm vụ: Agent cần hoàn thành các nhiệm vụ của người dùngnhư gọi xe, đặt chỗ nhà hàng, lập lịch họp

- Trò chuyện xã hội (Social chat): Agent sẽ phải trò chuyện liền mạch nhưmột con người thật sự (được đo bằng bài kiểm tra Turing) và cung cấp các đềnghị phù hợp

Đối với các ứng dụng chatbot với mục tiêu đơn giản như bán một món hàng,mua một vé máy bay bài toán sẽ dễ giải quyết hơn do mục tiêu đã được địnhtrước, các nội dung mà máy tính phải trả lời cũng theo một kịch bản rõ ràng.Những năm gần đâ có các nghiên cứu bài toán trả lời câu hỏi (QA) dựa vào

đồ thị tri thức (KG) KG là mô hình hóa tri thức với hệ thống dữ liệu được xâydựng dựa trên mô hình đồ thị Đặc trưng đặc biệt của mô hình đồ thị giống vớilogic tri thức của con người trên thực tế, nên nó có thể sử dụng để biểu diễn

dữ liệu liên quan đến tri thức của con người Việc trả lời câu hỏi dựa trên đồthị tri thức dẫn đến nội dung trả lời rất đa dạng, không chỉ tập trung vào mộtmục tiêu (bán hàng, đặt phòng, mua vé, ) mà kết quả trả lời là một kiến thứcthuộc miền dữ liệu mở mà đồ thị tri thức biểu diễn Đối với việc tạo một chatbotđơn giản (như chatbot bán hàng) phải giải quyết bài toán “hiểu” câu hỏi củangười dùng để có thể đưa ra kết quả trả lời phù hợp nhờ vào sự phát triển củacông nghệ xử lý ngôn ngữ tự nhiên (Natural Language Process - NLU) Mô-đunNLU nhận lời nói/văn bản từ người dùng làm đầu vào và thực hiện ba tác vụ:phát hiện miền dữ liệu (domain detection), xác định ý định người dùng (intentdetermination) và gắn thẻ vị trí (slot tagging) Đồng thời với việc gắn thẻ vị trí

là trích xuất thông tin các thực thể trong câu hỏi của người dùng

Đối với bài toán KB-QA đã có các nghiên cứu tập trung vào phương pháplập luận trên KG để giảm chi phí cho bài toán phân tích “hiểu” được ngữ nghĩacâu hỏi bằng ngôn ngữ tự nhiên

Trang 22

Các câu hỏi làm điểm vào cho bài toán QA-KB có thể tạm phân làm hai loại:câu hỏi đơn giản và câu hỏi dạng phức tạp Câu hỏi dạng đơn giản thường cócâu trả lời biểu diễn dưới dạng tổng quát gồm bộ ba (Triples): chủ ngữ - vị từ

- tân ngữ/đối tượng (subject-predicate-object) hay đối tượng – quan hệ - đốitượng (object – relation – object)

Ví dụ để trả lời câu hỏi Đặc sản của Bến Tre là gì ?, chúng ta chỉ cần một

bộ ba cho câu trả lời: Kẹo dừa Thanh Long – đặc sản của – Bến Tre

Trong khi đó, các câu hỏi phức tạp đòi hỏi suy luận khá phức tạp Ví dụ: đểtrả lời câu hỏi Kẹo dừa là đặc sản của miền nào ? cần hai bộ ba để có câu trảlời:

Kẹo dừa – đặc sản của – Bến Tre; Bến Tre – là tỉnh thuộc – miền NamVậy Kẹo dừa là đặc sản của miền Nam

Các câu hỏi dạng đơn giản chỉ cần một lần truy xuất để trích xuất một bộ

ba đốii tượng – quan hệ - đối tượng là có được câu trả lời Các câu trả lời chocâu hỏi dạng phức tạp có thể nhận được bằng cách tìm một tập hợp các đườngdẫn hoặc một đồ thị con trong KB có liên quan đến dữ kiện trong câu hỏi vàthuật toán tìm kiếm phải phân tích các nút trong đường dẫn hoặc đồ thị connày để suy diễn trên đố thị để tìm ra câu trả lời

Bên cạnh đó, đối với câu hỏi dạng phức tạp thì bài toán KB-QA mà mục tiêutìm kiếm là tìm câu trả lời trong kho dữ liệu đủ lớn hoặc trong một miền dữliệu thì vấn đề này vẫn có nhiều thách thức và đang được tiếp tục nghiên cứu

và hoàn thiện

Bài toán KB-QA thường bao gồm trình phân tích ngữ nghĩa và phương pháplập luận trên KB (Knowledge Base Reasoning- KBR) [1], trong đó, tập trungvào phương pháp lập luận trên KG để làm giảm chi phí cho bài toán phân tích

để “hiểu” được ngữ nghĩa câu hỏi bằng ngôn ngữ tự nhiên

Nghiên cứu của chúng tôi liên quan đến xử lý bài toán KB-QA (một số câuhỏi dạng đơn giản, phức tạp thường dùng liên quan đến lĩnh vực du lịch) bằng

Trang 23

ngôn ngữ tiếng Việt theo hướng chỉ tách từ, trích xuất thông tin các thực thểtrong câu hỏi của người dùng, sau đó dựa vào các từ đặc trưng trong câu hỏi vàlập luận trên KG để tìm ra kết quả trả lời.

Trang 24

Chương 1

TỔNG QUAN

Một hệ thống trả lời câu hỏi (QA) đặc biệt là hệ thống trả lời câu hỏi dựatrên cơ sở tri thức (KB-QA) phải giải quyết hai bài toán: chuyển đổi câu hỏibằng ngôn ngữ tự nhiên thành biểu diễn ý nghĩa của chúng (Meaning Represen-tations – MR) bằng một trình phân tích ngữ nghĩa độc lập: Cai et al 2013 [2],Kwiatkowski et al 2013 [3], Berant et al 2013 [4] ; sau đó dựa vào MR để tạocâu truy vấn tìm câu trả lời từ trong cơ sở dữ liệu quan hệ hoặc cơ sở dữ liệu

KB Một số nghiên cứu trước đây giải quyết nhiệm vụ QA hoặc KB-QA theocách này Cách tiếp cận này gọi là phương pháp xếp tầng (cascaded)

Cách tiếp cận xếp tầng tách rời việc phân tích ngữ nghĩa với KB đối mặt vớimột số thách thức: ví dụ như trong câu hỏi sử dụng các vị từ (predicate) khácvới vị từ (hay quan hệ) trong cơ sở dữ liệu KB sẽ gặp nhiều vấn đề khi đối sánhcác vị từ trong câu hỏi với các vị từ/quan hệ trong cơ sở dữ liệu KB để tìm câutrả lời Ngay cả khi câu hỏi sử dụng các vị từ phù hợp với KB thì việc tìm kiếmchính xác các vị từ trong một KB với số từ vựng lớn phù hợp các quan hệ mô

tả trong câu hỏi vẫn là một vấn đề khó khăn [3]

Để giảm chi phí cho nhiệm vụ MR và nhiệm vụ truy xuất KB tìm câu trả lời,

đã có các nghiên cứu theo hướng tích hợp phân tích ngữ nghĩa vào nhiệm vụ

Trang 25

truy xuất KB trả lời câu hỏi Bao và cộng sự [5] đề xuất một phương pháp trảlời câu hỏi dựa trên KB dưới dạng dịch máy (machine translation) bằng cáchxem nhiệm vụ QA như một thủ tục dịch thuật Cách tiếp cận này xử lý các câuhỏi dạng phức tạp hoặc câu hỏi nhiều ràng buộc như đã đề cập ở phần mở đầu.Câu hỏi đầu tiên được phân tích thành các câu hỏi con dựa trên 04 mẫu cú phápđược xây dựng sẳn; truy vấn KB để lần lượt tìm nội dung trả lời, kết quả câuhỏi con trước là đầu vào của câu hỏi con sau, nếu câu hỏi con có nhiều kết quảthì đưa vào hàng đợi để tìm kiếm nhiều hướng trong KB cho đến khi tìm đượckết quả phù hợp Tác giả cũng áp dụng một mô hình tuyến tính (linear model)được đào tạo (training) để ưu tiên tìm kiếm theo hướng có khả năng cho kết quảtốt trong cây tìm kiếm để tối ưu hóa chi phí và tăng khả năng tìm được câu trảlời phù hợp [5] Phương pháp này không đòi hỏi phân tích ngữ nghĩa rõ ràng chocâu hỏi đầu vào, mà trong quá trình tìm kiếm dần tìm đến kết quả phù hợp với

ý nghĩa câu hỏi Trên cơ bản đây là phương pháp tìm kiếm nhiều giai đoạn, mỗigiai đoạn giải quyết một câu hỏi đơn giản (dạng bộ ba) dựa vào KB, giúp tiếtkiệm chi phí phân tích ngữ nghĩa câu hỏi, hạn chế không gian tìm kiếm trong

KB (giảm từ vụng tìm kiếm) và do đó giảm chi phí tổng thể của nhiệm vụ trảlời câu hỏi

Lấy cảm hứng từ phương pháp này, Yih và cộng sự [6] đề xuất một phươngpháp tương tự về cách tiếp cận, giúp tận dụng dữ liệu trong KB để giảm chi phíphân tích ngữ nghĩa Đầu tiên trích xuất các thực thể trong câu hỏi (giới hạn lạicòn 2 thực thể), xác định thực thể làm gốc (thực thể chủ đề), tìm trong KB một

đồ thị con gồm các đường đi (path) nối đến các thực thể này; mở rộng đường đinày (tối đa thêm hai nút theo chiều sâu) Trong các nút mở rộng đó có tồn tạicâu trả lời (thường câu hỏi có câu trả lời nằm ở nút xung quanh các đường đinày) Đường đi từ thực thể chủ đề đến thực thể liên quan trong câu hỏi và đếnnút chứa kết quả trả lời gọi là chuỗi suy luận cốt lõi Có thể có nhiều chuỗi suyluận như vậy Để đánh giá chuỗi suy luận nào là gần với câu trả lời nhất, tác giả

Trang 26

xây dựng mô hình và đào tạo mạng nơ-ron tích hợp sâu (Deep ConvolutionalNeural Networks) để tính điểm thưởng cho từng chuỗi suy luận Chuỗi suy luậncốt lõi được tính điểm bằng mô hình được đào tạo ClueWeb bằng cách sử dụngchú thích Freebase (Gabrilovich và cộng sự, 2013); cộng thêm điểm so sánh chínhxác tên thực thể phụ với tên nút có trong KB; cộng thêm điểm tỉ lệ xuất hiệncủa thực thể phụ trong câu hỏi; cộng thêm điểm điều kiện khác có trong câuhỏi (tìm các từ khóa, ví dụ: gần nhất, mới, gần đây, đầu tiên để tính điểmcác đường dẫn có thuộc tính thời gian phù hợp nhất liên quan đến thực thể trảlời) Cuối cùng, cộng các điểm thưởng này để xếp hạng chuỗi suy luận cốtlõi và chọn chuỗi có điểm cao nhất đề xuất nút cuối cùng trong chuỗi là nút trảlời [6] Quá trình tìm kiếm kết quả trả lời là quá trình nhiều giai đoạn, căn cứvào điểm thưởng để ưu tiên các đường đi của chuỗi suy luận cốt lõi có điểm tốtnhất (sử dụng hàng đợi có độ ưu tiên) Phương pháp này đã tận dụng KB tronggiai đoạn đầu nhằm cắt giảm không gian tìm kiếm và đồng thời đơn giản hóavấn đề phân tích và đối sánh ngữ nghĩa giữa câu hỏi và câu trả lời.

Gần đây, Zhou và cộng sự đề xuất một phương pháp cho bài toán KB-QAvới câu hỏi đầu vào dạng đơn giản (chỉ có một bộ ba và kết quả trả lời có trong

bộ ba) một mô hình kết hợp sâu (Deep fused model - DFM) Phương pháp nàykhông theo hướng chia nhiệm vụ KB-QA thành hai nhiệm vụ con độc lập (pháthiện chủ đề và đối sánh vị từ) mà coi việc phát hiện thực thể và đối sánh vị từ(các cung quan hệ trong đồ thị) là hai nhiệm vụ có liên quan và bổ sung chonhau [7] Tác giả trích xuất thực thể chủ đề trong một câu hỏi bằng SDM vàtìm hiểu các biểu diễn vectơ ngữ nghĩa giữa câu hỏi và các vị từ trong chuỗi suyluận bằng cách sử dụng mô hình ngữ nghĩa đa cấp (Multilevel semantic model

- MLSM) Các mô hình này được kết hợp trong một khuôn khổ thống nhất vàđược đào tạo chung Kết quả tiến hành thử nghiệm nhiệm vụ KB-QA với bộ

dữ liệu tiếng Anh và tiếng Trung các phương pháp được đề xuất “vượt trội hơnđáng kể so với các hệ thống hiện đại” [7] Tuy nhiên, như đã giới thiệu, nghiên

Trang 27

cứu này chỉ trả lời được câu hỏi dạng đơn giản.

Trong một nghiên cứu trong năm 2021, Xiong và cộng sự đã đề xuất phươngpháp KB-QA trả lời câu hỏi dạng phức tạp sử dụng RNN chuyển tiếp sâu [8]

để xây dựng mô hình nhận dạng thực thể chủ đề dựa trên BERT (mô hình biểudiễn ngôn ngữ được google giới thiệu vào năm 2018) Để tìm chuỗi suy luận (tácgiả gọi là đường dẫn trả lời), tác giả sử dụng một thuật toán động để tạo cácđường dẫn ứng viên và đánh giá nhánh cận để cắt bỏ các đương dẫn ứng viênkhông phù hợp càng sớm càng tốt Cuối cùng, bốn mô hình kết hợp BERT đượcthiết kế để tìm hiểu các vectơ đặc trưng của câu hỏi và câu trả lời của đườngdẫn ứng viên từ nhiều trọng tâm (multiple focuses), tác giả cũng đề xuất mộtchiến lược tổng hợp phù hợp để chọn các câu trả lời cuối cùng, có thể xử lý điềukiện thiếu các giá trị và đưa ra quyết định toàn diện từ các câu trả lời được

đề xuất bởi bốn mô hình trên Tác giả đánh giá cách tiếp cận của mình trênCKBQA, một bộ dữ liệu trả lời câu hỏi cơ sở kiến thức tiếng Trung từ cuộc thiCCKS2019 Kết quả thử nghiệm “hiệu quả và cách tiếp cận đạt được hiệu suấttốt hơn so với đội xuất sắc nhất trong cuộc thi CCKS2019” [9]

Các nghiên cứu nêu trên được đề xuất trên cơ sở ngôn ngữ sử dụng chính làtiếng Anh, đồng thời thường tập trung vào đề xuất một phương pháp trả lời câuhỏi cụ thể, kết quả là một thực thể, thông tin cụ thể mà thiếu các dạng mà câuhỏi là một đối tượng (không phải thực thể) kết quả trả lời là một danh sách cácthực thể Ví dụ: “Bến Tre có những điểm du lịch nào ?” Trong câu hỏi: “Điểm

du lịch” là một đối tượng, kết quả trả lời sẽ là một danh sách các điểm thamquan, du lịch nổi tiếng của Bến Tre

Ngoài ra, thuật toán tìm kiếm kết quả trả lời đang giả thiết rằng mô hình

đồ thị lưu trữ dữ liệu gồm tập hợp các nút và cung; mỗi nút biểu diễn một đốitượng cung nối giữa hai nút sẽ biểu diễn mối quan hệ giữa hai nút trong bộ bachủ ngữ - vị từ - tân ngữ/đối tượng (subject-predicate-object) hay đối tượng –quan hệ - đối tượng (object – relation – object) Các hệ thống cơ sở dữ liệu hiện

Trang 28

đại cho phép mở rộng một nút hay một cung trong đồ thị có thể chứa nhiềuthông tin hơn: nút trong đồ thị có thể bao gồm nhãn của nút, tên nút, các cặpthuộc tính – giá trị lưu giữ các thuộc tính của nút; cung có thể bao gồm tênquan hệ, các cặp thuộc tính – giá trị lưu giữ các thuộc tính của cung Một nút

có thể gồm nhiều nhãn Với một mô hình đồ thị với khả năng mở rộng mạnh

mẽ sẽ làm cho phương pháp, mô hình lưu trữ dữ liệu trong đồ thị sẽ phong phúhơn Ví dụ: câu trả lời không nhất thiết chỉ là tên nút mà còn có thể là một cặpthuộc tính – giá trị trong nút đó Như vậy, mở rộng khả năng biểu diễn của đồthị sẽ làm thay đổi cách biểu diễn dữ liệu tri thức và do đó làm thay đổi thuậttoán tìm kiếm trả lời câu hỏi dựa trên KB

Ngoài ra, một đồ thị tri thức thường có một lược đồ (schema) biểu diễn cácđối tượng, cây kế thừa các đối tượng, các thuộc tính của mỗi đối tượng, mốiquan hệ giữa các đối tượng Dữ liệu thật sự của đồ thị tri thức là tập hợp cácthực thể, các thuộc tính, các quan hệ theo mô tả từ lược đồ của nó Lược đồ cókích thước nhỏ hơn nhiều so với dữ liệu, nếu sử dụng tốt sẽ giảm kích thước củakhông gian tìm kiếm, nghĩa là giảm chi phí cho bài toán KB-QA

Theo hiểu biết và sự cố gắng của chúng tôi trong tìm hiểu tài liệu trong nước,các nghiên cứu trong nước liên quan đến bài toán KB-QA bằng tiếng Việt đượccác nhà nghiên cứu từng bước được quan tâm và phát triển, tuy nhiên, các côngtrình này chưa được công bố đầy đủ và khó được tiếp cận

Trong bối cảnh các nghiên cứu về một hệ thống trả lời câu hỏi dựa trên đồthị tri thức được nghiên cứu trên cơ sở ngôn ngữ sử dụng hầu như chỉ là tiếngAnh nên rất cần các nghiên cứu giải quyết bài toán KB-QA trên cơ sở ngôn ngữ

sử dụng là tiếng Việt sẽ giúp cho việc triển khai trong thực tế phù hợp với đặctrưng của ngôn ngữ tiếng Việt tại Việt Nam Nghiên cứu nội dung này là cầnthiết trong bối cảnh có ít các nghiên cứu về bài toán KB-QA tại Việt Nam.Việc mở rộng khả năng trả lời các câu hỏi mà kết quả trả lời là một danhsách cũng rất cần thiết, do trong thực tế người dùng thường bắt đầu cuộc trò

Trang 29

chuyện bằng một câu hỏi chung chung, sau khi có kết quả trả lời là một danhsách, người dùng sẽ tiếp tục có câu hỏi cụ thể hơn dựa trên kết quả trả lời trướcđó.

Ngoài ra, như đã phân tích ở trên, do khả năng mở rộng của cơ sở dữ liệu đồthị dẫn đến làm thay đổi thuật toán tìm kiếm câu trả lời; đồng thời, xem xétxem có thể sử dụng lược đồ của đồ thị tri thức để tối ưu hóa chi phí tìm kiếm.Trong một cơ sở dữ liệu đồ thị rất lớn vấn đề này có tính quyết định quan trọngkhi ứng dụng trong thực tế

Bên cạnh đó, dữ liệu chi tiết về một địa phương cụ thể (ví dụ: Bến Tre - ViệtNam) không có đầy đủ trong dữ liệu của Google hoặc trên Wiki; các chatbotđược xây dựng để trả lời câu hỏi tiếng Việt trong thực tế thường dựa vào cáccông cụ của Google, FaceBook, Amazon, chỉ tạo được một chatbot với chủ đềgiao tiếp khá hẹp, tập trung vào một ý định (Intent) cụ thể khi tạo chatbot và

hỗ trợ tiếng Việt chủ yếu dựa vào công cụ dịch thuật Nhu cầu cần xây dựngmột chatbot riêng của địa phương về du lịch là có thật trên thực tế nên cũngcần các nghiên cứu ban đầu về vấn đề này

này

Luận văn này Nghiên cứu giải quyết bài toán KB-QA bằng ngôn ngữ tiếngViệt dựa vào đồ thị tri thức để giảm bớt việc phân tích ngữ nghĩa câu hỏi, bằngcách trích xuất thực thể hoặc đối tượng và xác định từ khóa trong câu hỏi đểtìm câu trả lời từ một KB Đề xuất phương pháp gắn nhãn, trích xuất thực thể,trích xuất đối tượng, xác định các từ khóa quan trọng trong câu hỏi ngôn ngữtiếng Việt Việc trích xuất thực thể/đối tượng cần dựa vào nguồn dữ liệu từ KB

để thực hiện, điều này sẽ tăng xác suất tìm có câu trả lời phù hợp Đồng thờilưu ý thứ tự xuất hiện các từ khóa, thực thể trong câu tiếng Việt có thể mang

Trang 30

lại sự thay đổi về ngữ nghĩa của câu hỏi.

Do có rất ích bộ dữ liệu bằng ngôn ngữ tiếng Việt được chia sẽ để đào tạo

mô hình nên chúng tôi đề xuất phương án rút trích đặc trưng để phân loại vàxây dựng thuật toán suy diễn trả lời câu hỏi thay cho phương án huấn luyện hệthống bằng bộ dữ liệu huấn luyện lớn bằng tiếng Việt

Phương pháp đề xuất bổ sung thêm vào các phương pháp nghiên cứu đã cócác modul được huấn luyện để tìm thuộc tính, quan hệ bằng các từ (token) đặctrưng trong câu hỏi và từ chính dữ liệu có sẳn trong đồ thị Cách làm này giảiquyết hạn chế về dữ liệu chi tiết của địa phương chưa có trên google, wiki vàtăng hiệu quả đối với một bộ dữ liệu về lãnh vực cụ thể, một địa phương cụthể Như vậy, nó có tính định hướng ứng dụng nhiều hơn, phù hợp để có thể ápdụng nghiên cứu vào trong thực tế

Ngoài ra, chũng tôi cũng đề xuất phương pháp bổ sung xây dựng từ điển các

từ tiếng Việt, thuật toán so sánh xử lý chuỗi gần đúng, các thuật toán duyệt đồthị sao cho chi phí xử lý là thấp nhất có thể

Mục tiêu luận văn giới hạn vào nghiên cứu trả lời các câu hỏi tiếng Việtthường gặp về du lịch Bến Tre, phương pháp đề xuất tập trung vào miền dữliệu/lãnh vực du lịch và chỉ tập trung phương pháp tìm kết quả trả lời câu hỏi

mà không có hệ thống theo dõi đối thoại, hệ thống tạo câu trả lời

Các câu hỏi được nghiên cứu được giới hạn trong các câu hỏi thường gặp(FAQ) mà một khách du lịch thường quan tâm Xem xét các dạng câu hỏi đểtìm câu trả lời: dạng đơn giản và dạng phức tạp; cố gắng đạt tỉ lệ phân tíchchính xác trên 60

Dữ liệu thử ứng dụng lại các nghiên cứu về một đô thị tri thức về du lịch củamột tỉnh/thành phố Do vậy, câu hỏi thử nghiệm (test) hệ thống cũng chỉ tậptrung vào chủ đề du lịch trong một tỉnh, thành phố

Phương pháp đề xuất cũng chú ý đến tính đặc trưng riêng của ngôn ngữ, của

dữ liệu, nhằm đề xuất một phương pháp xây dựng một chatbot của người Việt,

Trang 31

có thể mở rộng các Intent khi xây dựng chatbot, dữ liệu chi tiết hơn, mang bảnsắc của địa phương và ít lệ thuộc vào các công cụ hiện có Qua đó đề xuất mộthướng phát triển áp dụng các kỹ thuật đã nghiên cứu để mở rộng chủ đề, phạm

vi cho một chatbot đầy đủ trả lời các câu hỏi về du lịch Việt Nam

Trang 32

Đồ thị là một cấu trúc rời rạc gồm tập các đỉnh/nút (Vertices) và cáccạnh/cung (Edges) nối với các đỉnh đó, được mô tả hình thức:

Hình 2.1: Hình vẽ Đồ thị vô hướng có 6 đỉnh và 7 cạnh

Trang 33

Có thể coi E là tập các cặp (u, v) với u và v là hai đỉnh của V Khi biểu diễncác mô hình trong thực tế, cạnh có thể có hướng hoặc vô hướng, mỗi cạnh đồthị có thể được gán một giá trị gọi là trọng số Ví dụ, khi sử dụng đồ thị biểudiễn một hệ thống giao thông trong thực tế, mỗi nút của đồ thị biểu diễn mộtnút giao thông trong thực tế, trọng số của cạnh có thể là khoảng cách giữa 2nút giao thông Nếu đường đi này là hai chiều thì đồ thị đang khảo sát là đồ thị

vô hướng Nếu đường đi giữa hai nút có xét yếu tố chiều ta gọi đây là đồ thị cóhướng

Hình 2.2: Hình vẽ Đồ thị có hướng có trọng số

Các thuật toán trên đồ thị đã được phát triển và có các ứng dụng trong nhiềulĩnh vực khác nhau, trong đó có các bài toán nổi tiếng như: bài toán tìm đường

đi ngắn nhất, bài toán cây khung nhỏ nhất, bài toán luồng cực đại trên mạng,bài toán phân công Trong lịch sử, bài toán “hôn nhân bền vững” từ lý thuyết về

đồ thị hai phía – đã từng được ứng dụng một cách hiệu quả: giải quyết bài toán

Trang 34

giữa người cần ghép thận và người thân sẳn sàng hiến thận nhưng lại không phùhợp để ghép với nhau Vì vậy, cách giải quyết bài toán là: liên kết nhiều ngườicần nhận và nhiều người sẳn sàng cho để trao đổi nhau, sau đó sử dụng cácthuật toán chọn các cặp người phù hợp có thể cho – nhận Nhờ vậy, người bệnh

có thể nhận được thận phù hợp dù người thân cho thận của họ là không phùhợp Giáo sư Al Roth, Đại học Stanford, người đã nhận giải Nobel năm 2012

do đã cứu mạng sống cho hàng trăm hay chính xác là hàng ngàn người nhờ vàocông trình nghiên cứu áp dụng thuật toán này vào thực tế

Trong phạm vi luận văn này, chúng tôi xin giới thiệu 02 thuật toán cơ bảntìm kiếm trên đồ thị mà sẽ được sử dụng ở chương 3

Cho đồ thị G=(V,E) với V là tập các đỉnh và E là tập các cạnh Một đường

đi (path) độ dài p từ đỉnh u đến đỉnh v là dãy x[0 p] với x[0]=u, x[p]=v và(x[i],x[i+1]) ∈ E với ∀ i: 0 ≤ i < p Đường đi p còn có thể biểu diễn bởi dãy cáccạnh (x0,x1),(x1,x2), ,(xp−1,xp)

Đỉnh u gọi là đỉnh đầu, đỉnh v gọi là đỉnh cuối của đường đi Trường hợp đỉnhđầu và đỉnh cuối trùng nhau, ta có một chu trình (circuit) Đường đi không cócạnh nào đi qua hơn một lần gọi là đương đi đơn, tương tự ta có chu trình đơn.Một bài toàn cơ bản trong đồ thị là tìm tất cả các đỉnh có thể đến được từmột điểm xuất phát ban đầu sao cho không bỏ sót đỉnh nào và không lặp lạiđỉnh đã đi qua Thuật toán này được gọi là thuật toán tìm kiếm trong đồ thị Cóhai thuật toán cơ bản nhất là thuật toán tìm kiếm theo chiều sâu (duyệt thwochiều sâu) và thuật toán tìm kiếm theo chiều rộng (duyệt theo chiều rộng)

Trang 35

2.1.4 Thuật toán tìm kiếm theo chiều sâu(Depth First

Search):

Ý tưởng của thuật toán là (hình 2.3):

- Bắt đầu từ nút A, cố gắng đi theo chiều sâu và "thăm" hết các đỉnh củacây con bên trái A, B, D; Đánh dấu A, B, D đã thăm

- Tiếp tục chuyển sang cây con kế và duyệt hết cây theo chiều sâu gồm cácđỉnh B, F, E: chỉ "thăm" các đỉnh F, E (B đã thăm) Đánh dấu F, E đã thăm

- Tương tự, duyệt cây con A, C, G dể "thăm" đỉnh C, G

Vậy thứ tự các đỉnh "thăm" theo thuật toán duyệt theo chiều sâu là: A, B,

D, F, E, C, G

Hình 2.3: Ví dụ về thuật toán tìm kiếm trên đồ thị

Trang 36

- Lần lượt duyệt qua các đỉnh kề với B,C, E.

+ Kề với B là D, F (thật ra A cũng là kế với B nhưng A đã đánh dấunên không "thăm" đỉnh A) Đánh dấu đã "thăm" B, D, F

+ Kề với C là G Đánh dấu đã "thăm" G

+ Kề với E là F Nhưng F đã thăm nên không thực hiện "thăm" lại F

- Lặp lại quá trình này cho đến khi các đỉnh đã được đánh dấu hoặc đỉnhkhông nối đến đỉnh nào thì dừng thuật toán (đã thăm tất cả các đỉnh)

Thuật toán trên là tổng quát các bước tìm kiếm trên đồ thị, trên thực tế khi

"thăm" một đỉnh có thể là tìm một giá trị, tính toán các công thức liên quanhoặc thực hiện một số bước trên đỉnh đã "thăm" nhằm giải quyết một bài toánnào đó

Mô hình lý thuyết về đồ thị nêu trên còn khá đơn giản, mỗi đỉnh chỉ gắn đượcmột giá trị số hoặc chữ, cung chỉ gắn được một số biểu diễn cho trọng số Trênthực tế dữ liệu không chỉ đơn giản là một số hay một ký tự trên mỗi đỉnh hoặccung Cần phải mở rộng thêm các khái niệm và các giá trị thuộc tính gắn vớiđỉnh hoặc cạnh của đồ thị để có thể sử dụng biểu diễn các dữ liệu tri thức đadạng và khá phức tạp của con người Đồ thị tri thức nhằm đáp ứng mục tiêunày

Không chỉ biểu diễn các mô hình, các bài toán trên thực tế, Đồ thị còn được

sử dụng biểu diễn một dạng dữ liệu đặc biệt đó là dữ liệu tri thức Nếu xem mộtnút là một thực thể/đối tượng và cạnh nối biểu diễn mối quan hệ giữa hai thựcthể Đồ thị dạng này gọi là đồ thị tri thức (Knowledge Graph) Đồ thị tri thứcđặc biệt thích hợp khi dùng để biểu diễn các mối quan hệ phức tạp giữa các đốitượng trong tự nhiên

Hình 2.4 là một ví dụ về đồ thị tri thức, có 3 đối tượng (class) được biểu diễntrong đồ thị: nút màu xanh dương có nhãn là Person, nút màu đỏ có nhãn là

Trang 37

Hình 2.4: Ví dụ về một đồ thị tri thức.

Company, nút màu xanh lá có nhãn là Technology Nút tên Join chính là tên củamột người (Person), nút tên Graph là tên của một kỹ thuật (Technology), nút

Trang 38

tên Neo4j là tên của một công ty (Company) Một Person có thể có nhiều bạn(quan hệ IS_FRIENDS_WITH), nhiều sở thích về công nghệ (quan hệ LIKES)nhưng thường chỉ làm việc cho một Company (quan hệ WORKS_FOR) Mỗinút là một thể hiện của một lóp đối tượng, màu của nút biểu diễn một loại nhãn

là tên của class Các nút có nhãn Person kết nối với thuộc tính của nó thông quacác cung biểu diễn quan hệ bạn bè (IS_FRIENDS_WITH), sở thích về côngnghệ (LIKES) và công việc (WORKS_FOR)

Hiện chưa có định nghĩa chính thức nào về đồ thị tri thức, tuy nhiên, có thểgiới hạn ở một tập hợp tối thiểu các đặc điểm của đồ thị tri thức như sau [10]:

1 Đồ thị tri thức chủ yếu mô tả các thực thể trong thế giới thực và mối liên

hệ của chúng, được tổ chức lưu trữ trong một mô hình đồ thị

2 Định nghĩa các lớp và quan hệ có thể có của các thực thể trong một lược

đồ (schema)

3 Cho phép các thực thể tùy ý có khả năng liên quan với nhau

4 Có thể mở rộng bao gồm các lĩnh vực chủ đề khác nhau

Với hệ thống dữ liệu được xây dựng dựa trên mô hình đồ thị- Đồ thị tri thức

- được sử dụng để mô hình hóa tri thức rất lớn và phức tạp của con người vàđược ứng dụng vào nhiều lĩnh vực khác nhau trong thực tế, trong đó có bài toánQA-KB

tự nhiên

Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) là một nhánhcủa trí tuệ nhân tạo, liên quan đến việc nghiên cứu các thuật toán, chương trìnhmáy tính có khả năng phân tích, xử lý để máy tính "hiểu" được ngôn ngữ của

Trang 39

con người.

Nổi tiếng nhất về bài tóan xử lý ngôn ngữ tự nhiên là bài kiểm tra Turing

do Alan Turing giới thiệu vào năm 1950, nhằm kiểm tra khả năng của một cỗmáy để tạo ra các phản hồi giống như con người để người đánh giá là con ngườikhông thể biết liệu các phản hồi được tạo ra này là bởi con người hay máy móctạo ra

Thử nghiệm này đã gây ra cuộc tranh luận quan trọng trong lĩnh vực trí tuệnhân tạo còn non trẻ thời bấy giờ và thúc đẩy các nhà nghiên cứu phát triểncác mô hình xử lý ngôn ngữ tự nhiên để làm cho một cỗ máy mà một ngày nào

đó có thể vượt qua thử nghiệm Turing, các nổ lực này vẫn còn tiếp tục cho đếnngày nay

Vào năm 1954 đã có các nghiên cứu trong lĩnh vục Máy dịch (machine lation), tuy nhiên sau đó đã có các báo cáo rằng máy dịch kém chính xác hơn

trans-và chậm hơn so với bản dịch của con người trans-và không có khả năng đạt được hiệusuất ở cấp độ con người trong tương lai gần

Đến năm 1980, một nghiên cứu của IBM về hệ thống dịch máy dựa trên thống

kê (statistical machine translation systems) bằng cách xây dựng các quy tắc thủcông giúp sửa chữa và kiểm soát những sai lầm mà hệ thống dịch máy thườngmắc phải, nhưng việc tạo ra những quy tắc như vậy là một quá trình tốn nhiềucông sức, phụ thuộc nhiều hơn vào việc học từ dữ liệu Phương pháp dịch máythống kê đã được nghiên cứu và sử dụng rộng rãi nhất cho đến khi các nghiêncứu về dịch máy dựa trên mạng neuron (neural machine translation) vào giữanhững năm 2010

Đến những năm 1990, những thành công trong nghiên cứu về máy dịch đãkhiến các nhà nghiên cứu mở rộng từ nhân dạng văn bản sang nhận dạng giọngnói IBM đã áp dụng phương pháp thống kê để nhận dạng giọng nói và cho rađời máy đánh chữ kích hoạt bằng giọng nói có tên Tangora, có thể xử lý kho

từ vựng dài 20.000 từ Các nhà nghiên cứu khác cũng đã có những thành công

Trang 40

tương tự Các hệ thống phần mềm nhận dạng giọng nói lúc đó có lượng từ vựnglớn hơn con người bình thường và có thể xử lý nhận dạng giọng nói liên tục,một cột mốc quan trọng trong lịch sử nhận dạng giọng nói.

Các phương pháp học sâu đã dẫn đến những cải tiến hiệu suất đáng kể trongcác nhiệm vụ xử lý ngôn ngữ tự nhiên Vào đầu những năm 2010, các nhà nghiêncứu về xử lý ngôn ngữ tự nhiên, cả trong học viện và công nghiệp, bắt đầu thửnghiệm mạng nơ-ron sâu cho các nhiệm vụ này Những thành công ban đầu dohọc sâu (deep neural networks) đến từ phương pháp học sâu (deep learning)được gọi long short-term memory (LSTM) Vào năm 2015, Google đã sử dụngmột phương pháp như vậy để cải tiến Google Voice Vào đầu những năm 2010

đã có phần mềm nhận dạng giọng nói cho xe ô-tô có thể xử lý một số lệnh thoạihạn chế Đến nay, ô-tô hiện có công nghệ có thể xử lý một loạt các lệnh ngônngữ tự nhiên rộng hơn, suy ra ngữ cảnh và ý định rõ ràng hơn.[11]

Nhìn chung, không có một cách tiếp cận duy nhất để giải quyết các nhiệm

vụ xử lý ngôn ngữ tự nhiên Tuy nhiên có thể liệt kê ba cách tiếp cận chủ yếuhiện nay là dựa trên quy tắc, học máy truyền thống (dựa trên thống kê) và dựatrên mạng neuron.[11]

- Xử lý ngôn ngữ tự nhiên dựa trên quy tắc (Rule-based)

Việc phân tích, xử lý dựa vào các quy tắc trong ngôn ngữ tự nhiên của conngười, đòi hỏi các chuyên gia là các nhà ngôn ngữ học để xây dựng các quy tắcbằng cách sử dụng biểu thức chính quy (regular expressions) 1 và đối sánh mẫu(pattern matching) Phương pháp này hoạt động tốt trong trường hợp sử dụngtrong phạm vi hẹp nhưng thường không khái quát hóa tốt

Ví dụ về các quy tắc: các từ kết thúc bằng -ing là động từ, các từ kết thúcbằng -er hoặc -est là tính từ, các từ kết thúc bằng ’s là sở hữu từ, v.v

Trường hợp một hệ thống lớn sẽ cần rất nhiều quy tắc tạo bằng tay để có

1 Chuỗi các ký tự xác định một mẫu tìm kiếm Chúng tuân theo cùng một mẫu và được hướng dẫn bởi một bộ quy tắc

Ngày đăng: 04/10/2023, 00:21

HÌNH ẢNH LIÊN QUAN

Hình 2.4: Ví dụ về một đồ thị tri thức. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 2.4 Ví dụ về một đồ thị tri thức (Trang 37)
Hình 2.5: Ví dụ về cây phân tích cú pháp phụ thuộc. Hình được trích từ tài liệu tham khảo [11]. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 2.5 Ví dụ về cây phân tích cú pháp phụ thuộc. Hình được trích từ tài liệu tham khảo [11] (Trang 45)
Hình 2.7: Nguyên lý kỹ thuật cảm ứng đặc trưng. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 2.7 Nguyên lý kỹ thuật cảm ứng đặc trưng (Trang 51)
Hình 2.8: Cơ chế chú ý. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 2.8 Cơ chế chú ý (Trang 55)
Hình 3.1: Cây đối tượng của lược đồ đồ thị tri thức thử nghiệm. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 3.1 Cây đối tượng của lược đồ đồ thị tri thức thử nghiệm (Trang 61)
Hình 3.2: Tìm kiếm danh sách các điểm tham quan trên dữ liệu đồ thị. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 3.2 Tìm kiếm danh sách các điểm tham quan trên dữ liệu đồ thị (Trang 64)
Đồ thị tri thức nhưng tạo thêm các nút dữ liệu mới liên quan với thực thể cần - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
th ị tri thức nhưng tạo thêm các nút dữ liệu mới liên quan với thực thể cần (Trang 68)
Hình 4.1: File mô tả đối tượng Person của lược đồ để import vào cây lược đồ của đồ thị - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.1 File mô tả đối tượng Person của lược đồ để import vào cây lược đồ của đồ thị (Trang 71)
Hình 4.2: Một phần cây lược đồ sau khi đã hoàn thành - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.2 Một phần cây lược đồ sau khi đã hoàn thành (Trang 72)
Hình 4.3: Minh họa một hàng trong file dữ liệu thu thập gồm Tên đối tượng - -thuộc tính - giá trị - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.3 Minh họa một hàng trong file dữ liệu thu thập gồm Tên đối tượng - -thuộc tính - giá trị (Trang 73)
Hình 4.6: Minh họa tách từ và nhận dạng thực thể - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.6 Minh họa tách từ và nhận dạng thực thể (Trang 77)
Hình 4.8: Minh họa về trả lời câu hỏi dạng danh sách. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.8 Minh họa về trả lời câu hỏi dạng danh sách (Trang 82)
Hình 4.9: Câu hỏi dạng danh sách không có trong bộ câu hỏi huấn luyện. - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.9 Câu hỏi dạng danh sách không có trong bộ câu hỏi huấn luyện (Trang 84)
Hình 4.10: Tách từ và nhận dạng thực thể sai - Phương pháp trả lời câu hỏi dựa vào đồ thị tri thức thuộc miền dữ liệu du lịch
Hình 4.10 Tách từ và nhận dạng thực thể sai (Trang 86)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w