Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Tích hợp liên tục (CI)

Nâng cao quy trình AI/ML bằng Tích hợp Liên tục. Tự động hóa việc kiểm thử, cải thiện chất lượng mã và đơn giản hóa quá trình phát triển mô hình một cách dễ dàng.

Tích hợp Liên tục (CI) là một phương pháp phát triển phần mềm cơ bản, trong đó các nhà phát triển thường xuyên hợp nhất các thay đổi mã của họ vào một kho lưu trữ trung tâm dùng chung. Thay vì tích hợp các bản cập nhật lớn theo định kỳ, CI khuyến khích các cam kết nhỏ, thường xuyên kích hoạt các chuỗi xây dựng và kiểm thử tự động. Trong lĩnh vực Trí tuệ Nhân tạo (AI)Học máy (ML) , phương pháp này là nền tảng của Hoạt động Học máy (MLOps) . Nó đảm bảo rằng các thay đổi về mã, dữ liệu hoặc siêu tham số không làm hỏng hệ thống hiện có hoặc làm giảm hiệu suất mô hình.

Các nguyên tắc cốt lõi của CI trong học máy

Mục tiêu chính của CI là detect lỗi càng sớm càng tốt, một khái niệm thường được gọi là "thất bại nhanh". Quá trình này phụ thuộc rất nhiều vào các hệ thống kiểm soát phiên bản như Git để quản lý cơ sở mã. Khi một nhà phát triển đẩy một thay đổi, một máy chủ CI—chẳng hạn như GitHub Actions , GitLab CI hoặc Jenkins —sẽ tự động tạo một môi trường mới.

Đối với các dự án ML, môi trường này thường sử dụng các công cụ container hóa như Docker để đảm bảo tính nhất quán trong suốt quá trình phát triển, thử nghiệm và sản xuất. Sau đó, CI pipeline sẽ thực hiện một loạt các kiểm tra:

  • Chất lượng mã: Chạy linter và phân tích tĩnh để duy trì tiêu chuẩn mã hóa.
  • Kiểm thử đơn vị: Xác minh rằng từng hàm và lớp riêng lẻ hoạt động như mong đợi.
  • Xác thực dữ liệu: Đảm bảo dữ liệu đào tạo tuân thủ theo lược đồ mong đợi và tiêu chuẩn chất lượng.
  • Đánh giá mô hình: Chạy mô hình đã được đào tạo trên tập dữ liệu xác thực để đảm bảo độ chính xác không giảm xuống dưới ngưỡng đã xác định.

Triển khai Kiểm tra Hiệu suất

Một khía cạnh quan trọng của CI cho ML là ngăn chặn "lỗi thầm lặng" khi mã chạy không có lỗi nhưng độ thông minh của mô hình lại giảm sút. Điều này được thực hiện bằng cách tích hợp kiểm thử mô hình trực tiếp vào quy trình làm việc của CI.

Sau đây là Python đoạn mã minh họa cách một tập lệnh CI có thể tải mô hình YOLO11 và khẳng định rằng các số liệu hiệu suất của nó đáp ứng một tiêu chuẩn cụ thể trước khi cho phép hợp nhất mã.

from ultralytics import YOLO

# Load the model to be tested (e.g., a newly trained artifact)
model = YOLO("yolo11n.pt")

# Run validation on a standard dataset (e.g., coco8.yaml for quick CI checks)
results = model.val(data="coco8.yaml")

# Extract the mAP50-95 metric
map_score = results.box.map

# Assert performance meets the minimum requirement for the pipeline to pass
print(f"Current mAP: {map_score}")
if map_score < 0.30:
    raise ValueError("Model performance regression detected! mAP is too low.")

Các Ứng dụng Thực tế

Việc áp dụng Tích hợp liên tục là rất quan trọng trong các ngành công nghiệp mà độ tin cậy là điều không thể thương lượng.

  • Lái xe tự động: Trong quá trình phát triển xe tự hành , an toàn là yếu tố tối quan trọng. Các kỹ sư sử dụng các đường ống CI để tự động kiểm tra các mô hình phát hiện vật thể trong hàng ngàn tình huống, chẳng hạn như nhận dạng người đi bộ vào ban đêm hoặc khi trời mưa. Nếu một thay đổi mã khiến Độ chính xác trung bình ( mAP ) giảm, hệ thống sẽ chặn bản cập nhật, ngăn phần mềm có khả năng gây nguy hiểm tiếp cận xe.
  • Chẩn đoán Y khoa: Đối với AI trong chăm sóc sức khỏe , đặc biệt là các nhiệm vụ như phát hiện khối u , tính nhất quán là chìa khóa. Một quy trình CI đảm bảo rằng các bản cập nhật cho thuật toán tiền xử lý hình ảnh không vô tình làm thay đổi dữ liệu đầu vào theo cách gây nhầm lẫn cho mô hình chẩn đoán. Bằng cách chạy các bài kiểm tra hồi quy trên một "bộ vàng" hình ảnh y khoa, nhóm nghiên cứu đảm bảo duy trì độ chính xác lâm sàng.

Tích hợp liên tục so với Triển khai liên tục (CD)

Mặc dù thường được gọi chung là CI/CD, nhưng điều quan trọng là phải phân biệt Tích hợp liên tục với Triển khai liên tục .

  • Tích hợp Liên tục (CI) tập trung vào chu trình phát triển . Nó xác minh mã mới tích hợp chính xác với cơ sở mã hiện có và vượt qua tất cả các bài kiểm tra tự động. Nó tạo ra một hiện vật đã được xác thực (như ảnh Docker hoặc tệp mô hình).
  • Triển khai Liên tục (CD) tập trung vào chu kỳ phát hành . Nó lấy sản phẩm do CI tạo ra và tự động triển khai nó vào môi trường sản xuất, chẳng hạn như máy chủ đám mây hoặc thiết bị biên.

Cùng nhau, chúng tạo thành một quy trình hợp lý giúp đẩy nhanh vòng đời của các sản phẩm AI thị giác , cho phép các nhóm lặp lại nhanh hơn trong khi vẫn duy trì các tiêu chuẩn cao về chất lượng và bảo mật.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay