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

Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến

61 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

Thông tin cơ bản

Tiêu đề Nhận Diện Chữ Viết Tay Ngoại Tuyến
Tác giả Không Tín Hào
Người hướng dẫn TS. Nguyễn Viết Hưng
Trường học Trường Đại Học Sư Phạm TP. Hồ Chí Minh
Chuyên ngành Công Nghệ Thông Tin
Thể loại khóa luận tốt nghiệp
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 61
Dung lượng 47,85 MB

Nội dung

Trong béi cảnh của cuộc cách mạng số, việc nhận diện chữ viết tay tiếng Việt ngoại tuyến offline Handwritten Text Recognition for Vietnamese trở thành một thách thức đối với các nhà nghi

Trang 1

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

NHAN DIEN CHU VIET TAY NGOAI TUYEN

KHOA LUAN TOT NGHIEP

TP.HO CHi MINH - NAM 2024

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM TPHCM

KHOA CÔNG NGHỆ THÔNG TIN

Bal HỌC

TP HO Cri mint

TRUONG BAI HỌC SU PHAM

TP HO CHi MINH

KHONG TIN HAO

KHOA LUAN TOT NGHIEP

Người Hướng Dẫn Khoa Học: TS Nguyễn Viết Hưng

TP HỎ CHÍ MINH - NĂM 2024

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan luận văn "Nhận diện chữ viết tay ngoại tuyến Tiếng Việt" là công

trình nghiên cứu của chúng tôi, được thực hiện đưới sự hướng dẫn của TS Nguyễn Viết

Hung Các kết quả nêu trong luận văn là trung thực và nội dung luận văn không có sự

sao chép từ các tài liệu hay công trình nghiên cứu khác mà không ghi rõ nguồn trong phân tài liệu tham khảo.

Tôi xin chịu trách nhiệm về lời cam đoan nảy.

Thành pho Hỗ Chí Minh, ngày 5 tháng 5 năm 2024

Không Tín Hào

Trang 4

LỜI CÁM ƠN

Lời đầu tiên, tôi xin chân thành cảm ơn quý thay cô đang công tác tại Trường Đại Học Sư Phạm TP Hỗ Chí Minh nói chung và và tại Khoa Công Nghệ Thông Tin

nói riêng, những người đã dạy đỗ và truyền đạt kiến thức chuyên môn cũng như kinh

nghiệm thực tiễn cho tôi trong suốt bốn năm học tập tại trường Nhờ vào những kiến

thức và kỹ năng ma thay cô đã hướng dan đề rèn luyện tôi có thêm kha năng, trình độ

va niém đam mê với ngành Khoa học May tính va luôn cô gang hoan thành khóa luậntốt nghiệp này

Đặc biệt tôi xin bảy tỏ lòng biết ơn chân thành đến thay Nguyễn Viết Hưng —người đã hướng dẫn, chỉ bảo, giúp đỡ tôi rất nhiều trong quá trình học tập và nghiên

cứu dé hoàn thành khóa luận tốt nghiệp này Thay cũng chính là người truyền lòng tự

tin, niềm đam mê, chia sẻ cho tôi những kinh nghiệm quý báu để tôi có đủ hành trang

bước vào đời vào nghề sau khi tốt nghiệp Tuy thời gian tôi làm việc với thay không

lâu song tôi cảm nhận được tỉnh cảm cũng như lỏng nhiệt huyết của thầy đối với lớp

trẻ sinh viên tôi và đó cũng chính là một phan động lực giúp tôi có thé hoan thành tốt

khóa luận.

Tôi cũng xin gửi lời cảm ơn đến gia đình, bạn bè, những người luôn bên cạnh ủng hộ và giúp đỡ tôi trong quá trình học tập Mặc dù tôi đã cổ gắng rất nhiều, song

khóa luận vẫn không tránh khỏi những thiểu sót tôi rất mong nhận được sự thông cảm

và chỉ bảo tận tình của quý thầy cô và sự góp ý của mọi người

Xin chân thành cam ơn!

Tp Hồ Chi Minh, tháng 04 năm 2024

Sinh viên thực hiện

Không Tín Hào

Nw

Trang 5

BANG CÁC KÝ HIỆU VÀ CHỮ VIET TAT

AI Artificial Intelligence

BERT Bidirectional Embedding Representations from Transformer CNN Convolutional Neural Network

LSTM Long Short-term Memory

RNN Recurrent Neural Network

NLP Natural Language Processing

CBAM Convolutional Block Attention Module

HTR Handwritten Text Recognition

Trang 6

222 NAUHS HEME H CHUNG ổocisiiiiiiatiiatioititiitiiiiiiii1i441314310880851083108211833383543813858 15

CHƯƠNG 3: CO SỞ LY THUYÉTT 22 2czCzseCvreeCvrezcrrzzrccvreecrrzerrce 17

2:ÍIIEDCOEE:¿sitisciissiiisit2s11251023111251365112511555155513164196616635866519635865585355835595388835853558558833858 17

3.1.1 Covolution Neural Network - - - Án nHn HH Hye 17

3.1.1.1 Kiến trúc mô hình Convolutional Neural Network - 17

3/12 CBAN cssivssiscsssssssssssessssssosssisesivessosssesssssavivansnssdsssivesinessosssosssivesivesiessoos 30

I3 R€STEEO - 2 2 -22220-115202221122202332033113232231223122332302i23312557 33

Trang 7

4:11 Pile Inka Sang PNG isccsicssicasscasisosssassscssscasscosssasscassssasscaiscarseasssasseaazead 43

4.1.2 Xử lý ANB oa ccsscssesssessssessssveesssersssvenssaveesssersssvsansvtersssvasssvannsveeessersssneeness 43

4.2 Tern xt ly Vain 8 ẽ ẽ ẽ 45

4S EneoEF::::c:‹ciscoosoioeiiieoiisoiissgi0417031303112621161150315643565155548838556515281505888585885583858858586 45

4.3.1 CNN + Recurrent Neural Network (RNN) c c c 45 ' bon ố ẽ HH 46 đ/411)6G0010(0012020022102021120012402221124312540220213031314031033303622362121319583438312351483043234253138513331:e1 48

4.5 Hậu xử lý kết quả 22-22 222212222 SEE12EE2ZCE22E7242221127111 21122112222 rxee 49

CHƯƠNG 5:CÁC KY THUAT DANH GIÁ ocooooeoooeooonoooooooee 50

DMN GOSS oss cecccacccasccasesesseassecesecasccarsccrssusascessasssccrscoessaasezessasssauessz0ssocesacecasesessse: 50

$52 Word Biron RBẲEicicciooiooitobinotiiitiotti101001110010085043503100368503810835863584385843835850ã0663 52

CHUONG 6: DU LIEU, THỰC NGHIEM VÀ ĐÁNH GIIÁ - 5- 54

GD DUE 0 ẠA.gŒẸ: 54

6.2 Cải đặt vai thực MQHiEM: ccsscsscsssecssccssesssecssecssscsssesssessecsssessescssscssnesssasssecsnes 54

6.2.1 Thiết lập môi trường thử nghigme 0.0 cece cess ceecceesceeecsecsseeeneeeneee 546.2.2 Thiết lập thông số cho mô hình: 5 52622262 2129122202222 55

690 a A occas cecaccecaucxsaccaanccszascecesnscvecssussasssspeansasracossccnscusneasansastcasucacesszeel 55

CHUONG 7: KET LUẬN VA HƯỚNG PHAT TRIEN ssssssssssscsssessecsssecessnseeessnes 57

Trang 8

7.2 Hướng phát triển trong tương Ìai 2-©72+222£222EE2EEEZcEEZcEEzcrxecrxecrrec TÀI LIỆU THAM KHẢO

Trang 9

DANH MỤC BANG BIEUBang 1: Thông so huan luyện chỉ tiết

Trang 10

DANH MỤC HÌNH ANH

Hình 2-1: sơ đồ bài toán - ¿2222 ©t222222E2212211221721221223E 2111117102122 11- 11x re, 15 Hình 2-2: End to End Recognition System MÍodel .- 2c che 15

Hình 2-3: So sánh giữa Attention sử dung LSTM va Transformer 16

Hình 3-1 Cau trúc cơ bản của mô hình CNN -cvvvsecerirrtiriiiiirrirrriie 17Hình 3-2: Kiến trúc tổng quát của CNN s-ccs+ccLz2E2221E23.1231-.10.1Aexee 18

Hình 3-3 mô ta kiến trúc day đủ của CNN, về co bản kiến trúc của CNN bao gồm các

tầng Sau: Tang tich chap (Convolutional layer), Ham kich hoat (Activation layer), lang

pooling (Pooling layer) hay còn gọi là tang subsampling, tang kết nổi day đủ (Fully

Connected lay€T) HH 12k, Error! Bookmark not defined.

Hình 3-4: Biểu diễn hình ảnh đầu vào và bộ lọc dưới dạng ma trận - 20 Hình 3-5: Thực hiện đi chuyển ma trận bộ lọc - 2-6252 2222222x2csczzcstrssrrsrrres 21

Hình 3-6: Kết qua sau khi thực xong phép toán tích chập -2¿- 2255222 22

Hình 3-7: Thực hiện phép tích chập với một bộ lọc duy nhất - -: 22

Hình 3-8: Mô tả hai ban đỏ tính năng tương ứng với hai bộ lọc - -.«««- 23Hình 3-9: Mô tả tính tích chập 3 chiều 22-222 2+z2CEEZ©EEZcEEErtECErtrzrrzxercvree 23

Hình 3-10: Mô ta hoạt động tại tang tích chập trong mô hình CNN với bộ lọc kích thước

SHS L111111110121125353351183136358253195143355358885357358635883387353935358923835525528953233553358333835443458368835423588295382 24

Hình 3-11: Tích chập với bước trượt = 2 (stride © 2) -à sinh sirrrvee 25

Hình 3-12: Tích chập với bước trượt = | (stride = 2) va Padding = l 25

Hình 3-13: Biêu diễn của công thức 3.6 trên hệ trục toa độ -522©cccccccSc 26

Hình 3-14: Biêu diễn của công thức 1.7 trên hệ trục tọa độ - << 27

Hình 3-15: Minh hoa vẻ tang pooling và downsampling -2sscccscccssee 28

Hình 3-16: Minh hoạ lớp pooling sử dụng ham ReLU, phương pháp Max pooling va bộ

lọc kích thước 2X2 - - <ssĂ 1S HH HH HH Hư nce 29

Hình 3-17: Mô tả các giá trị trong mô hình CNN sử dụng dé xác định hàm softmax 30

Hinh 3218; Su đồiKhiôiiCHATMI uuscnoninteneiistii1i401440030048400610002000606 31

Hình 3-19: Channel Attention Module cccceccssecseeseeeceeeeeeeeeeecceseacseserenseaeareaeess 31

Hình 3-20: Spatial Attention ModulÌc s1 SH HH u 32

Hình 3-21: Cách hoạt động của skip-connections che gierrec 35

Hình 3-22: Sự lặp lại kiến trúc trong mạng LSTM 6: 5625262222 36

8

Trang 11

Hình 3-23 Chi tiết về kiến trúc LSTMM 2 22s 2221125125211 21122 211221217 1122251e212eEEcey 37 Hình 3-24 Mô tả kiến trúc của lớp Bi-LSTM - 5-5 222222122212 21122112022 2x22 39 Hình 3-25: Kiến trúc mô hình transformer 22222 TEE S9 1 E25 211 2151225252555 2e 40 Hình 3-26: Multi-head attention, trong đó nhiều head được nối lại sau đó được biến đôi

I0 EnIIBD 2 c7 õễ no 0n na 42

Hình 4-1 Chanme] AtentiOn <iscicissiscsssssissosisasssostsssvscsssessvetiessieastsacssssisecssossvesstsassseceeed 47

Hinh 4-2 Spatial AttemtiOnsiissiscissssssosssosssssrssassecsssesiecssieaisaessscsssessaasasonssosssiesisarsaasiseaives 47

Hình 4-3 Mô ta cách hoạt động của CTCGreedyDecoder ccc<cccccecee 49

Hình 5-1 Mô tả cách hoạt động của CTC Lo$S ch nu 50

Hình 52 COng thite cia CTC Loss aiscsiscssssassssssssasssassesisssassactaasssacssausesssesssossssassssseees 51

Trang 12

CHƯƠNG 1: MỞ ĐÀU

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

Trên thẻ giới, việc nhận điện chữ viết tay (Handwritten Text Recognition - HTR) đã trở

thành một lĩnh vực nghiên cứu quan trọng trong lĩnh vực Công nghệ Thông tin và Trí

tuệ nhân tạo Đặc biệt, việc áp dụng HTR vào việc nhận diện chữ viết tay tiếng Việtkhông chi là một thách thức vẻ mặt kỹ thuật mà con mang lại nhiều tiềm năng ứng dụng

trong nhiều lĩnh vực khác nhau như xử lý văn bản, công nghệ văn bản số, nhận dạng chữ viết tay trong hệ thông học tập, và tự động hóa công việc hành chính.

Trong béi cảnh của cuộc cách mạng số, việc nhận diện chữ viết tay tiếng Việt ngoại tuyến (offline Handwritten Text Recognition for Vietnamese) trở thành một thách thức

đối với các nhà nghiên cứu vả các nhà phát triển ứng dụng Khác với các hệ thông nhận

điện chữ viết tay trực tuyến, nơi dit liệu được truy cập và xử lý ngay lập tức khi người

dùng viết, hệ thống ngoại tuyến yêu cầu việc xứ lý đữ liệu ảnh chữ viết tay đã được chụptrước đó Dù đã có nhiều nd lực nghiên cứu trong hơn 40 năm qua, việc nhận diện chữviết tay không rang buộc vẫn là một vấn dé thách thức trong lĩnh vực phân tích tai liệu

ngày nay Các nghiên cứu trước đây thường tập trung vào các ngôn ngữ phô biến như tiếng Anh, tiếng Trung, tiếng Nhật, và tiếng A Rap, nhưng van đề này cũng đang được

quan tâm và nghiên cứu đối với tiếng Việt, một ngôn ngữ đặc trưng với các đặc diém về

kiểu chữ và ngữ pháp riêng.

Ngữ cảnh ngôn ngữ và văn hóa đặc trưng của tiếng Việt, nhận diện chữ viết tay tiếng

Việt đặt ra một số thách thức đặc biệt, bao gồm sự phong phú của các ký tự, sự biến đồi

địa phương của viết tay, va sự đa dang của các kiều chữ Dé giải quyết những thách thức nay, các phương pháp và công nghệ mới được dé xuất và phát triển liên tục, từ các kỹ

thuật cơ bản như xử lý ảnh và học máy đến các phương pháp tiên tiền hơn như học sâu

và học chuyên giao

Trong bối cảnh ngày càng phát triển của trí tuệ nhân tạo và học máy, việc áp dụng các

phương pháp và mô hình học sâu đã đem lại những tiễn bộ đáng kê trong lĩnh vực nhậnđiện chữ viết tay tiếng Việt Cu thé, các mô hình học sâu như mạng nơ-ron hoi quy

(RNN) va mạng nơ-ron tích chap (CNN) đã được sử dụng rộng rãi va đạt được kết quả

an tượng trong việc cải thiện hiệu suất của các hệ thông HTR.

10

Trang 13

Mạng nơ-ron hỏi quy (RNN) dược biết đến với khả năng xử lý dữ liệu tuần tự, phù hợp

cho việc xử lý các chuỗi dit liệu như văn bản Trong nhận diện chữ viết tay tiếng Việt,

RNN có thê được sử dụng đề xây dựng mô hình nhận diện từng ký tự trong một chuỗi

viết Bằng cách nảy, RNN có thẻ học được cấu trúc tuần tự của các từ vả câu trong tiếng Việt, từ đó cải thiện khả năng nhận diện chữ viết tay.

Mạng nơ-ron tích chập (CNN) cũng đã được áp dụng thành công trong nhận diện chữ

viết tay CNN được sử dụng đẻ trích xuất các đặc trưng cấp thấp và cấp cao từ các hình

ảnh chữ viết tay, giúp tăng cường khả năng phân loại và nhận diện Cụ thể, CNN có thẻ

được sử dụng đẻ nhận dạng các đặc điểm như các nét viết, khoảng cách giữa các ký tự,

và hình dáng tông thê của từng từ trong văn bản viết tay

Ngoài ra, các kỹ thuật học sâu khác như mạng nơ-ron truy hoi bộ nhớ đài-ngắn (LSTM)

và mạng nơ-ron đối nghịch tạo sinh (GAN) cũng đang được nghiên cứu và áp dụng trong

lĩnh vực nhận điện chữ viết tay tiếng Việt, mang lại những tiềm năng mới trong việc cải

thiện độ chính xác va hiệu suất của các hệ thong nhận diện

1.2 Mục tiêu nghiên cứu

Mục tiêu của đề tải là xây đựng mô hình nhận điện chữ viết tay Tiếng việt trong bộ dit

liệu HANDS-VNOnDB2018 Line

1.3 Cách tiếp cận, phương pháp, phạm vi nghiên cứu

Dé dat được mục tiêu nghiên cứu, dé tài sẽ áp dụng các phương pháp sau:

1.3.1 Cách tiếp cận

- Nghiên cứu cơ sở lý thuyết về học sâu và nhận diện chữ viết, học tăng cường.

- Tìm hiểu về các mô hình CNN, các biến thé của chúng, mô hình Transformer

- Xây dựng một tập dữ liệu chứa hình ảnh chữ viết tay tiếng Việt ngoại tuyến

- Thực hiện tiền xử lý dữ liệu hình ảnh.

- Xây dựng mô hình nhận diện chữ viết tay.

- Đánh giá va so sánh kết quả của các mô hình trên tập dữ liệu thử nghiệm

Trang 14

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

Phương pháp nghiên cứu lý thuyết:

- Nghiên cứu về lý thuyết về học máy, học sâu và nhận điện đối tượng

- Nghiên cứu vẻ cách làm việc với dit liệu hình ảnh chữ viết tay Tiếng việt,

- Nghiên cứu vẻ các phương pháp tiền xử lý hình ảnh và xử lý đữ liệu.

1.3.3 Phạm vi nghiên cứu

- Đề tài sẽ tập trung vào việc nhận diện chữ viết tay ngoại tuyến tiếng việt trên bộ dit

liệu HANDS-VNOnDB2018.

1.4 Kết quả của khóa luận

Xây dựng một mô hình chuyền thé hình anh chữ tiếng việt sang chữ đánh máy

Thực nghiệm mô hình trên nhiều bộ dữ liệu phô biến.

1.5 Bố cục khóa luận

Dựa vào những mục tiêu đã trình bày, nội dung luận văn được chia thành các

phan như sau:

Chương 1: Mở đầu

Chương này giới thiệu tong quan vẻ đề tài gồm các nội dung như: lý do chọn dé tai, mục

tiêu nghiên cứu, đối tượng và phạm vi nghiên cứu, phương pháp nghiên cứu, ý nghĩa

khoa học và thực tiễn cũng như cầu trúc chung của đề tài

Chương 2: Tình hình nghiên cứu

Chương này giới thiệu tông quan tình hình nghiên cứu của bai toán hiện tại, trình bay các phương pháp sử dụng học sâu và những công trình tiêu biểu tương ứng với từng

phương pháp.

12

Trang 15

Chương 3: Cơ sở lý thuyết

Chương này tập trung vao việc trình bảy các khái niệm lý thuyết cơ bản liên quan đến

đề tài nghiên cứu Chương sẽ giải thích các khái niệm cơ bản về học sâu và các mô hình

học sâu phê biến được sử dụng trong lĩnh vực nhận điện chữ viết tay.

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

Trong chương này phương pháp cụ thẻ về nhận điện chữ viết tay ngoại tuyến tiếng Việt

sẽ được trình bày Chương sẽ mô tả các kiến trúc học sâu được kết hợp va cách kết hợp

vào bài toán Ngoài ra, chương cũng sẽ mô tả các kỹ thuật đánh giá được sử dụng ở

trong bài toán

Chương 5: Dữ liệu, thực nghiệm và đánh gia

Chương này sẽ trình bay ve dit liệu được dùng dé huấn luyện cũng như đánh giá, cũngnhư các tiêu chí đánh gia hiệu suất của mô hình trong việc nhận diện chữ viết tay ngoại

tuyến Cuối cùng, chương sẽ trình bày và phân tích kết qua thực nghiệm dé đánh giá

hiệu suất của mô hình và đưa ra những kết luận va nhận xét về độ chính xác va tinh ứng

dụng của phương pháp đã áp dụng.

Chương 6: Kết luận và hướng phát triển

Tông kết lại kết quả đã đạt được và chưa đạt được sau quá trình nghiên cứu, tiến hành

thực nghiệm Từ đó nêu lên những hướng nghiên cứu và phát triển tiếp theo trong tương

lai dé nang cao hiệu suất cũng như dé khắc phục các hạn ché hiện tại

13

Trang 16

CHƯƠNG 2: TÌNH HÌNH NGHIÊN CỨU

2.1 TÔNG QUAN

Hiện nay khi nói về tình hình nghiên của của nhận điện chữ viết tay trên thé giới cũng

đã tồn tai được một khoản thời gian dai, từ việc nhận diện các chữ sé viết tay, các chữ

cái latin cho đến các chữ tượng hình phức tạp cũng dần xuất hiện các bài nghiên cứu,

nhưng đối với chữ viết tiếng Việt do hình thái đặc tha của chữ với các thanh dấu đã gây

khó dé với các nhà nghiên cứu, đồng thời bộ dữ liệu về chữ viết tay ngoại tuyến tiếng việt cũng chưa được thống nhất chuẩn xác, chi có các bộ dữ liệu do các doanh nghiệp tô chức với số lượng dữ liệu không được lớn, nên cũng đã ảnh hưởng một phan rất lớn

trong công cuộc nghiên cứu và khai phá trong lĩnh vực này Ban dau các bai nghiên cứu

từ [1] — [4] với việc yêu cầu các văn bản viết tay cần phải phân đoạn ra trước dẫn dé

việc các văn bản không bị ràng buộc về khuôn mẫu cũng như các văn ban chữ viết trong

thực tế không thê nhận điện được Các nghiên cứu nảy chủ yêu đề cập đến dấu phụ (DM)

~ một nét đặt trưng của chữ viết tiếng việt và dé xuất các thuật toán giải quyết van đề

DM ở cap độ ký tự, cùng với các thuật toán phân cấp (hierarchical algorithm) đẻ nhận điện các ký tự trong tiếng việt, trong đó bao gồm các chữ cái và thanh dấu được phân

riêng biệt [1] Thông qua các bộ phân loại Multi-Layer Perceptron (MLP) Networks và

Support Vector Machines (SVM).

Nhung đối với bài toán chữ viết tay ngoại tuyến, thì các dau phụ có thé bị xé dich và

không nằm ở một chỗ cỗ định do sự khác nhau đến từ người viết hoặc thậm chí giữa

từng thời điểm của cùng một người viết, thì việc nhận điện dấu và phân tách riêng biệt

giữ thanh dấu và kí tự càng trở nên khó khăn Phương pháp sequence to sequence (Seq2Seq) khai thác moi quan hệ giữa các đặc điểm hình ảnh từ đầu vào và các ký tự đầu ra thông qua cơ chế chú ý (attention mechanism) kết hợp nhiều mô hình khác như

Mạng thần kinh tái phát (RNN), Long-short term memory (LSTM) hoặc Transformer

cũng đã được các nhà nghiên cứu ứng dụng vào trong bài toán.

Đầu vao của bai toán ở đây là một ánh chứa hình ảnh chữ viết tay ngoại tuyến, va đầu

ra là nhãn tương ứng với các chữ trong hình ảnh.

14

Trang 17

Image to text

cách giản đị đến bất ngờ

Hình 2-1: sơ đỗ bài toán

2.2 Những nghiên cứu trước đó

Hung Tuan Nguyen cùng với cộng sự đã dựng một một hình Encoder-Decoder kết hợp

với cơ chế Attention Họ thay thế lớp CNN bằng DenseNet, vì họ cho rằng DensenNet

có hiệu suất tốt hơn so với CNN trong việc trích xuất đặc trưng của hình ảnh Mô hìnhbao gồm hai phần chính: DenseNet đẻ trích xuất đặc trưng từ hình ảnh viết tay và một

LSTM tích hợp với một cơ chế chú ý đẻ tạo ra văn bản đầu ra [5]

IIR | Ct (Ori, yea hó

: : Attentionmodel sande

DenseNets Feature Extraction LSTM Decoder

Hình 2-2: Mô hình hệ thống End to End Recognition

Sau đó tới năm 2020 Vinh-Loi Ly cùng với các công sự của ông đã phát triển phươngpháp nay bằng việc sử dụng cơ chế Self-attention

15

Trang 18

Hình 2-3: So sánh giữa Attention sử dụng LSTM va Transformer

Thấy được ràng các bài nghiên cứu trước đó phần lớn tập trung chủ yếu vào tôi phầnGiải mã (Decoder) bằng các mô hình ngôn ngữ lớn, điều nảy khiến cho việc tiêu hao

nguồn tài nguyên vẻ dif liệu và thiết bị là rat lớn Nên ở bài nghiên cứu này tôi chủ yếu

sẽ giải quyết việc xử lý dit liệu huấn luyện cùng với đó là trích xuất đặc trưng của ditliệu hình ảnh được tối wu nhất, đồng thời cũng giảm lượng tài nguyên thiết bị tiêu haoxuống thấp, xây dựng một mô hình nhẹ hơn nhưng không bị anh hưởng quá nhiều vẻ độ

chính xác của bài toán.

16

Trang 19

CHƯƠNG 3: CO SO LÝ THUYET

3.1 Encoder

3.1.1 Covolution Neural Network

CNN là một trong những mô hình học sâu tiên tiền giúp xây dựng được những hệ thống

thông minh với độ chính xác cao CNN được sử dụng nhiều trong các bai toán nhận

dang các đối tượng trong ảnh Trong chương nay sẽ trình bảy về ý tưởng, kiến trúc của

mô hình CNN cũng như áp dung mô hình này dé giải quyết bài toán nhận dang chữ viết

tay.

3.1.1.1 Kiến trúc mô hình Convolutional Neural Network

Các tầng được liên kết với nhau thông qua phép tích chập Tang tiếp theo là kết quả tíchchập tir tang trước đó Nhờ vay, ta có các kết nối cục bộ nghĩa là mỗi nơron ở tang tiếp

theo sinh ra từ bộ lọc áp đặt lên một vùng ảnh cục bộ của các nơron tầng trước đó.

Tầng tích chập

Hình 3-1 Cấu trúc cơ bản của mô hình CNN

Hình 4 mô ta cau trúc cơ bản của mô hình CNN, từ cau trúc trên cho thấy từ hình anh

đầu vào qua nhiều tang xử lý khác nhau sẽ cho kết quả xử lý cudi cùng là các bản đồđặc trưng Qua đây, thấy rõ ràng răng việc trích xuất đặc trưng với mô hình CNN là hoàntoàn tự động, việc trích xuất sẽ có nhiều kết quả khác nhau dựa vào việc điều chỉnh các

tầng làm việc ở giữa

17

Trang 20

Hình 3-2: Kiến trúc tong quát của CNN

Trong mô hình CNN (Hình 3-2), tầng pooling/subsampling dùng đẻ chắt lọc lại các thông tin hữu ích hơn (loại bỏ các thông tin nhiều) Tuy nhiên, ta sẽ không đi sâu vào khái niệm của các tang này Trong quá trình huấn luyện, CNNs sẽ tự động học các thông

số cho các filter Ví dụ, trong nhiệm vụ phân lớp hình ảnh CNNs sẽ có gắng tìm lượng

thông tin tối ưu cho các filter tương ứng theo thứ tự nhất định và tầng cuối cùng được

sử dụng dé phân lớp hình ảnh.

CNN có tính bất biến va tính kết hợp cục bộ Với cùng một đối tượng, nếu đối tượng

nay được chiếu theo các góc độ khác nhau thì độ chính xác của thuật toán sẽ bị ảnhhưởng đáng kẻ Tang Pooling sẽ cho chung ta tinh bất biến đối với phép dịch chuyên

(translation), phép quay (rotation) và phép co giãn (scaling).

Thông qua Hình 3-2 , có thé hiểu cơ bán về kiến trúc của CNN đơn giản, tiếp theo sẽ làm rõ các tang trong một kiến trúc CNN.

3.1.1.2 Lép tích chập

Tích chập là một phép toán thực hiện với hai ham số f va g với kí hiệu la * , kết quả

cho ra một ham số thứ 3 Nó được ứng dụng trong xác suất, thông kê, thị giác máy tinh,

xử lý ảnh, xử lý tín hiệu, kỹ thuật điện, học máy, và các phương trình vi phân.

Tích chập của hàm số f và g được viết như sau ƒ * g, là một phép biến đồi tích phân

đặc biệt;

18

Trang 21

(fF *a)@) = | ƒ()a =t)ár = i ƒŒ—t)gŒœ)ảr (11)

Một cách tông quát, các ham f , g lả ham số phức trong không gian R*, tích chập được

định nghĩa là:

(f = g)(x) = J Pi (y)g(x — y)dy = J / (x—y)gŒ)dy — (1.2)

Đối với tích chập rời rac, với hàm số phức f , g xác định trên tập số nguyên Z, thì tích chập được định nghĩa: [30]

(f + g)(n) = 3 ƒ£(m)g(n\ — m)dm

mơ (1.3)

= 3 ƒ£ín — m)g(m)dm

m==œ

Trong lĩnh vực xử lý ảnh, tích chập được sử đụng khá rộng rãi và hết sức quan trọng Ví

dụ: đối với phép lọc anh, phép tích chập giữa ma trận lọc va anh, cho ra kết quả ảnh đã

được xóa nhiều.

Công thức tích chập giữa hàm ảnh f (x, y) và bộ lọc k(x, y) (kích thước m x n) như sau:

n 2

ƒ(x,y) * k(x,y) = k(u, v) f(x — u,y — 9) (1.4)

mM =n

u= 2 v= 2

m

2

Trong kiến trúc của CNN, sau tầng dau vao là tang tích chập, tang nảy chính là nơi thé

hiện tư tưởng ban đầu của CNN Thay vì kết nối toan bộ điểm anh, tầng này sẽ sử dụng

các bộ lọc có kích thước nhỏ so với ảnh (tường là 3*3 hoặc Š*Š) áp vào một vùng

trong ảnh va tiền hành tính tích chập giữa bộ lọc và giá trị điểm ảnh trong vùng cục bộ

đó.

Thành phần không thê thiếu của phép tích chập trong tầng tích chập đề trích xuất đặc

trưng của ảnh đầu vào là bộ lọc Bộ lọc là một ma trận có kích thước m x như công

thức 1.4 nhằm mang lại kết quả tốt nhất trên ma trận dit liệu ảnh đầu vào

19

Trang 22

Phép tích chập được thực hiện như sau: bộ lọc sẽ lần lượt được dịch chuyên theo mộtgiá trị bước trượt (stride) bắt đầu từ góc bên trái trên của ánh chạy đọc theo ảnh và quéttoàn bộ ảnh Ở mỗi lần dịch chuyên, thực hiện tính toán kết quả mới cho điểm ảnh đang

xét bằng công thức tích chập

Giả sử ta thực hiện phép tích chập với ảnh đầu vào là một hình ảnh 2D và ma trận bộ

lọc có kích thước 3x3.

Hình 3-3: Biểu diễn hình ánh đầu vào và bộ lọc dưới dang ma trận

Hình 3-4 (a) là đầu vào cho tang tích chập xem như hình ảnh đầu vào Bên phải là bộ

lọc còn được gọi là hạt nhân (Kernel), thực hiện phép tích chập bằng cách trượt ma trận

bộ lọc lần lượt qua tat cả các điểm ảnh trong anh, bắt đầu từ góc trên bên trái của ánh

Trong mỗi lần trượt, sẽ thực hiện phép toán tích chập và đưa ra kết quả và ma trận kết

quả Trong hình 3-4, kết quá của phép tích chập bằng 4 được hiển thị trong ma trận kết

quả hay bản đỗ đặc trưng (Feature Map)

20

Trang 23

Input x Filter Feature Map

Hình 3-4: Tính tích chập của anh đầu vào với bộ lọc 3 x 3 [13|

Tiếp tục thực hiện dịch chuyền ma trận bộ lọc (trong ví du này bước trượt = 1) ta đượckết quả như Hình 3-4

Input x Filter Feature Map

Hình 3-5: Thực hiện di chuyển ma trận bộ lọc

Cứ tiếp tục thực hiện như vậy cho đến khi tất cả các điểm ảnh của ảnh đầu vào được

duyét qua hết va ta có kết quả như Hình 3-5

21

Trang 24

Hình 3-6: Kết quả sau khi thực xong phép toán tích chập

Vi dụ trên được thực hiện với hình ảnh 2D, nhưng trong thực tế nhiều bai toán đòi hỏiphải làm việc với hình ảnh 3D được biéu điền như một ma trận 3D với kích thước: chiều

rộng, chiêu cao và chiều sâu (chiều sâu tương ứng với 3 kênh màu RGB) Một bộ lọc có

chiều rộng và chiều cao cụ thẻ như 3 x 3 hay 5.x 5 và để áp dụng cho hình ảnh 3D canthực hiện nhiều phép toán tích chập tương ứng với nhiều bộ lọc khác nhau đề tạo ranhiều bản dé tính nang, sau đó gộp các bản dé đặc trưng này lại với nhau để trở thànhđầu ra cuối cùng của tang tích chập

Hình 3-7: Thực hiện phép tích chập với mật bộ lạc duy nhất

Giả sử có hình ảnh đầu vào 32 x 32 x 3 và sử dụng bộ lọc có kích thước 5 x 5 x 3 (độ sâucủa bộ lọc phù hợp với độ sâu của hình ảnh) Khi bộ lọc ở một vị trí cụ thé và thực hiệnphép tích chập như đã mô tả ở trên và kết quả lả một ban đồ đặc trưng có kích thước 32x32 x J, Nếu sử dụng 3 bộ lọc khác nhau sẽ có 3 bản đề đặc với kích thước 32 x 32 x /trưng tương ứng và chúng được sắp xếp theo chiều sâu va cho ra kết quả cuối cùng của

tầng tích chập có kích thước 32 x 32 x 3

Hình 3-7 mô tả hai bản đồ đặc trưng được xếp chong lên nhau theo chiều sâu Phép tích

chập đối với mỗi bộ lọc được thực hiện độc lập và các bản đồ kết quả được phân tách

22

Trang 25

Hình 3-8: Mô tả hai bản đồ tính năng tương ứng với hai bộ lọc

Với đầu vào là một anh 3 chiêu Wx/7x3, có độ sâu là 3, hay còn được gọi là 3 kênhmàu, ta có tích chập 3 chiều bằng cách tính riêng tích chập cho 3 kênh này với một bộ

lọc, sau đó lấy trung bình cộng của ba kết quả đầu ra, ta được tích chập 3 chiều

Hình 3-9 minh họa cho việc tính tích chập 3 chiều Đầu vào là một ma trận có ba kênhbiểu diễn cho một ảnh 3 chiều Ta sử dung hai bộ lọc WO và J/ Cho mỗi kênh của matrận tính tích chập với hai bộ lọc sau đó lay trung bình cộng của ba kênh, ta được đầu ra

là một ma trận có hai kênh tương ứng với hai bộ lọc.

Kernel Channel #3

J

308 + —498 + 164 +1=

Hình 3-9: Mô tả tính tích chập 3 chiều

Với việc thực hiện tích chập giữa ma trận dữ liệu ảnh đầu vào vào bộ lọc như đã

nêu, khi đó mình hoạ kết quả sẽ như hình 13 bên dưới

23

Trang 26

Hình 3-10: Mô ta hoạt động tại tang tích chập trong mô hình CNN với bộ lọc kích

thước 5x5

Hình 3-10 cho thấy kết quả tại tầng tích chập với ánh đầu vào là 32 x 32, sử dụng

bộ lọc có kích thước là § x 5, kết quả sẽ là 1 bản đồ hoạt động (nhìn dưới góc độ trực

quan là | hình ảnh đặc trưng) với kích thước 28 x 28 như hình 3-10 (a), và hình 3-10 (b)

là kết quả của việc sử dụng 6 bộ lọc trên cùng đầu vào, khi đó kết quả sẽ là 6 bản đồ

hoạt động.

Bước trượt va Padding: là kích thước của mỗi bước ma ma trận bộ lọc di chuyên

trên bức ảnh ở mỗi bước tính tích chập, giá trị thông thường của nó là

stride = 1 có nghĩa là sau khi tính tích chập xong tai 1 vùng ảnh, nó sẽ dich sang phải 1

pIxel tương tự với việc dịch xuống dưới Khi tăng kích thước của bước trượt bộ lọc sẽ

di chuyên trên bức ảnh với khoảng lớn hơn do đó sẽ hạn chế được sự chồng chéo hon

giữa các điểm ảnh Tuy nhiên việc làm này sẽ làm cho bản đồ kết quả hay bán đồ đặc trưng (feature maps) nhỏ hơn Hình 1-16 Bởi vi ban đồ tinh năng luôn nhỏ hơn ảnh đầu

vảo, vì vậy phải tìm cách để giữ nguyên kích cỡ của bản đô đặc trưng so với ban đầu đó

là sử dung Padding Hình 1-17 Khi sử dung padding, Một lớp pixel có giá tri bằng 0

được thêm vào để bao quanh anh đầu vào, do đó bản đô tinh năng sẽ không co lại Ngoài việc giữ không đôi kích thước không gian sau khi thực hiện tính tích chap, padding cũng

cải thiện hiệu suất và đảm bảo kích thước hạt nhân và bước trượt sẽ phù hợp với đầu

vao,

24

Trang 27

Stride 2 Feature Map

Hình 3-11: Tích chập với bước trượt = 2 (stride = 2)

Shyệc | with Paddling Eeatsee Map Hình 3-12: Tích chập với bước trượt = 1 (stride = 2) và Padding = 1

Vậy kích thước dau ra của ảnh với mỗi tang được tính như sau:

Giả sử: + Ảnh đầu vao có kích thước: W; x Hi x Dị

+ Gọi kích thước của đầu ra: W2 x H2 x D2

Trang 28

3.1.1.3 Hàm kích hoạt

Sau lớp tích chập thường được đặt một hàm kích hoạt phi tuyến dé tạo ra thông tin

trừu tượng hơn cho các lớp sau Hàm kích hoạt thường được sử dụng là hàm Tanh,

Sigmoid, Rectified linear unit (ReLU) Nói một cách đơn giản, lớp này có nhiệm vụ

chuyên toàn bộ giá trị âm trong kết quả có được từ tầng tích chập thành giá trị không

tanh tanh 8 cosh cosh 8 (1.6)

Hình 3-13: Biểu diễn của công thức 3.6 trên hệ trục tọa độ

26

Trang 29

+ Hàm Sigmoid: là hàm phi tuyến tính được định nghĩa như công thức sau:

Lớp Pooling sử dung một cửa sô trượt quét qua toàn bộ ảnh, mỗi lan trượt theo các bước

trượt cho trước Lớp Pooling không tính tích chập mà tiền hành lay mẫu con Khi cửa

số trượt trên ảnh, chỉ có một giá trị được xem là giá trị đại điện cho thông tin ảnh tại vùng đó được giữ lại, giá trị này gọi là giá trị mẫu Ta cũng có thê chia ảnh thành các ô

hình chữ nhật không chong lap nhau dé lay mẫu

Lớp Pooling thê hiện tinh bất biến đối với phép dich chuyên, phép quay và phép co giãn

của CNN Lớp này thường được sử dụng ngay sau hàm kích hoạt, để đơn giản hóa thông

tin đầu ra, giảm bớt số lượng noron, giảm bớt lượng tính toán, và do đó cũng giảm bớt

hiện tượng qua khớp (over-fitting).

27

Trang 30

Hinh 3-15: Minh hoa vé tang pooling va downsampling

Các phương thức lấy phỏ biến trong lớp Pooling là max pooling (lấy gid tri lớn nhất,Hình 19), min pooling (lấy giá trị nhỏ nhất), average pooling (lấy giá trị trung bình) và

L2 Pooling, trong thực tế cả max pooling và L2 pooling được sử dụng khá rộng rãi.

Về mặt lý thuyết với ma trận đầu vào có kích thước: H; x Hy x Dy Thực hiện toán tử

pooling trên ma trận con của ma trận đầu vào có kích thước F x F với bước trượt S thì

ta được ma trận đầu ra W> x H› x D2 với các giá trị >, Ho, D2 được tính như sau:

Ngày đăng: 12/01/2025, 02:05

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[10]. Tikeras.utils.pad sequences — : tensorflow V2.16.1. TensorFlow. (n.d.).https://www.tensorflow.org/api_docs/python/tf/keras/preprocessing/sequence/pad_ sequences Link
[11]. Zeiler, M. D., &amp; Fergus, R. (2014). Visualizing and understanding Convolutional Networks. Computer Vision = ECCV 2014, 818-833. https://doi.org/10.1007/978- 3-319-10590-1_ 53 Link
[12]. Proceedings 2003 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, (2003). CVPR 2003 Computer Vision and Pattern Recognition Conference. https://doi.org/10.1109/evpr.2003.1211444 Link
[16]. Li, H., &amp; Wang, W. (2020). Reinterpreting CTC training as iterative fitting. Pattern Recognition, 105, 107392. https://doi.org/10.1016/j.patcog.2020. 107392 Link
[18]. Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, L., &amp; Polosukhin, I. (2023, August 2). Attention is all you need. arXiv.org.https://arxiv.org/abs/1706.03762 Link
[9]. Woo, S., Park, J., Lee, J.-Y., &amp; Kweon, I. S. (2018). CBAM: Convolutional Block Attention Module. Computer Vision -— ECCV 2018, 3-19.https:/doi.org/10.1007/978-3-030-01234-2 1 Khác
[14]. Zagoruyko, S., Komodakis, N. (2017): Paying more attention to attention:Improving the performance of convolutional neural networks via attention transfer Khác
[17]. Prabhavalkar, R., Sainath, T. N., Wu, Y., Nguyen, P., Chen, Z., Chiu, C.-C., &amp Khác

HÌNH ẢNH LIÊN QUAN

Hình 2-3: So sánh giữa Attention sử dụng LSTM va Transformer - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 2 3: So sánh giữa Attention sử dụng LSTM va Transformer (Trang 18)
Hình 3-1 Cấu trúc cơ bản của mô hình CNN - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 1 Cấu trúc cơ bản của mô hình CNN (Trang 19)
Hình 3-2: Kiến trúc tong quát của CNN - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 2: Kiến trúc tong quát của CNN (Trang 20)
Hình 3-3: Biểu diễn hình ánh đầu vào và bộ lọc dưới dang ma trận - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 3: Biểu diễn hình ánh đầu vào và bộ lọc dưới dang ma trận (Trang 22)
Hình 3-4: Tính tích chập của anh đầu vào với bộ lọc 3 x 3 [13| - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 4: Tính tích chập của anh đầu vào với bộ lọc 3 x 3 [13| (Trang 23)
Hình 3-10: Mô ta hoạt động tại tang tích chập trong mô hình CNN với bộ lọc kích - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 10: Mô ta hoạt động tại tang tích chập trong mô hình CNN với bộ lọc kích (Trang 26)
Hình 3-11: Tích chập với bước trượt = 2 (stride = 2) - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 11: Tích chập với bước trượt = 2 (stride = 2) (Trang 27)
Hình 3-14: Biểu diễn của công thức 1.7 trên hệ trục tọa độ - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 14: Biểu diễn của công thức 1.7 trên hệ trục tọa độ (Trang 29)
Hình 3-17: Mô tả các giá trị trong mô hình CNN sử dụng dé xác định hàm - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 17: Mô tả các giá trị trong mô hình CNN sử dụng dé xác định hàm (Trang 32)
Hình 3-21: Cách hoạt động của skip-connections - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 21: Cách hoạt động của skip-connections (Trang 37)
Hình 3-23. Chi tiết về kiến trúc LSTM [6] - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 23. Chi tiết về kiến trúc LSTM [6] (Trang 39)
Hình 3-25: Kiến trúc mô hình transformer [18] - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 25: Kiến trúc mô hình transformer [18] (Trang 42)
Hình 3-26: Multi-head attention, trong đó nhiều head được nối lại sau đó được bien - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 3 26: Multi-head attention, trong đó nhiều head được nối lại sau đó được bien (Trang 44)
Hình 4-2. Mô tả hoạt động Channel Attention - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 4 2. Mô tả hoạt động Channel Attention (Trang 49)
Hình 4-5. Mô tả cách hoạt động của CTC Loss - Khóa luận tốt nghiệp Công nghệ thông tin: Nhận diện chữ viết tay ngoại tuyến
Hình 4 5. Mô tả cách hoạt động của CTC Loss (Trang 52)