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ìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng

77 3 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ìm kiếm Kiến trúc Mạng Neural Nhiều Mục Tiêu Bằng Thuật Toán Tiến Hóa Với Các Phương Pháp Dự Đoán Hiệu Năng
Tác giả Võ Khánh An
Người hướng dẫn TS. Lương Ngọc Hoàng
Trường học Trường Đại học Công nghệ Thông tin
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 77
Dung lượng 21,63 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong khóa luận này, chúngtôi khảo sát các phương pháp mô hình hóa cho bài toán Tìm kiếm kiến trúc mạngneural đa mục tiêu multi-objective NAS, trong đó mỗi bài toán liên quan đếnmột chỉ

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KHOA HỌC MAY TÍNH

VÕ KHANH AN

KHOA LUAN TOT NGHIEP

TÌM KIEM KIÊN TRÚC MẠNG NEURAL

NHIÊU MỤC TIÊU BẰNG THUẬT TOÁN TIEN HÓA

VỚI CÁC PHƯƠNG PHÁP DỰ ĐOÁN HIỆU NĂNG

CỬ NHÂN NGÀNH KHOA HỌC MÁY TÍNH

TP HO CHÍ MINH, NĂM 2022

Trang 2

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KHOA HỌC MAY TÍNH

VO KHANH AN - 19520007

KHOA LUAN TOT NGHIEP

TÌM KIEM KIÊN TRÚC MẠNG NEURAL NHIÊU MỤC TIEU BẰNG THUẬT TOÁN TIEN HOA

VỚI CÁC PHƯƠNG PHÁP DỰ ĐOÁN HIỆU NĂNG

CỬ NHÂN NGÀNH KHOA HỌC MÁY TÍNH

GIẢNG VIÊN HƯỚNG DẪN

TS LƯƠNG NGỌC HOÀNG

TP HO CHÍ MINH, NĂM 2022

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ố ngây của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

¬ e eee ececeeeeeee esses ee neeeeeeeeeeeee — Chủ tịch.

Qe eee cece eect ee eect eeeeeeeeaaeeeeeeeeeeeeeneee — Thu ký.

~— Ủy viên

— ~ Ủy viên

Trang 4

LOI CAM ON

Lời đầu tiên, tôi xin được gửi lời cam ơn sâu sắc đến TS.Lương Ngọc Hoang đãtận tình giúp đỡ, động viên, định hướng và cung cấp những kiến thức nền tảngtrong xuyên suốt quá trình thực hiện khóa luận này

Tiếp theo, tôi xin chân thành cảm ơn sự đồng hành, hỗ trợ từ phía thầy cô Khoa

Khoa học máy tính nói riêng và Trường Đại học Công nghệ Thông tin,

ĐHQG-HCM nói chung vì đã tận tình giảng dạy, cung cấp nhũng kiến thức, kỹ năng, bàihọc quý giá làm cơ sở để tôi thực hiện khóa luận tốt nghiệp này

Tôi cũng xin bày tỏ lòng biết ơn to lớn đối với gia đình, bạn bè và những ngườitôi yêu quý vì họ luôn là điểm tựa tinh than vững chắc đồng thời là nguồn động

lực to lớn thúc đẩy tôi trong suốt quãng đời sinh viên.

Trang 5

Muc luc

[TÓM TAT KHOA LUẬN xv

TONG QUAN 1

1.2 Mô tả bài toán| Ặ Ặ 1

13 Datvan dé “6Ø øø8ố4Ả Ð.Ề- — _ -ằ 2

1.4 Phạm vinghiên cứu| .-.- 3

1.5 Mục tiêu và doi tượng nghiên cứu| 3

1.6 Phương pháp thựchiện| - 4

1.7 Cấu trúc khóa luận| - 4

2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THUC NEN TANG 6 2.1 Các công trình lên quan| - 6

2.2_ Bài toán Tối ưu hóa đa mục tiêu| 10

E3 Bài toán Tìm kiếm kiến trúc mạng, neural] See 10 2.4 Bài toán Tìm kiếm kiến trúc mang neural da mục tiêu| 12

2.5 Chỉ số Synaptic Flow không qua huấn luyện| 13

3 MÔ HÌNH HÓA BÀI TOÁN TÌM KIÊM KIÊN TRÚC MẠNG NEURAL ĐA MỤC TIÊU 16 Ba Tìm kiếm kiến trúc mang neural da mục tiêu| - 16

.11 Cấp độ cao (upperlevel| - 16

3.1.2 Cấp độ thấp (lower level)| - 17

B2 Tim kiếm kiến trúc mang neural da mục tiêu không qua huan luyện| 17 3.3 Tìm kiếm kiến trúc mang neural nhiều mục tiêu|

Trang 6

4_ PHƯƠNG PHAP| 21

“ ú 21

411 NATIS-Benchl 21

4.12 _Mãhóal ẶẶỒẶ 2 "Ta eee 23 4.2.1 Khởi tạo (Initiallizaton)| 24

4.2.2 Lai ghép (Crossover)]} - 24

[4.2.3 Độtbiến (Mutation)] 25

¬ 26 4.3 Đánh giá độ thích nghỉ| 28

4.31 Eliistarchivel - 29

5_ THỰC NGHIÊM| 31 [5.1 Thiết lập thựcnghiệm| 31

B.11 Chuẩnhóa| - 31

5.12 ThiếlậpNSGA-HR 31

no | / 32

2 Ki 4 26 \ /j — — ằ 34 [5.3.1 Kết quả hội tụ IGD và độ chính xác|_ 34

5.3.2 Khả năng chuyển giao của các kiến trúc| 42

6 KẾT LUẬN 52

Trang 7

Danh sach hinh ve

[L1 Bài toán tìm kiếm kiến trúc mang neural (NAS) là bài toán con của

AutoML và có sự trùng lặp đáng kể với bài toán tối ưu hóa siêutham số (HPO)| - c , 2

[2.1 Phân loại các phương pháp dự đoán hiệu năng hiện nay [45] Những

vùng được đỏ chính là phạm vi nghiên cứu của khoá luận này, bao

tiến hóa do Phan và cộng sự [37] dé xuất Trong ví dụ này, số lượng,

các kiến trúc được chọn và được lay mẫu lần lượt là 17 và 74 fee 7

2.3 Tổng quan các giai đoạn của NSGA-Net j30|| 8E4 Tổng quan phương pháp NSGANetV2J31|| 9

E5 Minh họa các thành phân của bài toán tìm kiếm kiến trúc mạng,

nghĩa trước Kiến trúc x sẽ được truyền vào chiến lược ước lượnghiệu năng (metric evaluator) và trả về hiệu năng ước lượng của xđến chiến lược tìm kiếm| - 11

Bench-201 Trục hoành: Độ chính xác kiểm thử ở epoch thứ 200;

Trục tung: FLOPs Những điểm tròn có màu càng sáng thì có giá

trị synf1ow càng cao Những, điểm tam giác màu đỏ chỉ những, kiến

trúc có giá trị synflow cao nhật] ¬ 14

Trang 8

roize (none), (1) skip connection (skip_connect), (2) 1x1

convolu-tion (nor_conv_1x1), (3) 3x3 convoluconvolu-tion (nor_conv_ 3x3) và (4) 3x3

average pooling (avg_pool_3x3)| - 2

E2 Các giai đoạn của thuật toán NSGA-II (Non-dominated sorting

nhật bao quanh nó Các điểm trắng (extreme point) sẽ có khoảng

đông duc của giải pháp i chính là chu vi của hình chữ

cách đông đúc là vô cực do chúng chỉ có một giải pháp liền kể| 27

5.1 Minh họa cách tính chỉ số Interted Generational Distance (IGD) DI 32

archives của MaOENAS, MOENAS, TF-MOENAS, TF-MaOENAS

trên 04 không gian hai mục tiêu: Độ chính xác kiểm thử (test

ac-curacy) tai epoch thứ 200 và (a) FLOPs, (b) độ tré (latency), (©) số

lượng tham số (#parameters), (d) #MACs Trục y chỉ IGD, trục x chỉ

số thé hệ trong thuật toán tiền hóa| - 33

3 Kết quả hội tụ IGD trên CIFAR-100 (NATS-Bench) khi so sánh

eli-tist archives của TF-MOENAS và TF-MaOENAS trên 04 không gian

hai mục tiêu: Độ chính xác kiểm thử (test accuracy) tai epoch thứ

200 và (a) FLOPs, (b) độ trễ (latency), (c) số lượng tham số

(#pa-rameters), (d) #MACs Trục y chỉ IGD, trục x chỉ số thé hệ trong

thuật toán tiénhoa} 2 ee ee 34

Trang 9

elitist archives của MaOENAS, MOENAS, TF-MOENAS, TF-MaOENAS

trên 04 không gian hai mục tiêu: Độ chính xác kiểm thử (test

accu-racy) tai epoch thứ 200 va (a) FLOPs, (b) độ trễ (latency), (c) sốlượng tham số (#parameters), (d) #MACs Trục y chi IGD, trục x

archives của MaOENAS, MOENAS, TF-MOENAS, TF-MaOENAS

tist archives của MaOENAS, MOENAS, TF-MOENAS, TF-MaOENAS

trên 04 không gian hai mục tiêu: Độ chính xác kiểm thử (test

accu-racy) tai epoch thứ 200 va (a) FLOPs, (b) độ trễ (latency), (c) sốlượng tham SỐ (#parameters), (d) #MACs Trục y chỉ IGD, trục x

chỉ thời gian chạy thuật toán theo đơn vị giờ (log scale)

racy) tại epoch thứ 200 va (a) FLOPs, (b) độ trễ (latency), (c) sốlượng tham SỐ (#parameters), (d) #MACs Trục y chỉ IGD, trục x

chi thời gian chạy thuật toán theo đơn vi giờ (log scale)| 38

5.8 Archive cuối cùng thu được trên CIFAR-10 (NATS-Bench) khi so

[_— — sánh elitist archives của MaOENAS,MOENAS,TF-MOENASTE |

MaOENAS trên 04 không gian hai mục tiêu: Truc x chỉ độ chính xác

kiểm thử (test accuracy) tai epoch thứ 200 và Trục y chỉ (a) FLOPs,

(b) độ trễ (latency), (c) SỐ lượng tham SỐ (#parameters), (d) #MACs|| 43

Trang 10

5.9 Archive cuối cùng thu được trên CIFAR-100 (NATS-Bench) khi so

sánh elitist archives của MaOENAS, MOENAS, MOENAS,

TF-MaOENAS trên 04 không gian hai mục tiêu: Truc x chỉ độ chính xác

kiểm thử (test accuracy) tại epoch thứ 200 và Trục y chi (a) FLOPs,

(b) độ trễ (latency), (c) số lượng tham số (#parameters), (d) #MACs| 44

5.10 Archive cuối cùng thu được trên ImageNet16-120 (NATS-Bench)

khi so sánh elitist archives của MaOENAS, MOENAS, TF-MOENAS,

TF-MaOENAS trên 04 khong gian hai mục tiêu: Truc x chỉ độ chính

xác kiểm thử (test accuracy) tại epoch thứ 200 và Trục y chỉ (a) FLOPs, (b) độ trễ (latency), (c) số ượng tham số (#parameters), (d)

p21 Tan suat xuat hiện các toán tử (o perator) trong các ién trúc nằm

trên biên xap xi (approximation front) cuối cùng của

[—_— TFMaOENAS]

phương pháp

47

.12 Tần suất xuất hiện các toán tử (o perator) trong các

trên biên xap xi (approximation front) cuối cùng của

E.12 Tần suất xuất hiện các toán tử (o perator) trong các ién trúc nằm

5.14 Tan suất xuat hiện các toán tử (o

trên biên xap xi (approximation front) cudi cùng của phương pháp

49

MOENAS (độ chính xác kiểm thử - FLOPSs)| 50

Trang 11

Danh sach bang

E1 Spearman ø của synflow so với các chỉ số không qua huấn luyện

khác Các kết quả được gạch d t quả tốt nhất trên khôn,

gian tìm kiếm tương ứng Các số liệu được lấy từ ia) ¬ 15

Ba Giá trị IGD cuối cùng và độ chính xác kiểm thử thu được trên

NATS-Bench Việc tìm kiếm được tiên hành độc lập trên

CIFAR-10 và sau đó được đánh giá trên cùng tập dữ liệu Kết quả gachdưới chỉ phương pháp tốt nhất, kết quả in đậm chỉ phương pháptốt nhất và đã được kiểm định thống kê t-test với ngưỡng tin cậy là

——rzn @ Z T»à | ⁄ - 39

2 Giá trị IGD cuối cùng và độ chính xác kiểm thử thu được trên

NATS-Bench Việc tìm được tiến hành độc lập trên

CIFAR-100 và sau đó được đánh giá trên cùng tập dữ liệu Kết quả gachdưới chỉ phương pháp tốt nhất, kết quả in đậm chỉ phương pháp

[ _ tốtnhất và đã được kiểm định thông kê t-test với ngưỡng tin cậy là _|

[—_— 0Øfl 40

B3 Giá trị IGD cuối cùng và độ chính xác kiểm thử thu được trên

NATS-Bench Việc tìm kiếm được tiền hành độc lập trên

ImageNet16-120 và sau đó được đánh giá trên cùng tập dữ liệu Kết quả gạch

dưới chỉ phương pháp tốt nhất, kết quả in đậm chỉ phương pháp.

tốt nhất và đã được kiểm định thống kê t-test với ngưỡng tin cậy là

Trang 12

trên NATS-Bench Việc tìm kiếm được tiến hành trên CIFAR-10 va

sau đó được đánh giá trên ca ba tập dữ liệu CIFAR-10, CIFAR-100

và ImageNet16-120 Kết quả gạch dưới chỉ phương pháp tốt nhất,

kết quả in đậm chỉ phương pháp tốt nhất và đã được kiểm định

thống kê t-test với ngưỡng tin cậy là 0.01 Se ee 42

5.5 Sosanh với các phương pháp NAS state-of-the-art trên

NAS-Bench-201 về độ chính xác kiểm thử, các kết qua được lay từ [12||35] Việc

tìm kiếm được tiên hành trên CIFAR-10 và sau đó được đánh giá

trên cả ba tập dữ liệu CIFAR-10, CIFAR-100 và ImageNet16-120.

Kết quả gạch dưới chỉ phương pháp tốt nhất| 51

Trang 13

Danh sách thuật toán

Tìm kiếm kiến trúc đa mục tiêu bằng thuật toán tiến hóa (MONAS)| 23

E So sánh hai giải pháp trong bài toán tối ưu hóa đa mục tiêu| 28

3_ Cập nhật ElitistArchivel 30

Trang 14

IGD

CNNs MOENAS

TF-MOENAS

MaOENAS TF-MaOENAS

Neural Architecture Search Floating-Point Operations Per second

Multiply- ACcumulate per seconds Paramters

Non-dominated Sorting Genetic Algorithm II

Reinforcement Learning

synaptic flow Interted Generational Distance

Convolutional Neural Networks

Multi-Objective Evolutionary NAS Training-Free Multi-Objective Evolutionary NAS

Many-Objective Evolutionary NAS

Training-Free Many-Objective Evolutionary NAS

xiv

Trang 15

TOM TAT KHOA LUAN

Bài toán Tìm kiếm kiến trúc mang neural (neural architecture search, hayNAS) thường có chi phí tính toán rat lớn vì cần phải đánh giá nhiều kiến trúc

ứng viên trong quá trình tìm kiếm Việc đánh giá chính xác hiệu năng cho mỗi

kiến trúc ứng viên đòi hỏi hàng trăm - hàng ngàn epoch huấn luyện để có được

bộ trọng số thích hợp rồi đánh giá độ chính xác thực sự của kiến trúc đó Thời

gian gần đây, một chỉ số dự đoán hiệu năng không qua huấn luyện (training-free

performance metric) là Synaptic Flow đã được dé xuất, có thể ước lượng hiệunăng các kiến trúc mạng neural một cách hiệu quả Synaptic Flow được tính bằngcách sử dụng bộ trọng số khởi tạo ngẫu nhiên và giá trị của nó cho thấy có mức

độ tương quan nhất định với độ chính xác trên tập test của mạng neural sau khihuấn luyện Bên cạnh đó, khi thiết kế kiến trúc mạng neural trong thực tế, hiệunăng không phải là mục tiêu duy nhất mà các chỉ sé vẻ độ phức tạp của mạng (sốlượng tham số, độ trễ, ) cũng cần phải được xem xét Trong khóa luận này, chúngtôi khảo sát các phương pháp mô hình hóa cho bài toán Tìm kiếm kiến trúc mạngneural đa mục tiêu (multi-objective NAS), trong đó mỗi bài toán liên quan đếnmột chỉ số hiệu năng và một chỉ số độ phức tạp Ngoài ra, chúng tôi cũng khảo

sát bài toán giải quyết bài toán Tìm kiếm kiến trúc mạng neural nhiều mục tiêu

(many-objective NAS), bao gồm một chỉ số hiệu năng và bốn chỉ số độ phức tạp.Chúng tôi xem xét 02 chỉ số hiệu năng cho mỗi mô hình bài toán: độ chính xác củakiến trúc (đòi hỏi quá trình huấn luyện mạng) và Synaptic Flow (không qua huấnluyện) Chúng tôi sử dụng thuật toán NSGA-II để giải các bài toán Tìm kiếm kiếntrúc mạng neural đã mô hình hóa, sau đó so sánh chất lượng của các kiến trúcthu được và hiệu quả của việc giải quyết từng mô hình Kết quả thực nghiệm trên

bộ benchmark NATS-Bench cho thấy những ưu điểm của phương pháp tiếp cậnbài toán Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng Thuật toán tiến

hóa không qua huấn luyện (TF-MaOENAS) thu được các kiến trúc có hiệu năng

cạnh tranh và chi phí tính toán hợp lý Mã nguén của khóa luận có thể truy cậptai: https: //github com/EL0-Lab/TF-MaDENAS

Trang 16

Chương 1

TỔNG QUAN

11 Giới thiệu bài toán

Sự thành công của học sâu trong nhiều năm trở lại đây chủ yếu dựa vào quátrình trích xuất đặc trưng tự động thay vì sử dụng các đặc trưng được thiết kế thủcông Tuy nhiên, những thành công này đã đi kèm với nhu cầu ngày càng tăng đốivới việc tạo ra các kiến trúc mới và chúng ngày càng phức tạp hơn khi được thiết

kế thủ công Bài toán tìm kiếm kiến trúc mạng neural (neural architecture search,hay NAS) là một quy trình tự động việc thiết kế kiến trúc mang neural và cũng

được xem như là một bước trong quy trình tự động học máy (AutoML) Mục tiêu

chính của bài toán tìm kiếm kiến trúc mạng neural là tự động hóa quy trình thiết

kế kiến trúc mang neural để tìm ra những kiến trúc có hiệu năng cao|46] Hiện

tại, các kiến trúc được tạo ra bằng NAS đã có hiệu năng vượt trội so với các kiến

trúc được thiết kế thủ công trên một số tác vụ như phân loại hình ảnh [40],

phát hiện đối tượng hay phân đoạn ngữ nghĩa (semantic segmentation) BỊ.

NAS có thể xem như là một lĩnh vực con của AutoML và có sự trùng lặp

đáng kể với bài toán tối ưu hóa siêu tham số (hyperparemeter optimization)

và meta-learning (20) (xem Hình[1L1).

1.2 Mô tả bài toán

* Đầu vào: 01 bộ dữ liệu, 01 không gian tìm kiếm

© Đầu ra: 01 tập hợp chứa các kiến trúc được tìm thấy

Trang 17

Chương 1 TONG QUAN 2

HINH 111: Bai toán tìm kiếm kiến trúc mang neural (NAS) là bài toán con của AutoML và có sự trùng lặp đáng kể với bài toán tối ưu hóa

siêu tham s6 (HPO).

13 Đặt van dé

Nhiều phương pháp state-of-the-art NAS đã được dé xuất trong những nămtrở lại đây nhưng lại yêu cầu một lượng tài nguyên tính toán rất lớn Ví dụ, Zoph

và các cộng sự đã sử dụng thuật toán học tăng cường (RL) để giải quyết bài

toán NAS với 800 GPUs trong 28 ngày, hay Real và các cộng sự (40] đã dé xuất

phương pháp tiến hóa AmobaNet-A với thời gian tìm kiếm 7 ngày chạy trên 450K40 GPUs Để giảm lượng chi phí tính toán rat lớn này, nhiều kỹ thuật đã được

dé xuất trong những năm trở lại đây để dự đoán hiệu năng cuối cùng của kiếntrúc mạng neural, trong đó nổi bật là các chỉ số dự đoán hiệu năng không qua đàotạo có thể được xem như là mục tiêu tối ưu về mặt hiệu năng thay vì sử dụng

độ chính xác của mang (44||35|J24] Những chỉ số này có thể được tính bằng cách

sử dụng trọng số của mạng tại thời điểm khởi tạo và không cần phải qua bat kỳ

epoch huấn luyện nào, chúng chủ yếu chỉ phụ thuộc kiến trúc của mạng Nhiềuchỉ số không qua huấn luyện đã được tìm thấy có mức độ tương quan nhất định

với độ chính xác của mạng (ij Do đó, việc tối ưu hóa những chỉ số này có khả

Trang 18

Chương 1 TONG QUAN 3

năng tìm ra những kiến trúc với hiệu năng cao và giảm được đáng kể chỉ phí tính

toán.

Mặt khác, những nghiên cứu hiện nay hau hết chỉ tối ưu kiến trúc mang neuralcho một mục tiêu, ví dụ như độ chính xác mạng Trong khi đó, việc triển khaimạng neural trong thực tế thường đòi hỏi nhiều khía cạnh cần phải quan tâmđến như độ phức tạp (FLOPs, số lượng tham số) hay hiệu năng phan cứng (độtrễ) Việc tìm ra các kiến trúc với độ chính xác cao thường chỉ có thể triển khaitrên các máy trạm (workstation) nhưng lại quá phức tạp và lớn để triển khai trêncác thiết bị nhúng hạn chế về mặt tài nguyên Những nghiên cứu gần đây cũng đã

đề xuất nhiều mô hình cho bài toán tìm kiếm kiến trúc mạng neural đa mục tiêu(multi-objective NAS, hay MONAS) nhằm tính đến nhiều khía cạnh khác nhautrong quá trình tối ưu hóa

14 Phạm vi nghiên cứu

Trong khóa luận này, chúng tôi tập trung vào việc tìm kiếm các kiến trúc mạngneural tích chap (Convolutional neural networks - CNNs) nhiéu muc tiéu Khoaluận cũng trình bay các phương pháp cải thiện hiệu quả của quá trình tìm kiếmkiến trúc mang neural bang các phương pháp dự đoán hiệu năng Chúng tôi kiểm

tra hiệu quả của các phương pháp được đề xuất thông qua bộ benchmark Bench NATS-Bench có hơn 15,000 kiến trúc mạng neural tích chập, mỗi kiến trúc

NATS-bao gồm các thông tin về hiệu năng, độ phức tạp, thời gian huấn luyện, trên

nhiều bộ dữ liệu chuẩn như CIFAR-10, CIFAR-100, ImageNet.

1.5 Mục tiêu và doi tượng nghiên cứu

Các mục tiêu tiêu của khóa luận gồm:

© Tim hiểu và cài đặt thuật toán tiến hóa cho bài toán NAS đa mục tiêu

s Sử dụng các phương pháp dự đoán hiệu năng nhằm cải thiện hiệu quả tìm

kiếm của bài toán NAS.

¢ Giảm chi phí tính toán cho bài toán NAS nhưng van đảm bảo đạt được hiệu

năng tốt

Trang 19

Chương 1 TONG QUAN 4

¢ Thu được một biên xấp xỉ bao gồm các kiến trúc đánh đổi về mặt hiệu năng

và độ phức tạp, giúp người dùng có thể chọn ra kiến trúc phù hợp với nhucầu và thiết bị của mình

Đối tượng nghiên cứu: Bài toán Tìm kiếm mạng neural nhiều mục tiêu

(Many-Objective Neural Architecture Search)

1.6 Phương pháp thực hiện

Các phương pháp thực hiện nghiên cứu của chúng tôi bao gồm:

s Sử dụng các phương pháp dự đoán hiệu năng của mạng neural tích chập

mà không tốn kém quá nhiều chỉ phí về mặt tính toán như độ chính kiểm

định (validation accuracy) tại epoch 12 và chỉ số dư đoán hiệu năng không

qua huấn luyện Synaptic Flow (synf1ow)

¢ Thử nghiệm bài toán tìm kiếm kiến trúc mang neural với hai mục tiêu và

nhiều hơn hai mục tiêu (cụ thể là năm mục tiêu), sau đó đổ về các khônggian từ 1-2 mục tiêu để so sánh với hiệu năng của thuật toán khi chỉ tối tru

hóa từ 1-2 mục tiêu.

* Áp dụng các phương pháp trên bộ benchmark NATS-bench để kiểm tra

hiệu quả và so sánh.

¢ Sử dụng chỉ số đánh giá hiệu năng IGD để kiểm tra hiệu quả của các phương

pháp dưới góc độ bài toán tối ưu hóa đa mục tiêu

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

Khóa luận của chúng tôi bao gồm 6 phần chính như sau:

* Chuong[I} Tổng quan.

° Chương [2} Các công trình liên quan và kiến thức nền tảng.

* Chương |3} Mô hình hóa bài toán tìm kiếm kiến trúc mang neural đa mục

tiêu.

Trang 20

Chương 1 TONG QUAN

* Chương} Phương pháp

° Chuong 5} Thuc nghiém.

« Chương|6} Kết luận.

Trang 21

Chương 2

CÁC CÔNG TRÌNH LIÊN QUAN VÀ KIÊN THUC NÊN TANG

2.1 Các công trình liên quan

Model-based / trainable Learning curve-based

XGBoost NAO SemiNAS arly Stop (Acc.

GP's arly Stop (Loss)

Bayes GP

Sparse GP Var Sparse GP

SoTL SoTL-E

OneShot Random Search WS

HINH 2.1: Phân loại các phương pháp dự đoán hiệu nang hiện nay Những vùng được đỏ chính là phạm vi nghiên cứu của khoá luận này, bao gồm: zero-cost proxies (synflow) va early stop-

ping (độ chính xác kiểm định tai epoch thứ 12).

Trang 22

Chương 2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THÚC NỀN TANG 7

© Sampled architectures

Negative @ Selected architectures

Synaptic Flow

HINH 2.2: Minh hoa bước chon lọc trong quá trình khởi tao cho thuật

toán tiến hóa do Phan và cộng sự dé xuất Trong ví dụ này, số lượng các kiến trúc được chọn va được lay mẫu lần lượt là 17 và 7.

Nhiều phương pháp dự đoán hiệu năng kiến trúc mạng neural đã được đềxuất để sử dụng trong bài toán NAS trong những năm trở lại đây như ngoại suy

đường cong huấn luyện (learning curve extrapolation) {11|2|23], chia sẻ trọng số

(weight-sharing) Bị 86], học có giám sát (supervised learning) | 9] hay

các chỉ số không huấn luyện (zero-cost proxies) (ij Trong đó, các chỉ số không

qua huấn luyện đã thể hiện được nhiều ưu điểm như không có thời gian khởi tạo

và thời gian truy vấn để rút ra hiệu năng của kiến trúc cũng rất ngắn (vài giây).Những chỉ số này được tính thông qua việc truyền một batch dữ liệu duy nhấtvào mạng hoặc thậm chí không cần dữ liệu nào Do bởi chỉ cần tính toán cho mộtkiến trúc cụ thể, thời gian khởi tao của các chỉ số không qua huấn luyện là không

Các chỉ số không qua huấn luyện gần đây cũng được sử trong quá trình khởi

tạo các thuật toán NAS Công trình của Phan và các cộng sự [37] bat dau với việc

lây mẫu ngẫu nhiên một lượng lớn kiến trúc Độ phức tap của các kiến trúc đượcđánh giá thông qua FLOPs và số lượng tham số, trong khi hiệu năng được ước

Trang 23

Chương 2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THUC NEN TANG — 8

Encoding Evaluator Multi-Obj GA BOA

[1-01-001] Ệ = y Wor tL ww -L h

: 9 og0 © - [0-00-111-0111-00000-0) )

HÌNH 2.3: Tổng quan các giai đoạn của NSGA-Net 30)

lương bằng chỉ số Synaptic Flow (synflow) Tập các kiến trúc không bị thống tri

về hiệu năng và độ phức tạp sẽ được trích xuất để làm quan thể khởi tạo cho thuật

toán tiến hóa đa mục tiêu với hiệu năng được tính bằng độ chính xác thông qua

quá trình huấn luyện (Xem hình |2.2) Chỉ số không qua huấn luyện synf1ow do

đó chỉ được sử dụng trong giai đoạn khởi tạo (warm-up phase) và các kiến trúcứng viên vẫn cần phải huấn luyện thật để thu về độ chính xác trong giai đoạn tìmkiếm Việc này giúp nâng cao hiệu năng của thuật toán tiến hóa nhưng quá trìnhhuần luyện thật vẫn đòi hỏi nhiều chi phí tính toán

Chỉ số synf1ow cũng có thể được tận dụng để xây dựng thuật toán tìm kiếmđịa phương đa mục tiêu không qua huấn luyện nhằm cải thiện hiệu năng của

NSGA-II để giải quyết bài toán NAS đa mục tiêu như trong [38] Tại mỗi thé hệ,

một lượng các kiến trúc tiềm năng nhất định sẽ được cải thiện bởi quá trình tìmkiếm địa phương với synflow được sử dụng để kiểm tra việc cải thiện, do đókhông đòi hỏi bất kỳ quá trình huấn luyện nào Những kiến trúc ứng viên đượckhám phá trong quá trình tìm kiếm địa phương sau đó sẽ được huấn luyện thật

và đánh giá bởi độ chính xác kiểm định (validation accuracy) trước khi được thêm vào trong quan thể của NSGA-II.

Lu và các cộng sự

như trong Hinh|2.3} trong đó mô hình hóa bài toán NAS đa mục tiêu với hai mục

t

giải thuật di truyền sắp xếp không bị thống trị II (non-dominated sorting genetic

đã giới thiệu cách tiếp cận NSGA-Net với các giai đoạn

éu đối lập là độ lỗi phân loại (classfication error) và FLOPs Họ cũng sử dụng

algorithm II, hay NSGA-I) để giải quyết mô hình NAS đa mục tiêu này

Ngoài ra, Lu và các cộng sự [31] cũng đã dé xuất mô hình bài toán NAS nhiều

mục tiêu (many-objective NAS, hay MaOENAS) với năm mục tiêu (xem hinh[2.4)

là độ chính xác, số lượng tham số, số lượng toán tử nhân-cộng (Multipy-Add

operations), độ trễ của CPU va GPU Để cải thiện hiệu năng của NSGA-II nhằm

Trang 24

Chương 2 CÁC CÔNG TRINH LIEN QUAN VÀ KIÊN THUC NEN TANG 9

Evolutionary Multi.

Objective Assisted NAS

Surrogate-HINH 2.4: Tổng quan phương pháp NSGANetV2B1]

giải quyết bài toán NAS nhiều mục tiêu, họ đã xây dựng một mô hình thay thế(surrogate model) để dự đoán độ chính xác của các kiến trúc ứng viên và công cụ

dự đoán này sẽ được tinh chỉnh lại trong suốt quá trình tìm kiếm Dau tiên, mô

hình thay thế được khởi tạo bằng cách lấy mẫu lấy mẫu một lượng nhỏ các kiến

trúc từ không gian tìm kiếm Sau đó, họ sử dụng NSGA-II để tìm kiếm kiến trúctrúc bằng cách sử dụng công cụ dự đoán này để ước lượng độ chính xác như làmột mục tiêu cùng với các mục tiêu khác vẻ độ phức tạp, hiệu quả phan cứng.Tuy nhiên, phương pháp này vẫn phải đi huấn luyện các kiến trúc được thuật

toán NSGA-II tim ra và xem sau đó xem các kiến trúc này và độ chính xác sau khi

huấn luyện của chúng là các mẫu huấn luyện để tinh chỉnh công cụ dự đoán

Sự khác biệt chính giũa công trình của chúng tôi và những công trình được đềcập ở trên là chúng tôi sử dụng chỉ số synf1ow để đánh giá hiệu năng của toàn bộkiến trúc được khám phá trong suốt quá trình tìm kiếm và không huấn luyện bat

kỳ kiến trúc nào Do và các cộng sự cũng đã dé xuất một phương pháp NAS

đa mục tiêu bằng thuật toán tiền hóa với việc sử dụng các chỉ số không qua huấnluyện trong toàn bộ quá trình tìm kiếm Họ sử dụng hai chỉ số là số lượng vùngtuyến tinh (linear region) Ry va số điều kiện của neural tangent kernel (NTK) Ky

để đánh giá hiệu năng của các kiến trúc ứng viên Tuy vậy, cả hai chỉ số Ry va Kyđều phụ thuộc vào dữ liệu, chúng được tính bằng cách truyền những mini-batchdir liệu được lay mẫu từ tap dữ liệu huấn luyện vào mạng Trong khi đó, synflow

có thể được tính mà không đòi hỏi tập dữ liệu cụ thể nào (data-agnostic).

Các phương pháp dự đoán hiệu năng được phân loại trong Hình T| Trong

khóa luận này, chúng tôi thực nghiệm và so sánh hai phương pháp dự đoán hiệu

Trang 25

Chương 2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THUC NEN TANG 10

năng là độ chính xác kiểm định (validation accuracy) tại epoch thứ 12 (đòi hỏi

quá trình huấn luyện) và chỉ số dự đoán hiệu năng synf1ow (không qua quá trìnhhuấn luyện)

2.2 Bài toán Tối ưu hóa đa mục tiêu

Một cách tổng quát, bài toán tối ưu hóa đa mục tiêu bao gồm từ hai mụctiêu đối lập trở lên được tối ưu hóa đồng thời có thể được mô hình hóa như sau:

hóa đa mục tiêu sẽ tổn tại tập tối wu Pareto (Pareto-optimal set) và biên tối uu Pareto

(Pareto-optimal front) lần lượt trong không gian quyết định và không gian mụctiêu, bao gồm các lời giải đánh đổi giữa các mục tiêu khác nhau Trong thực tế,

mục tiêu của bài toán tối ưu hóa đa mục tiêu là đi xấp xỉ tập tối ưu Pareto/biên

tối ưu Pareto với một số lượng hạn chế các lời giải ứng viên đánh đổi giữa các

mục tiêu khác nhau.

2.3 Bài toán Tìm kiếm kiến trúc mạng neural

Các kiến trúc mạng neural phổ biến và thành công

nhiều năm trở lại đây hầu hết đều được thiết kế bởi các chuyên trong lĩnh vực

học sâu Tuy vậy, điều này không đồng nghĩa với việc chúng ta đã khám phá toàn

bộ không gian tìm kiếm Tìm kiếm kiến trúc mạng neural (neural architecturesearch, hay NAS) là quá trình tự động hóa kỹ thuật thiết kế kiến trúc, giúp chúng

ta có cơ thể tìm ra những kiến trúc có hiệu năng cao một cách tự động và có hệthống Elsken và các cộng sự đã mô tả bài toán tìm kiếm kiến trúc mạngneural là một hệ thống có ba thành phần được minh hoa trong Hình|2.5|bao gồm:

Trang 26

Chương 2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THÚC NEN TANG 11

Architecture x

0

eeeeeoos eoeooeeeo gbbcee: e00boceeo

Search Search Metric

Space Algorithm Evaluator

metric_values(x)

HINH 2.5: Minh họa các thành phan của bài toán tìm kiếm kiến trúc

mạng neural Chiến lược tìm kiếm (search algorithm) sẽ chọn một kiến trúc không gian tìm kiếm (search space) O được định

nghĩa trước Kiến trúc x sẽ được truyền vào chiến lược ước lượng.

hiệu nang (metric evaluator) và trả về hiệu năng ước lượng của x

đến chiến lược tìm kiếm.

1 Không gian tìm kiếm (search space): Không gian tìm kiếm kiến trúc mạng,

neural là một tập các operation (convolution, fully-connected, pooling) và

cách các operation kết nối với nhau để tạo thành một kiến trúc hợp lệ Việcthiết kế không gian tìm kiếm sẽ được thực hiện bởi con người và do đó

không thể tránh khỏi những thiên kiến (bias).

2 Chiến lược tìm kiếm (search strategy): Chiến lược tìm kiếm là phương

thức để khám phá không gian tìm kiếm Nó nhận các chỉ số hiệu năng của

mô hình (độ chính xác, ELOPs, ) làm phần thưởng (reward) và tối ưu hóa

để tìm ra các kiến trúc ứng viên có hiệu năng cao

3 Chiến lược đánh giá hiệu năng (performance estimation strategy): Mục

tiêu của bài toán tìm kiếm kiến trúc mạng neural là tìm kiếm kiến trúc có

hiệu năng trên tập dữ liệu mà nó chưa nhìn thấy bao giờ (unseen data).

Ước lượng hiệu năng để cập đến việc ước lượng chỉ số hiệu năng này chomột lượng lớn kiến trúc ứng viên để trả về cho quá trình học của thuật

toán tìm kiếm Một trong những cách đơn giản nhất là huấn luyện các kiến

trúc qua hàng chục, hàng trăm epoch và sử dụng độ chính xác kiểm định

(validation accuracy) làm chỉ số đánh giá hiệu năng, nhưng quá trình lại tốn

kém quá nhiều về mặt tính toán dẫn đến giới hạn số lượng kiếm trúc có thểkhám phá Day cũng chính thành phan tốn kém nhiều chi phí nhất, đượcxem như là nút thắt cổ chai (bottle-neck) trong quy trình tìm kiếm kiến trúc

Trang 27

Chương 2 CÁC CONG TRÌNH LIEN QUAN VÀ KIÊN THÚC NEN TANG 12

mạng neural Do đó, nhiều nghiên cứu gần đây đã tập trung vào việc phát

triển giúp giảm chỉ phí cho quá trình đánh giá hiệu năng

2.4 Bài toán Tìm kiếm kiến trúc mạng neural đa mục

tiêu

Bài toán Tìm kiếm kiến trúc mạng neural đa mục tiêu (Multi-Objective NeuralArchitecture Search, viết tắt là MONAS) [ có thể được định nghĩa là việctìm kiếm kiến trúc mang neural phù hợp x khi xét trong một không gian tìm kiếm

kiến trúc O Không làm mất tính tổng quát, quá trình tìm kiếm kiến trúc mạng

neural đa mục tiêu là việc tối thiểu hóa m đồng thời các mục tiêu ƒ¡(x),í € M ={1, ,m} Do đó, mỗi kiến trúc ứng viên x sẽ có một vector gồm các giá trị mụctiêu f(x) = (fi(x), ,f„(x)) © IRTM Một bài toán MONAS có các tinh chất sau

đây:

1 Thống trị Pareto (Pareto dominance): Một kiến trúc x! được gọi là thống trị

(Pareto) một kiên trúc x? khác khi và chỉ khi x! không tệ hơn x? ở tat cả các

mục tiêu và x! tốt hon hẳn x? ở ít nhất một mục tiêu

xi xx? <= Wie M, fi(x!) < f(x?)A đi M, fi(x!) < fi(x?)

2 Những kiến trúc không bị thống tri: x! va x2 được xem là không bị thông trị

khi x! và x? không thống trị lẫn nhau

wi Áx2Ax2 Axl,

3 Kiến trúc không tưởng (Utopian architecture): Khi nhiều mục tiêu đối lập

nhau (như độ lỗi và độ phức tạp), một kiến trúc không tưởng mà tat cả cácmục tiêu đồng thời được tối thiểu hóa cùng một lúc là không tồn tại

px* €0,VxE€O,x* <x

4 Tap Pareto tối ưu (Pareto-optimal set): Ton tại một Tập Pareto tối uu Ps củanhững kiến trúc tối ưu theo nghĩa là chúng không bị thống trị bởi bất kỳkiến trúc nào khác trong không giam tìm kiếm

Ps = {xe O| fx’ © O,x' < x}

5 Biên Pareto tối ưu (Pareto-optimal front): Những vector giá trị mục tiêu củanhững kiến trúc Pareto tối ưu tạo thành Biên Pareto tối ưu Pr trong không

Trang 28

Chương 2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THÚC NEN TANG 13

gian mục tiêu Mỗi điểm trên Py là một sự đánh đổi tối ưu giữa những mục

tiêu đối lập nhau Ví dụ, nếu chúng ta muốn cải thiện kiến trúc Pareto tối

ưu trên một mục tiêu (như giảm chỉ số độ lỗi) thì những mục tiêu khác sẽ

bị xấu đi (như tăng số lượng tham số) P do đó cung cấp cho những người

ra quyết định các thông tin hữu ích, sâu sắc để thực hiện việc lựa chọn kiếntrúc, như tìm ra sự đánh đổi hiệu quả nhất về độ phức tạp của mạng để tăng

độ chính xác của mạng Biên Pareto tối ưu được minh họa trong Hinh{2.6|

Pr = {f(x) €RTM |x € Ps}.

Dé thu được toàn bộ tap Pareto tối ưu (Pareto-optimal set) Ps thường tốn kém

về mặt chi phí tính toán và có thể không cần thiết Do đó, chỉ cần tìm một tập xitốt S chứa những kiến trúc không bị thống trị sao cho các vector giá trị cục miêucủa chúng tạo thành một biên xap xỉ ƒ(S) càng gần (xap xỉ) và càng trải rộng (đa

dang) giống so với biên Pareto tối ưu Pr càng tốt 3| 9}.

2.5 Chỉ số Synaptic Flow không qua huan luyện

Synaptic Flow (synf1ow) là một chi số để đo lường mức độ quan trong củamỗi tham số trong mạng neural dựa trên sự tương tác giữa tham số đó với các

Trang 29

Chương 2 CÁC CÔNG TRINH LIEN QUAN VÀ KIÊN THUC NEN TANG 14

Test accuracy (%) Test accuracy (%) Test accuracy (%)

HINH 2.7: Minh họa tat cả các kiến trúc trong không gian tìm kiếm

NAS-Bench-201 Trục hoành: Độ chính xác kiểm thử ở epoch thứ 200; Trục tung: FLOPs Những điểm tròn có màu càng sáng thì có

giá trị synflow càng cao Những điểm tam giác mau đỏ chỉ những

kiến trúc có giá trị synf1ow cao nhất.

lớp của các tham số khác của mạng Tanaka và các cộng sự đã giới thiệu chỉ

II

số synf1ow lần đầu tiên cho một tham số wij trong lớp thứ Ï của một mang neural

kết nói day đủ (fully-connected) như sau:

k=l+1

(4 r TÌ (kK) Owe

Pw!) = |1 TT] |w | wl} Iw ja (2.2)

i = i

Trong đó, WII là ma trận trọng số của lớp (layer) thứ k của mạng Chi số

synf1ow cho một tham số wi tinh dén tich giá trị tuyệt đối của các trọng số của

tat cả các lớp phía sau lớp thứ / hiện tại, cũng như tích giá trị tuyệt đối của cáctrọng số của tat cả các lớp phía trước lớp | hiện tại Do đó, chỉ số synf1ow của tham

SỐ Ps tơ

Abdelfattah và các cộng sự.

) phản ánh mức độ đóng góp của tham số cho toàn bộ mạng neural

sau đó đã mở rộng chỉ số synflow để đánh giá

toàn bộ kiến trúc mang neural x bằng cách tính tổng giá trị synflow cho tất cả M

tham số trong mạng neural như sau:

Spearman ø của synflow cao hơn các chỉ số không qua huấn luyện khác trong

hầu hết các trường hợp ở Bảng Ngoài ra, Hình 2.7] cũng minh họa toàn bộ

Trang 30

Chương 2 CÁC CÔNG TRÌNH LIEN QUAN VÀ KIÊN THÚC NEN TẢNG_ 15

Benchmark Dataset grad_norm snip grasp fisher jacob_cov synflow NAS-Bench-201 CIFAR-10 0.58 058 048 0.36 0.73 0.74

kiến trúc của NATS-Bench |

kiểm thử (test accuracy) được đánh giá bằng cách sử dụng bộ trọng mạng sau

trong không gian hai mục tiêu là độ chính xác

khi huấn luyện 200 epoch và FLOPs Có thé thay rằng những kiến trúc có giá trị

synf1ow cao có xu hướng cũng có độ chính xác kiểm thử cao (test accuracy) Bên

cạnh đó, synf1ow là một chỉ số được tính không thông qua đữ liệu (data-agnosticmetric) mà chỉ cần dựa trên các trọng số của mang (xem Phương trin!

kiện của NTK (6 nó không yêu cau bắt kỳ lô (batch) dữ liệu nào để truyền qua

hoặc số điềugiống như các chỉ số không qua huấn luyện khác như jacob_cov |

mạng.

Trang 31

Chương 3

MÔ HÌNH HÓA BÀI TOÁN TÌM

KIÊM KIÊN TRÚC MẠNG NEURAL

ĐA MỤC TIÊU

3.1 Tim kiếm kiên trúc mạng neural đa mục tiêu

Một bài toán NAS hai mục tiêu có thể được mô hình hóa như sau:

minimize F(x) = (ƒferr(%,z0”(*), Dyai), feomp(X)) € R’,

subject to w*(x) € argmin L(x, w(x), Drain), (3.1)

XE Oarch, W(X) € Oweight(x),Đây là một bai toán tối ưu hóa hai cấp độ (bi-level optimization problem)

3.1.1 Cấp độ cao (upper level)

Tai cấp độ cao (upper level), x được ký hiệu là một kiến trúc trong không giantìm kiếm O,ychi hai mục tiêu tối ưu hóa là tối thiểu hóa chỉ số độ lỗi (error rate)ferr và tối thiểu hóa chỉ số độ phức tạp fcomp Độ phức tạp của mạng thường

được đánh giá bằng một trong những chỉ số như số lượng tham số (number of

parametrs, hay #parameters), FLOPs, độ trễ (latency) hoặc #MACs Những chỉ sốnày có thể được tính mà không cần xét đến giá trị trọng số của mạng w(x) Lưu

ý rằng forr ở cấp độ trên (upper level) nên được tính trên tập dữ liệu kiểm định

(validation dataset) D,q) để tránh van dé overfit vào một tập dữ liệu huấn luyện

Trang 32

Chương 3 MÔ HÌNH HÓA BÀI TOÁN TÌM KIEM KIEN TRÚC MẠNG

NEURAL ĐA MỤC TIEU

Dtrain cụ thé do việc tối thiểu hóa ở cấp độ thấp (upper level) Khi kết thúc quátrình chạy NAS, kết quả chỉ số độ lỗi (error rate) cuối cùng và giá trị trọng số củanhững kiến trúc sẽ được đánh giá lại trên trên tập dữ liệu kiểm thử (unseen testđataset) để có thể đánh giá được hiệu năng tổng quát của chúng

3.1.2 Cấp độ thấp (lower level)

Giá trị của w(x) là kết quả của bài toán tối ưu hóa cấp độ thấp (lower level)

trên không gian trọng số mạng ©„„¡„¡¡(x) của những kiến trúc ứng viên x Day

là một quá trình huấn luyện mạng tốn kém về mặt tính toán Ví dụ, ta có thể sửdụng thuật toán stochastic gradient descent (SGD) để thực hiện nhiều cập nhật

lặp đi lặp lại trên các giá trị trọng số mạng để tối thiểu hóa hàm mắt mát £ đo

lường sự khác biệt giữa những dự đoán của mạng và các giá trị mục tiêu thực sự

cho các điểm dữ liệu trong dữ liệu huấn luyện Dụa¡n

Chúng tôi gọi phát biểu bài toán này là MONAS (Multi-Objective Neural

Ar-chitecture Search).

3.2 Tìm kiếm kiến trúc mạng neural đa mục tiêu không

qua huấn luyện

Trong suốt quá trình tìm kiếm, nhiều kiến trúc ứng viên cần được đánh giá

hiệu năng dự đoán của chúng ferr (Phương trình B-}, dẫn đến quá trình huấn

luyện các kiến trúc ứng viên này (tối ưu hóa cấp thấp) tiêu tốn một lượng lớn chỉphí tính toán và chiếm hau hết tổng thời gian tính toán Nhiều mô hình NAS đãđược đề xuất sử dụng những chỉ số không qua huan luyện (training-free metric)như là một chỉ số thay thế (proxy) cho chỉ số độ lỗi (error rate) ferr, nhờ đó màkhông tốn chỉ phí huấn luyện mạng Chúng ta có thể mô hình hóa bài toán NAShai mục tiêu với chỉ số không qua huấn luyện synf1ow như sau:

minimize F(x) = (ƒsr(x,z0()), feomp(x)) € RỂ,

(3.2)

subject to x € Oarch, W(x) € Oweignt(x),

Trang 33

Chương 3 MÔ HÌNH HÓA BÀI TOÁN TÌM KIEM KIEN TRÚC MẠNG

NEURAL ĐA MỤC TIEU

Trong đó, for(x,w(x)) = —synflow(w(x)) (do giá trị của synflow càng cao

càng tốt) Trọng số của mang w(x) có thể dé dàng được lấy từ các giá trị ngẫunhiên tại thời điểm khởi tạo trọng số mạng để tính giá trị synflow Chúng tôigọi phát biểu bài toán này là TF-MOENAS (Training-Free Multi-Objective NeuralArchitecture Search) Chúng tôi sẽ so sánh hiệu năng và các kết quả của việc giảiquyết bài toán TF-MOENAS với các kết quả của việc giải quyết bài toán MOENASđòi hỏi quá trình huấn luyện

3.3 Tìm kiếm kiến trúc mạng neural nhiều mục tiêu

Một cách mở rộng đơn giản mô hình MOENAS trong Phương trình|3.T]là xemxét đồng thời nhiều chỉ số độ phức tạp (không đòi hỏi quá trình huấn luyện)

thay vì chỉ tối ưu hóa duy nhất một chỉ số độ phức tạp Những chỉ số này giúp

thể hiện những khía cạnh khác nhau về độ phức tạp của mạng và có thể tínhđược mà không tốn quá nhiều chỉ phí tính toán Một ví dụ điển hình là việc triển

khai các mạng neural sâu trên các thiết bị nhúng (chẳng hạn như máy bay không

người lái hoặc đồng hồ thông minh) thường cần xem xét nhiều giới hạn về mặtphần cứng (như kích thước mô hình hay bộ nhớ) và các yêu cầu sử dụng (usage

requirement) Chúng tôi mô hình bài toán NAS nhiều mục tiêu với năm mục tiêu

như sau:

minimize F(x) = (forr(x, w* (x), fMAcs(%),

fiatency(X), frLops(%), fparams(*)), (3.3)

subject to x € Oarch, W(x) € Oweignt(*),

Trong đó, những độ độ do phức mà chúng tôi sử dụng là:

1 Số đơn vị nhân - tích lũy (The number of Multiply-Accumulate units, viết

tat là #MACs) fMAcs: Các đơn vị nhân - tích lũy chịu trách nhiệm thực hiện

hầu hết những phép toán phức tạp trên các thiết bị vật lý Do đó, #MACscàng nhỏ thì kiến trúc càng ít phức tạp hơn vì có ít thao tác phức tạp cần

thực hiện.

2 Độ trễ (Latency) fatency: Độ trễ đề cập đến thời gian cần thiết để xử lý một

đơn vị dữ liệu được cung cấp với điều kiện chỉ duy nhất một đơn vị dữ liệu

Trang 34

Chương 3 MÔ HÌNH HÓA BÀI TOÁN TÌM KIEM KIEN TRÚC MẠNG

NEURAL ĐA MỤC TIEU

được xử lý tại một thời điểm Đơn vị của độ trễ là giây Một mạng neuralcần càng nhiều thời gian để xử lý một batch dữ liệu thì càng có độ phức tạp

cao.

3 The number of floating-point operations (FLOPs) ftqop;: FLOPs là tổng

số phép toán dấu phẩy động (floating-point operations) như cộng, nhân,chia, cần thiết cho một lần lan truyền xuôi FLOPs càng cao thì mô hình

càng chậm và dẫn đến thông lượng (throughput) thấp.

4 Số lượng tham số (#parameters) params: Tham số nói chung là các trọng mà

mạng neural phải học trong quá trình huấn luyện Chúng là ma trận trọng

số đóng góp vào khả năng dự đoán của mô hình, được thay đổi trong quá

trình huấn luyện Do đó, số lượng tham số của mạng càng nhỏ thì độ phức

tạp của mạng cũng càng càng thấp

Chúng tôi đặt tên cho phát biểu bài toán này là MaOENAS (Many Objective

Evolutionary NAS) Chúng tôi sẽ giải quyết 01 bài toán MaOENAS bao gồm bốn

mục tiêu tối ưu hóa cho độ phức tạp của mạng và so sánh với 04 bài toán

MOE-NAS khác nhau với chỉ một mục tiêu phức tạp.

3.4 Tìm kiếm kiến trúc mạng neural nhiều mục tiêu

không qua huan luyện

Chúng ta có thể thay độ lỗi ferr trong mô hình MaOENAS ở Phương trình|3.3|

thành chỉ số synflow fsp không qua huấn luyện để giảm bớt chi phí tính toán.Việc này giúp cho mô hình có thể tối thiểu hóa đồng thời nhiều mục tiêu với chỉphí tính toán hợp lý Mô hình bài toán NAS nhiều mục tiêu không qua huấn luyện

có thể được trình bày như sau:

minimize F(x) = (fsr(x,w(x)), ÍMAcs(*),

Fiatency(*), fFLOPs(); fparams (*)), (3.4)

subject to x € Oarch, W(x) € Oweignt(*),

R

Chúng tôi gọi phát biểu bài toán nay là TF-MaOENAS (Training-Free Many

Objective Evolutionary NAS) Cũng giống như MaOENAS, chúng tôi sẽ giải quyết

Trang 35

Chương 3 MÔ HÌNH HÓA BÀI TOÁN TÌM KIEM KIEN TRÚC MẠNG

NEURAL ĐA MỤC TIEU

01 bài toán TF-MaOENAS bao gồm bốn mục tiêu tối ưu hóa cho độ phức tạp của

mạng và so sánh với 04 bài toán TF-MOENAS khác nhau với chỉ một mục tiêu

phức tạp.

Trang 36

Mặc dù bài toán NAS đa mục tiêu đã dat được nhiều kết quả nổi bật trong

những năm trở lại đây, việc giải quyết bài toán NAS vẫn còn đặt ra nhiều thử

thách cho các nhà nghiên cứu như:

* Chi phí tính toán: Nhiều phương pháp NAS cơ bản thường đòi hỏi chi phí

tính toán khổng 16, điều này gây nhiều khó khăn cho các nhà nghiên cứu

trong giới học thuật Trong khi đó, thuật toán tiến hóa thường yêu cầu đòihỏi một lượng lớn số lần đánh giá các lời giải trong quá trình chạy dẫn đến

chỉ phí tính toán trở nên vô cùng lớn.

¢ So sánh thuật toán: Mặc dù nhiều phương pháp NAS hiệu qua đã đượcphát triển trong thời gian gần đây, chúng lại không thể so sánh trực tiếp vớinhau do sự khác biệt trong không gian tìm kiếm và quá trình huấn luyệncác kiến trúc ứng viên Do đó, chúng ta không gần như không thể so sánh

các phương pháp NAS này với nhau và cũng không thể cô lập được mức

độ đóng góp của thuật toán tối ưu hóa trong tổng thể thành công của một

phương pháp NAS.

Để giải quyết hai vấn dé trên, Dong và các cộng sự [15] đã đề xuất

NATS-Bench - một bộ benchmark dạng bảng Ý tưởng chính đằng sau NATS-NATS-Bench là

việc đánh giá toàn bộ tất cả các kiến trúc trong không gian tìm kiếm nhiều lần vàlưu lai các thông tin của chúng dưới dang bảng giúp dé dang cho việc truy xuất

Trang 37

Chương 4 PHƯƠNG PHÁP 22

zeroize (none)

= skip connection

x1 conv + 3x3 conv 3x3 average pooling

HINH 4.1: Ví dụ về việc mã hóa các cell trên NATS-Bench Trong đó, (0) zeroize (none), (1) skip connection (skip_connect), (2) 1x1 convo-

lution (nor_conv_1x1), (3) 3x3 convolution (nor_conv_3x3) va (4) 3x3

average pooling (avg_pool_3x3).

Trong khóa luận này, chúng tôi sử dụng NATS-Bench với không gian tìm kiếm

micro Không gian tìm kiếm micro tập trung vào việc thiết kế khối tính toán(computational blocks) hay còn gọi là cell Sau đó, các cell này sẽ được xếp chồng,

lên nhau để tạo thành một kiến trúc mạng neural hoàn chỉnh theo một mẫu được

định nghĩa trước Hiện nay nhiều kiến trúc CNN phổ biến có thể nhìn dưới góc

độ là các khối tính toán xếp chồng lên nhau như ResNet [19], DenseNet 21} va

InceptionNet [43]

NATS-Bench gom 15,625 kiến trúc cell CNNs, bao gom ba bộ dữ liệu là

CIFAR-10, CIFAR-100 và downsampled ImageNet 16x16 Các thông tin của kiến trúc bao

gồm: Độ chính xác kiểm định (validation accuracy), độ chính xác kiểm thử (test

accuracy), số lượng tham số (number of parameters), độ trễ (latency), FLOPs, thờigian huấn luyện,

4.1.2 Mahoa

Các thuật toán tiến hóa thường không hoạt động trực tiếp trên kiểu hình notypes) của cá thể Cụ thể, chúng ta có thể xem kiến trúc mạng neural là kiểuhình và biểu diễn được ánh xạ của kiến trúc đó là kiểu sen (genotype) Trong thuậttoán tiến hóa, các toán tử di truyền như lai ghép hay đột biến chỉ hoạt động trên

(phe-không gian kiểu gen Do đó, chúng ta sẽ xem việc chuyển đổi kiểu hình thành

kiểu gen là quá trình ma hóa (encoding)

Trong khóa luận này, mỗi cell của kiến trúc trong không gian tìm kiếm sẽ bao

gồm 4 đỉnh và 6 cạnh Trong đó, mỗi đỉnh biểu diễn tổng của các feature map và

mỗi cạnh biểu diễn một operation kết nối feature map giữa hai đỉnh Chúng tôi

Trang 38

Chương 4 PHƯƠNG PHÁP 23

mã hóa mỗi cell như sau: [xo — x0,2X12 — X03X1,3X2,3], trong đó xi; đại điện cho

một cạnh kết nối giữa đỉnh i và đỉnh j (i < j) Giá trị của Xij nam trong đoạn |0; 4],

cụ thể: (0) zeroize (none), (1) skip connection (skip_connect), (2) 1x1 convolution

(nor_conv_1x1), (3) 3x3 convolution (nor_conv_3x3) và (4) 3x3 average pooling

(avg_pool_3x3) Chỉ tiết mã hóa trong Hinh{4.1|

4.2 Chiến lược tim kiếm

Thuật toán 1 Tìm kiếm kiến trúc đa mục tiêu bằng thuật toán tiến hóa (MONAS)Input: Không gian tìm kiếm O

Output: Biên xap xỉ A

while diéu kiện dừng chưa được đáp ứng do

Tao ra các kiến trúc con cái C bằng cách áp dụng các phép lai ghép và độtbiến trên các cá thể cha mẹ P

Đánh giá C bằng các chỉ số dự đoán hiệu năng và các chỉ số về độ phức tap8: Cap nhật elitist archive A để bảo tồn các kiến trúc không bị thống tri từ C9: Kếthợp 7 và Œ để tạo ra Q

10: Áp dụng phép chon lọc để lựa chọn các kiến trúc tốt nhất từ Q dựa trên

thứ hạng không bị thống trị và độ đa dạng 11: Cập nhật quan thể P với các cá thể được lựa chon từ Q

12: end while

13: return elitist archive cuối cùng A như là một biên xắp xỉ =0

n

Trong khóa luận này, chúng tôi sử dung thuật toán tiến hóa đa mục tiêu

NSGA-II (9 như một chiến lược tìm kiếm kiến trúc mạng neural đa mục tiêu được minh họa trong Hình |4.2| và Thuật toán [| Đầu tiên, NSGA-II là một quá

trình lặp đi lặp lại qua các thế hệ nhằm cải thiện dan dần một nhóm những giải

pháp được khởi tạo ngẫu nhiên ban đầu, còn được gọi là quân thể Tại mỗi thế hệ,một lượng cá thể con cái (offspring) hay trong NAS còn được hiểu là các kiến trúcmang mới sẽ được tạo ra từ các cá thể cha me (parent) được chọn từ quan thể.Sau đó, một lượng cá thể tốt nhất nhất định trong quan thể (bao gồm cả cha mẹ

Ngày đăng: 23/10/2024, 00:30

HÌNH ẢNH LIÊN QUAN

HÌNH 2.3: Tổng quan các giai đoạn của NSGA-Net 30) - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
HÌNH 2.3 Tổng quan các giai đoạn của NSGA-Net 30) (Trang 23)
HÌNH 4.2: Các giai đoạn của thuật toán NSGA-II (Non-dominated - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
HÌNH 4.2 Các giai đoạn của thuật toán NSGA-II (Non-dominated (Trang 39)
HÌNH 4.4: Minh họa phép chọn lọc giao đấu nhị phân (binary tour- - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
HÌNH 4.4 Minh họa phép chọn lọc giao đấu nhị phân (binary tour- (Trang 41)
HÌNH 4.5: Thứ hạng không bị thống trị (non-dominated rank) thứ - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
HÌNH 4.5 Thứ hạng không bị thống trị (non-dominated rank) thứ (Trang 42)
HÌNH 4.6: Khoảng cách đông đúc của giải pháp 7 chính là chu vi của - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
HÌNH 4.6 Khoảng cách đông đúc của giải pháp 7 chính là chu vi của (Trang 42)
Hình  .2} hình 5.3] và hình .4|cho thấy TF-MaOENAS cho ra kết quả hội tụ - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
nh .2} hình 5.3] và hình .4|cho thấy TF-MaOENAS cho ra kết quả hội tụ (Trang 49)
Hình 5.8|B.9|và|b.10) cho thấy rằng TF-MaOENAS cho ra biên xp xi (approx- (approx-imation front) cuối cùng đa dạng và gần với biên tối ưu pareto hơn các phương - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
Hình 5.8 |B.9|và|b.10) cho thấy rằng TF-MaOENAS cho ra biên xp xi (approx- (approx-imation front) cuối cùng đa dạng và gần với biên tối ưu pareto hơn các phương (Trang 53)
HÌNH 5.8: Archive cuối cùng thu được trên CIFAR-10 (NATS-Bench) - Khóa luận tốt nghiệp Khoa học máy tính: Tìm kiếm kiến trúc mạng neural nhiều mục tiêu bằng thuật toán tiến hóa với các phương pháp dự đoán hiệu năng
HÌNH 5.8 Archive cuối cùng thu được trên CIFAR-10 (NATS-Bench) (Trang 58)

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm