I. Giới thiệu về kiến trúc mạng neural và thuật toán tiến hóa
Kiến trúc mạng neural (Neural Architecture Search - NAS) là một quy trình tự động hóa việc thiết kế các mạng neural, nhằm tìm ra các kiến trúc có hiệu năng cao. Thuật toán tiến hóa (Evolutionary Algorithm) được sử dụng để tối ưu hóa quá trình tìm kiếm này, giúp giảm thiểu chi phí tính toán. Bài toán NAS thường yêu cầu đánh giá nhiều kiến trúc ứng viên, điều này đòi hỏi nguồn tài nguyên lớn. Dự đoán hiệu năng (Performance Prediction) là một phương pháp giúp ước lượng hiệu năng của các kiến trúc mà không cần huấn luyện đầy đủ, từ đó giảm thiểu thời gian và chi phí.
1.1. Bài toán tìm kiếm kiến trúc mạng neural
Bài toán NAS là một phần của AutoML, tập trung vào việc tự động hóa quy trình thiết kế mạng neural. Mục tiêu chính là tìm ra các kiến trúc có hiệu năng cao mà không cần sự can thiệp thủ công. Các kiến trúc được tạo ra bằng NAS thường vượt trội so với các kiến trúc thiết kế thủ công trong các tác vụ như phân loại hình ảnh và phát hiện đối tượng.
1.2. Thuật toán tiến hóa trong NAS
Thuật toán tiến hóa như NSGA-II được sử dụng để giải quyết bài toán NAS đa mục tiêu. Các thuật toán này giúp tìm kiếm các kiến trúc tối ưu bằng cách đánh giá và chọn lọc các giải pháp dựa trên nhiều tiêu chí như độ chính xác và độ phức tạp. Phương pháp này giúp giảm thiểu chi phí tính toán và thời gian tìm kiếm.
II. 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
Bài toán tìm kiếm kiến trúc mạng neural đa mục tiêu (Multi-Objective NAS) liên quan đến việc tối ưu hóa nhiều tiêu chí cùng lúc, bao gồm hiệu năng và độ phức tạp của mạng. Mạng neural đa mục tiêu (Many-Objective NAS) mở rộng bài toán này bằng cách xem xét nhiều hơn hai tiêu chí. Tối ưu hóa mạng neural (Neural Network Optimization) là quá trình tìm kiếm các kiến trúc cân bằng giữa hiệu năng và độ phức tạp, phù hợp với các thiết bị có tài nguyên hạn chế.
2.1. Bài toán tối ưu hóa đa mục tiêu
Bài toán tối ưu hóa đa mục tiêu trong NAS yêu cầu cân bằng giữa độ chính xác và các chỉ số độ phức tạp như FLOPs, số lượng tham số và độ trễ. Thuật toán di truyền (Genetic Algorithm) như NSGA-II được sử dụng để tìm kiếm các giải pháp tối ưu trên nhiều tiêu chí.
2.2. Mô hình dự đoán hiệu năng
Mô hình dự đoán hiệu năng như Synaptic Flow được sử dụng để ước lượng hiệu năng của các kiến trúc mà không cần huấn luyện đầy đủ. Phương pháp này giúp giảm thiểu chi phí tính toán và thời gian tìm kiếm, đồng thời duy trì độ chính xác cao.
III. Phương pháp và kết quả thực nghiệm
Phương pháp TF-MaOENAS (Training-Free Many-Objective Evolutionary NAS) được đề xuất để 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. Phương pháp này sử dụng thuật toán tiến hóa kết hợp với các chỉ số dự đoán hiệu năng không qua huấn luyện. Kết quả thực nghiệm trên bộ benchmark NATS-Bench cho thấy các kiến trúc được tìm thấy có hiệu năng cạnh tranh và chi phí tính toán hợp lý.
3.1. Thiết lập thực nghiệm
Thực nghiệm được thực hiện trên bộ dữ liệu CIFAR-10, CIFAR-100 và ImageNet. Các kiến trúc được đánh giá dựa trên độ chính xác và các chỉ số độ phức tạp như FLOPs và số lượng tham số. Chỉ số IGD (Inverted Generational Distance) được sử dụng để đánh giá hiệu quả của các phương pháp.
3.2. Kết quả và phân tích
Kết quả cho thấy phương pháp TF-MaOENAS đạt được các kiến trúc có hiệu năng cao và độ phức tạp thấp. Các kiến trúc này có thể triển khai trên các thiết bị nhúng với tài nguyên hạn chế. Phương pháp này cũng giảm thiểu đáng kể thời gian và chi phí tính toán so với các phương pháp truyền thống.