TensorFlow Model Garden cung cấp các triển khai của nhiều mô hình học máy (ML) tiên tiến nhất để xử lý hình ảnh và ngôn ngữ tự nhiên (NLP), cũng như các công cụ quy trình làm việc để cho phép bạn nhanh chóng định cấu hình và chạy các mô hình đó trên các bộ dữ liệu tiêu chuẩn. Cho dù bạn đang tìm kiếm điểm chuẩn hiệu suất cho một mô hình nổi tiếng, xác minh kết quả của nghiên cứu được phát hành gần đây hay mở rộng các mô hình hiện có, Model Garden có thể giúp bạn thúc đẩy các ứng dụng và nghiên cứu ML của mình tiến lên.
Vườn mẫu bao gồm các tài nguyên sau dành cho nhà phát triển máy học:
- Các mô hình chính thức cho tầm nhìn và NLP, do các kỹ sư của Google duy trì
- Các mô hình nghiên cứu được xuất bản như một phần của tài liệu nghiên cứu ML
- Khung thử nghiệm đào tạo cho cấu hình đào tạo nhanh, khai báo của các mô hình chính thức
- Các hoạt động ML chuyên biệt để xử lý ngôn ngữ tự nhiên và tầm nhìn (NLP)
- Mô hình quản lý vòng lặp đào tạo với Orbit
Các tài nguyên này được xây dựng để sử dụng với khung TensorFlow Core và tích hợp với các dự án phát triển TensorFlow hiện tại của bạn. Tài nguyên Vườn Mô hình cũng được cung cấp theo giấy phép nguồn mở , vì vậy bạn có thể tự do mở rộng và phân phối các mô hình và công cụ.
Các mô hình ML thực tế cần nhiều tính toán để đào tạo và chạy, đồng thời có thể yêu cầu các bộ tăng tốc như Bộ xử lý đồ họa (GPU) và Bộ xử lý kéo căng (TPU). Hầu hết các mô hình trong Model Garden đã được đào tạo trên các bộ dữ liệu lớn bằng cách sử dụng TPU. Tuy nhiên, bạn cũng có thể đào tạo và chạy các mô hình này trên bộ xử lý GPU và CPU.
Mô Hình Vườn Mô Hình
Các mô hình máy học trong Vườn mẫu bao gồm mã đầy đủ để bạn có thể kiểm tra, đào tạo hoặc đào tạo lại chúng để nghiên cứu và thử nghiệm. Vườn Mẫu bao gồm hai loại mô hình chính: mô hình chính thức và mô hình nghiên cứu .
người mẫu chính thức
Kho lưu trữ Mô hình chính thức là một bộ sưu tập các mô hình hiện đại, tập trung vào tầm nhìn và xử lý ngôn ngữ tự nhiên (NLP). Các mô hình này được triển khai bằng API cấp cao TensorFlow 2.x hiện tại. Các thư viện mô hình trong kho lưu trữ này được tối ưu hóa để có hiệu suất nhanh và được các kỹ sư của Google tích cực duy trì. Các mô hình chính thức bao gồm siêu dữ liệu bổ sung mà bạn có thể sử dụng để định cấu hình nhanh các thử nghiệm bằng khung thử nghiệm đào tạo Vườn mẫu .
Mô hình nghiên cứu
Kho lưu trữ Mô hình nghiên cứu là một tập hợp các mô hình được xuất bản dưới dạng tài nguyên mã cho các tài liệu nghiên cứu. Các mô hình này được triển khai bằng cả TensorFlow 1.x và 2.x. Các thư viện mô hình trong thư mục nghiên cứu được hỗ trợ bởi chủ sở hữu mã và cộng đồng nghiên cứu.
Khung thí nghiệm đào tạo
Khung thử nghiệm đào tạo Vườn mẫu cho phép bạn nhanh chóng lắp ráp và chạy các thử nghiệm đào tạo bằng cách sử dụng các mô hình chính thức và bộ dữ liệu tiêu chuẩn. Khung đào tạo sử dụng siêu dữ liệu bổ sung có trong các mô hình chính thức của Vườn mẫu để cho phép bạn định cấu hình các mô hình một cách nhanh chóng bằng cách sử dụng mô hình lập trình khai báo. Bạn có thể xác định thử nghiệm đào tạo bằng các lệnh Python trong thư viện Mô hình TensorFlow hoặc định cấu hình đào tạo bằng tệp cấu hình YAML, như ví dụ này .
Khung đào tạo sử dụng tfm.core.base_trainer.ExperimentConfig
làm đối tượng cấu hình, chứa các đối tượng cấu hình cấp cao nhất sau đây:
-
runtime
: Xác định phần cứng xử lý, chiến lược phân phối và các tối ưu hóa hiệu suất khác -
task
: Xác định mô hình, dữ liệu đào tạo, tổn thất và khởi tạo -
trainer
: Xác định trình tối ưu hóa, vòng đào tạo, vòng đánh giá, tóm tắt và điểm kiểm tra
Để biết ví dụ hoàn chỉnh về cách sử dụng khung thí nghiệm đào tạo Vườn mẫu, hãy xem phần hướng dẫn Phân loại hình ảnh với Vườn mẫu . Để biết thông tin về khung thử nghiệm đào tạo, hãy xem tài liệu API Mô hình TensorFlow . Nếu bạn đang tìm kiếm một giải pháp để quản lý các vòng đào tạo cho các thử nghiệm đào tạo mô hình của mình, hãy xem Orbit .
Hoạt động ML chuyên biệt
Vườn Mô hình chứa nhiều hoạt động tầm nhìn và NLP được thiết kế đặc biệt để thực hiện các mô hình hiện đại chạy hiệu quả trên GPU và TPU. Xem lại tài liệu API của thư viện TensorFlow Models Vision để biết danh sách các hoạt động tầm nhìn chuyên biệt. Xem lại các tài liệu API Thư viện NLP của Mô hình TensorFlow để biết danh sách các hoạt động NLP . Các thư viện này cũng bao gồm các chức năng tiện ích bổ sung được sử dụng để xử lý dữ liệu tầm nhìn và NLP, đào tạo và thực thi mô hình.
Các vòng đào tạo với Orbit
Có hai tùy chọn mặc định để đào tạo các mô hình TensorFlow:
- Sử dụng chức năng Keras Model.fit cấp cao. Nếu mô hình và quy trình đào tạo của bạn phù hợp với các giả định của phương pháp Keras'
Model.fit
(giảm dần độ dốc tăng dần trên các lô dữ liệu), điều này có thể rất thuận tiện. - Viết một vòng đào tạo tùy chỉnh có hoặc không có máy ảnh. Bạn có thể viết một vòng lặp đào tạo tùy chỉnh bằng các phương thức TensorFlow cấp thấp như
tf.GradientTape
hoặctf.function
. Tuy nhiên, cách tiếp cận này yêu cầu rất nhiều mã soạn sẵn và không làm bất cứ điều gì để đơn giản hóa việc đào tạo phân tán.
Quỹ đạo cố gắng cung cấp tùy chọn thứ ba ở giữa hai thái cực này.
Orbit là một thư viện nhẹ, linh hoạt được thiết kế để giúp viết các vòng đào tạo tùy chỉnh trong TensorFlow 2.x dễ dàng hơn và hoạt động tốt với khung thử nghiệm đào tạo Model Garden . Orbit xử lý các tác vụ đào tạo mô hình phổ biến như lưu các điểm kiểm tra, chạy đánh giá mô hình và thiết lập viết tóm tắt. Nó tích hợp liền mạch với tf.distribute
và hỗ trợ chạy trên các loại thiết bị khác nhau, bao gồm phần cứng CPU, GPU và TPU. Công cụ Orbit cũng là nguồn mở , vì vậy bạn có thể mở rộng và điều chỉnh cho phù hợp với nhu cầu đào tạo mô hình của mình.
Hướng dẫn quỹ đạo có sẵn ở đây .