Chuyển đến nội dung

Hướng dẫn từng bước để huấn luyện các mô hình YOLO11 với IBM Watsonx

Ngày nay, các giải pháp computer vision có khả năng mở rộng đang trở nên phổ biến hơn và thay đổi cách chúng ta xử lý dữ liệu trực quan. Một ví dụ điển hình là IBM Watsonx, một nền tảng dữ liệu và AI tiên tiến giúp đơn giản hóa việc phát triển, triển khai và quản lý các mô hình AI. Nó cung cấp một bộ hoàn chỉnh cho toàn bộ vòng đời AI và tích hợp liền mạch với các dịch vụ IBM Cloud.

Bạn có thể huấn luyện các mô hình Ultralytics YOLO11 bằng IBM Watsonx. Đây là một lựa chọn tốt cho các doanh nghiệp quan tâm đến việc huấn luyện mô hình hiệu quả, tinh chỉnh cho các tác vụ cụ thể và cải thiện hiệu suất mô hình với các công cụ mạnh mẽ và thiết lập thân thiện với người dùng. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn quy trình huấn luyện YOLO11 với IBM Watsonx, bao gồm mọi thứ từ thiết lập môi trường đến đánh giá các mô hình đã huấn luyện của bạn. Hãy bắt đầu nào!

IBM Watsonx là gì?

Watsonx là nền tảng dựa trên đám mây của IBM được thiết kế cho mục đích thương mại AI tạo sinh và dữ liệu khoa học. Ba thành phần của IBM Watsonx - watsonx.ai, watsonx.data, và watsonx.governance - kết hợp với nhau để tạo ra một nền tảng AI toàn diện, đáng tin cậy, có thể đẩy nhanh các dự án AI nhằm giải quyết các vấn đề kinh doanh. Nó cung cấp các công cụ mạnh mẽ để xây dựng, đào tạo và triển khai các mô hình máy học và giúp bạn dễ dàng kết nối với nhiều nguồn dữ liệu khác nhau.

Tổng quan về IBM Watsonx

Giao diện thân thiện với người dùng và khả năng cộng tác của nó giúp đơn giản hóa quy trình phát triển, đồng thời hỗ trợ quản lý và triển khai mô hình hiệu quả. Cho dù là thị giác máy tính, phân tích dự đoán, xử lý ngôn ngữ tự nhiên hay các ứng dụng AI khác, IBM Watsonx cung cấp các công cụ và hỗ trợ cần thiết để thúc đẩy sự đổi mới.

Các tính năng chính của IBM Watsonx

IBM Watsonx được tạo thành từ ba thành phần chính: watsonx.ai, watsonx.data, và watsonx.governance. Mỗi thành phần cung cấp các tính năng phục vụ cho các khía cạnh khác nhau của AI và quản lý dữ liệu. Hãy xem xét kỹ hơn về chúng.

Watsonx.ai

Watsonx.ai cung cấp các công cụ mạnh mẽ để phát triển AI và cung cấp quyền truy cập vào các mô hình tùy chỉnh do IBM hỗ trợ, các mô hình của bên thứ ba như Llama 3 và các mô hình Granite của riêng IBM. Nó bao gồm Prompt Lab để thử nghiệm với các lời nhắc AI, Tuning Studio để cải thiện hiệu suất mô hình bằng dữ liệu được gắn nhãn và Flows Engine để đơn giản hóa việc phát triển ứng dụng AI tạo sinh. Ngoài ra, nó còn cung cấp các công cụ toàn diện để tự động hóa vòng đời mô hình AI và kết nối với nhiều API và thư viện khác nhau.

Watsonx.data

Watsonx.data hỗ trợ cả triển khai trên đám mây và tại chỗ thông qua tích hợp IBM Storage Fusion HCI. Bảng điều khiển thân thiện với người dùng của nó cung cấp quyền truy cập tập trung vào dữ liệu trên các môi trường và giúp khám phá dữ liệu dễ dàng bằng SQL thông thường. Nó tối ưu hóa khối lượng công việc với các công cụ truy vấn hiệu quả như Presto và Spark, tăng tốc hiểu biết sâu sắc về dữ liệu với lớp ngữ nghĩa được hỗ trợ bởi AI, bao gồm cơ sở dữ liệu vector cho mức độ liên quan của AI và hỗ trợ các định dạng dữ liệu mở để dễ dàng chia sẻ dữ liệu phân tích và AI.

Watsonx.governance

Watsonx.governance giúp tuân thủ dễ dàng hơn bằng cách tự động xác định các thay đổi về quy định và thực thi các chính sách. Nó liên kết các yêu cầu với dữ liệu rủi ro nội bộ và cung cấp các bảng thông tin AI cập nhật. Nền tảng này giúp quản lý rủi ro bằng các cảnh báo và công cụ để phát hiện các vấn đề như sai lệch và trôi dữ liệu. Nó cũng tự động hóa việc giám sát và lập tài liệu về vòng đời AI, tổ chức phát triển AI bằng kho mô hình và tăng cường cộng tác với các bảng điều khiển và công cụ báo cáo thân thiện với người dùng.

Cách huấn luyện YOLO11 bằng IBM Watsonx

Bạn có thể sử dụng IBM Watsonx để tăng tốc quy trình huấn luyện mô hình YOLO11 của mình.

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

Bạn cần một tài khoản IBM Cloud để tạo một dự án watsonx.ai, và bạn cũng sẽ cần một tài khoản Kaggle để tải bộ dữ liệu.

Bước 1: Thiết lập môi trường của bạn

Đầu tiên, bạn cần thiết lập tài khoản IBM để sử dụng Jupyter Notebook. Đăng nhập vào watsonx.ai bằng tài khoản IBM Cloud của bạn.

Sau đó, tạo một dự án watsonx.ai và một Jupyter Notebook.

Sau khi bạn thực hiện việc này, một môi trường notebook sẽ mở ra để bạn tải bộ dữ liệu của mình. Bạn có thể sử dụng mã từ hướng dẫn này để giải quyết một nhiệm vụ huấn luyện mô hình phát hiện đối tượng đơn giản.

Bước 2: Cài đặt và Nhập các thư viện liên quan

Tiếp theo, bạn có thể cài đặt và nhập các thư viện Python cần thiết.

Cài đặt

# Install the required packages
pip install torch torchvision torchaudio
pip install opencv-contrib-python-headless
pip install ultralytics==8.0.196

Để biết hướng dẫn chi tiết và các phương pháp hay nhất liên quan đến quy trình cài đặt, hãy xem hướng dẫn Cài đặt Ultralytics của chúng tôi. Trong khi cài đặt các gói cần thiết cho YOLO11, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo hướng dẫn Các Vấn đề Thường gặp của chúng tôi để biết các giải pháp và mẹo.

Sau đó, bạn có thể nhập các package cần thiết.

Nhập các thư viện liên quan

# Import ultralytics
import ultralytics

ultralytics.checks()

# Import packages to retrieve and display image files

Bước 3: Tải dữ liệu

Trong hướng dẫn này, chúng ta sẽ sử dụng bộ dữ liệu rác thải biển có sẵn trên Kaggle. Với bộ dữ liệu này, chúng ta sẽ tùy chỉnh huấn luyện một mô hình YOLO11 để phát hiện và phân loại rác thải và các vật thể sinh học trong ảnh dưới nước.

Chúng ta có thể tải trực tiếp bộ dữ liệu vào sổ tay bằng API Kaggle. Đầu tiên, hãy tạo một tài khoản Kaggle miễn phí. Sau khi bạn đã tạo một tài khoản, bạn sẽ cần tạo khóa API. Hướng dẫn tạo khóa của bạn có thể được tìm thấy trong tài liệu API Kaggle trong phần "Thông tin xác thực API".

Sao chép và dán tên người dùng Kaggle và khóa API của bạn vào mã sau. Sau đó, chạy mã để cài đặt API và tải bộ dữ liệu vào Watsonx.

Cài đặt

# Install kaggle
pip install kaggle

Sau khi cài đặt Kaggle, chúng ta có thể tải bộ dữ liệu vào Watsonx.

Tải dữ liệu

# Replace "username" string with your username
os.environ["KAGGLE_USERNAME"] = "username"
# Replace "apiKey" string with your key
os.environ["KAGGLE_KEY"] = "apiKey"

# Load dataset
os.system("kaggle datasets download atiqishrak/trash-dataset-icra19 --unzip")

# Store working directory path as work_dir
work_dir = os.getcwd()

# Print work_dir path
print(os.getcwd())

# Print work_dir contents
print(os.listdir(f"{work_dir}"))

# Print trash_ICRA19 subdirectory contents
print(os.listdir(f"{work_dir}/trash_ICRA19"))

Sau khi tải bộ dữ liệu, chúng tôi đã in và lưu thư mục làm việc của mình. Chúng tôi cũng đã in nội dung của thư mục làm việc để xác nhận rằng bộ dữ liệu "trash_ICRA19" đã được tải đúng cách.

Nếu bạn thấy "trash_ICRA19" trong nội dung của thư mục, thì nó đã được tải thành công. Bạn sẽ thấy ba tệp/thư mục: a config.yaml tập tin, một videos_for_testing thư mục và một dataset thư mục. Chúng tôi sẽ bỏ qua videos_for_testing thư mục, vì vậy bạn có thể thoải mái xóa nó.

Chúng tôi sẽ sử dụng config.yaml tệp và nội dung của thư mục tập dữ liệu để huấn luyện phát hiện đối tượng mô hình. Đây là một hình ảnh mẫu từ bộ dữ liệu rác thải biển của chúng tôi.

Rác thải biển với Hộp giới hạn

Bước 4: Tiền xử lý dữ liệu

May mắn thay, tất cả các nhãn trong bộ dữ liệu rác thải biển đã được định dạng dưới dạng tệp YOLO .txt. Tuy nhiên, chúng ta cần sắp xếp lại cấu trúc của thư mục hình ảnh và nhãn để giúp mô hình của chúng ta xử lý hình ảnh và nhãn. Hiện tại, thư mục bộ dữ liệu đã tải của chúng ta tuân theo cấu trúc này:

Đã tải thư mục bộ dữ liệu

Tuy nhiên, theo mặc định, các mô hình YOLO yêu cầu hình ảnh và nhãn riêng biệt trong các thư mục con thuộc phần chia train/val/test. Chúng ta cần tổ chức lại thư mục theo cấu trúc sau:

Cấu trúc thư mục YOLO

Để sắp xếp lại thư mục tập dữ liệu, chúng ta có thể chạy script sau:

Tiền xử lý Dữ liệu

# Function to reorganize dir
def organize_files(directory):
    for subdir in ["train", "test", "val"]:
        subdir_path = os.path.join(directory, subdir)
        if not os.path.exists(subdir_path):
            continue

        images_dir = os.path.join(subdir_path, "images")
        labels_dir = os.path.join(subdir_path, "labels")

        # Create image and label subdirs if non-existent
        os.makedirs(images_dir, exist_ok=True)
        os.makedirs(labels_dir, exist_ok=True)

        # Move images and labels to respective subdirs
        for filename in os.listdir(subdir_path):
            if filename.endswith(".txt"):
                shutil.move(os.path.join(subdir_path, filename), os.path.join(labels_dir, filename))
            elif filename.endswith(".jpg") or filename.endswith(".png") or filename.endswith(".jpeg"):
                shutil.move(os.path.join(subdir_path, filename), os.path.join(images_dir, filename))
            # Delete .xml files
            elif filename.endswith(".xml"):
                os.remove(os.path.join(subdir_path, filename))


if __name__ == "__main__":
    directory = f"{work_dir}/trash_ICRA19/dataset"
    organize_files(directory)

Tiếp theo, chúng ta cần sửa đổi tệp .yaml cho bộ dữ liệu. Đây là thiết lập chúng ta sẽ sử dụng trong tệp .yaml của mình. Số ID lớp bắt đầu từ 0:

path: /path/to/dataset/directory # root directory for dataset
train: train/images # train images subdirectory
val: train/images # validation images subdirectory
test: test/images # test images subdirectory

# Classes
names:
    0: plastic
    1: bio
    2: rov

Chạy script sau để xóa nội dung hiện tại của config.yaml và thay thế nó bằng nội dung trên phản ánh cấu trúc thư mục tập dữ liệu mới của chúng ta. Hãy chắc chắn thay thế phần work_dir của đường dẫn thư mục gốc ở dòng 4 bằng đường dẫn thư mục làm việc mà chúng ta đã truy xuất trước đó. Giữ nguyên các định nghĩa thư mục con train, val và test. Ngoài ra, không thay đổi {work_dir} ở dòng 23 của mã.

Chỉnh sửa Tệp .yaml

# Contents of new config.yaml file
def update_yaml_file(file_path):
    data = {
        "path": "work_dir/trash_ICRA19/dataset",
        "train": "train/images",
        "val": "train/images",
        "test": "test/images",
        "names": {0: "plastic", 1: "bio", 2: "rov"},
    }

    # Ensures the "names" list appears after the sub/directories
    names_data = data.pop("names")
    with open(file_path, "w") as yaml_file:
        yaml.dump(data, yaml_file)
        yaml_file.write("\n")
        yaml.dump({"names": names_data}, yaml_file)


if __name__ == "__main__":
    file_path = f"{work_dir}/trash_ICRA19/config.yaml"  # .yaml file path
    update_yaml_file(file_path)
    print(f"{file_path} updated successfully.")

Bước 5: Huấn luyện mô hình YOLO11

Chạy đoạn mã dòng lệnh sau để tinh chỉnh mô hình YOLO11 mặc định đã được huấn luyện trước.

Huấn luyện mô hình YOLO11

!yolo task=detect mode=train data={work_dir}/trash_ICRA19/config.yaml model=yolo11n.pt epochs=2 batch=32 lr0=.04 plots=True

Đây là cái nhìn cận cảnh về các tham số trong lệnh huấn luyện mô hình:

  • nhiệm vụ: Nó chỉ định nhiệm vụ thị giác máy tính mà bạn đang sử dụng mô hình YOLO và bộ dữ liệu được chỉ định.
  • chế độ: Cho biết mục đích bạn đang tải mô hình và dữ liệu đã chỉ định. Vì chúng ta đang huấn luyện một mô hình, nó được đặt thành "train". Sau đó, khi chúng ta kiểm tra hiệu suất của mô hình, chúng ta sẽ đặt nó thành "predict".
  • epochs (số lần lặp): Điều này giới hạn số lần YOLO11 sẽ duyệt qua toàn bộ tập dữ liệu của chúng ta.
  • batch: Giá trị số quy định kích thước batch huấn luyện. Batch là số lượng hình ảnh mà mô hình xử lý trước khi cập nhật các tham số của nó.
  • lr0: Chỉ định tốc độ học ban đầu của mô hình.
  • plots: Chỉ đạo YOLO tạo và lưu các biểu đồ về quá trình huấn luyện và các chỉ số đánh giá mô hình của chúng ta.

Để hiểu rõ hơn về quy trình huấn luyện mô hình và các phương pháp hay nhất, hãy tham khảo hướng dẫn Huấn luyện Mô hình YOLO11. Hướng dẫn này sẽ giúp bạn tận dụng tối đa các thử nghiệm của mình và đảm bảo bạn đang sử dụng YOLO11 một cách hiệu quả.

Bước 6: Kiểm tra mô hình

Bây giờ chúng ta có thể chạy suy luận để kiểm tra hiệu suất của mô hình đã tinh chỉnh của mình:

Kiểm tra mô hình YOLO11

!yolo task=detect mode=predict source={work_dir}/trash_ICRA19/dataset/test/images model={work_dir}/runs/detect/train/weights/best.pt conf=0.5 iou=.5 save=True save_txt=True

Tập lệnh ngắn này tạo ra các nhãn dự đoán cho mỗi hình ảnh trong bộ thử nghiệm của chúng tôi, cũng như các tệp hình ảnh đầu ra mới phủ khung giới hạn dự đoán lên trên hình ảnh gốc.

Các nhãn .txt dự đoán cho mỗi ảnh được lưu thông qua save_txt=True đối số và hình ảnh đầu ra với lớp phủ hộp giới hạn được tạo thông qua save=True đối số.
Tham số conf=0.5 thông báo cho mô hình bỏ qua tất cả các dự đoán với mức độ tin cậy dưới 50%.

Cuối cùng, iou=.5 chỉ đạo mô hình bỏ qua các hộp trong cùng một lớp có độ chồng lấp từ 50% trở lên. Nó giúp giảm các hộp trùng lặp tiềm năng được tạo cho cùng một đối tượng.
chúng ta có thể tải hình ảnh với các lớp phủ hộp giới hạn được dự đoán để xem mô hình của chúng ta hoạt động như thế nào trên một số hình ảnh.

Hiển Thị Dự Đoán

# Show the first ten images from the preceding prediction task
for pred_dir in glob.glob(f"{work_dir}/runs/detect/predict/*.jpg")[:10]:
    img = Image.open(pred_dir)
    display(img)

Đoạn mã trên hiển thị mười hình ảnh từ tập kiểm tra với các hộp giới hạn được dự đoán của chúng, kèm theo nhãn tên lớp và mức độ tin cậy.

Bước 7: Đánh giá mô hình

Chúng ta có thể tạo ra hình ảnh trực quan về độ chính xác và độ thu hồi của mô hình cho mỗi lớp. Các hình ảnh trực quan này được lưu trong thư mục gốc, trong thư mục train. Điểm chính xác được hiển thị trong P_curve.png:

Đường cong tin cậy chính xác

Đồ thị cho thấy sự tăng trưởng theo cấp số nhân về độ chính xác khi mức độ tin cậy của mô hình đối với các dự đoán tăng lên. Tuy nhiên, độ chính xác của mô hình vẫn chưa ổn định ở một mức độ tin cậy nhất định sau hai epochs.

Đồ thị recall (R_curve.png) hiển thị một xu hướng nghịch đảo:

Đường cong độ tin cậy thu hồi

Không giống như độ chuẩn xác (precision), độ phủ (recall) di chuyển theo hướng ngược lại, cho thấy độ phủ lớn hơn với các trường hợp có độ tin cậy thấp hơn và độ phủ thấp hơn với các trường hợp có độ tin cậy cao hơn. Đây là một ví dụ thích hợp về sự đánh đổi giữa độ chuẩn xác và độ phủ cho các mô hình phân loại.

Bước 8: Tính toán Intersection Over Union

Bạn có thể đo lường độ chính xác dự đoán bằng cách tính toán IoU giữa một bounding box dự đoán và một bounding box ground truth cho cùng một đối tượng. Xem hướng dẫn của IBM về huấn luyện YOLO11 để biết thêm chi tiết.

Tóm tắt

Chúng tôi đã khám phá các tính năng chính của IBM Watsonx và cách đào tạo mô hình YOLO11 bằng IBM Watsonx. Chúng tôi cũng đã thấy IBM Watsonx có thể nâng cao quy trình làm việc AI của bạn như thế nào bằng các công cụ tiên tiến để xây dựng mô hình, quản lý dữ liệu và tuân thủ.

Để biết thêm chi tiết về cách sử dụng, hãy truy cập tài liệu chính thức của IBM Watsonx.

Ngoài ra, hãy nhớ xem trang hướng dẫn tích hợp Ultralytics, để tìm hiểu thêm về các tích hợp thú vị khác nhau.

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

Làm cách nào để huấn luyện mô hình YOLO11 bằng IBM Watsonx?

Để huấn luyện một mô hình YOLO11 bằng IBM Watsonx, hãy làm theo các bước sau:

  1. Thiết lập Môi trường của bạn: Tạo tài khoản IBM Cloud và thiết lập một dự án Watsonx.ai. Sử dụng Jupyter Notebook cho môi trường coding của bạn.
  2. Cài đặt thư viện: Cài đặt các thư viện cần thiết như torch, opencv, và ultralytics.
  3. Tải Dữ Liệu: Sử dụng Kaggle API để tải tập dữ liệu của bạn vào Watsonx.
  4. Tiền xử lý Dữ liệu: Tổ chức bộ dữ liệu của bạn thành cấu trúc thư mục yêu cầu và cập nhật .yaml tệp cấu hình.
  5. Huấn luyện Mô Hình: Sử dụng giao diện dòng lệnh YOLO để huấn luyện mô hình của bạn với các tham số cụ thể như epochs, batch size, và learning rate.
  6. Kiểm tra và Đánh giá: Chạy suy luận để kiểm tra mô hình và đánh giá hiệu suất của nó bằng các số liệu như độ chính xác và độrecall.

Để biết hướng dẫn chi tiết, hãy tham khảo hướng dẫn Huấn luyện Mô hình YOLO11 của chúng tôi.

Các tính năng chính của IBM Watsonx để huấn luyện mô hình AI là gì?

IBM Watsonx cung cấp một số tính năng chính để huấn luyện mô hình AI:

  • Watsonx.ai: Cung cấp các công cụ để phát triển AI, bao gồm quyền truy cập vào các mô hình tùy chỉnh do IBM hỗ trợ và các mô hình của bên thứ ba như Llama 3. Nó bao gồm Prompt Lab, Tuning Studio và Flows Engine để quản lý vòng đời AI toàn diện.
  • Watsonx.data: Hỗ trợ triển khai trên đám mây và tại chỗ, cung cấp quyền truy cập dữ liệu tập trung, các công cụ truy vấn hiệu quả như Presto và Spark, và một lớp ngữ nghĩa được hỗ trợ bởi AI.
  • Watsonx.governance: Tự động hóa việc tuân thủ, quản lý rủi ro bằng cảnh báo và cung cấp các công cụ để phát hiện các vấn đề như sai lệch và trôi. Nó cũng bao gồm các bảng điều khiển và các công cụ báo cáo để cộng tác.

Để biết thêm thông tin, hãy truy cập tài liệu chính thức của IBM Watsonx.

Tại sao nên sử dụng IBM Watsonx để huấn luyện các mô hình Ultralytics YOLO11?

IBM Watsonx là một lựa chọn tuyệt vời để huấn luyện các mô hình Ultralytics YOLO11 nhờ vào bộ công cụ toàn diện giúp đơn giản hóa vòng đời AI. Các lợi ích chính bao gồm:

  • Khả năng mở rộng: Dễ dàng mở rộng quy mô huấn luyện mô hình của bạn bằng các dịch vụ IBM Cloud.
  • Tích hợp: Tích hợp liền mạch với nhiều nguồn dữ liệu và API khác nhau.
  • Giao diện Thân thiện với Người dùng: Đơn giản hóa quy trình phát triển với giao diện trực quan và có tính cộng tác.
  • Công cụ nâng cao: Truy cập các công cụ mạnh mẽ như Prompt Lab, Tuning Studio và Flows Engine để nâng cao hiệu suất mô hình.

Tìm hiểu thêm về Ultralytics YOLO11 và cách huấn luyện mô hình bằng IBM Watsonx trong hướng dẫn tích hợp của chúng tôi.

Làm thế nào để tiền xử lý bộ dữ liệu của tôi để huấn luyện YOLO11 trên IBM Watsonx?

Để tiền xử lý tập dữ liệu của bạn để huấn luyện YOLO11 trên IBM Watsonx:

  1. Sắp xếp thư mục: Đảm bảo bộ dữ liệu của bạn tuân theo cấu trúc thư mục YOLO với các thư mục con riêng biệt cho hình ảnh và nhãn trong phân chia train/val/test.
  2. Cập nhật tệp .yaml: Đôi khi, bạn có thể cần thêm các gói python không được cài đặt sẵn trên máy chủ. Bạn có thể dễ dàng cài đặt các gói này trong thư mục chính hoặc môi trường ảo bằng cách sử dụng lệnh .yaml tệp cấu hình để phản ánh cấu trúc thư mục và tên lớp mới.
  3. Chạy Script tiền xử lý: Sử dụng một script python để sắp xếp lại bộ dữ liệu của bạn và cập nhật .yaml tệp cho phù hợp.

Đây là một tập lệnh mẫu để sắp xếp bộ dữ liệu của bạn:

import os
import shutil


def organize_files(directory):
    for subdir in ["train", "test", "val"]:
        subdir_path = os.path.join(directory, subdir)
        if not os.path.exists(subdir_path):
            continue

        images_dir = os.path.join(subdir_path, "images")
        labels_dir = os.path.join(subdir_path, "labels")

        os.makedirs(images_dir, exist_ok=True)
        os.makedirs(labels_dir, exist_ok=True)

        for filename in os.listdir(subdir_path):
            if filename.endswith(".txt"):
                shutil.move(os.path.join(subdir_path, filename), os.path.join(labels_dir, filename))
            elif filename.endswith(".jpg") or filename.endswith(".png") or filename.endswith(".jpeg"):
                shutil.move(os.path.join(subdir_path, filename), os.path.join(images_dir, filename))


if __name__ == "__main__":
    directory = f"{work_dir}/trash_ICRA19/dataset"
    organize_files(directory)

Để biết thêm chi tiết, hãy tham khảo hướng dẫn tiền xử lý dữ liệu của chúng tôi.

Những điều kiện tiên quyết để huấn luyện mô hình YOLO11 trên IBM Watsonx là gì?

Trước khi bạn bắt đầu huấn luyện mô hình YOLO11 trên IBM Watsonx, hãy đảm bảo bạn có các điều kiện tiên quyết sau:

  • Tài Khoản IBM Cloud: Tạo một tài khoản trên IBM Cloud để truy cập Watsonx.ai.
  • Kaggle Account: Để tải datasets, bạn sẽ cần một tài khoản Kaggle và một API key.
  • Jupyter Notebook: Thiết lập môi trường Jupyter Notebook trong Watsonx.ai để viết code và huấn luyện mô hình.

Để biết thêm thông tin về cách thiết lập môi trường của bạn, hãy truy cập hướng dẫn Cài đặt Ultralytics của chúng tôi.



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

Bình luận