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

Khóa luận tốt nghiệp: Ứng dụng Denoising Probabilistic Diffusion Model cho bài toán Image Inpainting

94 10 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 đề Ứng dụng kỹ thuật Denoising Diffusion Probabilistic Models giải quyết bài toán Image Inpainting
Tác giả Tran Cong Minh, Tran Quoc Thang
Người hướng dẫn TS. Ngo Duc Thanh, ThS. Do Van Tien
Trường học Trường Đại học Công nghệ Thông tin, Đạ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 2023
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 94
Dung lượng 55,86 MB

Nội dung

TÓM TẮT KHÓA LUẬNImage Inpainting tam dịch: lấp đầy phần khuyết của ảnh là bài toán có nhiều ứng dụng trong thực tiễn, nó giúp loại bỏ nội dung không mong muốn trên ảnh, cũng như phục ch

Trang 1

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

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

KHOA KHOA HỌC MÁY

ỨNG DỤNG KỸ THUẬT DENOISING DIFFUSION

PROBABILISTIC MODELS GIẢI QUYÊT BÀI TOÁN IMAGE

Trang 2

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

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

KHOA KHOA HỌC MÁY

ỨNG DỤNG KỸ THUẬT DENOISING DIFFUSION

PROBABILISTIC MODEL GIẢI QUYET BÀI TOÁN IMAGE

TRAN CONG MINH - 19521855

TRAN QUOC THANG - 19520951

TP H6 Chi Minh, Thang 1 nam 2023

Trang 3

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ố

36/QD-DHCNTT ngày 17/01/2022 của Hiệu trưởng Trường Dai hoc

Công nghệ Thông tin.

1 <A EE - Chủ tịch.

2 P: GP <6 - Thư ký.

3 P mm Me, - Uỷ viên.

Trang 4

LỜI CẢM ƠN

Thực hiện đề tài Khóa luận tốt nghiệp không phải là quá trình đơn

giản với chúng em nếu thiếu đi sự giúp đỡ, chỉ dẫn và cộng tác từ mọi

người Với tất cả sự biết ơn, chúng em xin gửi lời cảm ơn sâu sắc đến

TS Ngô Đức Thành và Ths Đỗ Văn Tiến, người trực tiếp theo dõi

và đưa ra những lời khuyên bổ ích cũng như sẵn sàng hỗ trợ chúng

em những lúc khó khăn trong suốt quá trình thực hiện đề tài.

Bên cạnh đó, chúng mình cũng xin cảm ơn những bạn thuộc câu lạc

bộ CS-UIT AI Club đã cùng đồng hành, cũng như đưa ra những quanđiểm, ý kiến nhằm hỗ trợ nhóm hoàn thiện đề tài tốt hơn

Sau cùng, chúng em xin phép gửi lời cảm ơn tới toàn thể giảng viên

tại trường Đại học Công nghệ Thông Tin, đặc biệt những thầy cô đã trực tiếp giảng dạy chúng em trong thời gian học tập và rèn luyện tại

trường.

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

Sinh viên thực hiện

Trang 5

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

Image Inpainting (tam dịch: lấp đầy phần khuyết của ảnh) là bài toán

có nhiều ứng dụng trong thực tiễn, nó giúp loại bỏ nội dung không

mong muốn trên ảnh, cũng như phục chế phần ảnh bị hư hại, khuyết

thiếu một cách chân thật nhằm tăng giá trị sử dụng cho nguồn ảnhhiện có Bài toán có đầu vào là ảnh cần chỉnh sửa, và mặt nạ ảnh

(mask) của phần cần loại bỏ; đầu ra là ảnh với phần nội dung trong

vùng mask được sinh mới phù hợp và chân thực.

Trong nỗ lực tạo ra tam ảnh được chỉnh sửa chân thực nhất, bài toán

gap những thách thức như: nội dung ảnh quá đa dạng, phần khuyết

có thể rất lớn hay dau ra của ảnh là không có định và rất khó đánh giá

ảnh như thế nào mới là chân thực nhất Các phương pháp không sinh

ảnh trước đây đạt được những thành tựu nhất định trong việc khôi

phục phần ảnh thiếu, chúng lại chưa thể đạt được tính chân thực cao

đặc biệt là với vùng mắt mát lớn Gần đây, những phương pháp dựa

trên kỹ thuật sinh ảnh như Generative adversarial network (GAN),

Variational autoencoder (VAE) hay gần đây nhất là Denoising fusion Probabilistic Models (DDPM) cho các kết quả khả quan hơn

Dif-Vì vậy, khóa luận này đã tập trung nghiên cứu tổng quan về bài toán

image inpainting, khảo sát và đánh giá các phương pháp sử dụng mô

hình sinh trong giải bài toán image inpainting nhằm làm rõ ưu nhược

điểm của các hướng tiếp cận sinh ảnh khác nhau trong giải bài toán

Trang 6

image inpainting Cuối cùng, trong quá trình thực hiện khóa luận này,tôi đã thu được các kết quả sau đây:

¢ Hệ thống lại kiến thức về bài toán image inpainting và các

hướng tiếp cận phổ biến hiện nay

* Tìm hiểu và khảo sát hướng áp dung kỹ thuật DDPM vào bài

toán image inpainting.

¢ Đánh giá, phân tích va so sánh với LAMA [1] va DSI [2] là đại

diện cho hai phương pháp sinh anh khác thuộc hướng tiếp cận

GAN và VAE Sau khi đánh giá, các kết quả từ việc sử dụngDDPM trong bài toán image inpainting cho kết quả vượt trộihơn trong đa số trường hợp so với phương pháp khác trên các

thang đo nhận thức trên ảnh FID, IS, LPIPS và trên các khảo sát

thực tế với người thật

* Xây dựng ứng dụng web minh họa lấp day phần khuyết của ảnh.

Từ khóa: Khôi phục anh, Image Inpainting, Denoising Diffusion Probabilistic Models, DDPM, Image Generation

Trang 7

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

14 Cấutrúckhóaluận

2 CƠ SỞ LÝ THUYET VÀ CÁC NGHIÊN CỨU LIEN QUAN

2.1 Bài toán imageInpainting

Trang 8

MỤC LỤC

2213 LópPoolng 12

2.2.1.4 Lớp chuẩn hóa (Normalizaton) 13

2.2.2 U-Net: Convolutional Networks for Biomedical Image Segmentation 2 0.000000 0G e 14 2.2.3 ResNet (Residual Network) 16

2.2.4 Autoencoder 002 0005 17 224.1 Kién tric Autoencoder 18

2.2.4.2 Cach hoạt động của Autoencoder 19

2.2.4.3 Một số siêu tham số quan tronng trong Au-toencoder 19

2.2.5 Variational Autoencoders 20

2.2.5.1 Một số thuậtngữ 21

2.2.5.2 Hạnchếcủaautoencoder 21

2T: ÑTmoa AI /./ 22

2.2.6 Generative Adversarial Networks 24

2.2.6.1 Cachhoatd6ng 24

2.2.6.2 Backpropagation 26

2.3 Các hướng tiếp cận phổ biến cho bài toán image inpainting 27

2.3.1 Phương pháp không sử dụng mạng sinh 28

2.3.1.1 Thuật toán dựa trên khuếchtán 28

2.3.1.2 Kithuật dựa trên lấy mẫu 30

2.3.2 Phương pháp sử dụng mạng sinh 31

3 ÁP DUNG DENOISING DIFFUSION PROBABILISTIC MODELS CHO BAI TOAN IMAGE INPAINTING 35 3.1 Tổng quan về Denoising Diffusion Probabilistic Models 35

3.1.1 Kiến trúctổngquan 36

312 Quátìnhlàmnhiu 37

VI

Trang 9

MỤC LỤC

313 Quátìinhkhửnhiu 38

3.1.4 Cách huấn luyện môhình 39

3.1.5 Cácsiêuthamsố 42

3.1.5.1 ThamsốhóafỠ, 42

3.1.5.2 Tham số hóa phương sai quá trình khử nhiễu Lp 44 3.1.5.3 Quatrinhsample anh 45

3.16 Kiến rúcmạngnơron 45

3.1.7 Áp dung Denoising Diffusion Probabilistic Models cho bài toán Image Inpainting 47

3.1.7.1 Diéu kiện hóa những phần không bimask 48

3.1.7.2 Resampling 49

4 THỰC NGHIEM VA ĐÁNH GIÁ 51 4.1 Médiu 4 TT ` sằ j./ -—— 51

4.2 Tập dữ liệu đánh giá 52

4.3 Caécdédoduccstdung 0.000 ee eee 53 4.3.1 InceptionScore(S) 54

4.3.2 Frechet Inception Distance (FID) 57

4.3.3 Learned Perceptual Image Patch Similarity (LPIPS) 57

4.3.4 Sử dung đánh giá của conngười 58

4.4 Phantichdinhlugng 59

441 Độchânthật 59

44.2 Độđadạng ẶẶ 0.2.2 So 61 44.3 Thdigiansinhanh 62

4.5 Phantichdinhtinh 63

4.6 Các trường hợp thấtbại 67

vii

Trang 10

62 Hướng pháttriển 2 eee 75

Tài liệu tham khảo 76

Viil

Trang 11

Danh sách hình ve

1.1

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

Đầu vào va dau ra của bài toán Image Inpainting 3

Minh họa tích chập của một anh RGB và matrankernel 7

Mô phỏng quá trình tích chập tong CNN 9

Vi dụ kết quả tính toán tích chập trong hình ảnh 10

Mô phỏng phép tính ReLU 11

Mô phỏng quá trình tính Max-pooling 12

Minh họa áp dung Pooling từ lớp tíchchập 13

Tổng quan về mạng U-Net_ - 14

Minh họa về transposed convolution 15

Minh họa residual block 16

Kiến trúc Autoencoder - 18

Ý tưởng AutoencodervàVAE 22

Sự khác biệt giữa latent space được chính quy và không được chinhquy QẶ Q Q HQ ee 23 Sự so sánh về phân phối dữ liệu được chính quy và không được chínhquy Q Q Q Q HQ HQ ka 24 Mô phỏng cách tạo ra ảnh mới của GAN 25

Biểu diễn sơ đồ cách hoạt động củaGAN 25

Phân loại bài toán image Inpainting 28

Trường hợp kĩ thuật inpaint dựa trên khuếch tán cho kết quả t6t 29

1X

Trang 12

DANH SÁCH HÌNH VẼ

2.18

2.19

2.20

2.21

3.1

3.2

3.3

3.4

3.5

3.6

3.7

3.8

3.9

3.10

4.1

4.2

4.3

4.4

4.5

4.6

Trường hop ki thuật inpaint dựa trên khuếch tán cho kết qua khong t6t ẶẶQQẶQo 30

Ảnh được inpainting bởi ki thuật dựa trên lấy mẫu 31

Biểu diễn cấu trúc của GAN-based, VAE-based và diffuon model-based 2 ee 32 Bộ ba bat khả thi trong mang sinh 34

Minh họa về quá trình khếch tán và đảo ngược khuếch tan của giọt nước màu trong lynưÓóc 36

Minh hoa quá trình nhiễu và khử nhiễu củaDDPM_ 39

Thuật toán mô phỏng quá trình huấn luyện và sample Anh 41

Quá trình ảnh bị làm nhiễu bởi hàm lập lịch phương sai tuyến tính và hàm có dạng hìnhcos 42

ỡ, thông qua lập lịch phương sai theo hàm tuyến tính và hàm có danghamcos 0 Ặ Q Q Q ee ee es 43 Biểu diễn mối liên hệ giữa độ loss VLB với số bước làm nhiễu 44 Kiến trúc mạng U-net 47

Tổng quan về cách sử dụng mô hình DDPM được huấn luyện trước cho bài toán Image Inpainting 48

Ảnh hưởng của số bước resample trên sự hài hoà của bức anh 49

Thuật toán mô phỏng quá trình resampling 50

Ảnh mask và ảnh từ tập test sau khi áp dụng mask ở 2 cấu hình thn vàmedium 53

Mang inception dự đoán ảnh con chó 54

Mang inception dự đoán anh giá sách 55

Đánh giá độ đa dang cuaanhsinhra 55

Phân phối label và phân phối marginal 56

Một ảnh trong phiếu khảo sát - 59

Trang 13

Một số ảnh được sinh ra của các phương pháp dùng trong đánh giá 61

Nhóm ảnh với vùng mask nhỏ, chỉ bị mất một phần nội dung

mang ngữnghĩa Ặ 64

Nhóm ảnh với vùng mask lớn, mất nhiều nội dung mang ngữ nghĩa 64

Nhóm ảnh với vùng bi mask chứa các họa tiết đã có trong hình 65

Phần nội dung được tái tạo của LAMA và DSI không đồng nhất

với màu sắc xung quanh - 66

Các trường hợp DDPM kết hợp nội dung không liên quan 67

Minh họa kết quả chạythỬ 72

XI

Trang 14

quả khảo sát trên 3 tập dữ liệu CelebA HQ, Paris StreetView và

Mini-Places Với 2 cầu hình mask Thin mask (ở trên) và Medium

mask (ở dưới)

Kết quả phân tích định lượng dùng độ đo LPIPS trong đánh giá

độ đa dạng của ảnh sinh

Thời gian trung bình để sample một ảnh ở các phương pháp khác

nhau trên RTX 20801

xI

Trang 15

DDPM denoising diffusion probabilistic models

IS Inception Score FID Fréchet Inception Distance LPIPS Learned Perceptual Image Patch Similarity

xiil

Trang 16

Chương 1

TỔNG QUAN

1.1 Đặt van đề

Ảnh xuất hiện ở khắp mọi nơi, chiếm lượng lớn thông tin được lưu trữ trên

Internet, đây là nguồn dif liệu tiềm năng vì tính giàu ngữ nghĩa và thân thiện

với người xem Trong quá trình sử dụng ảnh, dù là ảnh chụp hay tái sử dụng từ

Internet, chúng ta thường không hoàn toàn ưng ý với chúng, thử tưởng tượng,

ta cần chụp ảnh trường Đại học Công nghệ Thông Tin để làm ảnh bìa trường

nhưng có vài cột đèn đường che mat tòa, không còn cách nào khác, ảnh vẫn phải

chụp và cần hậu kỳ để loại bỏ vật cản nhằm đảm bảo tính thẩm mỹ Bài toán

điền vào phan ảnh bị xóa (image inpainting), được mong đợi sẽ giúp người dùngchọn loại bỏ một phần trên ảnh và thay thế bằng nội dung phù hợp, vẫn đang làmột thách thức với những nhà nghiên cứu, mà một khi giải quyết tốt sẽ giảm đi

rất nhiều gánh nặng cho người hậu kì ảnh cũng như góp phần tận dụng nguồn

ảnh hiện có.

Mục tiêu của bài toán image inpainting là bằng cách nào tạo ra tam ảnh với

phần khuyết được lấp đầy chân thật nhất, điều này đòi hỏi phần ảnh sinh ra phảihài hòa với nội dung xung quanh va phù hợp với ngữ cảnh của cả tam ảnh [3]

Nó cũng đặt ra các thách thức sau [4]:

Trang 17

1 TONG QUAN

¢ Anh đầu vào phức tap: ngoại trừ ảnh chụp trong tự nhiên vốn đã phức tap,

tranh vẽ hay bản phác thảo với nhiều đường nét, họa tiết, chữ viết hay ảnhkhông gian (depth image) đều là những đầu vào phổ biến và quan trọng.Những loại đầu vào khác nhau đòi hỏi chiến lược và thuật toán khác nhau

¢ Phan cần khôi phục có thể rất lớn: điều này thường dẫn đến kết quả không

đáp ứng được với các thuật toán dựa trên patch (patch-based), các thuật

toán dựa trên phương trình vi phan (partial differential equations-based)

hoặc các thuật toán nội suy.

* Image inpainting là bài toán không có nghiệm cu thé: đầu ra của bài toán

này không phải là duy nhất điều này dẫn đến việc khó đánh giá và so sánh

với các phương pháp và kỹ thuật khác.

Các hướng tiếp cận truyền thong thường dùng các kỹ thuật diffusion-based,

texture systhesis và examplar-based, Các kĩ thuật này có thể được sử dụng đểtìm ra nội dung của hình ảnh bị hư hại hoặc thiếu một phan bằng cách sử dụng

các thông tin từ các vùng xung quanh vùng bị hư hại hoặc thiếu, và (hoặc) các

vùng khác trong ảnh Trong khi các kĩ thuật này có thể đem lại kết quả tốt chomột số trường hợp, chúng còn có những hạn chế như không có khả năng xử lýđược các vùng bị hư hại hoặc thiếu một cách chính xác và tự nhiên đặc biệt vớivùng mat mát lớn Vì vậy, các mô hình tổng hợp ảnh như Generative Adversarial

Networks (GANs), Variational Autoencoders (VAEs) hay Denoising Diffusion

Probabilistic Models (DDPM) đã được sử dung để giải quyết bài toán image

inpainting với hiệu quả tốt hơn so với các kĩ thuật truyền thống Mô hình này

có thể học được các đặc trưng và tính chất của hình ảnh bị hư hại hoặc thiếumột phần và dự đoán nội dung của chúng một cách chính xác và tự nhiên hơn

Nội dung khóa luận này tập trung nghiên cứu, đánh giá việc áp dụng kỹ thuật

DDPM trong giải quyết bài toán image inpainting, đồng thời so sánh với LAMA

[1] (một hướng tiếp cận dựa trên GAN) và DSI [2] (hướng tiếp cận dựa trên

Trang 18

1 TONG QUAN

VAE) đồng thời chỉ ra ưu nhược điểm của từng hướng tiếp cận Đầu vào và đầu

ra bài toán này là:

* Đầu vào (Input): Ảnh có nội dung cần loại bỏ và mặt nạ ảnh (mask) phần

can loại bỏ va lap day lại.

* Đầu ra (Output): Ảnh với phan nội dung được mask đã được thay thé phù

Đầu vào Đầu ra

Hình 1.1: Đầu vào và đầu ra của bài toán Image Inpainting

1.2 Mục tiêu và phạm vi

1.21 Mục tiêu

Nhóm tập trung giải quyết bài toán image inpainting áp dụng kĩ thuật DDPM[5] Để hoàn thành công việc, nhóm đã dé ra mục tiêu cụ thể sau:

« Tìm hiểu tổng quan bài toán và một số hướng tiếp cận phổ biến hiện nay

* Tim hiểu hướng áp dung kỹ thuật DDPM [5] vào giải quyết bài toán image

inpainting.

Trang 19

1 TONG QUAN

* Tìm hiểu các cải tiến liên quan đối với kỹ thuật DDPM dé cải thiện chất

lượng ảnh đầu ra của bài toán image inpainting

« Cài đặt, hiện thực, đánh giá và so sánh kết quả của việc sử dung DDPM

[5], LAMA [1]va DSI [2] trong giải bài toán image inpainting trên các tập

dữ liệu khác nhau.

« Xây dung ứng dung web hỗ trợ khôi phục phần ảnh bị xóa.

1.2.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ập trung giải quyết bài toán image inpainting

* Thực hiện đánh giá phương pháp DDPM [5] và so sánh điểm vượt trội và

hạn chế so với hướng tiếp cận khác

1.3 Dong 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:

« Hệ thống lại cơ sở lý thuyết va tổng quan về các hướng tiếp cận của bài

toán Image Inpainting phổ biến hiện nay

¢ Đánh giá và so sánh kỹ thuật DDPM [5] và LAMA [1], DSI [2] trong giải

quyết bài toán image inpainting

« Xây dựng ứng dụng web cho phép người dùng xóa và khôi phục lại phần

ảnh được chọn.

Trang 20

1 TONG QUAN

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

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

Chương 2: Trình bày cơ sở lý thuyết và tổng quan về bài toán image

inpaint-ing.

Chương 3: Trinh bày tổng quan về kỹ thuật và hướng áp dụng vào bai toán

image inpainting.

Chương 4: Trinh bay kết quả so sánh với phương pháp LAMA [1] va DSI

[2] trên bộ dữ liệu CelebA-HQ [6], Places [7] và Paris-Street View.

Chương 5: Trình bày cách xây dựng ứng dụng và tổng quan về ứng dụng

minh họa.

Chương 6: Trình bày kết luận và hướng phát triển của đề tài.

Trang 21

Chương 2

CƠ SỞ LÝ THUYÊT VÀ CÁC

NGHIÊN CỨU LIÊN QUAN

Để hiểu rõ bài toán image inpainting, ta cần làm rõ các khái niệm liên quan,

đồng thời tìm hiểu một số phương pháp tiếp cận hiện nay Vì vậy, trong chươngnày, tôi sẽ giới thiệu một số khái niệm cơ bản đồng thời khảo sát các hướng tiếp

cận để giải quyết bài toán.

2.1 Bài toán image inpainting

Image inpainting là quá trình lấp day, tái tạo lại những vùng bi mất trong

một tắm ảnh Mục tiêu của quá trình này là tạo ra những hình ảnh được lấp

đầy hoàn toàn mà có thể đánh lừa thị giác con người Image inpainting được

ứng dụng nhiều trong những lĩnh vực khác, có thể kể đến như: khôi phục ảnh, chỉnh sửa ảnh, xóa những vật thể không mong muốn trong ảnh, khử nhiễu ảnh,

Thử tưởng tượng, một viện bảo tàng muốn khôi phục lại những bức trang đã bị

xuống cấp nhưng không đủ kinh phí để thuê được những nghệ sĩ có kĩ thuật tốt

hay khi bạn có bức ảnh của những người bạn yêu quý vì một lý do nào đó đã

bị hư hại Từ đó ta thấy được nhu cầu của bài toán image inpainting trong đời

Trang 22

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

sống hằng ngày là rất cần thiết Hiện nay, có hai hướng tiếp cận phổ biến cho bài

toán image inpainting: phương pháp không sử dụng mang sinh và phương pháp

sử dụng mạng sinh Chúng tôi sẽ thảo luận về hai hướng tiếp cận này ở mục tiếp

theo.

2.2 Các kiến thức cơ sở

2.2.1 Mạng nơ-ron tích chap (Convolutional Neural Network)

M6 hinh mang no-ron tich chap (Convolutional Neural Network hay CNN) 1a

một mô hình mang của Deep Learning cho kết quả tốt nhất trong việc giải quyết

các bài toán của thị giác máy tính Nhìn chung CNN là một mô hình mạng ANN

truyền thang với kiến trúc chính gồm nhiều thành phan được ghép nối với nhautheo cấu trúc các lớp cơ bản sau: Convolution, Pooling (Subsampling), ReLU.Bên cạnh đó còn có các lớp phụ như Batch Normalization, Drop out Phần tiếptheo sẽ trình bày chỉ tiết về các thành phần của CNN

'https://aivietnam.ai/wp-content/uploads/2019/07/chap9_zz_3.png

Trang 23

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

Lớp Convolution là lớp quan trọng nhất trong mô hình mạng CNN LớpConvolution dựa trên việc tính các giá trị tích chập để trích xuất ra các feature từ

dữ liệu Với một ảnh đầu vào kích thước mxm, ta sẽ chọn ra một ma trận kernel

nxn (thường nhỏ hơn ma trận input) Ta cho ma trận kernel trượt trên ma trận

input, mỗi lần trượt ta thực hiện việc tính tích chập ta thu được một kết quả Kếtquả này là giá trị của một pixel trong ma trận output Khi trượt hết ma trận kernel

trên ma trận input ta được ma trận output có kích thước nhỏ hơn hoặc bằng kích

thước của ma tran input.

Khi áp dụng phép tính Conv cho xử lý hình ảnh, Người ta nhận thấy rằngConv sẽ giúp biến đổi các thông tin đầu vào thành các yếu tố đặc trưng (nó

tương tự như bộ phát hiện nhằm phát hiện ra các đặc trưng như cạnh, hướng, )

Cu thể hon, Conv sẽ trích xuất đặc trưng của ảnh đầu vào qua các vùng ảnh nhỏ.

Các vùng này được gọi là Local Receptive Field (LRF) Tích chập sẽ tính toán

trên các LRF chồng lấp lên nhau Độ chồng lắp này phụ thuộc vào hệ số trượt S(stride) của từng kiến trúc mang cụ thể Nếu sử dụng với hệ số trượt S = a, thì

tương ứng LRF (bằng kích thước với kernel) sẽ dịch chuyển œ đơn vị pixel sau

mỗi lần tích chập.

Ảnh đầu vào sau khi thực hiện quá trình tích chập sẽ thu được feature map,

số LRF ở ảnh đầu vào sẽ tương ứng với số nơ-ron ở feature map và kernel sẽ là

trong số liên kết mỗi LRF với một no-ron ở feature map Lớp conv có thể chứa

một hoặc nhiều feature map Nếu lớp conv có K feature map, thì ta nói lớp convnày có độ sâu là k Để hình dung rõ hơn về quá trình này, sau đây sẽ minh họaquá trình trích xuất đặc trưng từ ảnh đầu vào cụ thể như sau: thực hiện xử lý tínhgiá trị đầu ra của một ảnh có kích thước W\ x H x Dy (W, và Hạ lần lượt là chiều

rộng và chiều cao của ảnh và D là chiều sâu hay thực chất là giá trị tại 3 kênh

màu tương ứng của ảnh RGB) khi đó, một Conv như một cửa sổ trượt (sliding

window, còn được gọi là kernel, filter hay feature detector) với kích thước F x F

- giả sử trong trường ta sử dung K filter Trong quá trình xử ly, mỗi filter sé được

Trang 24

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

tính toán với tất cả các LRF trong hình và S = œ Trong một số trường hợp để

cân bằng giữa số bước di chuyển và kích thước của ảnh, người ta đã chèn thêm P

pixel với một giá tri màu được gán (thông thường là 0) xung quanh viền của ảnh.sau cùng ta thu được ma trận dau ra (feature map) với kích thước W2 x Hạ x D2

với giá trị cụ thể như sau:

Hình 2.2: Mô phỏng quá trình tích chập trong CNN (nguồn: miro.medium.com!).

Giá trị tại mỗi 6 trong ma tran filter có kích thước là (F x F x D,) + I (cộng

một ở đây là tham số ngưỡng của filter) sẽ tương ứng là trọng số của filter Cácgiá trị này sẽ không đổi trong suốt quá trình dịch chuyển tính toán trên toàn bộ

hình ảnh Đây là một đặc tính quan trọng cua CNN, bởi nó làm giảm thêm trọng

số cần học cho quá trình huấn luyện mạng Qua đó, ta có thể ước tính tổng sốtham số cần học trong quá trình sử dung Conv là (F x F x DỊ) x K+K (6 đâycộng thêm k tham số ngưỡng của k filter)

!https://miro.medium.com/max/3900/1*p-_47puSuVNmRJnOXYPQCg.png

Trang 25

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

Áp dụng vào ví dụ cụ thể ở hình 2.3, đầu vào là một ảnh màu với kích thước

(32 x 32 x3) (W, = Hìị = 32 và Dị = 3 chỉ giá tri của các kênh màu RGB) Với

số lượng filter K = 6, trong đó mỗi filter có kích thước (5 x 5 x 3) E = 3 với

bước di chuyển S = 1 và P = 0 Tương ứng với mỗi filter, ta thu được 6 feature

map khác nhau ở đầu ra Trong đó:

°Wa=3 4 #+1=28

-WMq=*“®+1=28

° Dị=6

Mỗi nơ-ron trong một feature map sẽ có số tham số là (F x F x Dị) = 5 x

5 x3 + 1 nếu không sử dụng tính chat shared weights thì tổng số tham số trong

mang cần phải học cho tat cả các feature map là (28 x 28 x 6) x (5x5 x 3+1) =

357504 (tham số) Mặc dù con số đó đã nhỏ hơn nhiều so với việc không sử dụng

Conv nhưng con số trên van lơn hơn rất nhiều so với (F x F x D}) x K+ K =

(5x5 x 3) x 6+6 = 456 (tham số) khi sử dung shared weights

Trang 26

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

« Giảm số lượng tham số: trong mang ANN truyền, mỗi nơ-ron ở lớp trước

sẽ liên kết tới tất cả các neural ở lớp kế tiếp (fully connected) khiến cho sốlượng các tham số trong mạng rất lớn Đây là nguyên nhân chính gây việcthời gian huấn luyện mạng rất lâu Với việc sử dung Conv, cho phép chia

sẻ trọng số liên kết (shared weights), cũng như sử dụng LRF giúp cho sốlượng các tham số trong mạng giảm đi đáng kể

* Các tham số trong quá trình sử dung Conv hay các giá tri trong các filter

sẽ được học trong quá trình huấn luyện mạng Sau quá trình tính toán, ta

sẽ thu được các thông tin đặc trưng như góc, cạnh, đốm mau trong ảnh,

Chính vì thế, Conv còn có vai trò xây dựng mô hình tự học cho các đặc

trưng.

2.2.1.2 Lớp kích hoạt (Activation)

Hình 2.4: Mô phỏng phép tính ReLU (Nguồn: deep-learning-stm-6').

Là lớp tiếp theo sau lớp convolution, nhiệm vụ chính của lớp này là biến đổi

các giá trị âm của feature map từ lớp trước thành các giá trị không Việc này giúp

'https://www.slideshare.net/Tricode/deep-learning-stm-6

11

Trang 27

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

cho quá trình học các trọng số bị mắc kẹt tại giá trị không hoặc vô cực Khi gặp

phải van dé này, việc huấn luyện mạng sẽ bị chậm hơn thông thường Bên cạnh

đó, còn góp phần vào việc tránh tình trạng overfitting ở quá trình huấn luyện

Có các hàm số khác được sử dụng để đánh giá hiệu năng so với hàm ReLUnhư hàm Sigmoid, Tanh, Tuy nhiên, các ham số tính toán chậm hơn so với

ReLU và độ chính xác khi sử dụng các hàm số này không khác biệt lắm so với

hàm ReLU Chính vì vậy, hàm ReLU được sử dụng chính cho việc tính toán

tham sô thay vì chọn các hàm sô kia.

Hình 2.5: Max-pooling lấy giá trị lớn nhất trên vùng [2 x 2] trên kích thước [4 x 4] và

thu được đầu ra kích thước [2 x 2] (Nguồn: text-information-extraction-2!).

'https://blog.imaginea.com/text-information-extraction-2/

12

Trang 28

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

Ngoài ra, Max-pooling còn giúp tạo ra tính bất biến dịch chuyển (translation

invariance) cho đặc trưng, nghĩa là dù đối tượng trong hình ảnh đầu vào có sự

dịch chuyển nhỏ thì mạng vẫn có khả năng phân lớp chính xác được đối tượng

Đó là bởi vì max-pooling chọn ra nơ-ron có giá trị đầu ra tối đa tại mỗi vùng

nơ-ron của lớp trước và tổng hợp thành lớp sau Việc chọn nơ-ron có giá trị tín

hiệu lớn nhất được xem như chọn ra đặc trưng tốt nhất để xử lý Chính vì thế,

khả năng phân lớp chính xác đối tượng dựa trên đặc trưng này vẫn không thay

đổi và giúp cho CNN đạt được tính ổn định khi đối tượng di chuyển

Trong lớp Cony, có thể có nhiều feature map, tương ứng với mỗi feature map

sẽ có một lớp max-pooling Hình 2.6 là một ví dụ minh họa, với lớp đầu vào

kích thước [28 x 28] giả sử ta thu được ba feature map kích thước [24 x 24] và

ba lớp max-pooling kích thước {12 x 12], ta sử dụng kernel kích thước [5 x 5] và

max-pooling lấy giá trị lớn nhất tại mỗi vùng [2 x 2] nơ-ron

Tích chập + ReLU MaxPooling

Hình 2.6: Minh họa áp dụng Pooling từ lớp tích chập (Nguồn: Internet! ).

2.2.1.4 Lớp chuẩn hóa (Normalization)

Lớp chuẩn hóa (Normalization hay Norm) là lớp giúp chuẩn hóa dữ liệu đầu

ra cho các lớp trong CNN trước khi được truyền đi tiếp Trong những kiến trúc

!https://zhuanlan.zhihu.com/p/32213237

13

Trang 29

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

CNN lớn và phức tạp, lớp Norm sẽ chuẩn hóa các giá trị no-ron trước khi chúng

được truyền đến hàm ReLU Ham ReLU tuy giúp rút ngắn thời gian huấn luyện,

nhưng nếu không điều chỉnh trọng số phù hợp, hàm ReLU sẽ rất dé gặp phải van

dé "dying ReLU" khiến cho mạng trở nên chậm hơn khi huấn luyện Lớp Norm

lúc này sẽ chuẩn hóa và tạo ra các giá trị tích chập phù hợp để tránh cho ReLU

rơi vào giá tri 0.

2.2.2 U-Net: Convolutional Networks for Biomedical Image

Seg-mentation

U-Net được phat triển bởi Olaf Ronneberger et al dé dùng cho image

seg-mentation trong y hoc Mang được phat triển dựa trên mang Fully Convolutional

Network Thoạt nhìn, kiến trúc U-net có hình dang giống với chữ U U-net có

Hình 2.7: Tổng quan về mang U-Net (Nguồn: U-Net: Convolutional Networks for

Biomedical Image Segmentation[8]).

kiến trúc đối xứng va bao gồm hai phan chính: encoder va decoder.Trong đó,

14

Trang 30

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

encoder có chức năng trích xuất đặc trưng ảnh Bởi ở đây sử dụng các lớp volutions và các lớp pooling để giảm số chiều của ảnh Decoder có nhiệm vụkhôi phục lại kích thước ảnh Tổng quan, encoder có cấu trúc như một mạng

con-CNN thông thường nhưng không có lớp fully connected, chúng ta có thể sử

dụng những mang đã có sẵn như: VGG16, VGG19, Decoder tùy vào kiến trúcmạng mà có các cài đặt khác nhau Tuy nhiên một thành phần đáng chú ý trongdecoder phải kể đến là lớp transposed convolution Transposed convolution haythường bị nhầm lẫn với deconvolution Deconvolution có chức năng đảo ngược

lại quá trình convolution, tức là néu ta thực hiện convolution sinh ra một output

thì khi ta deconvolution output này ta sẽ thu được input ban đầu Transposedconvolution và deconvolution chỉ tương tự nhau về mặt không gian chiều, trans-posed convolution không đảo ngược lại giá trị của convolution ban đầu Để hiểu

rõ hơn về transposed convolution ta xét ví dụ sau: Qua ví dụ trên ta đã hiểu được

Hình 2.8: Minh họa về transposed convolution(Nguôn: Internet! ).

quá trình transposed convolution hoạt động khi biến đổi input có kích thước 2 x

2 va kernel kích thước 2 x 2 (stride = 1, padding = 0) thành output có kích thước

3 x 3 Đặc điểm quan trọng nhất của transposed convolution là giúp cho mô hình

có thể huấn luyện quá trình upsample, điều này giúp cải thiện kết quả mô hình.Trong decoder ngoài việc thực hiện upsample ta con thực hiện kết nối giữa các

'https://d21.ai/chapter.omputer — vision

15

Trang 31

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

lớp tương xứng Điều này giúp cho mô hình khôi phục được những thông tin đãmat qua các lớp pooling

2.2.3 ResNet (Residual Network)

ResNet được giới thiệu lần đầu vào năm 2015 va đã giành giải nhất trongILSVRC 2015 với ti lệ lỗi top 5 chi 3.57% ResNet được sinh ra để giải quyếtvan dé thường gặp phải khi huấn luyện mô hình CNN với nhiều lớp convolution:

Vanishing Gradient Hiện tượng này dẫn đến việc gradient chạy về 0 Vì vậy, khi ta tăng số lớp, độ lỗi khi train và test cũng sẽ tăng ResNet đã giới thiệu

một ý tưởng mới để giải quyết hiện tượng trên: Residual Blocks Ở đây, chúng

ta sử dụng skip connections để kết nối đồng nhất xuyên qua một hay nhiều lớp.Một khối như vậy được gọi là residual block ResNet được tạo bởi nhiều residualblock xếp chồng lên nhau

Gia sử ta có một mạng nơ-ron có input là x, output là phân phối xác suất

H(x), gọi R(x) là phần khác nhau giữa input và outpput.

16

Trang 32

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

khí đó ResNet cho mô hình hoc R(x), đó là lý do vì sao gọi đây là residual block

(phan dư) Từ quan sát ta thấy việc học sự khác nhau giữa input và output (phandư) cho kết quả tốt hơn việc chỉ học từ input Ngoài ra, skip connections giúpcho việc truyền ngược đạo hàm các giá trị đạo hàm lớn hơn đến những lớp đầutiên, do đó những lớp này có thể học nhanh như những lớp cuối, vì thế giúp cho

mô hình có thể học sâu hơn mà không gặp phải hiện tượng vanishing gradient.

Như vậy, nhờ việc sử dụng nhiều residual block xếp chồng lên nhau khiến cho

mô hình có thể học sâu hơn đồng nghĩa với việc học được nhiều đặc trưng hơn

ma không gặp hiện tượng vanishing gradient.

2.2.4 Autoencoder

Autoencoder là một mạng nơ-ron nhân tạo học không giám sát nói cách khác,

giả sử ta có thể tạo một tắm ảnh liên quan chặt chẽ với tam anh input Mục đíchcủa Autoencoder là học cách biểu diễn chiều nhỏ hơn cho những dữ liệu có chiềulớn hơn Do đó, Autoencoder thường được dùng cho các bài toán giảm chiều dữliệu hay trích xuất đặc trưng

17

Trang 33

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

2.2.4.1 Kiến trúc Autoencoder

Input layer Hidden layer Output layer

“bottleneck”

Hình 2.10: Kiến trúc Autoencoder( Nguén: Introduction to autoencoders! ).

Autoencoder bao gồm 3 phan chính:

* Encoder (bộ mã hóa): Có chức năng nén dữ liệu đầu vào thành một biểu

diễn được mã hóa (coding) Thông thường nó sẽ nhỏ hơn một vài bậc so

với dữ liệu đầu vào.

* Bottleneck: Chứa các biểu diễn tri thức được nén (output của Encoder),

đây là phần quan trọng nhất của mạng bới nó mang đặc trưng của đầu vào,

có thé dùng để tái tạo ảnh, lay đặc trưng của ảnh,

* Decoder: Giúp mạng giải nén các biểu diễn tri thức và tái cấu trúc lại dữ

liệu từ dạng mã hóa của nó Sau đó đầu ra của Decoder được dùng để so

'https://www.jeremyjordan.me/autoencoders/

18

Trang 34

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

sánh với đầu vào ban đầu (Input của Encoder) cho quá trình học

2.2.4.2 Cách hoạt động của Autoencoder

¢ Encoder

Encoder có vai trò nén dữ liệu thành những biểu diễn có chiều nhỏ hơn

Trong mạng nơ-ron, chúng ta có thể cai đặt những lớp convolution, pooling

để giảm số chiều của dữ liệu Bằng cách này ta có thể giữ lại những đặc

trưng cần thiết của dữ liệu

* Bottleneck

Đây là phan quan trọng nhất của Autoencoder, cũng là phần mang kíchthước nhỏ nhất Bởi Bottleneck được thiết kế từ việc mã hóa tối đa thông

tin của ảnh đầu vào, vậy nên có thể nói rằng bottleneck mang đặc trưng,

chi thức của ảnh đầu vào Với cấu trúc mã hóa — giải mã, mô hình tríchxuất được đặc trưng của ảnh dưới dạng dữ liệu và thiết lập được mối tương

quan giữa input và output của mạng Với việc Bottleneck có kích thước

nhỏ hơn ảnh đầu vào cũng như mang nhiều thông tin đặc trưng giúp ngăn

cản mạng ghi nhớ quá nhiều Bottleneck càng nhỏ, rủi ro overfitting càng

thấp, tuy nhiên nếu kích thước Bottleneck quá nhỏ sẽ hạn chế khả nănglưu trữ thông tin của ảnh đầu vào, gây khó khăn cho việc giải mã ở khối

Decoder.

¢ Decoder

Sau khi dữ liệu được nén lại bang encoder va được đưa vào bottleneck,

decoder sẽ sử dụng ouput của bottleneck để cấu trúc lại dữ liệu

2.2.4.3 Một số siêu tham số quan trọnng trong Autoencoder

Có 4 siêu tham số chúng ta cần quan tâm trước khi training một mô hình

Autoencoder:

19

Trang 35

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

* Kích thước bottleneck: Kích thước của bottleneck là một siêu tham số rat

quan trọng được sử dụng mà chúng ta cần lưu ý Kích thước Bottleneckquyết định lượng thông tin được nén

¢ Sô lớp: Giông với hau hêt các mạng nơ-ron, một siêu tham sô quan trọng

để điều chỉnh độ sâu của encoder và decoder trong Autoencoder, càng sâu

thì mô hình càng phức tạp, nhưng càng nông thì mô hình chạy càng nhanh.

* Số node của mỗi lớp: Số lượng node trên một lớp quyết định số trọng số

(weight) sẽ sử dụng trên từng lớp Thông thường, số lượng node này giảmdần theo mỗi lớp tiếp theo bởi đầu vào của lớp này là đầu ra của lớp trước

đó, và đầu vào này thì dần trở nên nhỏ hơn trên các lớp

* Reconstruction Loss: Loss function là một thứ không thể thiếu trong mạng

no-ron Ham loss này sẽ phụ thuộc vào kiểu input va output của mô hình

chúng ta muốn đáp ứng Ví dụ với việc xử lý ảnh, các hàm loss thông

thường được ưa chuộng là Mean Square Error (MSE) và LI Loss.

2.2.5 Variational Autoencoders

Autoencoder mặc dù đã có thé tao ra những tam anh mới tuy nhiên kết qua

mà autoencoder cho ra không thật sự tốt và cũng không có đặc điểm mới toencoder chỉ đơn thuần tái hiện lại nội dung cũ với những giá trị pixel mới Bởi

Au-vì autoencoder là một tập hợp các đặc trưng hay ràng buộc phải tìm hiểu cách biểu diễn trong không gian giảm chiều mà không làm mất đi nội dung của nó.

Trước tiền chúng ta sẽ đến với một vài thuật ngữ để có thể hiểu hơn về những

đặc tính của autoencoder.

20

Trang 36

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

2.2.5.1 Một số thuật ngữ

* Latent space (không gian ẩn): chính là phan bottleneck trong autoencoder,

nơi chứa thông tin đặc trưng đã được mã hóa

« Tính liên tục: hai điểm gần nhau trong không gian ẩn không được cung

cấp hai nội dung hoàn toàn khác nhau sau khi được giải mã

« Tính day đủ: đối với một phân phối đã chọn , một điểm được lấy mẫu từ

không gian tiềm ẩn sẽ sinh ra nội dung "có ý nghĩa" sau khi được giải ma

2.2.5.2 Han chế của autoencoder

Khi autoencoder được huấn luyện, chúng ta có cả encoder và decoder nhưng

vẫn không có cách nào để tạo ra ảnh mới Một cách nhanh nhất chúng ta có thể

nghĩ ngay đó là néu latent space có tổ chức (được cau trúc bởi encoder trong quá

trình huấn luyện) chúng ta có thể lấy một điểm bắt kì trong latent space để có

thể sinh ra "nội dung mới".

Tuy nhiên tổ chức latent space là một việc khó khăn bởi nó phụ thuộc vào không

gian phân phối dữ liệu huấn luyện, số chiều của latent space và kiến trúc của

encoder Vì vậy rất khó để đảm bảo rằng có thể cấu trúc latent space đủ tốt như

đã mô tả Trong thực tế, autoencoder không huấn luyện gì liên quan đến việc

tổ chức latent space Autoencoder chỉ đơn giản huấn luyện encoder va decodersao cho ít lỗi nhất có thể và không quan tâm đến tổ chức latent space như nào

Do đó nếu ta không quan tâm đến kiến trúc, khi huấn luyện mạng nơ-ron sé lấy

bất cứ khả năng phù hợp nhất có thể để cho ra kết quả tốt nhất có thể Khi đólatent space trở lên rất bất thường Việc này dẫn đến việc mất tính liên tục (cácđiểm gần trong không gian tiềm ẩn có thể cung cấp dữ liệu được giải mã rất khácnhau) và tính đầy đủ (một số điểm của latent space có thể cung cấp nội dung vô

nghĩa sau khi được giải ma).

21

Trang 37

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

2.2.5.3 Ý tưởng

Cũng như autoencoder, VAE cũng bao gồm hai thành phần chính là encoder

và decoder Tuy nhiên thay vì mã hóa dữ liệu như một điểm, chúng ta sẽ mã hóa

chúng dưới dạng phân phối xác suất trong không gian ẩn Chúng ta có thể hiểu

quá trình huấn luyện như sau:

« Bước 1: Mã hóa dữ liệu đầu vào như một phân phối xác suất

* Bước 2: Chon một điểm ngẫu nhiên trong latent space thuộc phân phối để

sample.

* Bước 3: Decoder giải mã điểm được sample, tiếp đó tinh ham

reconstruc-tion error (hàm lỗi tái tạo).

« Bước 4: Thực hiện backpropagated (truyền ngược) cho mạng học

latent input

h input representation reconstruction

simple

autoencoders x z=e(x) d(z)

latent sampled latent input

sang, input distribution representation reconstruction variational

Trang 38

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

SPACE meaning les

once decoded >

- ie › A

ose poinks inthe °

Oatent space that

are not similar @ °

once decoded

= points tat are close

oO 4 ¬ inthe latent space are

Similar once decoded

irregular latent space x v? regular latent space

Hình 2.12: Su khác biệt giữa latent space được chính quy và không được chính quy

(Nguồn: Understanding Variational Autoencoders (VAEs)!)

Nếu VAE chi thay đổi việc mã hóa dữ liệu đầu vào như một phân phối xácsuất thì vẫn không thể đảm bảo được tính liên tục và đầy đủ Bởi nếu không đượcchính quy hóa tốt, mô hình vẫn chỉ ưu tiền việc tối ưu hàm tái tạo mà bỏ quaphân phối thu được, việc này khiến cho VAE cũng như bao mạng autoencoderkhác Quá trình mã hóa có thể cho ra những phân phối có phương sai quá nhỏ(phân phối bị "co" lại) hoặc có trung bình quá khác nhau (khiến cho cách phân

phối trong không gian cách xa nhau) Do đó không đảm bảo được tính liên tục

và tình đầy đủ Vì thế, để tránh hiện tượng trên chúng ta sẽ chính qua hóa cho cảphương sai và trung bình của phân phối được mã hóa Trong thực tế, việc chínhquy hóa chỉ đơn giản là đưa phân phối thu được càng gần với phân phối chuẩn

tắc (standard normal distribution) càng tốt Điều này yêu cầu ma trận phương

sai ngày càng gần với ma trận đơn vị (giảm tình trạng "co" lại của phân phối),

trung bình tiến về 0 (giảm tình trạng các phân phối nằm cách xa nhau)

'https://towardsdatascience.com/understanding-variational-autoencoders-vaes-f705 109 19f73

23

Trang 39

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

LH

A > củ

L]

what can happen without regularisation x v2 what we want to obtain with regularisation

Hình 2.13: Sự so sánh về phân phối dữ liệu được chính quy và không được chính quy

(Nguồn: Understanding Variational Autoencoders (VAEs)!).

Nhu vậy, với việc chính quy hóa latent space như trên các phân phối không

nằm cách xa nhau trong không gian mà được khuyến khích càng "xếp chồng"

lên nhau càng tốt Điều này làm thỏa mãn cả hai tính chất liên tục và đầy đủ

2.2.6 Generative Adversarial Networks

Generative Adversarial Networks hay còn được viết tắt GAN lần đầu được

giới thiệu vào 2014 bởi Ian Goodfellow, với tiêu dé “Generative AdversarialNetworks” GAN là một kiến trúc cho mạng sinh, thông thường sử dụng mạng

học sâu cho kiên trúc này.

2.2.6.1 Cách hoạt động

GAN gồm hai mạng nơ-ron: mạng sinh và mạng phân biệt Trước tiên chúng

ta hãy xem cách mà GAN tạo ra ảnh mới Giả sử chúng ta tạo ảnh từ một phân

phối ngãu nhiên cho trước z Với input là z, ta sử dụng mang sinh G để tao ra

ảnh mới x=G(z).

!https://towardsdatascience.com/understanding-variational-autoencoders-vaes-f705 109 19f73

24

Trang 40

2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

ơ@)

z= (0.3, 0.2, -0.6, ) ———> S| a blue round cup

£= (0.1, 0.1,0.2, ) => Byellow fell say

z~ N(O, 1)

or

zm UCI, 1)

Hình 2.14: Mô phỏng cách tạo ra ảnh mới của GAN (Nguồn: Understanding Generative

Adversarial Networks (GANs)!).

Về mặt lý thuyết, z như là một một không gian "ẩn" chứa các đặc trưng của

input, vi dụ như hình dáng, màu sắc, Trong mang GAN chúng ta không kiểm

soát những đặc trưng mà chúng ta cho GAN học nó Tuy nhiên nếu chỉ sinh ảnh

đơn thuần như vậy thì không thể cho ra kết quả tốt được, vì thế ta cần một cách

đánh giá lại kêt quả output để có thể cải thiện kết quả, đó là lý do vì sao chúng

ta có mạng phân biệt Mạng phân biệt là một mạng phân loại thông thường, có

chức năng đánh giá ảnh sinh ra sau đó báo lại cho mạng sinh học cách cải thiện

những điểm chưa tốt mạng phân biệt quan sát những tam ảnh thật (dữ liệu huấnluyện) và ảnh được sinh ra, sau đó đưa ra kết luận đâu là ảnh thật, đâu là ảnh giả.Output D(x) là là xác suất mà x là ảnh thật

Real image ———>O x

Hình 2.15: Biểu diễn sơ dé cách hoạt động của GAN (Nguồn: Understanding

Genera-tive Adversarial Networks (GANs)!).

'https://towardsdatascience.com/understanding-generative-adversarial-networks-gans-cd6e4651a29

25

Ngày đăng: 02/10/2024, 08:39

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN