Saya baru-baru ini membaca tentang jaringan saraf di lingkungan terbatas (khususnya, Implementasi Jaringan Saraf Tiruan pada Mikrokontroler Delapan Bit Murah ) dan aplikasinya ke perangkat IoT (misalnya regresi untuk memprediksi berbagai hal berdasarkan input sensor, dll).
Ini tampaknya ideal untuk aplikasi sederhana di mana pemrosesan tidak kritis terhadap waktu, dan data untuk diproses akan relatif jarang. Namun, penelitian lebih lanjut menunjukkan bahwa pelatihan jaringan saraf dalam lingkungan yang terbatas sumber daya adalah ide yang buruk (lihat jawaban untuk Apakah mungkin untuk menjalankan jaringan saraf pada mikrokontroler ).
Apakah ini masih berlaku untuk pendekatan Cotton, Wilamowski dan Dündar yang saya tautkan? Apakah perlu untuk melatih jaringan yang dirancang untuk penggunaan sumber daya rendah pada perangkat yang lebih kuat di jaringan IoT saya?
Untuk konteks, jika saya memiliki sensor yang mentransmisikan pengaturan panas, saya sedang mempertimbangkan jaringan saraf seperti yang dijelaskan dalam makalah untuk memprediksi pengaturan boiler yang diinginkan berdasarkan itu dan waktu hari, dll. Pelatihan akan berguna untuk mengubah jaringan saraf output berdasarkan pada lebih banyak data yang disediakan oleh pengguna. Pertanyaan Quora ini menggambarkan skenario yang sama dengan baik, dan membahas detail implementasi untuk jaringan saraf, tetapi pertanyaan saya lebih fokus pada apakah menjalankan jaringan pada aktuator itu sendiri akan berhasil.
sumber
Jawaban:
Menurut makalah pertama , berlari bukanlah masalah. Itulah tujuannya. Hanya ada batasan berat maksimum:
Adapun pelatihan, sejauh yang saya mengerti implementasi yang dijelaskan, pengontrol PIC menerima parameter dari sumber eksternal.
Saya menduga bahwa pelatihan dilakukan secara eksternal juga.
Makalah ini juga memberikan referensi untuk Pelatih Jaringan Saraf yang mungkin digunakan untuk menentukan nilai-nilai yang diprogram ke dalam memori PIC.
"Metode komputasi vektor gradien dan matriks Jacobean dalam jaringan saraf yang terhubung secara sewenang-wenang,"
Sekarang, saya telah melihat yang pertama yang menggambarkan arsitektur dan algoritma jaringan untuk digunakan dengannya. Tetapi perangkat lunak Neural Network Trainer yang digunakan di sini diimplementasikan dalam MATLAB.
Saya harus menyebutkan bahwa jaringan yang sepenuhnya terhubung memiliki angka bobot yang lebih rendah untuk tugas yang sama daripada arsitektur lapis demi lapis. Itu membuatnya lebih cocok untuk mikrokontroler.
Saya bukan ahli jaringan saraf dan ini cukup kompleks sehingga saya bisa salah, tetapi berdasarkan makalah ini saya akan mengatakan bahwa pendekatan Cotton, Wilamowski, dan Durndar membutuhkan platform eksternal yang lebih kuat untuk melakukan pelatihan.
Tentang menjalankan jaringan saraf pada mikrokontroler, ST Mikroelektronika baru saja mengumumkan toolkit STM32Cube.AI: Mengubah Jaringan Saraf menjadi Kode Dioptimalkan untuk STM32 untuk mengubah jaringan saraf pra-pelatihan dari perpustakaan populer ke sebagian besar MCU STM32 mereka.
sumber