10 điểm bởi GN⁺ 2023-11-29 | 3 bình luận | Chia sẻ qua WhatsApp
  • Công bố Keras 3.0 đã chính thức ra mắt, sau 5 tháng thử nghiệm beta công khai
  • Keras 3 là phiên bản được viết lại toàn diện để chạy workflow Keras trên JAX, TensorFlow và PyTorch
  • Cung cấp các tính năng mới cho huấn luyện và triển khai mô hình quy mô lớn

Chào mừng machine learning đa framework

  • Lợi ích của việc sử dụng Keras tập trung vào tốc độ phát triển cao, trải nghiệm người dùng, thiết kế API và khả năng gỡ lỗi dễ dàng
  • Đây là framework đã được kiểm chứng, được 2,5 triệu nhà phát triển lựa chọn, và được dùng trong các hệ thống ML quy mô lớn như xe tự lái Waymo và bộ máy gợi ý của YouTube
  • Keras 3 còn mang lại thêm các lợi ích như tối ưu hiệu năng mô hình, mở rộng các lựa chọn trong hệ sinh thái mô hình, và hỗ trợ song song mô hình quy mô lớn cũng như song song dữ liệu

API Keras 3 có thể dùng trên JAX, TensorFlow và PyTorch

  • Keras 3 triển khai toàn bộ API Keras và có thể dùng với TensorFlow, JAX và PyTorch
  • Mọi mô hình Keras chỉ sử dụng các layer tích hợp sẵn sẽ hoạt động ngay trên tất cả các backend được hỗ trợ
  • Các mô hình tf.keras hiện có cũng có thể chạy trực tiếp trên JAX và PyTorch

Viết layer, mô hình và metric đa framework

  • Keras 3 cho phép tạo các thành phần hoạt động giống nhau trên mọi backend, như layer tùy chỉnh, mô hình đã huấn luyện trước, v.v.
  • Thông qua namespace keras.ops, hệ thống cung cấp API NumPy tương thích giữa các backend và các hàm chuyên biệt cho mạng nơ-ron
  • Miễn là chỉ dùng keras.ops, các layer tùy chỉnh và metric sẽ hoạt động với cùng một đoạn mã trên JAX, PyTorch và TensorFlow

API phân tán mới cho song song dữ liệu quy mô lớn và song song mô hình

  • Cung cấp API phân tán mới để giải quyết bài toán sharding mô hình quy mô lớn
  • Tách riêng định nghĩa mô hình, logic huấn luyện và cấu hình sharding để có thể viết mô hình như thể đang chạy trên một thiết bị duy nhất
  • Cung cấp API giúp dễ dàng chỉ định layout sharding cho song song dữ liệu và song song mô hình

Mô hình đã huấn luyện trước

  • Cung cấp nhiều mô hình đã huấn luyện trước có thể dùng trong Keras 3
  • Tất cả các mô hình Keras Applications cùng các mô hình đã huấn luyện trước của KerasCV và KerasNLP đều hoạt động trên mọi backend

Hỗ trợ pipeline dữ liệu cross-framework trên mọi backend

  • Các mô hình Keras 3 có thể được huấn luyện bằng nhiều pipeline dữ liệu khác nhau bất kể sử dụng backend JAX, PyTorch hay TensorFlow

Tiết lộ độ phức tạp theo từng bước

  • API Keras tuân theo nguyên tắc thiết kế hỗ trợ nhiều workflow phù hợp với nhiều kiểu người dùng, từ workflow đơn giản đến tùy biến ở mức thấp

API không trạng thái

  • Mọi đối tượng Keras có trạng thái giờ đây đều có API không trạng thái để có thể dùng trong các hàm JAX

Chuyển từ Keras 2 sang Keras 3

  • Keras 3 có mức độ tương thích cao với Keras 2, và phần lớn người dùng có thể chuyển sang Keras 3 mà không cần thay đổi mã
  • Những codebase lớn hơn có thể cần một số thay đổi mã, nhưng đã có hướng dẫn migration đầy đủ để hỗ trợ việc chuyển đổi
  • Nếu muốn tiếp tục dùng Keras 2, có thể dùng gói tf_keras hoặc thiết lập biến môi trường TF_USE_LEGACY_KERAS để sử dụng Keras 2

Ý kiến của GN⁺

Điểm quan trọng nhất trong bài viết này là việc Keras 3.0 chính thức ra mắt cùng những tính năng mới mà nó mang lại cho các nhà phát triển. Keras 3.0 hoạt động trên nhiều backend như JAX, TensorFlow và PyTorch, đồng thời cải thiện khả năng huấn luyện và triển khai mô hình quy mô lớn, qua đó nâng cao đáng kể tính linh hoạt và hiệu quả của phát triển machine learning. Đây là tin tức rất đáng chú ý với cộng đồng machine learning, vì nó mở ra cơ hội để các nhà phát triển thử nghiệm và triển khai mô hình trong nhiều môi trường đa dạng hơn.

3 bình luận

 
cosine20 2023-12-05

Cá nhân tôi rất thích Keras, nên việc giờ đây có thể chạy nó với PyTorch làm backend thực sự là một tin rất đáng mừng.

 
imozart7 2023-11-30

Ồ, phiên bản Keras mới đã được công bố rồi nhỉ.

Mình mới chỉ học PyTorch thôi,
nhưng nghe nói rằng "các mô hình tf.keras hiện có cũng có thể chạy ngay trên JAX và PyTorch", nên khá tò mò không biết họ làm bằng cách nào~

 
kuroneko 2023-11-29

Ồ, Keras 3 đã ra mắt rồi nhỉ. +_+
Hy vọng cả việc phát triển lẫn huấn luyện mô hình sẽ trở nên dễ dàng hơn một chút.