Ghi nhật ký các thí nghiệm Ultralytics YOLO sử dụng tích hợp MLflow
Khám phá cách tích hợp và ghi nhật ký MLflow có thể nâng cao các thí nghiệm Ultralytics YOLO của bạn, cho phép theo dõi vượt trội cho các ứng dụng thị giác máy tính.

Bạn có thể coi một dự án thị giác máy tính giống như một trò chơi ghép hình. Về cơ bản, bạn dạy máy tính hiểu dữ liệu hình ảnh bằng cách ghép các mảnh ghép lại với nhau, chẳng hạn như thu thập tập dữ liệu, huấn luyện model và triển khai nó. Khi mọi thứ khớp với nhau, bạn sẽ có một hệ thống có khả năng phân tích và hiểu rõ hình ảnh cũng như video một cách hiệu quả.
Tuy nhiên, giống như trò chơi ghép hình thực tế, không phải phần nào của dự án thị giác máy tính cũng đơn giản. Các tác vụ như theo dõi thử nghiệm (lưu giữ hồ sơ về cài đặt, cấu hình và dữ liệu của bạn) và ghi nhật ký (thu thập kết quả và các số liệu hiệu suất) có thể tốn rất nhiều thời gian và công sức. Mặc dù các bước này là chìa khóa để cải thiện và tinh chỉnh các model thị giác máy tính, đôi khi chúng có thể trở thành nút thắt cổ chai.
Đó là lúc các model Ultralytics YOLO và khả năng tích hợp với MLflow phát huy tác dụng. Các model như Ultralytics YOLO11 hỗ trợ hàng loạt các tác vụ thị giác máy tính, bao gồm phát hiện đối tượng, phân đoạn thực thể và phân loại hình ảnh. Những khả năng này cho phép tạo ra các ứng dụng thị giác máy tính thú vị. Việc có tùy chọn dựa vào các tích hợp như tích hợp MLflow cho phép các kỹ sư thị giác máy tính tập trung vào chính model thay vì bị cuốn vào các chi tiết vụn vặt.
Cụ thể, tích hợp MLflow đơn giản hóa quy trình bằng cách ghi nhật ký các số liệu, tham số và artifact khác nhau trong suốt quá trình huấn luyện. Trong bài viết này, chúng ta sẽ khám phá cách hoạt động của tích hợp MLflow, những lợi ích mà nó mang lại và cách bạn có thể sử dụng nó để tối ưu hóa quy trình làm việc với Ultralytics YOLO.
Link to this sectionMLflow là gì?#
MLflow là một nền tảng mã nguồn mở (được phát triển bởi Databricks) được thiết kế để hợp lý hóa và quản lý toàn bộ vòng đời của machine learning. Nó bao gồm quy trình phát triển, triển khai và bảo trì các model machine learning.
MLflow bao gồm các thành phần chính sau:
- Theo dõi thử nghiệm: Thành phần này tập trung vào việc ghi lại các chi tiết quan trọng như cài đặt model, kết quả và tệp tin cho mỗi lần chạy huấn luyện model. Nó giúp bạn so sánh các model, xem các thay đổi ảnh hưởng thế nào đến hiệu suất và tìm ra model tốt nhất.
- Model registry: Đây giống như một hệ thống lưu trữ cho các model của bạn, nơi bạn có thể theo dõi các phiên bản khác nhau và tổ chức chúng theo các giai đoạn như kiểm thử (testing), dàn dựng (staging) và sản xuất (production).
- Đóng gói dự án: MLflow giúp việc đóng gói các dự án machine learning của bạn trở nên dễ dàng, bao gồm mã nguồn, cài đặt và các công cụ cần thiết để chúng có thể được chia sẻ và sử dụng nhất quán giữa các nhóm và môi trường khác nhau.
- Triển khai model: MLflow cung cấp các công cụ để nhanh chóng triển khai các model đã huấn luyện của bạn đến những nơi như trạm làm việc (workstations) hoặc các nền tảng đám mây như AWS và Azure, giúp chúng sẵn sàng cho việc sử dụng thực tế.

Hình 1. Các thành phần của MLflow.
Các thành phần của MLflow giúp quy trình machine learning trở nên dễ dàng và quản lý hiệu quả hơn. Thông qua tích hợp này, Ultralytics cho phép sử dụng tính năng theo dõi thử nghiệm của MLflow để ghi nhật ký các tham số, số liệu và artifact trong khi huấn luyện các model YOLO. Việc theo dõi và so sánh các phiên bản model YOLO khác nhau trở nên đơn giản hơn.
Link to this sectionTích hợp MLflow giúp hợp lý hóa quá trình huấn luyện#
Sau khi đã nắm rõ MLflow là gì, hãy cùng đi sâu vào chi tiết của tích hợp MLflow và những tính năng mà nó cung cấp.
Tích hợp MLflow được xây dựng để làm cho quá trình huấn luyện trở nên hiệu quả và có tổ chức hơn bằng cách tự động theo dõi và ghi nhật ký các khía cạnh quan trọng trong các thử nghiệm thị giác máy tính của bạn. Nó hỗ trợ ba loại ghi nhật ký chính: số liệu, tham số và artifact.
Dưới đây là cái nhìn chi tiết hơn về từng loại ghi nhật ký:
- Ghi nhật ký số liệu (Metrics logging): Số liệu là các giá trị định lượng đo lường hiệu suất model của bạn trong quá trình huấn luyện. Ví dụ, các số liệu như độ chính xác (accuracy), precision, recall hoặc loss được theo dõi vào cuối mỗi epoch (một lần duyệt qua toàn bộ tập dữ liệu của bạn).
- Ghi nhật ký tham số (Parameter logging): Tham số là các cài đặt bạn xác định trước khi bắt đầu huấn luyện model, chẳng hạn như tốc độ học (learning rate), kích thước batch (số lượng mẫu được xử lý trong một bước huấn luyện) và số lượng epoch. Các tham số này ảnh hưởng đáng kể đến hành vi và hiệu suất của model.
- Ghi nhật ký artifact (Artifacts logging): Artifact là các đầu ra hoặc tệp tin được tạo ra trong quá trình huấn luyện. Điều này bao gồm các tệp thiết yếu như trọng số model (các giá trị số mà model của bạn học được trong quá trình huấn luyện), tệp cấu hình (lưu trữ các cài đặt huấn luyện) và các dữ liệu liên quan khác.

Hình 2. Các tính năng ghi nhật ký chính của tích hợp MLflow. Ảnh của tác giả.
Link to this sectionCách thức hoạt động của tích hợp MLflow#
Bạn có thể khám phá tài liệu của Ultralytics để xem hướng dẫn từng bước về việc kích hoạt tích hợp MLflow. Sau khi thiết lập, tích hợp này sẽ tự động theo dõi và ghi nhật ký các chi tiết quan trọng về các thử nghiệm huấn luyện của bạn như đã thảo luận ở trên. Điều này loại bỏ nhu cầu theo dõi thủ công và giúp bạn tập trung vào việc tinh chỉnh các model của mình.
Với tích hợp MLflow, tất cả các lần chạy huấn luyện của bạn đều được lưu trữ tại một nơi, giúp việc so sánh kết quả và đánh giá các cấu hình khác nhau trở nên dễ dàng hơn. Bằng cách so sánh các kết quả đã ghi lại, bạn có thể xác định các cấu hình hoạt động hiệu quả nhất và sử dụng những hiểu biết đó để cải thiện model của mình. Điều này đảm bảo quy trình làm việc của bạn hiệu quả hơn, được ghi chép tốt hơn và có khả năng tái lập cao hơn.
Cụ thể, mỗi phiên huấn luyện được tổ chức thành một thử nghiệm, đóng vai trò như một bộ chứa (container) cho nhiều lần chạy. Trong một thử nghiệm, bạn có thể xem tất cả các lần chạy liên quan, so sánh hiệu suất của chúng cạnh nhau và phân tích xu hướng giữa các cấu hình khác nhau.
Ví dụ, nếu bạn đang kiểm tra các tốc độ học hoặc kích thước batch khác nhau với Ultralytics YOLOv8, tất cả các lần chạy liên quan sẽ được nhóm dưới cùng một thử nghiệm để dễ dàng so sánh và phân tích, như được hiển thị bên dưới.

Hình 3. Bạn có thể xem các thử nghiệm sử dụng tích hợp MLflow.
Trong khi đó, ở cấp độ từng lần chạy, MLflow cung cấp thông tin chi tiết về phiên huấn luyện cụ thể. Bạn có thể xem các số liệu như accuracy, loss và precision qua từng epoch, kiểm tra các tham số huấn luyện được sử dụng (ví dụ: kích thước batch và tốc độ học), và truy cập các artifact được tạo ra như trọng số model và các tệp cấu hình. Những chi tiết này được lưu trữ theo định dạng có tổ chức, giúp bạn dễ dàng xem lại hoặc tái lập bất kỳ lần chạy nào.
Link to this sectionLựa chọn tích hợp MLflow: tại sao nó lại nổi bật#
Khi bạn xem qua tài liệu của Ultralytics và khám phá các tích hợp khả dụng, bạn có thể tự hỏi: Điều gì khiến tích hợp MLflow trở nên khác biệt và tại sao tôi nên chọn nó cho quy trình làm việc của mình?
Với các tích hợp như TensorBoard cũng cung cấp các công cụ để theo dõi số liệu và trực quan hóa kết quả, việc hiểu được những phẩm chất độc đáo giúp tích hợp MLflow trở nên nổi bật là rất quan trọng.
Dưới đây là lý do tại sao MLflow có thể là lựa chọn lý tưởng cho các dự án YOLO của bạn:
- Giao diện thân thiện với người dùng: Bảng điều khiển MLflow giúp dễ dàng xem các thử nghiệm, so sánh các lần chạy và phân tích kết quả, giúp bạn nhanh chóng xác định các cấu hình hoạt động hiệu quả nhất.
- Ghi nhật ký số liệu tùy chỉnh: Các kỹ sư thị giác máy tính có thể ghi nhật ký các số liệu tùy chỉnh bên cạnh các số liệu tiêu chuẩn, cho phép phân tích sâu hơn theo nhu cầu cụ thể của dự án.
- Hỗ trợ quy trình làm việc đa ngôn ngữ: MLflow tương thích với nhiều ngôn ngữ lập trình, bao gồm Python, R và Java, tạo điều kiện thuận lợi cho việc tích hợp vào các pipeline machine learning đa dạng.
Link to this sectionCác ứng dụng thực tế của YOLO11 và tích hợp MLflow#
Để hiểu rõ hơn về thời điểm bạn có thể sử dụng tích hợp MLflow, hãy xem xét một ứng dụng AI trong y tế nơi bạn cần huấn luyện YOLO11 để phát hiện khối u trong hình ảnh X-quang hoặc CT scan.
Trong trường hợp như vậy, tập dữ liệu sẽ bao gồm các hình ảnh y tế đã được chú thích. Bạn sẽ cần thử nghiệm với nhiều cấu hình khác nhau, chẳng hạn như điều chỉnh tốc độ học, kích thước batch và các kỹ thuật tiền xử lý hình ảnh, để đạt được độ chính xác tối ưu. Vì tầm quan trọng trong y tế là rất cao, đòi hỏi độ chính xác và tin cậy, việc theo dõi từng thử nghiệm thủ công có thể nhanh chóng trở nên không thể quản lý nổi.

Hình 4. Phát hiện khối u sử dụng Ultralytics YOLO11.
Tích hợp MLflow giải quyết thách thức này bằng cách tự động ghi nhật ký các tham số, số liệu và artifact của mọi thử nghiệm. Ví dụ, nếu bạn sửa đổi tốc độ học hoặc áp dụng chiến lược augmentation mới, MLflow sẽ ghi lại những thay đổi này cùng với các số liệu hiệu suất. Ngoài ra, MLflow lưu các trọng số model và cấu hình đã huấn luyện, đảm bảo rằng các model thành công có thể dễ dàng tái lập và triển khai.
Đây chỉ là một ví dụ về cách tích hợp MLflow nâng cao việc quản lý thử nghiệm trong các ứng dụng thị giác AI. Các tính năng tương tự áp dụng cho các ứng dụng thị giác máy tính khác, bao gồm:
- Xe tự lái: YOLO11 có thể được sử dụng để phát hiện và phân loại người đi bộ, phương tiện và biển báo giao thông trong thời gian thực nhằm cải thiện độ an toàn và hiệu quả cho các hệ thống xe tự lái.
- Phân tích bán lẻ: Các model phát hiện đối tượng có thể giám sát hành vi khách hàng, theo dõi vị trí sản phẩm và tối ưu hóa hàng tồn kho bằng cách phân tích hoạt động tại cửa hàng thông qua các luồng video.
- An ninh và giám sát: Các model có thể được huấn luyện để phát hiện các bất thường hoặc giám sát hoạt động theo thời gian thực tại các khu vực nhạy cảm để tăng cường an ninh.
Link to this sectionLợi ích của tích hợp MLflow#
Tích hợp MLflow với các model YOLO giúp việc quản lý các thử nghiệm machine learning trở nên dễ dàng và hiệu quả hơn. Bằng cách tự động hóa các tác vụ chính và giữ mọi thứ ngăn nắp, nó cho phép bạn tập trung vào việc xây dựng và cải thiện các model của mình. Dưới đây là cái nhìn về những lợi ích chính:
- Quy mô cho các dự án lớn: Nền tảng xử lý nhiều thử nghiệm và model một cách hiệu quả, giúp nó phù hợp với các nhóm lớn và quy trình làm việc phức tạp.
- Lịch sử thử nghiệm chi tiết: Nền tảng duy trì lịch sử đầy đủ của các thử nghiệm, cho phép bạn xem lại các lần chạy trước đó, phân tích các cấu hình cũ và học hỏi từ các kết quả trước đây.
- Các tùy chọn vô hiệu hóa và đặt lại: Ghi nhật ký MLflow có thể dễ dàng bị vô hiệu hóa khi không cần thiết và các cài đặt có thể được đặt lại về mặc định, mang lại sự linh hoạt để thích ứng với các yêu cầu công việc thay đổi.
Link to this sectionCác điểm chính cần lưu ý#
Tích hợp MLflow giúp việc quản lý và tối ưu hóa các thử nghiệm Ultralytics YOLO trở nên dễ dàng và hiệu quả hơn. Bằng cách tự động theo dõi các chi tiết quan trọng như tham số, số liệu và artifact, nó đơn giản hóa quy trình và loại bỏ những phiền phức trong việc quản lý thử nghiệm thủ công.
Cho dù bạn đang làm việc trên các giải pháp y tế như phát hiện khối u, cải thiện hệ thống xe tự lái hay nâng cao phân tích bán lẻ, tích hợp này giúp giữ mọi thứ ngăn nắp và có khả năng tái lập. Với giao diện trực quan và sự linh hoạt, MLflow cho phép các nhà phát triển tập trung vào việc xây dựng các model tốt hơn và thúc đẩy sự đổi mới trong các ứng dụng thị giác AI.
Hãy tham gia cộng đồng của chúng tôi và xem kho lưu trữ GitHub để tìm hiểu về AI. Bạn cũng có thể khám phá thêm các ứng dụng của thị giác máy tính trong sản xuất hoặc AI trong xe tự lái trên các trang giải pháp của chúng tôi.






