CutMix
Khám phá cách kỹ thuật tăng cường dữ liệu CutMix ngăn ngừa overfitting. Tìm hiểu cách dễ dàng áp dụng kỹ thuật này để training các model Ultralytics YOLO26 mạnh mẽ.
CutMix là một kỹ thuật tăng cường dữ liệu nâng cao được sử dụng để huấn luyện các model thị giác máy tính mạnh mẽ bằng cách cắt một vùng hình chữ nhật từ một ảnh và dán vùng đó lên ảnh đích. Không giống các phương pháp tăng cường đơn giản hơn, vốn điều chỉnh độ sáng hoặc góc xoay, CutMix thay đổi thành phần cơ bản của một mẫu huấn luyện. Khi các pixel được hoán đổi, các nhãn ground-truth tương ứng cũng được trộn theo tỷ lệ diện tích của vùng cắt. Điều này giúp các mạng neural nhân tạo học cách nhận diện đối tượng từ các góc nhìn bị che khuất một phần, buộc model dựa vào nhiều đặc trưng thay vì chỉ tập trung vào những phần có tính phân biệt cao nhất của đối tượng. Được giới thiệu lần đầu trong một bài báo học thuật năm 2019, kỹ thuật này đã trở thành một phép biến đổi tiêu chuẩn trong các framework deep learning nhằm ngăn overfitting và cải thiện khả năng tổng quát hóa trên các dataset lớn.
Cách thức hoạt động của kỹ thuật#
Trong quá trình huấn luyện model, thuật toán chọn ngẫu nhiên một tọa độ trung tâm và kích thước bounding box để trích xuất một vùng từ ảnh phụ. Sau đó, vùng này được phủ trực tiếp lên ảnh chính trong batch hiện tại. Nếu ảnh chính chứa một con chó còn ảnh phụ chứa một con mèo, ảnh cuối cùng sẽ có một vùng của con mèo thay thế cho một phần của con chó. Các nhãn phân loại được cập nhật bằng nội suy tuyến tính dựa trên diện tích chính xác của vùng cắt, chẳng hạn tạo ra nhãn gồm 0.7 chó và 0.3 mèo. Trong các tác vụ phát hiện đối tượng, các bounding box vẫn giữ lại ít nhất một tỷ lệ nhất định (thường là 10%) diện tích ban đầu bên trong vùng được dán sẽ được giữ lại. Kỹ thuật này được hỗ trợ nguyên bản dưới dạng một hyperparameter huấn luyện cutmix trong Ultralytics YOLO, cho phép người dùng dễ dàng xác định xác suất áp dụng phép biến đổi này.
Phân biệt MixUp và Cutout#
CutMix có mối liên hệ chặt chẽ với hai kỹ thuật tăng cường dữ liệu nổi bật khác, nhưng khắc phục những hạn chế riêng của chúng:
- Tăng cường MixUp: MixUp trộn hai ảnh trên toàn cục bằng cách tính trung bình có trọng số của các giá trị pixel. Mặc dù hiệu quả, phương pháp này thường tạo ra những ảnh ma bán trong suốt, không tự nhiên, có thể khiến model nhầm lẫn do phá vỡ tương quan không gian cục bộ. Ngược lại, CutMix giữ nguyên cường độ pixel ban đầu trong các vùng được cắt, đặc tính mà các nhà nghiên cứu tiếp tục tối ưu trong những phương pháp như Attentive CutMix.
- Tăng cường Cutout: Cutout loại bỏ thông tin bằng cách che một vùng hình chữ nhật ngẫu nhiên bằng các pixel màu đen hoặc giá trị trung bình của dataset. Mặc dù khuyến khích model quan sát toàn bộ đối tượng, phương pháp này làm lãng phí các tensor huấn luyện có giá trị. CutMix thay thế khoảng trống bị thiếu bằng các vùng phân loại ảnh giàu thông tin từ những ảnh khác, qua đó nâng cao hiệu quả học tổng thể.
Các ứng dụng trong thực tế#
Bằng cách huấn luyện model nhận diện các đối tượng bị che khuất nghiêm trọng, CutMix cải thiện đáng kể hiệu suất machine learning trong nhiều ngành khác nhau.
- AI ô tô và lái xe tự hành: Trong các phương tiện tự lái, kỹ thuật này giúp hệ thống nhận diện người đi bộ hoặc phương tiện ngay cả khi chúng bị biển báo đường phố che khuất một phần, qua đó nâng cao độ an toàn trong môi trường đông đúc.
- Chẩn đoán y khoa và phân đoạn cơ quan: Trong lĩnh vực chăm sóc sức khỏe, phương pháp này được sử dụng rộng rãi cho phân đoạn cơ quan và khối u, cho phép model nhận diện các ranh giới mô phức tạp ngay cả khi các cấu trúc giải phẫu chồng lấn lên nhau.
- Viễn thám cho ảnh vệ tinh: Chiến lược này bảo toàn các lớp dày đặc và chồng lấn như tòa nhà và thảm thực vật trong ảnh chụp từ trên không. Các biến thể nâng cao đang được tích cực nghiên cứu để cải thiện khả năng nhận dạng phân phối đuôi dài trên dữ liệu mất cân bằng nghiêm trọng.
Triển khai trong thực tế#
Việc tích hợp phép tăng cường này vào một pipeline AI rất đơn giản. Hầu hết các thư viện cấp cao đều hỗ trợ nguyên bản, chẳng hạn như PyTorch Transforms và Keras Preprocessing Layers.
Khi huấn luyện một model như YOLO26, việc cấu hình phép tăng cường này chỉ cần điều chỉnh một tham số duy nhất. Quy trình này tự động xử lý cả việc ghép các vùng ảnh và logic cắt bounding box phức tạp.
from ultralytics import YOLO
# Initialize the recommended Ultralytics YOLO26 model
model = YOLO("yolo26n.pt")
# Train the model with CutMix enabled at a 50% probability
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, cutmix=0.5)Đối với các đội ngũ quản lý workflow thị giác máy tính quy mô lớn, Ultralytics Platform đơn giản hóa quy trình này bằng cách cho phép người dùng tinh chỉnh các best practice về tăng cường dữ liệu trực tiếp từ giao diện cloud, rút ngắn lộ trình từ gán nhãn đến triển khai model.









