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

Luận văn thạc sĩ Khoa học máy tính: Hệ thống trích xuất biểu thức toán học trên ảnh tài liệu

131 0 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

Nội dung

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA -

LÊ ANH DUY

HỆ THỐNG TRÍCH XUẤT BIỂU THỨCTOÁN HỌC TRÊN ẢNH TÀI LIỆU

Chuyên ngành: Khoa học máy tínhMã số: 8480101

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 7 năm 2023

Trang 2

Cán bộ hướng dẫn khoa học : TS Trần Tuấn Anh

(Ghi rõ họ, tên, học hàm, học vị và chữ ký)Cán bộ chấm nhận xét 1 : TS Trịnh Tấn Đạt

(Ghi rõ họ, tên, học hàm, học vị và chữ ký)Cán bộ chấm nhận xét 2 : TS Tôn Long Phước

(Ghi rõ họ, tên, học hàm, học vị và chữ ký)

Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp HCMngày 11 tháng 7 năm 2023

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)1 PGS TS Trần Ngọc Thịnh - Chủ tịch hội đồng

2 TS Nguyễn Tiến Thịnh - Thư ký3 TS Trịnh Tấn Đạt - Phản biện 14 TS Tôn Long Phước - Phản biện 25 TS Trần Tuấn Anh - Uỷ viên

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành saukhi luận văn đã được sửa chữa (nếu có).

CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH

Trang 3

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAMĐộc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ

I TÊN ĐỀ TÀI:

- Tiếng anh: A system for extracting mathematical expressions in document images- Tiếng việt: Hệ thống trích xuất biểu thức toán học trên ảnh tài liệu

II NHIỆM VỤ VÀ NỘI DUNG:

- Nghiên cứu, đề xuất phương pháp mới cho bài toán nhận diện biểu thức toán học- Thí nghiệm và đánh giá kết quả của phương pháp đề xuất

- Xây dựng hệ thống trích xuất biểu thức toán học trên ảnh tài liệu

V.CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên): TS Trần Tuấn Anh

TRƯỞNG KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH(Họ tên và chữ ký)

PGS.TS Quản Thành Thơ

Ghi chú: Học viên phải đóng tờ nhiệm vụ này vào trang đầu tiên của tập thuyết minh LV

Trang 4

Để hoàn thành đề cương luận văn tốt nghiệp này, em đã nhận được sự hỗ trợtừ rất nhiều phía Đầu tiên và quan trọng nhất, em xin gửi lời cảm ơn chân thànhđến giảng viên hướng dẫn trực tiếp của em, Tiến sĩ Trần Tuấn Anh Thầy là ngườiđịnh hướng chính, cung cấp tài liệu cũng như theo dõi quá trình thực hiện đề tài vàhỗ trợ khi em gặp khó khăn Quá trình làm việc với thầy em đã học hỏi được rấtnhiều điều từ kiến thức chuyên môn tới phong cách làm việc và nghiên cứu khoahọc Những kinh nghiệm học được từ thầy là hành trang vô cùng quý giá trên chặngđường sự nghiệp sắp tới của em.

Em cũng vô cùng biết ơn sự tận tình dạy dỗ, giúp đỡ của quý thầy cô trongkhoa Khoa học & Kỹ thuật Máy tính nói riêng cũng như trường Đại học Bách khoaTP Hồ Chí Minh nói chung Những kiến thức nhận được từ quý thầy cô là vô cùngquý giá và bổ ích, hỗ trợ rất lớn cho em để hoàn thành luận văn tốt nghiệp này.

Em/mình cũng xin gửi lời cảm ơn chân thành tới các đồng nghiệp trong teamOCR Trung tâm Không gian mạng Viettel, những lời khuyên và ý kiến đóng gópcủa mọi người đã giúp ích rất nhiều cho em/mình trong quá trình thực hiện lụânvăn này.

Con cũng xin gửi lời cảm ơn đến ba mẹ đã hi sinh vì con rất nhiều, cảm ơn bamẹ đã luôn tin tưởng vào quyết định của con, ba mẹ là đông lực lớn nhất để concố gắng đến ngày hôm nay Và cuối cùng, anh cũng muốn gửi lời cảm ơn tới GiaThuận, cảm ơn em đã luôn bên anh, là chỗ dựa tinh thần những lúc anh cảm thấymệt mỏi, là nguồn động viên để anh tiếp tục cố gắng những lúc anh muốn từ bỏ.

Trang 5

Tóm tắt

Trích xuất biểu thức toán học là môt bài toán có nhiều ứng dụng trong quátrình chuyển đổi số Để hiện thực một hệ thống trích xuất biểu thức toán học hoànthiện cần giải quyết hai bài toán con bao gồm bài toán phát hiện vùng biểu thứctoán học và bài toán nhận diện biểu thức toán học.

Trong hai bài toán trên, nhận diện biểu thức toán học được xem là một bàitoán khó và thực tế hiện nay các phương pháp cho bài toán này vẫn còn nhiều mặthạn chế cần phải cải thiện Mục tiêu của bài toán này là xác định nội dung củabiểu thức toán và chuyển đổi từ dạng hình ảnh có thể là sang dạng kĩ thuật số cóthể lưu trữ trên thiết bị điện tử Bài toán có tính ứng dụng đặc biệt cao trong bốicảnh chuyển đổi số hiện nay nhất là trong hai lĩnh vực khoa học và giáo dục Chínhbởi lẽ đó, nhận diện biểu thực toán học dần nhận được sự quan tâm ngày càng caotừ giới nghiên cứu trí tuệ nhân tạo trên thế giới trong những năm gần đây.

Trong luận văn này, mục tiêu nhóm hướng tới là nghiên cứu xây dựng một môhình hiệu quả cho bài toán MER, từ đó kết hợp cùng với mô hình phát hiện vùngbiểu thức được công bố bởi các nghiên cứu trước đó, để hoàn thiện một hệ thốngtrích xuất biểu thức toán học hoàn chỉnh.

Nhóm đã đề xuất một mô hình dựa trên kiến trúc Seq2seq trong đó sử dụngkiến trúc Vision Transformer cho bộ mô hình hóa ngữ cảnh Các thí nghiệm trêntập dữ liệu công khai đã khẳng định tính hiệu quả của phương pháp được nhóm đềxuất Bên cạnh đó, nhận thấy việc hạn chế về mặt dữ liệu khi nghiên cứu bài toánMER đã thúc đẩy nhóm nghiên cứu và xây dựng một bộ dữ liệu mới gọi là LIMDvới hi vọng có thể thay thế được bộ dữ liệu công khai hiện tại Cuối cùng, nhómtiến hành việc hoàn thiện hệ thống trích xuất bằng cách kết hợp mô hình HybridVision Transformer cùng mô hình ScanSSD [1] là một mô hình phát hiện vùng biểuthức toán học Toàn bộ mã nguồn và bộ dữ liệu sẽ được công khai tại Github1.

1https://github.com/duylebkHCM/doc2tex

Trang 6

Extracting mathematical expressions is a problem with many applications inthe digitization process To implement a complete mathematical expression extrac-tion system, two subproblems need to be solved, including the problem of detectingmathematical expression regions and the problem of recognizing mathematical ex-pressions.

In the two aforementioned problems, recognizing mathematical expressions isconsidered a difficult task, and currently, the existing methods for this problemstill have many limitations that need to be improved The goal of this problem isto determine the content of the mathematical expression and convert it from animage format into a digital form that can be stored on electronic devices Thisproblem is highly applicable, especially in the context of digital transformation,particularly in the fields of science and education Therefore, the recognition ofmathematical expressions has been receiving increasing attention from the globalartificial intelligence research community in recent years.

In this thesis, the objective of us is to research and develop an efficient model forthe MER problem The aim is to combine this model with the previously publishedmodel for detecting mathematical expressions in order to complete a comprehensivesystem for extracting mathematical expressions.

We proposed a model based on the Seq2seq architecture, incorporating theVision Transformer architecture for contextual modeling Experiments on publicdatasets have confirmed the effectiveness of the proposed method Additionally, theteam recognized the data limitations in the MER research and therefore createda new dataset called LIMD with the hope of replacing the current public dataset.Finally, the team completed the extraction system by combining the Hybrid VisionTransformer model with the ScanSSD model [1] which is a mathematical detection

Trang 7

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

model The entire source code and dataset will be publicly available on GitHub2.

2https://github.com/duylebkHCM/doc2tex

Trang 8

Học viên cam đoan mọi thông tin được trình bày trong báo cáo, cũng như mãnguồn là do học viên tự thực hiện - trừ các kiến thức tham khảo có trích dẫn cũngnhư mã nguồn mẫu do chính nhà sản xuất cung cấp, hoàn toàn không sao chép từbất cứ nguồn nào khác Nếu lời cam đoan trái với sự thật, học viên xin chịu mọitrách nhiệm trước Ban Giám Hiệu Nhà Trường và Ban Chủ Nhiệm Khoa.

Học viên thực hiện đề tài

Lê Anh Duy

Trang 9

2.1.1 Sơ lược về TeX, LaTeX 5

2.1.2 Một số cú pháp toán học cơ bản trong LaTeX 6

2.2 Bài toán dự đoán chuỗi 7

2.2.1 Một số bài toán điển hình 7

2.2.2 Các lí thuyết liên quan 8

3 Khảo sát các nghiên cứu liên quan 163.1 Tổng quan về các hướng nghiên cứu 16

3.2 Các nghiên cứu dựa trên kiến trúc Seq2seq 18

3.2.1 What You Get Is What You See: A Visual Markup Decompiler 193.2.2 An Improved Approach Based on CNN-RNNs for Mathemat-ical Expression Recognition 21

3.2.3 Translating math formula images to LaTeX sequences usingdeep neural networks with sequence-level training 23

3.2.4 Global Context-Based Network with Transformer for Image2latex 263.3 Kết luận 30

4 Hybric Vision Transformer cho bài toán Nhận diện biểu thứctoán học (MER) 314.1 Vấn đề mô hình hóa thông tin ngữ cảnh trong không gian hai chiều 324.2 Vấn đề sinh thừa (over-parsing) và sinh thiếu (under-parsing) 34

4.3 Mô hình hóa bài toán 35

Trang 10

4.4 Ý tưởng chính 36

4.5 Thiết kế chi tiết 39

4.5.1 Hybrid Vision Transformer là một bộ mã hóa 39

4.5.2 Khối tập trung sử dụng độ phủ (Coverage Attention) là mộtbộ giải mã 48

4.6 Kết luận 49

5 Thí nghiệm và đánh giá 515.1 Khảo sát tập dữ liệu 51

5.2 Phương pháp huấn luyện, dự đoán 52

5.2.1 Quá trình huấn luyện 52

5.2.2 Giải thuật Beam Search 53

5.2.3 Quá trình dự đoán 55

5.2.4 Tăng cường dữ liệu cho ảnh 55

5.2.5 Xử lý dữ liệu đầu vào 57

5.2.6 Chi tiết về độ đo 58

5.3 Thí nghiệm trên bộ dữ liệu IM2LATEX-100K 60

6.2 Quá trình xây dựng bộ cơ sở dữ liệu 70

6.2.1 Thu thập dữ liệu LaTeX 71

Trang 11

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

7 Hệ thống trích xuất biểu thức toán học trên ảnh tài liệu 85

7.1 Tổng quan thiết kế hệ thống 85

7.1.1 Luồng hoạt động của hệ thống 86

7.1.2 Mô hình phát hiện vùng biểu thức toán học 86

7.2 Chi tiết hiện thực hệ thống 89

7.2.1 Ngôn ngữ và thư viện hỗ trợ 89

7.2.2 Công cụ, phần mềm hỗ trợ và triển khai 89

7.2.3 Giao diện và các tính năng của hệ thống 90

7.3 Kết quả demo 94

7.3.1 Tình huống 1-Ảnh chỉ chứa biểu thức toán học 94

7.3.2 Tình huống 2-Ảnh là một trang tài liệu hoàn chỉnh 95

7.3.3 Tình huống 3-File PDF nhiều trang 99

7.4 Đánh giá hệ thống 100

7.5 Kết luận 101

8 Tổng kết 1028.1 Kết quả đạt được 102

8.2 Hạn chế 103

8.3 Kế hoạch phát triển 103

Trang 12

1.1 Công thức toán trong các văn bản khoa học 2

1.2 Bài toán nhận diện biểu thức toán học (MER) 3

2.1 Quy trình tính toán giá trị đầu ra của một lớp tích chập [2] 92.2 Cấu trúc của một lớp RNN trước và sau khi duỗi ra [3] 9

2.3 Cấu trúc của một cell LSTM [3] 10

2.4 Quy trình sinh ra kết quả trong bài toán dịch máy [4] 12

2.5 Scaled Dot-Product Attention [5] 13

2.6 Multi-Head Self-Attention [5] 14

2.7 Tổng quan mô hình Transformer [5] 15

3.1 Cấu trúc của mô hình WYGIWWYS [6] 20

3.2 Bảng đánh giá kết quả của mô hình so với các phương phápthông qua các độ đo [6] 21

3.3 Kiến trúc mô hình Double Attention [7] 22

3.4 Cấu hình backbone của mô hình Double Attention [7] 22

3.5 Kết quả thí nghiệm trên tập IM2LATEX-100K [7] 23

3.6 Kết quả thí nghiệm trên tập IM2LATEX-100K [8] 24

3.7 Cấu hình chi tiết của bộ mã hóa CNN [8] 24

3.8 Kết cấu của kiến trúc BiLSTM chồng lấp với lớp tập trung[8] 25

3.9 Kết quả thí nghiệm và so sánh kết quả giữa MI2LATEX vớicác phương pháp khác [8] 26

3.10 Toàn bộ kiến trúc của mô hình [9] 27

3.11 Kiến trúc ResNet được sử dụng [9] 28

3.12 Kiến trúc khối ngữ cảnh toàn cục được sử dụng [9] 29

3.13 So sánh giữa các mô hình khác nhau trên IM2LATEX-100K[9] 29

Trang 13

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

4.1 Sự khác nhau về cấu trúc không gian giữa chữ viết tay vàbiểu thức toán học 334.2 Mối liên kết trong không gian hai chiều giữa một kí tự với

các kí tự còn lại 334.3 Các vec-tơ đặc trưng được mô hình bằng khối BiLSTM 344.4 Sự tương đồng về mặt thông tin giữa hai vùng xanh và đỏ

có thể khiến cơ chế tập trung đưa ra dự đoán sai dẫn đếnviệc những kí tự đã được sinh trong quá khứ sẽ được sinhlại ở những bước dự đoán sau (over-parsing) 354.5 Kiến trúc tổng quát cho mô hình đề xuất Mô hình sẽ là sự

kết hợp của ba thành phần chính bao gồm khối trích xuất đặc trưng,khối mô hình ngữ cảnh và khối dự đoán 364.6 Sự khác nhau trong quá trình mở rộng vùng receptive field

giữa ViT và mô hình CNN lấy đại diện là ResNet50 [10] Cóthể thấy đối với ResNet50 thông tin được tổng hợp một cách cục bộ,trong khi đối với ViT việc tổng hợp thông tin toàn cục đã được thựchiện ở những lớp bậc trung 384.7 Sự khác nhau về khả năng bảo toàn thông tin vị trí giữa

ViT và mô hình CNN lấy đại diện là ResNet50 [10] Hàng 1,2 thể hiện khả năng bảo toàn thông tin của ViT, hàng cuối tươngứng với ResNet50 384.8 Chi tiết về kiến trúc của mô hình đề xuất Ảnh biểu thức toán

được đưa qua bộ mã hóa trong đó bản đồ đặc trưng được trích xuấtbởi mô hình ResNet [11] sau đó phân tách thành các vec-tơ patchnhúng kết hợp với vec-tơ mã hóa thông tin vị trí làm đầu vào chokhối mô hình ngữ cảnh gồm các khối ViT xếp chồng, đầu ra của khốimô hình ngữ cảnh bao gồm vec-tơ nhúng [CLS] được dùng làm trạngthái ẩn khởi tạo cho bộ giải mã, và chuỗi vec-tơ đặc trưng nhúngđược dùng như vec-tơ annotation cho bộ giải mã 404.9 Vùng receptive field ứng với mỗi vec-tơ đặc trưng trên ảnh

gốc 414.10 Thành phần chính của khối ViT đơn vị Khác với thiết kết gốc

trong [5], ViT sử dụng lớp Layer Normalization trước khi thực hiệnviệc xử lý trên các khối chức năng chính 43

Trang 14

4.11 Mô hình Vision Transformer cho bài toán phân loại hìnhảnh Chỉ sử dụng vec-tơ nhúng của token [CLS] làm biểu diễn thôngtin của ảnh phục vụ thao tác phân loại 444.12 Cách cơ chế tự tập trung thực hiện việc tăng cường vec-tơ

nhúng đầu vào Ma trận tập trung (Attention Map) chỉ sự tươngquan giữa ma trận Key và ma trận Query, sau đó được nhân với matrận Value để thu được kết quả 464.13 Khác nhau trong cách thức sử dụng ViT cho bài toán phân

loại ở hình 4.11 và bài toán MER Ở bài toán MER, toàn bộvec-tơ nhúng sau khi được biến đổi sẽ được sử dụng để làm giá trịđầu vào cho giai đoạn giải mã 474.14 Sự khác nhau giữa cơ chế tập trung truyền thống với việc

kết hợp thêm vec-tơ độ phủ Việc sử dụng vec-tơ độ phủ làmđầu vào cho phép toán tập trung sẽ giúp tăng xác suất được chọncuả những đặc trưng chưa được chuyển đổi trong tương lai, và giảmxác suất của những đặc trưng đã được dịch trong quá khứ 485.1 Minh họa một số mẫu dữ liệu từ tập IM2LATEX-100K 525.2 Minh họa về ý tưởng cho phép tăng cường ảnh với Random

Moving 565.3 Minh họa kết quả của các phép tăng cường ảnh trên dữ liệu

IM2LATEX-100K 565.4 Quy trình xử lý dữ liệu đầu vào trước khi huấn luyện mô

hình 575.5 Những mẫu dữ liệu giống nhau giữa ảnh thật và ảnh kết xuất 635.6 Những mẫu dữ liệu khác nhau giữa ảnh thật và ảnh kết xuất 635.7 So sánh giữa mô hình đề xuất và mô hình baseline tại các

nhóm chiều dài cụ thể 675.8 Minh họa bản đồ tự tập trung của token [CLS] nhúng 675.9 Minh họa từng bước sinh token LaTeX 686.1 Các loại token trong LaTeX được thực hiện chuẩn hóa trong

IM2LATEX-100K [6] 706.2 Quy trình xây dựng bộ cơ sở dữ liệu LIMD Bao gồm 6 bước

chính 71

Trang 15

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

6.3 Cấu trúc đường dẫn của một bài báo trên arxiv Trong đóF IELD_N AM E bao gồm các từ viết tắt trong bảng 6.1, YEARbao gồm hai chữ số cuối của các năm, MONTH là danh sách các

tháng, P AP ER_ID là id tương ứng với từng bài báo 72

6.4 Tương quan giữa tần suất xuất hiện và các nhóm kích thướctrong LIMD 79

6.5 Phần trăm mức độ đóng góp của từng nhóm chiều dài trongLIMD 79

6.6 So sánh số lượng mẫu xét theo chiều cao giữa LIMD vàIM2LATEX-100K 80

6.7 Sự khác nhau về phân bố chiều cao giữa LIMD và IM2LATEX-100K 816.8 So sánh số lượng mẫu xét theo chiều rộng giữa LIMD vàIM2LATEX-100K 81

6.9 Sự khác nhau về phân bố chiều rộng giữa LIMD và 100K 82

IM2LATEX-6.10 So sánh số lượng mẫu xét theo độ dài token giữa LIMD vàIM2LATEX-100K 82

6.11 Sự khác nhau về phân bố độ dài token giữa LIMD và 100K 83

IM2LATEX-6.12 Danh sách những token xuất hiện nhiều nhất trong LIMD 836.13 Danh sách những token xuất hiện nhiều nhất trong IM2LATEX-100K 84

7.1 Lưu đồ mô tả luồng hoạt động của hệ thống 87

7.2 Kiến trúc ScannSSD [1] 88

7.3 Kiến trúc SSD để phát hiện vật thể [12] 88

7.4 Thống kê tập dữ liệu để huấn luyện và đánh giá ScanSSD [1] 897.5 Các bước để thực hiện dự đoán 90

7.6 Giao diện hệ thống khi bắt đầu 91

7.7 Giao diện khi tải lên một ảnh biểu thức toán học 91

7.8 Giao diện khi tải lên một ảnh tài liệu 92

7.9 Giao diện khi tải lên một file PDF 92

7.10 Giao diện khi tải lên tăng số lượng trang PDF Ta có thể thựchiện thao tác thay đổi số trang cần trích xuất 93

Trang 16

7.11 Giao diện hiển thị kết quả dự đoán đối với một ảnh Có 3 cột:(1) Chuỗi LaTeX dự đoán, (2) Ảnh kết xuất từ (1), (3) Ảnh được cắt

bởi khối phát hiện vùng 93

7.12 Giao diện hiển thị kết quả dự đoán đối với một file PDFnhiều trang Xuất hiện các tab để hiển thị kết quả tương ứng chotừng trang 93

7.13 Kết quả thu được cho tình huống 1 94

7.14 Một ví dụ minh họa khác cho tình huống 1 94

7.15 Ảnh cần trích xuất thông tin 1 95

7.16 Kết quả thu được trên ảnh 1 96

7.17 Ảnh cần trích xuất thông tin 2 97

7.18 Kết quả thu được trên ảnh 2 98

7.19 Trang thứ nhất thuộc file PDF 99

7.20 Kết quả dự đoán cho trang thứ nhất 99

7.21 Trang thứ hai thuộc file PDF 100

7.22 Kết quả dự đoán cho trang thứ hai 100

Trang 17

Danh sách bảng

4.1 Kiến trúc mô hình ResNet32 425.1 Thông tin phần cứng 615.2 So sánh kết quả giữa các phương pháp trên tập kiểm thử của bộ dữ

liệu IM2LATEX-100K 625.3 Chi tiết cấu hình của các thí nghiệm thành phần, trong đó ‘None’

chỉ việc tại đó không sử dụng khối chức năng nào 645.4 Kết quả các thí nghiệm thành phần trong việc đánh giá các khối chức

năng của mô hình đề xuất Trong đó Feat chỉ khối trích xuất đặctrưng, Context chỉ khối mô hình ngữ cảnh, Pred chỉ khối dự đoán.Kết quả được đánh giá trên tập đánh giá IM2LATEX-100K 655.5 So sánh hai phương pháp mã hóa thông tin vị trí 655.6 So sánh hai thiết lập khởi tạo trạng thái ẩn trên mô hình đề xuất 665.7 So sánh kết quả dự đoán giữa mô hình có sử dụng tăng cường ảnh

và mô hình không sử dụng 666.1 Thông tin nguồn cung cấp dữ liệu 726.2 Số lượng các bài báo được thu thập phân theo lĩnh vực nghiên cứu 736.3 Phân chia tập dữ liệu LIMD 80

Trang 18

MER Mathematical Expression RecognitionNLP Natural Language Processing

STR Scene Text RecognitionDNN Deep Neural NetworkFC Fully Connected

CNN Convolution Neural NetworkRNN Recurrent Neural NetworkGRU Gated Recurrent UnitGNN Graph Neural NetworkFFN Feed-forward-networkMLP Multi Layer PerceptronSeq2seq Sequence to sequenceViT Vision TransformerLSTM Long short term memoryVGG Visual Geometry Group

BiLSTM Bidirectional Long short-term memorySOTA State-of-the-art

MLE Maximum likelihood estimation

Trang 19

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy TínhMHSA Multi-Head Self-Atenttion

WYGIWYS What You Get Is What You SeePDF Portable document format

Trang 20

Giới thiệu đề tài

Với sự phát triển nhanh chóng của khoa học công nghệ hiện nay, các thiết bịcông nghệ dần trở thành một phần không thể thiếu trong đời sống hàng ngày củamỗi tổ chức, cá nhân trong xã hội Điều đó góp phần dẫn đến sự thay đổi trongcách thức con người tương tác với nhau trong công việc hàng ngày Sự thay đổi nàycòn được biết đến với một tên gọi khác phổ biến trong vài năm trở lại đây là "Lànsóng chuyển đổi số" Những tác động của dịch Covid19 như một chất xúc tác khiếncho làn sóng này diễn ra nhanh hơn Đây được xem là xu hướng tất yếu, đã và đangtác động lên hầu hết các lĩnh vực hiện nay ở Việt Nam, trong đó phải kể đến hailĩnh vực quan trọng là khoa học và giáo dục Nhắc đến chuyển đổi số trong khoahọc và giáo dục không thể không nhắc đến nhu cầu số hóa một lượng lớn các loạisách, báo, tài liệu được viết trên giấy, tài liệu dạng in sang định dạng kĩ thuật sốnhư PDF, Word, v.v nhằm mục đích lưu trữ lâu dài, truyền bá tri thức trở nên dễdàng hơn Việc số hóa tài liệu còn giúp ích trong vấn đề trích xuất thông tin củacác thành phần bên trong tài liệu, từ đó cho phép tận dụng nguồn thông tin thuthập được vào nhiều mục đích khác nhau Đối với lĩnh vực khoa học, hầu hết cácloại tài liệu có thể kể đến như sách, bài báo khoa học, tạp chí chuyên ngành, cácthành phần cần được trích xuất có thể bao gồm bảng số liệu, hình minh họa, biểuđồ hay các công thức toán học Các thông tin trên có thể được sử dụng cho các hệthống truy vấn, tóm tắt văn bản hay các hệ thống hỏi đáp Đối với lĩnh vực giáodục, số hóa dữ liệu có thể giúp cho giáo viên giảm bớt gánh nặng trong việc giảngdạy thông qua hệ thống chấm bài tự động dựa trên dữ liệu từ bài kiểm tra của học

Trang 21

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tínhsinh.

Hình 1.1: Công thức toán trong các văn bản khoa học

Có thể thấy, chuyển đổi số có vai trò quan trọng đối với sự phát triển của khoahọc và giáo dục Tuy nhiên, bởi đặc trưng của các loại tài liệu kể trên mang tínhhọc thuật cao nên các thành phần bên trong nó có cấu trúc phức tạp, việc tríchxuất nội dụng của các thành phần có trong đó không hề dễ dàng Một trong nhữngthành phần phổ biến và quan trọng nhất thường xuất hiện trong các văn bản khoahọc chính là biểu thức toán học Để thực hiện việc trích xuất biểu thức toán học,trên thực tế ta cần giải quyết hai bài toán con: Một, phát hiện vùng chứa biểu thứctoán học trên ảnh; hai, dùng các vùng ảnh phát hiện được để tiến hành nhận diệnbiểu thức So với các loại văn bản thông thường, biểu thức toán học có hai đặc điểmkhiến cho việc trích xuất trở nên khó khăn:

1 Vùng chứa các biểu thức toán thường có nhiều mức kích thước khác nhau trênảnh, và nhiều biểu thức còn nằm lẫn giữa các dòng văn bản thông thường.2 Biểu thức toán được tạo thành từ các kí hiệu có mối quan hệ phức tạp với

số lượng kí hiệu lớn và do đó biểu diễn ở dạng văn bản của nó thường viếtbằng dạng ngôn ngữ có cấu trúc (hay còn gọi là "markup language") ví dụ nhưLaTeX, MathML Hình 1.2 minh họa cho quá trình chuyển đổi biểu thức toánhọc sang dạng LaTeX.

Trích xuất biểu thức toán học vì thế được đánh giá là một bài toán khó tronglớp các bài toán phân tích văn bản (document analysis) Mặc dù vậy, trích xuấtbiểu thức toán học là một phần không thể thiếu trong việc số hóa tài liệu khoa họcvà do đó việc giải quyết bài toán trên là vô cùng quan trọng Hiện nay, việc phát

Trang 22

Hình 1.2: Bài toán nhận diện biểu thức toán học (MER)

hiện và chuyển đổi biểu thức toán sang dạng ngôn ngữ cấu trúc như LaTeX đặcbiệt hữu ích trong quá trình viết các tài liệu khoa học, giúp rút ngắn thời gian viếtmột cách đáng kể Trong hai bài toán con của bài toán trích xuất biểu thức toánhọc, bài toán nhận diện được đánh giá là khó hơn cả, lí do là bởi vì các chi tiết trênảnh biểu thức thường rất phức tạp khiên việc xây dựng một phương pháp tự độngnhận diện rất khó khăn Trong những năm gần đây, ngày càng có nhiều nghiên cứuvề bài toán nhận diện biểu thức toán học được công bố trên các hội nghị và tạp chíuy tín chứng tỏ sự quan tâm cho bài toán này ngày càng tăng.

Nhận thức được tính cấp thiết và ứng dụng thiết thực trong thực tế của bàitoán trích xuất biểu thức toán học, đề tài "Xây dựng hệ thống trích xuất biểu thứctoán học trong ảnh tài liệu" được nhóm đề xuất thực hiện như một nỗ lực trongviệc xây dựng một hệ thống trích xuất biểu thức toán học với hiệu quả cao thôngqua việc nghiên cứu và cải tiến những phương pháp hiện có, từ đó tạo tiền đề choviệc xây dựng một công cụ hoàn chỉnh cho phép số hóa các tài liệu khoa học phụcvụ cộng đồng học thuật ở Việt Nam.

1.2Mục tiêu và giới hạn của đề tài

Như đã đề cập ở phần trên, việc giải quyết bài toán nhận diện biểu thức toánhọc (MER) trong một hệ thống trích xuất mang tính thách thức hơn cả, và là điềukiện tiên quyết để xây dựng một hệ thống trích xuất hiệu quả Nhận thức đượctầm quan trọng của bài toán MER, trong đề tài luận văn này, nhóm trước hết tậptrung vào việc xây dựng một mô hình nhận diện biểu thức toán học có độ chínhxác cao, sau cùng kết hợp với mô hình phát hiện vùng biểu thức đã được công bố

Trang 23

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

bởi các nghiên cứu khác để hoàn thiện một hệ thống trích xuất biểu thức Để đạtđược mục tiêu trên, nhóm tiến hành thực hiện các nhiệm vụ sau đây:

• Khảo sát các công trình liên quan đến bài toán MER Từ đó chọn hướng tiếpcận phù hợp.

• Nghiên cứu đề xuất một mô hình giải quyết bài toán MER một cách hiệu quả.• Nghiên cứu xây dựng bộ cơ sở dữ liệu lớn phục vụ việc nghiên cứu bài toán

MER trong tương lai.

• Xây dựng hệ thống trích xuất biểu thức toán học hoàn chỉnh sử dụng mô hìnhđề xuất.

Trải qua quá trình nghiên cứu và phát triển, nhóm xin tóm tắt các đóng gópchính của nhóm trong đề tài luận văn này như sau:

• Đề xuất mô hình Hybrid Vision Transformer cho bài toán MER.

• Xây dựng hoàn chỉnh bộ cơ sở dữ liệu Large Image to Markup Database(LIMD) cho bài toán MER.

• Hoàn thiện một hệ thống trích xuất biểu thức toán học cho các loại ảnh chữin và tài liệu PDF.

• Mã nguồn và bộ dữ liệu được công khai trên github1.

1https://github.com/duylebkHCM/doc2tex

Trang 24

Nền tảng lý thuyết

Trong chương này, nhóm xin trình bày qua những nền tảng lý thuyết có liênquan đến bài toán MER bao gồm những kiến thức cơ bản về ngôn ngữ TeX, kháiquát về bài toán dự đoán chuỗi, một dạng bài toán tổng quát mà MER là một bàitoán con trong lớp bài toán này, các kĩ thuật nền tảng được sử dụng để giải quyếtbài toán này.

2.1.1Sơ lược về TeX, LaTeX

TeX là một loại ngôn ngữ đánh dấu được tạo ra bởi Donald Knuth 1 với mụcđích tạo ra các văn bản khoa học với định dạng chỉn chu và chuyên nghiệp ví dụnhư dùng để viết báo cáo luận văn, viết sách hoặc một bài báo khoa học để nộp chomột hội nghị nào đó Ngày nay TeX được xem là tiêu chuẩn được sử dụng cho việcbiên soạn bất kì một loại văn bản khoa học nào Khác với những công cụ soạn thảovăn bản thường thầy như Word của Microsoft hay LibreOffice Writer của Linux,TeX sử dụng tập hợp các lệnh để định nghĩa nên cấu trúc của một văn bản.

LaTeX thực chất là một phiên bản được hiệu chỉnh từ TeX được tạo ra bởiLeslie Lamport 2 với mục đích giúp cho việc soạn thảo dựa trên TeX đơn giản hơnthông qua việc sử dụng các thư viện có sẵn Tuy nhiên, với số lượng lệnh cũng nhưcác kí tự đa dạng việc thành thạo TeX/LaTeX không hề dễ dàng cho người mới bắt

1Nhà Khoa học máy tính, giáo sư tại Đại học Stanford

2Nhà Khoa học máy tính, nhà toán học người Mỹ

Trang 25

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

2.1.2Một số cú pháp toán học cơ bản trong LaTeX

Biểu thức toán học trong LaTeX được biểu diễn thông qua một tập hợp củacác kí hiệu, các kí hiệu được phân làm nhiều nhóm khác nhau Mục tiêu ở phần nàynhằm củng cố lại những kiến thức cơ bản về cách viết một công thức toán bằngLaTeX Một số nhóm kí hiệu cơ bản được phân loại như sau:

• Chế độ viết: Có hai chế độ viết cơ bản bao gồm chế độ inline dùng để viết cácbiểu thức là một phần của đoạn văn bản và chế độ display dùng để viết các biểuthức nằm độc lập Biểu thức trong chế độ inline được viết bên trong các cặp kíhiệu như \( và \), \$ và \$, \begin{math} và \end{math} Đối với chế độdisplay, các cặp kí hiệu \[ và \], \begin{displaymath} và \end{displaymath}và \begin{equantion} và \end{equation} được dùng để chứa công thứctoán Bên cạnh đó các thư viện như amsmath còn hỗ trợ một số chế độ viếtkhác như \begin{equation*} và \end{equation*}

• Subscripts và superscripts: Hai kí hiệu superscripts và subscripts là haikí hiệu thường hay được dùng khi viết biểu thức toán bằng LaTeX, chúngkhông phải là các toán hạng hay toán tử trong biểu thức mà được dùngđể mô tả mối quan hệ về mặt không gian giữa các thành phần trong biểuthức LaTeX sử dụng kí tự _ cho subscripts và kí tự ^ cho superscripts Mộtví dụ về cách sử dụng hai kí hiệu trên trong một biểu thức toán như sau$a_1^2 + a_2^2 = a_3^2$ và kết quả như sau a21+ a2

3 Ngoài ra chúngcũng có thể được sử dụng để biểu diễn cận trên và dưới cho một số kí hiệutoán học như nguyên hàm hay giới hạn.

• Chữ La Mã và các kí hiệu toán học: LaTeX hỗ trợ hầu hết các kí hiệu toánhọc thường thấy Một số chữ cái La Mã như \alpha, \beta, gamma hay cáctoán tử của biểu thức nhị phân như \times, \div, \oplus, các toán tử sosánh như \leq, \neq và các toán tử logic như \in, \notin, \subset Mộtsố kí hiệu toán học khác có thể tham khảo thêm tại

• Ma trận: Trong LaTeX, biểu diễn dạng ma trận được hỗ trợ bởi thư việnamsmath Một số môi trường ma trận có thể được dùng như sau:

Trang 26

Dạng đơn giản 1 2 3a b cDạng ngoặc tròn 1 2 3a b c

Dạng ngoặc nhọn(

1 2 3a b c

Một điểm cần phải lưu ý khi soạn thảo bằng TeX đó chính là trong TeX hay LaTeX,tồn tại nhiều token cùng biểu diễn một kí tự trong biểu thức toán.

2.2Bài toán dự đoán chuỗi2.2.1Một số bài toán điển hình

Bài toán dự đoán chuỗi là lớp các bài toán quan trọng trong lĩnh vực khoa họcmáy tính Một bài toán được xếp vào lớp bài toán dự đoán chuỗi nếu như có thểmô hình hóa dữ liệu đầu ra ở dạng một chuỗi các token Lớp bài toán này có ứngdụng trải dài trên nhiều lĩnh vực từ thị giác máy tính, xử lý ngôn ngữ tự nhiên chođến xử lý tiếng nói.

Đối với lĩnh vực thị giác máy tính, bài toán dự đoán chuỗi có mục tiêu là đitìm một mô hình cho phép trích lọc những thông tin trên bức ảnh đầu vào sauđó chuyển đổi về dạng văn bản phù hợp với yêu cầu đặt ra Một số bài toán connằm trong lớp bài toán này phải kể đến như bài toán sinh mô tả cho ảnh (ImageCaptioning [13]), bài toán hỏi đáp dựa trên ảnh (Visual Question Answering [14]),bài toán nhận diện chữ viết (Text Recognition [15]) và bài toán nhận diện biểu thứctoán học (MER) Việc sử dụng mạng học sâu để giải quyết bài toán đã cho thấyđược những kết quả vượt bậc so với những phương pháp khác trong những nămgần đây, các phương pháp học sâu chủ yếu dựa trên kiến trúc mã hóa và giải mã(encoder-decoder) bằng cách học trên dữ liệu gồm một cặp ảnh và văn bản tương

Trang 27

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

ứng, trong đó bộ mã hóa có chức năng trích xuất các đặc trưng trên hình ảnh kếthợp với những thông tin từ văn bản thông qua bộ giải mã để có được kết quả cuốicùng Các công bố cho bài toán MER sử dụng học sâu hiện nay cơ bản đều dựa trênkiến trúc tổng quát này Phần bên dưới sẽ trình bày chi tiết về những giải thuậtliên quan tới lớp bài toán này.

2.2.2Các lí thuyết liên quanMạng neural tích chập

Xét tường hợp như sau, cho một ảnh màu có kích thước 50 × 50 điểm ảnhđược biểu diễn bằng 1 tensor3 50× 50 × 3 Để biểu diễn hết thông tin của ảnh này,cần truyền tất cả điểm ảnh vào lớp đầu vào của một mạng FC Lúc này lớp đầuvào có 7500 nút Giả sử số nút trong lớp ẩn đầu tiên là 1000, khi đó số lượng trọngsố giữa lớp đầu vào và lớp ẩn đầu tiên của mạng là 7500×1000 = 7500000, cộngvới số biến bias 1000 ta được tổng tham số cần có cho hai lớp đầu tiên là 7501000.Co thể thấy, việc áp dụng mạng FC cho dữ liệu dạng ảnh sẽ tiêu tốn rất nhiều tàinguyên tính toán Cho nên việc áp dụng mạng FC cho ảnh là điều không khả thi.

Các lớp trong mạng neural có mục đích rút trích các đặc trưng của đầu vào,trong khi các đặc trưng của ảnh không phải nằm trên mọi điểm ảnh, mà các điểmảnh gần nhau thường có liên kết với nhau nhiều hơn Do vậy, việc áp dụng các lớptích chập vào mạng neural có thể giải quyết vấn đề về số lượng tham số, trong khivẫn rút trích được các đặc trưng trong ảnh Do đó, để có thể rút trích đặc trưngtrên ảnh một cách hiệu quả mạng neural tích chập được sử dụng Một mạng neuraltích chập có thành phần chính là các lớp tích chập, mối lớp tích chập có kích thướck × k × c, trong đó k là chiều cao và chiều rộng, c là số chiều của bản đồ đặc trưng,s là số bước nhảy giữa các lần trượt Hình 2.1 thể hiện cách thức tính toán của mộtlớp tích chập trên một bản đồ đặc trưng Một mạng neural tích chập bao gồm nhiềulớp tích chập kết hợp các lớp gộp (pooling) để thu giảm kích thước của bản đồ đặctrưng Ngoài ra, ứng với mỗi bản đồ đặc trưng sẽ có nhiều hơn một lớp tích chậptham gia quá trình tính toán nhằm mục đích tăng khả năng rút trích được nhiềuloại đặc trưng khác nhau.

3Tensor là một ma trận có số chiều lớn hơn 2

Trang 28

Hình 2.1: Quy trình tính toán giá trị đầu ra của một lớp tích chập [2]

Hình 2.2: Cấu trúc của một lớp RNN trước và sau khi duỗi ra [3]

Mạng neural hồi qui

Mạng neural truyền thống có các đầu vào và đầu ra độc lập với nhau, điều đócó nghĩa là chúng không liên kết thành chuỗi với nhau Kiểu mạng này phù hợptrong nhiều bài toán, ví dụ bài toán phân lớp, khi mà các đầu vào của chúng là độclập với nhau Tuy nhiên, nếu xét bài toán dự đoán một từ xuất hiện tiếp theo trongcâu, rõ ràng, việc một từ có khả năng xảy ra là phụ thuộc vào nhiều yếu tố, trongđó có từ trước đó Khi đó mạng neural bình thường sẽ không thể biểu diễn và dựđoán đúng cho bài toán Mạng neural hồi quy (RNN) ra đời với mong muốn có thểgiải quyết được các bài toán như vậy Mạng này sẽ thực hiện cùng một tác vụ chotất cả các phần tử của một chuỗi mà đầu ra của chúng lại phụ thuộc vào các phầntử trước đó.

Mạng neural hồi quy có cấu trúc cơ bản như sau:

Trang 29

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

Hình 2.3: Cấu trúc của một cell LSTM [3]

Nếu như ở mạng neural thông thường lớp đầu vào x sẽ đi qua các tầng ẩn h vàcho ra lớp đầu ra y với kết nối đầy đủ giữa các lớp thì trong RNN, các đầu vào xt

sẽ kết hợp với lớp ẩn ht−1 bằng hàm fw để tính ả lớp ẩn hiện tại ht và từ đó suy rayt Như vậy kết quả từ các quá trình tính toán trước đó được "nhớ" bằng cách kếthợp thêm lớp ẩn ht−1 để tăng độ chính xác cho dự đoán hiện tại Quá trình tínhtoán có thể viết được dưới dạng như sau:

ht= fW(ht−1, xt) (2.1)

Một hạn chế của mạng RNN đó chính là vấn đề tiêu biến đạo hàm, để khắcphục hạn chế trên mô hình LSTM [16] (Long Short Term Memory) đã ra đời Mộtcell LSTM như hình 2.3 sẽ bao gồm các cổng như sau: Cổng quên (Forget gate),cổng đầu vào (Input gate), cổng đầu ra (Output gate) Công thức 2.2 thể hiện cácbước tính toán giá trị trạng thái ẩn cho một cell LSTM.

zt= σ (Wz· [ht−1, xt])rt= σ (Wr· [ht−1, xt])˜

ht= tanh (W · [rt∗ ht−1, xt])ht= (1 − zt) ∗ ht−1+ zt∗ ˜ht

(2.2)

Trang 30

Kiến trúc Sequence-to-sequence

Đây là một kiến trúc được đề xuất lần đầu trong bài báo [17] cho bài toándịch máy trong xử lí ngôn ngữ tự nhiên và đã mang lại những thành công vượt bậc.Sự thành công trên bài toán dịch máy đã tạo tiền đề cho việc ứng dụng kiến trúcnày vào các bài toán khác phải kể đến bài toán MER với những thay đổi nhất địnhnhưng về cơ bản vẫn giữ lại cấu trúc chính của mô hình Một mô hình Seq2seq sẽbao gồm hai thành phần mã hóa (encoder) và giải mã (decoder) Trong bài báo gốc,bộ mã hóa là một mô hình RNN dùng để mã hóa câu nguồn thành một vec-tơ đặctrưng còn được biết đến với tên gọi là vec-tơ ngữ cảnh Đối với bài toán chuyển đổihình ảnh sang văn bản hay cụ thể là bài toán MER thì bộ mã hóa sẽ được bộ sungthêm một bộ trích xuất đặc trưng sử dụng CNN trước khi đi đến RNN Ở bước giảimã, một mô hình RNN khác học cách sinh ra giá trị câu đích đối với bài toán dịchmáy một cách tuần tự mỗi lần một từ Chi tiết cách thức thực hiện trong hình 2.4như sau:

• Câu nguồn được truyền qua một lớp embedding sau đó được truyền vào bộ mãhóa.

• Tại mỗi bước lặp, đầu vào của bộ mã hóa bao gồm cả giá trị embedding e củatừ hiện tại e(xt) cũng như giá trị trạng thái ẩn của bước lặp trước đó ht−1 vàtrả về giá trị trạng thái ẩn ht như công thức 2.3

ht = EncoderRNN (e (xt) , ht−1) (2.3)

• Khi từ cuối cùng trong câu nguồn có chiều dài T từ, xT được truyền vào bộmã hóa, giá trị trạng thái ẩn cuối cùng hT được sử dụng như vec-tơ ngữ cảnh,đại diện cho toàn bộ câu nguồn.

• Bắt đầu quá trình giải mã, chèn hai kí tự đặc biệt <sos> và <eos> vào câuđích.

• Tại mỗi bước lặp đầu vào của bộ giải mã là giá trị embedding, d, của từ hiệntại trong câu đích tức d(yt) cũng như giá trị trạng thái ẩn từ bước lặp trướcđó, st−1, trong đó giá trị trạng thái ẩn đầu tiên s0 bằng với giá trị vec-tơ ngữcảnh Do đó ta có đầu ra của bộ giải mã được biểu diễn như công thức 2.4

st= DecoderRNN (d (yt) , st−1) (2.4)

Trang 31

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

Hình 2.4: Quy trình sinh ra kết quả trong bài toán dịch máy [4]

• Giá trị từ dự đoán tại mỗi bước lặp được thực hiện bằng cách cho giá trị trạngthái ẩn st qua một lớp FC để được ˆyt= f (st)

Cơ chế tự tập trung

Cơ chế tự tập trung (self-attention) lần đầu được giới thiệu trong bài báoAttention Is All You Need [5] đây là một cơ chế được sử dụng rộng rãi trong lĩnhvực NLP Self-attention là cấu trúc cốt lõi tạo nên mô hình Transformer [5] Chomột chuỗi các phần tử, cơ chế self-attention sẽ ước lượng mức độ liên quan tới nhaucủa một phần tử so với tất cả các phần tử còn lại, nói cách khác self-attention dùngđể tính trọng số cho mỗi phần tử trong chuỗi dựa trên thông tin toàn cục của toànbộ chuỗi đó.

Giả sử ta có một chuỗi gồm n phần tử (x1, x2, xn) gọi là X ∈ Rn×d, trong đó d làsố chiều của vec-tơ embedding biểu diễn mỗi phần tử Mục tiêu của self-attentionlà xác định mối liên hệ của tất cả n phần tử bằng cách mã hóa chúng trong mộtthông tin ngữ cảnh toàn cục Để thực hiện được việc đó, self-attention dựa vào 3vec-tơ chính là Query (Q), Key (K), Value (V) Các vec-tơ Query, Key, Value cóvai trò giống như một hệ thống tra cứu như Google, khi ta gõ một câu tìm kiếmtrên thanh tìm kiếm (Query), hệ thống sẽ tiến hành đối chiếu thông tin tìm kiếmvới một tập hợp Keys ví dụ như tiêu đề, mô tả trong cơ sơ dữ liệu và trả về nhữngthông tin tương ứng với các tiêu đề phù hợp(Values).

Trang 32

Giá trị đầu ra của self-attention là tổng có trọng số các vec-tơ value, trong đó trọngsố của mỗi value được tính bằng một hàm giữa 2 vec-tơ key và query Các vec-tơQuery, Key, Value được tính từ giá trị đầu vào X bằng 3 ma trận trọng số tươngứng WQ ∈ Rn×dq, WK ∈ Rn×dk, WV ∈ Rn×dv, trong đó dq = dk Từ đó ta cóQ = XWQ, K = XWK, V = XWV và đầu ra như hình 2.5 có công thức như sau:

Z = sof tmax(QK

Hình 2.5: Scaled Dot-Product Attention [5]

Trên thực tế, để có thể trích xuất được các đặc trưng khác nhau hay các mốiquan hệ phực tạp hơn giữa các phần tử trong chuỗi, ta có thể cho dữ liệu đầu vào quanhiều khối self-attention cùng lúc hay còn gọi là cơ chế tự tập trung đa đầu (MHSA)Khi đó, mỗi khối self-attention sẽ có các ma trận trọng số riêng WQi, WKi, WVi vớii = 0 (h − 1) trong đó h là số khối self-attention được sử dụng Các giá trị đầura của mỗi khối sau đó sẽ được ghép lại với nhau thành một ma trận duy nhất.

Kiến trúc Transformer

Bản chất mô hình Transformer [5] vẫn tuân thủ theo cấu trúc mã hóa và giảimã tuy nhiên khác với mô hình Seq2seq dựa trên RNN, Transformer cho phép xử lýsong song các từ đầu vào của bộ mã hóa và giải mã thông qua cơ chế tự tập trungđa đầu được trình bày bên trên Encoder của mô hình transformer có thể bao gồmnhiều encoder layer tượng tự nhau Mỗi encoder layer của transformer lại bao gồm2 thành phần chính là MHSA và feedforward network, ngoài ra còn có cả đường nối

Trang 33

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

Hình 2.6: Multi-Head Self-Attention [5]

tắt và lớp normalization 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 vị trí thông qua positional encoding Positional encodingcho phép mã hóa thông tin về vị trí của các từ trước khi đi vào bộ encoder, vì lído đối với cơ chế MHSA thì thứ tự của các từ trong câu không ảnh hưởng đến kếtquả của MHSA tức việc thay đổi thứ tự của từ vẫn sẽ giữ nguyên kết quả, cho nêncần bổ sung thông tin về vị trí của từ để đảm bảo tính tuần tự của câu Decoderthực hiện chức năng giải mã vec-tơ của câu nguồn thành câu đích, do đó decodersẽ nhận thông tin từ encoder là 2 vec-tơ key và value Kiến trúc của decoder rấtgiống với encoder, ngoại trừ có thêm một multi-head attention nằm ở giữa dùng đểhọc mối liên quan giữ từ đang được dịch với các từ được ở câu nguồn.

Trang 34

Hình 2.7: Tổng quan mô hình Transformer [5]

Trang 35

3.1Tổng quan về các hướng nghiên cứu

Bài toán MER là một đề tài nghiên cứu hấp dẫn các nhà khoa học trong mộtthời gian dài Một trong những nghiên cứu đầu tiên về bài toán MER đã có từ thậpniên 60 thế kỷ trước với nghiên cứu của [18], nghiên cứu đặt ra một nhu cầu về việcchuyển đổi hình ảnh sang dạng ngôn ngữ có cấu trúc có thể ở dạng LaTeX hoặcdạng MathML, phương pháp được sử dụng vào thời điểm đó chủ yếu dựa trên cáctập luật được định nghĩa sẵn dựa trên tập các cú pháp trong các biểu thức toán họchay còn gọi là syntax-directed Các nghiên cứu giai đoạn sau bắt đầu mở rộng sangcác phương pháp khác để cải thiện độ chính xác cũng như khả năng chuyển đổi trêncác trường hợp phức tạp hơn Các hướng tiếp cận chính trong giai đoạn tiền họcsâu bao gồm hướng tiếp cận dựa trên ngữ pháp, và hướng tiếp cận dựa trên cấutrúc cây Các phương pháp trong giai đoạn này thường chia bài toán MER thành

Trang 36

các tác vụ con riêng biệt bao gồm Symbol Segmentation, Symbol Classification vàStructure Analysis Sự khác nhau ở các phương pháp thường nằm ở cách thức giảiquyết tác vụ Structure Analysis.

Các phương pháp giải quyết dựa trên cấu trúc cây thường thực hiện việc tríchxuất mối liên hệ giữa các kí tự thông qua việc xây dựng một cây đại diện cho cấutrúc của biểu thức Trong [19] thực hiện việc xây dựng cây bằng cách đề xuất việckết hợp giữa phương pháp top-down và bottom-up Một nghiên cứu khác [20] đềxuất việc xây dựng môt cây cơ bản để diển tả thứ tự sắp xếp trong không gian haichiều của biểu thức toán học Bài toán MER còn có thể được mô hình hóa dướidạng bài toán tìm kiếm cây khung nhỏ nhất (Minimum Cost Spanning Tree) haybài toán MST, cho phép biểu diễn các kí tự và các mối liên hệ không gian trên mộtđồ thị Với ý tưởng đó, một hệ thống nhận diện biểu thức toán học được phát triểnbởi Suzuki cùng cộng sự [21] đã ra đời với tên gọi là InftyReader, đây được xem làhệ thống MER đầu tiên được thương mại hóa, hệ thống thực hiện việc nhận dạngbằng cách biểu diễn biểu thức toán ở dạng cây và dùng MST để thực hiện tác vụStructure Analysis.

Trong khi đó, các phương pháp dựa trên cấu trúc ngữ pháp như [22, 23, 24, 25]lại triển khai việc nhận diện bằng cách sử dụng các quy luật ngữ pháp và các quytắc phân tích để nhận diện biểu thức, phương pháp này đòi hỏi các nhà nghiên cứucần có một kiến thức đủ sâu về cú pháp trong các biểu thức toán học và phải thựchiện việc định nghĩa trước các luật một cách thủ công Trong nghiên cứu [23], nhómtác giả sử dụng giải thuật Stochastic Context-Free-Grammar (SCFG) để định nghĩacác tập luật quyết định cách thức các kí tự được hợp nhất với nhau.

Với sự phát triển của phương pháp học sâu trong những năm gần đây, đặc biệtkể từ công bố của [26] về mô hình AlexNet đã cho thấy khả năng của các mô hìnhhọc sâu mà các phương pháp trước đó không giải quyết được Sự ra đời của các môhình học sâu đã khiến nhiều lĩnh vực nghiên cứu bao gồm thị giác máy tính hayxử lý ngôn ngữ tự nhiên có sự phát triển mạnh mẽ Trong lĩnh vực xử lý ngôn ngữtự nhiên, sự ra đời của kiến trúc Sequence-to-sequence (Seq2seq) bởi [17] và sau đóđược cải tiển bởi [27] đã giúp nâng cao đáng kể hiệu quả trong bài toán Dịch máy.Kể từ đó kiến trúc Seq2seq dần trở thành tiêu chuẩn cho các bài toán thuộc lớpcác bài toán dự đoán chuỗi (Sequence Prediction), một số phương pháp sử dụngkiến trúc Seq2seq cho các bài toán khác phải kể đến như [28] cho bài toán SpeechRecognition, [29] cho bài toán STR, [30] cho bài toán Image Captioning Đối vớibài toán MER, điều này cũng không ngoại lệ, rất nhiều phương pháp được đề xuất

Trang 37

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

trong đó lấy kiến trúc Seq2seq làm cốt lõi Năm 2016, Deng cùng các cộng sự [6]công bố mô hình WYGIWYS sử dụng kiến trúc dựa trên Seq2seq, trong đó đề xuấtviệc sử dụng bộ trích xuất đặc trưng từ CNN và bộ giải mã dựa trên RNN kết hợpvới cơ chế tập trung để dự đoán chuỗi LaTeX, đây được xem là phương pháp ápdụng kiến trúc Seq2seq đầu tiên cho bài toán MER, hay công bố của Zhang cùngcộng sự [31] đề xuất cải tiến bằng cách ứng dụng kiến trúc DenseNet [32] cho bộ mãhóa của mô hình để có thể học được các đặc trưng trên nhiều mức kích thước khácnhau Năm 2019, Zhang cùng cộng sự [7] đề xuất cơ chế Double Attention nhằmmô hình các đặc trưng mờ của ảnh tốt hơn Trong khi đó, [33] đưa ra ý tưởng vềviệc tập trung vào việc trích xuất các đặc trưng chi tiết có sự khác biệt nhỏ do tínhchất chi tiết của các kí tự toán học trong ảnh [34] đề xuất sử dụng phương phápdrop attention để loại bỏ ngẫu nhiên các đặc trưng trong quá trình huấn luyện giúpmô hình mạnh mẽ với các yếu tố gây nhiễu Một số phương pháp khác thực hiệnthay đổi kiến trúc bộ giải mã từ RNN sang sử dụng kiến trúc mạng tích chập 1chiều nhằm giảm thời gian xử lý của mô hình như phương pháp đề xuất trong [35],một số khác đề xuất bổ sung thêm các khối thành phần bổ trợ để việc mô hình hóadữ liệu tốt hơn như [36] đề xuất bổ sung một khối GNN để mô hình mối quan hệkhông gian giữa các kí hiệu trong ảnh Mô hình của Pang và cộng sự [9] đề cập đếnnhu cầu mô hình toàn cục thông tin của ảnh là yếu tố quyết định sự thành côngcủa mô hình và đã đề xuất khối Global Context để thực hiện nhiệm vụ trên Ngoàira, một số phương pháp còn tập trung vào việc tối ưu ở cấp độ toàn chuỗi LaTeXthay vì thực hiện việc tối ưu trên cấp độ token bằng cách áp dụng phương pháphọc tăng cường (Reinforcement Learning) thông qua các hàm reward như đề xuấttrong [8].

Có thể thấy hiện nay các mô hình dựa trên kiến trúc Seq2seq đang chiếm ưuthế trong bài toán MER, dù có sự thay đổi trong các thành phần nhưng về bảnchất các phương pháp trên vẫn áp dụng nguyên lý của kiến trúc Seq2seq Do đó,nhóm lựa chọn hướng tiếp cận Seq2seq trong việc phát triển mô hình cho bài toánMER Trong phần sau nhóm sẽ tiến hành trình bày về cơ chế hoạt động của mộtsố phương pháp mà nhóm đã lựa chọn để nghiên cứu sâu hơn.

3.2Các nghiên cứu dựa trên kiến trúc Seq2seqQua quá trình tìm hiểu về các phương pháp sử dụng kiến trúc Seq2seq cho bàitoán MER Nhóm đã lựa chọn được một số phương pháp để tiến hành nghiên cứu

Trang 38

một cách chi tiết hơn Trong phần này nhóm sẽ trình bày về ý tưởng, cơ chế hoạtđộng cũng như một số kết quả đạt được của các phương pháp đó, từ đó làm tiềnđề cho các đề xuất của nhóm về sau.

3.2.1What You Get Is What You See: A Visual MarkupDecompiler

Phương pháp đề xuất

Đây được xem là bài báo đầu tiền để xuất phương pháp dựa trên kiến trúcSeq2seq cho bài toán MER Được đề xuất bởi Deng và công sự vào năm 2016 [6],mô hình tuần thủ cấu trúc encoder-decoder kết hợp với cơ chế tập trung từ bài báo[37] cho bài toán dịch máy Việc kết hợp với cơ chế tập trung trong quá trình giảimã cho phép mô hình có khả năng xác định những vùng quan tâm trên bản đồ đặctrưng và từ đó cho phép trả về kí tự chính xác tại từng bước lặp Nhóm tác giả đềxuất một lớp mã hóa mới để phù hợp với dữ liệu đầu vào là ảnh với tên gọi là môhình hồi qui nhiều dòng Tổng quan kiến trúc được đề xuất có ba bộ phận chính:

• Mạng tích chập: Các đặc trưng hình ảnh của ảnh được trích xuất bằng cách sửdụng một bộ rút trích đặc trưng nhiều tầng Từ bức ảnh có kích thước H × Wsẽ tạo ra một bản đồ đặc trưng V có kích thước D × ˆH × ˆW , với ˆH và ˆW làkích thước sau khi đã thu giảm chiều.

• Bộ mã hóa theo dòng: Để đảm bảo bản đồ đặc trưng truyền vào bộ giải mãchứa đựng thông tin về thứ tự, một bộ RNN được bổ sung vào sau bộ rút tríchđặc trưng Mục tiêu giúp cho bộ mã hóa mã hóa thông tin theo chiều từ tráisang phải cũng như tận dụng được các thông tin ngữ cảnh theo chiều ngangđể làm giàu bản đồ đặc trưng Bản đồ đặc trưng mới ˜V được tạo ra sau khiđưa V chạy qua RNN theo từng hàng của V.

• Bộ giải mã: được huấn luyện như một mô hình ngôn ngữ có điều kiện để chora xác suất của kí tự tiếp theo dựa trên thông tin về trạng thái ẩn trước đó vàbản đồ đặc trưng ˜V với công thức như sau:

yt+1 | y1, , yt, ˜V

Trang 39

Trường Đại Học Bách Khoa Tp.Hồ Chí MinhKhoa Khoa Học và Kỹ Thuật Máy Tính

Hình 3.1: Cấu trúc của mô hình WYGIWWYS [6].

chế tập trung có công thức như bên dưới:

et = aht,n ˜Vh,woαt = softmax (et)

ct = ϕn ˜Vh,wo, αt

Trang 40

Hình 3.2: Bảng đánh giá kết quả của mô hình so với các phương pháp thôngqua các độ đo [6].

Nhận xét

Mô hình WYGIWYS với hướng tiếp cận học sâu sử dụng kiến trúc Seq2seq cócải tiến ở bộ mã hóa đã cho kết quả tốt hơn vượt trội so với các phương pháp kháctrên tất cả các độ đo Mô hình này là tiền đề cho các phương pháp cải tiến kháctrong tương lai.

3.2.2An Improved Approach Based on CNN-RNNs for ematical Expression Recognition

Math-Phương pháp đề xuất

Được đề xuất bởi Zhang cùng các cộng sự [7] nhằm cải thiện kết quả được côngbố bởi [6] Nhóm tác giả đưa ra ý tưởng về kiến trúc dựa trên CNN-RNN, để cóthể thu được các đặc trưng mờ và những kí tự có kích thước nhỏ, nhóm tác giả đềxuất việc mở rộng kích thước ảnh lên gấp đôi sau đó sử dụng ảnh đó để trích xuấtthông tin đặc trưng bằng mô hình CNN Nhóm tác giả sử dụng một khối DoubleAttention giữa bộ mã hóa và giải mã để thu được vị trí của kí tự chính xác hơn.Cuối cùng để tránh hiện tượng quá khớp, một lớp Dropout [38] được đưa vào sửdụng.

Một cách cụ thể, mô hình Double Attention sẽ có các thành phần như sau:• Mạng tích chập: Nhóm tác giả sử dụng một mạng tích chập với 6 lớp tích

chập và 5 lớp max-pooling Mỗi lớp tích chập có kích thước kernel là 3x3 Cấuhình chi tiết của mạng tích chập được sử dụng thể hiện trong bảng 3.4 Nhưđã đề cập, trước khi thực hiện việc trích xuất đặc trưng, ảnh đầu vào đượctăng gấp đôi kích thước để bắt được các đặc trưng mờ từ ảnh gốc.

• Bộ mã hóa: Sau khi đã có được thông tin đặc trưng, các đặc trưng này đượcsử dụng cho mô hình mã hóa-giải mã để sinh ra chuỗi LaTeX Ở đây nhóm tácgiả lựa chọn sử dụng lớp LSTM làm bộ mã hóa.

Ngày đăng: 30/07/2024, 17:14

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

TÀI LIỆU LIÊN QUAN

w