Tonton ceramah, sesi produk, lokakarya, dan lainnya dari Google I / O Lihat playlist

TensorFlow Lite untuk Mikrokontroler

TensorFlow Lite untuk Mikrokontroler dirancang untuk menjalankan model pembelajaran mesin di mikrokontroler dan perangkat lain dengan hanya beberapa kilobyte memori. Runtime inti hanya muat dalam 16 KB pada Arm Cortex M3 dan dapat menjalankan banyak model dasar. Itu tidak memerlukan dukungan sistem operasi, pustaka C atau C ++ standar, atau alokasi memori dinamis.

Mengapa mikrokontroler penting

Mikrokontroler biasanya kecil, perangkat komputasi berdaya rendah yang tertanam di dalam perangkat keras yang memerlukan komputasi dasar. Dengan menghadirkan pembelajaran mesin ke mikrokontroler kecil, kita dapat meningkatkan kecerdasan miliaran perangkat yang kita gunakan dalam hidup kita, termasuk peralatan rumah tangga dan perangkat Internet of Things, tanpa bergantung pada perangkat keras yang mahal atau koneksi internet yang andal, yang sering kali bergantung pada bandwidth dan kendala daya dan menghasilkan latensi tinggi. Ini juga dapat membantu menjaga privasi, karena tidak ada data yang meninggalkan perangkat. Bayangkan peralatan pintar yang dapat beradaptasi dengan rutinitas harian Anda, sensor industri cerdas yang memahami perbedaan antara masalah dan operasi normal, dan mainan ajaib yang dapat membantu anak-anak belajar dengan cara yang menyenangkan dan menyenangkan.

Platform yang didukung

TensorFlow Lite untuk Mikrokontroler ditulis dalam C ++ 11 dan membutuhkan platform 32-bit. Ini telah diuji secara ekstensif dengan banyak prosesor berdasarkan arsitektur Arm Cortex-M Series , dan telah di-porting ke arsitektur lain termasuk ESP32 . Kerangka kerja ini tersedia sebagai pustaka Arduino. Itu juga dapat menghasilkan proyek untuk lingkungan pengembangan seperti Mbed. Ini adalah open source dan dapat disertakan dalam proyek C ++ 11 apa pun.

Papan pengembangan berikut ini didukung:

Jelajahi contohnya

Setiap aplikasi contoh ada di Github dan memiliki file README.md yang menjelaskan bagaimana aplikasi itu dapat diterapkan ke platform yang didukung. Beberapa contoh juga memiliki tutorial ujung ke ujung menggunakan platform tertentu, seperti yang diberikan di bawah ini:

Alur Kerja

Langkah-langkah berikut diperlukan untuk menerapkan dan menjalankan model TensorFlow pada mikrokontroler:

  1. Latih model :
    • Buat model TensorFlow kecil yang sesuai dengan perangkat target Anda dan berisi operasi yang didukung .
    • Ubah menjadi model TensorFlow Lite menggunakan konverter TensorFlow Lite .
    • Konversikan ke array C byte menggunakan alat standar untuk menyimpannya dalam memori program hanya-baca pada perangkat.
  2. Jalankan inferensi pada perangkat menggunakan pustaka C ++ dan proses hasilnya.

Batasan

TensorFlow Lite untuk Mikrokontroler dirancang untuk batasan khusus pengembangan mikrokontroler. Jika Anda bekerja pada perangkat yang lebih kuat (misalnya, perangkat Linux yang disematkan seperti Raspberry Pi), kerangka kerja TensorFlow Lite standar mungkin lebih mudah diintegrasikan.

Batasan berikut harus dipertimbangkan:

  • Dukungan untuk subset terbatas dari operasi TensorFlow
  • Dukungan untuk perangkat terbatas
  • C ++ API level rendah membutuhkan manajemen memori manual
  • Pelatihan di perangkat tidak didukung

Langkah selanjutnya