CPU
Khám phá vai trò quan trọng của CPU trong AI. Tìm hiểu cách tối ưu hóa tiền xử lý dữ liệu, hậu xử lý và chạy suy luận Ultralytics YOLO26 trên các thiết bị biên ngay hôm nay.
Bộ vi xử lý trung tâm (CPU) là thành phần chính của máy tính, đóng vai trò như "bộ não" của nó, chịu trách nhiệm diễn giải và thực thi các lệnh từ phần cứng và phần mềm. Trong bối cảnh của artificial intelligence (AI), CPU đóng vai trò cơ bản trong việc xử lý dữ liệu, điều phối hệ thống và thực thi suy luận, đặc biệt là trên các thiết bị biên nơi hiệu quả năng lượng là tối quan trọng. Mặc dù phần cứng chuyên dụng như GPU thường được liên kết với các tác vụ nặng trong việc huấn luyện các mô hình deep learning, CPU vẫn không thể thiếu đối với toàn bộ chuỗi quy trình machine learning (ML).
Vai trò của CPU trong các quy trình làm việc AI#
Mặc dù GPU nổi tiếng với khả năng song song hóa lớn trong quá trình huấn luyện, CPU lại là công cụ đắc lực cho nhiều giai đoạn thiết yếu của vòng đời computer vision (CV). Kiến trúc của nó, thường dựa trên thiết kế x86 (Intel, AMD) hoặc ARM, được tối ưu hóa cho xử lý tuần tự và điều khiển logic phức tạp.
- Tiền xử lý dữ liệu: Trước khi một neural network có thể học, dữ liệu phải được chuẩn bị. CPU xuất sắc trong các tác vụ như tải tệp, data cleaning và các phép biến đổi phức tạp sử dụng các thư viện như NumPy và OpenCV.
- Suy luận ở biên: Đối với việc triển khai trong thế giới thực, việc chạy các mô hình trên các máy chủ lớn không phải lúc nào cũng khả thi. CPU cho phép model deployment hiệu quả trên phần cứng tiêu dùng, chẳng hạn như chạy Ultralytics YOLO26 trên máy tính xách tay hoặc Raspberry Pi.
- Hậu xử lý: Sau khi một mô hình xuất ra các xác suất thô, CPU thường xử lý logic cuối cùng, chẳng hạn như Non-Maximum Suppression (NMS) trong phát hiện đối tượng, để lọc bỏ các dự đoán trùng lặp và tinh chỉnh kết quả.
CPU vs. GPU vs. TPU#
Hiểu rõ bối cảnh phần cứng là rất quan trọng để tối ưu hóa machine learning operations (MLOps). Các bộ vi xử lý này khác nhau đáng kể về kiến trúc và các trường hợp sử dụng lý tưởng.
- CPU: Được thiết kế cho tính linh hoạt và logic phức tạp. Nó có một vài lõi mạnh mẽ xử lý các tác vụ tuần tự. Nó tốt nhất cho data augmentation, quản lý đường ống (pipeline) và suy luận độ trễ thấp trên các lô (batch) nhỏ.
- GPU (Graphics Processing Unit): Ban đầu dành cho đồ họa, GPU có hàng nghìn lõi nhỏ hơn được thiết kế cho parallel processing. Chúng là tiêu chuẩn cho model training vì chúng có thể thực hiện các phép nhân ma trận nhanh hơn nhiều so với CPU.
- TPU (Tensor Processing Unit): Một mạch chuyên dụng (ASIC) được phát triển bởi Google Cloud dành riêng cho toán học tensor. Mặc dù có hiệu suất cao đối với các khối lượng công việc cụ thể, nó thiếu tính linh hoạt đa năng của CPU.
Các ứng dụng trong thực tế#
CPU thường là lựa chọn phần cứng ưu tiên cho các ứng dụng mà chi phí, tính sẵn có và mức tiêu thụ năng lượng quan trọng hơn nhu cầu về thông lượng thô khổng lồ.
-
Camera an ninh thông minh: Trong các security alarm systems, camera thường xử lý các luồng video cục bộ. Một mô hình object detection dựa trên CPU có thể xác định một người hoặc phương tiện và kích hoạt cảnh báo mà không cần gửi video lên đám mây, bảo toàn băng thông và quyền riêng tư của người dùng.
-
Tự động hóa công nghiệp: Trên các sàn nhà máy, các hệ thống predictive maintenance sử dụng CPU để giám sát dữ liệu cảm biến từ máy móc. Các hệ thống này phân tích độ rung hoặc các đỉnh nhiệt độ trong thời gian thực để dự đoán các sự cố, đảm bảo manufacturing automation diễn ra suôn sẻ mà không cần các cụm GPU đắt tiền.
Chạy suy luận trên CPU với Ultralytics#
Các nhà phát triển thường kiểm tra các mô hình trên CPU để xác minh tính tương thích với các môi trường serverless computing hoặc các thiết bị công suất thấp. Ultralytics API cho phép bạn dễ dàng nhắm mục tiêu vào CPU, đảm bảo ứng dụng của bạn chạy ở mọi nơi.
Ví dụ sau đây minh họa cách tải một mô hình nhẹ và chạy suy luận cụ thể trên CPU:
from ultralytics import YOLO
# Load the lightweight YOLO26 nano model
# Smaller models are optimized for faster CPU execution
model = YOLO("yolo26n.pt")
# Run inference on an image, explicitly setting the device to 'cpu'
results = model.predict("https://ultralytics.com/images/bus.jpg", device="cpu")
# Print the detection results (bounding boxes)
print(results[0].boxes.xywh)Để cải thiện hơn nữa hiệu năng trên các CPU Intel, các nhà phát triển có thể xuất các mô hình của họ sang định dạng OpenVINO, định dạng này tối ưu hóa cấu trúc neural network dành riêng cho kiến trúc x86. Để quản lý tập dữ liệu và điều phối việc triển khai này, các công cụ như Ultralytics Platform đơn giản hóa quy trình làm việc từ việc gán nhãn đến thực thi ở biên.






