
TinyML là gì?
TinyML là nhánh trí tuệ nhân tạo intelligence chạy trực tiếp trên vi điều khiển siêu nhỏ — những chip có RAM chỉ vài KB, không cần CPU mạnh hay kết nối internet. Thay vì gửi dữ liệu lên cloud để xử lý, thiết bị tự xử lý ngay tại chỗ bằng mô hình machine learning được tối ưu cực nhỏ.
Nói đơn giản: biến cục pin CR2032 + cảm biến + chip nhỏ bằng hạt gạo thành một thiết bị “biết suy nghĩ”. Không cần WiFi, không cần cloud, không cần GPU. Mô hình phân loại tiếng động, nhận diện cử chỉ, dự đoán hỏng hóc máy — tất cả chạy trên chip embedded.
Tại sao TinyML quan trọng?
Hàng tỷ thiết bị IoT trên thế giới hiện nay vẫn chỉ thu thập dữ liệu thô rồi gửi về server xử lý. Điều này gây ra ba vấn đề lớn:
- Độ trễ: Gửi dữ liệu lên cloud rồi chờ response mất hàng trăm millisecond — không đủ nhanh cho ứng dụng thời gian thực như phát hiện va chạm xe hơi
- Bảo mật: Dữ liệu rời khỏi thiết bị = rủi ro bị chặn. TinyML giữ mọi thứ cục bộ, không gì rời chip
- Chi phí năng lượng: Truyền WiFi/GSM tốn gấp 1000 lần so với xử lý cục bộ. Thiết bị TinyML chạy được nhiều tháng bằng pin nhỏ

Với TinyML, một thiết bị ¥2 có thể nhận diện lệnh thoại “yes/no”, một cảm biến ¥5 có thể phát hiện bất thường của động cơ trước khi hỏng — không cần cloud, không cần subscription.
Cách TinyML hoạt động
Bước 1: Training trên máy tính
Bạn huấn luyện mô hình machine learning bình thường trên Python — TensorFlow, PyTorch, scikit-learn đều được. Sau đó chuyển sang dạng tối ưu cho embedded.
Bước 2: Quantization — nén mô hình
Mô hình float32 4 bytes/param → quantize xuống int8 chỉ 1 byte/param. Giảm dung lượng 4 lần, tăng tốc inference trên chip không có FPU. TensorFlow Lite hỗ trợ post-training quantization tự động.
Bước 3: Deploy lên vi điều khiển
Sử dụng TensorFlow Lite for Microcontrollers — thư viện C++ nhẹ chỉ 16KB trên Arm Cortex-M3. Hỗ trợ ESP32, Arduino Nano 33 BLE Sense, STM32, và nhiều board khác.

Bước 4: Inference trên thiết bị
Chip đọc dữ liệu từ cảm biến → đưa vào mô hình → xuất kết quả phân loại. Toàn bộ quy trình mất dưới 10ms, tiêu thụ milliwatts điện năng.
Phần cứng hỗ trợ TinyML
| Board | Chip | RAM | Flash | Giá |
|---|---|---|---|---|
| Arduino Nano 33 BLE Sense | nRF52840 | 256 KB | 1 MB | ~$25 |
| SparkFun Edge | Apollo3 Blue | 384 KB | 1 MB | ~$20 |
| ESP32-DevKitC | ESP32 | 520 KB | 4 MB | ~$5 |
| STM32F746 Discovery | STM32F746 | 320 KB | 1 MB | ~$25 |
| Coral Dev Board Micro | STM32F746 + Edge TPU | 320 KB | 1 MB | ~$35 |
Arduino Nano 33 BLE Sense là lựa chọn phổ biến nhất cho người mới bắt đầu. Board tích hợp sẵn cảm biến gia tốc, con quay hồi chuyển, từ kế, nhiệt kế, độ ẩm, áp suất, ánh sáng — không cần breadboard hay phụ kiện thêm.
Ứng dụng thực tế
- Nhận diện giọng nói: Wake word “OK Google” trên loa thông minh thực chất chạy TinyML trên chip embedded, không gửi audio lên cloud
- Phát hiện bất thường máy móc: Cảm biến rung gắn trên motor → mô hình phân loại bình thường/hỏng hóc → cảnh báo trước khi hỏng
- Nhận diện cử chỉ: Cảm biến accelerometer trên thiết bị đeo → điều khiển bằng cử chỉ tay
- Phân loại âm thanh: Phân biệt tiếng gõ cửa, kính vỡ, thú cưng kêu — chạy hoàn toàn offline trên ESP32
- Bảo mật và quyền riêng tư: Camera ESP32 nhận diện khuôn mặt cục bộ, không cần cloud, không lo bị hack

Bắt đầu với TinyML
Yêu cầu
- Arduino Nano 33 BLE Sense hoặc ESP32
- Arduino IDE hoặc PlatformIO
- Python trên máy tính (để training mô hình)
- Thư viện tflite-micro
Ví dụ đơn giản: Phân loại âm thanh
Bước 1: Thu thập dữ liệu — ghi âm 30 mẫu “vỗ tay”, 30 mẫu “gõ bàn”, 30 mẫu “im lặng” bằng micro trên Arduino.
Bước 2: Trích xuất đặc trưng — chuyển đổi audio thành spectrogram hoặc MFCC features bằng Python.
Bước 3: Huấn luyện mô hình neural network nhỏ (2-3 layer, ~1000 tham số).
Bước 4: Export sang TFLite format với int8 quantization → dung lượng dưới 10KB.
Bước 5: Upload lên Arduino bằng thư viện TensorFlowLite → board chạy phân loại real-time.
So sánh TinyML với các giải pháp khác
| Đặc điểm | TinyML | Edge AI (NPU) | Cloud AI |
|---|---|---|---|
| Bộ nhớ | 2-256 KB | 1-8 GB | Không giới hạn |
| Năng lượng | mW | 1-15W | 50-200W (server) |
| Độ trễ | <10ms | 10-50ms | 100-500ms |
| Chi phí thiết bị | $2-35 | $50-500 | Subscription |
| Kết nối | Không cần | Không cần | Bắt buộc |
TinyML không thay thế cloud AI cho mọi tác vụ. Nhưng với tác vụ đơn giản — phân loại, phát hiện bất thường, nhận diện cử chỉ — nó là giải pháp ưu việt về chi phí, năng lượng và bảo mật.
Triển vọng tương lai
Các chip thế hệ mới như Arduino Nano 33 BLE Sense Rev2 tích hợp sẵn NPU (Neural Processing Unit), tăng tốc inference lên 100x so với phần mềm thuần. bộ lệnh ARM Helium trên Cortex-M55/M85 cũng hỗ trợ SIMD cho ML inference.
Xu hướng tương lai: mỗi thiết bị IoT trong nhà — từ bóng đèn đến tủ lạnh — đều có khả năng “suy nghĩ” cục bộ, không phụ thuộc vào bất kỳ cloud nào.
TinyML đang biến vi điều khiển ¥2 thành bộ não nhỏ bé nhưng thông minh. Nếu bạn muốn bắt đầu, Arduino Nano 33 BLE Sense + TensorFlow Lite Micro là combination đơn giản nhất hiện nay.
