Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial Internet of Things >> Tertanam

Mikrokontroler semakin berperan dalam edge AI

Hanya beberapa tahun yang lalu, diasumsikan bahwa pembelajaran mesin (ML) — dan bahkan pembelajaran mendalam (DL) — hanya dapat dilakukan pada perangkat keras kelas atas, dengan pelatihan dan inferensi di tepi yang dijalankan oleh gateway, server tepi, atau data pusat. Itu adalah asumsi yang valid pada saat itu karena tren mendistribusikan sumber daya komputasi antara cloud dan edge masih dalam tahap awal. Namun skenario ini telah berubah secara dramatis berkat upaya penelitian dan pengembangan intensif yang dilakukan oleh industri dan akademisi.

Hasilnya adalah saat ini, prosesor yang mampu menghasilkan banyak triliunan operasi per detik (TOPS) tidak diperlukan untuk melakukan ML. Dalam banyak kasus, mikrokontroler terbaru, beberapa dengan akselerator ML tertanam, dapat membawa ML ke perangkat edge.

Perangkat ini tidak hanya dapat menjalankan ML, tetapi juga dapat melakukannya dengan baik, dengan biaya rendah, dengan konsumsi daya yang sangat rendah, menghubungkan ke cloud hanya jika benar-benar diperlukan. Singkatnya, mikrokontroler dengan akselerator ML terintegrasi mewakili langkah berikutnya dalam menghadirkan komputasi ke sensor seperti mikrofon, kamera, dan kondisi lingkungan yang memantau, yang menghasilkan data yang menjadi dasar realisasi semua manfaat IoT.

Seberapa dalam tepinya?

Sementara edge secara luas dianggap sebagai titik terjauh dalam jaringan IoT, umumnya dianggap sebagai gateway canggih atau server edge. Namun, itu bukan di mana ujungnya benar-benar berakhir. Itu berakhir pada sensor di dekat pengguna. Menjadi logis untuk menempatkan sebanyak mungkin daya analitik di dekat pengguna, tugas yang cocok untuk mikrokontroler.


Contoh model MobileNet V1 dari berbagai pengali lebar menunjukkan dampak drastis pada jumlah parameter, perhitungan, dan akurasi. Namun, hanya mengubah pengganda lebar dari 1,0 menjadi 0,75 minimal mempengaruhi akurasi TOP-1 tetapi secara signifikan berdampak pada jumlah parameter dan perhitungan (Gambar:NXP)

Sebuah kasus dapat dibuat bahwa komputer papan tunggal juga dapat digunakan untuk pemrosesan tepi, karena mereka mampu melakukan kinerja yang luar biasa dan, ketika dalam kelompok, dapat menyaingi superkomputer kecil. Tetapi mereka masih terlalu besar dan terlalu mahal untuk digunakan dalam ratusan atau ribuan yang dibutuhkan dalam aplikasi skala besar. Mereka juga memerlukan sumber daya DC eksternal yang dalam beberapa kasus mungkin melebihi apa yang tersedia, sementara MCU hanya menggunakan miliwatt dan dapat ditenagai oleh baterai sel berbentuk koin atau bahkan beberapa sel surya.

Jadi, tidak mengherankan jika minat pada mikrokontroler untuk menjalankan ML di edge telah menjadi area pengembangan yang sangat panas. Bahkan memiliki nama – TinyML. Tujuan TinyML adalah untuk memungkinkan inferensi, dan akhirnya pelatihan, untuk dieksekusi pada perangkat kecil berdaya rendah dengan sumber daya terbatas, dan terutama mikrokontroler, daripada platform yang lebih besar atau di cloud. Hal ini memerlukan model jaringan saraf untuk dikurangi ukurannya untuk mengakomodasi sumber daya pemrosesan, penyimpanan, dan bandwidth yang relatif sederhana dari perangkat ini, tanpa mengurangi fungsionalitas dan akurasi secara signifikan.

Skema yang dioptimalkan sumber daya ini memungkinkan perangkat menyerap data sensor yang cukup untuk memenuhi tujuannya sambil menyempurnakan akurasi dan mengurangi kebutuhan sumber daya. Jadi, meskipun data mungkin masih dikirim ke cloud (atau mungkin pertama ke gateway edge dan kemudian ke cloud), jumlahnya akan jauh lebih sedikit karena analisis yang cukup besar telah dilakukan.

Contoh populer TinyML dalam tindakan adalah sistem deteksi objek berbasis kamera yang, meskipun mampu menangkap gambar beresolusi tinggi, memiliki penyimpanan terbatas dan memerlukan pengurangan resolusi gambar. Namun, jika kamera menyertakan analitik pada perangkat, hanya objek menarik yang diambil alih-alih seluruh pemandangan, dan karena gambar yang relevan lebih sedikit, resolusi yang lebih tinggi dapat dipertahankan. Kemampuan ini biasanya dikaitkan dengan perangkat yang lebih besar dan lebih kuat, tetapi teknologi ML yang kecil memungkinkannya terjadi pada mikrokontroler.

Kecil tapi kuat

Meskipun TinyML adalah paradigma yang relatif baru, TinyML sudah memberikan hasil yang mengejutkan untuk inferensi (bahkan dengan mikrokontroler yang relatif sederhana) dan pelatihan (pada mikrokontroler yang lebih kuat) dengan kehilangan akurasi minimal. Contoh terbaru termasuk pengenalan suara dan wajah, perintah suara dan pemrosesan bahasa alami, dan bahkan menjalankan beberapa algoritme penglihatan yang kompleks secara paralel.

Secara praktis, ini berarti bahwa mikrokontroler seharga kurang dari $2 dengan inti Arm Cortex-M7 500 MHz dan memori dari 28 Kbyte hingga 128 Kbyte dapat memberikan kinerja yang diperlukan untuk membuat sensor benar-benar cerdas.

Bahkan pada harga dan tingkat kinerja ini, mikrokontroler ini memiliki beberapa fungsi keamanan, termasuk AES-128, dukungan untuk beberapa jenis memori eksternal, Ethernet, USB, dan SPI, dan menyertakan atau mendukung berbagai jenis sensor, serta Bluetooth, Wi-Fi, dan SPDIF dan saya 2 C. antarmuka audio. Habiskan sedikit lebih banyak, dan perangkat biasanya akan memiliki 1-GHz Arm Cortex-M7, 400-MHz Cortex-M4, 2 Mbytes RAM, dan akselerasi grafis. Konsumsi daya biasanya tidak lebih dari beberapa miliampere dari suplai 3,3 VDC.


Kasus penggunaan pembelajaran mesin (Gambar:NXP)

Beberapa kata tentang TOPS

Konsumen tidak sendirian ketika mereka menggunakan satu metrik untuk menentukan kinerja; desainer melakukannya sepanjang waktu, dan departemen pemasaran menyukainya. Ini karena spesifikasi judul membuat perbedaan antar perangkat menjadi sederhana, atau begitulah kelihatannya. Contoh klasik adalah CPU, yang selama bertahun-tahun ditentukan oleh kecepatan clock-nya. Untungnya bagi desainer dan konsumen, hal ini tidak lagi terjadi. Menggunakan hanya satu metrik untuk menilai CPU sama dengan mengevaluasi kinerja mobil dengan garis merah mesin. Ini bukannya tidak berarti, tetapi tidak ada hubungannya dengan seberapa kuat mesin atau seberapa baik performa mobil karena banyak faktor lain yang bersama-sama menentukan karakteristik ini.

Sayangnya, hal yang sama semakin berlaku untuk akselerator jaringan saraf, termasuk yang berada dalam MPU atau mikrokontroler berkinerja tinggi, yang ditentukan oleh miliaran atau triliunan operasi per detik karena, sekali lagi, ini adalah angka yang mudah diingat. Namun dalam praktiknya, GOPS dan TOPS sendiri adalah metrik yang relatif tidak berarti dan mewakili pengukuran (tidak diragukan lagi yang terbaik) yang dibuat di lab daripada mewakili lingkungan operasi yang sebenarnya. Misalnya, TOPS tidak mempertimbangkan batasan bandwidth memori, overhead CPU yang diperlukan, pra-dan pasca-pemrosesan, dan faktor lainnya. Ketika semua ini dan yang lainnya dipertimbangkan, seperti kinerja ketika digunakan pada papan tertentu dalam operasi aktual, kinerja tingkat sistem kemungkinan bisa menjadi 50% atau 60% dari nilai TOPS pada lembar data.

Semua angka ini memberi tahu Anda jumlah elemen komputasi dalam perangkat keras dikalikan dengan kecepatan clocknya, bukan seberapa sering data tersedia saat dibutuhkan untuk berfungsi. Jika data selalu segera tersedia, konsumsi daya tidak menjadi masalah, kendala memori tidak ada, dan algoritme dipetakan dengan mulus ke perangkat keras, itu akan lebih bermakna. Tapi dunia nyata tidak menghadirkan lingkungan yang ideal seperti itu.

Ketika diterapkan pada akselerator ML di mikrokontroler, metrik ini bahkan kurang berharga. Perangkat kecil ini biasanya memiliki nilai 1 hingga 3 TOPS tetapi masih dapat memberikan kemampuan inferensi yang diperlukan di banyak aplikasi ML. Perangkat ini juga mengandalkan prosesor Arm Cortex yang dirancang khusus untuk aplikasi ML berdaya rendah. Seiring dengan dukungan untuk operasi bilangan bulat dan mengambang dan banyak fitur lain di mikrokontroler, menjadi jelas bahwa TOPS, atau metrik tunggal lainnya, tidak mampu mendefinisikan kinerja secara memadai baik sendiri atau dalam suatu sistem.

Kesimpulan

Keinginan untuk melakukan inferensi pada mikrokontroler secara langsung atau terpasang pada sensor, seperti kamera diam dan kamera video, kini muncul ketika domain IoT bergerak lebih dekat untuk melakukan pemrosesan sebanyak mungkin di edge. Meskipun demikian, kecepatan pengembangan prosesor aplikasi dan akselerator jaringan saraf dalam mikrokontroler sangat cepat, dan solusi yang lebih mahir sering kali muncul. Trennya adalah untuk mengkonsolidasikan lebih banyak fungsi AI-sentris seperti pemrosesan jaringan saraf bersama dengan prosesor aplikasi di mikrokontroler tanpa secara dramatis meningkatkan konsumsi daya atau ukuran.

Saat ini, model dapat dilatih pada CPU atau GPU yang lebih kuat dan kemudian diimplementasikan pada mikrokontroler menggunakan mesin inferensi seperti TensorFlow Lite untuk memperkecil ukurannya guna memenuhi kebutuhan sumber daya mikrokontroler. Penskalaan dapat dengan mudah dilakukan untuk mengakomodasi persyaratan ML yang lebih besar. Tidak lama lagi akan memungkinkan untuk melakukan tidak hanya inferensi tetapi juga pelatihan pada perangkat ini, yang secara efektif akan membuat mikrokontroler menjadi pesaing yang lebih tangguh untuk solusi komputasi yang lebih besar dan lebih mahal.

>> Artikel ini awalnya diterbitkan pada situs saudara kami, EE Times.


Tertanam

  1. Peran Cloud Computing dalam Kecerdasan
  2. Peran Sistem Tertanam di Mobil
  3. Pendingin ruang uap semakin berperan dalam produk panas
  4. Pemanenan energi RF semakin berperan dalam aplikasi berbasis AI
  5. USB-C menemukan peran yang berkembang dalam produk yang dapat dikenakan dan seluler
  6. Modul AI kecil dibuat di TPU Google Edge
  7. Papan sensor pintar mempercepat pengembangan AI tepi
  8. Kamera pintar menawarkan AI edge vision mesin turnkey edge
  9. Robot Berperan dalam Industri 4.0
  10. Peran Edge Computing dalam Penerapan IoT Komersial