YOLO26 🚀 trên AzureML

Azure là gì?

Azure là nền tảng điện toán đám mây của Microsoft, được thiết kế để giúp các tổ chức di chuyển khối lượng công việc của họ lên đám mây từ các trung tâm dữ liệu tại chỗ. Với đầy đủ các dịch vụ đám mây bao gồm các dịch vụ về điện toán, cơ sở dữ liệu, phân tích, học máy và kết nối mạng, người dùng có thể lựa chọn từ các dịch vụ này để phát triển và mở rộng quy mô các ứng dụng mới, hoặc chạy các ứng dụng hiện có trên đám mây công cộng.

Azure Machine Learning (AzureML) là gì?

Azure Machine Learning, thường được gọi là AzureML, là một dịch vụ đám mây được quản lý toàn diện cho phép các nhà khoa học dữ liệu và nhà phát triển nhúng phân tích dự đoán vào ứng dụng của họ một cách hiệu quả, giúp các tổ chức sử dụng các tập dữ liệu khổng lồ và tận dụng mọi lợi ích của đám mây cho học máy. AzureML cung cấp nhiều dịch vụ và khả năng nhằm mục đích làm cho học máy trở nên dễ tiếp cận, dễ sử dụng và có khả năng mở rộng. Nó cung cấp các tính năng như học máy tự động, huấn luyện model kéo-và-thả, cũng như một Python SDK mạnh mẽ để các nhà phát triển có thể tận dụng tối đa các model học máy của họ.

AzureML mang lại lợi ích gì cho người dùng YOLO?

Đối với người dùng YOLO (You Only Look Once), AzureML cung cấp một nền tảng mạnh mẽ, có khả năng mở rộng và hiệu quả để cả huấn luyện lẫn triển khai các model học máy. Cho dù bạn đang muốn chạy các bản mẫu thử nghiệm nhanh hay mở rộng quy mô để xử lý khối lượng dữ liệu lớn hơn, môi trường linh hoạt và thân thiện với người dùng của AzureML đều cung cấp các công cụ và dịch vụ đa dạng để đáp ứng nhu cầu của bạn. Bạn có thể tận dụng AzureML để:

  • Dễ dàng quản lý các tập dữ liệu lớn và tài nguyên tính toán cho việc huấn luyện.
  • Sử dụng các công cụ tích hợp sẵn cho việc tiền xử lý dữ liệu, chọn lọc đặc trưng và huấn luyện model.
  • Cộng tác hiệu quả hơn với các khả năng về MLOps (Machine Learning Operations), bao gồm nhưng không giới hạn ở việc giám sát, kiểm định và lập phiên bản cho model và dữ liệu.

Trong các phần tiếp theo, bạn sẽ tìm thấy hướng dẫn bắt đầu nhanh chi tiết về cách chạy các model phát hiện đối tượng YOLO26 bằng AzureML, từ terminal tính toán hoặc từ notebook.

Điều kiện tiên quyết

Trước khi bắt đầu, hãy đảm bảo bạn có quyền truy cập vào một workspace AzureML. Nếu bạn chưa có, bạn có thể tạo một workspace AzureML mới bằng cách làm theo tài liệu chính thức của Azure. Workspace này đóng vai trò là nơi tập trung để quản lý tất cả các tài nguyên AzureML.

Tạo một compute instance

Từ workspace AzureML của bạn, chọn Compute > Compute instances > New, sau đó chọn instance với các tài nguyên bạn cần.

Create Azure Compute Instance

Bắt đầu nhanh từ Terminal

Khởi động compute của bạn và mở một Terminal:

Open Terminal

Tạo virtualenv

Tạo một môi trường ảo conda với phiên bản Python ưa thích của bạn và cài đặt pip trong đó. Python 3.13.1 hiện đang gặp vấn đề về phụ thuộc trong AzureML, vì vậy hãy sử dụng Python 3.12 thay thế.

conda create --name yolo26env -y python=3.12
conda activate yolo26env
conda install pip -y

Cài đặt các phụ thuộc cần thiết:

cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx

Thực hiện các tác vụ YOLO26

Dự đoán (Predict):

yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'

Huấn luyện một model phát hiện trong 10 epochs với learning_rate ban đầu là 0.01:

yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01

Bạn có thể tìm thêm hướng dẫn sử dụng CLI Ultralytics tại đây.

Bắt đầu nhanh từ một Notebook

Tạo một kernel IPython mới

Mở Terminal của compute.

Open Terminal

Từ terminal compute, tạo một ipykernel mới sử dụng Python 3.12 để notebook của bạn quản lý các phụ thuộc:

conda create --name yolo26env -y python=3.12
conda activate yolo26env
conda install pip -y
conda install ipykernel -y
python -m ipykernel install --user --name yolo26env --display-name "yolo26env"

Đóng terminal của bạn và tạo một notebook mới. Từ notebook, hãy chọn kernel vừa tạo.

Sau đó mở một ô (cell) notebook và cài đặt các phụ thuộc cần thiết:

%%bash
source activate yolo26env
cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx

Lưu ý rằng bạn cần chạy source activate yolo26env trong mỗi ô %%bash để đảm bảo ô đó sử dụng đúng môi trường dự kiến.

Chạy một vài dự đoán bằng CLI Ultralytics:

%%bash
source activate yolo26env
yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'

Hoặc với giao diện Python của Ultralytics, ví dụ để huấn luyện model:

from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")  # load an official YOLO26n model

# Use the model
model.train(data="coco8.yaml", epochs=3)  # train the model
metrics = model.val()  # evaluate model performance on the validation set
results = model("https://ultralytics.com/images/bus.jpg")  # predict on an image
path = model.export(format="onnx")  # export the model to ONNX format

Bạn có thể sử dụng CLI hoặc giao diện Python của Ultralytics để chạy các tác vụ YOLO26, như đã mô tả trong phần terminal ở trên.

Bằng cách làm theo các bước này, bạn có thể nhanh chóng chạy YOLO26 trên AzureML để thử nghiệm. Đối với các cách sử dụng nâng cao hơn, bạn có thể tham khảo tài liệu đầy đủ về AzureML được liên kết ở đầu hướng dẫn này.

Khám phá thêm với AzureML

Hướng dẫn này đóng vai trò là phần giới thiệu để giúp bạn bắt đầu chạy YOLO26 trên AzureML. Tuy nhiên, nó chỉ mới chạm đến bề nổi những gì AzureML có thể cung cấp. Để đi sâu hơn và mở khóa toàn bộ tiềm năng của AzureML cho các dự án học máy của bạn, hãy cân nhắc khám phá các tài nguyên sau:

  • Tạo Data Asset: Tìm hiểu cách thiết lập và quản lý các tài sản dữ liệu của bạn một cách hiệu quả trong môi trường AzureML.
  • Khởi tạo Job AzureML: Hiểu rõ toàn diện về cách bắt đầu các công việc huấn luyện học máy của bạn trên AzureML.
  • Đăng ký Model: Làm quen với các thực hành quản lý model bao gồm đăng ký, lập phiên bản và triển khai.
  • Huấn luyện YOLO26 với AzureML Python SDK: Khám phá hướng dẫn từng bước về việc sử dụng AzureML Python SDK để huấn luyện các model YOLO26 của bạn.
  • Huấn luyện YOLO26 với AzureML CLI: Khám phá cách sử dụng giao diện dòng lệnh để huấn luyện và quản lý các model YOLO26 trên AzureML một cách hợp lý.

Câu hỏi thường gặp (FAQ)

Làm thế nào để tôi chạy YOLO26 trên AzureML để huấn luyện model?

Việc chạy YOLO26 trên AzureML để huấn luyện model bao gồm một vài bước:

  1. Tạo một Compute Instance: Từ workspace AzureML của bạn, điều hướng đến Compute > Compute instances > New, và chọn instance cần thiết.

  2. Thiết lập môi trường: Khởi động compute instance, mở một terminal, và tạo một môi trường Conda. Thiết lập phiên bản Python của bạn (Python 3.13.1 chưa được hỗ trợ):

    conda create --name yolo26env -y python=3.12
    conda activate yolo26env
    conda install pip -y
    pip install ultralytics onnx
  3. Chạy các tác vụ YOLO26: Sử dụng CLI Ultralytics để huấn luyện model của bạn:

    yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01

Để biết thêm chi tiết, bạn có thể tham khảo hướng dẫn sử dụng CLI Ultralytics.

Lợi ích của việc sử dụng AzureML cho việc huấn luyện YOLO26 là gì?

AzureML cung cấp một hệ sinh thái mạnh mẽ và hiệu quả để huấn luyện các model YOLO26:

  • Khả năng mở rộng: Dễ dàng mở rộng quy mô tài nguyên tính toán khi dữ liệu và độ phức tạp của model tăng lên.
  • Tích hợp MLOps: Sử dụng các tính năng như lập phiên bản, giám sát và kiểm định để hợp lý hóa các hoạt động ML.
  • Cộng tác: Chia sẻ và quản lý tài nguyên trong nhóm, nâng cao hiệu quả làm việc cộng tác.

Những lợi thế này làm cho AzureML trở thành một nền tảng lý tưởng cho các dự án từ những bản mẫu nhanh cho đến việc triển khai quy mô lớn. Để biết thêm mẹo, hãy xem AzureML Jobs.

Làm thế nào để tôi khắc phục các vấn đề phổ biến khi chạy YOLO26 trên AzureML?

Khắc phục các vấn đề phổ biến với YOLO26 trên AzureML có thể bao gồm các bước sau:

  • Vấn đề phụ thuộc: Đảm bảo tất cả các gói cần thiết đã được cài đặt. Tham khảo tệp requirements.txt để biết các phụ thuộc.
  • Thiết lập môi trường: Xác minh rằng môi trường conda của bạn đã được kích hoạt chính xác trước khi chạy các lệnh.
  • Phân bổ tài nguyên: Đảm bảo các compute instance của bạn có đủ tài nguyên để xử lý khối lượng công việc huấn luyện.

Để được hướng dẫn thêm, hãy xem tài liệu Các vấn đề phổ biến với YOLO của chúng tôi.

Tôi có thể sử dụng cả CLI và giao diện Python của Ultralytics trên AzureML không?

Có, AzureML cho phép bạn sử dụng cả CLI và giao diện Python của Ultralytics một cách liền mạch:

  • CLI: Lý tưởng cho các tác vụ nhanh và chạy các tập lệnh tiêu chuẩn trực tiếp từ terminal.

    yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'
  • Giao diện Python: Hữu ích cho các tác vụ phức tạp hơn đòi hỏi việc viết code tùy chỉnh và tích hợp trong các notebook.

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.pt")
    model.train(data="coco8.yaml", epochs=3)

Để biết hướng dẫn từng bước, hãy tham khảo hướng dẫn bắt đầu nhanh CLIhướng dẫn bắt đầu nhanh Python.

Ưu điểm của việc sử dụng Ultralytics YOLO26 so với các model phát hiện đối tượng khác là gì?

Ultralytics YOLO26 cung cấp một số lợi thế độc đáo so với các model phát hiện đối tượng cạnh tranh:

  • Tốc độ: Thời gian suy luận và huấn luyện nhanh hơn so với các model như Faster R-CNN và SSD.
  • Độ chính xác: Độ chính xác cao trong các tác vụ phát hiện với các tính năng như thiết kế không cần anchor và các chiến lược tăng cường dữ liệu nâng cao.
  • Dễ sử dụng: API và CLI trực quan cho việc thiết lập nhanh, giúp người mới bắt đầu và các chuyên gia đều có thể tiếp cận.

Để khám phá thêm về các tính năng của YOLO26, hãy truy cập trang Ultralytics YOLO để có cái nhìn chi tiết.

Bình luận