Bài giảng Tính toán tiến hóa - Bài 3: Genetic programming. Bài này cung cấp cho học viên những nội dung về: tổng quan Genetic Programming (GP); các toán tử của GP; biểu diễn cá thể; lai ghép; đột biến; đánh giá độ thích nghi;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
Genetic Programming PGS.TS Huỳnh Thị Thanh Bình Email: binhht@soict.hust.edu.vn Nội dung Tổng quan Genetic Programming (GP) Các tốn tử GP Ví dụ minh họa Tổng quan Genetic Programming Genetic Programming (Lập trình di truyền – GP) coi thuật toán di truyền đặc biệt Sơ đồ GP giống sơ đồ thuật toán GA Điểm khác biệt GA GP GA: Biểu diễn cá thể (nhiễm sắc thể) dạng chuỗi alen GP: Mỗi cá thể hàm số hay chương trình máy tính, biểu diễn dạng Mục tiêu GP tìm chương trình tối ưu tập khơng gian chương trình có thể, để thu hiệu suất cao Ưng dụng: Tối ưu kiến trúc mạng Neural… Tổng quan Genetic Programming Tại hệ, cá thể (hàm, chương trình) tiến hóa để tìm hàm số ẩn tối ưu, có độ lỗi thấp cho tốn Ví dụ: Tìm hàm số f(x) cho qua tất đỉnh A1, A2, A3, A4… Các toán tử GP Biểu diễn cá thể Lai ghép Đột biến Đánh giá độ thích nghi Biểu diễn cá thể Mỗi cá thể GP biểu diễn chương trình máy tính hay hàm ẩn cần tìm Để đảm bảo ngữ pháp chương trình, ta cần xác định hai tập: Tập kết thúc (terminal set) chứa biến, số, modun chương trình Tập hàm ( function set) chứa tất hàm tốn học dùng: +,-,*,/, exp, log, and , or, xor cấu trúc định if-then-else,… Biểu diễn cá thể Mỗi cá thể biểu diễn dạng cấu trúc Các nút cây: Chọn từ tập kết thúc Các nút cây: Chọn từ tập hàm Mỗi cá thể khởi tạo sau: Nút gốc: chọn ngẫu nhiên tập hàm Nút gốc: Chọn ngẫu nhiên tập hàm tập kết thúc Chọn tập kết thúc: Nút trở thành nút Chọn tập hàm: Nút nút Số lượng nhánh nút phụ thuộc vào hàm nút Biểu diễn cá thể - Ví dụ y := x * ln(a) + sin(z) / exp(-x) - 3.4 • Tập kết thúc: x, a, z, 3.4 • Tập hàm: *, +, - , /, ln, sin, exp Lai ghép Các phương pháp chọn lọc cha mẹ sử dụng giống GA Toán tử lai ghép GP: Chọn ngẫu nhiên cha mẹ tráo đổi chúng cho Lai ghép – Ví dụ 10 Đột biến 11 Các phương pháp đột biến GP Đột biến nút Đột biến nút kết thúc Đột biến đảo Đột biến phát triển Đột biến Gauss Đột biến cắt tỉa Đột biến - Đột biến nút 12 Thay hàm nút hàm khác tập hàm Đột biến - Đột biến nút kết thúc 13 Thay biến, nút biến, khác tập kết thúc Đột biến - Đột biến đảo 14 Chọn ngẫu nhiên nút đảo hai nút Đột biến - Đột biến phát triển 15 Chọn ngẫu nhiên nút thay tồn nút ngẫu nhiên khác Đột biến - Đột biến Gauss 16 Chọn ngẫu nhiên nút chứa số thêm giá trị nhiễu Gauss vào nút Đột biến - Đột biến cắt tỉa 17 Chọn ngẫu nhiên nút thay nút biến hay số ngẫu nhiên tập kết thúc Đánh giá độ thích nghi 18 Các cá thể đánh giá tập mẫu liệu giá trình hiệu suất trung bình thu mẫu sử dụng giá trị độ thích nghi Giả sử có tập mẫu X mẫu chứa ba giá trị đầu vào (a,x,z) giá trị đích y Độ thích nghi tính sau: Tính giá trị đầu y^ thu chương trình mà cá thể biểu diễn với đầu vào (a,x,z) Tính giá trị lỗi y^ so với y Độ sai số trung bình MSE toàn tập liệu xem tiêu chí để đánh giá độ thích nghi Ví dụ minh họa 19 GP tìm Activation Function tối ưu cho Deeplearning [1] Bước 1: Xác định tập kết thúc tập hàm Tập kết thúc: : 0, 1, 𝑥, −𝑥, 𝑥 , 𝑥 , 𝑥 , 𝑥, 𝑒 𝑥 , 𝑒 −𝑥 , logሺ1 + [1] Bingham, Garrett, William Macke, and Risto Miikkulainen "Evolutionary optimization of deep learning activation functions." arXiv preprint arXiv:2002.07224 (2020) (GECCO 2020) Ví dụ minh họa 20 Đột biến chương trình (min{1, cosh(x)})^3 ∗ σ(e x + arctan(x)) (min{1, cosh(x)})^3 ∗ |e x + arctan(x)| Ví dụ minh họa 21 Lai ghép Ví dụ minh họa- Kết thu 22 23 Thanks for your attention ...Nội dung Tổng quan Genetic Programming (GP) Các tốn tử GP Ví dụ minh họa Tổng quan Genetic Programming Genetic Programming (Lập trình di truyền – GP) coi thuật toán di truyền đặc biệt... Tổng quan Genetic Programming Tại hệ, cá thể (hàm, chương trình) tiến hóa để tìm hàm số ẩn tối ưu, có độ lỗi thấp cho tốn Ví dụ: Tìm hàm số f(x) cho qua tất đỉnh A1, A2, A3, A4… Các toán tử... diễn cá thể - Ví dụ y := x * ln(a) + sin(z) / exp(-x) - 3.4 • Tập kết thúc: x, a, z, 3.4 • Tập hàm: *, +, - , /, ln, sin, exp Lai ghép Các phương pháp chọn lọc cha mẹ sử dụng giống GA Toán tử lai