Các phương pháp hiện đại để ngăn chặn quá trình sao chép văn bản thường sử dụng các thuật toán phát hiện tương đồng văn bản, kết hợp với các mô hình học máy để xác định mức độ tương đồng
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN
ĐỎ ÁN TÓT NGHIỆP
CÁN NGỌC BÌNH
Hà Nội, 1-2024
Trang 2HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN
Trang 3NHAN XÉT, ĐÁNH GIA, CHO DIEM
(Của giảng viên hướng dẫn)
Trang 4NHẬN XÉT, ĐÁNH GIÁ, CHO DIEM
(Của giảng viên phản biện)
Đồng ý/ Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm tốt
nghiệp.
¬— ,ngày tháng năm 20
GIẢNG VIÊN PHAN BIEN
Trang 5MỤC LỤC
LOT CAM ƠNN - 25552222222 222211 22221 22T 2 rea 1DANH MỤC HÌNH ẢNH 5 5 1211211211211 yu 2/,0/0782.100000n0n0n8n8n8Ẻ858 4CHUONG 1: TONG QUAN VE PHAT HIEN TUƠNG ĐÔNG VĂN BẢN 51.1 Giới thiệu đề tài và đối twong nghiên CUPL ces eses ees eseee 51.2 Đặc điểm của văn bản tiếng 72 61.2.1 Đặc điỂm - 5c SH HH ng 61.2.2 Cấu tạo tiếng Việt -52 52 5 E222 xe 6
1.2.3 Từ đồng nghữa òẶS 2 22t 71.2.4 Đặc điểm chính tả 5 SE t 112tr ye 7
1.3 Tổng quan vé bài toán do độ tương đồng văn ĐẲH cà &1.3.1 Khái niệm về độ tương AON ccc cescesesces esses ees essesesseseeees 81.3.2 Độ tương đồng cÂu 5c SE E222 re ọ1.3.3 Ug dụng Ăn re ọ1.3.4 Một số phương pháp tính độ tương đồng dựa trên vectơ biểu diễn 9
1.3.4.1 Độ tương AON €OSine -55 Set 9
1.3.4.2 Khoảng cách EWCÏid - Sc SSc S2 +svvvssreexeses 10 1.3.4.1 Khoảng cách ManhqffđH - c5 c3 E + VEE+seeessreeeeses 11 1.3.4.3 Chỉ mục JACCArEA ieee ccc ccccccceecee ccc cccccceesessssseeeeccecesceeseneneees 12
1.3.5 Một số phương pháp biểu diễn vectơ văn bản - 12
1.3.5.1 Khải HIỆM Ăn ghe 13
1.3.5.2 Phương pháp TIF-IDI vn khe 13
1.3.5.3 Phương pháp IWfOrd2V6C 5555 SSSs‡ssvksseess 14 1.3.5.4 Phương pháp Doc2ÏG -c c3 E+EE+seEk+sreeeses 17
1.4 Một số nghiên cứu có liÊH qHAH - 525 sccEEEeEEtrtrrerret 19
1.4.1 Nghiên cứu về độ chính xác của các thuật toán so sảnh tương
MONG VAN DAN cc cccccccccces cesses he he 19
Trang 61.4.2 Nghiên cứu tong quan về sự phát triển của các phương pháp do
lường tương đồng văn bảH 2252 5225212212112 ree 20
1.5 Ket ChưƠơng ĂĂ TH HH tr rug 22
CHƯƠNG 2: PHAT HIEN ĐỘ TƯƠNG ĐƠNG VAN BẢN SỬ DỤNG HOC
2.2 Xây dựng mơ hình phát hiện twong dong văn bản sử dụng học sâu .41
2.2.1 Mơ tả mơ hình phát hiện tương đồng van bản sử dụng học sâu .412.2.1.1 Quá trình huấn luyện - -55ScccSEeEEEerrerrerrerrerrrrei 412.2.1.2 Quá trình so sánh tương đơng văn bản -5-5ccccccssa 4]2.2.2 Giới thiệu mơ hình PhoBET cà shhishihhihkerey 42
2.2.3 So sinh PhoBERT với một số mơ hình khác -sccsccec: 46
2.2.4 Thu thập dit liỆU nhe 47
2.2.5, Tiền xử lý dữ liệu - 5 SE 211221221222 errrrrd 492.2.6 Huấn luyện mơ hình - 5 TS E1 Enrerye 5I
CHUONG 3: CAI DAT VA TRIEN KHALI 0.0 cccccsccsccssscsscessessvessesseessessessessen 53
3.1 Cài đặt và triển khai 5 5 esses ees eeseeseesessessesseesessessesseeseeees 533.1.1 Các cơng cụ và nền tảng sử dUNG cccccccccccccccescscesesseeseseeeeseseeees 53
3.1.1.1 Google CỌQP SG SE Set 53
"Z“x.° ăứM ồồ 53
LUNN/, 9) //xAmV 1áá 34 3.1.1.4 Pylorch và PyTorch LIghfHÌHg cssscssssckesssevesseexs 35
3.1.2 Giới thiệu một số mơ dun chương trình - sec 56
BD Thứ nghiệm - 555cc 2222111 E221 re 59
Trang 73.2.1 Tập dữ liệu thứ HgÌhiỆM ScS Sinh heky 59
3.2.2 Kết quả kiểm thử mô hình phát hién 0 0 0.0.cccccccccccceceseeeeceeeee 603.2.3 Xây dựng mô dun phát hiện độ trong đồng giữa các đoạn văn bản
62
3.3 (CoA 211 | SE HH HH 1121k 63KET LUẬNN 55-55 5 E2 2212212222221 121212121212 rrrdg 64
TÀI LIEU THAM KHAO ccccccccsccscesccssessessessessessessessessessessessessessessesseessseees 65
Trang 8Đồ án tốt nghiệp
LỜI CẢM ƠN
Lời đầu tiên, em xin gửi lời cảm ơn chân thành tới quý thay, cô và các cán bộ
trường Học viện Công nghệ Bưu chính Viễn thông và đặc biệt quý thầy, cô khoa
An Toàn Thông Tin Thay, cô đã mang tat cả những kiến thức cùng sự nhiệt
huyết của mình truyền đạt cho em những kiến thức quý báu, cùng những kinh
nghiệm, kỹ năng sống một cách ân cần, chu đáo nhất Những điều đó là nền tảng
vững chắc cho bản thân em thực hiện đồ án tốt nghiệp này và cuộc sống mai
sau.
Em biết ơn sâu sắc tới thầy — PGS TS Hoàng Xuân Dậu, người đã cho em
cơ hội làm việc với thay, thay tận tình hướng dẫn và hỗ trợ em rất nhiều trong
quá trình thực hiện đồ án tốt nghiệp
Và cuối cùng em xin cảm ơn gia đình và bạn bè, đã luôn ủng hộ và hỗ trợ
nhiệt tình trong suốt quá trình em học tập tại Học viện Công nghệ Bưu chính
Viễn thông, tạo điều kiện cho em có được chỗ dựa tinh thần vững chắc dé hoàn
thành đồ án một cách trọn vẹn
Em xin chân thành cảm on!
Hà Nội, ngày 2 tháng 01 năm 2024
Sinh viên
Cấn Ngọc Bình
Cần Ngọc Bình — B19DCATO13 Trang 1
Trang 9Đồ án tốt nghiệp
DANH MỤC HÌNH ẢNH
Hình 1.1: Mô hình phương pháp Skip-gram - ¿+ + + s**++ssex+seeerxss 15
Hình 1.2: Mô ta quá trình sinh ra các từ xung quanh cua mô hình Skip-gram 16
Hình 1.3: Mô tả mô hình PV-DMM - - 6 tk ng HH ưệp 18
Hình 1.4 Mô tả mô hình PV-DBOW L S SH HH HH HH HH HH Hệ, 18
Hình 1.5 Các nhóm thuật toán so sánh tương đồng 2-5 2 s5: 19
Hình 1.6 Kết quả đo lường độ tương đồng văn bản của một số thuật toán 20
Hình 1.7 Tổng quan về các phương pháp so sánh độ 2-2-2 + s52 21
Hình 2.1 Kiến trúc mô hình Transformet c cscceccesesscesesessessessessesseeesseeesseeeees 27
Hình 2.2 Mô tả quá trình Positional Encoding ‹ s++-ss+s++ses+++2 28
Hình 2.3 Sơ đồ ham Attention trong mô hình Transformer - 2s: 29
Hình 2.4 Mô tả quá trình Self-Atf€nfIOH -c- c6 + 1n re 29
Hình 2.5 Mô tả quá trình tính toán Attention V€cfOT 5555 «+ ++ss++s+2 3l
Hình 2.6 Qua trình Multi-head Atfention -.- 5 c1 3+ +21 111 xxx 32
Hình 2.7 Sơ đồ quá trình giải mã trong mô hình Transfomer - 33
Hình 2.8 Quá trình pre-train mô hình BERT - 55+ ++s*++£+eex+sexssxz 35
Hình 2.9 Quá trình NSP trong mô hình BERT - 55255 *++*s++*seeesss 37
Hình 2.10 Sơ đồ quá trình Fine-Tuning mô hình BERT -2- 2 5+¿ 38
I§0):020000/193010):04U>35)41-YYYaaa 40
Hình 2.12 Quá trình huấn luyện mô hình sử dụng PhoBERT - 4I
Hình 2.13 Quá trình phát hiện tương đồng văn bản - - 5 z+s+czzs2 42
Hình 2.14 Các bai toán thử nghiệm trong mô hình PhoBERT - 43
Hình 2.15 Hiệu suất (dưới dạng %) trên các mô hình đối với bài toán gán nhãn
từ loại (POS tagging) và phân tích phụ thuộc (Dependency parsing) "Acc.",
"LAS" và "UAS" lần lượt là viết tắt của Accuracy, Labeled Attachment Score và
Unlabeled Attachment SCOTC - - c1 1921189511151 1 11 1111 111 ng ng rrg 44
Hình 2.16 Kết quả thử nghiệm mô hình PhoBERT với bài toán NER và NLI .44
Hình 2.18 Code thu thập dữ liệuHình 2.19 Code thu thập dữ liệu 48
Hình 2.20 Dữ liệu sau khi thu thập - - 5 5c 3+ S+E*++*EEEx+seeerrreeerreses 49
Hình 2.21 Code mô tả quá trình tiền xử lý đữ liệu - 2-2 52 s52 50
Hình 2.22 Dữ liệu sau khi tiền xử lý - ¿5-5552 2E2EEESE2EEEEEEEEErrrerkrei 51
Cần Ngoc Bình — B19DCATO13 Trang 2
Trang 10Đồ án tốt nghiệp
Hình 3.1 Mô ta quá trình tách từ sử dụng VnCoreNLP -<s++<+<sss2 55
Hình 3.2 Module dan drive vào google colab dé phục vụ lưu trữ - 56
Hinh 3.3 Module dé tai VnCoreNLP phục vụ việc tách từ . cccc<<ss+s+ 57 Hình 3.4 Module tai dir liệu vào dataloader phục vụ quá trình huấn luyện 57
Hình 3.5 Module phục vụ vẽ các biéu đồ thông kê độ chính xác của mô hinh 58
Hình 3.6 Module phục vụ thống kê độ dài các từ trong dữ liệu thu thập được 58
Hình 3.7 Module huấn luyện mô hình gồm có training step va valid step 59
Hình 3.8 Mô ta dữ liệu thử nghiệm (3012112113112 1 1 1 ng ng rưy 60 Hình 3.9 Biểu đồ độ chính xác tương ứng với từng threshold cụ thể 61
Hình 3.10 Thử nghiệm tính độ tương đồng văn bản giữa 2 đoạn văn bản 62
Hình 3.11 Mã nguồn tính độ tương đồng giữa 2 đoạn văn bản 63
Cần Ngọc Bình — B19DCATO13 Trang 3
Trang 11Đồ án tốt nghiệp
LỜI NÓI ĐẦU
Trong một vai năm trở lai đây, Trí tuệ nhân tao (Artificial Intelligence) đang
len lỏi vào trong cuộc sống và ảnh hưởng sâu rộng tới mỗi chúng ta Trí tuệ nhân
tạo đóng một vai trò rất quan trọng khi máy móc có thể thực hiện các nhiệm vụ
đòi hỏi trí thông minh của con người Các hệ thống AI có thể học hỏi từ dữ liệu,
nhận biết mô hình, và thực hiện công việc ma trước đây chi có con người mới có
thé làm Các ứng dụng của trí tuệ nhân tạo rất đa dạng, từ hệ thống nhận diện
giọng nói, nhận diện hình ảnh, đến xe tự lái và tư van tài chính Một số công
nghệ nồi bật trong lĩnh vực này bao gồm máy học (machine learning), học sâu
(deep learning), và xử lý ngôn ngữ tự nhiên.
Hiện nay, Học sâu (Deep learning) đã và đang là một chủ đề AI được bàn
luận sôi nổi Học sâu, hay deep learning, là một phần quan trọng của trí tuệ nhân
tạo, tập trung vào việc xây dựng và đào tạo các mô hình máy học có khả năng
học từ dữ liệu lớn và phức tap Điều đặc biệt của học sâu là khả năng tự học đại
diện của dữ liệu mà không cần sự can thiệp của con người
Một trong các lĩnh vực cần áp dụng học sâu dé giải quyết những bài toán khó
khăn, phức tạp, xử lý trong thời gian thực là bài toán so sánh độ tương đồng văn
bản Bài toán so sánh tương đồng văn bản có nhiều ứng dụng quan trọng và đa
dạng trong thực tế như trong các hệ thống tìm kiếm, phân loại văn bản, kiểm tra
đạo văn và đánh giá nội dung Vì vậy, trong Đồ án này em sẽ nghiên cứu về chủ
đề “Phát hiện độ tương đồng văn bản sử dụng học sâu” Nội dung chỉ tiết của
đồ án được trình bay trong các chương sau:
Chương 1: Tổng quan về phát hiện tương đồng văn ban
Chương 2: Phát hiện tương đồng văn bản sử dụng học sâu
Chương 3: Cài đặt và triển khai
Cần Ngọc Bình — B19DCATO13 Trang 4
Trang 12Đồ án tốt nghiệp
CHƯƠNG 1: TONG QUAN VE PHÁT HIỆN TƯƠNG DONG VĂN BAN
1.1 Giới thiệu đề tai và đối tượng nghiên cứu
Trong bối cảnh ngày nay, khi đữ liệu văn bản ngày càng phong phú và đa
dạng, vấn đề sao chép văn bản là một thách thức quan trọng cần giải quyết, đặc
biệt là trong ngữ cảnh lớn của Internet và công nghệ thông tin Quá trình sao
chép văn bản không chỉ làm giảm chất lượng nội dung mà còn tạo ra những vấn
dé về bản quyền và đạo đức
Trong thực tế, nhiều người dùng và tô chức sử dung các công cụ và kỹ thuật
dé sao chép nội dung từ nguồn khác một cách dé dàng và nhanh chóng Điều
này tạo ra một môi trường mà việc duy trì sự độc lập và sáng tạo trong văn bản
trở nên khó khăn Những vấn đề này không chỉ tác động đến tác giả và người
sáng tạo mà còn đưa ra thách thức lớn trong việc xác định và quản lý nguồn gốc
của thông tin.
Hiện tại, đã có một số giải pháp cho việc phát hiện sao chép và một vài công
cụ phần mềm cho phép phát hiện một tài liệu (gọi là văn bản kiểm tra) có sao
chép từ một tập hợp các tài liệu nguồn hay không Đã có một số nghiên cứu đề
xuất các phương pháp khác nhau dé xác định xem một đoạn văn ban của một số
tài liệu có nằm trong một tài liệu nào đó hay không Các phương pháp này chủ
yếu dựa trên tìm kiếm và so khớp chuỗi (string matching) Tuy nhiên, các
phương pháp so khớp chuỗi chỉ có hiệu quả nếu việc sao chép là “nguyên văn”
Nó không thê phát hiện các sao chép có sửa đổi đôi chút như thay thé một số từ
băng từ đồng nghĩa hay thay đổi thứ tự các câu trong văn bản Các phương pháp
hiện đại để ngăn chặn quá trình sao chép văn bản thường sử dụng các thuật toán
phát hiện tương đồng văn bản, kết hợp với các mô hình học máy để xác định
mức độ tương đồng giữa các đoạn văn bản Tuy nhiên, vấn đề vẫn còn tồn tại và
đòi hỏi sự kết hợp giữa các giải pháp công nghệ và chính sách dé đảm bảo tính
công bằng và nguyên tắc trong việc sử dụng thông tin trên mạng Do đó các nỗ
lực nghiên cứu và phát triển tiếp tục được thực hiện dé cải thiện hiệu suất của
Cần Ngọc Bình — B19DCATO13 Trang 5
Trang 13Đồ án tốt nghiệp
các hệ thống phát hiện tương đồng văn bản và đồng thời tăng cường nhận thức
về quy định và trách nhiệm đối với việc sử dụng văn bản từ nguồn khác nhau
Đồ án này tập trung nghiên cứu một số mô hình tính toán độ tương tự văn
bản cả về cú pháp và ngữ nghĩa, xác định sự tương đồng của văn bản dựa trên
từ, câu và đoạn Ứng dụng học sâu để nâng cao khả năng phát hiện độ tương
đồng văn bản và mở ra những triển vọng mới trong lĩnh vực xử lý ngôn ngữ tự
nhiên Mục tiêu chính của đề tài là phát triển một hệ thống hiệu quả, có khả
năng phân loại và xác định sự tương đồng văn bản dựa trên các phương pháp và
thuật toán tiên tiến Điều này không chỉ giúp tối ưu hóa quá trình tra cứu thông
tin mà còn hỗ trợ trong việc phát hiện sự trùng lặp và thậm chí phòng tránh việc
vi phạm bản quyền
1.2 Đặc điểm của văn bản tiếng việt
1.2.1 Đặc điểm
Đa đạng của ngôn ngữ là một thách thức quan trọng khi nghiên cứu về nhận
diện tương đồng văn bản, đặc biệt là khi nói đến ngôn ngữ Việt Nam với sự
phong phú và phức tạp của nó Tiếng việt là một hệ thống ngôn ngữ mà không
chỉ có sự đa dạng về từ vựng và ngữ pháp mà còn là sự đa dạng văn hóa, cách
diễn đạt ý, và thậm chí là cách diễn đạt hình thức Mỗi vùng miền, từ miền Bắc
đến miền Nam, mang đến cho ngôn ngữ Tiếng Việt những đặc điểm riêng biệt,
từ cách phát âm, ngữ điệu đến cách sử dụng từ ngữ Điều này tạo ra một thách
thức lớn trong việc xây dựng một hệ thống có khả năng nhận diện tương đồng
văn bản hiệu quả trên toàn bộ bảng đa dạng này Đồng thời, ngôn ngữ Việt Nam
còn phản ánh sự đa dạng văn hóa của các cộng đồng và dân tộc khác nhau Các
thành ngữ, tục lệ, và cách diễn đạt ý nghĩa trong ngôn ngữ hàng ngày đều đóng
góp vào sự đa dang này Điều này đặt ra một thách thức không chỉ trong việc xử
lý ngôn ngữ mà còn trong việc hiểu va bảo toàn sự đa dang văn hóa này [1]
1.2.2 Cấu tạo tiếng Việt
Tiếng Việt là ngôn ngữ không biến hình từ và âm tiết tính, tức là mỗi một
tiếng (âm tiét) được phat âm tach rời nhau va được thé hiện băng một chữ viết
Hai đặc trưng này chi phối toàn bộ toàn bộ tô chức bên trong của hệ thống ngôn
ngữ Việt và cần được chú ý khi xử lý tiếng Việt trên máy tính Cấu tạo từ tiếng
Việt bao gồm
Cần Ngọc Bình — B19DCATO13 Trang 6
Trang 14Đồ án tốt nghiệp
Tiếng: Trong tiếng Việt có một loại đơn vi đặc biệt gọi là tiếng Về mặt ngữ
âm, mỗi tiếng là một âm tiết Hệ thống âm vị tiếng Việt phong phú và có tính
cân đối, tạo ra tiềm năng của ngữ âm tiếng Việt trong việc thể hiện các đơn vị có
nghña Nhiều từ tượng hình, tượng thanh có giá tri gợi tả đặc sắc Khi tạo câu,
tạo lời, người Việt rất chú ý đến sự hai hoà về ngữ âm, đến nhạc điệu của câu
văn
e Tu, cụm từ: Mỗi tiếng, nói chung, là một yếu tố có nghĩa Tiếng là đơn
VỊ cơ sở của hệ thong các don vi có nghĩa cua tiéng Việt Từ tiếng,
người ta tạo ra các đơn vị từ vựng khác để định danh sự vật, hiện
tượng chủ yêu nhờ phương thức ghép và phương thức láy Việc tạo racác đơn vị từ vựng ở phương thức ghép luôn chịu sự chi phối của quy
luật kết hợp ngữ nghĩa, ví dụ: đất nước, máy bay, nhà lầu xe hơi, nhà tan
cửa nát Hiện nay, đây là phương thức chủ yếu để sản sinh ra các đơn
vi từ vựng
© _ Ngữ pháp: Từ của tiếng Việt không biến đổi hình thái Đặc điểm này sẽ
chi phối các đặc điểm ngữ pháp khác Khi từ kết hợp từ thành các kếtcấu như ngữ, câu, tiếng Việt rất coi trọng phương thức trật tự từ và hư
từ Ngoài trật tự từ và hư từ, tiếng Việt còn sử dụng phương thức ngữ
điệu Ngữ điệu giữ vai trò trong việc biểu hiện quan hệ cú pháp của các
yếu tố trong câu, nhờ đó nhằm đưa ra nội dung muốn thông báo Trênvăn bản, ngữ điệu thường được biểu hiện bằng dau câu
1.2.3 Từ đồng nghĩa
Từ đồng nghĩa trong tiếng Việt là những từ có nghĩa giống nhau hoặc gần
giống nhau, trong một số trường hợp từ đồng nghĩa có thể thay thế hoàn toàn
cho nhau, một số khác cần cân nhắc về sac thái biéu cảm trong trường hợp cụ
thé Việc sử dụng từ đồng nghĩa giúp làm phong phú ngôn ngữ, tránh sự lặp lại
quá mức và làm cho văn bản trở nên linh hoạt hơn Những từ đồng nghĩa với
nhau lập thành một nhóm gọi là nhóm đồng nghĩa Vi dụ: dé, dé dàng, dé dai là
những nhóm từ đồng nghĩa Từ đồng nghĩa thực chất không phải là những từ
trùng nhau hoàn toàn về nghĩa mà có những khác biệt nhất định Chính sự khác
biệt đó là lí đo tồn tại và làm nên sự khác nhau giữa các từ trong một nhóm từ
đồng nghĩa
1.2.4 Đặc điểm chính tả
Cần Ngọc Bình — B19DCATO13 Trang 7
Trang 15Đồ án tốt nghiệp
Ngôn ngữ tiếng Việt có một số đặc điểm chính tả đặc trưng, một SỐ trong
những đặc điểm này là độc đáo và phản ánh đặc tính cụ thể của tiếng Việt Dưới
đây là một số đặc điểm chính tả của ngôn ngữ tiếng Việt:
e Bang Chữ Cái: Tiếng Việt sử dung bảng chữ cái chứa 29 chữ cái, bao
gồm 22 chữ cái viết từ, 6 dau thanh (điểm, sắc, huyền, ngã, nặng, hỏi),
và dau cách
e Nguyên Âm Đặc Trưng: Nguyên âm đặc trưng của tiếng Việt thường
được kết hợp với các dấu thanh dé tạo thành các âm tiết khác nhau, vi
moe
du: "a," "e," "o" có thé có dau sắc, huyén, ngã, nặng.
e© Dấu Cách: Dấu cách được sử dụng dé phân tach từ va cum từ Mỗi từ
thường được viết liền và có dau cách trước từ tiếp theo
e Dau Ngữ Tố: Dấu ngữ tố, chủ yếu là dấu "a" và "6," được sử dụng dé
biéu thi sự âm đều của âm tiết và giữa các phụ âm
e Dấu Nặng: Dấu nặng chỉ định âm tiết nặng, là âm tiết chứa nguyên âm
đặc trưng và có độ dài âm tiết dài hơn
© Quy Tắc Điền Dấu: Có các quy tắc cụ thé dé điền dấu cho các từ không
có dấu trong văn bản, nhằm đảm bảo chính xác ngữ âm và ngữ nghĩa
e Dấu Gạch Ngang: Dấu gạch ngang (dấu -) thường được sử dung trong
văn bản dé tách từ ngữ, đặc biệt là trong quảng cáo và tiêu đề
1.3 Tong quan về bài toán đo độ tương đồng van bản
1.3.1 Khái niệm về độ trơng đồng
Bài toán đo độ tương đồng văn bản là một lĩnh vực quan trọng trong xử lý
ngôn ngữ tự nhiên và khoa học máy tính Nhiệm vụ chính của bai toán này là đo
lường mức độ giống nhau giữa hai hoặc nhiều văn bản dựa trên nội dung của
chúng.
Độ tương tự văn bản (document similarity) hay khoảng cách giữa các văn
bản là một trong những bài toán trọng tâm của truy hoi thong tin (information
retrieval) Việc đo lường mức độ giống nhau của các văn ban đóng một vai trò
quan trọng trong nhiều bài toán như: tìm kiếm thông tin dựa trên nội dung của
tài liệu, phân nhóm tài liệu dựa vào sự tương đồng về nội dung Độ tương tự
văn bản là một đại lượng dùng để so sánh hai hay nhiều tài liệu văn bản với
nhau Đại lượng này đặc trưng cho mức độ liên quan về ngữ nghĩa giữa các văn
bản.
Cần Ngọc Bình — B19DCATO13 Trang 8
Trang 16Đồ án tốt nghiệp
Dé đánh giá nội dung và ý nghĩa của văn bản trong bài toán đo độ tương
đồng cần đảm bảo rằng phương pháp do độ tương đồng không chi xem xét cau
trúc ngữ pháp mà còn hiểu về sự tương đồng về nghĩa và ý nghĩa Độ tương
đồng về ngữ pháp là khái nệm thé hiện tỷ lệ dựa trên tập từ chung của hai văn
bản Độ 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ội dung ý nghĩa của tập các văn bản
1.3.2 Độ tương dong câu
Bài toán đo độ tương đồng về câu là một phần quan trọng của lĩnh vực xử lý
ngôn ngữ tự nhiên (NLP) Nó nhằm mục đích đo lường mức độ giống nhau giữa
hai câu hoặc nhiều câu dựa trên cấu trúc ngữ pháp, ý nghĩa, hoặc nội dung
Bài toán tính độ tương đồng câu được phát biểu như sau: Xét một tài liệu d
gồm có n câu: d = sl, s2 sn Mục tiêu của bài toán là tìm ra được một giá tri
của hàm S(5¡, 5j) với S€(0,1) Hàm S(5¡, $;) được gọi là độ tương đồng giữa hai
câu 5; và 5 Giá trị này càng cao thì sự giống nhau về ngữ nghĩa của hai câu càng
lớn
1.3.3 Ứng dụng
Bài toán đo độ tương đồng văn bản đang có ứng dụng rộng rãi trong nhiều
lĩnh vực khác nhau từ giáo dục, công nghiệp đến nghiên cứu và truyền thông
Dưới đây là một số ứng dụng quan trọng của bài toán này
e E-Learning và Giáo Dục: Hỗ trợ trong việc phát hiện sao chép và gian
lận trong bài tập, bài kiểm tra để đảm bảo tính công bằng và trung thực
se Tim Kiếm Web và Công Nghệ Thông Tin: Cải thiện hiệu suất của các
hệ thống tìm kiếm web, đặc biệt khi xử lý các truy vấn phức tạp và đa
dạng.
se Quản lý Nội Dung Truyền Thông Xã Hội: Giúp quản lý và lọc nội dung
truyền thông xã hội, đảm bảo sự nhất quán và đa dạng của thông tin
¢ Cham Điểm và Đánh Giá Nghiên Cứu: Hỗ trợ quá trình cham điểm và
đánh giá nghiên cứu khoa học dựa trên độ tương đồng văn bản
® Phan Loại Sự Kiện và Tin Tức: Phân loại và lọc tin tức, sự kiện dựa trên
nội dung dé giúp người đọc tiếp cận thông tin một cách hiệu quả
Cần Ngọc Bình — B19DCATO13 Trang 9
Trang 17Đồ án tốt nghiệp
¢ Hỗ Trợ Tạo Nội Dung Truyền Thông và Quang Cáo: Cung cấp thông tin
về độ tương đồng giữa nội dung truyền thông và quảng cáo dé tối ưu hóachiến lược tiếp thị
1.3.4 Một số phương pháp tính độ tương đồng dựa trên vectơ biểu diễn
1.3.4.1 Độ tương đồng cosine
Độ tương tự cosin là một cách đo độ tương tự (measure of similarity) giữa
hai vectơ khác không của một không gian tích vô hướng Độ tương tự này được
định nghĩa bằng giá trị cosine của góc giữa hai vectơ, và cũng là tích vô hướng
của cùng các vectơ đơn vị dé cả hai đều có chiều dai 1 Trong phương pháp này,
các văn ban sẽ được biểu diễn theo mô hình không gian vectơ Mỗi thành phan
trong vectơ chỉ đến một từ tương ứng trong danh sách mục từ chính Danh sách
mục từ chính thu được từ quá trình tiền xử lý văn bản đầu vào, các bước tiền xử
lý gồm: tách câu, tách từ, gán nhãn từ loại, loại bỏ những câu không hợp lệ
(không phải là câu thực sự) và biểu diễn câu trên không gian vectơ [2] Công
thức tinh Cosine Similarity giữa hai vecto A và B có A; va B, là thành phan của
vectơ tương ứng được xác định bởi:
Độ tương tu có giá tri —l có nghĩa là trái nghĩa hoàn toan, với gia tri 1 nghĩa
là giống nhau hoàn toàn, với 0 có nghĩa là trực giao hay tương quan
(decorrelation), trong khi các giá trị ở giữa biểu thị sự giống nhau hoặc không
giống nhau ở mức trung gian
Đối với so khớp chuỗi xấp xi (approximate string matching), các vectơ thuộc
tính A và B thường là các vectơ TF-IDF của các tai liệu Độ tương tự cosine có
thé xem là một phương thức bình thường hóa độ dài tai liệu trong quá trình so
sánh.
Trong trường hợp truy hồi thông tin, độ tương tự cosine của hai tài liệu sẽ từ
0 đến 1, do các tần số thuật ngữ (dùng các trọng lượng TF-IDF) không thể là giá
trị âm Do đó, góc giữa các vectơ tần số thuật ngữ không thê lớn hơn 90
1.3.4.2 Khoảng cách Euclid
Cần Ngọc Bình — B19DCATO13 Trang 10
Trang 18Đồ án tốt nghiệp
Trong toán học, khoảng cách Euclid giữa hai điểm trong không gian Euclid
là độ dai của đoạn thăng nối hai điểm đó Có thê tinh nó từ tọa độ Descartes của
hai điểm bằng cách sử dụng định lý Pythagoras, do đó còn có tên gọi khác là
khoảng cách Pythagoras Khoảng cách giữa hai đối tượng hình học không phải
là điểm thường được định nghĩa là khoảng cách nhỏ nhất giữa hai điểm thuộc
hai đối tượng đó Có một số công thức đã biết để tính khoảng cách giữa các
dạng đối tượng khác nhau, chăng hạn như khoảng cách từ một điểm đến một
đường thăng Toán học nâng cao khái quát hóa khái niệm khoảng cách sang
không gian mêtric trừu tượng cũng như nghiên cứu một số loại khoảng cách
khác ngoài khoảng cách Euclid Một số ứng dụng trong thống kê và tối ưu hóa
sử dụng bình phương khoảng cách Euclid thay vì chính khoảng cách đó Các
công thức khoảng cách Euclid bao gồm
¢ Khoảng cách một chiều: Khoảng cách giữa hai điểm bat kỳ trên trục số là
giá trị tuyệt đối của hiệu tọa độ của chúng Như vậy, với hai điểm p và qtrên trục số, khoảng cách giữa chúng được cho bởi
dlp,qÌ=¿p—qV¿[i1.2)
® Khoảng cach hai chiều: Trong mặt phăng Euclid, cho điểm p có tọa độ
Descartes là (P: , P2) và điểm q có tọa độ là (4: , 92) Khi đó khoảng cáchgiữa p và q được tính bằng
dip,qÌ=v|q,— p,Ï*|q¿— p;Ï
1.3)
e Khoảng cách nhiều chiều: Trong không gian ba chiều, cho điểm p có tọa
độ Descartes là (P:, P›;.P›) và điểm q có tọa độ là (41, 4››4›)., khoảng cáchgiữa chúng là:
dlp,qÌ=+Iq,— p,ˆ*(q;— po! +(a5— Ps)
(1.4)
Tổng quát, với hai điểm bat kỳ có toa độ Descartes cho trước trong không
gian Euclid chiều, khoảng cách giữa chúng là:
d(p,qÌ=lq,— p,+Íq;— p;Ÿ+ +|q,— Pal
(1.5)
Trong ngữ cảnh của tương đồng văn bản, khoảng cách Euclidean thường
được sử dụng dé đo lường sự tương đồng giữa hai vectơ biéu diễn văn bản Mỗi
Cần Ngọc Bình — B19DCATO13 Trang 11
Trang 19Đồ án tốt nghiệp
văn bản được biểu diễn như một vectơ trong không gian nhiều chiều, với mỗi
chiều đại diện cho một từ hoặc đặc trưng Kết quả của khoảng cách Euclidean là
một giá trị không âm, thê hiện sự tương đồng giữa hai vectơ Giá trị càng nhỏ thì
hai vectơ càng gần nhau, và giá trị càng lớn thì hai vectơ càng xa nhau Ứng
dụng của khoảng cach Euclidean trong tương đồng văn bản có thé bao gồm việc
đo lường sự tương đồng giữa các đoạn văn, phân loại văn bản, hoặc thậm chí là
trong các bài toán gom nhóm văn bản dựa trên đặc trưng
1.3.4.1 Khoảng cách Manhattan
Khoảng cach Manhattan, còn được gọi là khoảng cách LI hay khoảng cách
trong thành phố, là một dạng khoảng cách giữa hai điểm trong không gian
Euclid với hệ tọa độ Descartes Đại lượng này được tính bằng tổng chiều dai của
hình chiếu của đường thang nối hai điểm này trong hệ trục toa độ Descarte Vi
dụ cho điểm p có tọa độ Descartes là (X¡, Y¡) và điểm q có tọa độ là (% , ¥2) Khi
đó khoảng cách Manhattan giữa p và q được tính bằng:
d|p,q\=|x,-x,|+|y,- >|
(1.6)Tổng quát trong trường hợp tính khoảng cách Manhattan nhiều chiều
n
d\p.q=2|x-y|
Hạ
Khác với khoảng cách Euclidean, khoảng cách Manhattan không bình
phương giá trị chênh lệch, mà chỉ lấy giá trị tuyệt đối của chúng Điều này có
thể làm cho nó nhạy cảm hơn với sự khác biệt ở một số chiều cụ thể Ứng dụng
của khoảng cách Manhattan trong tương đồng văn bản có thé tương tự như
khoảng cách Euclidean, bao gồm đo lường sự tương đồng giữa các đoạn văn,
phân loại văn bản, hoặc trong các bài toán gom nhóm văn bản dựa trên đặc trưng
13.43 Chỉ mục Jaccard
Giải thuật Chỉ mục Jaccard, hay còn gọi là giải thuật tỉ lệ của giữa phần giao
và phần hợp của 2 tập Giải thuật này là kết quả tính toán độ tương đồng giữa
giao của 2 tập hợp và hợp của 2 tập hợp, được tính toán như sau:
Trang 20Đồ án tốt nghiệp
Nếu tập A và B đều rỗng, mặc định J(A,B) = 1 Giá trị 7ÍA,BÌ luôn thỏa mãn
điều kiện 0 <= J|A,B) <= 1
Độ rời rac Jaccard lại là dé đo tỉ lệ độ rời rac giữa giao và hợp của 2 tập hợp,
Chỉ mục Jaccard là một công cụ hữu ích trong việc đo lường độ tương đồng
văn bản và có thể được tích hợp vào nhiều ứng dụng khác nhau để phân tích,
phân loại, và quản lý thông tin văn bản, so sánh tương đồng văn bản
1.3.5 Một số phương pháp biểu diễn vectơ văn bản
1.3.5.1 Khai niệm
Biểu dién văn ban hay còn gọi là Word embedding là một phương pháp trong
xử lý ngôn ngữ tự nhiên (NLP) để biểu diễn từng từ trong một ngôn ngữ dưới
dạng các vectơ số học có chiều thấp Mục tiêu của word embedding là chuyển
đối từ ngữ thành không gian vecto sao cho các từ có ý nghĩa tương đồng sẽ có
biểu diễn gần nhau Đây là một công cụ đóng vai trò quan trọng đối với hầu hết
các thuật toán, kiến trúc Machine Learning, Deep Learning trong việc xử lý
input ở dang text, do chúng chi có thé hiểu được input ở dang là số, từ đó mới
thực hiện các công việc phân loại, hồi quy
1.3.5.2 Phương pháp TF-IDF
Trong khai pha dữ liệu văn bản, thuật ngữ TFIDF (Term Frequency
-Inverse Document Frequency) là một phương thức thống kê được biết đến rộng
rãi nhất để xác định độ quan trọng của một từ trong đoạn văn bản trong một tập
nhiều đoạn văn bản khác nhau
Thuật toán này thường được sử dụng vì trong ngôn ngữ luôn có những từ xảy
ra thường xuyên với các từ khác Có nghĩa là luôn có một tập các từ mà tần số
xuất hiện, sử dụng nhiều hơn các từ khác, điều này đúng trong bất kỳ ngôn ngữ
nào TF-IDF bao gồm:
e TF: Là tân suât xuât hiện của một từ trong một đoạn văn bản Với những
đoạn văn bản có độ dài khác nhau, sẽ có những từ xuât hiện nhiêu ở những đoạn văn bản dài thay vì những đoạn văn bản ngăn Vì thê, tân suât
Cần Ngọc Bình — B19DCATO13 Trang 13
Trang 21Đồ án tốt nghiệp
này thường được chia cho độ dai của đoạn văn bản như một phương thức
chuẩn hóa [3] TF được tính bởi công thức:
fit,d|
max f |w,d):w € d,
[1.10]
TF |t,dj=
Trong đó thi f(t,d) là số lần xuất hiện từ t trong văn ban d và
max (ƒÍw,dÌ:w ed} là số lần xuất hiện nhiều nhất của một từ bat kỳ trong
văn bản
e IDF: Tính toán độ quan trọng của một từ Khi tính toán TF, mỗi từ đều
quan trọng như nhau, nhưng có một số từ trong tiếng Anh như "is", "ø/”,
"that" xuất hiện khá nhiều nhưng lại rất ít quan trọng Vì vậy, chúng ta
cần một phương thức bù trừ những từ xuất hiện nhiều lần và tăng độ quantrọng của những từ ít xuất hiện những có ý nghĩa đặc biệt cho một số đoạnvăn bản hơn bằng cách tính IDF
„——ÌP
||\de D:t ed||
(1.11) IDFlt,D|=lo
Trong đó thì ¿ DV¿ là tông số văn bản trong tập D, ||d e D:t e đ| là số văn
bản chứa từ nhất định (với điều kiện t xuất hiện trong văn bản d), co sé
logarit trong công thức nay không thay đổi giá trị của 1 từ mà chi thu hẹp
khoảng giá trị của từ đó Vì thay đổi cơ số sẽ dẫn đến việc giá trị của các
từ thay đôi bởi một số nhất định và tỷ lệ giữa các trọng lượng với nhau sẽ
không thay đồi (nói cách khác, thay đối cơ số sẽ không ảnh hưởng đến ty
lệ giữa các giá trị IDF) Tuy nhiên việc thay đổi khoảng giá trị sẽ giúp tỷ
lệ giữa IDF và TF tương đồng dé dùng cho công thức TF-IDF
IDF có ứng dụng trong so sánh độ tương đồng giữa các văn bản và tìm
kiếm thông tin hiệu quả Ví dụ, khi người dùng gửi một truy vấn đến máy
tìm kiếm, hệ thống cần biết từ nao là từ người dùng quan tâm nhất Chang
hạn: truy van của người dùng là "làm thé nào dé sửa máy ủi" Sau khi tách
từ, chúng ta sẽ có tập các từ: làm, thế nào, để, sửa, máy ủi Trong các từnày, "máy ủi" sẽ có IDF cao nhất Hệ thống sẽ lay ra tat cả các văn bản có
chứa từ máy ủi và sau đó mới thực hiện việc đánh giá và so sánh dựa trên
toàn bộ câu truy vấnCần Ngọc Bình — B19DCATO13 Trang 14
Trang 22Đồ án tốt nghiệp
e TF-IDF: Giá trị TF-IDE được xác định bởi công thức
TFIDFIt,d,D]=TE Ít, dì IDF|t, D}
1.12)
Những từ có giá trị TF-IDF cao là những từ xuất hiện nhiều trong văn bản
này, và xuất hiện ít trong các văn bản khác Việc này giúp lọc ra những từphổ biến và giữ lại những từ có giá trị cao
1.3.5.3 Phương pháp Word2Vec
Word2Vec là một mô hình dự đoán học biểu dién vectơ từ thông qua những
từ ngữ cảnh xung quanh nham cải thiện kha năng dự đoán ý nghĩa các từ Vecto
biểu diễn một không gian có số chiều thấp hơn nhiều lần so với số từ trong từ
điển Ý tưởng của Word2Vec đã được sử dụng trong nhiều bài toán với dữ liệu
khác xa với dit liệu ngôn ngữ Có hai cách xây dựng mô hình Word2Vec dé biểu
diễn sự phân tán của từ trong không gian vectơ là CBOW và Skip-gram
Mô hình Skip-gram
Output Layer
Softmax Classifier
Hidden Layer Probability that the word at a
Linear Neurons ry randomly chosen, nearby
Input Vector position is “abandon”
Trang 23Đồ án tốt nghiệp
Hình 1.1: Mô hình phương pháp Skip-gram
Mô hình skip-gam giả định rằng một từ có thé được sử dụng dé sinh ra các từ
xung quanh nó trong một chuỗi văn bản Ví dụ, giả sử chuỗi văn bản là “the”,
“man”, “loves”, “his” và “son” Ta sử dung “loves” làm từ đích trung tâm va đặt
kích thước cửa số ngữ cảnh băng 2 Với từ đích trung tâm “loves”, mô hình
skip-gram quan tâm đến xác suất có điều kiện sinh ra các từ ngữ cảnh (“the”,
“man”, “his” và “son”) nam trong khoảng cách không quá 2 từ
P( the,man, his,son | loves)
Gia định rằng, với từ đích trung tâm cho trước, các từ ngữ cảnh được sinh ra
độc lập với nhau Trong trường hợp này, công thức trên có thể được viết lại
thành
Pithe | loves): P(man | loves) - P (his | loves) - P (son | loves)
the man his son
O
loves
Hình 1.2: Mô tả qua trình sinh ra các từ xung quanh của mô hình
Skip-gram
Trong mô hình skip-gam, mỗi từ được biểu diễn bang hai vecto d-chiều dé
tính xác suất có điều kiện Giả sử chỉ số của một từ trong từ điển là i, vectơ của
từ được biểu diễn là Vie R” khi từ này là từ đích trung tâm và là UE R“ khi từ
này là một từ ngữ cảnh Gọi c và o lần lượt là chỉ số của từ đích trung tâm w,và
từ ngữ cảnh w, trong từ điển Có thể thu được xác suất có điều kiện sinh ra từ
ngữ cảnh cho một từ đích trung tâm cho trước bằng phép toán softmax trên tích
vô hướng của vecto:
Cần Ngọc Bình — B19DCATO13 Trang l6
Trang 24the man his son
Hình 1.3: Mô tả qua trình sinh ra các từ cua mô hình COW
Mô hình CBOW tương tự như mô hình skip-gram Khác biệt lớn nhất là mô
hình CBOW giả định rằng từ đích trung tâm được tạo ra dựa trên các từ ngữ
cảnh phía trước và sau nó trong một chuỗi văn bản Với cùng một chuỗi văn bản
gồm các từ “the”, “man”, “loves”, “his” và “son”, trong đó “love” là từ đích
trung tâm, với kích thước cửa số ngữ cảnh bằng 2, mô hình CBOW quan tâm
đến xác suất có điều kiện để sinh ra từ đích “love” dựa trên các từ ngữ cảnh
“the”, “man”, “his” và “son” là
P(loves V the, man, his , son)
Cần Ngọc Bình — B19DCATO13 Trang 17
Trang 251.3.5.4 Phương pháp Doc2Vec
Mô hình Doc2Vec, còn được gọi là Paragraph Vector, là một phương pháp
trong lĩnh vực xử lý ngôn ngữ tự nhiên để nhúng văn bản thành các không gian
vectơ Mô hình này là một mở rộng của Word2Vec coi văn bản như là một từ
được biểu diễn dạng I-hot và được embedded vào không gian vectơ Cụ thể,
Doc2Vec sử dụng hai phương pháp chính là: PV-DM (Distributed Memory) va
PV-DBOW (Distributed Bag of Words) [4]
M6 hinh PV-DM
Mô hình PV-DM (Distributed Memory) xem một paragraph là một từ, sau đó
nối từ này vào tập các từ trong câu Trong quá trình training, vectơ của
paragraph và vectơ từ đều được update
Cần Ngọc Bình — B19DCATO13 Trang 18
Trang 26Mô hình PV-DBOW (Distributed Bag of Words) đơn giản là không quan tâm
thứ tự các từ, training nhanh hơn Mô hình chèn thêm 1 "word" là Paragraph-ID.
Trong đó, Paragraph-ID nay đại diện cho văn bản được training Sau khi training
xong có thê hiểu các vectơ Paragraph-ID này là vectơ embedded của các văn
Hình 1.4 Mô tả mô hình PV-DBOW
Mô hình Doc2Vec là một công cụ mạnh mẽ trong xử lý ngôn ngữ tự nhiên,
giúp biểu diễn văn bản dưới dang vectơ nằm trong không gian nhiều chiều
Đánh giá hiệu suất của mô hình này thường được thực hiện thông qua các
phương tiện đánh giá như độ chính xác, độ phân loại, hoặc đo lường tương tự
văn bản Các điểm mạnh của Doc2Vec bao gồm khả năng biểu diễn ngữ cảnh
Cần Ngọc Bình — B19DCATO13 Trang 19
Trang 27Đồ án tốt nghiệp
của văn bản, sự linh hoạt trong việc xử lý dữ liệu không giám sát và khả năng
học các biêu diễn ngữ nghĩa.
Tuy nhiên, như mọi mô hình máy học, Doc2Vec cũng đối mặt với một số
thách thức Đôi khi, việc đánh giá chất lượng biểu diễn không phan ánh day đủ
khả năng của mô hình trong các ứng dụng thực tế Cũng cần chú ý đến kích
thước của tập dữ liệu và thời gian huấn luyện, vì những yếu tổ này có thé ảnh
hưởng đến hiệu suất cuối cùng của mô hình
1.4 Một số nghiên cứu có liên quan
1.4.1 Nghiên cứu về độ chính xác của các thuật toán so sánh tương đồng văn
bản
Nghiên cứu được trích trong tạp chí “The performance of text similarity
algorithms [5]” trên Tạp chí quốc tế về những tiến bộ trong tin học thông minh
năm 2018 Nghiên cứu này đã khảo sát, đo lường độ chính xác của các thuật
toán tương đồng văn bản dựa trên 4 loại nhóm văn bản chính: Dựa trên chuỗi
(String-based), Dựa trên ngữ liệu (Corpus-based), Dựa trên kiến thức
(Knowledge-based), và Tương đồng kết hợp (Hybrid similarities)
Các thuật toán phé biến và quen thuộc nhất trong mỗi nhóm cũng đã được đánh
giá với 3 cặp từ Pair 1 ( “book”, “cook”), Pair 2 (Scar”, “wheel”), Pair 3
33.6
(“antique”, “ancient”) đã cho ra kết quả như sau
Cần Ngọc Bình — B19DCATO13 Trang 20
Trang 28Hình 1.6 Kết quả do lường độ tương dong văn bản của một số thuật toán
Kết quả của nghiên cứu cho thấy răng, với mục đích đo lường văn bản tập trung
vào sự tương đồng ngữ vựng băng cách bỏ qua nội dung ý nghĩa, phương pháp
tương đồng ngữ vựng là phù hợp Những đo lường này có thé được sử dung dé
xác định sự trùng lặp hoặc vi phạm bản quyền mà không cần quan tâm đến ngữ
cảnh của tài liệu Phương pháp tương đồng chuỗi chủ yếu là độc lập với ngôn
ngữ, nên chúng hoạt động tốt cho các ngôn ngữ khác nhau trên thế giới Phương
pháp tiếp cận ngữ nghĩa có vẻ mang lại sự thông minh trong đo lường sự tương
đồng Do lường này rất thích hợp dé tìm kiếm văn bản hoặc tài liệu thực sự
tương đồng và phù hợp với bối cảnh nội dung Tuy nhiên, sự tương đồng ngữ
nghĩa thường phụ thuộc vào ngôn ngữ và lĩnh vực cụ thể, nên chúng không áp
dụng cho tất cả các ngôn ngữ Trở lại các phương pháp đo lường sự tương đồng
văn bản, có thé thay rằng sự tương đồng ngữ nghĩa là rất hợp ly dé tìm kiếm sự
tương đồng giữa các tài liệu
1.4.2 Nghiên cứu tong quan về sự phát triển của các phương pháp đo lường
tương đồng văn bản
Nghiên cứu được trích trong tạp chi “Measuring Sentences Similarity: A
Survey [6]” trên Tap chi Khoa học va Công nghệ An Độ năm 2019 Mục dich
của nghiên cứu là tạo ra một tổng quan về sự phát trién của các phương pháp đo
lường sự tương đồng văn bản Bao gồm các phương pháp biểu diễn văn bản va
các phương pháp tính toán độ tương đồng
Cần Ngọc Bình — B19DCATO13 Trang 21
Trang 29tương dong van ban
Graph neural network
Knowledge graph
MatchPyramid
Nghiên cứu này thảo luận về ưu và nhược điểm của mỗi phương pháp Các
phương pháp dựa trên chuỗi văn bản xem xét đến ý nghĩa thực tế của văn bản;
tuy nhiên, chúng không linh hoạt qua các lĩnh vực và ngôn ngữ khác nhau.
Phương pháp dựa trên ngữ liệu có nền tảng thống kê và có thể triển khai trên
nhiều ngôn ngữ, nhưng chúng không xem xét đến ý nghĩa thực tế của văn bản
Các phương pháp dựa trên so khớp văn bản ngữ nghĩa có hiệu suất tốt, nhưng
chúng yêu cầu tài nguyên tính toán cao và thiếu tính giải thích Phương pháp
Trang 30Đồ án tốt nghiệp
dựa trên cấu trúc đồ thị cần phải dựa vào việc học biểu dién dé thị tốt dé có hiệu
suất tốt Rõ rang từ cuộc khảo sát rằng mỗi phương pháp đều có nhược điểm và
ưu điểm của mình, và khó khăn khi chọn một mô hình tốt nhất; tuy nhiên, các
phương pháp phổ biến nhất dựa trên biéu diễn văn ban và khoảng cách văn ban
phù hợp đã cho thấy kết quả tích cực hơn so với các mô hình độc lập khác Cuộc
khảo sat này sẽ cung cấp một nền tảng tốt cho các nhà nghiên cứu dé tìm một
phương pháp mới dé đo lường sự tương đồng ngữ nghĩa
1.5 Kết chương
Phát hiện tương đồng văn bản là một lĩnh vực đầy thách thức Chương 1 đã
nêu ra những khái niệm co bản, một số phương pháp dé xác định độ tương đồng
văn bản hiện nay và ứng dụng của nó Qua đó đã khăng định tầm quan trọng của
của phát hiện tương đồng văn bản trong các lĩnh vực trong đời sống hăng ngày
Sang chương 2, chúng ta cùng di tìm hiêu vê học máy, học sâu và mô hình đê
giải quyét vân dé trên
Cần Ngọc Bình — B19DCATO13 Trang 23
Trang 31Đồ án tốt nghiệp
CHUONG 2: PHÁT HIỆN ĐỘ TƯƠNG DONG VĂN BẢN SỬ
DỤNG HỌC SÂU
2.1 Tổng quan về học máy và học sâu
2.1.1 Khái quát về học máy
Học máy là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu
và xây dựng các kĩ thuật cho phép các hệ thống "học" tự động từ dit liệu dé giải
quyết những van đề cụ thé Các thuật toán học máy xây dựng một mô hình dựa
trên dữ liệu mẫu, được gọi là dữ liệu huấn luyện, dé đưa ra dự đoán hoặc quyết
định mà không cần được lập trình chi tiết về việc đưa ra dự đoán hoặc quyết
định này Ví dụ như các máy có thể "học" cách phân loại thư điện tử xem có
phải thư rác hay không và tự động xếp thư vào thư mục tương ứng
Học máy là một thành phần quan trọng của lĩnh vực khoa học dữ liệu đang
phát triển Thông qua việc sử dụng phương pháp thống kê, các thuật toán được
đào tạo dé phân loại hoặc dự đoán và khám phá những thông tin chi tiết trong
các dự án khai thác đữ liệu Những thông tin chỉ tiết này hỗ trợ, thúc đây việc
đưa ra quyết định trong các ứng dụng, công cụ hỗ trợ doanh nghiệp, người dùng
Khi khối lượng dữ liệu tiếp tục mở rộng và phát triển, khả năng dự đoán, phân
tích chính xác của máy học sẽ tăng lên.
Do cần có nguồn dữ liệu cực lớn dé “học”, máy học vẫn cần có sự tham gia
của con người trong việc tìm hiểu đữ liệu cơ sở và lựa chọn các kĩ thuật phù hợp
dé phân tích thông tin, đánh giá mô hình Đồng thời, trước khi sử dung, dit liệu
phải được làm sạch, không có sai lệch và không có đữ liệu giả Dựa trên các tiêu
chí khác nhau, người ta có thé phân loại các thuật toán Học máy theo nhiều cách
khác nhau Chăng hạn, dựa vào vấn đề, nhiệm vụ cần giải quyết của thuật toán,
người ta phân loại các thuật toán Học máy thành ba loại:
e Hỏi quy (Regression): Giải quyết bài toán dự đoán giá trị một đại lượng
nào đó dựa vào giá trị của các đại lượng liên quan Ví dụ, dựa vào các đặc
điểm như diện tích, số phòng, khoảng cách tới trung tam dé dự đoán giá
trị căn nhà.
Cần Ngọc Bình — B19DCATO13 Trang 24
Trang 32Đồ án tốt nghiệp
e Phân lớp (Classification): Giải quyết các bài toán nhận dang xem một đối
tượng thuộc lớp nào trong số các lớp cho trước Ví dụ, bài toán nhận diệnchữ viết, bài toán phân loại email thuộc các thuật toán phân lớp
¢ Phân cụm (Clustering): Y tưởng cơ bản giống với các thuật toán phân lớp,
sự khác biệt là ở chỗ, trong các bài toán phân cụm, các cụm chưa được
xác định trước và thuật toán phải tự khám phá và phân cụm dữ liệu
Theo phân nhóm dựa theo phương thức hoc, Machine learning thường được
chia thành 4 loại:
® Hoc có giám sat (Supervised learning): thuật toán học nhận một số thí dụ
luyện tập và nhãn thí dụ tương ứng để xây dựng mô hình dự đoán Sử
dụng khi muốn nhận dự đoán một kết quả đầu ra từ đữ liệu đầu vào và cócác cặp dữ liệu (đầu vao/dau ra) tương ứng Dé xây dựng mô hình học cógiám sát thường phải có sự nỗ lực từ con người dé gan nhãn cho tập dữ
liệu.
¢ Học không giám sát (Unsupervised learning): Không bat kì nhãn nao
được cung cấp cho thuật toán học, thuật toán sẽ đi tìm cấu trúc bên đưới
dữ liệu Mảng này gồm nhiều bài toán khác khác nhau như: phân cụm (tự
gán nhãn cho các cụ dữ liệu có cau trúc tương tự nhau, giảm chiều dữ liệu
dé hồ trợ các hình thức học khác )
® Hoc bán giám sát (Semi-Supervised Learning): 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
¢ Học tăng cường (Reinforcement learning): di liệu huấn luyện sẽ được
thuật toán học xây dựng mô hình, mô hình này dùng dé dự đoán và nhậnphản hồi từ môi trường từ đó tự động cải thiện mô hình Một số bài toán
tiêu biểu cho hình thức học tăng cường là là công nghệ xe tự lái, tự độngchơi game Học tăng cường không có các cặp dữ liệu vào/kết quả đúng,
các hành động gần tối ưu cũng không được đánh giá đúng sai một cách
tường minh.
Học máy có thê giúp dự đoán xu hướng và phân tích dữ liệu để đưa ra quyết
định kinh doanh thông minh Nó cũng giúp tối ưu hóa quy trình sản xuất và tăng
cường hiệu suất trong nhiều lĩnh vực Điều này còn giúp chúng ta trong y tế, từ
chan đoán bệnh đến dự đoán đợt dịch bệnh Ngoài ra, học máy còn đóng vai trò
Cần Ngọc Bình — B19DCATO13 Trang 25
Trang 33Đồ án tốt nghiệp
quan trọng trong các ứng dụng trong thế giới thực, như nhận dạng giọng nói, xử
lý ngôn ngữ tự nhiên và thậm chí tạo ra nghệ thuật sáng tạo
2.1.2 Khái quát về học sâu
Học sâu là một phương thức trong lĩnh vực trí tuệ nhân tạo (AI), được sử
dung dé dạy máy tinh xử ly dit liệu theo cách được lấy cảm hứng từ bộ não con
người Mô hình học sâu có thể nhận diện nhiều hình mẫu phức tạp trong hình
ảnh, văn bản, âm thanh và các dữ liệu khác để tạo ra thông tin chuyên sâu và dự
đoán chính xác Chúng ta có thé sử dụng các phương pháp học sâu dé tự động
hóa các tác vụ thường đòi hỏi trí tuệ con người, chang hạn như mô tả hình anh
hoặc chép lời một tập tin âm thanh.
Các thuật toán học sâu dựa trên các đại diện phân phối Giả định tiềm ấn
dang sau cac dai dién phan phối là các dữ liệu được quan sát là được tạo ra bởi
sự tương tác của các yếu tố được tổ chức theo lớp Học sâu thêm giả định rang
các lớp của các yếu tố này tương ứng với các mức độ trừu tượng hay theo thành
phan Các con số khác nhau của các lớp và kích thước của lớp có thể được sử
dụng để quy định các lượng trừu tượng khác Học sâu loại bỏ một số tiền xử lý
dữ liệu thường liên quan đến học máy Các thuật toán này có thê nhập và xử lý
dữ liệu phi cấu trúc hoặc không được gán nhãn, chăng hạn như văn bản, hình
ảnh, âm thanh, đồng thời thuật toán này tự động trích xuất đặc trưng, loại bỏ một
số phụ thuộc vào con người Còn trong học máy, các tính năng này thường được
thiết lập thủ công bởi con người Trong khi đối với học máy, thường sử dụng dit
liệu có cấu trúc, được gán nhãn và đưa ra dự đoán Điều này có nghĩa là nó
không sử dụng dữ liệu phi cấu trúc, nó chỉ có nghĩa là nêu có, nó thường trải qua
một số quá trình tiền xử lý dé sap xép nó thành một định dang có cau trúc Học
sâu khai thác ý tưởng thứ bậc các yếu tố giải thích này ở cấp cao hơn, những
khái niệm trừu tượng hơn được học từ các cấp độ thấp hơn Những kiến trúc này
thường được xây dựng với một phương pháp lớp chồng lớp tham lam Học sâu
giúp dé tháo gỡ những khái niệm trừu tượng này va chọn ra những đặc điểm can
thiết cho việc học
Học sâu thường dựa trên mạng thần kinh nhân tạo (neural network) kết hợp
với việc học biểu diễn đặc trưng, việc học này có thể có giám sát, nửa giám sát
hoặc không giám sát Mạng thần kinh nhân tạo được lẫy cảm hứng từ việc xử lý
thông tin và các nút giao tiếp phân tán trong hệ sinh học Nó có nhiều khác biệt
Cần Ngọc Bình — B19DCATO13 Trang 26
Trang 34Đồ án tốt nghiệp
so với não sinh hoc Cụ thé, mạng thần kinh nhân tạo thường có tính tĩnh và
mang tính biểu tượng, trong khi não bộ của hầu hết các sinh vật sống có tính
linh hoạt Mô hình neural network sâu thường bao gồm các lớp đầu vào, lớp ân
và lớp đầu ra Trong quá trình đào tạo, mô hình sẽ điều chỉnh các trọng số của
các kết nối giữa các lớp dé tối ưu hóa hiệu suất trên tập dir liệu huấn luyện Các
mô hình này có khả năng học các đặc trưng phức tạp và biéu dién dir liệu một
cách tự động, giúp chúng ta giải quyết nhiều vẫn đề trong thế giới thực
Học sâu có nhiều ứng dụng quan trọng và đa dạng trong nhiều lĩnh vực khác
nhau Các ứng dụng học sâu trong thế giới thực là một phần trong cuộc sống
hàng ngày của chúng ta Hầu hết các trường hợp, chúng được tích hợp sâu trong
các sản phẩm, dịch vụ nên người dùng không biết về quá trình xử lý dữ liệu
phức tạp đang diễn ra sâu bên trong.
2.1.3 Một số thuật toán học sâu
2.1.3.1 Mô hình Transformer
Mô hình transformer là một kiến trúc mạng neuron được giới thiệu bởi
Vaswani trong bai báo có tiêu dé "Attention is All You Need," được cong bố
vào năm 2017 Đây là một kiến trúc quan trọng trong lĩnh vực xử lý ngôn ngữ tự
nhiên va thị giác máy tinh.
Đặc điểm quan trọng của mô hình transformer là sự sử dụng cơ chế chú ý
(attention mechanism) dé xử lý thông tin ngữ cảnh trong dữ liệu đầu vào Trong
truyền thống, các mô hình trước đó thường sử dụng các lớp kết nối chuỗi hoặc
kết nối đồng thời, nhưng transformer thay thế chúng băng cơ chế chú ý Giống
như các mạng thần kinh hồi quy (recurrent neural network - RNN), các
Transformer được thiết kế để xử lý dữ liệu tuần tự, chăng hạn như ngôn ngữ tự
nhiên, cho các tác vụ như dịch máy thống kê hay tóm tắt tự động Tuy nhiên,
khác với RNN, các Transformer không yêu cầu dữ liệu tuần tự được xử lý theo
thứ tự Ví dụ, nếu dữ liệu đầu vào là một câu ngôn ngữ tự nhiên, Transformer
không cần phải xử lý phần đầu câu trước phần cuối câu Do tính năng này,
Transformer cho phép nhiều phép tính toán song song và vì vậy giảm thời gian
huấn luyện Trong kiến trúc của mình, Transformer chứa 6 Encoder và 6
Decoder Mỗi Encoder chứa hai lớp: Self-attention và mạng truyền thăng (FNN)
[7] Kiến trúc của transformer sẽ được trình bay theo từng thành phan cụ thé như
sau:
Cần Ngoc Bình — B19DCATO13 Trang 27
Trang 35Hình 2.1 Kiến trúc mô hình Transformer
Position Encoding (PE)
Bởi vi transformer không có các mạng hồi tiếp hay mạng tích chập nên nó sẽ
không biết được thứ tự của các token đầu vao Vì vậy, cần phải có cách nào đó
để cho mô hình biết được thông tin này Đó chính là nhiệm vụ của positional
encoding Quá trình positional encoding được thực hiện theo công thức sau:
embeddings có độ dai Fino Sau đó ta cộng PE vecto va Embedding vectơ
Cần Ngọc Bình — B19DCATO13 Trang 28
Trang 36Đồ án tốt nghiệp
Positional Encoding Index ; ‘
Sequence of token, Matrix with =4, nz100
Positional Encoding Matrix for the sequence ‘I am a robot’
Hình 2.2 Mô ta qua trình Positional Encoding
Encoder
Encoder của mô hình transformer có thé bao gồm nhiều encoder layer tượng
tự nhau Mỗi encoder layer của transformer lại bao gồm 2 thành phan chính là
multi head attention va feedforward network, ngoài ra còn có cả skip connection
va normalization layer Trong các thành phan chính nay, multi-head attention là
một layer mới được giới thiệu trong mô hình, và chính nó tạo nên sự khác biệt
giữa mô hình LSTM va mô hình Transformer.
Encoder đầu tiên sẽ nhận ma trận biểu diễn của các từ đã được cộng với
thông tin vi trí thông qua positional encoding Sau đó, ma trận này sẽ được xử lý
bởi Multi Head Attention Multi Head Attention thật chất là self-attention,
nhưng mà dé mô hình có thé có chú ý nhiều pattern khác nhau, mô hình đã sử
dụng nhiều self-attention
Attention
Một hàm chú ý (Attention) có thể được mô tả như một ánh xạ từ một truy
vẫn và một tập hợp các cặp khóa(key)-giá trị(value) thành một đầu ra, trong đó
truy vấn, các khóa, gia tri va dau ra đều là các vectơ Dau ra được tinh toán như
một tông có trọng số của các giá trị, trong đó trọng số được gan cho mỗi giá trị
được tính toán bằng một hàm tương thích của truy van với khóa tương ứng Có 2
Cần Ngọc Bình — B19DCATO13 Trang 29
Trang 37Đồ án tốt nghiệp
hàm chú ý quan trọng trong mô hình transformer là Scaled Dot-Product
Attention và Multi-head Attention
Scaled Dot-Product Attention Multi-Head Attention
Scaled Dot-Product
Attention 4
Hình 2.3 So đô ham Attention trong mô hình Transformer
Scaled Dot-Product Attention
| kicked the ball
Hình 2.4 Mô tả qua trình Self-Attention
Scaled Dot-Product Attention hay còn gọi là Self-Attention đóng vai trò như
một cơ chế giúp Transformers hiểu được sự liên quan giữa các từ trong một câu
Vi dụ như từ “kicked” trong câu “I kicked the ball” liên quan như thế nào đến
các từ khác? Rõ rang nó liên quan mật thiết đến từ “I” (chủ ngữ), “kicked” là
Cần Ngọc Bình — B19DCATO13 Trang 30