Thuật ngữ

Thuật toán tiến hóa

Khám phá cách Thuật toán tiến hóa tối ưu hóa các giải pháp AI và ML, từ điều chỉnh siêu tham số đến robot, sử dụng các chiến lược lấy cảm hứng từ thiên nhiên.

Thuật toán Tiến hóa (EA) là một tập hợp con thú vị của trí tuệ nhân tạohọc máy , sử dụng các nguyên lý tiến hóa sinh học để giải quyết các bài toán tối ưu hóa phức tạp. Lấy cảm hứng từ chọn lọc tự nhiên của Darwin, các thuật toán này liên tục tinh chỉnh một tập hợp các giải pháp ứng viên để tìm ra kết quả tốt nhất có thể. Thay vì chỉ sử dụng một giải pháp duy nhất, EA duy trì một nhóm đa dạng các câu trả lời tiềm năng, cho phép chúng khám phá một không gian tìm kiếm rộng lớn và tránh bị mắc kẹt trong các giải pháp không tối ưu, một vấn đề thường gặp với các thuật toán tối ưu hóa khác.

Thuật toán tiến hóa hoạt động như thế nào

Quá trình cốt lõi của EA mô phỏng quá trình tiến hóa tự nhiên thông qua một số bước chính:

  1. Khởi tạo: Thuật toán bắt đầu bằng cách tạo ra một quần thể ban đầu gồm các giải pháp ứng viên ngẫu nhiên.
  2. Đánh giá độ phù hợp: Mỗi giải pháp trong quần thể được đánh giá bằng một hàm độ phù hợp , đo lường mức độ giải quyết vấn đề mục tiêu của giải pháp đó. Ví dụ, khi huấn luyện một mô hình thị giác máy tính , độ phù hợp có thể được đo bằng độ chính xác của mô hình.
  3. Chọn lọc: Những cá thể "khỏe mạnh nhất" được chọn để trở thành "cha mẹ" cho thế hệ tiếp theo. Bước này tương tự như "sự sống còn của những cá thể khỏe mạnh nhất".
  4. Sinh sản (lai ghép và đột biến): Các cá thể bố mẹ được chọn tạo ra thế hệ con. Lai ghép kết hợp các phần của hai giải pháp bố mẹ để tạo ra một giải pháp mới, trong khi đột biến tạo ra những thay đổi nhỏ, ngẫu nhiên cho một giải pháp. Các hoạt động này tạo ra các biến thể mới cho quần thể, thúc đẩy việc tìm kiếm các giải pháp tốt hơn.
  5. Kết thúc: Chu trình này lặp lại qua nhiều thế hệ cho đến khi tìm được giải pháp thỏa đáng hoặc đạt được tiêu chí dừng được xác định trước (như số thế hệ).

Các loại EA phổ biến bao gồm Thuật toán di truyền (GA) , Lập trình di truyền, Chiến lược tiến hóa (ES) và Tiến hóa khác biệt (DE).

Ứng dụng trong thế giới thực

EA rất linh hoạt và được sử dụng để giải quyết các vấn đề có không gian tìm kiếm lớn, phức tạp hoặc ít được hiểu rõ.

  • Điều chỉnh siêu tham số cho các mô hình học máy : Một trong những ứng dụng phổ biến nhất trong ML là tìm siêu tham số tối ưu (như tỷ lệ học tập hoặc kiến trúc mạng) cho một mô hình. Thư viện Ultralytics bao gồm một Tuner lớp học tận dụng EA để tự động tìm ra cài đặt tốt nhất cho việc đào tạo Siêu phân tích YOLO mô hình, một quá trình được trình bày chi tiết trong Hướng dẫn điều chỉnh siêu tham số. Điều này có thể được mở rộng hơn nữa bằng cách sử dụng các tích hợp như Ray Điều Chỉnh cho các thí nghiệm phân tán được quản lý bằng các công cụ như Trung tâm phân tích siêu dữ liệu.
  • Tối ưu hóa Thiết kế và Kỹ thuật: EA được sử dụng để tạo ra các thiết kế tối ưu cho các hệ thống phức tạp. Một ví dụ nổi tiếng là việc NASA sử dụng EA để thiết kế ăng-ten cho tàu vũ trụ ST5 của mình. Thuật toán này đã tạo ra một hình dạng ăng-ten mới lạ, hiệu quả cao mà các kỹ sư con người không thể hình dung được. Nguyên lý tương tự này cũng được áp dụng cho robot để cải tiến dáng đi và trong AI trong sản xuất để tối ưu hóa dây chuyền sản xuất.
  • AI trong Chăm sóc Sức khỏe : Trong y học, EA hỗ trợ các nhiệm vụ phức tạp như lên lịch làm việc cho nhân viên bệnh viện để giảm thiểu mệt mỏi hoặc tối ưu hóa kế hoạch xạ trị. Chúng cũng được sử dụng trong việc khám phá thuốc để tìm kiếm các phân tử có đặc tính trị liệu cụ thể trong không gian hóa học rộng lớn.

Thuật toán tiến hóa so với các khái niệm liên quan

Sẽ rất hữu ích nếu phân biệt EA với các mô hình AI liên quan khác:

  • Trí tuệ bầy đàn (SI) : Cả hai đều là phương pháp lấy cảm hứng từ tự nhiên, dựa trên quần thể. Tuy nhiên, EA tập trung vào việc cải thiện thế hệ thông qua chọn lọc, lai ghép và đột biến. Ngược lại, SI mô hình hóa hành vi tập thể của các tác nhân phi tập trung (như một đàn chim hoặc đàn kiến) tương tác trong một thế hệ duy nhất để giải quyết vấn đề.
  • Học Tăng cường (RL) : RL liên quan đến việc một tác nhân duy nhất học một chính sách tối ưu bằng cách tương tác với môi trường và nhận được phần thưởng hoặc hình phạt. Mặt khác, EA là các kỹ thuật tìm kiếm dựa trên quần thể, không nhất thiết yêu cầu môi trường tương tác hoặc tín hiệu phần thưởng rõ ràng theo cùng một cách.
  • Tối ưu hóa dựa trên Gradient : Các thuật toán như Stochastic Gradient Descent (SGD)Adam dựa vào việc tính toán gradient của hàm mất mát để cập nhật các tham số mô hình. EA không có gradient, điều này làm cho chúng rất hiệu quả đối với các bài toán không khả vi, không liên tục hoặc có nhiều tối ưu cục bộ.

Tham gia cộng đồng Ultralytics

Tham gia vào tương lai của AI. Kết nối, cộng tác và phát triển với những nhà đổi mới toàn cầu

Tham gia ngay
Liên kết đã được sao chép vào clipboard