Chuyển đến nội dung

YOLO11 🚀 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 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ụ dành cho điện toán, cơ sở dữ liệu, phân tích, học máy và mạng, người dùng có thể chọn từ các dịch vụ này để phát triển và mở rộng 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ý hoàn toàn, cho phép các nhà khoa học dữ liệu và nhà phát triển nhúng hiệu quả các phân tích dự đoán vào ứng dụng của họ, giúp các tổ chức sử dụng bộ dữ liệu khổng lồ và mang lại tất cả lợi ích của đám mây cho machine learning. AzureML cung cấp nhiều dịch vụ và khả năng khác nhau nhằm mục đích làm cho machine learning 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 khả năng như automated machine learning, kéo và thả để huấn luyện mô hình, 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 mô hình machine learning 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ả để đào tạo và triển khai các mô hình máy học. Cho dù bạn đang tìm cách chạy các nguyên mẫu nhanh hay mở rộng quy mô để xử lý 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 cung cấp nhiều công cụ và dịch vụ phù hợp với 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 để huấn luyện.
  • Sử dụng các công cụ tích hợp để tiền xử lý dữ liệu, chọn lọc đặc trưng và huấn luyện mô hình.
  • Cộng tác hiệu quả hơn với các khả năng dành cho MLOps (Machine Learning Operations), bao gồm nhưng không giới hạn ở việc giám sát, kiểm tra và kiểm soát phiên bản của các mô hình và dữ liệu.

Trong các phần tiếp theo, bạn sẽ tìm thấy hướng dẫn nhanh về cách chạy các mô hình phát hiện đối tượng YOLO11 bằng AzureML, từ thiết bị đầu cuối tính toán hoặc sổ tay.

Điều Kiện Tiên Quyết

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

Tạo một phiên bản tính toán

Từ không gian làm việc AzureML của bạn, hãy chọn Compute > Compute instances > New, chọn phiên bản có tài nguyên bạn cần.

Tạo Azure Compute Instance

Bắt đầu nhanh từ Terminal

Khởi động máy tính của bạn và mở Terminal:

Mở Terminal

Tạo virtualenv

Tạo conda virtualenv của bạn với phiên bản python yêu thích và cài đặt pip trong đó: Python 3.13.1 đang gặp một số vấn đề với một số dependency trong AzureML.

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

Cài đặt các dependencies 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ụ YOLO11

Dự đoán:

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

Huấn luyện mô hình phát hiện trong 10 epochs với initial learning_rate là 0.01:

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

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

Bắt đầu nhanh từ Notebook

Tạo một kernel IPython mới

Mở Compute Terminal.

Mở Terminal

Từ thiết bị đầu cuối tính toán của bạn, bạn cần tạo một ipykernel mới (với một phiên bản python cụ thể - vì Python 3.13.1 đang gặp một số vấn đề với một số phần phụ thuộc trong AzureML) sẽ được notebook của bạn sử dụng để quản lý các phần phụ thuộc của bạn:

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

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

Sau đó, bạn có thể mở một ô Notebook và cài đặt các dependency cần thiết:

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

Lưu ý rằng chúng ta cần sử dụng source activate yolo11env cho tất cả các ô %%bash, để đảm bảo rằng ô %%bash sử dụng môi trường mà chúng ta muốn.

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

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

Hoặc với giao diện Ultralytics Python, ví dụ: để huấn luyện mô hình:

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load an official YOLO11n 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 Ultralytics CLI hoặc giao diện Python để chạy các tác vụ YOLO11, như được mô tả trong phần terminal ở trên.

Bằng cách làm theo các bước này, bạn sẽ có thể chạy YOLO11 một cách nhanh chóng trên AzureML để thử nghiệm nhanh. Để sử dụng nâng cao hơn, bạn có thể tham khảo tài liệu AzureML đầy đủ đượ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 thiết lập và chạy YOLO11 trên AzureML. Tuy nhiên, nó chỉ đề cập đến một phần nhỏ những gì AzureML có thể cung cấp. Để tìm hiểu sâu hơn và khai thác toàn bộ tiềm năng của AzureML cho các dự án máy học của bạn, hãy cân nhắc khám phá các tài nguyên sau:

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

Làm cách nào để chạy YOLO11 trên AzureML để huấn luyện mô hình?

Việc chạy YOLO11 trên AzureML để huấn luyện mô hình bao gồm một số bước:

  1. Tạo một phiên bản tính toán: Từ không gian làm việc AzureML của bạn, hãy điều hướng đến Tính toán > Phiên bản tính toán > Mới và chọn phiên bản cần thiết.

  2. Thiết lập Môi trường: Khởi động phiên bản máy tính của bạn, mở một terminal và tạo một môi trường conda, và đừng quên đặt phiên bản python của bạn (python 3.13.1 chưa được hỗ trợ) :

    conda create --name yolo11env -y python=3.12
    conda activate yolo11env
    conda install pip -y
    pip install ultralytics onnx
    
  3. Chạy các tác vụ YOLO11: Sử dụng Ultralytics CLI để huấn luyện mô hình của bạn:

    yolo train data=coco8.yaml model=yolo11n.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 Ultralytics CLI.

Những lợi ích của việc sử dụng AzureML để huấn luyện YOLO11 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 mô hình YOLO11:

  • Khả năng mở rộng: Dễ dàng mở rộng tài nguyên tính toán khi dữ liệu và độ phức tạp của mô hình tăng lên.
  • Tích hợp MLOps: Sử dụng các tính năng như kiểm soát phiên bản, giám sát và kiểm toán để 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 quy trình làm việc cộng tác.

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

Làm cách nào để khắc phục các sự cố thường gặp khi chạy YOLO11 trên AzureML?

Khắc phục sự cố thường gặp với YOLO11 trên AzureML có thể bao gồm các bước sau:

  • Các vấn đề về phần phụ thuộc: Đảm bảo tất cả các package (gói) cần thiết đã được cài đặt. Tham khảo requirements.txt tệp cho các dependency.
  • 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 lệnh.
  • Phân bổ Nguồn lực: Đảm bảo các phiên bản máy tính của bạn có đủ tài nguyên để xử lý khối lượng công việc đào tạo.

Để được hướng dẫn thêm, hãy xem lại tài liệu Các Vấn đề Thường gặp về YOLO của chúng tôi.

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

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

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

    yolo predict model=yolo11n.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 code tùy chỉnh và tích hợp trong notebook.

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

Để có hướng dẫn từng bước, hãy tham khảo hướng dẫn nhanh về CLIhướng dẫn nhanh về Python.

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

Ultralytics YOLO11 mang lại một số lợi thế độc đáo so với các mô hình 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 mô hình 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 nhờ các tính năng như thiết kế không cần neo và các chiến lược tăng cường nâng cao.
  • Dễ sử dụng: API và CLI trực quan để thiết lập nhanh chóng, giúp cả người mới bắt đầu và chuyên gia đều có thể tiếp cận được.

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



📅 Đã tạo 1 năm trước ✏️ Cập nhật 4 tháng trước

Bình luận