Bài toánnhận dang van bản ngoại cảnh tuy đã đạt được một số thành công nhấtđịnh, tuy nhiên khi gặp các trường hợp như ảnh trong văn bản xuất hiện với các font chữ phức tạp, các chữ cái t
Trang 1ĐẠI HỌC QUOC GIA THÀNH PHO HO CHÍ MINH
DAI HOC CONG NGHE THONG TIN
KHOA KHOA HOC MAY TINH
DANH VO HONG PHUC - 20520275
MAI TRUNG KIEN - 20520055
KHOA LUAN TOT NGHIEP
DANH GIA MOT SO PHUONG PHAP NHAN DANG VAN BAN
NGOẠI CANH CHO ANH CÓ ĐỘ PHAN GIẢI THAP
EVALUATION SOME LOW-RESOLUTION TEXT IMAGES
RECOGNITION APPROACHES
CU NHAN NGANH KHOA HOC MAY TINH
GIANG VIEN HUONG DAN
TS NGO DUC THANH
ThS DO VAN TIEN
TP HO CHÍ MINH, 2023
Trang 2DANH SÁCH HOI DONG BẢO VỆ KHÓA LUẬN
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo quyết định số
Ledeen eee eset ee ena eenee eases Nay của Hiệu trưởng Truong Dai học Công nghệ Thông tin.
] ẤP 27 ỐẾPP? - Chủ tịch.
2 Le PP đề - Thư ký.
3 P, ĐỀ - Uỷ viên.
Trang 3LỜI CÁM ƠN
Lời đầu tiên, em xin chân thành cảm ơn thầy Ngô ĐứcThành và thầy Đỗ Văn Tiến, hai người thầy đã tận tâm hướng dẫn
em trong suốt quá trình thực hiện khoá luận Không chỉ giúp em
vượt qua khó khăn gặp phải khi thực hiện khoá luận, khi làm việc
với thầy, em còn được học những kiến thức, kỹ năng quan trọng
giúp ích cho công việc của mình sau này.
Em cũng xin gửi lời cảm ơn đên tat các ca thay, cô là giảng viên của trường nói chung và khoa Khoa học máy tính nói riêng
đã giảng dạy, chỉ bảo tận tâm trong suôt thời gian em học tập và rèn luyện tại trường Đại học Công nghệ Thông tin.
TP.HCM, tháng 1 năm 2024
Sinh viên thực hiện
Trang 41.3 Đóng góp của khoá luận - -s k1 nh ng nu ng ng 7
1.4 Cầu trúc của khoá luận -.-¿ 22+++tttEE vi 8
CHUONG 2 CƠ SỞ LÝ THUYET VÀ CÁC NGHIÊN CUU LIEN QUAN 9
2.1 Bài toán nhận dang văn ban trong anh chụp ngoại cảnh «+ «++s+ 9
2.2 Bài toán nhận dạng văn ban trong ảnh ngoại cảnh có độ phân giải thấp 12 2.2 Cơ sở lý thUyẾt ccc se 2s 2112111711111 1110111011111 111 T1 T1 HH ng rêu 13
2.2.1 Mạng nơ-ron tích chập (Convoluational Neural Network)
2.2.2 Mang nơ-ron héi quy (Recurrent Neural Network)
2.2.3 Mô hình Sequence-fo-Sequene «+ +sx++xsseseessrs 2.2.4 Mô hình AtfentfiOn - cece + 5+ 5+ SE 22 2E rriec 2.2.5 Mô hình Transformer oo cece 2 6 eee +2 E31 E 21191121 E1 E1 21 21 11 1 g1 Hư,
2.3 Các nghiên cứu liên qua1 -s- - 6 6 262131212 vn ng HH ni 33
2.3.1 Các bộ dit liệu chuân ccc¿ - 555cc vi 33
2.3.2 Các phương pháp liên quan - + c3 2%**E*EEsEEvEEekeekseerererseree 36
2.3.2.1 Giai đoạn điều chỉnh lại hình ảnh ¿- - 25s e£eEzEerxerxexerxee 37 2.3.2.2 Giai đoạn trích xuất đặc trưng ¿¿+c+++c++++rxrsrxesrxeerreerrei 39
2.3.2.3 Giai đoạn mô hình hóa chuỗi - ¿+ + + +E+k+EeE+E+EeEzxexereesee 40
2.3.2.4 Giai doan mhan dang oo ố 40
CHUONG 3 MOT SO PHUONG PHAP NHAN DANG VAN BAN TRONG ANH CHỤP NGOẠI CANH CO ĐỘ PHAN GIẢI THÁP
3.1 Convolutional Recurrent Neural Networks ¿-+++2< << s*++2ss++sseexcess
3.1.1 Kiến trúc mô hình
3.1.2 Feature Sequence Extraction
3.1.3 Sequence LabeÌing - -.- - «+ + 1v nh ng Hưng ngư
bệnh V01 49
3.2.1 Kiến trúc mô hình - -¿ +++t+222+v+vtttEEEktrittttktrrrtttrirrrrriiirrriiio 50
3.2.2 Spatial TTaIISÍOTI€T 6 111911 31 1 1 TH TH TT TT HH Hàn nà 50
Trang 53.2.3 Residue Feature EXITACẨOT - G2 1332211111631 11151111 811111821111 22 xxe 51
3.5.1 Permutation Language Modeling (PLM|) - s5 5c ssvessese 61
3.5.2 Tổng quát mô hình 2-2 2+E£+EE+EE+EESEEEEEE2E12711221212271211 220, 62
CHƯƠNG 4 THỤC NGHIEM VA DANH GIÁ - 2-22 2s s 66
4.1 Xây dựng tập dữ liỆu - G5 hnHnH HH TH ng TH Hàn ni 66
4.1.1 Nguồn dữ liệu 2:¿2552- 5+1221221127111112112112111 1110.112 ca 66
4.1.2 Gán nhãn dữ liệu :- 22: ©2S+222++2SE2EE2EE+SEEEEEEEEEEErerkverkrrrrrrerkree 67
4.1.3 Tăng cường dữ liỆU - - G1 S1 TT TH nh ng tru 68
4.2 Các độ do được sử dụng dé đánh giá -¿- 22 2+c2ckcSEkSEkeEkkrrrkrrrkree 71
4.2.1 Độ chính xác (ACCULACY) oo eee eeeecesneteeeeeeteeeseceeeaecseceaeeseeeaeeseceaeeaeeeseeaeees 71
4.2.2 Số khung hình trên giây (Frame Per Second) c.ssscsssessssesssessstesssesseesseee 71
4.3 Chi tiết thực nghi@m.e s ccccccescscessesssesssessssesssesssesssesssesssesssesssessssessuesssesaseessees 71
4.4 Kết quả và đánh giá - ¿2s s21 22k 211221 2112711211711211111 1121111111 xe 72
CHƯƠNG 5 KET LUẬN VA HUONG PHÁT TRIEN . 82
ca na < 82 5.2 Hướng phát tien ceccccccccscsssessessesssesssessecsssssessssesesssessusssessusssesssessesssessneeseesseess 82
Trang 6DANH SÁCH BANG
Bang 1 So sánh bài toán OCR và ŠTÌ S555 + sskksseesesserse 10
Bảng 2 Thong kê số lượng dit liệu - 2-52 52S£+E+E‡£ereEererssxee 67
Bang 3 Kết quả đánh giá các mô hình với tập dữ liệu pretrain là MJ và
— A<Œ 75
Bang 5 Kết quả đánh giá dựa trên độ chính xác và FPS - 76
Bang 6 Kết quả chạy dự đoán trên một số ảnh khó - 5+ 78
DANH SÁCH HÌNH VE
Hình 1 Mô tả dau vào và dau ra của bài toán Scene Text Recognition 2
Hình 2 Phán loại các ảnh văn Đđ c5 31k k++£+sskeees 11
Hình 3 Một mẫu ảnh trong tập dữ liệu Te€XIZOOI «S55 <<+++++ 36
Hình 4 Minh hoạ các điển chuẩn ( (fiducial point) trong quá trình biến
Hình 5 Minh hoạ giai đoạn trích xuất đặc trưng (Feature Extraction) 40
Hình 6 Minh hoa giai đoạn mô hình hoá chuổi -5- 5 s52 40
Hình 7.Minh hoa giai đoạn dự đoán 7275 a 4]
Hình 8 Mô tả đầu vào và đầu ra của thuật toán CTC c5: 4]
Hình 9 Nhận dang từng kí tự theo time-StepPs ceecccescccseccesseeetseesnecenneeeaes 42
Hình 10 Mô tả đường đi theo từng thời điển của CTC loss 44
Trang 7Hình 11 Lớp noi bó với stride = 2 2 2+c2+c+Eecterterterrrssree 15
Hình 12 Cau trúc của ÑNNN -c-cccsccccescrrttsrrtrrsrrrrrrrrrrrree 17
Hình 13 Kiến trúc của mô hình S€qU€nC6-fO-SCqQIH€HC€ «SSS+ T9
Hình 14 Kiến trúc tổng quan của mô hình seq2seq có sử dụng cơ chế
0 2117/0000nn0n8Ẻ8Ẻ86886h.eee 20
Hình 15 Vector ngữ nghĩa trong kiến trúc attenion - 21
Hình 16 Cách mô hình attention sử dung dung vector ngữ nghĩa dé tạo
ra vector trạng thái ẩn AttentiON ecccccecsesscsssessessesssessessessesssessessessesssessecses 22
Hình 17 Tinh điểm số attention s.sccccccsesscsssssvessessvsssessessessssssessessesssessessee 23
Hình 18 Kiến trúc của mô hình TraI$ƒOFI€L - 55555 5s5s+cs+ss2 26
Hình 19 Cách hoạt động của Self-attention sec S5 cSS<£++s++sx++ 29
Hình 20 Ví dụ cách hoạt động của Position Encoding 33
Hình 21 Kiến trúc của mô hình CRNN -e cccccecccccees 46
Hình 22 Mỗi vector trong chuỗi đặc trưng được liên kết với một trườngtiếp nhận và có thé được coi là mô tả của ảnh cho vùng đó 48
Hình 23 Kiến trúc tong quan mô hình ASTER -2©-s s5: 50
Hình 24 Cấu trúc của Spatial Transformer ccccscecscsscsssessessesssessessesseessesves 31
Hình 25 Tổng quan về mô hình SVIR 2-s+ce+c++kerkerersrssree 52
Hình 26 Global Mixing (a) va Local Mixing (b) « +-<<<<++ 54
Hình 27 Tổng quan về mô hình A BÌÌNet - 2-2 e+ce+ererererssxee 55
Hình 28 Mô hình thị giác (Vision ModeÌ) «s5 <ss + +ss++seexsess+ 57 Hình 29 Mô hình ngOn IgiẼ cv HH Hệ 59 Hình 30 Mô hình ParSeg cccccccccssccesscsessceenscesseceseeeesecseseceseeseaeeesseenseeenaes 60
Trang 8Hình 31 Tổng quan mô hình và cách huấn luyện của PARSeq 62
Hình 32 Khối decoder của PARSeq - được đặt tên là Visio-lingual
decoder Mỗi lớp của khối sẽ có điểm khác biệt là có đến 2 lớp attention
ẳỐỔÃỔỒỔẮỔẮỒẮẦẮẮẮẮẮỶẢ ÔLỒ© 63
Hình 33 Ảnh văn bản với độ phân giải 120 x 180 - 66
Hình 34 Ảnh văn bản với độ phân giải 20 X 50 ceccccecccsccsesecsesessesessesees 67
Trang 9DANH MỤC TỪ VIET TAT
OCR Optical Character Recognition
LSTM Long Short-Term Memory
CNN Convolutional Neraul Network
RNN Recurrent Neural Network
STR Sence Text Recognition
Trang 10TOM TAT KHOA LUẬN
Bài toán Scene Text Recognition (Nhận diện văn ban trong ảnh ngoại cảnh) là một trong những bài toán quan trọng trong lĩnh vực thị giác
máy tính và xử lý ngôn ngữ tự nhiên Nó tập trung vào việc nhận dạng và
trích xuất văn bản từ hình ảnh chứa các đoạn văn bản tự nhiên, ví dụ nhưbiển báo đường, biểu hiệu, tập tin PDF được chụp từ camera, hay các hình
ảnh từ sách báo Đầu vào của bài toán là ảnh có chứa chữ ở dạng từ, đầu
ra của bài toán là văn bản tương ứng với chữ xuất hiện trong ảnh Bài toánnhận dang van bản ngoại cảnh tuy đã đạt được một số thành công nhấtđịnh, tuy nhiên khi gặp các trường hợp như ảnh trong văn bản xuất hiện
với các font chữ phức tạp, các chữ cái trong ảnh được phân bồ theo chiều
dọc, nhãn của ảnh văn bản có chứa kí tự đặc biệt hay ảnh có độ phân giải
thấp vẫn còn gây khó khăn cho các mô hình nhận dạng văn bản Trong đó,
bài toán nhận diện văn bản đối với các ảnh có độ phân giải thấp là một bàitoán có nhiều thách thức, độ phân giải thấp làm cho các nét chữ bị mờ, các
thông tin thị giác như góc, cạnh, nét của văn bản không còn rõ ràng gây
khó khăn cho việc nhận dạng Bên cạnh đó, phông nền của ảnh văn bản có
độ phân giải thấp có thể bị nhiễu, làm ảnh hưởng đến quá trình nhận dạngchữ Theo tìm hiểu của tôi, hiện nay chưa có bộ dữ liệu nào tập trung giảiquyết bài toán nhận diện văn bản ngoại cảnh cho ảnh có độ phân giải thấp
Do đó, trong phạm vi khóa luận lần này, chúng tôi sẽ xây dựng tập dit liệu
ảnh văn bản có độ phân giải thấp dựa trên những tập đữ liệu đã có sẵn, tập
trung chủ yếu cho tiếng Anh Sau đó, chúng tôi sẽ thực nghiệm đánh giá
các phương pháp thuộc các hướng tiếp cận khác nhau trên tập dữ liệu đã
xây dựng được Từ đó, đưa ra nhận xét, đánh giá và phân tích ưu, nhược
điêm của các mô hình được đánh giá.
Trang 11Từ khoá: nhận diện chữ trong ảnh, độ phân giải thấp, text
recognition, low-resolution images.
Trang 12CHƯƠNG 1 TONG QUAN
1.1 Dat van dé
Scene Text Recognition (STR) là một bai toán quan trong trong lĩnh vực xử ly
hình ảnh và thị giác máy tính Mục tiêu chính của nó là nhận diện và trích xuất thôngtin từ văn bản xuất hiện trong các bức ảnh chụp từ môi trường thực tế, nơi văn bản có
thê xuât hiện trong các điêu kiện ánh sáng, góc nhìn và nên đa dạng.
Bài toán STR đóng vai trò quan trọng trong nhiều lĩnh vực ứng dụng khác
nhau, mang lại những đóng góp quan trọng cho sự tiện lợi và hiệu quả trong xử lý
thông tin Một trong những ứng dụng nỗi bật của bài toán này là trong lĩnh vực xe tựlái, nơi mà hệ thống cần nhận diện và đọc thông tin từ biển số xe và các biéu ngữđường đề đưa ra quyết định an toàn và hiệu quả
Ngoài ra, trong lĩnh vực quản lý tài liệu và số hóa văn bản, Scene TextRecognition cũng đóng vai trò quan trọng Hệ thống có thé tự động quét và nhận diệnvăn bản từ ảnh chụp tài liệu, giúp giảm thời gian và công sức cần thiết cho việc nhậpliệu và tổ chức thông tin Điều này có thé tăng cường khả năng tìm kiếm và truy xuất
thông tin nhanh chóng, làm cho công việc quản lý tài liệu trở nên thuận tiện hơn.
Trong lĩnh vực bảo mật, Scene Text Recognition cũng được ứng dụng đề giámsát và nhận diện thông tin từ hình ảnh camera an ninh Hệ thống có thể phát hiện và
báo cáo về các vấn đề như việc đỗ xe không đúng quy định hoặc nhận diện nguy cơ
từ văn bản xuât hiện trong các khu vực cân được theo dõi.
Với sự tiễn bộ của công nghệ học máy và trí tuệ nhân tạo, bài toán Scene Text
Recognition không chỉ giúp tối ưu hóa các quy trình tự động hóa ma còn mở ra nhiều
ứng dụng mới trong nhiều lĩnh vực, đóng góp tích cực cho sự phát triển và hiện đại
hóa xã hội.
Trang 13————>x "sleeper"
Hình 1 Mô ta dau vào va dau ra cua bài toán Scene Text Recognition
Đầu vào: Dữ liệu đầu vào của bài toán STR thường là các hình ảnh chứa vănbản, có thể là ảnh chụp từ camera di động, camera giám sát hoặc bất kỳ nguồn hình
ảnh nào Những ảnh này có thể chứa văn bản với các đặc điểm đa dạng như kích
thước, kiêu chữ, màu sac, độ nghiêng và nên phức tạp.
| iiI#i9]3BiIf8
$6.98 MT a pee tz) Pathan
(a) Difficult fonts (b) Vertical texts (€c) Special characters (d) Occlusion (e) Low resolution (f) Label noise.
Hình 2 Các thách thức cua bài toán STR
Trang 14Ảnh văn bản có thé được chụp tử nhiều nguồn khác nhau như điện thoại, máy
quay phim, máy ảnh, các camera và có thé được chụp trong nhiều tình huéng khácnhau Vì vậy chất lượng của ảnh văn bản rất phong phú và đa đạng Theo như bài báo[1], thì bài toán STR vẫn còn đang đối mặt với nhiều thách thức như font chữ khóđọc (Hình 2(a)), văn bản có thể nằm đọc (Hình 2(b)), văn bản có chứa các kí tự đặc
biệt (Hình 2(c)), văn bản có thé bị che khuất (Hình 2(d)), văn bản có độ phân giải
thấp (Hình 2(e)), nhãn của văn bản bị lỗi (Hình 2(f))
Hình 3.Các ảnh có độ phân giải thấp xuất hiện trong các tập dữ liệu chuẩn
Sự thách thức của bài toán nhận diện ảnh đối với các hình ảnh có độ phân giải
thấp là một vấn đề lớn đang đối mặt với cộng đồng nghiên cứu và phát triển tronglĩnh vực thị giác máy tinh Độ phân giải thấp đặt ra những rắc rối đáng ké do thôngtin chỉ tiết bị mất mát, gây khó khăn trong việc xác định đối tượng và chỉ tiết hình
ảnh.
Khi ảnh có độ phân giải thấp, các đặc trưng quan trọng của đối tượng trở nên
mờ nhạt, làm tăng độ khó khăn trong quá trình phân loại và nhận diện Các thuật toán
thông thường dựa vào việc phát hiện các đường biên, cạnh và chỉ tiết nhỏ để xác định
Trang 15đối tượng, nhưng với độ phân giải thấp, thông tin này có thé trở nên không đủ đáng
tin cậy.
Hơn nữa, việc giảm sự phức tạp của mô hình nhận diện dé tối ưu hóa cho anh
độ phân giải thấp cũng là một thách thức khác Các mô hình thông thường được huấnluyện trên dữ liệu có độ phân giải cao và chúng có thể không hiệu quả khi áp dụngtrực tiếp cho ảnh độ phân giải thấp mà không có sự điều chỉnh
Theo quan sát của chúng tôi đối với các tập dit liệu chuẩn của bài toán STRnhư ICDAR2015[2], IIT5KI3], SVT[4], ảnh văn bản với độ phân giải thấp dẫn tớichất lượng của hình ảnh rất kém và có thê khó khăn cho quá trình nhận dạng Tuynhiên hiện nay vẫn chưa có bộ dữ liệu nao tập trung giải quyết van đề này Theo nhưhiểu biết của chúng tôi, hiện chỉ có bộ đữ liệu TextZoom là có mối liên hệ gần nhất
với vấn đề đữ liệu ảnh có độ phân giải thấp Tuy nhiên, bộ dữ liệu này thuộc lớp bài
toán tăng độ phân giải của ảnh (Super Resolution) nên định dạng của dit liệu vẫn còn
chưa phù hợp với bài toán STR Vì những nguyên nhân trên, chúng tôi tiến hành xây
dựng tập dữ liệu chữ nghệ thuật trong đó có cả dữ liệu tiếng Anh
Về các phương pháp nhận diện văn bản, chúng ta chứng kiến sự đa dạng và tiến
bộ đáng kể trong các phương pháp tiếp cận Các nghiên cứu và ứng dụng ngày càng
đa dạng, nham nâng cao khả năng nhận diện và hiệu nội dung văn bản trên hình ảnh.
Tổng quan, các phương pháp nhận diện văn bản có thê được chia thành hướng
tiêp cận như sau:
e Hướng tiếp cận sử dụng các mô hình CNN (Convolutional Neural
Network) truyền thống
e Hướng tiếp cận sử dụng cơ chế Attention
e Hướng tiếp cận sử dụng thêm mô hình ngôn ngữ
Trang 16Đầu tiên, hướng tiếp cận sử dụng các mô hình CNN đã thu hút được một sự quantâm đặc biệt trong những năm 2015, trong đó phải kế đến mô hình CRNN(Convolutional Recurrent Neural Network) Đây là một trong những mô hình đầu tiên
đã đạt được sự thành công khi áp dụng CNN vào bài toán nhận dạng văn bản và dat
được độ chính xác rất cao so với các phương pháp sử dụng các thuật toán học máy
truyền thống
Một hướng tiếp cận khác quan trọng và đang là xu hướng trong lĩnh vực thị giác
máy tính là các hướng tiếp cận sử dụng cơ chế Attention Cơ chế này tập trung vàoviệc tăng cường sự tập trung của mô hình vào các phần quan trọng của hình ảnh hoặcvùng chứa văn bản Điều này giúp cải thiện khả năng nhận diện và giảm thiểu ảnh
hưởng của các yếu tố nhiễu, như ánh sáng không đồng đều hoặc nền phức tạp Hướng
tiếp cận này đã được nhiều mô hình ứng dụng và đạt được những thành công vượt
trội so với cách tiếp cận chỉ sử dụng các mạng CNN truyền thống
Cuối cùng, hướng tiếp cận sử dụng thêm mô hình ngôn ngữ đang ngày càng trởnên phổ biến Việc tích hợp mô hình ngôn ngữ giúp mô hình có khả năng hiểu ngữcảnh xung quanh văn bản, từ đó cải thiện khả năng hiểu nghĩa và ngữ cảnh của các
đoạn văn bản Sự kết hợp giữa khả năng nhận diện hình ảnh và hiểu ngôn ngữ giúp
tăng cường khả năng xử lý thông tin đa chiều và đa dạng
Trong phạm vi khoá luận lần này, chúng tôi sẽ tiến hành đánh giá các phương
pháp như đã trình bày trên tập dữ liệu đã xây dựng được Từ đó, đưa ra những nhận
xét, đánh giá cũng như phân tích các mô hình trên.
Trang 17+ Đánh giá và so sánh một số phương pháp tiên tiến hiện nay trong việc nhận
dạng văn bản trên ảnh có độ phân giải thấp, phân tích ưu điểm và nhược điểm
của từng phương pháp.
* Xây dựng hệ thong minh họa cho việc đánh giá và so sánh các phương phápnhận dạng văn bản trong điều kiện độ phân giải thấp
1.2.2 Phạm vỉ
Dựa trên những mục đã đề xuất tại nội dung 1.2.1, trong khuôn khổ của khóa
luận, tôi sẽ tập trung hoàn thành các nội dung sau đây:
+ Xây dựng tập dữ liệu anh văn bản ngoại cảnh có độ phân giải thấp trong tiếng
Anh từ các tập dữ liệu chuẩn như ICDAR2015[2], HIT5K[3], SVT(4],
Trang 181.3 Đóng góp của khoá luận
Sau đây là một số kết quả đóng góp mà tôi đã đạt được trong quá trình thực
hiện khóa luận:
+ Xây dựng bộ dữ liệu khoảng 2800 ảnh, tập dữ liệu này bao gồm các ảnh có
độ phân giải thấp, chất lượng kém
* Cài đặt các mô hình cho quá trình huấn luyện
* Đánh giá, phân tích ưu nhược điểm của một số phương pháp tiên tiến hiện
nay trên tập dữ liệu đã xây dựng: CRNN, ASTER, SVTR, ABI-Net, ParSeq
s Xây dựng ứng dụng minh hoa
Trang 191.4 Cau trúc của khoá luận
Chương 1: Giới thiệu tổng quan về bài toán nhận dạng văn bản trong ảnh chụp
ngoại cảnh.
Chương 2: Cơ sở lý thuyết và các nghiên cứu liên quan
Chương 3: Trình bày các phương pháp được sử dụng trong quá trình thực nghiệm.
Chương 4: Trình bày về cách xây dung dit liệu, các thang đo được sử dụng
để đánh giá và so sánh kết quả của các phương pháp trên tập dữ liệu đã xây
dựng.
Chương 5: Kết luận về khoá luận tốt nghiệp và hướng phát triển trong tương
lai
Trang 20CHƯƠNG 2 CƠ SỞ LÝ THUYET VÀ CÁC NGHIÊN
CỨU LIÊN QUAN
Trước khi đi vào nội dung chính của khóa luận, chúng tôi xin được trình bay
các khái niệm, cơ sở lý thuyết của bài toán nhận dạng văn bản và một số hướng tiếp
cận phổ biến cũng như các nghiên cứu liên quan
2.1 Bài toán nhận dạng văn bản trong ảnh chụp ngoại cảnh
Văn bản là một hệ thống các biểu tượng được sử dụng dé ghi lai, truyén dat
hoặc kế thừa văn hóa La một trong những phat minh có anh hưởng lớn nhất của loài
người, văn bản đã đóng vai trò quan trọng trong cuộc sóng con người Cụ thể, thông
tin ngữ nghĩa phong phú và chính xác được mang theo bởi văn bản đóng vai trò quan
trọng trong nhiều kịch bản ứng dụng dựa trên thị giác, như tìm kiếm hình ảnh, kiểmtra thông minh, tự động hóa công nghiệp, điều hướng robot và dịch thuật tức thì Do
đó, việc nhận dạng văn bản trong các cảnh tự nhiên đã thu hút sự chú ý của các nhà
nghiên cứu và người thực hành, như cho thấy thông qua sự xuất hiện của các cuộc thi
như “ICDAR Robust Reading Competitions" Nhận dạng văn bản trong các cảnh tự
nhiên, còn được gọi là nhận dang văn bản cảnh (STR), thường được coi là một dạng
đặc biệt của nhận dạng ký tự quang học (OCR), tức là OCR mà văn bản xuất hiện
được chụp từ các Mặc dù OCR trong ảnh chụp tài liệu đã đạt được những thành tựu
đáng kể, nhưng STR vẫn day thách thức do nhiều yếu tô như phông nền phức tạp, cáckiểu chữ khác nhau và điều kiện hình ảnh không hoàn hảo Hình dưới đây cho thay
sự khác nhau giữa bai toán OCR thông thường so với bai toán Scene Text Recognition.
Trang 21OCR trong văn bản được scan Scene Text Recognition
Jarren Wilson
e Phéng nên sạch e Phông nén phức tap
e Một màu duy nhất, kiều chữ đều, e Nhiều màu sắc, các kiểu chữ
kích thước nhất quán và sắp xếp không đều, kích thước khácđồng nhất nhau và hướng đa dạng
e Rõ ràng và phía trước e BỊ méo mó do ánh sáng không
e_ Chiếm phan lớn hình ảnh đồng đều, độ phân giải thấp và
mờ chuyên động.
e Được chụp ngẫu nhiên trong môi
trường tự nhiên của nó.
Bang 1 So sánh bài toán OCR và STR [11]
Văn bản trong hình ảnh có thê xuất hiện dưới nhiều dạng thức khác nhau, thểhiện trong Hình 2 với các ví dụ và phân loại điển hình
Trang 22Hinh 4 Phan loai cac anh van ban
Theo hình thức van ban, ta có thé phan loai thanh hai nhom co ban: van banviết tay va văn ban in an Đáng chú ý là các phương pháp phân loại có thé chồngchéo lên nhau Nhận dạng chữ viết tay thường khó khăn hơn so với chữ in do sự đa
dạng về phong cách việt và vân đê các ký tự dính liên nhau.
Tùy thuộc vào hệ thống chữ viết và ngôn ngữ, văn bản trong hình ảnh có thểbao gồm các ký tự khác nhau như Latinh, Trung Quốc hoặc Hindi Các đặc điểm của
văn bản, chăng hạn như loại văn bản và thứ tự đọc, cũng rất khác biệt giữa các ngôn
ngữ.
Văn bản trong hình ảnh còn được phân chia thành "văn bản đồ họa" và "vănbản cảnh" Văn ban đồ họa đề cập đến văn bản được thêm vào kỹ thuật số dưới dạnglớp phủ trên video hoặc hình ảnh Văn bản cảnh là văn bản xuất hiện trên các vật thé,
được chụp trong môi trường tự nhiên của nó.
Văn bản cảnh có nhiều kiểu dang đa dạng và có thé xuất hiện trên bất kỳ bềmặt nào, gây khó khăn trong việc phân biệt văn bản với nền phức tạp Hầu hết các
phương pháp được tóm tắt trong bài viết này đều tập trung vào văn bản cảnh Latinh
được in ân.
Trang 23Nhận dạng văn bản trong cảnh tự nhiên đã thu hút sự quan tâm lớn từ cả giới
học thuật và công nghiệp trong những năm gần đây do tính quan trọng và những tháchthức của nó Các nghiên cứu ban đầu chủ yếu dựa vào các đặc điểm được tạo thủcông Khả năng thấp của những đặc điểm này hạn chế hiệu suất nhận dạng Với sựphát triển của học sâu, các mạng neural đã tăng đáng kể hiệu suất của các thuật toánnhận dạng văn bản cảnh Một sỐ yếu tố chính đang thúc đây các thuật toán nhận dạng
văn bản cảnh dựa trên học sâu Yếu tố đầu tiên là sự tiến bộ trong hệ thống phan cứng
Các hệ thống máy tính có hiệu suất cao có thể huấn luyện các mạng nhận dạng quy
mô lớn Hơn nữa, các thiết bị di động hiện đại có khả năng chạy các thuật toán phứctạp trong thời gian thực Yếu tổ thứ hai là việc học đặc trưng tự động trong các thuật
toán nhận dạng văn bản cảnh dựa trên học sâu, không chỉ giải phóng các nhà nghiên
cứu khỏi công việc mệt nhọc của việc thiết kế và lựa chọn các đặc điểm được tạo thủcông, mà còn cải thiện đáng ké hiệu suất nhận dạng Yếu tố thứ ba là nhu cầu ngày
càng tăng cho các ứng dụng nhận dạng văn bản cảnh Văn bản trong cảnh tự nhiên có
thể cung cấp thông tin phong phú và chính xác, điều này có lợi cho việc hiểu cảnh.Việc nhận dạng tự động văn bản trong cảnh tự nhiên là kinh tế có lợi trong thời đại
dữ liệu lớn, điêu này thu hút sự quan tâm của các nhà nghiên cứu.
2.2 Bài toán nhận dang văn bản trong ảnh ngoại cảnh có độ phan
Trong quá trình quan sát các bộ dữ liệu liên quan đến bài toán Scene TextRecognition, chúng tôi nhận thấy có không ít các ảnh có độ phân giải thấp và khôngđược chụp trong điều kiện lý tưởng Chính vì vậy mà ảnh ảnh này có chất lượng kémnhư các nét chữ bị mờ, bị biến dạng hoặc bi mat đi Hình ảnh văn bản độ phân giảithấp thường xuất hiện trong các cảnh tự nhiên như các biển hiệu, biển quảng cáo được
chụp bằng điện thoại di động, từ các camera có chất lượng thấp Việc nhận dạng các
hình ảnh văn bản độ phân giải thấp rất khó khăn vì chúng mắt thông tin chỉ tiết về nộidung, dẫn đến độ chính xác nhận dạng kém
Trang 24Theo đó, trong khuôn khổ của khoá luận lần này, chúng tôi sẽ tiến hành xâydựng bộ dit liệu anh văn bản có độ phân giải thấp Dữ liệu mà chúng tôi tiến hànhxây dựng sẽ dựa trên các tập dữ liệu chuẩn như ICDAR2015, SVT, IIT5K va
TextZoom.
2.2 Cơ sở lý thuyết
2.2.1 Mang nơ-ron tích chập (Convoluational Neural Network)
Convolutional Neural Networks [12] (CNNs) là một loại mạng nơ-ron thường được sử dụng trong xử lý ảnh và nhận diện văn bản Trong bài toán nhận diện văn
bản trong cảnh (Scene Text Recognition), CNNs chơi một vai trò quan trọng trong
việc nhận diện và hiểu được các ký tự, từ hoặc câu văn trong các bức ảnh có chứa
văn bản.
Mang CNN được thiết kế dé tự động học các đặc trưng và cau trúc của dit liệuảnh thông qua việc áp dụng các bộ lọc (filters) thông qua các lớp convolutional Điều
này cho phép mạng có kha năng nhận biết các đặc điểm cụ thé trong ảnh như cạnh,
góc, hoặc các đặc trưng địa phương của từng khu vực.
Trong bai toán nhận diện văn bản, CNN thường được sử dụng dé phat hién cac
vùng chứa van ban trong anh (text localization), sau đó chia nhỏ vùng này thành các
phần nhỏ hơn để nhận diện từng ký tự hoặc từ Sau đó, thông qua các lớp fully
connected và các kỹ thuật như Recurrent Neural Networks (RNNs) hoặc Transformer,
mạng sẽ phân loại từng ký tự để xác định văn bản chính xác trong ảnh
Cấu trúc của một CNN gồm những thành phan sau:
2.2.1.1 Lớp tích chập
Lớp tích chập là lớp quan trọng nhất trong CNN, chịu trách nhiệm trích xuấtcác đặc trưng từ ảnh Lớp tích chập hoạt động băng cách quét ảnh với các bộ lọc nhỏ
Trang 25Mỗi bộ lọc có một kích thước nhất định và một gia tri trọng số cho mỗi pIxel trong
bộ lọc.
Qua trình tích chập được thực hiện như sau:
1 Đầu tiên, bộ lọc được đặt tại một điểm có định trong ảnh
2 Tiếp theo, các giá trị của bộ lọc được nhân với các giá trị của ảnh tại điểm đó
3 Kết quả được cộng lại dé tạo ra một gia tri mới
4. Quá trình này được lặp lại cho tat cả các điểm trong ảnh
Kết quả của lớp tích chập là một ma trận mới, có kích thước nhỏ hơn ảnh sốc Ma trận này chứa các đặc trưng cục bộ của ảnh, được thể hiện dưới dạng các
giá trị số
2.2.1.2 Lớp nối bó (Pooling Layer)
Lớp nối bó là lớp được sử dụng dé giảm kích thước của ảnh mà không làm
mat đi các thông tin quan trọng Lớp nối bó hoạt động bằng cách tóm tắt thông tin từ
một vùng nhỏ của ảnh thành một giá trị đơn lẻ.
Các ham pooling phố biến bao gồm:
e Max pooling: Lấy giá trị lớn nhất trong vùng nhỏ của ảnh
e Average pooling: Tính trung bình các giá tri trong vùng nhỏ của ảnh.
Trang 26Max pooling
Averàe pooling 2x2 pooling,
stride 2
Hình 5 Lĩp nĩi bĩ với stride = 2
2.2.1.3 Lớp kích hoạt (Acitivation Layer)
Lớp kích hoạt là lớp được sử dụng dé tăng tính phi tuyến của mạng va cho phép
học các mối quan hệ phức tạp giữa các đặc trưng Các hàm kích hoạt phổ biến bao
gồm:
e ReLU: Ap dung hàm ReLU cho các giá trị đầu vào, chỉ giữ lại các giá trị
dương Cĩ cơng thức sau:
2.2.1.4 Lớp hồn tốn nối tiếp (Fully-connected layer)
Lớp hồn tồn nối tiếp là lớp cuối cùng trong CNN Lớp này kết hợp các đặctrưng đã được trích xuất thành một khơng gian vector duy nhất và thực hiện phân loại
hoặc hồi quy tuyến tính
Trang 27Cấu trúc của CNN có thé được chia thành các loại chính sau:
e CNN đơn giản: Chỉ bao gồm các lớp tích chập, nối bó và kích hoạt
e CNN sâu: Có nhiều lớp tích chập nối tiếp nhau
e_ CNN kết hợp: Kết hợp các kiến trúc CNN khác nhau
2.2.2 Mạng nơ-ron hồi quy (Recurrent Neural Network)
Mạng nơ-ron hồi quy [13] (Recurrent Neural Network - RNN) là một loạimang neural thường được sử dụng trong việc xử lý dtr liệu tuần tự như chuỗi văn bản,
âm thanh, hoặc dữ liệu chuỗi thời gian.
Cấu trúc của RNN cho phép nó "nhớ" thông tin từ các bước trước đó trongchuỗi và áp dụng thông tin này vào các bước sau đó Điều này làm cho RNN trở nênhiệu quả khi làm việc với đữ liệu có tính tuần tự, vì nó có khả năng xử lý các dãy dữliệu mà mỗi phan tử trong đó phụ thuộc vào các phan tử trước đó
Cấu trúc cơ bản của RNN bao gồm một loạt các nơ-ron được kết nối theo
chuỗi Mỗi nút trong RNN nhận đầu vảo từ nút trước đó cùng với đầu vảo hiện tại
Điều này tạo ra một chuỗi các "trạng thái ấn" (hidden states) mà mỗi trạng thái chứathông tin kết hợp từ các bước trước đó và thông tin hiện tại
Một trong những vấn đề của RNN gốc là van đề biến mat và van đề vượt quákhoảng cách Trong quá trình huấn luyện, khi chuỗi trở nên dài, RNN có thể gặp khókhăn trong việc "nhớ" thông tin từ các bước xa trong quá khứ hoặc trong việc truyền
dữ liệu qua nhiêu bước một cách hiệu quả.
Dé giải quyết những hạn chế này, các biến thé của RNN đã được phát triển
như Long Short-Term Memory networks (LSTMs) và Gated Recurrent Units
(GRUs) Những biến thé này có kha năng giữ va sử dung thông tin từ qua khứ một
cách hiệu quả hơn, giúp cải thiện khả năng học và tổng quát hóa của mô hình trong
xử lý dữ liệu tuần tự.
Trang 28Câu trúc của RNN được mô tả như sau:
RNN là một mạng neural có cấu trúc lặp lại Mỗi nơ-ron trong RNN có thê kếtnối với các neural trong cùng một lớp hoặc các lớp trước đó Điều này cho phép RNNlưu giữ thông tin từ các phan tử trước đó trong chuỗi và sử dụng chúng dé xử lý phần
tử hiện tại.
Cấu trúc chung của một RNN gồm có 3 thành phan chính:
1 Lớp đầu vào (input layer): Lớp này nhận dit liệu đầu vào từ chuỗi
2 Lớp ấn (hidden layer): Lớp này thực hiện các phép tinh dé xử lý dữ liệu đầu
vào.
3 Lớp đầu ra (output layer): Lớp này tạo ra kết qua dự đoán
Hình 6 Cau trúc của RNN
Cách hoạt động của RNN
e Lớp đầu vào nhận dữ liệu đầu vào từ chuỗi
e Lớp ân thực hiện các phép tính dé xử ly dit liệu đầu vào Các phép tính này có
thể bao gồm các phép tính cộng, nhân, hàm kích hoạt, v.v
e Lớp đầu ra tạo ra kết quả dự đoán
Các phép tính trong RNN:
Phép cộng: Phép cộng được sử dụng đê cộng các giá tri của các nơ-ron trong
cùng một lớp hoặc các lớp khác nhau.
Trang 29Phép nhân: Phép nhân được sử dụng đê nhân các giá tri của các nơ-ron với các trọng sô.
Hàm kích hoạt: Hàm kích hoạt được sử dụng dé biến đôi giá tri của các
no-ron.
2.2.3 M6 hinh Sequence-to-Sequence
Mô hình Seq2Seq được công bố lần đầu tiên vào năm 2014 bởi Ilya Sutskever,
Oriol Vinyals, và Quoc V Le trong bài báo "Sequence to Sequence Learning with
Neural Networks" [14] Bài báo này đã được xuất bản trên tạp chí Advances in Neural
Information Processing Systems (NIPS).
Mô hình Seq2Seq được phat triển dựa trên các nghiên cứu trước đây về mạngnơ-ron hồi quy (RNN) Nó đã đạt được những thành công đáng ké trong các ứng dụng
như dịch máy, nhận dạng giọng nói, và đặc biệt nó còn được sử dụng cho bai toán Scene Text Recognition.
Trong mô hình Seq2Seq, bộ encoder là phần của mô hình có nhiệm vụ anh xachuỗi token đầu vào vào một không gian vector cố định, tạo ra vector trạng thái anbiểu dién cho chuỗi đầu vào Day là quá trình mã hóa thông tin từ chuỗi đầu vào Bộ
decoder, ngược lại, được sử dụng để tạo ra chuỗi token ở ngôn ngữ đích dựa trên
vector trạng thái ấn từ bộ encoder Bộ Encoder va Decoder là các mô hình RNN,thông thường, các mô hình cải tiến của RNN như GRU và LSTM sẽ được sử dụng
cho cả Encoder và Decoder.
Trang 30'
NULL Er liebte zu essen
Hình 7 Kiến trúc của mô hình Sequence-to-Sequence
Trong mô hình seq2seq, có hai thành phan quan trọng là encoder và decoder,chỉ tiết như sau:
Encoder: Giả sử chúng ta có một chuôi đâu vào là x = x,, ,x7 và mỗi z;là một
phân tử trong chuoi Mục tiêu của Encoder là chuyên đôi chuỗi này thành một vector
trạng thái ân duy nhất h, biêu điễn toàn bộ thông tin của chuỗi đầu vào
Decoder: Bộ giải mã được sử dụng để tạo ra chuỗi token ở ngôn ngữ đích Bộ giải
mã nhận đầu vào là vector trạng thái an, tại mỗi bước mã hóa, một kí tự sẽ được tao
ra, bước giải mã sẽ lặp lại cho đến khi gặp kí tự kết thúc hoặc chuỗi đầu ra đạt đến độ
đài quy định trước Hàm xác xuất có điều kiện được tính theo công thức sau:
m
PCV Vm Ì X1, ,Xn ) = | [oo |S,1, ,¿—1 )
t=1
2.2.4 M6 hinh Attention
2.2.4.1 Tổng quan mô hình Attention
Một van dé dé gặp phải khi sử dụng mô hình seq2seq là nó phụ thuộc rất nhiềuvào ngữ cảnh được biéu diễn bởi vector ân, đầu ra của bộ mã hóa Điều này có nghĩa
là nếu chuỗi đầu vào là quá dài, thì vector ngữ nghĩa ở đầu chuỗi có thé bị mat ở cuối
chuỗi.
Trang 31Dé giải quyét van dé nay, nhóm nghiên cứu đã đê xuat sử dụng mô hình
Attention[12] Mô hình Attention cho phép bộ giải mã truy cập vào tat cả các vector
trạng thái ân của bộ mã hóa Điêu này giúp bộ giải mã có được thông tin về toàn bộ
ngữ cảnh của chuỗi đầu vào, ngay cả khi chuỗi đó là quá dải.
Kiến trúc của mô hình Attention tương tự như mô hình seq2seq truyền thống,
nhưng có một sô thay đôi sau:
e Bộ giải mã có một bộ chuyên đôi (attention mechanism) mới, được sử dụng
đê tính toán mức độ quan trọng của môi vector trạng thái ân của bộ mã hóa.
e B6 giải mã sử dụng các vector trạng thái ân của bộ mã hóa, được trọng sô bởi
bộ chuyên đôi, dé tạo ra vector biêu diễn dau ra.
Ưu điểm của mô hình Attention
« Mô hình Attention có một số ưu điểm so với mô hình seq2seq truyền thống,
bao gôm:
« Kha năng xử lý các chuỗi đầu vào dài hơn.
e Kha năng duy trì ngữ nghĩa của chuỗi đầu vào tốt hơn
« - Giảm thiểu hiện tượng "vanishing gradient"
Trang 32Ở module Decoder, để tận dụng được các thông tin của tất cả các vector trạng
thái ân, một vector ngữ nghĩa (context vector) được tạo ra bằng cách tính tổng
của các tích giữa trọng số alignment ai và vector trạng thái ân tương ứng như
Hình 9 Vector ngữ nghĩa trong kiến tric attention
Đề sử dụng vector ngữ nghĩa trong quá trình dự đoán, ở mỗi bước dự đoán,
vector trạng thái ấn attention được tạo ra bằng cách nối vector ngữ nghĩa và
vector trạng thái ân ở bước thời gian tương ứng lại với nhau
Trang 33Hình 10 Cách mô hình attention sử dụng dụng vector ngữ nghĩa để tạo ra vector trạng
thái Gn attention
Dé biét được dau vào nao quan trọng trong bước dự đoán, mô hình cân phải
dự đoán xem đâu vào nảo là quan trọng Đê làm được điêu này, chúng ta cân phải có diém sô attention.
Diém sô attention là một giá tri sô biêu thi mức độ quan trọng của một dau vào
đôi với một đâu ra Nó được tính toán bởi một mô hình dự đoán riêng, gọi là mô hình
alignment Mô hình này được huấn luyện chung với mô hình seq2seq
Trong mô hình alignment, mỗi đầu vào (được biểu diễn bởi vector trạng thái
an) sẽ được đánh giá xem nó nên chú ý vào dau ra nào trước đó (được biểu diễn bởi
vector trạng thái ân attention) Điêu này được thực hiện băng cách tính toán similarity
giữa hai vector trạng thái an
Sau khi tính toán similarity, hàm softmax sé được tính trên tat cả các dau ra từ
mô hình alignment đê có được diém sô attention Điêm sô attention càng cao thì dau vào đó cảng quan trọng đôi với đâu ra.
Trang 34Vi dụ, gia sử chúng ta có một hình ảnh chụp một bảng hiệu cửa hang Bảng hiệu
có nội dung "Cửa hàng bán đồ chơi" Mô hình nhận dạng văn bản ngoại cảnh sẽ sử
dụng điểm sé attention dé xác định xem các phan tử trong hình ảnh nào là quan trọng
nhất đối với việc dự đoán nội dung của bảng hiệu Nếu điểm số attention của chữ
"Cửa hàng" cao hơn điểm số attention của các chữ khác, thì mô hình sẽ có nhiều khảnăng dự đoán nội dung của bảng hiệu là "Cửa hàng bán đồ chơi"
Trong ví dụ này, các dau vào cua mô hình là các pixel trong hình ảnh Mô hình
alignment sé tính toán điêm sô attention cho mỗi pixel, biểu thị mức độ quan trọng
cua pixel đó đôi với việc dự đoán nội dung của bảng hiệu Pixel có điêm sô attention
cao nhât sẽ được coi là quan trọng nhât.
2.2.4.2 Cấu trúc Bi - directional Attention
Trang 35Cấu trúc attention là một cấu trúc đơn hướng, trong đó mô hình chỉ có thể chú
ý đến văn bản ở một phía của khung hình Điều này có thé dẫn đến những hạn chế
sau:
e Kho khăn trong việc nhận dạng văn bản phía sau: Văn bản phía sau
có thé bi che khuất bởi văn bản phía trước, khiến mô hình khó nhận
ra.
e Khó khăn trong việc nhận dang văn ban bị chồng chéo: Văn bản bị
chồng chéo có thê khiến mô hình khó xác định vị trí của các ký tự
e Khó khăn trong việc nhận dạng văn ban có kích thước nhỏ: Văn bản
có kích thước nhỏ có thé khó phân biệt với các yếu tố khác trong
khung hình.
Đề khắc phục nhược điểm đó, ta thêm một bộ phận attetion tạo thành cấu trúc
Bi - directional Attention gồm 2 lớp Attetion, 1 cho phía trước và 1 cho phía sau
Cấu trúc bi-directional attention bao gom hai bộ phận: bộ phan attention phía
trước và bộ phận attention phía sau.
Bộ phận attention phía trước:
Bộ phận attention phía trước sử dụng một mạng attention dé điều chỉnh các
đặc trưng từ bộ phận nhận dạng văn bản, tập trung vào các đặc trưng của văn bản phía
trước trong khung hình.
Bộ phận attention phía sau:
Bộ phận attention phía sau sử dụng một mạng attention khác để điều chỉnh các
đặc trưng từ bộ phận nhận dạng văn bản, tập trung vào các đặc trưng của văn bản phía sau trong khung hình.
Hai bộ phận attention này hoạt động độc lập với nhau, nhưng kết quả củachúng được kết hợp lại để tạo ra các đặc trưng cuối cùng
Trang 36Ví dụ với văn ban "THE EXCHANGE", bộ phận attention phía trước sẽ tập
`
trung vào các đặc trưng của các ký tự "T", "H", "E", "N" và "C" Bộ phận attention
phía sau sẽ tập trung vào các đặc trưng của các ký tự "E", "X", "A" và "M" Kết quacủa hai bộ phận attention này sẽ được kết hợp lại dé tạo ra các đặc trưng cuối cùng,giúp mô hình có thể nhận ra các ký tự trong văn bản "THE EXCHANGE"
2.2.5 Mô hình Transformer
Vào năm 2017, cộng đồng nghiên cứu xử lý ngôn ngữ tự nhiên (NLP) đã chứngkiến một bước đột phá lớn với sự ra mắt của mô hình Transformer [15] Ké từ khi ramắt, Transformer đã phá vỡ nhiều ky lục trong các tác vụ NLP như dich máy, tóm tắt
văn bản, và trả lời câu hỏi.
Trước khi Transformer ra đời, các mô hình dich máy phổ biến sử dụng kiến trúc
encoder-decoder Trong đó, encoder chịu trách nhiệm trích xuất thông tin ngữ nghĩa
từ câu gốc, sau đó decoder sử dụng thông tin này đề tạo ra câu dịch Tuy nhiên, các
mô hình dựa trên RNN, chăng hạn như LSTM và GRU, có một số hạn chế khi xử lý
các chuỗi văn ban dài, chăng hạn như toàn bộ bai việt:
e Mất thông tin: Khi RNN duyệt qua chuỗi văn bản, thông tin ở đầu chuỗi có
thé bị mat dần theo thời gian Điều này là do RNN chỉ có thể xử lý thông tintại một thời điểm
e Tính tuần tự: RNN chỉ có thé xử lý các từ theo thứ tự, khiến quá trình huấn
luyện trở nên chậm chạp và phức tạp.
e Không phù hợp với transfer learning: Kiến trúc LSTM không phù hợp cho
việc transfer learning, nghĩa là mô hình phải được huấn luyện lại từ đầu khi
được sử dụng cho một tác vụ mới.
Giải pháp của Transformer
Trang 37Attention
L Add & Norm _
Nx Add & Norm
Multi-Head
Attention Multi-Head
Trang 38Để giải quyết những hạn chế này, Google đã đề xuất mô hình Transformer.Transformer sử dụng cơ chế attention dé tập trung vào các phan quan trọng của chuỗivăn bản, bất ké chúng nam ở đâu Điều này giúp Transformer có thé duy trì thông tin
ở đầu chuỗi, ngay cả khi chuỗi văn bản rất dài Ngoài ra, Transformer còn sử dụngpositional encoding dé đánh dau vị trí của mỗi từ trong chuỗi, giúp mô hình hiểu được
thứ tự của các từ.
Mô hình Transformer có hai thành phan chính là encoder và decoder Encoder
va decoder đều được tạo thành từ các layer, mỗi layer bao gồm hai loại block:
e Multi-head attention: Block này sử dung cơ chế attention dé tính toán mức độ
quan trọng của mỗi từ trong chuỗi.
e Feed forward network: Block này thực hiện các phép tính tuyến tính dé biến
đổi đầu ra của block attention
Encoder của Transformer bao gồm N layer giống nhau (N = 6) Ở mỗi layer,block attention sẽ tính toán mức độ quan trọng của mỗi từ trong chuỗi đầu vào Block
feed forward network sau đó sẽ biến đổi đầu ra của block attention
Attention vector sẽ chứa thông tin về mức độ quan trọng của mỗi từ trongchuỗi đầu vào Block feed forward network sau đó sẽ sử dung attention vector dé biến
đôi đâu ra của block attention.
Ngoài ra, encoder của Transformer còn sử dụng positional encoding đê đánh
dau vị trí của mỗi từ trong chuỗi Điều này giúp mô hình hiểu được thứ tự của các từ.
Decoder của Transformer cũng bao gồm 6 layer Ngoài hai block attention và
feed forward network, decoder con có một block attention đặc biệt gọi là masked
attention Block nay sé chi tập trung vào các từ đã được nhận dạng trong chuỗi dau
Ta.
Trang 39Block masked attention sẽ sử dụng attention mask dé che đi các từ chưa đượcnhận dạng trong chuỗi đầu ra Điều này giúp mô hình tập trung vào các từ đã đượcnhận dạng, tránh bị nhằm lẫn.
2.2.5.1 Mô hình Transformer với cơ chế Self-attention
Mô hình Transformer sử dụng cơ chế Self-attention dé giải quyết van đề phụthuộc đài của vector trạng thái ân Self-attention là một kỹ thuật cho phép mô hìnhtập trung vào các từ liên quan nhất với từ đang xử lý Điều này giúp cho mô hình cóthê hiểu được mối quan hệ giữa các từ trong một câu, ngay cả khi các từ đó cách nhau
xa.
Vị dụ, khi xử lý câu "The animal didn’t cross the street because it was too
tired", mô hình sẽ tập trung vào từ "animal" khi xử lý từ "it" Điều này là do từ
"animal" là chủ ngữ của câu, và từ "it" là đại từ nhân xưng thay thế cho chủ ngữ Do
đó, hai từ này có mối quan hệ chặt chẽ với nhau
Việc sử dụng cơ chế Self-attention giúp cho mô hình Transformer có thé hiểu
được câu văn tôt hơn, từ đó có thê tạo ra các kêt quả chính xác hơn.
Trang 40Hình 13 Cách hoạt động cua Self-attention
Đầu vào của Self-attention là 3 vector query, key và value, các vector này đượctính bằng cách nhân đầu vào với các ma trận trọng số tương ứng với query, key và
value.
© Query vector vector dùng dé chứa thông tin của từ đang xử lý ở bước thời gian
hiện tại (là từ dùng dé tìm kiếm, so sánh)
e Key vector là vector dùng dé biểu diễn thông tin các từ được so sánh với từ
đang xử lý ở trên.
e Value vector là vector biêu diễn nội dung, ý nghĩa của các từ.
2.2.5.2 Transformer - Multi-Head Attention