Neural Architecture Search là gì? Những điều bạn cần biết về NAS 

Thứ tư, 30/11/2022-09:11
Học sâu đang được ứng dụng rộng rãi trong nhiều ngành công nghiệp. Tuy nhiên, việc phát triển các mạng lưới thần kinh sâu (DNN) hiệu suất cao cho quy trình sản xuất vẫn còn là một thách thức, đòi hỏi các kỹ năng và nguồn lực nâng cao. Và Neural Architecture Search nắm giữ chìa khóa để giải quyết vấn đề này. Bài viết này cung cấp thông tin cụ thể về NAS mà bạn cùng biết.

Neural Architecture Search là gì?

Khái niệm về Neural Architecture Search (NAS) liên quan đến thuật ngữ Deep Neural Network (DNN) - Mạng thần kinh sâu, nền tảng cơ bản nhất của mạng thần kinh (Neural Network).

DNN là những mô hình kiến ​​trúc mạnh mẽ nhưng rất khó và tốn thời gian để phát triển. Có rất nhiều cách để cấu trúc và sửa đổi một mạng thần kinh, trong đó, để tìm kiếm được kiến ​​trúc học sâu phù hợp nhất là một quá trình bao gồm nhiều lần lặp thử và sai. Neural Architecture Search (NAS) là giải pháp thay thế cho thiết kế DNN thủ công.

Nói chung, Neural Architecture Search là kỹ thuật giúp khám phá các mạng thần kinh tốt nhất cho một vấn đề nhất định. Nó tự động hóa việc thiết kế DNN, đảm bảo hiệu suất cao hơn và tổn kém thấp hơn so với kiến ​​trúc được thiết kế thủ công. NAS cũng nhanh hơn nhiều so với các quy trình thủ công truyền thống. 

Mục đích chính của Neural Architecture Search là chọn được kiến ​​trúc tối ưu từ nhiều kiến trúc phù hợp khác. Ví dụ phổ biến do NAS tạo ra là Mạng thần kinh tích chập (Vonvolutional Neural Network) - EfficientNet.


Ba thành phần tạo nên NAS là Không gian tìm kiếm (Search space), Chiến lược tìm kiếm (Search strategy), Chiến lược đánh giá (Evaluation strategy).
Ba thành phần tạo nên NAS là Không gian tìm kiếm (Search space), Chiến lược tìm kiếm (Search strategy), Chiến lược đánh giá (Evaluation strategy).

Neural Architecture Search hoạt động như thế nào? 

Neural Architecture Search là một lĩnh vực đang phát triển trong nghiên cứu học sâu (Deep Learning) nhằm cung cấp những mô hình và các ứng dụng tốt hơn. Tuy nhiên, quá trình phát triển NAS còn gặp rất nhiều thách thức. Để hiểu về cách hoạt động của Neural Architecture Search, trước tiên, cùng tìm hiểu về các thành phần của nó. 

NAS được xây dựng bởi 3 khối chính, có thể được phân loại là không gian tìm kiếm, chiến lược/thuật toán tìm kiếm và chiến lược đánh giá. Mỗi thành phần sẽ có phương pháp tiếp cận khác nhau:

  • Không gian tìm kiếm (Search space): Xác định các thao tác được sử dụng để thiết kế DNN.
  • Chiến lược tìm kiếm (Search strategy): Tối ưu hóa số liệu rất cần thiết trong chiến lược tìm kiếm và tối ươc tính hiệu suất.
  • Chiến lược đánh giá (Evaluation strategy): DNN sẽ được đánh giá hiệu suất của DNN, trước khi xây dựng và đào tạo.

Xác định không gian tìm kiếm

Trong không gian tìm kiếm của Neural Architecture Search, thuật toán NAS được sử dụng để xác định các loại kiến ​​trúc, thông qua một tập hợp các hoạt động gồm xác định cấu trúc tổng thể (khung) của mạng, loại đơn vị (các lớp) và khả năng kết nối giữa các lớp để tạo kiến ​​trúc.

Không gian tìm kiếm càng bao gồm nhiều yếu tố thì càng phức tạp và tính linh hoạt càng cao. Và đương nhiên khi không gian tìm kiếm mở rộng, chi phí cho quá trình tìm kiếm kiến ​​trúc tốt nhất cũng sẽ tăng lên. Các loại hoạt động được sử dụng trong bước này bao gồm các hoạt động tuần tự theo lớp, biểu diễn dựa trên ô, cấu trúc phân cấp, v.v.

Thiết kế chiến lược tìm kiếm

Trong chiến lược tìm kiếm, thuật toán NAS sẽ tiến hành thử nghiệm các mạng thần kinh khác nhau. Cách thức hoạt động là từ một mẫu tập hợp các “ứng cử viên” mạng, thuật toán sẽ tối ưu hóa các chỉ số hiệu suất của mô hình con, dưới dạng phần thưởng, để tạo đầu ra của các ứng cử viên kiến ​​trúc hiệu suất cao.

Có nhiều phương pháp giúp tối ưu hóa chiến lược tìm kiếm để mang lại lại kết quả tốt hơn, nhanh hơn và nhất quán. Các loại thuật toán tìm kiếm được sử dụng bao gồm tìm kiếm ngẫu nhiên, phương pháp tiến hóa thần kinh (Elsken và cộng sự, 2019), phương pháp tiếp cận Bayes (Mendoza và cộng sự, 2016) và học tăng cường (Zoph và Le, 2016).

  • Tìm kiếm ngẫu nhiên (Random Search): bao gồm một thuật toán NAS chọn ngẫu nhiên một kiến ​​trúc mạng thần kinh từ không gian tìm kiếm. Đây là phương phát tìm kiếm tốn kém bởi nó chiếm dụng lượng lớn GPU (lên đến hàng trăm đến hàng nghìn) cho một lần tìm kiếm tùy thuộc vào độ phức tạp của không gian tìm kiếm.
  • Học tăng cường (Reinforcement Learning): là kỹ thuật đào tạo các mô hình học máy. Theo đó, các mô hình sẽ tự tìm kiếm giải pháp dựa trên quá trình thử và sai, phần thưởng và hình phạt. Quá trình này cho phép mô hình ra quyết định trong môi trường phức tạp và học cách chọn kiến trúc tốt hơn cho NAS.
  • Tối ưu hóa Bayes: là một bộ kỹ thuật thường được sử dụng để tăng tốc quá trình tìm kiếm. Đây là phương pháp tiếp cận phổ biến nhằm tối ưu hóa siêu tham số. Ở cấp độ cao, nó bắt đầu bằng việc chọn và đánh giá ngẫu nhiên các kiến ​​trúc, sau đó dần điều chỉnh hướng tìm kiếm dựa trên kết quả đánh giá và thông tin thu thập được về hiệu suất của các kiến ​​trúc khác nhau. Tối ưu hoá Bayes cũng là phương pháp tiếp cập rất tốn kém.

Thiết lập chiến lược đánh giá

Trong quá trình NAS, thuật toán sẽ được huấn luyện, đánh giá, xác thực và so sánh hiệu suất trước khi chọn mạng thần kinh tối ưu. Quá trình đào tạo đầy đủ trên mỗi mạng nơ-ron thường đòi hỏi thời gian dài và tính toán cao.

Để giảm chi phí đánh giá các mô hình học sâu, một số chiến lược có thể được áp dụng bao gồm:

  • Hiệu suất tác vụ proxy
  • Ước tính hiệu suất có độ trung thực thấp -  thoát sớm sau một vài lần tham chiếu, đào tạo trên một tập hợp con dữ liệu, mô hình hoặc dữ liệu thu nhỏ
  • Thừa kế trọng lượng
  • Chia sẻ trọng lượng
  • Ngoại suy đường cong học tập
  • Hình thái mạng

Kết hợp tìm kiếm và đánh giá: Phương pháp tiếp cận một lần

Việc tiến hành độc lầm tìm kiếm và đánh giá rất tốn kém. Để giải quyết vấn đề này, một nhóm các phương pháp NAS khác đã được phát triển.

Efficient Neural Architecture Search (ENAS) của Pham và cộng sự (2018) là một ví dụ nổi bật về thuật toán một lần. Phương pháp này đạt được tốc độ tìm kiếm gấp 1000 lần so với các kỹ thuật trước đó.

Mặc dù các kỹ thuật NAS đang không ngừng phát triển và đã thành công trong việc giảm thiểu tài nguyên tính toán cần thiết và vượt trội hơn rất nhiều các kiến ​​trúc thủ công, nhưng nhìn chung, NAS vẫn rất phức tạp. 


Cách NAS hoạt động
Cách NAS hoạt động

Lợi ích: Tại sao nên sử dụng NAS?

Khi Mạng thần kinh sâu (DNN) ngày càng được ứng dụng phổ biến trong các ngành, nhu cầu triển khai DNN hiệu quả cũng theo đó tăng lên. Việc sử dụng Neural Architecture Search cho phép:

  • Tự động hóa quy trình thử nghiệm và lựa chọn kiến ​​trúc
  • Cho phép bạn dễ dàng đạt được kết quả với tốc độ suy luận và độ chính xác cao hơn 
  • Rút ngắn quy trình lặp lại và rườm rà để đưa các mô hình học sâu vào sản xuất 

Hạn chế của Neural Architecture Search

Như đã đề cập ở trên, NAS mang lại nhiều lợi ích cho các nhà khoa học dữ liệu đang tìm cách tối ưu hóa DNN và làm cho chúng hoạt động hiệu quả hơn. Tuy nhiên NAS vẫn còn khá nhiều hạn chế:

  • Đòi hỏi tài nguyên chuyên sâu: Các phương pháp NAS rất tốn kém về mặt tính toán vì có thể mất nhiều ngày và sức mạnh tính toán lớn để tìm ra mô hình tốt nhất.
  • Thời gian: Mặc dù các mô hình hiện đại đã chạy nhanh hơn nhiều so với trước đây, nhưng một số mô hình vẫn cần mất nhiều thời gian mới có thể tìm ra kiến ​​trúc tối ưu. 
  • Khó liên kết với thực tế: Các mô hình NAS được đào tạo dựa trên dữ liệu ngoại tuyến, do đó, khó có thể dự đoán chúng sẽ hoạt động như thế nào trên các kiến ​​trúc với dữ liệu thực.

NAS mang lại nhiều lợi ích nhưng vẫn phải đối mặt với nhiều hạn chế
NAS mang lại nhiều lợi ích nhưng vẫn phải đối mặt với nhiều hạn chế

Ví dụ về NAS

Neural Architecture Search là một trong những lĩnh vực học máy phát triển nhanh nhất. Một số lượng lớn các công trình nghiên cứu liên quan đến tự động hóa việc tìm kiếm các kiến ​​trúc mạng thần kinh trong các ngành công nghiệp và các vấn đề khác nhau. Một số ví dụ điển hình như:

  • Phát hiện đối tượng -  Xử lý hình ảnh của Zoph và cộng sự (2017)
  • Phân loại hình ảnh - Xử lý hình ảnh của Real và cộng sự (2019)
  • Tối ưu hóa siêu tham số - AutoML của Feurer và Hutter (2019)
  • Siêu học - AutoML của Vanchoren (2018)

Kết luận

Neural Architecture Search là một lĩnh vực đang phát triển mở rộng nhanh chóng trong thời đại mà tối ưu hóa và hiệu suất là hai yếu tố vô cùng quan trọng. Tính đến hiện tại,  vẫn còn một số khó khăn NAS phải vượt qua để trở thành bước chính thức trong thiết kế một dự án học sâu trong các ngành công nghiệp. Tuy nhiên, xu hướng phát triển công nghệ đã chỉ ra rằng những khó khăn này sẽ nhanh chóng biến mất nhờ sự xuất hiện của các phương pháp nhanh hơn và hoàn thiện hơn trong việc đánh giá kiến ​​trúc. Trong tương lai không xa, NAS sẽ mang lại sự linh hoạt hơn cho các ngành và với những công cụ này, các công ty sẽ có khả năng thích ứng với nhiều nhu cầu cụ thể hơn nữa.

Hy vọng bài viết đã cung cấp cho bạn những kiến thức lý thú về Neural Architecture Search (NAS). Theo dõi Meey Land để đọc thêm những thông tin công nghệ khác.

Theo: Reatimes.vn
Copy link
Chia sẻ:

Cùng chủ đề

Việc mất 10 tiếng để làm được AI hoàn thành trong 10 giây: Các sinh viên tài chính ngân hàng chuẩn bị mất việc?

Bitcoin trở thành tài sản có giá trị lớn thứ 8 toàn cầu

Mặt trái của AI: Tiêu thụ điện năng ở mức khổng lồ

Kỷ nguyên công nghệ gia tăng áp lực cạnh tranh giữa các doanh nghiệp bất động sản

Hé lộ 3 kênh podcast ‘giải ngố đầu tư’ dành cho người mới bắt đầu

Top 5 bóng hồng quyền lực trong làng công nghệ thế giới

5 tiêu chí tham gia cơ chế thử nghiệm cho vay ngang hàng - P2P Lending

Gen Z “sống chất” với phong cách tài chính 4.0: Luôn biết cách “tích tiểu thành đại”, “xung phong” lan tỏa tài chính số

Tin mới cập nhật

Cổ đông lo giá cổ phiếu giảm khi nhiều ngân hàng chia cổ tức

4 giờ trước

Trung tâm thương mại TP.HCM "đắt" khách thuê

4 giờ trước

Hà Nội có mức sống đắt đỏ nhất Việt Nam: Gia đình 4 người chi 30 triệu/tháng vẫn thấy thiếu

5 giờ trước

Bí quyết tạo prompt nhằm tận dụng sức mạnh của chatbot AI

5 giờ trước

Các công ty chứng khoán gia tăng sức nóng "cuộc đua" tăng vốn

5 giờ trước