Sinh viên thực hiện: Phan Minh Quân - 17520941 Nội dung đề tài: e Mục tiêu: Nâng cao hiệu suất của các thuật toán tiến hóa đa mục tiêu trên bài toán Tìm kiếm kiến trúc mạng neural.. ° Đố
Trang 1ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
PHAN MINH QUAN
KHOA LUAN TOT NGHIEP
CAC PHUONG PHAP CAI THIEN HIEU SUAT THUAT
TOÁN TIEN HOA DA MỤC TIEU CHO BÀI TOÁN TÌM
KIEM KIEN TRUC MANG NEURAL
CỬ NHÂN NGANH KHOA HỌC MAY TÍNH
TP HÒ CHÍ MINH, 2021
Trang 2ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
PHAN MINH QUÂN - 17520941
KHÓA LUẬN TÓT NGHIỆP
CÁC PHƯƠNG PHAP CAI THIỆN HIỆU SUAT THUẬT
TOÁN TIEN HOA ĐA MỤC TIÊU CHO BÀI TOÁN TÌM
KIEM KIÊN TRÚC MẠNG NEURAL
CỬ NHÂN NGÀNH KHOA HỌC MÁY TÍNH
GIẢNG VIÊN HUONG DAN
TS LƯƠNG NGỌC HOÀNG
TP HÒ CHÍ MINH, 2021
Trang 3DANH SÁCH HOI DONG BẢO VỆ KHÓA LUẬN
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số
TBầy của Hiệu trường Trường Đại học Công nghệ Thông tin.
— — Chủ tịch.
P — Thư ký
ÔÒÒÔ ~ Ủy viên
4
Trang 4ĐẠI HỌC QUOC GIA TP HO CHÍMINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIET NAM
Tên khóa luận:
CÁC PHƯƠNG PHÁP CẢI THIỆN HIỆU SUAT THUẬT TOÁN TIEN HÓA ĐA
MỤC TIÊU CHO BÀI TOÁN TÌM KIEM KIEN TRÚC MẠNG NEURAL
Nhóm SV thực hiện: Cán bộ hướng dẫn:
Phan Minh Quân - 17520941 TS Lương Ngọc Hoàng
Đánh giá Khóa luận
1 Về cuốn báo cáo:
Số trang - Số chương
So bảng sô liệu So hình vẽ
Sô tài liệu tham khảo Sản phâm
2 Về nội dung nghiên cứu:
4 Về thái độ làm việc của sinh viên:
Trang 5Người nhận xét (Ký tên và ghi rõ họ tên)
Trang 6ĐẠI HỌC QUOC GIA TP HO CHÍMINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIET NAM
Tên khóa luận:
CÁC PHƯƠNG PHÁP CẢI THIỆN HIỆU SUAT THUẬT TOÁN TIEN HÓA ĐA
MỤC TIÊU CHO BÀI TOÁN TÌM KIEM KIEN TRÚC MẠNG NEURAL
Nhóm SV thực hiện: Cán bộ phản biện:
Phan Minh Quân - 17520941 TS Nguyễn Đình Hiển
Đánh giá Khóa luận
1 Về cuốn báo cáo:
Số trang - Số chương
So bảng sô liệu So hình vẽ
Sô tài liệu tham khảo Sản phâm
2 Về nội dung nghiên cứu:
4 Về thái độ làm việc của sinh viên:
Trang 7Người nhận xét (Ký tên và ghi rõ họ tên)
Trang 8ĐẠI HỌC QUOC GIA TP HO CHÍ MINH CONG HÒA XA HOI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
DE CƯƠNG CHI TIẾT
TEN DE TÀI: CÁC PHƯƠNG PHAP CẢI THIỆN HIỆU SUAT THUẬT TOÁN TIỀN HOA
ĐA MỤC TIÊU CHO BÀI TOÁN TÌM KIEM KIÊN TRÚC MẠNG NEURAL
Cán bộ hướng dẫn: TS Lương Ngọc Hoàng
Thời gian thực hiện: Từ 09/2020 đến 01/2021.
Sinh viên thực hiện:
Phan Minh Quân - 17520941
Nội dung đề tài:
e Mục tiêu: Nâng cao hiệu suất của các thuật toán tiến hóa đa mục tiêu trên bài toán
Tìm kiếm kiến trúc mạng neural.
e Pham vi: Bộ dữ liệu MacroNAS; Bộ dữ liệu NAS-Benchmark-101; Bộ dữ liệu
NAS-Benchmark-201 Các bộ dữ liệu này được sử dụng để xây dựng các bài toán
mang các đặc điểm không gian tìm kiếm của bài toán Tìm kiếm kiến trúc mạng
neural.
° Đối tượng: Bài toán Tìm kiếm cấu trúc mạng neural (Neural Architecture Search);
Bài toán Tối ưu hóa đa mục tiêu (Multi-objective Optimization Problem)
e Phuong pháp thực hiện:
- Dé xuất các kỹ thuật nhằm cải thiện hiệu suất của thuật toán NSGA-II.
- Áp dụng các kỹ thuật dé xuất lên thuật toán NSGA-II.
- Thực nghiệm trên các bài toán được xây dung từ các bộ dữ liệu: MacroNAS,
NAS-Benchmark-101 và NAS-Benchmark-201.
¢ Két quả mong đợi của dé tài: Nâng cao được độ hiệu quả của thuật toán tiến hóa
đa mục tiêu trên bài toán Tìm kiếm cấu trúc mang bằng các phương pháp dé xuất.
Kế hoạch thực hiện:
STT Công việc Thời gian thực hiện Phân công
Trang 9I Phân tích bài toán, nghiên cứu và
tiến hành thực nghiệm 07/09 — 31/10/2020
1 | Phân tích dé tài nghiên cứu Phan Minh Quân
Tìm kiếm các công trình nghiên
Nghiên cứu các công trình nghiên
3 cứu liên quan trước đây Phan Minh Quân
4 Tiên hành lựa chọn bộ di liệu Phan Minh Quân
thực nghiệm
Phân tích, tìm hiểu đề xuất các
5 _ | Phương pháp nham cải thiện hiệu Phan Minh Quân
suất các công trình nghiên cứu trước đây
Tiến hành cài đặt phương pháp đề R
© Í xuét lên thuật toán NSGA-II Phan Minh Quân
Xây dựng các bài toán từ các bộ
7 dữ liệu MacroNAS, NAS-Bench- Phan Minh Quân
101 và NAS-Bench-201.
8 Tien hành thực nghiệm trên các Phan Minh Quân
bài toán đã xây dựng
I Tiếp tục thực nghiệm, đánh giá hiệu | 01/11 30/11/2020
| quả và việt báo cáo đê tài
Sửa các lỗi phát sinh trong quá
1 trình thực nghiệm (nêu có) và Phan Minh Quân
hoàn thành quá trình thực nghiệm
Tổng hợp kết quả và đánh giá
hiệu quả thực nghiệm Phan Minh Quân
Đề xuất các hướng phát triển dựa
vào kêt quả thực nghiệm Phan Minh Quân
Trang 10Viết báo cáo Phan Minh Quân
IIL Hoàn thiện những phan còn thiếu
và hoàn tất 90% đề tài 01/12 - 31/12/2020
Tiến hành những thực nghiệm
cân thiệt đê bô sung nội dung cho báo cáo
Phan Minh Quân
Đánh giá sơ bộ báo cáo nhằm
tìm ra các điêm thiêu sót Phan Minh Quân
IV Cải thiện những mặt thiếu sót còn
lại và hoàn thiện toàn bộ dé tài Tháng 1/2021
Trang 11LOI CAM ON
Dau tiên, tôi xin được gửi lời cảm on chân thành đến thay TS Lương Ngoc Hoàng
đã tận tình động viên, giúp đỡ và định hướng tôi trong suốt thời gian nghiên cứu
và thực hiện đề tài khóa luận này
Tiếp theo, tôi xin chân thành cảm ơn quý thây cô trong khoa Khoa Học Máy Tính
nói riêng và toàn thể thầy cô trong trường Đại Học Công Nghệ Thông Tin nói chung
đã tận tình giảng dạy, trang bị cho tôi hành trang là những kiến thức quý báu trong
những năm ngồi trên ghế nhà trường.
Cuối cùng, tôi bày tỏ lòng biết ơn sâu sắc đến gia đình của mình Gia đình là hậu
phương vững chắc và nguồn động lực to lớn thúc đẩy tôi hoàn thành tốt dé tài khóa
luận này.
Trang 12MỤC LỤC
ILỜI CẢM ON]
TÓM TẮT
1_ TỔNG QUAN|
1.1 Bài toán Tìm kiếm kiến trúc mạng neurall
111 Mô tả bài
toán| -1.1.2 Không gian tim kiém| Pe ¬— 1.1.3 Huong tiépcfn} 22 ee 1.2 Phạm vi và mục tiêu nghiên
cứu| -1.2.1 Pham QF amen VM /./‹
T272 MụcHểul
[3 Nội dung thực
hiện| -[4 Đồng gốp của khóa Hặn|
1.5 Cấu trúc khóa
luận| -b_ CÁC CÔNG TRÌNH LIÊN QUAN VÀ KIÊN THỨC NEN TANG 2.1 Các công trình liên
quan| -2.1.1 Sử dụng mô hình thay thé trên NAS|]
2.1.2 Áp dụng Thuật toán tién hóa đa mục tiêu trên NASỈ
2.2 Các kiến thức nền tang| ¬ eee 2.2.1 Bài toán Tối ưu hóa đa mục
tiêu| -2.2.2 _ Thuật toán tiến hóa đa mục tiêu}
[3 CÁC PHƯƠNG PHÁP ĐỀ XUẤT B.1_ Ước lượng độ chính xác bằng mô hình thay thể|
3.2 Cải thiện các giải pháp tiềm nan:
xii
xi
xviii
NN DADADAGAWH HE
`
Trang 13321 Nhậndiện
3.2.2 Cải thiện| Ặ Ặ eee 4_ THỰC NGHIÊM 4.1 Các bộ dư liệu benchmark dược sử dụng|
4.1.1 MacroNASl
4.1.2 NAS-Bench-l0dll
4.1
IAS-Bench-201| -4.2 Đánh giáhiệusuất
4.2.1 Chỉ số Inverted Generational Distance] De eee Các kĩ thuật sử dụng tron: 43.1 Chuẩnhóa dữ
liệu| -4.3.2 Sử dụng Elitist archive va Dominated archive]
4.4 Thiết lập thựcnghiệm|
4.5 Kết quả thực nghiệm|
4.5.1 NAScấp
độmacrol -452 NAScấp độmicrol
5 KẾT LUẬN VÀ HƯỚNG PHAT TRIỂN 51 Kếtluận ee 5.2 Hướng pháttriển|
TÀI LIEU THAM KHAO}
xiii
26 30
32 32 33 34 37 39 39 40 41 41 41 42 43 43
54 54 54 56
Trang 14DANH SACH HINH VE
1.1 Minh hoa bài toán Tim kiếm kiến trúc mạng neural] ¬ ee 21.2 Minh hoa một giải pháp trong không gian tìm kiếm của NAS ở cập
See 4
1.3 Minh hoa một giải pháp trong không gian tim kiếm của NAS cấp độ
[—— miœodl 4
1.4 Minh họa các hướng tiếp cận hiện tại trên bài toán NAS| see ee 5
2.1 Minh họa cơ chế sử dung mô hình thay thé trong PNAS [14 | ¬— 10
inh họa quá 11
2.3 Mô tả quá trình tìm kiếm trong NSGA-Net [15]| - 13
2.4 Mô tả quá trình tìm kiếm trong NSGA-Net-V2 [16ÌÌ 14
i oại giải pháp và biên tối ưu Pareto 16
2.6 Minh họa biên xap xi Pareto trên không gian mục tiêu] Se 17
E-7 Mô tả quy trình thực hiện của MOEA| 182.8 Minh họa thứ hạng của các cá thể sau khi đã được xác định| 19
2.9 Minh hoạ cách tính crowding distance trong thuật toán NSGA-H 20
2.10 Cơ chế chọn lọc trong thuật toán NSGA-T] ¬ ee 21
3.1 Miêu tả cơ chế hoạt động của mô hình thay thể| 23
3.2 Sự khác biệt giữa cơ chế tính toán độ chính xác hiện tại trên MOEAs
và cơ chế tính toán độ chính xác đẻ xuất| - 243.3 Miêu tả quá trình cập nhật mô hình thay thế| 253.4 Mô tả các giai đoạn và vị trí thực hiện của phương pháp dé xuất "Tìm
[ kiếm và cải thiện các giải pháp tiềm năng" trên quy trình hoạt động
tổng quát của MOEAs| ẶcQQ ee 273.5 Minh họa giải pháp "knee" trên biên không bị thống trị trong bài toán
[ Tối thiểu hóa hai mục tiêu| 28
Trang 15toán Tối thiểu hóa hai mục tiêu| - 283.7 Minh hoa quá trình nhận diện các giải pháp tiềm năng| 293.8 Minh hoa quá trình cải thiện các cá thể tiềm năng| 31
4.1 Minh họa một giải pháp trong các bài toán được xây dựng từ bộ dữ
liệu MacroNAS.| Ặ ee 34
4.2 Minh họa cách sử dung DAG biểu diễn trình tự sắp xếp các operators
trong một cell và cách biểu diễn DAG trong bộ dữ liệu NAS-Bench-101| 36
Minh họa cách sử dụng DAG biểu diễn trình tự sắp xếp các operators
trong một cell và cách biểu diễn DAG trong bộ dữ liệu NAS-Bench-201] 38
họa các xác định vùng không gi i thé i 40
4.5 Kết quả thực nghiệm trên bài toán MacroNAS- 1| ¬ eee 44
4.6 Kết quả thực nghiệm trên bài toán MacroNAS- 2] ¬¬ 45
|4.7 Kết quả thực nghiệm trên bài toán NAS-101 47
|4.8 Kết quả thực nghiệm trên bài toán NAS-201-1| Sn 48
4.9 Kết quả thực nghiệm trên bài toán NAS-201-2| ) 494.10 Kết quả thực nghiệm trên bài toán NAS-201-3] 50
Trang 16DANH SACH BANG
4.1 Tom tắt các đặc điểm của các bộ dữ liệu được sử dụng| 32
4.3 Chuỗi ký tự biểu diễn các operators trong bộ dữ liệu NAS-Bench-101| 35
4.4 Chuỗi ký tự biểu diễn các operators trong bộ dữ liệu NAS-Bench-201] 394.5 Két quả thực nghiệm trên bài toán MacroNAS-1| ¬ eee 51
4.6 Kết quả thực nghiệm trên bài toán MacroNAS-2| 51
4.7 Kết qua thực nghiệm trên bai toán NAS-101Ì 52
|4.8 Kết quả thực nghiệm trên bài toán NAS-201-1] 5) ra 524.9 Kết quả thực nghiệm trên bài toán NAS-201-2] 534.10 Kết quả thực nghiệm trên bài toán NAS-201-3| 53
Trang 17DANH SACH TU VIET TAT
LS Local Search MOEA = Multi-objective Optimization Evolutionary Algorithm
MOP Multi-objective Optimization Problem
NAS Neural Architecture Search NSGA-II_ Non-dominated Sorting Genetic Algorithm II
SM Surrogate Model
Trang 18Khoa học máy tính Tuy nhiên, so với số lượng các kiến trúc đã tìm thấy, số lượng
các kiến trúc mạng neural chưa được thử nghiệm và đánh giá độ hiệu quả vẫn còn làmột con số khổng lồ Để tìm thay một (hoặc nhiều) kiến trúc mạng neural mang lại
độ hiệu quả cao trong vô số những kiến trúc ấy, chúng ta cần tích lũy một số lượng
lớn kinh nghiệm chuyên môn và trải qua một quá trình thử nghiệm lâu dài Do đó,
Tìm kiếm kiến trúc mạng neural (Neural Architecture Search, viết tắt: NAS) - một
bài toán nhằm tự động tìm kiếm và thiết kế các cầu trúc mạng neural đã được hình
thành Thuật toán tiền hóa đa mục tiêu là một trong các hướng tiếp cận hiệu quả đểgiải quyết bài toán trên Mặc dù các công trình nghiên cứu gan đây vé sử dụng thuậttoán tiến hóa đa mục tiêu để giải quyết NAS đều đạt được những kết qua đáng chú
ý, nhưng chúng tôi nhận thay các cơ chế tìm kiếm ở các nghiên cứu trên đều ở mứcđơn giản và hoàn toàn có thể áp dụng nhiều phương pháp để cải thiện hiệu suất
đạt được Trong khóa luận tốt nghiệp này, chúng tôi đề xuất hai phương pháp nhằm
nâng cao hiệu suất của thuật toán tiền hóa đa mục tiêu trên bài toán Tìm kiếm kiến
trúc mạng neural:
¢ Phương pháp đề xuất đầu tiên của chúng tôi là sử dụng một mô hình thay thé
để dự đoán độ chính xác của kiến trúc mạng đang được xét Trong khóa luậnnày, chúng tôi đề xuất một cơ chế sử dụng mô hình thay thế mới hoàn toàn
so với các cơ chế được đề xuất ở các nghiên cứu trước đây Trong cơ chế sửdụng chúng tôi để xuất, chỉ những kiến trúc có độ chính xác dự đoán cao sẽđược thực sự huấn luyện và đánh giá trong khi những kiến trúc có độ chínhxác thấp sẽ bị bỏ qua
¢ Phuong pháp dé xuất thứ hai của chúng tôi là tiền hành cải thiện các giải pháptiềm nang trên biên không bị thống trị của quần thể ở cuối mỗi thé hệ của Thuậttoán tiến hóa đa mục tiêu Đầu tiên, chúng tôi cung cấp định nghĩa như thế
nào là giải pháp tiềm năng trên biên không bị thống trị và cơ chế để tìm kiếm
các giải pháp này Tiếp theo, chúng tôi áp dụng thuật toán Tìm kiếm cục bộ đểcải thiện chất lượng của mỗi giải pháp tiềm năng vừa tìm được
Trang 19Để kiểm chứng tính hiệu quả của các phương pháp chúng tôi dé xuất, chúng tôi
tiến thành thực nghiệm trên các bài toán được xây dựng từ các bộ dữ liệu mark của NAS ở cả hai cấp độ: micro (NAS-Bench-101, NAS-Bench-201) va macro(MacroNAS) Các kết quả đạt được đã cho thấy các phương pháp dé xuất đã tạo nên
bench-sự nâng cao hiệu suất đáng kể trên các bài toán NAS cấp độ macro Đối với các bàitoán NAS cấp độ micro, sự cải thiện hiệu suất đạt được tuy không đáng kể nhưng
vẫn đáng được ghỉ nhận.
Trang 20Chương 1
TỔNG QUAN
Trong chương này, chúng tôi sẽ đưa ra cái nhìn tổng quan về bài toán Tìm kiếm kiếntrúc mạng neural, mô tả không gian tìm kiếm và trình bày các hướng tiếp cận hiện
tại trên bài toán Ở nội dung tiếp theo, chúng tôi sẽ đẻ cập đến mục tiêu và phạm
vi nghiên cứu trong khóa luận này Ở cuối chương, chúng tôi sẽ tóm tắt những nội
dung thực hiện, những đóng góp của chúng tôi và trình bày bố cục chính của bài
khóa luận.
1.1 Bài toán Tìm kiếm kiến trúc mạng neural
1.11 Mô tả bài toán
Mạng neural đã cho thấy tính hiệu quả và phổ biến của nó khi được áp dụng để giải
quyết nhiều tác vụ ở những lĩnh vực khác nhau như: phân loại ảnh [13], nhận diện
vật thể (26, xử lý ngôn ngữ tự nhiên 220], v.v Tuy nhiên, việc thiết kế một kiến trúc
mạng hiệu quả đòi hỏi rất nhiều kinh nghiệm từ các chuyên gia trong ngành và trảiqua một quá trình thử nghiệm lâu dài Chính vì những khó khăn trên mà Tìm kiếm
kiến trúc mạng neural (Neural Architecture Search, viết tat: NAS) - một kỹ thuật tự
động thiết kế kiến trúc mạng neural, đã trở thành một bài toán thu hút sự chú ý từ
các nhà nghiên cứu trong vài năm trở lại đây.
Dựa vào mục tiêu tìm kiếm, NAS có thể được biểu diễn dưới hai dang bài toán:Toi uu hóa đơn mục tiêu và Tối wu hóa đa mục tiêu Trước đây, phan lớn các nghiên cứu
1||24)|27/28] Mục tiêu
chính của các nghiên cứu này là tìm ra kiến trúc mang lại độ chính xác cao nhất trên
xem xét NAS dưới dạng bài toán Tối ưu hóa đơn mục tiêu
Trang 21Chương 1 TONG QUAN 2
HINH 1.1: Minh họa bài toán Tìm kiếm kiến trúc mang neural.
một bài toán cụ thể Tuy nhiên, trong những năm gần đây, NAS thường mang đặcđiểm của một bài toán Tối ưu hóa đa mục tiêu Lí do là bởi bên cạnh các máy tính cánhân, mạng neural đã được triển khai trên các nền tảng khác như điện thoại thông
minh, xe tự lái, máy bay không người lái
điểm của các thiết bị trong mỗi nền tảng này là khác nhau (ví dụ, tốc độ xử lý thong
Có thể dé dàng thấy rằng đặc
tin, dung lượng bộ nhớ) Vì vậy, để triển khai một cách hiệu quả mạng neural trên
các nền tảng này, bên cạnh độ chính xác của các kiến trúc, việc tìm kiếm kiến trúc
đã đặt nhiều sự quan tâm hơn lên các mục tiêu khác như độ trễ của kiến trúc, kích
Trang 22Chương 1 TỔNG QUAN 3
thước của kiến trúc, v.v Lúc này, bên cạnh mục tiêu chính là tối ưu hóa độ chính xáccủa các kiến trúc, các mục tiêu còn lại thường là các chỉ số hiệu suất như: độ trễ củakiến trúc, số lượng GPUs sử dụng, v.v Về mặt tổng quan, NAS được mô hình hóa
như sau:
¢ Đầu vào: bộ dữ liệu D và tập hợp các mục tiêu cần tối ưu Ó, với:
- D là bộ dữ liệu tương ứng với một vấn đề cụ thể (phân loại ảnh, nhận
điện vật thể, xử lý ngôn ngữ tự nhiên, v.v.) D được sử dung cho việc
huấn luyện và đánh giá hiệu suất của các kiến trúc
— O = {0}, 02, , On} là tập hợp n chỉ số hiệu suất của kiến trúc cần tối ưu
khi đánh giá trên D Trong trường hợp n = 1, NAS được xem là bài toán
Tối ưu hóa đơn mục tiêu Ở các trường hợp còn lại n > 2, NAS được xem
là bài toán Tối ưu hóa đa mục tiêu.
© Dau ra: tập hợp X = {xị, xa, , Xm} chứa m kiến trúc
1.1.2 Không gian tìm kiếm
Có hai cấp độ để mô tả không gian tìm kiếm của NAS: cáp độ macro và cap độ micro
Cấp độ micro
1Hình ảnh được lay từ |.
Trang 23Chương 1 TONG QUAN 4
Identity Identity Identity Phan lop Đầu ra
MBConv5x5 Identity
Dau vao MBConv3x3 MBConv3x3 MBConv5x5 MBConv5x5 MBConv3x3 Identity MBConv5x5 Identity MBConv3x3
HINH 1.2: Các khối màu xám là thành phan cố định trong kiến trúc, các khối màu vàng là các cells mà chúng ta cần phải tìm ra trình tự sắp.
xếp chúng tối ưu nhất Trong không gian tìm kiếm của bài toán này, số lượng cells tối đa trong một kiến trúc là 14 và bao gồm 3 loại cell khác
nhau có thể lựa chọn: MBConv3x3, MBConv5x5 va Identity.
architecture)
ñ residual block) residual block| global
image }> conv IÌxN xNPs sf (stride=2) a sf (stride=2) ĐỆ avg pool,
cell cell —> zeroize
=>» nn aw => skip-connect
——> 1x1 conv
cell cell —> 3x3 conv
<a] L Tế =“= ——> 3x3 avg pool
predefined operation set
HÌNH 1.3: Hình ở trên minh hoa các hình thành một kiến trúc dựa trên một giải pháp trong không gian tìm kiếm Hình ở dưới bên trái minh
họa cho các giải pháp trong không gian tìm kiếm Trong bài toán mẫu
này, số lượng operators tối đa ở mỗi cell là 6 Các operators có thể lựa
chọn được biểu diễn ở hình ở đưới bên phảƒ |
Hình[L.3|minh họa không gian tìm kiếm của một bài toán mẫu NAS cấp độ micro.Ngược lại với cấp độ macro, một giải pháp trong không gian tìm kiếm của NAS cấp
độ micro liên quan đến trình tự sắp xếp các operators trong một cell Mục tiêu khi
giải quyết NAS ở cấp độ này là tìm ra trình tự sắp xếp các operators trong một cellsao cho kiến trúc được cau tạo từ N cells đó đạt được hiệu suất tối ưu nhất Tương
tự như quá trình xây dựng các bài toán NAS cấp độ macro, khi xây dựng các bàitoán NAS cấp độ micro, chúng ta cần phải xác định số lượng operators tối đa bên
trong một cell và các loại operators có thể chọn.
Trang 24Chương 1 TONG QUAN 5
113 Hướng tiếp cận
: `
Tối ưu hóa Tối ưu hóa Tối ưu hóa ies) \
đơn mục đa mục đơn mục | đa mục I
tiêu tiêu tiêu tiêu
v ⁄
¬
HINH 1.4: Các hướng tiếp cận hiện tại trên bài toán NAS Đường cong
nét đứt màu đỏ mô tả phạm vi nghiên cứu của chúng tôi trong khóa
luận này.
Một thách thức đặt ra đối với các phương pháp được áp dụng trên NAS là kíchthước không gian tìm kiếm rất lớn Do đó, để thu được những kết quả khả quan,một chiến lược tìm kiếm hiệu quả là vô cùng cần thiết Có rất nhiều phương phápkhác nhau đã được áp dụng trên NAS nhưng hau hết các phương pháp này đềuthuộc hai hướng tiếp cận chính: dua trên Hoc tăng cường (Reinforcement Learning)
và dua trên Thuật toán tiến hóa (Evolutionary Algorithm) Chi tiét hon, néu dua vaomục tiêu tìm kiếm trên NAS, chúng ta có thể tiếp tục chia các phương pháp ở mỗi
hướng tiếp cận thành hai dạng: tối wu hóa don mục tiêu và tối uu hóa da mục tiêu Hình[I.-4|mô tả bức tranh tổng quát về các hướng tiếp cận hiện tại trên bài toán NAS.
Đối với các phương pháp dựa trên Học tăng cường, không gian tìm kiếm củaNAS sẽ được xem là môi trường (environment) và mỗi phan của kiến trúc (operators,cells, v.v.) tương ứng với một hành động (action) Một tác nhân (agent) sẽ được huấnluyện để thực hiện một chuỗi hành động sao cho tổng giá trị phần thưởng (reward)đạt được là cao nhất Chúng ta có thể hiểu rằng, tác nhân này sẽ được huan luyện để
Trang 25Chương 1 TỔNG QUAN 6
sắp xếp các operators hoặc các cells theo một trình tự cụ thể để tạo thành một kiến
trúc hoàn chỉnh đem lại hiệu suất cao nhất khi ứng dụng
Ở một hướng tiếp cận khác, cơ chế tìm kiếm của các phương pháp dựa trên
Thuật toán tiền hóa trên NAS được thực hiện như sau Đầu tiên, một quần thể đượckhởi tạo ngẫu nhiên chứa một số lượng các cá thể tương ứng với các kiến trúc trong
không gian tìm kiếm Ở các thé hệ tiếp theo, quan thể này trai qua một chu trình bao
gồm các phép biến đổi (lai ghép, đột biến) và tiến hành chọn lọc Trong quá trìnhchọn lọc, quần thể sẽ tiến hành giữ lại các cá thể có độ thích nghỉ cao và loại bỏ các
cá thể có độ thích nghỉ thấp Cơ chế chọn lọc này có tác dụng điều hướng quan thétiến tới các cá thể tốt hơn và có thể xảy ra hiện tượng hội tụ Khi quá trình tìm kiếmkết thúc, các cá thể tồn tại trong quan thể cuối cùng chính là các kiến trúc cần tìm
1.2 Phạm vi và mục tiêu nghiên cứu
1.21 Pham vi
Trong khóa luận này, chúng tôi tập trung xem xét NAS là bài toán Tối uu hóa da muc
tiêu Cụ thể hơn, số lượng mục tiêu tối ưu ở các bài toán chúng tôi thực nghiệm là
2 mục tiêu Bên cạnh đó, chúng tôi tập trung nghiên cứu về cơ chế tìm kiếm và độhiệu quả của các Thuật toán tiến hoa da muc tiêu trên NAS
1.22 Mục tiêu
Dựa vào phạm vi nghiên cứu đã được trình bày, mục tiêu của chúng tôi đặt ra khi
thực hiện khóa luận này là øâne cao hiệu suất của các Thuật toán tiến hóa đa mục
tiêu trên bài toán NAS đa mục tiêu.
1.3 Nội dung thực hiện
Để hoàn thành mục tiêu đặt ra, chúng tôi đã thực hiện những nội dung sau đây:
¢ Tim hiểu các công trình nghiên cứu về các hướng tiếp cận hiện tại trên NAS.
Trang 26Chương 1 TỔNG QUAN 7
© Dé xuất các phương pháp nâng hiệu suất của thuật toán tiến hóa đa mục tiêu
trên NAS.
¢ Tìm hiểu các bộ dữ liệu benchmark được sử dụng để xây dựng các bài toán
đánh giá độ hiệu quả của một thuật toán trên NAS.
© Xây dung các bài toán Tối ưu hóa đa mục tiêu dựa trên các bộ dữ liệu
bench-mark.
¢ Tiến hành thực nghiệm trên các bài toán NAS được xây dựng và đánh giá độ
hiệu quả của các phương pháp dé xuất.
14 Đóng góp của khóa luận
Từ những kết quả đạt được trong quá trình thực nghiệm, thông qua khóa luận này,
chúng tôi có những đóng góp sau đây:
© Đề xuất hai phương pháp giúp nâng cao hiệu suất của thuật toán tiền hóa đa
mục tiêu trên bài toán NAS.
© Cung cấp thông tin chỉ tiết về các bộ dữ liệu benchmark được sử dụng để xâydựng các bài toán đánh giá hiệu suất của một thuật toán trên NAS
© Cung cấp mã nguồn thực nghiệm |
1.5 Cấu trúc khóa luận
Khóa luận của chúng tôi bao gồm 5 chương chính:
° Chương} Tổng quan.
° Chương|} Các công trình liên quan và kiến thức nên tảng.
* Chương] Các phương pháp đề xuất.
* Chương Thực nghiệm
?Link: https: //github com/FanKuan44/Fina1Project_
Trang 27Chương 1 TỔNG QUAN
* Chương B| Kết luận và hướng phát triển.
Trang 28suốt khóa luận này Phần rình bày một vài công trình nghiên cứu tiêu biểu ở
một vài hướng, tiếp cận hiện tại trên NAS Ngoài ra, đặc điểm của một bài toán Tối
ưu hóa đa mục tiêu và cơ chế hoạt động tổng quát của các Thuật toán tối ưu hóa đamục tiêu sẽ được trình bay ở pha
2.1 Các công trình liên quan
2.1.1 Sử dụng mô hình thay thế trên NAS
Khi giải quyết bài toán Tìm kiếm kiến trúc mang neural (NAS), kết quả mong muốn
là tìm thay kiến trúc đem lại hiệu suất tốt nhất khi sử dụng kiến trúc đó để giải quyết
một tác vụ cụ thể Tuy nhiên, việc đánh giá toàn bộ kiến trúc trong không gian tìmkiếm là bất khả thi bởi điều này đòi hỏi chúng ta phải sử dụng một lượng lớn tài
nguyên tính toán và hao tốn rất nhiều thời gian Một hướng tiếp cận được dé xuất
để giải quyết vấn đề trên là Dự đoán hiệu suất - phương pháp dự đoán độ chính xáccủa các kiến trúc thay vì thực sự tiến hành huấn luyện và đánh giá Mục tiêu của
phương pháp này là giảm thiểu lượng tài nguyên hao phí những vẫn đạt được các
kết quả chấp nhận được Để nâng cao độ hiệu quả thực nghiện trên NAS, rất nhiều
Trang 29Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 10
nghiên cứu khác nhau đã dự đoán độ chính xác của các
mô hình thay thé (Surrogate Model, viết tat: SM) |
O kiến trúc được huần luyén Q
' ] ` kiến trúc được dự đoán , `
HINH 2.1: Cơ chế sử dung mô hình thay thé trong PNAS
PNAS sử dụng SM để dự đoán độ chính xác của các kiến trúc phức tạp hơn
so với các kiến trúc dùng để huấn luyện mô hình Hình2.1}minh hoa cơ chế sử dung
SM trong (4) Đầu tiên, khởi tạo một số lượng các kiến trúc sao cho các kiếntrúc này là đơn giản nhất (số lượng cells trong kiến trúc là 1) Các kiến trúc này
1Ảnh được lay từ [14].
Trang 30Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 11
sẽ được huấn luyện, đánh giá độ chính xác và được sử dụng làm dữ liệu để huấnluyện SM Sau đó, các kiến trúc mới hơn được tìm kiếm bằng cách tăng độ phức tạp(tăng số lượng cells) của các kiến trúc hiện tại Lúc này, thay vì được huấn luyện vàđánh giá như các kiến trúc trước đó, độ chính xác của các kiến trúc này sẽ được dựđoán bằng SM Sau khi quá trình dự đoán kết thúc, sẽ chọn ra những kiến trúc
có độ chính xác dự đoán cao nhất và huấn luyện, đánh giá chúng để thu thập độ
chính xác thực sự Độ chính xác của các kiến trúc này sẽ được sử dụng để điều chỉnh
tham số của mô hình Chu trình này được thực hiện liên tục đến khi số lượng cellstrong kiến trúc là lớn nhất Trong MetaQNN ia , SM được khởi tao và huấn luyện
bằng một bộ dir liệu hỗn hợp (tức là, bộ dữ liệu này bao gồm nhiều bộ dữ liệu khác
nhau tách nhỏ) trước khi tiền hành tìm kiếm Trong quá trình tìm kiếm, thay vì đượchuấn luyện một cách hoàn chỉnh, các ién trúc được cham đứt sớm quá trình huấnluyện và độ chính xác cuối cùng của ién trúc được SM dự đoán Once-For-All
xây dựng SM là một supernet chứa tat cả các kiến trúc trong không gian tìm kiếm vàtham số của chúng Quá trình xây dựng SM trong [5] được minh họa trong hình |2.2]Đầu tiên, hình thành một kiến trúc sao cho kiến trúc này có kích thước kernel,chiều sâu, chiều rộng là lớn nhất Kiến trúc này sẽ được tiến hành huấn luyện vàđược sử dụng để tạo ra các kiến trúc nhỏ hơn bằng cách giảm giá trị của các đặcđiểm kiến trúc Thay vì được huấn luyện và đánh giá, tham số của các kiến trúc conđược thiết lập bằng cách tinh chỉnh tham số của các kiến trúc lớn hơn nó Sau khi
toàn bộ các kiến trúc trong không gian tìm kiếm đã được duyệt qua, quá trình xây
2Anh được lay từ [5]
Trang 31Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 12
Trong khóa luận này, chúng tôi dé xuất một cơ chế sử dung SM khác hoàn toàn so
với các cơ chế ở các nghiên cứu trước đây Ở và [1|, việc sử dụng SM để dự đoán
độ chính xác của các kiến trúc phức tạp hơn so với các kiến trúc trong bộ dữ liệu
huấn luyện là nguyên nhân chính gây ra độ tương quan thấp (low-correlation) giữa
giá trị dự đoán và giá trị thực Trong cơ chế sử dụng SM của chúng tôi, chúng tôi
đã áp dung một vài ý tưởng để khắc phục van đề này Đối với [5], vì huấn luyện SM
được diễn ra ngoại tuyến (offline) và phải duyệt qua toàn bộ kiến trúc trong khônggian tìm kiếm, hao tốn tài nguyên là điều không thể tránh khỏi Cụ thể, chỉ trên bộ
dữ liệu ImageNet, [5] đã sử dung 32 GPUs V100 và tốn 4.200 giờ để huấn luyện SM.
Ngoài ra, việc huân luyện ngoại tuyến khiến cho việc sử dung SM trên các bài toánkhác nhau rất khó khăn Ngược lại, mô hình thay thế của chúng tôi được huấn luyệntrực tuyến, tức là cùng lúc với quá trình tìm kiếm Chi tiết của cơ chế sử dụng SMđược chúng tôi đề xuất sẽ được trình bày ở chương sau
2.1.2 Áp dụng Thuật toán tiền hóa đa mục tiêu trên NAS
Khi NAS trở thành bài toán Tối ưu hóa đa mục tiêu, các Thuật toán tiến hóa đa mục
tiêu là một hướng tiếp cận hiệu quả trên NAS (các mục tiêu đối nghịch được táchbiệt thay vì tổng hợp lại thành một mục tiêu duy nhất) Bli2].
NSGA-Net sử dụng thuật toán Non-Sorting Genetic Algorithm II (NSGA-II)
để tối thiểu hóa độ lỗi phân lớp và độ phức tạp của kiến trúc trên cả hai cấp độ củaNAS Bên cạnh việc giữ nguyên và sử dụng cơ chế tìm kiếm của NSGA-I, ở cuối mỗithé hệ của NSGA-II, sử dụng thêm một thuật toán tối ưu hóa Bayesian (Bayesian
Optimization Algorithm) để tìm ra sự liên hệ giữa các cells hoặc các operators của
các kiến trúc trong quân thể hiện tại và sử dụng sự liên hệ này trong quá trình lai
ghép ở thé hệ sau Các bước thực hiện trong được mô tả trong hình|2.3] Ở một
nghiên cứu khác, NSGA-Net-V2 cũng giữ nguyên bộ khung của NSGA-II và áp
dụng trên NAS Khác v | quá trình tìm kiếm trong được thực hiện nhiều
lần thay vì một lần Ở mỗi lần tìm kiếm, thay vì huấn luyện và đánh giá các kiến
trúc trong quá trình tìm kiếm, [16] sử dụng một mô hình để dự đoán hiệu suất củacác kiến trúc đó Khi kết thúc một quá trình tìm kiếm, các kiến trúc tốt nhất sẽ được
sử dụng để cập nhật tham số của mô hình và cập nhật tập hợp chứa các kiến trúc
3 Ảnh được lấy từ
Trang 32Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 13
HINH 2.3: Các bước thực hiện “aoe trinh tim kiém trong NSGA-Net
tốt nhất ở tat cả các quá trình tìm kiếm Hình [2.4] minh họa toàn bộ quá trình tim kiếm trong {16} Tuy đạt được những kết quả tốt trên NAS nhưng chúng tôi nhận
thấy rằng kết quả này có thể được nâng cao hơn nữa bằng việc áp dụng thêm các kỹ
thuật hỗ trợ Do đó, chúng tôi đề xuất hai phương pháp để nâng cao hiệu suất của
các MOEAs trên bài toán NAS Chi tiết của các phương pháp này sẽ được trình bày
ở các chương sau.
2.2 Các kiến thức nên tang
2.2.1 Bài toán Tối ưu hóa đa mục tiêu
Trong cuộc sống, con người thường đứng trước nhiều sự lựa chọn khác nhau để giảiquyết một vấn dé gặp phải Chúng tôi giả định có một người muốn mua cho bảnthân một chiếc điện thoại mới Lúc này, họ phải lựa chọn giữa vô số các hãng điệnthoại có trên thị trường Để có thể đễ dàng cho việc quyết định, họ thường đặt racác tiêu chí để thu hẹp phạm vi lựa chọn Ví dụ, họ muốn một chiếc điện thoại có
giá tiền vừa phải nhưng camera mang lại những tắm hình chân thật Ở đây, tiêu chí
thứ nhất là giá tiền, tiêu chí thứ hai là chất lượng của camera Nếu như ban đầu,phạm vi lựa chọn là rất lớn thì bây giờ, phạm vi này đã được thu hẹp lại chỉ trongmột vài hãng điện thoại đáp ứng được các tiêu chí đặt ra Tình huống giả định bêntrên là một ví dụ vẻ bài toán Tối ưu hóa đa mục tiêu (Multi-objective OptimizationProblem, viết tắt: MOP) trong thực tế
Trang 33Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 14
Pate Chọn lựa các kiến xN
TU DƯ HC trúc tốt nhất trong | —>|_ Cập nhật mô hình
HINH 2.4; Toàn bộ quá trình tìm kiếm trong NSGA-Net-V2 [16].
Một MOP cơ bản sẽ bao gồm các hàm mục tiêu (objective function) cần được tối
ưu hóa (tối thiểu hóa hoặc tối đa hóa) Đôi khi, MOP sẽ có thêm các ràng buộc vẻmiễn giá trị đối với giá trị của hàm mục tiêu Tuy nhiên, trong khóa luận này, các bàitoán chúng tôi tiến hành thực nghiệm là các MOP không ràng buộc Do đó, những
nội dung chúng tôi trình bày sau đây là những đặc điểm của một MOP không ràng
buộc Ở dạng biểu thức toán học, một MOP có thể được trình bày như sau:
Tối thiểu hóa/tối đahóa F(x) = {fñ1(#), fin(x) }, với m = 1,2, ,M (2.1)
Trong biểu thức|2.1| một giải pháp x € R”, với R” là không gian biến quyết định
(decision space) được biểu diễn bằng một véc-tơ chứa n biến quyết định (decision
variable): x = (x1, x2„ , Xn) Các giải pháp này tạo nên một tập hợp trong R” được
gọi là tập khả thi S (feasible set) Với mỗi giải pháp trong S, tồn tại một điểm z € Z
biểu diễn giải pháp x tương ứng trong không gian mục tiêu (objective space) Mỗi
Trang 34Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 15
điểm z được biểu diễn: z = (21, Z2, , Zm), Vm = 1, 2, , M Trong đó, M là số lượng
hàm mục tiêu và z„ là giá trị tương ứng của hàm mục tiêu fn (x).
Khi giải quyết một bài toán Tối ưu hóa đơn mục tiêu, kết quả chúng ta đạt được
là một giải pháp có giá trị tối ưu ở mục tiêu đặt ra Vì thế, chúng ta cũng kì vọng
sẽ đạt được một giải pháp có thể tối ưu đồng thời tất cả các mục tiêu khi giải quyếtMOP Tuy nhiên, các mục tiêu trong MOP thường đối nghịch với nhau Nếu chúng
ta cải thiện giá trị ở một mục tiêu, các mục tiêu còn lại có thể trở nên tệ hơn Lấy
ví dụ trong tình huống giả định bên trên, chúng ta không thể mua được chiếc điệnthoại giá cực rẻ mà sở hữu camera có chất lượng tốt nhất Vì vậy, chúng ta không thể
tìm ra một giải pháp có thể tối ưu đồng thời tất cả các mục tiêu Do đó, kết quả của
MOP là một tập hợp chứa các giải pháp được gọi là tập tối ưu Pareto Trong tập tối
ưu Pareto, không tồn tại sự tốt hơn giữa hai giải pháp bắt kì Để làm rõ khái niệm về
giải pháp tối ưu Pareto và tập tối ưu Pareto, chúng tôi cung cấp hai định nghĩa sau
tối ưu Pareto (Pareto-optimal front, kí hiệu: Pr) Ở dạng biểu thức toán học, tập tối
#Kí hiệu # ở đây có nghĩa là "không tệ hon"
ŠKí hiệu > ở đây có nghĩa là "tốt hơn"
Trang 35Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 16
Pareto Pr Mặt khác, các điểm màu xanh biểu diễn cho các giải pháp bị
thống trị Có thể thấy, giải pháp A thống trị giải pháp D vì giá trị ƒ(2)
và AA) nhỏ hon so với giá tri 4P) và RB Tuy nhiên, chúng ta không, thể kết luận giải pháp E thống trị giải pháp C hay ngược lại vì f( <
(E) va AC) E fe Tương tự, chúng ta có thé kết luận giải pháp B thống
trị giải pháp E vi fl?) < fl? va 4P) < 4,
ưu Pareto và biên tối ưu Pareto được biểu diễn như sau:
Ps = {xe R"\Ay © R",u> x}.
Pr = {z(x)|x € R"}.
Hinh[2.5| minh họa biên tối ưu Pareto và các loại giải pháp khác nhau của bài toántối thiểu hóa đồng thời hai mục tiêu
Trong một vài bài toán, đôi khi ta không thể xác định được chính xác biên tối ưu
Pareto Do đó, thông thường mục tiêu của các phương pháp được áp dụng để giải
quyết MOPs là tìm ra tập hợp các giải pháp sao cho chúng tạo thành một biên xap xi
Pareto (Pareto-approximate front, kí hiệu: S) trên không gian mục tiêu thay vì biên
Trang 36Chương 2 CÁC CÔNG TRINH LIÊN QUAN VÀ KIEN THÚC NEN TANG 1
fo
— Pareto-optimal front
fi
HINH 2.6: Biên xấp xi Pareto trên không gian mục tiêu.
tối ưu Pareto Hinh[2.6)minh hoa biên xấp xi Pareto va biên tối uu Pareto trên không
gian muc tiéu.
2.2.2 Thuật toán tiến hóa da mục tiêu
Hình E.7|mô tả quy trình thực hiện tổng quát của các Thuật toán tiến hóa đa mụctiêu Trong MOEA, một cá thể tương ứng với một giải pháp trong không gian tìmkiếm Quá trình tìm kiếm của MOEA bắt đầu bằng việc khởi tạo một quan thé va
đánh giá độ thích nghỉ của các cá thé trong đó Ở các thé hệ tiếp theo, trong mỗi
thế hệ, quần thể sẽ thực hiện một chuỗi các toán tử di truyền (genetic operator) baogồm: chọn lọc, lai ghép và đột biến Quá trình trên được diễn ra cho đến khi điềukiện dừng được thỏa mãn Điều kiện dừng có thể được xác định là cạn kiệt nguồntài nguyên tính toán hoặc tìm thấy toàn bộ biên tối ưu Pareto Pr Sau khi quá trìnhtìm kiếm kết thúc, MOEA sẽ chọn ra các cá thể không bị thống trị trong quần thểtương ứng với các giải pháp trên biên xấp xỉ Pareto S
Khi nghiên cứu để tìm ra một MOEA mới hoặc tìm cách cải thiện độ hiệu quảcủa các MOEAs trước đây, người ta thường dé xuất các cơ chế thực hiện mới của các
toán tử đi truyền hoặc áp dụng thêm các ý tưởng mới lên trên bộ khung tổng quát
Trang 37Chương 2 CÁC CÔNG TRÌNH LIÊN QUAN VÀ KIÊN THÚC NEN TANG 18
Khởi tạo quần thể
Sai
Chọn lọc, lai ghép,
đột biến
HÌNH 2.7: Quy trình thực hiện tổng quát của MOEAs.
ban đầu Lay ví dụ, ở thuật toán Non-dominated sorting genetic algorithm-II (71,
thay vì sử dung trực tiếp độ thích nghỉ để chon lọc, [7] đã dé xuất một cơ chế chọn
lọc dựa trên thứ hạng và độ đông đúc (crowding distance) của các cá thể Một ví dụ
khác, trong thuật toán Multi-objective Gene-pool Optimal Mixing Evolutionary (1L quân thể được chia thành các cụm và các toán tử di truyền được thực hiện trên mỗi
cụm dựa vào liên kết giữa các biến trong các cá thể trong cụm đó.
Như đã đề cập ở đầu chương, tiếp theo, chúng tôi sẽ trình bày chỉ tiết về một
thuật toán tiến hóa đa mục tiêu được chúng tôi sử dụng ở phần thực nghiệm:
Non-dominated Sorting Genetic Algorithm-II (viết tắt: NSGA-IIf}| Thuật toán NSGA-II
được đề xuất bởi K.Deb và các đồng nghiệp vào năm 2002, là phiên bản thứ hai của
thuật toán NSGA [23] Khi được sử dung dé giải một bài toán Tối ưu hóa đa mục
tiêu, quá trình hoạt động của NSGA-II được diễn ra như sau Khi bắt đầu tìm kiếm,
NSGA-II khởi tạo một quan thể P và đánh giá độ thích nghi F của các cá thể có trong
P Ở bước tiếp theo, quần thể P sẽ trải qua một chuỗi các toán tử đi truyền theo một
Từ phan này trở về sau, thuật toán "Non-dominated Sorting Genetic Algorithm-II" sẽ được gọi tắt là thuật toán "NSGA-II"
Trang 38Chương 2 CÁC CÔNG TRÌNH LIÊN QUAN VÀ KIÊN THÚC NEN TANG 19
trình tự cụ thể và liên tục trong nhiều thé hệ Đầu tiên, NSGA-II chọn lựa ngẫu nhiên các cá thể bố mẹ trong P và thực hiện phép lai ghép để tạo ra các cá thể con cái Tiếp
theo, phép đột biến sẽ được thực hiện trên các cá thể con cái vừa tạo ra Sau khi quá
trình đột biến kết thúc, các cá thể con cái sẽ được đánh giá F của chúng Sau đó,
NSGA-II sẽ sử dụng F của các cá thể bố me và con cái để tính toán thứ hang (rank)
và độ đông đúc (crowding distanceƑ] tương ứng Cuối cùng, dựa vào thứ hạng và
crowding distance, những cá thể tốt nhất sẽ được lựa chọn để tạo thành quần thể mới P’ Khi quá trình tìm kiếm kết thúc, NSGA-II sẽ tập hợp những cá thể không bi thống trị trong quan thể P hiện tại Các cá thé này tương ứng với các giải pháp của bài toán yêu cầu.
fr
@ : hang 0
@ : hang 1
aa
HINH 2.8: Thứ hang của các cá thể sau khi đã được xác định Chúng ta
có thể thấy các cá thể màu đỏ không bị thống trị bởi cá thể nào nên thứ
hạng của các cá thể này bằng 0 Các cá thể màu xanh chỉ bị thống trị bởi
các cá thể màu đỏ, nhưng vì chúng ta đã xếp hạng cho các cá thể màu
đỏ nên lúc này, giá trị của các cá thể màu xanh bằng 0 Do đó, các cá
thể xanh được có thứ hạng là 1 Tương tự, thứ hạng của các cá thể màu
và crowding distance Kĩ thuật để xác định thứ hạng và crowding distance của các
cá thể được trình bày trong [7] như sau:
7Từ phan này về sau, từ "độ đông đúc" sẽ được thay thé bằng từ "crowding distance".