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

Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước

108 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 đề Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Tác giả Le Cong Minh
Người hướng dẫn TS. Nguyễn Vinh Tiệp
Trường học Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Khoa học Máy tính
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 108
Dung lượng 57,42 MB

Nội dung

Với sự phát triển của học sâu, các mô hình sinh ảnh chữ viết tay đã được áp dụng nhằm thu thập anh chữ viết tay một cách tự động, giảm chi phí thu thập.Tương tự như bài toán nhận dạng ch

Trang 1

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

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

KHOA KHOA HỌC MÁY TÍNH

LE CONG MINH - 18521099

KHOA LUAN TOT NGHIEP

TAO SINH ANH CHU VIET TAY THEO MOT

PHONG CACH CHO TRUGC

HANDWRITING IMAGE GENERATION WITH A GIVEN

STYLE

CỬ NHÂN NGANH KHOA HOC MAY TÍNH

GIẢNG VIÊN HƯỚNG DAN

TS NGUYỄN VINH TIỆP

TP HO CHÍ MINH, 2022

Trang 2

DANH SÁCH HỘI ĐỒNG 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ố

¬ ngày của Hiệu trưởng Trường Dai học

Công nghệ Thông tin.

ne - Chi tich.

Qe cessscseessessee PME - Thu ky.

re a ae, ty - Uy vién.

Ae eee ae GA a8 - Uy vién.

Trang 3

LỜI CẢM ƠN

Đầu tiên, em xin chân thành cảm ơn TS Nguyễn Vinh Tiệp cũng nhưcác anh trong Multi Media Laboratory (MMLAb-UIT), thầy và các

anh là những người tận tình hướng dẫn giúp đỡ em trong những khó

khăn của khóa luận, nếu không nhờ thầy và các anh thì việc thực hiệnluận văn sẽ khó khăn hơn rất nhiều, thầy đã cho em các kinh nghiệm

quí báu không những trong khóa luận mà còn cho công việc sau này.

Đồng thời, em cũng muốn gửi lời cảm ơn tới toàn thể thầy cô giáo

trong Khoa Khoa học Máy tính cũng như các thầy cô khác ở trường

Đại Học Công Nghệ Thông Tin, các thầy cô đã giảng dạy em trong

thời gian học tập và rèn luyện tại trường Đại Hoc Công nghệ Thông

Tin Nhờ kiến thức các thầy cô truyền dạy đã giúp cho em có thể thực

hiện được luận văn lần này

Cuối cùng,em xin gửi lời cảm ơn đến bố mẹ, người anh của em, các

người bạn trên giảng đường đại học đã luôn bên cạnh động viên, ủng

hộ và là chỗ dựa tinh thần vững chãi trong suốt thời gian học tập ở

trường Dai học Công nghệ Thông tin.

TP Hồ Chí Minh, tháng 1 năm 2022

Sinh viên thực hiện

Trang 4

14 Dong góp của khóaluận

1.5 Cấu trúc khóa luận

2 CÁC KIÊN THỨC LIEN QUAN CHO BÀI TOÁN SINH ANH CHỮ

Trang 5

MỤC LỤC

2.2.2 Mạng nơrontíchchập 9

2.2.3 VanishngGradien 14

2.2.4 Kiến rúc mạng ResNet 14

2.3 Mạng đối nghịch tạosinh 16

2.3.1 Tổngquan QC 16 2.3.2 Một sốmạngGAN 18

2.3.2.1 Condition Generative AdversarialNetwork 18

2.3.2.2 Pix2Pix 2.2.2.2000.4 19 2.3.2.3 Cycle Genartive Adversarial Network 19

2.4 Coché attention S724 NA ÖỀ ỀỒÖ`Ð — 21 2.4.1 Tổng gđ⁄.sứP éX À 21

2.4.2 Mô hình sequence to sequence 22

24.43 Cochéattention 23

2.5 Mô hình transfOrmer 27

25.1 Tổng quanmôhình 27

252 Kiếntrúemôhình 27

2.5.3 Chitiếtcáchhoạtđộng 29

2.5.3.1 Xửlíchuỗiđầuvào 29

2.5.3.2 Self-attention 30

2.5.3.3 Multihead attention 33

2.5.3.4 Positional Encoding 35

2.5.3.5 Decoder 000 35 3 CÁC HƯƠNG TIẾP CAN CHO BÀI TOÁN SINH ANH CHU VIET TAY 37 3.1 Tongquan 2 2 ee 37 3.2 Cac phương pháp trước đây 37

3.2.1 Tổngquan Ặ ẶẶ QC 37

iv

Trang 6

MỤC LỤC

3.2.2 MôhìnhhGANwriing 39

3.2.2.1 Tổngquanmôhìnhh 39

3.222 Kiéntricmang 41

3.2.2.3 Hàmđộlỗi 44

3.2.2.4 Thuật toán huấn luyện môhình 46

3.2.2.5 Nhược đểmmôhìnhh 47

3.3 Mô hình handwriting transformer 47

3.3.1 Tổng quanmôhình - 47

3.3.2 Kiếntrúcmôhình 48

3.3.2.1 Xácđnhvấnđề 48

3.3.2.2 Tổng quankiếntrúc 49

33.23 Mạng Generator 50

3.3249 Hàm domo .) f 52

3.4 Cải tiến mô hình handwriting transformer 54

3.4.1 Nhược điểm mô hình handwriting transformer 54

3.4.2 Multihead Attention Transformer 54

3.4.3 Deformable Transformer 57

3.4.3.1 Deformable Convolution Network 57

3.4.3.2 Deformable Attention , 60

3.4.3.3 Multi-scale Deformable Attention 62

4 THỰC NGHIEM VA ĐÁNH GIA 66 4.1 Tongquan 2 2 en 66 42 Bộdữliệu Ặ Q 0000022 66 4.3 Cài đặtthựcnghiệm 67

4.3.1 Độđođánhgiá 67

4.3.2 Caidatthucnghiém 70

4.4 Kếtquảthựenghệm 72

Trang 7

MỤC LỤC

44.1 MôhìinhGANwriing 72 44.2 Mô hình handwriting transformer 74

4.4.3 Mô hình handwriting transformer không ham độ lỗi cycle 76

4.4.4 Mô hình áp dụng deformable transformer không hàm độ

lỗi cycle Quy 79

Trang 8

Danh sách hình ve

1.1 1.2

2.1

2.2

2.3

2.4

2.5

2.6

2.7

2.8

2.9

2.10

2.11 2.12 2.13

2.14

2.15

2.16

2.17 2.18

Kết qua so sánh giữa mô hình transformer va GANwriting

Khả năng bắt chước chữ viết tay của con người

Đồ thị hàm

sigmoid -Đồ thị hàm ReLU

Ví dụ về max pooling

Kết nối tat trong mang ResNet

Dịch từ ảnh sanganh

-Mang tạo sinh cho ảnh người

Kiến trúc cơ bản củaGAN

Mô hình sequence to sequence

Ví dụ về encoder-decoder dich từ tiếng Anh sang tiếng Trung Mô hình sử dụng cơ chế attention của tác giả Bahdanau

Ma trận alignment giữa các từ dịch từ tiếng Anh sang tiếng Pháp Ví dụ bài toán dịchmáy

Kiến tric enecoder

Kiến trúc decoder

Biến chuỗi thành

vector -Các hoạt động transformer encoder

Self-atenHon cà 2 Tính điểm cho

từngtừ -vil

11 12 13 15

16

17

18

22 23

24

26

Trang 9

DANH SÁCH HÌNH VẼ

2.19

2.20

2.21

2.22

2.23

2.24

2.25

3.1

3.2

3.3

3.4

3.5

3.6

3.7

3.6

3.9

3.10

3.11

4.1

4.2

4.3

4A

4.5

4.6

4.7

4.8

Chuẩn hóa đểm - 32

Đầu ra lớp self-attention 33

Ví dụ về multihead attention - 34

Đầu ra multihead attention - 34

Nối các ma trận con của multihead attention 35

Positional Encoding 35

Cách hoạt động củadecoder - 36

Dữ liệu cho phương pháp sinh ảnh chữ viết tay offline và online 38 Cách mô hình ScrabbleGAN sinh anh 40

Kiến trúc mô hình GANwriting 41

Kiến trúc mạng nhận dạng chữ viếttay 45

Thuật toán huấn luyện mô hình GANwriting 46

Kiến trúc mô hình handwriting transformer 48

Cách hoạt động của deformable convolution 58

Convolution thông thường va deformable convolution 59

PS Rol pooling 2 2 02.0000 60 Deformable Attention 61

Multi-scale ban đồ đặc trưng qua các stage 64

Một số ảnh trong bộ dữ liệu IAM 67

Từ các điểm dif liệu (3d) thi ta sé tim được 2d multivariate gaus-sian distribution 2 2 ee ee ee 68 Anh minh hoa FID trong bài báo gốc 69

Số lượng ảnh bộ dữ liệu [AM dùng cho huấn luyện và đánh giá 70

IV-U ee ee ee xxx và 72

OOV-U ee 72

Viil

Trang 10

Ảnh do mô hình GANwriting tạo ra với 50 ảnh đầu vào 72

Ảnh với phong cách đầu vào không có trong tập huấn luyện Từ

trái qua phải ứng với các từ "fantastic", "powerful", "arrange",

"dictionary", "fabulous” .Ặ Ặ Ặ ee 73

Ảnh với phong cách đầu vào có trong tập huấn luyện Từ trái qua

won wom wom

phải ứng với các từ "ubiquity", "tabarets", "sramble",

Ảnh của mô hình GANwriting khi sinh ra với nội dung

"Back-street Boys are an American vocal group consisting of Nick

Howie AJ and cousins Brian and Kevin" 74

IV-S Ay a Af ee 75 IV-U | ‘i et — 3 75 OOV-S NEO - - 75 OOV-U 0 ee 75

Ảnh do mô hình handwriting transformers sinh ra với nội dung

"International vocabulary earthbound fabricates" 75

Ảnh phong cách đầu vào 76

Anh do mô hình handwriting transformers sinhra 76

Ảnh của mô hình handwriting transformers khi sinh ra với nội

dung "Doctor Stephen Vincent Strange M.D., Ph.D is the former

1X

Trang 11

Anh do mô hình handwriting transformers không hàm độ lỗi

cycle tạo ra với 50 ảnh đầu vào 77

Ảnh do mô hình handwriting transformers không hàm độ lỗi

cycle sinh ra với nội dung "International vocabulary earthbound fabriCAf@S” ee ee 78

Ảnh phong cách đầu vào 78 Ảnh do mô hình handwriting transformers không hàm độ lỗi

snhra GAA gp \` À 78

Ảnh của mô hình handwriting transformers khi sinh ra với nội

dung "Adam Noah Levine is an American singer, musician, and the lead vocalist of the pop rock band MaroonFive" 78

IVS Ẩ W›àề @UỔÔ VÔ ỐỔÔŠỐỐŠỀŠ 79

IV-U | ‘i et — 3 79 OOV-S NEO ee 79 OOV-U 0 ee 79

Anh do mô hình cải tiền deformable transformers không ham độ

lỗi cycle tạo ra với 50 ảnh đầu vào 79

Ảnh do mô hình cải tiền deformable transformers sinh ra với nội

dung "international vocabulary earthbound fabricates" 80

Ảnh phong cách du vào 80

Ảnh do mô hình cải tiến deformable transformers không hàm độ

lỗi cyclesinhra ẶẶS QS c 80

Trang 12

DANH SÁCH HÌNH VẼ

4.42

4.43

4.44

4.45

4.46

4.47

4.48

4.49

4.50

4.51

4.52

4.53

4.54

4.55

Anh của mô hình handwriting transformers khi sinh ra với nội

dung "Anthony Edward Stark more commonly known as Tony Stark is a fictional character primarily portrayed by Robert Downey

Jr in the Marvel Cinematic Ủniverse” 80

Ảnh phong cách đầu vào 83

Handwriting Transformers 83

GANwriting 2 ee ee 83 Ảnh do mô hình handwriting transformers và GANwriting tao ra với cùng nội dung "Peter Parker is a fictional character primarily portrayed by Tom Holland in the Marvel Cinematic Universe media franchise based on the Marvel Comics character of the same name created by Stan Lee and Steve Ditko" 83

Ảnh phong cách đầu vào 84

Handwriting TransfOrmers 84

Handwriting Transformers không hàm độ lỗi cycle 84

Anh do mô hình handwriting transformers va handwriting trans-formers không ham độ lỗi cycle tao ra, cả hai mô hình không dùng hàm độ lỗi cycle với cùng nội dung "I found the way to let you leave I never really had it coming I can’t believe the sigh of youn 84 Anh phong cách đầu vào 85

Handwriting Transformers không hàm độ lỗi cycle 85

Deformable Transformers không hàm độ lỗi cycle 85

Ảnh do mô hình handwriting transformer và deformable trans-former tạo ra, cả hai mô hình không dùng hàm độ lỗi cycle với cùng nội dung "No two people can write precisely the same way just like no two people can have the same fingerprints" 85

Ảnh phong cách đầu vào 86

XI

Trang 13

DANH SÁCH HÌNH VẼ

4.56 Deformable Transformers không hàm độ lỗi cycle 86

4.57 GANwriting ee 86

4.58 Anh do mô hình deformable transformes và mô hình

GANwrit-ing tạo ra với cùng nội dung "League of Legends commonly referred to as League is a multiplayer online battle arena video game developed and published by RiotGames" 86

xI

Trang 14

Danh sách bảng

4.

4.2

4.3

44

4.5

4.6

4.7

4.8

Bảng chia dữ liệu IAM 70

Độ đo FID ứng v6ihinhtrén 72

Độ do FID ứng với hìnhtrên 75

Độ do FID ứng với hìnhtrên 77

Độ do FID ứng V6ihinhtrén 79

Thông số giữa các mô hình trên bộ dữ lệuIAM 81

Độ do FID trên bộ dữ liệu IAM giữa các môhình 81

Thời gian thực thi các môhình 82

xiil

Trang 15

Danh mục từ viết tắt

Từ viết tắt | Nội dungCNN(s) Convolutional Neural Networks RNN Recurrent Neural Network

LSTM Long Short Term Memory Conv Convolution

ANN(s) Artificial Neural Networks

GAN Generative Adversarial Networks FID Frechet Inception Distance

DCN Deformable Convolutional Network

XIV

Trang 16

TÓM TẮT KHÓA LUẬN

Với sự bùng nổ của công nghệ thông tin, mỗi giây có hàng triệu tam

ảnh được đăng tải Mỗi hình ảnh lại mang một ý nghĩa riêng và ảnh

chữ viết tay cũng vậy Ngày nay, các hệ thống nhận dạng kí tự chữviết trong hình ảnh đóng một vai trò quan trọng trong lĩnh vực họcsâu Đặc biệt là đối với hình ảnh chữ viết tay, vì mỗi người có mỗi

kiểu chữ khác nhau nên chữ viết tay rất đa dạng và đa dạng hơn rất

nhiều so với ảnh chữ in Tuy nhiên, cho tới hiện tại các mô hình hoc

sâu dùng cho bài toán nhận dang chữ viết tay vẫn còn những hạn chế,

cụ thể là về dữ liệu Dữ liệu chữ viết tay rất đa dạng đòi hỏi phải thu

thập một lượng lớn dữ liệu, nhưng việc thu thập và gán nhãn không

phải là một điều dé dàng do chi phí rất tốn kém Với sự phát triển của

học sâu, các mô hình sinh ảnh chữ viết tay đã được áp dụng nhằm

thu thập anh chữ viết tay một cách tự động, giảm chi phí thu thập.Tương tự như bài toán nhận dạng chữ viết tay, bài toán sinh ảnh chữviết tay vẫn đòi hỏi một lượng lớn dữ liệu ảnh chữ viết tay phục vụ

cho việc huấn luyện Dé khắc phục nhược điểm về dữ liệu, gần đây

các hướng tiếp cận few-shot đã được đề xuất, luận văn lần này nhóm

sẽ tập trung tìm hiểu các hướng tiếp cận few-shot

Tóm lại, khóa luận này đã thực hiện những nội dung sau:

* Tìm hiểu tổng quan về máy học, học sâu.

» Khao sát các mô hình tiên tiến nhất hiện nay cho bài toán sinh

ảnh chữ viết tay.

Trang 17

¢ Huấn luyện, đánh giá hai mô hình GANwriting[ 1] và

handwrit-ing transformers[2] trên bộ dữ liệu tiếng Anh IAM[3]

s_ Đề xuất giải pháp khắc phục mô hình handwriting transformers[2]

» Xây dung ứng dụng web minh họa cho việc sinh ảnh chữ viết

tay.

Trang 18

Chương 1

TỔNG QUAN BÀI TOÁN SINH ẢNH

CHU VIET TAY

1.1 Đặt van đề

Với sự phát triển của khoa học và công nghệ, đời sống của con người đã được

cải thiện Những công việc trước đây do chính con người làm nay đã được robot thay thế Ví dụ như một số công việc nhà như rửa chén, lau nhà đều đã được

xử lí tự động bằng máy Về mặt giao thông, việc ùn tắc đường hay gặp những

vật thể can trở giao thông là vấn dé bat kỳ ai tham gia giao thông cũng phải đốimặt, hiện nay đã có một số camera với sự hỗ trợ của trí tuệ nhân tạo hỗ trợ conngười phát hiện những vật thể cản trở giao thông hoặc chỉ ra những tuyến đường

không bị kẹt xe Một trong những ứng dụng luận văn hướng tới là việc máy tính

có thể bắt chước được chữ viết con người dựa trên các ảnh mẫu chữ viết người

đó Ngoài ra, việc máy tính có thể sinh ra những ảnh chữ viết tay cũng là tiền để

giúp phát triển các mô hình nhận dạng chữ viết tay Bài toán nhận dạng chữ viết

là một vấn đề lớn trong lĩnh vực thị giác máy tính đang được các nhà nghiên cứuquan tâm Đối với bài toán nhận dạng chữ in thì các mô hình hiện nay đều chonhững kết quả rất tốt phần lớn là vì dữ liệu chữ in rat đa dạng, hiện nay đã có một

Trang 19

1 TONG QUAN

số công cụ hỗ trợ việc gan nhãn tự động cho chữ in ở mức độ kí tu, từ hoặc cảcâu Nhưng đối với nhận dạng chữ viết tay thì lại là một vấn đề lớn, tuy mô hìnhnhận dang chữ viết tay đã cho những kết quả kha quan nhưng nó vẫn tổn tại một

số nhược điểm Một trong những nhược điểm chính của mô hình nhận dạng chữviết tay đó là vấn đề về dữ liệu Tương tự như chữ in, chữ người viết rất đa dạng,thậm chí đa dạng hơn nhiều so với chữ in Mỗi người đều có một phong cách

viết riêng hay thậm chí một người còn có nhiều phong cách viết Vì sự đa dạng

của chữ viết tay, bài toán yêu cầu một lượng lớn dữ liệu chữ viết tay Khác vớichữ in, chữ viết tay hiện nay vẫn chưa có công cụ gán nhãn tự động nào, muốn

thu thập dữ liệu chữ viết tay thì ta phải thu thập và gán nhãn một cách thủ công,

việc thu thập thủ công như vậy rất tốn kém Với sự phát triển của học sâu, một số

mô hình sinh ảnh đã được áp dụng để tạo ra dữ liệu giả nhưng giống dữ liệu thật

để phục vụ cho việc huấn luyện mô hình, đặc biệt dữ liệu về ảnh đã cho nhữngkết quả khả quan không những cho ảnh chữ viết tay mà còn một số ảnh khác

như ảnh người, động vật, Mô hình tạo sinh ảnh chữ viết tay theo phong cách

cho trước giúp việc thu thập ảnh chữ viết tay đơn giản hơn Các phương pháp

trước đây vẫn còn gặp một số hạn chế như vẫn chưa bắt chước được phong cách

viết hoặc là không thể sinh ảnh với những chữ dài Với động lực là sự phát triểncủa transformer trong những năm gần đây, mô hình handwriting transformer đã

áp dụng transformer giúp mô hình có thể giải quyết những vấn đề trên, dựa trênnhững kiến thức đã thu thập thì đây là mô hình sinh ảnh chữ viết tay đầu tiên sửdụng transformer Kết quả đã cho thấy mô hình handwriting transformer[2] chohiệu suất cao hơn các phương pháp trước

Trang 20

1 TONG QUAN

Style examples _HWT (Ours) GANwriting

Thụ PROCESS hạs I0, TOd slow @C | No two @9op Con weike Precisely No two Per Gn worile plecise

Herc Sirauss and last monly 6C W0 SA Way? jest ike NO tho Same Wey just Uke no two pepe

atlacked Brita @c being Bf People (0n Nave +he TAM fingerprints Gr bave the Same (òt

Thee MW Loud crier F shame’ fom | Á two rR com GHẾ AEG Ne dro pore Gay ốle precise |

all p—% J2 He Congerpahue tide | the tame “22t 2224 Lhe no two same Hay jut Whe no two per§,

tự; Yl appecrel by he w rR com have Ue tom 722092 San have Me Same {sgrp

veld bee em Oe coc A| HỆ ¿.x we ÿ ote Ñ jot Uke no tuo pep’

Mr: /a«keaL wenk 0W with the No two Perle can weibe pre—sel4y Úc fy Pople Gan borile precise

conference gk Lanaster House the Íaue wort )“#F dike no two Same Way Just ike no two per despite Hee Crisif which had blown | people tau have the awe farsecprints Can have fhe Same Fiacery

B Rea and A Ra so b AS Vs Rico PAPE Com vu la “pracsseRy Ne two peer ca» wre Precis

BDIGHGDA yn Moga Ác LAL Ba Kawa word eG & X ume “y jua# Uke no two †enk

ee a souk ÑV 9È PASE com rove ha Sawa Ñ« sọc Gy bave the Same uae

Hình 1.1: Kết quả so sánh giữa mô hình transformer và GANwriting

1.2 Thách thức

Các phương pháp trước đây sinh ảnh chữ viết tay dựa trên việc sử dụng các

đặc trưng hữu ích đã được rút trích như là độ nghiêng, độ dày của chữ Một trong những phương pháp đầu tiên sinh ảnh chữ viết tay dựa trên chuỗi đầu vào thông

qua mô hình RNN như là LSTM hoặc GRU Tuy nhiên, phương pháp của họ

có xu hướng trung bình hóa phong cách viết của mọi người dẫn tới việc khôngthể sinh ảnh theo phong cách cụ thể của một người Gần đây, các hướng tiếpcận dựa trên GAN[4] đã được ra đời để sinh ảnh chữ viết tay ScrabbleGAN[5]

có thể sinh ra ảnh chữ viết tay mà con người có thể đọc được nhưng không thể

bắt chước cụ thể phong cách của ai Davis et al.[6] đề xuất giải pháp dựa trên

StyleGAN[7], sinh ảnh chữ viết tay dựa trên phong cách ảnh và chuỗi nội dungđầu vào nhưng van đòi hỏi dữ liệu lớn Phương pháp GANwriting[1] cũng sinh

Trang 21

1 TONG QUAN

anh dựa trờn phong cỏch ảnh va chuỗi nội dung đầu vào nhưng với hướng tiếp

cận few-shot Nhược điểm chung của cỏc hướng tiếp cận trước đõy vẫn chưa bắt

chước được phong cỏch một cỏch chớnh xỏc, đõy cũng là thỏch thức chớnh của

bài toỏn Ngoài ra, vấn đề về dữ liệu cũng ảnh hưởng tới chất lượng của cỏc mụhỡnh trước đõy vỡ dữ liệu ảnh chữ viết tay rất đa dạng đũi hỏi một lượng lớn dữ

liệu.

Madeod " vy L tatent” Roden} "behina” Yelrvd

"brilliantly" lỳn ~‹ H (b) Imagining OOV words |

Le 0Qc petenti : the long text is abcdefghijklmnopq

brilliantly k dhe Song text AS abcole {g-ô)kđơơep

(a) Imitating sớylesgE { (ce) Hallucinating long texts |

Hỡnh 1.2: Khả năng bắt chước chữ viết tay của con người

Khỏc với mỏy tớnh, con người cú thể nhanh chúng học được cỏch bắt chước

chữ viết tay dựa trờn một số mẫu Núi cỏch khỏc, sau khi con người học chữ viếttay một cỏch hạn chế, một người cú thể hỡnh dung cỏc từ viết tay này sẽ trụng

như thộ nào khi ỏp dụng phong cỏch viết này lờn một nội dung bat ky Hơn nữa, khi cung cấp hỡnh ảnh chữ viết tay mà họ chưa từng nhỡn thấy trước đõy thỡ con

người vẫn cú thể hỡnh dung ra được phong cỏch viết tương tự với nội dung hoàntoàn khỏc Việc con người cú thể hỡnh dung được như vậy là vỡ cú thể tỡm thấyđược mối liờn hệ giữa nội dung và phong cỏch viết từ những mẫu được cung cấp

Trang 22

1 TONG QUAN

Nếu chúng ta có thể day máy tính bắt chước quá trình nay, chúng có thể có khảnăng bắt chước chữ viết tay cũng như con người Đây cũng là động lực để phát

triển bài toán sinh ảnh chữ viết tay cho một số mô hình gần đây

Nhìn chung các phương pháp trước đây có thể bắt chước được phong cách toàn

cục, nhưng về cục bộ thì vẫn chưa thể áp dụng được Với sự phát triển của

transformer[8] cho các bài toán về ngôn ngữ, mô hình đã áp dụng phương pháp

transformer[8] với tên gọi handwriting transformer[2] đã ra đời để giải quyết

về vấn đề bắt chước phong cách ảnh Ngoài ra, để đối phó với dữ liệu hạn

chế, phương pháp đã sử dụng hướng tiếp cận few-shot tương tự như mô hình

GANwriting[1].

1.3 Pham vi và mục tiêu

1.3.1 Mục tiêu

Nhóm tập trung giải quyết bài toán nhận sinh ảnh chữ viết tay theo phong

cách như ảnh đầu vào Để hoàn thành công việc, nhóm đã đề ra mục tiêu cụ thể

* Cài đặt, hiện thực, đánh giá kết quả của một số phương pháp trên tập dữ

liệu tiếng Anh là IAM[3]

Trang 23

1 TONG QUAN

1.3.2 Pham vi

Trong khuôn khổ giới hạn của khóa luận, nhóm thực hiện tập trung hoàn

thành các công việc sau:

« Tìm hiểu và so sánh kiến trúc của hai mô hình GANwriting[1] và

hand-writing transformer[2].

« Tập trung sinh ảnh chữ viết tay với ngôn ngữ tiếng Anh.

s Thực hiện cài đặt giải pháp khắc phục cho mô hình handwriting transformer[2]

« Tập trung thực hiện việc đánh giá các mô hình qua tập dữ liệu tiếng Anh

1.4 Đóng góp của khóa luận

Sau đây là một số đóng góp mà nhóm thực hiện có được sau quá trình thực

hiện khóa luận:

« Tìm hiểu các hướng tiếp cận đối với bài toán sinh ảnh chữ viết tay theo

phong cách cho trước.

* Trình bày những kiến thức nền tảng về học sâu và áp dụng vào bài toán

sinh ảnh chữ viết tay.

¢ Huấn luyện lại từ đầu hai mô hình GANwriting[1] và handwriting transformer[2]

* Cai đặt lai module transformer[8] trong mô hình handwriting transformer[2]

nhắm cải tiên thời gian huân luyện của mô hình.

1.5 Cấu trúc khóa luận

Chương 1: Giới thiệu tổng quan đề tài.

Trang 25

Chương 2

CÁC KIÊN THỨC LIÊN QUAN CHO

BÀI TOÁN SINH ANH CHU VIET

TAY

2.1 Tổng quan

Phần này sẽ tổng hợp những kiến thức liên quan được áp dụng trong bài toán.Gồm 4 phần chính: residual network[9], GAN[4], cơ chế attention và mô hìnhtransformer[8] Đầu tiên, residual network[9] sẽ được trình bày tổng quan về

mô hình và giải pháp khắc phục vanishing gradient Tiếp theo, GAN[4] cũng séđược giới thiệu tổng quan về lịch sử hình thành, các ứng dụng và một số mạngGAN[4] phổ biến Cuối cùng, là về cơ chế attention[ 10], sẽ được trình bày chitiết để hiểu rõ hơn về mô hình transformer[S] cho bài toán về lĩnh vực ngôn ngữ

tự nhiên cũng như thị giác máy tính, đặc biệt là cho bài toán sinh ảnh chữ viếttay, đây cũng chính là điểm khác biệt chính của mô hình sinh ảnh chữ viết tay

handwriting transformer[2] so với các phương pháp trước đó.

Trang 26

2 Các kiến thức cơ bản về Deep Learning

2.2 Residual network

2.2.1 Tong quan

Kể từ khi mang nơ ron tích chập (Convolutional Neural Network hay còn gọi

là CNN) được giới thiệu, các bài toán về phân loại ảnh và nhận diện ảnh đã đượccải thiện khá đáng kể Để giải quyết các bài toán phức tạp thì các nhà khoa học

đã tăng số lượng lớp tích chập nhiều hơn nhằm đạt hiểu quả cao Kể từ AlexNet,

các kiến trúc mang nơ ron tích chập ngày càng sâu hơn Trong khi AlexNet chỉ

có 5 lớp tích chập, mạng VGG và GoogleNet có đến 19 và 22 lớp tương ứng Tuy

nhiên, việc tăng số lượng lớp tích chập sẽ xảy ra hiện tượng vanishing gradient

dẫn đến việc học không hiệu quả và mạng ResNet[9] ra đời để giải quyết van

dé đó Mạng ResNet[9] viết tắt của Residual Network được giới thiệu vào năm

2015 trong bài báo mang tên "Deep Residual Learning for Image Recognition".

Mô hình ResNet[9] đã đạt được một số kết quả đáng kể như:

¢ Dat top | cuộc thi ILSVRC 2015 cho bài toán phân loại ảnh

« Đạt top 1 cuộc thi ILSVRC va COCO 2015 cho bài toán phát hiện đối

tượng trên tập ImageNet, định vị đối tượng trên tập ImageNet, phát hiệnđối tượng trên tập COCO và phân đoạn ảnh trên tập COCO

« Thay thé các lớp của mô hình VGG16 trong mô hình Faster R-CNN bằng

ResNet101 giúp mô hình cải thiện độ chính xác hơn 28%

« Có thể huấn luyện mô hình rất hiệu quả với 100 lớp cũng như 1000 lớp

Trang 27

2 Các kiến thức cơ bản về Deep Learning

chập ra đời, đối với các bài toán phân loại đơn giải, thường được giải quyết bằng

mạng nơ ron nhân tao (Artificial Neural Network) Tuy nhiên, đối với một số bài

toán cần một lượng lớn dữ liệu thì mạng nơ ron nhân tạo không thể giải quyếtđược vì số lượng lớn tham số dẫn tới chi phí tính toán lớn nên phụ thuộc rấtnhiều vào phần cứng Để giảm chi phí tính toán, ta phải giảm số lượng tham số.Thay vì, tính toán toàn bộ pixel thì ta chỉ cần tính toán các pixel lân cận nhau

Đây cũng chính là động lực ra đời của mạng nơ ron tích chập, chi phí tính toán

đã giảm đi đáng kể Kiến trúc của một mạng nơ ron tích chập đơn giản gồm các

lớp sau đây:

Convolution layer

Convolution layer hay còn gọi là lớp tích chập, mỗi lớp tích chập chứa các kernel

hay còn gọi là filer đã được học để điều chỉnh và lấy ra các thông tin chính xác

mà không cần phải chọn đặc trưng Các kernel đều nhỏ thường có kích cỡ hai

chiều đầu tiên khoảng 3x3, 5x5, và có độ sâu bằng với độ sâu đầu vào Sự kết

hợp với các filter có thể thực hiện một số hoạt động như phát hiện cạnh, làm mờ,

làm nét, Dau ra của lớp tích chập chứa các đặc trưng gọi là feature map

Activation layer

Ly do chính mà các mô hình học sâu nổi trội hơn các mô hình máy học là nhờ

khả năng giải quyết các vẫn đề phi tuyến tính của dữ liệu Để giải quyết các vẫn

dé phi tuyến phức tạp của dữ liệu chính là nhờ các activation function hay còngọi là hàm kích hoạt Nếu như không áp dụng các hàm kích hoạt này thì mạng

nơ ron sẽ trở thành một hàm tuyến tính như logistic regression Một số loại hàm

kích hoạt điển hình như:

Trang 28

2 Các kiến thức cơ bản về Deep Learning

* Đối với hầu hết các đầu vào dương, sigmoid sẽ chuyển đầu vào thành một

số rất gần với 1

« Đối với các đầu vào tương đối gần 0, sigmoid sẽ chuyển đầu vào thành một

số nào đó từ 0 đến 1

1.0 0.9 0.8 0.7

* Công thức: ReLU (x) = max(0,x)

« Đầu vào nhỏ hon hoặc bằng 0, thì relu sẽ xuất ra 0 Nếu đầu vào lớn hơn

0, thì relu sẽ chỉ xuât đầu vào đã cho.

11

Trang 29

2 Các kiến thức cơ bản về Deep Learning

Ham ReLU dang được sử dung khá nhiều thời gian gan đây khi huấn luyện các

mạng nơ ron Nhìn vào công thức ta dễ dàng hiểu được cách hoạt động của nó.

Một số ưu điểm vượt trội so với các hàm kích hoạt sigmoid:

* Tốc độ hội tụ nhanh hơn han.

¢ Tinh toán nhanh hơn.

Tuy nhiên, ReLU cũng có một số nhược điểm:

* Khi đầu vào có giá trị nhỏ hơn 0, qua hàm relu sẽ thành 0, hiện tượng đấy

gọi là “Dying ReLU“ Nếu các giá trị bị chuyển thành 0 thi sẽ không có

ý nghĩa với bước linear activation ở lớp tiếp theo và các hệ số tương ứng

không được cập nhật với gradient descent.

s Khi learning rate lớn, các trọng số có thể thay đổi theo cách làm tat cả nơ

ron dừng việc cập nhật.

Pooling Layer

Tương tự như lớp tích chập, lớp pooling có tác dụng giảm chiều kết quả, thường

12

Trang 30

2 Các kiến thức cơ bản về Deep Learning

được sử dụng sau lớp tích chập Mục đích là để giảm chi phí tính toán bằng cách

giảm kích thước đầu vào Ngoài ra, lớp pooling giúp giữ lại các đặc trưng cốt lõi,tăng tính bất biến trong không gian Có hai loại lớp pooling thường được dùng

là max pooling, average pooling và sum pooling Max pooling cho phép chọn ra

giá trị lớn nhất trong khu vực nó đang áp dụng, đây cũng chính là lớp poolingđược sử dụng nhiều nhất Average pooling thì trả về kết quả trung bình các điểmtrong khu vực đang áp dụng Sum pooling thì trả về tổng các giá trị trong khu

vực đang áp dụng.

Max Pool

—————-Filter - (2 x 2) Stride - (2, 2)

Hình 2.3: Ví dụ về max pooling

Normalization

Trọng số của các đặc trưng sẽ khác nhau rất nhiều vì giá trị đầu vào của các đặctrưng khác nhau rất lớn Để thích nghỉ với sự khác biệt giữa các đặc trưng thìmột số trọng số sẽ lớn và một số trọng số lại nhỏ Nếu ta có trọng số lớn thì sẽảnh hưởng đến việc cập nhật nó trong quá trình lan truyền ngược cũng sẽ lớn

và ngược lại Vì sự phân bố không đồng đều của các trọng số nên dẫn tới việcthuật toán sẽ bị dao động trong vùng tối ưu trước khi nó tìm đến vị trí cực tiểutoàn cục Để tránh việc thuật toán học dành quá nhiều thời gian dao động khi tối

ưu, ta normalize (hay còn gọi là chuẩn hóa) các đặc trưng đầu vào về cùng tỉ lệ,phân phối Từ đó thì dữ liệu đầu vào sẽ có cùng tỉ lệ và trọng số liên quan đếnchúng cũng sẽ cùng tỉ lệ Điều này giúp mô hình có thể học nhanh hơn

Một số phương pháp normalization

13

Trang 31

2 Các kiến thức cơ bản về Deep Learning

¢ Batch Normalization

¢ Weight Normalization

¢ Adaptive Instance Normalization

Fully Connected Layer

Sau khi anh được truyền qua nhiều lớp tích chập và lớp pooling, model lúc này

đã học được tương đối các đặc điểm của ảnh thì tensor cuối cùng của lớp cuối

sẽ được làm phẳng thành vector và đưa vào một lớp fully connected (lớp kết nối

đầy đủ) Cuối cùng sử dụng softmax hoặc sigmoid để phân loại đầu ra

2.2.3 Vanishing Gradient

Lan truyền ngược là một kỹ thuật thường được dùng trong quá trình huấnluyện các mạng nơ ron Thuật toán sẽ đi từ lớp cuối cùng đến lớp đầu tiên vàtính toán gradient của hàm độ lỗi cho từng trọng số của mạng nơ ron Sau đó, sẽđược dùng để cập nhật lại trọng số Quá trình trên lặp đi lặp lại cho đến khi mạng

nơ ron hội tụ Thường ta định nghĩa một hyperparemeter cho số lượng vòng lặp

thực hiện quá trình trên, hyperparameter này còn gọi là epoch Nếu epoch quá nhỏ, sẽ dẫn tới mô hình không được huấn luyện tốt do chưa hội tụ Ngược lại,

khi số epoch quá lớn sẽ dẫn tới thời gian huấn luyện mô hình lâu hơn Thực tế,khi càng về các lớp đầu tiên, gradient có xu hướng nhỏ dần dẫn tới việc cập nhậttrọng số không hiệu quả, hậu quả là không thể hội tụ và mô hình sẽ không cho

ra kết quả tốt Hiện tượng này gọi là vanishing gradient

2.2.4 Kiến trúc mạng ResNet

Những kiến trúc trước đây thường cải tiến độ chính xác nhờ tăng chiều sâu

của mạng nơ ron tích chập Thực nghiệm cho thấy tới một ngưỡng sâu nào đó thì

14

Trang 32

2 Các kiến thức cơ bản về Deep Learning

mô hình sẽ bão hòa hay thậm chí là phản tác dụng làm mô hình kém chính xác.

Việc đi qua quá nhiều lớp như vậy sé làm mất đi thông tin gốc Để giải quyết

van dé này mô hình ResNet[9] đã được giới thiệu Ý tưởng chính của ResNet[9]

là sử dụng kết nối tat đồng nhất để xuyên qua một hay nhiều lớp Các kết nối tắtgiúp giữ thông tin bằng cách kết nối các lớp trước đó tới các lớp sau và bỏ qua

một vài lớp trung gian Một khối như vậy được gọi là một residual block như

trong hình sau:

weight layer

x

identity

Hình 2.4: Kết nối tat trong mang ResNet

Mô hình ResNet[9] gần như tương tự các mạng nơ ron tích chập gồm lớptích chập, pooling, activation và lớp kết nối đầy đủ Việc xếp chồng các lớp sẽkhông làm giảm hiệu suất của mạng Với kiến trúc này, các lớp phía sau sẽ cóđược thông tin các lớp trước dẫn nên việc điều chỉnh trọng số sẽ hiệu quả hơn

Thực tế, ResNet[9] không phải là mô hình đầu tiên sử dụng kết nối tắt Mô hìnhtrước đây sử dụng kết nối tắt là mạng Highway, có thể coi ResNet[9] là trường

hợp đặc biệt của mạng Highway Sau ResNet, hàng loạt những biến thể của mô

hình đã được giới thiệu Việc ResNet[9] ra đời giúp cho các mô hình sau này có

thể huấn luyện với độ sâu hàng nghìn lớp Đây cũng là lý khiến ResNet[9] trở

thành một trong những kiến trúc phổ biến nhất trong lĩnh vực thị giác máy tính

15

Trang 33

2 Các kiến thức cơ bản về Deep Learning

2.3 Mạng doi nghịch tạo sinh

2.3.1 Tổng quan

Mạng đối nghịch tạo sinh (Generative Adversarial Network gọi tắt là GAN[4])

là một nhánh nhỏ của máy học được giới thiệu vào năm 2014 bởi lan Goodfellow

et al GAN[4] ra đời đã tác động rất lớn trong lĩnh vực học sâu, đặc biệt là thị

giác máy tính GAN[4] là mô hình có thé sinh ra dữ liệu mới Thực chất GAN[4]

là mạng tạo sinh sử dụng phương pháp đối nghịch, nghĩa là đối với những dữ

liệu do mạng tạo sinh tạo ra, thì mạng đối nghịch sẽ phân biệt ảnh đó là thật hay

giả Mục đích chính là mạng tạo sinh có thể tạo ra những dữ liệu có thể lừa được

mạng đối nghịch

GAN[4] có thé được dùng cho nhiều mục đích khác nhau như dịch từ ảnh sang

ảnh, chẳng hạn như ảnh ban ngày sang ban đêm, ảnh đời thật thành ảnh tranh vẽ,

ảnh từ mùa hè sang mùa đông,

summer —> winter

Photograph Van Gogh Cezanne

Hình 2.5: Dịch từ anh sang anh

GAN[4] có thể sinh ra những ảnh mà ngay cả con người không thể phân biệt

16

Trang 34

2 Các kiến thức cơ bản về Deep Learning

được that hay giả như là ảnh số viết tay, ảnh người,

Kiến trúc của GAN[4] gồm hai phan: mang tạo sinh (generator network) vàmạng đối nghịch (discriminator network)

¢ Generator mục đích của mang tạo sinh là tạo ra những dữ liệu giả như thật

¢ Discriminator mục đích của mạng đối nghịch là phân biệt được đâu là ảnh

giả hay ảnh thật nhằm giúp mạng tạo sinh có thể tạo ra những dữ liệu tốt

hơn

17

Trang 35

2 Các kiến thức cơ bản về Deep Learning

Generated Data

Hình 2.7: Kiến trúc cơ bản của GAN

2.3.2 Một số mạng GAN

2.3.2.1 Condition Generative Adversarial Network

Conditional GAN hay gọi tat là cGAN day là cải tiến của GAN[4] thông

thường Tuy các mang GAN[4] trước đây có thể tao ra các mẫu ngẫu nhiên,

nhưng nó lại không thể sinh ra mẫu theo ý muốn Việc điều khiển mẫu ảnh theo

mong muốn cũng là động lực cGAN ra đời Mô hình cGAN có thể sinh ảnhdựa trên các thông tin phụ trợ như nhãn của ảnh Nhờ việc thêm một số thôngtin giúp kiểm soát được đầu ra của mô hình Có hai động lực cho việc sử dụngthông tin nhãn cho mô hình Thứ nhất, quá trình huấn luyện cải thiện hơn nhờ

việc thêm nhãn Thứ hai, ảnh mục tiêu sẽ được điều khiển theo mong muốn dựa

trên thông tin thêm vào.

Thông tin thêm vào không chỉ cải thiện mô hình mà còn giúp quá trình huấn

luyện ổn định hơn và hình ảnh tạo ra có chất lượng tốt hơn Ngoài ra, việc thêm

nhãn giúp ảnh tạo ra sẽ có vật thể tương ứng với nhãn.

18

Trang 36

2 Các kiến thức cơ bản về Deep Learning

2.3.2.2 Pix2Pix

Pix2Pix là một loại mô hình đối nghịch tạo sinh dùng cho bài toán dịch từ ảnh sang ảnh dựa vào ảnh đầu vào Một số ví dụ dịch từ ảnh sang ảnh:

« Chuyển từ ảnh mùa đông sang mùa hè

« Chuyển từ ảnh đời thật sang ảnh tranh vẽ

* Chuyển từ ảnh ngựa sang ngựa van

Mang Pix2Pix lần đầu được giới thiệu vào năm 2016 bởi Phillip Isola Mô hình

cGAN là một phiên bản mở rộng của GAN[4] có thể sinh ảnh dựa vào ảnh đầu vào Mô hình Pix2Pix là một phiên bản nâng cấp mô hình cGAN, ảnh sinh ra

được điều khiển bởi ảnh đầu vào

Mang generator sinh ảnh dựa trên ảnh đầu vào, mạng discriminator đầu vào là

cặp ảnh, ảnh đầu vào và ảnh mục tiêu hay ảnh do mô hình sinh ra và xác định

xem là ảnh thật hay giả Tóm lại, mạng generator được huấn luyện sao cho có

thé lừa được discriminator và có thể tối thiểu độ lỗi giữa ảnh sinh ra và ảnh mục

tiêu.

Ngoài ra, mạng generator sẽ được cập nhật thông qua hàm độ lỗi adversarial,

nhằm giúp mô hình sinh ra ảnh chân thật hơn Hàm độ lỗi LI sẽ được sử dụng

để tính toán giữa hai ảnh sinh ra và ảnh mục tiêu Hàm độ lỗi L1 giúp mô hình

có thể sinh ra ảnh hợp lý hơn dựa vào ảnh đầu vào.

2.3.2.3 Cycle Genartive Adversarial Network

Bai toán chuyển từ ảnh sang ảnh là bài toán tổng hợp hình anh sao cho ảnh

mới sinh ra có thể sửa đổi theo ảnh đầu vào

Thông thường, bài toán chuyển từ ảnh sang ảnh đòi hỏi dữ liệu phải đi theo từng cặp như mô hình Pix2Pix Việc dữ liệu phải đi theo cặp như vậy dẫn tới một

lượng lớn dif liệu để mô hình có thể học và sinh ra ảnh theo mong muốn Việc

19

Trang 37

2 Các kiến thức cơ bản về Deep Learning

đòi hỏi một lượng lớn như vậy là bat khả thi vì những dữ liệu đi theo cặp nhưvậy rất khó khăn trong việc thu thập Vì vậy ta mong muốn có thể huấn luyện

mô hình mà không đòi hỏi việc dữ liệu phải đi theo cặp, CycleGAN được phát

triển để giải quyết van đề về dữ liệu theo cặp

CycleGAN 1a mô hình dựa trên GAN[4], nhưng không đòi hỏi dữ liệu phải đi

theo từng cặp, đây là một lợi thế lớn của mô hình CycleGAN Vi dụ, ta muốnchuyển ảnh từ mùa hè sang mùa đông, mô hình sẽ dùng 2 tập dữ liệu về mùa hè

và mùa đông, với từng dữ liệu sẽ rút trích đặc trưng và phong cách để áp dụng

cho việc chuyển đổi ảnh Cụ thể mô hình CycleGAN sẽ dùng 2 mô hình GANI4]

gôm:

¢ Generator A va Discriminator A

¢ Generator B va Discriminator B

Mang generator được dùng cho việc chuyển đổi ảnh dựa vào ảnh dau vào B va

chuyển thành ảnh đầu ra A, mang generator còn lại thì chuyển đổi ngược lại từ

ảnh đầu vào A sang ảnh B Lấy ví dụ chuyển ảnh từ mùa hè sang mùa đông,mang generator A sẽ nhận đầu vào là ảnh mùa hè trong khi mang generator B sẽnhận đầu vào là ảnh mùa đông:

¢ Ảnh B > Generator A -> Ảnh A

¢ Anh A — Generator B > Ảnh B

Tương tự như kiến trúc GAN thông thường, mỗi mang generator sẽ đi kèm theo

mang discriminator Mang discriminator sẽ nhận đầu vào là ảnh thật và ảnh do

mô hình generator sinh ra sau đó dự đoán ảnh là thật hay giả.

° Anh A - Discriminator A > Thật hay giả

¢ Anh B — Discriminator B — Thật hay giả

20

Trang 38

2 Các kiến thức cơ bản về Deep Learning

Tổng hợp lại ta có CycleGAN hoạt động như sau:

¢ Ảnh B > Generator A — Discriminator A > Thật hay gia

¢ Anh A - Generator B — Discriminator B + Thật hay gia

Điểm khác biệt của mô hình CycleGAN đó là mang generator không chi tạo ra

ảnh mới theo mong muốn mà còn dùng để làm đầu vào cho mang generator còn

lại và ngược lại.

° Ảnh B — Generator A —› Ảnh A — Generator B —› Ảnh B

° Ảnh A — Generator B + Ảnh B > Generator A > Ảnh A

Cả hai mô hình đối nghịch tao sinh trong mô hình CycleGAN đều sử dung hàm

độ lỗi cycle Việc sử dụng hàm độ lỗi cycle nhằm giúp mô hình có thể sinh ra

ảnh giống thực tế hơn.

Hàm độ lỗi cycle so sánh giữa ảnh đầu vào của generator A và ảnh sinh ra của

generator B và ngược lại thông qua độ do LI.

là bài toán dịch máy Cho tới hiện tại, cơ chế attention[10] đã có những biến thể

để giải quyết các bài toán ngoài lĩnh vực xử lí ngôn ngữ tự nhiên như là thị giác

máy tính, xử lí giọng nói.

21

Trang 39

2 Các kiến thức cơ bản về Deep Learning

2.4.2 Mô hình sequence to sequence

Trước khi cơ chế attention[10] đầu tiên ra đời vào năm 2015, bài toán dịch

máy được giải quyết bằng mô hình sequence to sequence Mô hình sequence to

sequence lần đầu tiên được giới thiệu vào năm 2014 bởi Sutskever Mục đíchcủa mô hình là biến đổi chuỗi đầu vào thành một chuỗi mới và cả hai chuỗi có

độ dài tùy ý.

10]929A 19po2u3

Một số ví dụ của bài toán dịch máy như chuyển đổi qua lại giữa các ngônngữ cho văn bản, âm thanh Kiến trúc của mô hình sequence to sequence thườnggồm encoder và decoder Encoder xử lí chuỗi đầu vào, mã hoá các từ đầu vào

bằng một chuỗi các lớp RNN, LSTM nhằm đưa ra vector state cuối cùng có độ

dài cố định Sau đó, decoder sẽ dùng vector này để giãi mã, tạo ra các từ trong

một câu, lần lượt từng từ mot

22

Trang 40

2 Các kiến thức cơ bản về Deep Learning

Encoder

Context vector (length: 5)

[0.1, -0.2, 0.8, 1.5, -0.3]

Hình 2.9: Ví dụ về encoder-decoder dịch từ tiếng Anh sang tiếng Trung

Có thể thấy trong bài toán dịch máy, mô hình sequence to sequence dùngencoder để tóm tắt chuỗi đầu vào thành vector ngữ cảnh, sau đó decoder dựa

vào vector tóm tắt này để tạo ra một câu hoàn chỉnh Nếu bản tóm tắt không

được tốt sé dẫn tới chuỗi đầu ra không tốt theo Và kết quả đã cho thay, encoderkhông thể giải quyết được những chuỗi đầu vào dài và đây cũng chính là nhược

điểm chính của mô hình sequence to sequence Thường thì mô hình sẽ quên đi

các từ đầu tiên sau khi đã xử lí xong toàn bộ chuỗi Lý do mô hình không thể ghi

nhớ những chuỗi dai vi vanishing hay exploding gradient Mặc dù LSTM được

cho là có thể xử lí những chuỗi dài tốt hơn RNN, nhưng trong một vài trườnghợp LSTM vẫn quên đi một số từ Một van dé khác là không có cách nào đểđánh giá tầm quan trọng của một số từ đầu vào so với những từ đầu ra Câu hỏiđặt ra là có cách nào có thể giữ nguyên ven tat cả thông tin liên quan trong câuđầu vào trong khi tạo ra vector ngữ cảnh hay không? Cơ chế attention[ 10] ra đời

để giải quyết van dé này.

2.4.3 Cơ chế attention

Để hiểu được ý tưởng của attention[ 10], lấy ví dụ khi dịch "What are you

do-ing?" từ tiếng Anh sang tiếng Việt là "Bạn dang làm gì thế?" Từ "bạn" là nghĩa

23

Ngày đăng: 03/11/2024, 17:45

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Kết quả so sánh giữa mô hình transformer và GANwriting - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 1.1 Kết quả so sánh giữa mô hình transformer và GANwriting (Trang 20)
Hình 1.2: Khả năng bắt chước chữ viết tay của con người - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 1.2 Khả năng bắt chước chữ viết tay của con người (Trang 21)
Hình 2.2: Đồ thi hàm ReLU - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.2 Đồ thi hàm ReLU (Trang 29)
Hình 2.3: Ví dụ về max pooling - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.3 Ví dụ về max pooling (Trang 30)
Hình 2.4: Kết nối tat trong mang ResNet - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.4 Kết nối tat trong mang ResNet (Trang 32)
Hình 2.7: Kiến trúc cơ bản của GAN - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.7 Kiến trúc cơ bản của GAN (Trang 35)
Hình 2.9: Ví dụ về encoder-decoder dịch từ tiếng Anh sang tiếng Trung - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.9 Ví dụ về encoder-decoder dịch từ tiếng Anh sang tiếng Trung (Trang 40)
Hình 2.10: Mô hình sử dụng cơ chế attention của tác giả Bahdanau - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.10 Mô hình sử dụng cơ chế attention của tác giả Bahdanau (Trang 41)
Hình 2.11: Ma tran alignment giữa các từ dich từ tiếng Anh sang tiếng Pháp - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.11 Ma tran alignment giữa các từ dich từ tiếng Anh sang tiếng Pháp (Trang 43)
Hình 2.12: Ví dụ bài toán dịch máy - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.12 Ví dụ bài toán dịch máy (Trang 45)
Hình 2.13: Kiến trúc encoder - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.13 Kiến trúc encoder (Trang 45)
Hình 2.15: Biến chuỗi thành vector - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.15 Biến chuỗi thành vector (Trang 46)
Hình 2.16: Các hoạt động transformer encoder - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.16 Các hoạt động transformer encoder (Trang 47)
Hình 2.19: Chuẩn hóa điểm - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.19 Chuẩn hóa điểm (Trang 49)
Hình 2.22: Đầu ra multihead attention - Khóa luận tốt nghiệp Khoa học máy tính: Tạo sinh ảnh chữ viết tay theo một phong cách cho trước
Hình 2.22 Đầu ra multihead attention (Trang 51)