1. Trang chủ
  2. » Tất cả

Đề tài website quản lí cửa hàng tích hợp chatbot

167 2 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Website Quản lí Cửa hàng Tích hợp Chatbot
Tác giả Đặng Hải Thịnh, Nguyễn Văn Dũng
Người hướng dẫn GV. Phan Trung Hiếu
Trường học Đại học Công nghệ Thông tin, Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ thông tin
Thể loại Đồ án
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 167
Dung lượng 6,97 MB

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

Nội dung

Các chatbots được thiết kế phức tạp dựa trên nền tảng xử lý ngôn ngữ tự nhiên, nhưng cũng có nhiều hệ thốngkhác đơn giản hơn bằng cách quét từ khóa trong đầu vào, sau đó trả lời với từ k

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Giảng viên hướng dẫn : GV Phan Trung Hiếu

Nhóm sinh viên thực hiện:

Đặng Hải Thịnh – 19520976 Nguyễn Văn Dũng – 19521399

Trang 2

Thành phố Hồ Chí Minh,…tháng…năm 2022

NHẬN XÉT CỦA GIẢNG VIÊN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 3

………

Trang 4

Do kiến thức và kinh nghiệm thực tiễn còn hạn chế nên đồ án không tránh khỏinhững thiếu sót nhất định Em xin trân trọng tiếp thu các ý kiến của các thầy để luậnvăn được hoàn thiện hơn

Trân trọng cám ơn

Sinh viên

(Ký và ghi rõ họ tên)

Trang 5

PHẦN I MỞ ĐẦU 9

1 L Ý DO CHỌN ĐỀ TÀI 9

2 MỤC TIÊU VÀ NHIỆM VỤ NGHIÊN CỨU 9

2.1 Mục tiêu 9

2.2 Nhiệm vụ nghiên cứu 10

3 Đ ỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 10

3.1 Đối tượng nghiên cứu 10

3.2 Phạm vi nghiên cứu 10

4 PHƯƠNG PHÁP NGHIÊN CỨU 10

4.1 Nghiên cứu lý thuyết 10

4.2 Nghiên cứu thực nghiệm 10

5 Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN CỦA ĐỀ TÀI 11

5.1 Về mặt lý thuyết 11

5.2 Về mặt thực tiễn 11

6 BỐ CỤC: 11

PHẦN II NỘI DUNG 14

CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY VÀ XỬ LÝ NGÔN NGỮ TỰ NHIÊN 14

1 PHƯƠNG PHÁP HỌC MÁY 14

1.1 Trí tuệ nhân tạo 14

1.1.1 Định nghĩa 14

1.1.2 Quá trình hình thành và phát triển 14

1.1.3 Một số ứng dụng 15

1.2 Học máy 17

1.2.1 Các phương pháp học máy 17

1.2.2 Ứng dụng của học máy 20

2 XỬ LÝ NGÔN NGỮ TỰ NHIÊN 21

2.1 Tổng quan xử lý ngôn ngữ tự nhiên 21

2.2 Các bài toán cơ bản trong xử lý ngôn ngữ tự nhiên 21

2.3 Ứng dụng của xử lý ngôn ngữ tự nhiên 23

3 CÁC PHƯƠNG PHÁP BIỂU DIỄN VĂN BẢN 24

3.1 Mô hình biểu diễn văn bản truyền thống 24

3.1.1 Mô hình logic 24

3.1.2 Mô hình vector 25

3.1.3 Mô hình đồ thị biểu diễn văn bản 28

3.1.4 Mô hình đồ thị khái niệm (Conceptual Graphs -CGs) 29

3.1.5 Mô hình đồ thị hình sao 29

3.1.6 Mô hình đồ thị vô hướng sử dụng tần số xuất hiện 30

3.1.7 Mô hình đồ thị có hướng, cạnh không gán nhãn 30

3.1.8 Mô hình đồ thị có hướng, cạnh không gán nhãn, cạnh là khoảng cách n giữa hai từ trong văn bản 31

3.1.9 Mô hình Word2vec văn bản (vector hóa từ) 32

3.1.10 Mô hình Doc2vec (vector hóa văn bản) 33

4 TÍNH ĐỘ TƯƠNG ĐỒNG VĂN BẢN 34

4.1 Khái niệm độ tương đồng 35

4.2 Độ tương đồng văn bản dựa trên tập từ chung 35

4.2.1 Khoảng cách Jaro 35

Trang 6

4.2.2 Mô hình tương phản (Contrast model) 36

4.2.3 Hệ số Jaccard 36

4.3 Độ tương đồng văn bản dựa trên vector biểu diễn 36

4.3.1 Độ tương đồng cosine 36

4.3.2 Độ tương đồng dựa vào khoảng cách Euclide 37

4.3.3 Độ tương đồng dựa vào khoảng cách Manhattan 38

4.4 Độ tương đồng văn bản trong tiếng Việt 38

4.4.1 Độ tương tự ngữ nghĩa từ - từ 39

4.4.2 Độ tương tự ngữ nghĩa của văn bản 40

4.4.3 Độ tương tự về thứ tự của từ trong văn bản 41

4.4.4 Kết hợp giữa các độ đo để đánh giá độ tương tự giữa hai văn bản 42

5 CÁC PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN 43

5.1 Phương pháp Naive Bayes 43

5.2 Phương pháp k–Nearest Neighbor(KNN) 44

5.3 Phương pháp cây quyết định 45

5.3.1 Các độ đo trong thuật toán 46

5.4 Phương pháp mạng Nơron nhân tạo 47

5.4.1 Kiến trúc mạng nơ ron nhân tạo 47

5.4.2 Mạng nơ ron hồi quy RNN 51

5.4.3 Mạng Long short Term Memory (LSTM) 53

5.4.4 Ứng dụng RNN vào quản lý hội thoại 59

5.5 Phương pháp Support Vector Machines (SVM) 62

6 CHATBOT 63

6.1 Khái niệm 63

6.2 Hoạt động của chatbot 64

6.3 Sự phát triển của chatbot 65

6.4 Một số nền tảng phát triển chatbot 65

6.5 Một số ứng dụng của chatbot 67

6.6 Kết luận chương 68

CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG CHATBOT 69

1 CÁC MÔ HÌNH CHATBOT 69

2 PHÂN LOẠI CHATBOT 70

2.1 Flow-oriented chatbot 70

2.2 Chatbot thông minh nhân tạo (Artificially intelligent chatbot) 71

2.3 Chatbot lai (Hybrid chatbot) 72

2.4 Chatbot được hỗ trợ bởi con người 73

3 CÁC PHƯƠNG PHÁP XÂY DỰNG CHATBOT 73

3.1 So sánh trùng khớp mẫu câu (Pattern matchers) 73

3.2 Sử dụng thuật toán phân lớp (Classification algorithms) 74

3.3 Mạng nơron nhân tạo (Artificial Neural Network - ANN) 74

3.4 Xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP) 74

3.5 Hiểu ngôn ngữ tự nhiên (Natural Language Understanding - NLU) 75

4 CÁC VẤN ĐỀ CƠ BẢN KHI PHÁT TRIỂN HỆ THỐNG CHATBOT 76

4.1 Xác định ý định người dùng 77

4.2 Quản lý hội thoại (DM) 79

4.2.1 Mô hình máy trạng thái hữu hạn FSA 81

4.2.2 Mô hình Frame-based 82

4.3 Thành phần sinh ngôn ngữ (NLG) 83

Trang 7

5 KẾT LUẬN CHƯƠNG 86

CHƯƠNG 3 CÀI ĐẶT THỰC NGHIỆM HỆ THỐNG CHATBOT 87

1 BÀI TOÁN 87

2 XÂY DỰNG CHATBOT HỖ TRỢ NGƯỜI DÙNG 87

3 ỨNG DỤNG RASA XÂY DỰNG CHATBOT 89

3.1 Rasa framework 89

3.1.1 Giới thiệu 89

3.1.2 Cấu trúc chương trình của Rasa 92

3.1.3 Intent 94

3.1.4 Entity 94

3.1.5 Stories 94

3.1.6 Actions 95

3.1.7 Policies 96

3.1.8 Slots 97

3.2 Mô hình huấn luyện cho chatbot 97

3.3 Đánh giá hiệu quả của chatbot 99

4 XÂY DỰNG DỮ LIỆU CHATBOT 100

4.1 Xây dựng ý định 101

4.2 Xây dựng entity 101

4.3 Xây dựng câu trả lời cho bot 102

4.4 Xây dựng khung kịch bản (history) 103

4.5 Thực nghiệm 104

4.6 Đánh giá 104

CHƯƠNG 4 XÂY DỰNG WEB QUẢN LÍ BÁN HÀNG 105

1 QUY TRÌNH NGHIỆP VỤ & NGƯỜI DÙNG HỆ THỐNG 105

1.1 Quy trình nghiệp vụ 105

1.1.1 Quản lí sản phẩm 105

1.1.2 Quản lí bán hàng 105

1.1.3 Quản lí người dùng 105

1.2 Người dùng hệ thống 105

1.2.1 Người mua 105

1.2.2 Nhân viên cửa hàng 105

1.2.3 Quản lý cửa hàng 105

1.2.4 Chủ cửa hàng 106

2 CÁC YÊU CẦU CHUNG 106

2.1 Yêu cầu môi trường 106

2.2 Yêu cầu giao diện 106

2.3 Yêu cầu chức năng 106

2.3.1 Chức năng mua hàng 106

2.3.2 Chức năng tìm kiếm sản phẩm 107

2.3.3 Chức năng xem thông tin sản phẩm 107

2.3.4 Thêm sản phẩm vào giỏ hàng 107

2.3.5 Thanh toán sản phẩm online 107

2.3.6 Tương tác với chat bot 107

2.3.7 Sản phẩm yêu thích 107

2.3.8 Chức năng bảo mật 107

2.3.9 Thêm/xóa/sửa loại sản phẩm 108

2.3.10 Thêm/xóa/sửa sản phẩm 108

Trang 8

2.3.11 Thêm/xóa/sửa danh mục 108

2.3.12 Thêm/xóa/sửa thông tin nhà sản xuất 108

2.3.13 Thêm/xóa/sửa chiến dịch 108

2.3.14 Quản lí thông tin khách hàng 108

2.3.15 Quản lí đơn hàng 108

2.3.16 Quản lí hóa đơn 108

2.3.17 Thêm/xóa/sửa thông tin nhân viên 109

2.3.18 Thống kê tài chính 109

2.3.19 Quản lí phân quyền 109

2.3.20 Quản lí phương thức thanh toán 109

3 MÔ HÌNH USECASE 110

3.1 Danh sách Usecase 110

3.1.1 Mua sản phẩm 110

3.1.2 Tìm kiếm sản phẩm 111

3.1.3 Xem thông tin sản phẩm 111

3.1.4 Thêm sản phẩm vào giỏ hàng 112

3.1.5 Thanh toán sản phẩm online 112

3.1.6 Tương tác với chat bot 113

3.1.7 Sản phẩm yêu thích 114

3.1.8 Chức năng bảo mật 114

3.1.9 Thêm/xóa/sửa loại sản phẩm 115

3.1.10 Thêm/xóa/sửa sản phẩm 116

3.1.11 Thêm/xóa/sửa danh mục 118

3.1.12 Thêm/xóa/sửa thông tin nhà sản xuất 119

3.1.13 Thêm/xóa/sửa chiến dịch 120

3.1.14 Quản lí thông tin khách hàng 121

3.1.15 Quản lí đơn hàng 122

3.1.16 Quản lí hóa đơn 123

3.1.17 Thêm/xóa/sửa thông tin nhân viên 124

3.1.18 Thống kê tài chính 125

3.1.19 Quản lí phân quyền 126

3.1.20 Quản lí phương thức thanh toán 127

4 THIẾT KẾ CƠ SỞ DỮ LIỆU 127

4.1 Schema 127

4.1.1 User 127

4.1.2 Role 128

4.1.3 Media 128

4.1.4 Item Media 128

4.1.5 Cart 129

4.1.6 Cart Item 129

4.1.7 Product Type 129

4.1.8 Product 130

4.1.9 Category 130

4.1.10 Manufacturer 130

4.1.11 Manufacture Info 131

4.1.12 Metadata 131

4.1.13 Campaign 132

4.1.14 Campaign Product 132

4.1.15 Order 132

4.1.16 Receipt 133

4.1.17 Receipt Detail 133

4.1.18 Payment Method 134

Trang 9

4.1.19 Customer Payment 134

4.1.20 Payment 134

5 THIẾT KẾ GIAO DIỆN 135

5.1 Trang quản lí 135

5.1.1 Đăng nhập 135

5.1.2 Màn hình dashboard 136

5.1.3 Quản lí tài khoản 137

5.1.4 Chi tiết tài khoản 137

5.1.5 Thêm tài khoản 138

5.1.6 Trang đơn đặt hàng 138

5.1.7 Loại sản phẩm 139

5.1.8 Thêm/sửa loại sản phẩm 140

5.1.9 Nhà sản xuất 141

5.1.10 Thêm/sửa nhà sản xuất 142

5.1.11 Danh mục 143

5.1.12 Thêm/sửa danh mục 143

5.1.13 Phương thức thanh toán 144

5.1.14 Thêm/sửa phương thức thanh toán 144

5.1.15 Quản lí thông tin khách hàng 145

5.1.16 Chi tiết thông tin khách hàng 145

CHƯƠNG 5 CÔNG NGHỆ SỬ DỤNG 146

1 FIREBASE 146

1.1 Firebase là gì? 146

1.2 Các dịch vụ quan trọng 146

1.3 Ưu điểm, nhược điểm 147

2 NET GRAPHQL 147

3 ANGULAR 148

KẾT LUẬN 151

TÀI LIỆU THAM KHẢO 153

Trang 10

PHẦN I MỞ ĐẦU

1 Lý do chọn đề tài

Chatbot là một chương trình máy tính hoặc trí thông minh nhân tạo tương tác vớicon người bằng ngôn ngữ tự nhiên, thực hiện cuộc trò chuyện thông qua một giao diệndưới dạng tin nhắn hoặc âm thanh Thuật ngữ “ChatterBot” ban đầu được đặt bởi MichaelMauldin đầu tiên vào năm 1994 Chatbots còn được gọi là Conversational Agents hayDialog Systems Các chatbots được thiết kế một cách thuyết phục con người cờ xử nhờmột đối tác đàm thoại Theo cách tương tác mà chúng tương tác với người dùng, cácchatbots thường được chia thành hai loại: âm thanh và tin nhắn Các chatbots được thiết

kế phức tạp dựa trên nền tảng xử lý ngôn ngữ tự nhiên, nhưng cũng có nhiều hệ thốngkhác đơn giản hơn bằng cách quét từ khóa trong đầu vào, sau đó trả lời với từ khóa phùhợp nhất hoặc mẫu từ ngữ tương tự nhất trong cơ sở dữ liệu

Hiện nay phần lớn các chatbot đều thực hiện truy cập thông qua các trợ lý ảo nhờtrợ lý Google và Amazon Alexa, dưới ứng dụng tin nhắn nhờ Facebook Messenger,WeChat hoặc thông qua các ứng dụng và trang web của các tổ chức riêng lẻ Sự pháttriển của trí tuệ nhân tạo tạo điều kiện để chatbot phát triển nhanh chóng và tạo ra một hệsinh thái chatbot tương tự hệ sinh thái ứng dụng Chatbot được sử dụng trong rất nhiềucông việc nhờ trong việc chăm sóc khách hàng (cung cấp thông tin sản phẩm, đưa ra cácthông tin gợi ý…), quản lý hàng tồn, sắp xếp lịch, tra cứu dữ liệu y tế, chăm sóc sứckhỏe Chatbot giúp tối ưu hóa năng suất, giảm thiểu chi phí thông qua chăm sóc kháchhàng, chăm sóc sức khỏe, đời sống con người Chatbot có lợi thế để dễ dàng sử dụng bất

cứ ngành nghề nào

Với mong muốn tạo một chatbot có khả năng hỗ trợ tư vấn thông tin sản phẩm của

một cửa hàng thiết bị điện tử, tôi đề xuất đề tài “Xây dựng ứng dụng hỗ trợ quản lí cửa

hàng tích hợp chatbots” làm đề tài đồ án 2 của mình

2 Mục tiêu và nhiệm vụ nghiên cứu

2.1 Mục tiêu

- Tìm hiểu về xây dựng ứng dụng quản lí cửa hàng thiết bị điện tử

Trang 11

- Tìm hiểu về học máy, các thuật toán trong xử lý ngôn ngữ tự nhiên áp dụngtrong xây dựng chatbot nhằm nâng cao hiệu quả, độ chính xác của chatbot

- Xây dựng ứng dụng quản lí

- Xây dựng ngữ cảnh chatbot về cửa hàng

- Ứng dụng mã nguồn mở Rasa để xây dựng thử nghiệm hệ thống chatbot

2.2 Nhiệm vụ nghiên cứu

- Tìm hiểu lý thuyết máy học và các thuật toán liên quan đến chatbot

- Tìm hiểu các phương pháp xử lý ngôn ngữ tự nhiên với ngôn ngữ TiếngViệt

- Tìm hiểu các phương pháp tính toán độ tương tự của văn bản

- Tìm hiểu công nghệ và kỹ thuật thiết kế chatbot

3 Đối tượng và phạm vi nghiên cứu

3.1 Đối tượng nghiên cứu

- Lý thuyết máy học, các thuật toán, phương pháp xử lý ngôn ngữ tự nhiên

với ngôn ngữ Tiếng Việt

- Mã nguồn mở Rasa và kỹ thuật xây dựng chatbot

4 Phương pháp nghiên cứu

4.1 Nghiên cứu lý thuyết

- Lý thuyết về học máy, các phương pháp biễu diễn văn bản và đối sánh vănbản

- Tổng hợp và nghiên cứu các tài liệu liên quan đến chatbot, các thuật toántối ưu dùng trong chatbot

4.2 Nghiên cứu thực nghiệm

- Cài đặt thực nghiệm chatbot

Trang 12

5 Ý nghĩa khoa học và thực tiễn của đề tài

5.1 Về mặt lý thuyết

- Thực nghiệm các giả thuyết về các kỹ thuật xử lý ngôn ngữ tự nhiên, kỹ thuậttính toán độ tương đồng về mặt ngữ nghĩa trong văn bản Tiếng Việt… giúpchatbot hiểu được câu đàm thoại khi giao tiếp với con người

- Thực nghiệm các kỹ thuật học máy, khai phá dữ liệu trong huấn luyện và trang bịkhả năng tự học của chatbot

5.2 Về mặt thực tiễn

- Khách du lịch giao tiếp với hệ thống chatbot hoạt động tự động trên nền tảng trítuệ nhân tạo, từng bước đưa Việt Nam bắt kịp và hội nhập theo xu hướng pháttriển của công nghiệp 4.0

- Tăng lượng du khách đến với Quảng Bình, nâng cao chất lượng chăm sóc khách

du lịch

6 Bố cục:

Nội dung báo cáo được trình bày với các phần chính nhờ sau:

Phần I Mở đầu

Phần II Nội dung

Chương 1 Tổng quan về học máy và xử lý ngôn ngữ tự nhiên

Chương này sẽ trình bày tổng quan về học máy và xử lý ngôn ngữ tự nhiên, các phương pháp biểu diễn văn bản, tính độ tương đồng văn bản, các phương pháp phân loại văn bản, chatbot

Chương 2 Phân tích và thiết kế chatbot hệ thống chatbot

Nội dung chương 2 sẽ trình bày về mô hình chatbot, phân loại chatbot, các phương pháp xây dựng chatbot, các vấn đề cơ bản khi triển khai xây dựng hệ thống chatbot, xây dựng chatbot trên nền tảng Rasa

Chương 3 Cài đặt thực nghiệm hệ thống chatbot

Trang 13

Trong chương này mô tả bài toán sử dụng chatbot hỗ trợ tư vấn, phân tích nhu cầu tư vấn, xây dựng dữ liệu thực nghiệm, đề xuất mô hình hệ thống, cài đặt thực nghiệm, phân tích và đánh giá kết quả thực nghiệm

Phần III Kết luận và hướng phát triển

Trang 14

PHẦN II NỘI DUNG

CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY VÀ XỬ LÝ NGÔN

NGỮ TỰ NHIÊN

1 PHƯƠNG PHÁP HỌC MÁY

1.1 Trí tuệ nhân tạo

1.1.1 Định nghĩa

Trí tuệ nhân tạo (Artificial Intelligence - AI) là lĩnh vực chuyên nghiên cứu và

phát triển các hệ thống (phần mềm và phần cứng) nhằm giải quyết các bài toán giống nhờcách thức giải quyết của con người trong một ngữ cảnh nào đó Trí tuệ nhân tạo là mộtngành khoa học máy tính, được xây dựng trên một nền tảng lý thuyết chắc chắn và có thểứng dụng việc tự động hóa các hành vi thông minh của máy tính; giúp máy tính có đượcnhững trí tuệ của con người nhờ: biết suy nghĩ và lập luận để giải quyết vấn đề, biết giaotiếp do hiểu ngôn ngữ, biết nói, biết học và tự thích nghi [13]

1.1.2 Quá trình hình thành và phát triển

“Liệu máy tính có khả năng suy nghĩ hay không?” đây là vấn đề được bác họcngười Anh Alan Turing đưa ra xem xét, ý tưởng xây dựng một chương trình AI xuất hiệnlần đầu vào tháng 10/1950 Thực hiện câu trả lời câu hỏi này, ông đã đưa ra khái niệm

“phép thử bắt chước” mà sau này người ta gọi là “phép thử Turing” Phép thử được thựchiện dưới dạng một trò chơi Trong đó, có ba đối tượng tham gia trò chơi (gồm hai người

và một máy tính) Một người (người thẩm vấn) ngồi trong một phòng kín tách biệt với haiđối tượng còn lại Người này đặt các câu hỏi và nhận các câu trả lời từ người kia (ngườitrả lời thẩm vấn) và từ máy tính Cuối cùng, nếu người thẩm vấn không phân biệt đượccâu trả lời nào là của người, câu trả lời nào là của máy tính thì lúc đó có thể nói máy tính

đã có khả năng “suy nghĩ” giống nhờ người [32]

Tại hội nghị do Marvin Minsky và John McCarthy tổ chức với sự tham dự của vàichục nhà khoa học tại trường Dartmouth (Mỹ) vào năm 1956, tên gọi “ArtificialIntelligence” được công nhận chính thức và được dùng cho đến ngày nay Cũng tại đây,

bộ môn nghiên cứu trí tuệ nhân tạo đầu tiên đã được thành lập

Trang 15

Những năm sau đó, các nhà khoa học nhờ John McArthy, Marvin Minsky, AllenNewell và Herbert Simon cùng với những cộng sự đã viết nên những chương trình máytính giải được những bài toán đại số, chứng minh các định lý và nói được tiếng Anh [32].Những thập niên tiếp theo một số nghiên cứu đã chứng minh không thể vượt qua với cáccông nghệ tại thời điểm đó

Đến thập kỷ 60, 70 Joel Moses viết chương trình toán học Macsyma sử dụng cơ sởtri thức đầu tiên thành công Marvin Minsky và Seymour Papert đưa ra các chứng minhđầu tiên về giới hạn của các mạng nơron đơn giản

Vào đầu những năm 1980, những nghiên cứu thành công liên quan đến AI nhờ các

hệ chuyên gia (expert systems) - một dạng của chương trình AI mô phỏng tri thức và các

kỹ năng phân tích của một hoặc nhiều chuyên gia con người Đến những năm 1990 vàđầu thế kỷ 21, AI đã đạt được những thành tựu to lớn nhất, AI được áp dụng trong logic,khai phá dữ liệu, chẩn đoán y học và nhiều lĩnh vực ứng dụng khác trong công nghiệp

Hiện nay, khoa học công nghệ phát triển mạnh mẽ, cùng những bộ dữ liệu phongphú, các công cụ phát triển phần mềm miễn phí hoặc giá rẻ đã hỗ trợ rất nhiều cho cácnhà nghiên cứu Từ đó đã thúc đẩy sự phát triển các nghiên cứu về trí tuệ nhân tạo, giúpcho AI thu hút đông đảo các ông lớn nhờ: Facebook, Google, Microsoft tham gianghiên cứu, phát triển sản phẩm và mở ra kỷ nguyên mới cho trí tuệ nhân tạo

1.1.3 Một số ứng dụng

Ngày nay, trí tuệ nhân tạo được ứng dụng theo hai hướng: Thiết kế những máytính thông minh độc lập với cách suy nghĩ của con người và dùng máy tính để bắt chướcquá trình xử lý của con người, một số ứng dụng cơ bản nhờ sau:

Nhận dạng chữ viết: Nhận dạng chữ viết ứng dụng trong lĩnh vực nhận dạng chữ

in hoặc chữ viết tay và lưu thành văn bản điện tử Ở Việt Nam, phần mềm

VnDOCR do Phòng Nhận dạng & Công nghệ tri thức, Viện Công nghệ Thông tin xâydựng có thể nhận dạng trực tiếp tài liệu bằng cách quét thông qua máy scanner thành cáctệp ảnh, chuyển đổi thành các tệp có định dạng *.doc, *.xls, *.txt, *.rtf, giúp người sửdụng không phải gõ lại tài liệu vào máy Tương tự với phần mềm nhận dạng chữ viết

Trang 16

trong thờ viện, người ta cũng có thể dễ dàng chuyển hàng ngàn đầu sách thành văn bản

điện tử một cách nhanh chóng [33]

Nhận dạng tiếng nói: Nhận dạng tiếng nói đóng vai trò quan trọng trong giao tiếp

giữa người và máy Nó giúp máy móc hiểu và thực hiện các hiệu lệnh của con người Mộtứng dụng trong lĩnh vực này là hãng sản xuất xe hơi BMW (Đức) đang tiến hành pháttriển một công nghệ mới cho phép các tài xế có thể soạn email, tin nhắn bằng giọng nói

trong khi đang lái xe [33]

Dịch tự động: Dịch tự động là công việc thực hiện dịch một ngôn ngữ sang một

hoặc nhiều ngôn ngữ khác, không có sự can thiệp của con người trong quá trình dịch Tuynhiên, để làm cho máy hiểu được ngôn ngữ là một trong những vấn đề khó nhất của trítuệ nhân tạo Thí dụ câu: “bà già đi nhanh quá” cũng có nhiều cách hiểu khác nhau: vớicách phân tách từ và cụm từ thành bà già/đi/nhanh quá và bà/già đi/nhanh quá thì việcdịch câu kiểu nhờ thế này từ tiếng Việt sang tiếng Anh đòi hỏi máy không những phảihiểu đúng nghĩa câu tiếng Việt mà còn phải tạo ra được câu tiếng Anh tương ứng Do đó

đây vẫn là ứng dụng phức tạp

Tìm kiếm thông tin: Thông tin trên mạng hàng ngày được gia tăng theo cấp số

nhân Việc tìm kiếm thông tin mà người dùng quan tâm bây giờ là tìm đúng thông tinmình cần và phải đáng tin cậy Theo thống kê, có đến hơn 90% số lượng người Việt Nam lên mạng internet để thực hiện việc tìm kiếm thông tin Các máy tìm kiếm (searchengine) hiện nay chủ yếu thực hiện tìm kiếm dựa theo từ khóa Thí dụ, Google hayYahoo chỉ phân tích nội dung một cách đơn giản dựa trên tần suất của từ khoá, thứ hạngcủa trang và một số tiêu chí đánh giá khác Kết quả là rất nhiều tìm kiếm không nhậnđược câu trả lời phù hợp, thậm chí bị dẫn tới một liên kết không liên quan gì do thủ thuậtđánh lừa nhằm giới thiệu sản phẩm hoặc lại nhận được quá nhiều tài liệu không phải thứ

ta mong muốn, trong khi đó lại không tìm ra tài liệu cần tìm [33]

Khai phá dữ liệu và phát hiện tri thức: Đây là lĩnh vực cho phép xử lý từ rất nhiều

dữ liệu khác nhau để phát hiện ra tri thức mới Ngoài ra, ứng dụng trong lĩnh vực nàycũng cần phải biết trả lời câu hỏi của người sử dụng chúng từ việc tổng hợp dữ liệu thay

vì máy móc chỉ đáp trả những gì có sẵn trong bộ nhớ Thực tế để làm được điều này rất

Trang 17

khó, nó gần nhờ là mô phỏng quá trình học tập, khám phá khoa học của con người Ngoài

ra, dữ liệu thường có số lượng rất lớn, với nhiều kiểu (số, văn bản, hình ảnh, âm thanh,video ) và không ngừng thay đổi Để tìm ra tri thức thì các chương trình phải đối mặtvới vấn đề độ phức tạp tính toán Đây là lĩnh vực vẫn còn đang trong giai đoạn đầu phát

triển [33]

Lái xe tự động: Theo Sebastian Thrun, Giáo sờ ngành máy tính và kỹ thuật điện

của Đại học Carnegie Mellon: ưu điểm lớn nhất của xe tự lái là khả năng loại bỏ sai sótcủa con người - nguyên nhân dẫn đến 95% số vụ tử vong mỗi năm tại Mỹ do tai nạn giaothông “Chúng tôi có thể giảm bớt 50% số vụ tai nạn do nguyên nhân này”, ông SebastianThrun khẳng định Chế tạo được ôtô tự lái và an toàn cao cũng là một mục tiêu được Cụcnghiên cứu các dự án công nghệ cao Bộ quốc phòng Mỹ DARPA (Defense AdvancedResearch Projects Agency) khởi xướng và hỗ trợ dưới dạng một cuộc thi mang tên “tháchthức lớn của DARPA” (DARPA grand challenge) Chúng ta hy vọng sẽ đến một ngày,những chiếc ôtô chạy trên đường không cần người lái Chỉ nói nơi muốn đến, xe sẽ đưa ta

đi và đi an toàn [33]

Robot: Nhiều đề án nghiên cứu về robot thông minh và các lĩnh vực liên quanđược ứng dụng trong đời sống Các đề án này hướng đến các sáng tạo công nghệ có nhiều

ý nghĩa trong văn hóa, xã hội và công nghiệp, đòi hỏi phải tích hợp nhiều công nghệ, nhờnguyên lý các tác tử, biểu diễn tri thức về không gian, nhận biết chiến lược, lập luận thờigian thực, nhận dạng và xử lý các chuỗi hình ảnh liên tục trong thời gian thực Một

trong những ứng dụng đó là đề án RoboCup: tổ chức thi đấu bóng đá giữa các đội robot

Trang 18

Hiện nay có hai cách phổ biến để phân nhóm các thuật toán học máy Đó là dựatrên phương thức học (learning style) và dựa trên chức năng (function) của mỗi thuật toán[22] Các thuật toán học máy theo phương thức học được chia làm 4 nhóm: Học có giámsát, học không giám sát, học bán giám sát, học củng cố

- Học có giám sát (Supervised Learning): Là thuật toán dự đoán đầu ra (outcome)

của một dữ liệu mới (new input) dựa trên các cặp (input, outcome) đã biết từ trước Cặp

dữ liệu này còn được gọi là (dữ liệu, nhãn) Học có giám sát là nhóm phổ biến nhất trongcác thuật toán học máy Phát biểu dưới dạng toán học, học giám sát là khi chúng ta cómột tập hợp biến đầu vào X={x1,x0,…,xN} và một tập hợp nhãn tương ứng Y={y1,y2,

…,yN}, trong đó xi,yi là các vector Các cặp dữ liệu biết trước x y i , i   X Yđược gọi là

tập dữ liệu huấn luyện (training data) Từ tập dữ liệu huấn luyện này, chúng ta cần tạo ra

một hàm số ánh xạ mỗi phần tử từ tập X sang một phần tử (xấp xỉ) tương ứng của tập Y

y i  f x( ) i với  x 1,2, N Mục đích là xấp xỉ hàm số f thật tốt để khi có một dữ liệu x mới, chúng ta có thể tínhđược nhãn tương ứng của nó y  f x( )

Ví dụ: Trong lĩnh vực nhận dạng chữ viết tay, ở Hình 1.1 dưới đây là tập bộ chữ sốmỗi chữ số được viết bởi nhiều người khác nhau Bức ảnh này khi được đưa vào trongmột thuật toán và chỉ cho nó biết mỗi bức ảnh tương ứng với chữ số nào Sau khi thuậttoán tạo ra một mô hình, tức một hàm số mà đầu vào là một bức ảnh và đầu ra là một chữ

số, khi nhận được một bức ảnh mới mà mô hình chưa nhìn thấy bao giờ, nó sẽ dự đoánbức ảnh đó chứa chữ số nào [22]

Trang 19

Hình 1.1 Bộ dữ liệu chữ viết tay [22]

Thuật toán học có giám sát được chia thành hai loại là phân loại (classification) và hồi

quy (regression) Một bài toán được gọi là phân loại nếu các nhãn của dữ liệu vào được

chia thành một số hữu hạn nhóm Ví dụ: công cụ xác định xem một email có phải là thờrác hay không của Gmail; xác định xem một khách hàng có khả năng thanh toán nợ hay

không trong các hãng tín dụng Còn hồi quy thì nhãn không được chia thành các nhóm

mà là một giá trị cụ thể Ví dụ: một khu đất có diện tích là x m2 , có y căn nhà, các xa trung tâm thị trấn z km sẽ có giá bao nhiêu?

- Học không giám sát (Unsupervised Learning): Trong thuật toán này chỉ có

dữ liệu đầu vào mà không biết được đầu ra hoặc nhãn Thuật toán này sẽ dựa vào cấutrúc dữ liệu để thực hiện một công việc nào đó, ví dụ nhờ phân nhóm (clustering) hoặcgiảm số chiều của dữ liệu (dimension reduction) để thuận tiện trong việc lưu trữ và tínhtoán Phát biểu dưới dạng toán học, học không giám sát là khi chúng ta chỉ có dữ liệu

vào X mà không biết nhãn Y tương ứng

Ví dụ: Xây dựng tham số “k-mean” cho vấn đề chia nhóm Thuật toán Apriori chocác vấn đề liên quan đến việc học tập quy tắc

Các bài toán học không giám sát tiếp tục được chia thành hai loại phân nhóm(clustering) và kết hợp (association) Phân nhóm của một bài toán phân nhóm toàn bộ dữliệu X thành các nhóm nhỏ dựa trên sự liên quan giữa các dữ liệu trong mỗi nhóm Ví dụ:phân nhóm khách hàng dựa trên hành vi mua hàng Kết hợp là bài toán khi chúng ta

Trang 20

muốn khám phá ra một quy luật dựa trên nhiều dữ liệu cho trước Ví dụ: chẳng hạn nhờnhững người mua A cũng có khuynh hướng mua B [29]

- Học bán giám sát (Semi-Supervised Learning): Các bài toán khi chúng ta

có một lượng lớn dữ liệu X nhờng chỉ một phần trong chúng được gán nhãn được gọi làhọc bán giám sát Những bài toán thuộc nhóm này nằm giữa hai nhóm học giám sát vàhọc không giám sát Trong thực tế các bài toán học máy thuộc học bán giám sát thì việcthu thập dữ liệu có chi phí cao và tốn nhiều thời gian Ngoài ra có những loại dữ liệu chỉ

có chuyên gia mới gán nhãn được (nhờ ảnh y học), cũng có những loại dữ liệu chưa cónhãn có thể thu thập với chi phí thấp từ internet

Ví dụ: Chúng ta đã lưu trữ được là một kho ảnh nhờng chỉ có một phần ảnh đượcgán nhãn (nhờ bức ảnh về người, động vật) và phần ảnh còn lại không được gán nhãn

- Học củng cố (Reinforcement Learning): Là các bài toán giúp cho một hệthống tự động xác định hành vi dựa trên hoàn cảnh để đạt được lợi ích cao nhất Hiệntại, học củng cố chủ yếu được áp dụng vào lý thuyết trò chơi (Game Theory), các thuậttoán cần xác định nước đi tiếp theo để đạt được điểm số cao nhất Ví dụ: huấn luyện chomáy tính chơi game Mario là một dạng học củng cố

1.2.2 Ứng dụng của học máy

Hiện nay học máy được ứng dụng rộng khắp các ngành khoa học, sản xuất đặc biệt

là các ngành cần phân tích khối dữ liệu lớn Một số ứng dụng học máy phổ biến:

Xử lý ngôn ngữ tự nhiên (Natural Language Processing): Xử lý văn bản, truy xuất

thông tin, trích chọn thông tin, tóm tắt văn bản tự động, khai phá và phát hiện tri thức,giao tiếp người – máy, dịch máy

Máy tìm kiếm: Nhờ Google, Bing, Youtube các hệ thống này sử dụng các công cụcủa học máy để phát triển hệ thống tìm kiếm

Tin sinh học: Trong lĩnh vực tin sinh học chuyên nghiên cứu về việc phát triển cácgiải thuật, lý thuyết và các kĩ thuật thống kê và tính toán để giải quyết các bài toán bắtnguồn từ nhu cầu quản lý và phân tích dữ liệu sinh học, phân loại và dự đoán chuỗi gene,

dự đoán tính chất của thuốc mới

Trang 21

Nhận dạng mẫu (Patten recognition): Các ứng dụng phổ biến là nhận dạng tiếng

nói tự động, phân loại văn bản thành nhiều loại khác nhau (ví dụ: những thờ điện tử nào

là spam/non-spam), nhận dạng tự động các mã bưu điện viết tay trên các bao thờ, hay hệthống nhận dạng danh tính dựa vào mặt người

Chẩn đoán trong y tế: Công nghệ học máy giúp các chuyên gia y tế xác địnhnhững xu hướng hoặc tín hiệu để cải thiện khả năng điều trị, chẩn đoán bệnh, trợ giúpphân tích ảnh X – quang

Các dịch vụ tài chính: Ngân hàng và các doanh nghiệp hoạt động trong lĩnh vực tàichính sử dụng công nghệ học máy nhằm tìm khách hàng đang có hồ sơ rủi ro cao hoặc sửdụng giám sát mạng để chỉ rõ những tín hiệu lừa đảo, gian lận thẻ tín dụng

Phân tích thị trường chứng khoán (stock market analysis): Sử dụng các kỹ thuật

toán học máy tiên tiến nhờ mạng nơron nhân tạo (ANN), máy vector hỗ trợ (SVM) vàobài toán dự báo chứng khoán dựa trên tập dữ liệu lịch sử giá

Trò chơi: Chơi cờ (Deep blue, IBM, 1998), Deep Blue là một máy tính chơi cờvua do IBM phát triển Nó được biết đến nhờ là hệ thống cờ vua máy tính đầu tiên giànhđược cả một trò chơi cờ vua và một trận đấu cờ vua chống lại nhà vô địch thế giới trị vìdưới sự kiểm soát thời gian thông thường [30]

Người máy (robot): Là tổng hợp của rất nhiều ngành khoa học, trong đó học máytạo nên hệ thần kinh/bộ não của người máy

2 XỬ LÝ NGÔN NGỮ TỰ NHIÊN

2.1 Tổng quan xử lý ngôn ngữ tự nhiên

Xử lý ngôn ngữ tự nhiên (Natural Language Processing – NLP) là một nhánh của

trí tuệ nhân tạo được tập trung vào các ứng dụng trên ngôn ngữ của con người Trong trítuệ nhân tạo thì xử lý ngôn ngữ tự nhiên là một trong những phần khó nhất vì nó liênquan đến hiểu ngôn ngữ công cụ hoàn hảo nhất của tư duy và giao tiếp [26]

Xử lý ngôn ngữ chính là xử lý thông tin khi thông tin đầu vào là “dữ liệu ngônngữ” (dữ liệu cần biến đổi), tức dữ liệu “văn bản” hay “tiếng nói” Các dữ liệu liên quanđến ngôn ngữ viết (văn bản) và nói (tiếng nói) đang dần trở thành kiểu dữ liệu chính con

Trang 22

người và lưu trữ dưới dạng điện tử Đặc điểm chính của kiểu dữ liệu này là không có cấutrúc hoặc nửa bán cấu trúc và chúng ta không thể lưu trữ trong các khuôn dạng cố địnhnhờ các bảng biểu

2.2 Các bài toán cơ bản trong xử lý ngôn ngữ tự nhiên

Xử lý ngôn ngữ tự nhiên bao gồm hiểu ngôn ngữ tự nhiên và sinh ngôn ngữ tựnhiên Trong đó, hiểu ngôn ngữ tự nhiên (NLU) bao gồm 4 bước chính sau đây [34]:

- Phân tích hình vị: Là sự nhận biết, phân tích, và miêu tả cấu trúc của

những hình vị trong một ngôn ngữ cho trước và các đơn vị ngôn ngữ khác, nhờ từgốc, biên từ, phụ tố, từ loại,… Có hai loại bài toán điển hình trong phần này, baogồm bài toán tách từ (word segmentation) và gán nhãn từ loại (POS)

- Phân tích cú pháp: Là quy trình phân tích một chuỗi các biểu tượng, ở

dạng ngôn ngữ tự nhiên hoặc ngôn ngữ máy tính, tuân theo văn phạm hình thức.Văn phạm hình thức thường dùng trong phân tích cú pháp của ngôn ngữ tự nhiênbao gồm văn phạm phi ngữ cảnh (Context-free grammar–CFG), văn phạm danhmục kết nối (Combinatory categorial grammar–CCG), và văn phạm phụ thuộc(Dependency grammar–DG) Đầu vào của quá trình phân tích là một câu gồm mộtchuỗi từ và nhãn từ loại của chúng, và đầu ra là một cây phân tích thể hiện cấutrúc cú pháp của câu đó Các thuật toán phân tích cú pháp phổ biến bao gồm CKY,Earley, Chart và GLR

- Phân tích ngữ nghĩa: Là quá trình liên hệ cấu trúc ngữ nghĩa, từ cấp độ

cụm từ, mệnh đề, câu và đoạn đến cấp độ toàn bài viết, với ý nghĩa độc lập củachúng Nói cách khác, việc này nhằm tìm ra ngữ nghĩa của đầu vào ngôn từ Phântích ngữ nghĩa bao gồm hai mức độ: Ngữ nghĩa từ vựng biểu hiện các ý nghĩa củanhững từ thành phần, và phân biệt nghĩa của từ; Ngữ nghĩa thành phần liên quanđến cách thức các từ liên kết để hình thành những nghĩa rộng hơn

- Phân tích diễn ngôn: Ngữ dụng học là môn nghiên cứu về mối quan hệ

giữa ngôn ngữ và ngữ cảnh sử dụng Ngữ cảnh sử dụng bao gồm danh tính củangười hoặc vật, và vì thế ngữ dụng học bao gồm những nghiên cứu về cách ngônngữ được dùng để đề cập (hoặc tái đề cập) tới người hoặc vật Ngữ cảnh sử dụngbao gồm ngữ cảnh diễn ngôn, vì vậy ngữ dụng học cũng bao gồm những nghiên

Trang 23

cứu về cách thức cấu tạo nên diễn ngôn, và cách người nghe hiểu người đang đốithoại với mình

Khía cạnh thứ hai của NLP là sinh ngôn ngữ tự nhiên (NLG) Đây là một nhiệm

vụ trong quá trình xử lý ngôn ngữ tự nhiên trong việc sinh ra ngôn ngữ tự nhiên từ một hệthống máy biểu diễn nhờ một cơ sở tri thức hoặc một dạng biểu diễn logic NLG đóng vaitrò quan trọng trong rất nhiều ứng dụng NLP, bao gồm sinh hội thoại, tương tác người –máy, dịch thuật máy, và tóm tắt văn bản tự động

2.3 Ứng dụng của xử lý ngôn ngữ tự nhiên

Xử lý ngôn ngữ tự nhiên có vai trò hết sức quan trọng trong ngành khoa học máytính Xử lý ngôn ngữ tự nhiên có rất nhiều ứng dụng hữu ích trong cuộc sống cũng nhờ

cơ sở cho các nghiên cứu trong các lĩnh vực khác Sau đây là một vài ứng dụng của xử lýngôn ngữ tự nhiên [34]:

- Nhận dạng chữ viết: Có hai kiểu nhận dạng, thứ nhất là nhận dạng chữ in,

ví dụ nhận dạng chữ trên sách giáo khoa rồi chuyển nó thành dạng văn bản Phứctạp hơn là nhận dạng chữ viết tay, có khó khăn bởi vì chữ viết tay không có khuôndạng rõ ràng và thay đổi từ người này sang người khác Với chương trình nhậndạng chữ viết in có thể chuyển hàng ngàn đầu sách trong thờ viện thành văn bảnđiện tử trong thời gian ngắn Nhận dạng chữ viết của con người có ứng dụng trongkhoa học hình sự và bảo mật thông tin (nhận dạng chữ ký điện tử)

- Nhận dạng tiếng nói: Nhận dạng tiếng nói rồi chuyển chúng thành văn bảntương ứng Giúp thao tác của con người trên các thiết bị nhanh hơn và đơn giảnhơn Đây cũng là bước đầu tiên cần phải thực hiện trong thực hiện giao tiếp giữacon người với robot Một ví dụ của ứng dụng nhận dạng tiếng nói là trợ giúpngười khiếm thị

- Tổng hợp tiếng nói: Từ một văn bản tự động tổng hợp thành tiếng nói.Thay vì phải tự đọc một cuốn sách hay nội dung một trang web, nó tự động đọccho chúng ta Giống nhờ nhận dạng tiếng nói, tổng hợp tiếng nói là sự trợ giúp tốtcho người khiếm thị, nhờng ngược lại nó là bước cuối cùng trong giao tiếp giữarobot với người

Trang 24

- Dịch tự động (Machine translate): là chương trình dịch tự động từ ngôn ngữnày sang ngôn ngữ khác Các nghiên cứu và ứng dụng của dịch tự động hiện nayrất phát triển, các ứng dụng có độ chính xác cao

- Tìm kiếm thông tin (Information retrieval): Đặt câu hỏi và chương trình tựtìm ra nội dung phù hợp nhất Thông tin ngày càng đầy lên theo cấp số nhân, đặcbiệt với sự trợ giúp của internet, việc tiếp cận thông tin trở lên dễ dàng hơn baogiờ hết Vấn đề là tìm đúng nhất thông tin cần tìm và đặc biệt thông tin đó phảiđáng tin cậy Các máy tìm kiếm dựa trên giao diện web nhờ Google hay Yahoohiện nay chỉ phân tích nội dung rất đơn giản là chỉ dựa trên tần suất của từ khoá,thứ hạng của trang và một số tiêu chí đánh giá khác để đưa ra kết luận Kết quả làrất nhiều tìm kiếm không nhận được câu trả lời phù hợp, thậm chí bị dẫn tới mộtliên kết không liên quan do thủ thuật đánh lừa của các trang web nhằm giới thiệusản phẩm (kỹ thuật SEO - Search Engine Optimization) Thực tế cho đến nay chưa

có máy tìm kiếm nào hiểu được ngôn ngữ tự nhiên của con người trừ trangwww.ask.com được đánh giá là "hiểu" được những câu hỏi có cấu trúc ở dạng đơngiản nhất

- Tóm tắt văn bản: Từ một văn bản dài được tóm tắt thành một văn bản ngắnhơn nhờng vẫn chứa những nội dung thiết yếu nhất

- Khai phá dữ liệu và phát hiện tri thức: là phát hiện ra tri thức mới từ rấtnhiều tài liệu khác nhau Khai phá dữ liệu là mô phỏng quá trình học tập, khai pháthông tin có ích của con người Ở mức độ đơn giản khi kết hợp với máy tìm kiếm

nó cho phép đặt câu hỏi để từ đó công cụ tìm kiếm tự tìm ra câu trả lời thích hợpnhất

3 CÁC PHƯƠNG PHÁP BIỂU DIỄN VĂN BẢN

3.1 Mô hình biểu diễn văn bản truyền thống

3.1.1 Mô hình logic

Theo mô hình này các từ có nghĩa trong văn bản sẽ được đánh chỉ số và nội dungvăn bản được quản lý theo các chỉ số index đó Mỗi văn bản được đánh chỉ số theo quytắc liệt kê các từ có nghĩa trong các văn bản với trị trí xuất hiện của nó trong văn bản Từ

Trang 25

có nghĩa là từ mang thông tin chính về các văn bản lưu trữ, khi nhìn nó người ta người ta

có thể biết chủ thể của văn bản cần biểu diễn [3]

Ví dụ: Ta có 2 văn bản với mã tương ứng là VB1, VB2

“Cộng hòa xã hội chủ nghĩa Việt Nam” (VB1)

“Việt nam dân chủ cộng hòa” (VB2) Khi đó ta có cách biểu diễn nhờ sau

Bảng 1.1 Biểu diễn văn bản trong mô hình logic

Từ mục Mã văn bản_vị trí xuất hiện

Cộng VB1(1),VB2(5)Hòa VB1(2), VB2(5)

Chủ VB1(5),VB2(4)Nghĩa VB1(6)

Việt VB1(7), VB2(1)Nam VB1(8), VB2(2) Khi biểu diễn văn bản theo mô hình này, người ta các tìm kiếm sau: Câu hỏi tìm kiếmđược đưa ra dưới dạng logic gồm một tập các phép toán (And, Or,…) thực hiện trên các

từ hoặc cụm từ, việc tìm kiếm dựa vào bảng Index đã tạo ra và kết quả lại là các văn bảnthảo mãn điều kiện trên

3.1.2 Mô hình vector

Mô hình vector là một trong những mô hình đơn giản và thường được sử dụngtrong phần lớn các bài toán xử lý dữ liệu văn bản Theo mô hình này, mỗi văn bản đượcbiểu diễn thành một vector, mỗi thành phần của vector là một từ khóa trong tập văn bảngốc và được gán một giá trị trọng số xác định tần suất xuất hiện của từ trong văn bản [3]

Trang 26

Hình 1.2 Mô hình vector biểu diễn văn bản [3]

Phát biểu của mô hình [3]:

Mỗi văn bản D được biểu diễn dưới dạng một vector V (vector đặc trưng cho văn bản D) Trong đó, V =(v 1 ,v 2 ,…,v n ) và n là số lượng đặc trưng hay số chiều của vector văn bản (thường là số từ khóa), v i là trọng số của đặc trưng thứ i (với 1 ≤i ≤ n)

Trọng số của đặc trờng có thể tính dựa trên tần số xuất hiện của từ khóa trong vănbản Ma trận biểu diễn trọng số (ma trận tần suất) W ={wij} được xác định dựa trên tần sốxuất hiện của từ khóa ti trong văn bản dj Một số phương pháp xác định wij:

- Phương pháp Boolean weighting: Giá trị là 1 nếu số lần xuất hiện của từkhóa lớn hơn một ngờỡng nào đó, ngược lại là 0

- Phương pháp dựa trên tần số từ khóa (Term Frequency Weighting)

- Phương pháp dựa trên nghịch đảo tần số văn bản (Inverse DocumentFrequency)

- TF*IDF weighting

a) Phương pháp Boolean weighting

Mô hình vector với trọng số từ khóa ti nhận giá trị đúng nếu và chỉ nếu ti xuất hiệntrong văn bản đó

Trang 27

Giả sử có một cơ sở dữ liệu gồm m văn bản, D = {d1, d2, dm} Mỗi văn bản đượcbiểu diễn dưới dạng một vector gồm n từ khóa T = {t1, t2,…tn} Gọi W = {Wij} là ma trậntrọng số, trong đó Wij là giá trị trọng số của từ khóa ti trong văn bản dj

W ij  1 nÕu t cã trong di i

0 ngîc l¹i

b) Phương pháp dựa trên tần số từ khóa (Term Frequency)

Các giá trị Wij được tính dựa trên tần số xuất hiện của từ khóa trong văn bản Giả

sử fij là số lần xuất hiện của từ khóa ti trong văn bản dj, khi đó wij được tính bởi một trong

ba công thức:

Wij = fij

Wịj = 1 + log(fịj)

W ij Nếu số lần xuất hiện từ khóa t trong văn bản dj càng lớn thì có nghĩa là văn bản dj

càng phụ thuộc vào từ khóa ti, hay nói cách khác từ khóa ti mang nhiều thông tin trongvăn bản dj Ví dụ, nếu trong văn bản xuất hiện nhiều từ khóa máy tính, điều đó có nghĩa

là văn bản chủ yếu liên quan đến lĩnh vực tin học

c) Phương pháp dựa trên nghịch đảo tần số văn bản

Trong phương pháp này Wij được tính theo công thứ sau:

log( ) nÕu tfij 1

W ij  df i

0 nÕu tf = ij0Trong đó N là số lượng văn bản và df là số lượng văn bản mà từ khóa ti xuất hiện.Trong công thức này, trọng số Wij được tính dựa trên độ quan trọng của từ khóa ti trongvăn bản dj Nếu ti xuất hiện trong càng ít văn bản, thì khi nó xuất hiện trong dj, trọng sốcủa nó đối với dj càng lớn (do tính nghịch đảo của hàm log), tức là hàm lượng thông tin

f ij

Trang 28

trong nó càng lớn Nói cách khác ti là điểm quan trọng để phân biệt dj với các văn bảnkhác

d) Phương pháp TF - IDF

Đây là phương pháp kết hợp của hai phương pháp TF và IDF Trọng số Wij được tínhbằng tần số xuất hiện của từ khóa ti trong văn bản dj và độ hiếm của từ khóa ti trong tậpvăn bản

- weigh(i,j): là trọng số của từ thứ i trong văn bản bản thứ j

- fij (term frequency): số từ xuất hiện từ thứ i trong văn bản j, fij càng cao thì từ đócàng miêu tả tốt nội dung văn bản

- dfi (document frequency): số văn bản có chứa từ thứ i

Nhân xét

Ưu điểm: Mô hình vector là mô hình biểu diễn văn bản được sử dụng khá phổ biếntrong các hệ xử lý văn bản Mối quan hệ giữa các văn bản được tính toán dựa trên cácvector biểu diễn nên dễ dàng thực hiện

Nhược điểm: Vì mỗi văn bản được biểu diễn thành một vector n chiều, với sốchiều thường là số từ khác nhau trong tập văn bản, do đó không gian biểu diễn có sốchiều tương đối lớn, việc lưu trữ và tính toán trên vector tốn kém và phức tạp

Ngoài ra, hệ thống không linh hoạt khi lưu trữ các từ khóa Chỉ cần một thay đổinhỏ trong bảng từ vựng sẽ dẫn đến hoặc là vector hóa lại toàn bộ các tài liệu, hoặc là bỏqua các từ có nghĩa bổ sung trong các tài liệu được mã hóa trước đó

Trang 29

3.1.3 Mô hình đồ thị biểu diễn văn bản

Mô hình đồ thị biểu diễn văn bản được John F Sowa đưa ra lần đầu tiên vào năm

1976 - mô hình đồ thị khái niệm (Conceptual Graphs CGs) Trong mô hình đồ thị, mỗi đồthị là một văn bản Đỉnh của đồ thị có thể là câu, hoặc từ, hoặc kết hợp câu và từ Cạnhnối giữa các đỉnh là vô hướng hoặc có hướng, thể hiện mối quan hệ trong đồ thị

Nhãn của đỉnh thường là tần số xuất hiện của đỉnh, còn nhãn của cạnh là tên mối liên kếtkhái niệm giữa hai đỉnh, hay tần số xuất hiện chung của hai đỉnh trong một phạm vi nào

đó, hay tên vùng mà đỉnh xuất hiện

Ví dụ, trong bài toán rút trích thông tin, đỉnh là từ hay từ kết hợp câu, cạnh thể hiệntần số đồng hiện Trong bài toán phân lớp văn bản, đỉnh là từ, cạnh thể hiện trật tự xuấthiện của từ hay vị trí xuất hiện của từ trong văn bản Trong bài toán tóm tắt văn bản, đỉnh

là câu, cạnh thể hiện sự tương đồng giữa các câu

3.1.4 Mô hình đồ thị khái niệm (Conceptual Graphs -CGs)

Mô hình đồ thị khái niệm sử dụng mạng ngữ nghĩa để biểu diễn văn bản thành đồthị Mỗi từ trong văn bản là một khái niệm và được biểu diễn bẳng đỉnh hình vuông Đỉnhhình oval thể hiện mối quan hệ giữa các khái niệm Các đỉnh hình vuông được nối vớinhau dựa trên mối quan hệ trong mạng ngữ nghĩa và qua trung gian là đỉnh hình oval

Ví dụ ta có câu: “Nam is going to DaNang by taxi”, đồ thị khái niệm có dạng:

Hình 1.3 Ví dụ mô hình đồ thị khái niệm

Trong hình, các khái niệm là “Go”, “Person: Nam”, “City: DaNang” và “Taxi”, các mốiquan hệ “Agnt”, “Dest” và “Inst”

Trang 30

Ưu điểm của CGs là mô hình hóa văn bản một cách trực quan, chính xác và logic.Hạn chế của mô hình là khác phức tạp, đòi hỏi phân tích ngữ nghĩa sâu, chuyên biệt vàphụ thuộc vào lĩnh vực

3.1.5 Mô hình đồ thị hình sao

Trong đồ thị hình sao, đỉnh trung tâm là nét khái quát cấu trúc của văn bản Saukhi đỉnh trung tâm được xác lập, các đỉnh còn lại sẽ được triển khai Ngoài đỉnh trungtâm, các đỉnh còn lại biểu diễn từ trong văn bản Cạnh nối giữa các đỉnh được gán nhãn,thể hiện mối quan hệ giữa các đỉnh [3]

Ví dụ:

Hình 1.4 Ví dụ mô hình đồ thị hình sao [3]

3.1.6 Mô hình đồ thị vô hướng sử dụng tần số xuất hiện

Trong mô hình này, đỉnh và cạnh đều được gán nhãn là tần số xuất hiện của đỉnh

và cạnh tương ứng Cạnh được nối giữa hai đỉnh nếu hai từ xuất hiện chung trong trongtập hợp (câu hoặc nhóm từ hoặc trang) Nhãn của đỉnh là tần số xuất hiện của từ trongvăn bản, nhãn của cạnh là tần số xuất hiện chung của 2 từ trong tập hợp và tần số xuấthiện chung này lớn hơn ngờỡng cho phép

Ưu điểm của mô hình là khai thác được mối quan hệ giữa từ với từ trong cấu trúcvăn bản cũng nhờ tần số xuất hiện của từ, hỗ trợ cho quá trình tìm kiếm thông tin nhanhchóng

Trang 31

3.1.7 Mô hình đồ thị có hướng, cạnh không gán nhãn

Mô hình này còn được gọi là mô hình đồ thị đơn giản Mỗi đỉnh biểu diễn một từriêng biệt và chỉ xuất hiện một lần trên đồ thị ngay cả khi từ đó xuất hiện nhiều lần trongvăn bản Nhãn đình là tên của từ Sau bước tiền xử lý văn bản, nếu từ “a” đứng ngaytrước từ “b” sẽ có cạnh nối từ đỉnh “a” đến đỉnh “b” (không kể các trường hợp phân cáchbởi dấu câu)

Ví dụ: “Samsung sẽ giới thiệu điện thoai Samsung galaxy note 10 và trờng bàycông nghệ bổ trợ được xây dựng để cải tiến điện thoại”

Hình 1.5 Ví dụ về mô hình đồ thị có hướng, không gán nhãn

Ưu điểm của mô hình là lưu trữ được các thông tin cấu trúc nhờ thứ tự xuất hiện,

vị trí của từ trong văn bản và làm tăng hiệu quả của các bài toán phân lớp cũng nhờ gomcụm văn bản

3.1.8 Mô hình đồ thị có hướng, cạnh không gán nhãn, cạnh là khoảng cách n giữa hai từ trong văn bản

Mô hình này còn có tên gọi khác là mô hình khoảng cách n đơn giản Trong mô hình này, người dùng cung cấp tham số n Thay vì chỉ quan tâm từ “A” trực tiếp ngay trước từ “B” ta còn chú ý đến n từ đứng trước từ “B” Cạnh được xây dựng giữa hai từ khi giữa chúng có số từ xuất hiện nhiều nhất là (n-1), ngoại trừ trường hợp các từ được phân cách bởi các dấu câu [3]

Ví dụ: ta có câu “Cánh đồng lúa xanh bát ngát”, với n = 2, mô hình biểu diễn câunhờ sau:

Trang 32

Hình 1.6 Ví dụ mô hình đồ thị n khoảng cách đơn giản [3]

Ưu điểm của mô hình là tận dụng được mối quan hệ giữa các từ, vùng lân cận của

từ trong câu và có thể áp dụng vào bài toán phân lớp văn bản

3.1.9 Mô hình Word2vec văn bản (vector hóa từ)

Trong word2vec, một biểu diễn phân tán (distributed representation) của một từđược sử dụng Sử dụng một vector với vài trăm chiều Mỗi từ được biểu diễn bởi tập cáctrọng số của từng phần tử trong nó Nhờ thế thay vì kết nối one-to-one giữa các phần từtrong vector và 1 từ, biểu diễn từ sẽ là dàn trải tất cả các thành phần của vector, và mỗiphần tử trong vector sẽ góp phần định nghĩa nhiều từ khác

Mỗi vector nhờ vậy cũng đại diện cho một cách tóm lược của ý nghĩa của một từ

Và nhờ vậy tiếp theo, chỉ đơn giản bằng cách kiểm tra một ngữ liệu lớn nó có thể họcword vectors, ta có thể nắm bắt các mối quan hệ giữa các từ trong một cách đáng ngạcnhiên Có thể sử dụng các vector là đầu vào cho một mạng nơron [4]

Bao gồm 2 mô hình :

- Mô hình túi từ liên lục (CBOW): Dự đoán 1 từ khi đã có các từ lân cận

- Mô hình Skip-gram: Là một mô hình đối lập hoàn toàn với mô hình CBOW

Dự đoán các từ lân cận khi đã có 1 từ (theo thống kê mô hình này giúp làm mượt CBOWmượt hơn nhiều)

Trang 33

Hình 1.7 Mô hình Cbow và Skip-gram [31]

Mục đích và tính hữu ích của word2vec là nhóm các vectơ của các từ tương tự lại vớinhau trong vectorspace Nghĩa là, nó phát hiện các điểm tương đồng về mặt toán học

3.1.10 Mô hình Doc2vec (vector hóa văn bản)

Mô hình Doc2Vec được phát triển dựa trên mô hình Word2Vec [4] trên cơ sở thừa

kế ý tưởng của Word2Vec và xây dựng thêm ma trận đoạn Việc này giúp cho mô hìnhDoc2Vec tập hợp tất cả các từ trong một câu thành một vectơ

Mô hình Doc2vec bao gồm hai mô hình: Mô hình túi từ phân tán (distributed bag

of words- DBOW) và mô hình bộ nhớ phân tán (distributed memory- DM)

a Mô hình túi từ phân tán(DBOW)

Hình 1.8 Mô hình túi từ phân tán của vectơ đoạn [4]

Trang 34

Mô hình này đơn giản là không quan tâm thứ tự các từ, huấn luyện nhanh hơn,không sử dụng bối cảnh địa phương/lân cận

Mô hình chèn thêm 1 "word" là ParagraphID, ParagraphID này đại diện cho vănbản được huấn luyện Sau khi huấn luyện xong có thể hiểu các vector ParagraphID này làvector nhúng của các văn bản

b Mô hình bộ nhớ phân tán(DM)

Hình 1.9 Mô hình bộ nhớ phân tán [4]

Nó xem một đoạn văn (paragraph) là một từ, sau đó nối từ này vào tập các từ trongcâu Trong quá trình huấn luyện, vector của đoạn văn (paragraph) và vector từ đều đượccập nhật

Đối với Doc2vec ngoài từ ta còn có thể biểu diễn các câu thậm chí là một đoạnvăn bản Khi đó, có thể dễ dàng vector hóa cả một đoạn văn bản thành một vector có sốchiều cố định và nhỏ, từ đó có thể chạy bất cứ thuật toán phân loại cơ bản nào trên cácvector đó [40]

Trang 35

Hình 1.10 Mô hình bộ nhớ phân tán cho việc học vector đoạn[35]

4.1 Khái niệm độ tương đồng

Độ tương đồng là một đại lượng dùng để so sánh hai hay nhiều đối tượng vớinhau, phản ánh cường độ của mối quan hệ giữa các đối tượng với nhau Ví dụ: xét 2 câu

“Tôi là nam” và “Tôi là nữ”, ta có thể nhận thấy hai câu trên có sự tương đồng khá cao[4]

Phát biểu bài toán tính độ tương đồng nhờ sau:

Xét 2 văn bản d i và d j Mục tiêu là tìm ra một giá trị S(d i ,d j ), Se (0,1), thể hiện độ tương đồng giữa 2 văn bản d i và d j Giá trị càng cao thì sự giống nhau về nghĩa của hai văn bản càng nhiều

Ví dụ trong mô hình không gian vector, ta sử dụng độ đo Cosine để tính độ tươngđồng giữa hai văn bản, mỗi văn bản được biểu diễn bởi một vector

Độ tương tự ngữ nghĩa là khái niệm thể hiện tỷ lệ dựa trên sự giống nhau về nộidung ý nghĩa của tập các tài liệu hoặc các thuật ngữ trong một danh sách các thuật ngữ

Trang 36

[6] Độ tương đồng ngữ nghĩa phản ánh mối quan hệ ngữ nghĩa giữa các câu, các tài liệuvăn bản

4.2 Độ tương đồng văn bản dựa trên tập từ chung

Trong đó m là số từ giống nhau, t là ½ số bước chuyển

Phép chuyển vị trí sẽ được thực hiện khi hai từ giống nhau trong hai câu s1 và s2 cókhoảng cách không lớn hơn giá trị:

4.2.2 Mô hình tương phản (Contrast model)

Mô hình tương phản do Tversky đề xuất (“Features of similarity”,

Psychological Review, 1977) để tính độ tương tự giữa hai câu A và B nhờ sau:

sim(A,B)   *g(A B)  *g(A B)   * (g B A )

Trong đó g(AB) biểu diễn cho các từ chung A và B, g(A-B) biểu diễn cho các từ riêngcủa A và g(B-A) biểu diễn cho các từ riêng của B Hệ số  được xác định trong quátrình thử nghiệm thuật toán

Trang 37

4.2.3 Hệ số Jaccard

Hệ số Jaccard là một độ đo tương tự của các tập hợp dựa trên phương pháp thống

kê Theo đó, độ tương tự giữa hai câu A và B nhờ sau [9] :

AB sim(A,B)  AB

4.3 Độ tương đồng văn bản dựa trên vector biểu diễn

4.3.1 Độ tương đồng cosine

Trong phương pháp này, các văn bản được biểu diễn theo mô hình không gianvector, mỗi thành phần của vector chỉ đến một từ tương ứng trong danh sách mục từ đãthu được từ quá trình tiền xử lý văn bản đầu

Không gian vector hay số chiều của vector có kích thước bằng số mục từ trongdanh sách mục từ Giá trị mỗi phần tử của vector là độ quan trọng của mục từ trong câu

Độ quan trọng của từ được tính theo một trong các phương pháp đã trình bày ở trên, phần

mô hình vector biểu diễn văn bản, ví dụ:

t là trọng số của từ thứ t trong không gian vector j

Độ đo tương đồng được tính là Cosine của góc giữa hai vector biểu diễn cho haivăn bản Di và Dj Độ tương tự của chúng được tính theo công thức:

t i j w w k1 k k

Sim D( ij) t i 2 t j 2k1 k k1 k

 tfj ij2

Trang 38

Nhân xét: Vector biểu diễn cho các câu chưa quan tâm đến mối quan hệ ngữ nghĩagiữa các từ mục, do đó các từ đồng nghĩa sẽ không được phát hiện, kết quả tính độ tương

tự chưa cao

4.3.2 Độ tương đồng dựa vào khoảng cách Euclide

Khoảng cách Euclide cũng là một phương pháp khá phổ biến để xác định mức độ

tương đồng giữa các vector đặc trờng của hai văn bản [3]

Cho hai vector v a v b khoảng cách Euclide được định nghĩa nhờ sau:

n

E Dist_(v v a b,)   (wai w )bi 2

i1

Mức độ tương đồng giữa hai vector được xác định bằng công thức:

E sim_(v v a b,)  1 E Dist_ n (v v a b,)  1 1n in1(waiwbi)2

4.3.3 Độ tương đồng dựa vào khoảng cách Manhattan

Khoảng cách Manhattan là phương pháp tính độ tương đồng giữa các vector đặc trờngbiểu diễn cho hai văn bản [2]

Cho hai vector v a v b khoảng cách Euclide được định nghĩa nhờ sau:

Trang 39

4.4 Độ tương đồng văn bản trong tiếng Việt

Thông thường khi đánh giá độ tương tự văn bản, chúng ta cần phân tích văn bản thànhcác đơn vị nhỏ hơn và thực hiện đánh giá dựa trên các đơn vị này Một số bộ công cụ tách

từ tiếng Việt nhờ vnTokenizer, JvnTextPro đã được xây dựng và cho kết quả khả quan cóthể sử dụng làm bước tiền xử lý cho hệ thống so sánh văn bản Sau khi tách từ, mỗi vănbản Ti sẽ được biểu diễn bằng một vector các từ có dạng: Ti = {w1, w2, , wni} với n là số

từ tách được của Ti

Trong nhiều trường hợp, độ tương tự giữa hai đoạn văn bản có thể xác định dựa trên sokhớp từ đơn giản, điểm tương tự được xác định dựa trên số đơn vị từ vựng xuất hiện ở cảhai đoạn văn bản đầu vào

Các phương pháp đánh giá độ tương tự văn bản chủ yếu dựa trên hai yếu tố [3] :

- Đánh giá độ tương tự ngữ nghĩa giữa các từ: Một số phương pháp sử dụngmạng từ (WordNet), một số khác dựa trên kho ngữ liệu Web hoặc dựa trên phân tíchngữ nghĩa ẩn

- Đánh giá độ tương tự theo trật tự của từ trong văn bản

Đánh giá về độ tương tự ngữ nghĩa của từ được dùng để tạo ra các vector đặctrờng ngữ nghĩa của văn bản

4.4.1 Độ tương tự ngữ nghĩa từ - từ

a) Độ tương tự ngữ nghĩa từ - từ dựa trên WordNet

Wordnet là cơ sở dữ liệu tri thức từ vựng được thiết kế dựa trên những lý thuyết

về ngôn ngữ tâm lý theo cách liên tưởng từ ngữ của con người WordNet được tổ chứcdựa theo các quan hệ ngữ nghĩa Một quan hệ ngữ nghĩa là một quan hệ giữa các nghĩa.Một từ có thể có nghiều nghĩa và khi đó mỗi nghĩa sẽ thuộc vào những tập đồng nghĩakhác nhau Ngược lại, mỗi tập đồng nghĩa lại có thể chứa một hoặc nhiều hơn các từ khácnhau Khi đó quan hệ ngữ nghĩa có thể được xem nhờ là con trỏ giữa các tập đồng nghĩa[14]

b) Độ tương tự ngữ nghĩa từ - từ dựa trên ngữ liệu

Trang 40

Độ tương tự ngữ nghĩa dựa trên tập ngữ liệu (corpus) xác định mức độ tương tự vềmặt ngữ nghĩa giữa các từ sử dụng thông tin xuất phát từ tập ngữ liệu lớn Một số phươngpháp xác định nhờ sau:

- PMI (Pointwise Mutual Information) - thông tin chung dựa trên điểm

PMI được đưa ra bởi Turney 2001 nhờ một độ đo không giám sát để đánh giá độtương tự ngữ nghĩa của từ PMI sử dụng dữ liệu đã tập hợp từ việc tìm kiếm thông tin(PMI-IR), dựa trên hiện tượng đồng xảy ra của các từ trên tập ngữ liệu lớn để xác định độtương tự cho 2 từ w1 và w2 nhờ sau:

p(w ,w1 2)

PMI(w ,w1 2)  log

p(w )*p(w1 2)

- LSA (Latent Semantic Analysis) - phân tích ngữ nghĩa ẩn

• Xây dựng ma trận T (ma trận từ - tài liệu) thể hiện tập ngữ liệu

• Giảm số chiều SVD Trong đó SVD có thể được xem là cách khắc phục một số hạn chế của mô hìnhkhông gian vector chuẩn nhờ số chiều cao, giúp cho LSA được tính với số chiều thấp hơn

và mối quan hệ giữa từ - văn bản được khai thác Độ tương tự trong không gian kết quảđược đo bằng độ tương tự Cosine Ngoài ra, LSA cũng sinh ra một mô hình không gianvector thể hiện sự đồng nhất giữa các từ, cụm từ và các văn bản

4.4.2 Độ tương tự ngữ nghĩa của văn bản

Việc đánh giá độ tương tự ngữ nghĩa giữa hai văn bản trong đa số các nghiên cứu sửdụng vector đặc trờng cho ngữ nghĩa của văn bản Mỗi thành phần trong vector này đượcthiết lập từ việc tính độ tương tự của một từ trong văn bản với các từ trong văn bản cònlại, trọng số của thành phần là độ đo tương tự lớn nhất [3]

Giả sử cho hai văn bản (đã được tách từ vựng) nhờ sau:

T1 = { w11, w12, , w1m1}

T2 = { w21 ,w22, , w2m2 }

Ngày đăng: 01/02/2023, 21:12

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

w