TinyML
Khám phá TinyML và tìm hiểu cách triển khai Ultralytics YOLO26 trên các vi điều khiển công suất thấp. Khám phá cách tối ưu hóa các mô hình cho IoT với lượng tử hóa (quantization) và Ultralytics Platform.
Tiny machine learning, thường được gọi là TinyML, đại diện cho một lĩnh vực chuyên sâu của machine learning tập trung vào việc triển khai các model trên những thiết bị có công suất cực thấp và hạn chế tài nguyên như microcontrollers và các IoT devices nhỏ. Khác với các hệ thống dựa trên đám mây truyền thống vốn dựa vào tài nguyên tính toán khổng lồ, TinyML hoạt động hoàn toàn tại biên (edge). Bằng cách chạy các thuật toán thông minh cục bộ trên các thiết bị với mức tiêu thụ điện năng thường chỉ tính bằng miliwatt, phương pháp này giúp giảm thiểu độ trễ, đảm bảo quyền riêng tư dữ liệu và giảm đáng kể mức sử dụng băng thông; một mô hình được hỗ trợ và thúc đẩy bởi các cộng đồng như TinyML Foundation.
Để triển khai thành công các cấu trúc mạng thần kinh phức tạp lên phần cứng bị hạn chế cao như ARM Cortex-M processors, các model phải trải qua quá trình tối ưu hóa nghiêm ngặt. Các kỹ thuật như model quantization—chuyển đổi trọng số dấu phẩy động 32-bit thành số nguyên 8-bit—và model pruning được sử dụng để giảm đáng kể dung lượng bộ nhớ tổng thể. Ngày nay, các framework chuyên dụng như TensorFlow Lite for Microcontrollers của Google và ExecuTorch của PyTorch hỗ trợ các quy trình nén chính xác này, mang lại trí tuệ nhân tạo thị giác và thính giác nâng cao cho các phần cứng nhúng phổ thông.
Link to this sectionTinyML so với Edge AI#
Mặc dù TinyML có liên quan chặt chẽ đến Edge AI, sự khác biệt chính nằm ở quy mô phần cứng và ngân sách điện năng. Edge AI là một thuật ngữ rộng hơn bao gồm mọi việc thực thi cục bộ các model AI, thường sử dụng các máy tính bảng đơn (single-board computers) như Raspberry Pi hoặc các GPU nhúng mạnh mẽ như NVIDIA Jetson. Ngược lại, TinyML nhắm mục tiêu cụ thể vào các hệ thống nhúng chuyên sâu chạy bằng pin trong nhiều tháng hoặc nhiều năm, chẳng hạn như bo mạch Arduino hoặc chip STMicroelectronics. Các thiết bị này thường chỉ sở hữu vài trăm kilobyte RAM, khiến việc nén model mạnh mẽ trở thành bắt buộc.
Link to this sectionCác ứng dụng trong thực tế#
Khả năng triển khai trí tuệ nhân tạo trực tiếp lên phần cứng tối giản đã mở ra vô số trường hợp sử dụng thực tế trong nhiều ngành công nghiệp khác nhau:
- Predictive Maintenance in Smart Manufacturing: Các nhà máy triển khai các cảm biến rung và âm thanh công suất cực thấp trực tiếp trên máy móc. Các cảm biến TinyML này liên tục phân tích tần số động cơ để phát hiện những bất thường nhỏ báo hiệu hư hỏng sắp xảy ra, cho phép các đội bảo trì xử lý vấn đề trước khi tình trạng ngừng hoạt động tốn kém xảy ra.
- Smart Precision Agriculture: Các thiết bị TinyML chạy bằng pin được rải khắp các cánh đồng canh tác rộng lớn để theo dõi các điều kiện môi trường cục bộ và phát hiện sớm các dấu hiệu dịch hại hoặc bệnh tật bằng các mô-đun camera cơ bản, chỉ truyền các cảnh báo nhẹ thay vì các tệp hình ảnh nặng.
- Wildlife Conservation Audio Monitoring: Các nhà nghiên cứu sử dụng các acoustic sensor arrays ẩn được cung cấp năng lượng bởi TinyML để phát hiện âm thanh đặc trưng của các loài nguy cấp hoặc các hoạt động khai thác gỗ trái phép (như cưa máy) trong các khu rừng rậm. Hoạt động bằng năng lượng mặt trời hoặc pin, các thiết bị này phân tích âm thanh cục bộ và ngay lập tức kích hoạt các cảnh báo tầm xa.
Link to this sectionXuất các model cho TinyML#
Việc chuẩn bị một model cho microcontroller đòi hỏi định dạng xuất nghiêm ngặt. Sử dụng Ultralytics YOLO26, các nhà phát triển có thể xây dựng các pipeline object detection mạnh mẽ và nén chúng lại cho các mục tiêu nhúng. Bạn có thể quản lý dataset và phiên bản model của mình một cách liền mạch trên Ultralytics Platform trước khi xuất cục bộ. TFLite integration gốc cho phép chuyển đổi dễ dàng sang các định dạng số nguyên 8-bit cần thiết cho microcontroller, bổ sung cho các model deployment options dành riêng cho phần cứng khác như CoreML của Apple, Edge TPU của Google và TensorRT của NVIDIA.
Ví dụ sau đây minh họa cách xuất một model YOLO26 nhẹ được tối ưu hóa đặc biệt với lượng tử hóa INT8, giúp nó phù hợp để triển khai trên các nền tảng biên tương thích với TinyML:
from ultralytics import YOLO
# Initialize the lightweight YOLO26 Nano model for edge use cases
model = YOLO("yolo26n.pt")
# Export to TFLite format with INT8 quantization and a reduced image size
# This minimizes the memory footprint and accelerates inference on microcontrollers
model.export(format="tflite", int8=True, imgsz=160)





