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

Một phần của tài liệu Khóa luận tốt nghiệp: Ứng dụng Denoising Probabilistic Diffusion Model cho bài toán Image Inpainting (Trang 34 - 40)

NGHIÊN CỨU LIÊN QUAN

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

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

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

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 Bottleneck quyế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ảm dầ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. Au- 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

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

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 decoder sao 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ác nhau) 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

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

autoencoders x p(z|x) z~ plz|x) d(z)

Hình 2.11: Ý tưởng Autoencoder va VAE (Nguồn: Understanding Variational Autoen- coders (VAEs)!).

Vậy điều gi giúp cho VAE có thể thé sinh ra những đặc điểm "mới" va giải quyết những hạn chế của autoencoder? VAE đã được chính quy hóa (regularisation) latent space. Việc chính quy hóa latent space có thể biểu diễn qua hai đặc tính: tính liên tuc và tính đầy đủ (như dã đề cập ở trên).

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

22

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ác suấ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 được chí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ỏ qua phân phối thu được, việc này khiến cho VAE cũng như bao mạng autoencoder khá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ính quy 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

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 Adversarial Networks”. 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

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ấn luyệ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

Một phần của tài liệu Khóa luận tốt nghiệp: Ứng dụng Denoising Probabilistic Diffusion Model cho bài toán Image Inpainting (Trang 34 - 40)

Tải bản đầy đủ (PDF)

(94 trang)