3 poin oleh GN⁺ 2024-01-17 | 1 komentar | Bagikan ke WhatsApp

Apa itu TinyML

  • TinyML berarti penggunaan machine learning pada mikrokontroler.
  • Berbeda dengan sistem yang digunakan pada ML tradisional, TinyML digunakan pada sistem dengan CPU dan RAM yang sangat kecil, serta konsumsi daya pada tingkat miliwatt atau mikrowatt.
  • TinyML mencakup pekerjaan mengecilkan model besar agar dapat digunakan pada perangkat dengan sumber daya sangat terbatas dan mikrokontroler.
  • Situs web resmi TinyML Foundation adalah https://www.tinyml.org/
  • Ada rangkaian 3 kursus gratis yang disediakan oleh Harvard University:
    1. Dasar-dasar TinyML (apa yang dibuat, mengapa dibuat, dan masalah apa yang ada)
    2. Aplikasi TinyML (berbasis data, bias, dan lain-lain)
    3. Penerapan TinyML (di mana model akan ditempatkan, keamanan, dan privasi)

Prinsip dasar TinyML

  • Sistem embedded yang menggunakan mikrokontroler memiliki memori hingga 256kB sehingga tidak dapat menjalankan model besar.
  • Beberapa contoh sistem operasi yang dapat digunakan bersama mikrokontroler:
    • FreeRTOS
    • Mbed OS
  • Machine learning terdiri dari algoritma yang mencari pola dalam data.
  • Dalam TinyML, algoritma-algoritma ini dikompresi agar dapat menemukan pola dalam data secara efektif.
  • Data yang dihasilkan setiap hari di IoT mencapai 5 kuintiliun byte, dan kurang dari 1% di antaranya yang dianalisis.

Teknik kompresi algoritma

  • Pruning

    • Pruning sinapsis: menghapus koneksi jaringan dari model. Terkadang akurasi dapat menurun.
    • Pruning neuron: menghapus seluruh neuron dari model untuk mengurangi kebutuhan komputasi jaringan.
  • Quantization

    • Mendiskretkan nilai ke dalam rentang yang lebih kecil. Misalnya, jika bilangan floating-point didiskretkan ke rentang -128 hingga 127, maka hanya perlu menelusuri 256 nilai.
    • Jika nilai floating-point yang disimpan dalam 4 byte diubah menjadi nilai integer yang disimpan dalam 1 byte, ukurannya berkurang 4 kali lipat.
    • Karena sumber daya terbatas, quantization sangat penting dalam TinyML.
  • Knowledge distillation

    • Membuat model menjadi lebih kecil dengan menerapkan pengetahuan dan keahlian.

Alat

  • Menggunakan TensorFlow Lite.
  • TensorFlow berfokus pada peneliti ML, sedangkan TensorFlow Lite ditujukan untuk pengembang aplikasi.

Penggunaan TinyML

  • Contoh penggunaan TinyML yang khusus untuk dunia DIY, maker, dan hacker dapat ditemukan di situs web ini.

Penggunaan TinyML di industri

  • Di bidang industri, TinyML digunakan untuk pemeliharaan dengan meningkatkan efisiensi dan menurunkan biaya melalui peringatan saat getaran menandakan akan terjadi kerusakan.
  • Masalah akurasi dapat menimbulkan alarm palsu, dan tanggung jawab atas alarm palsu tersebut berada pada operator atau sistem.

TinyML di lingkungan

  • Alih-alih mengumpulkan data lalu memprosesnya, TinyML memungkinkan diperolehnya respons real-time terhadap perubahan lingkungan. Misalnya, perubahan dalam kehidupan satwa liar dapat diketahui secara real-time.

TinyML untuk manusia

  • Membantu penyandang disabilitas melakukan lebih banyak tugas tanpa menggunakan tangan.
  • Meningkatkan UI dan UX aplikasi agar lebih mudah digunakan.
  • Teknologi diciptakan untuk meningkatkan pengalaman manusia. Teknologi harus membantu manusia.

Risiko dan kekurangan

  • Apakah ini akan bekerja dengan baik untuk semua kelompok populasi?
  • Apakah privasi data terjamin?
  • Apakah data ini dapat dilindungi?
  • Teknologi harus dibangun berdasarkan AI yang berpusat pada manusia. Hal ini perlu dipertimbangkan dalam proses desain, pengembangan, dan penerapan.

Opini GN⁺

  • TinyML adalah teknologi inovatif yang memungkinkan machine learning berjalan bahkan di lingkungan dengan sumber daya terbatas, dan dapat sangat meningkatkan efisiensi serta kecerdasan perangkat IoT.
  • Teknik kompresi algoritma seperti pruning, quantization, dan knowledge distillation adalah elemen kunci yang mengecilkan model machine learning agar dapat dijalankan pada perangkat berdaya rendah.
  • Penerapan TinyML dapat membantu meningkatkan kualitas hidup manusia di berbagai bidang seperti pemeliharaan industri, pemantauan lingkungan, dan dukungan bagi penyandang disabilitas, dan ini merupakan contoh baik dari dampak positif teknologi terhadap masyarakat.

1 komentar

 
GN⁺ 2024-01-17
Opini Hacker News
  • Mengembangkan compiler Rust TinyML

    • Sebagai proyek tesis master, dikembangkan compiler TinyML berbasis Rust.
    • Menggunakan macro prosedural Rust untuk mengevaluasi model pada waktu kompilasi, lalu menghasilkan fungsi predict() yang menjalankan inferensi untuk model yang diberikan.
    • Berhasil mencapai ukuran biner yang jauh lebih kecil dibandingkan TensorFlow Lite for Microcontrollers dan engine lainnya.
    • Berhasil menjalankan pengenal perintah suara (TinyConv) pada ATmega328 8-bit (Arduino Uno).
  • Daya tarik bidang TinyML

    • TinyML adalah bidang yang menarik karena memungkinkan banyak hal dilakukan bahkan pada perangkat keras yang sangat kecil.
    • Misalnya, dengan esp32-s3, dimungkinkan membangun sistem computer vision real-time (harganya sekitar 2 dolar).
    • Bidang TinyML juga mudah dimasuki lewat solusi seperti AutoML.
    • Perusahaan hardware mulai menghadirkan MCU dengan NPU untuk meminimalkan konsumsi daya.
    • TinyML kemungkinan akan mendapat lebih banyak perhatian ke depan.
  • Virus yang menargetkan infrastruktur dengan LLM

    • Dibayangkan virus yang menargetkan infrastruktur dengan menggunakan LLM (Large Language Models).
    • Perangkat kecil bisa disembunyikan di jaringan listrik untuk mengumpulkan lalu lintas jaringan dan mencoba merusak sistem.
    • Perangkat semacam itu dapat disembunyikan di peralatan jaringan dan sulit dideteksi karena tidak memerlukan lalu lintas eksternal.
  • Penjelasan Edge Impulse tentang TinyML / Edge ML

    • Edge Impulse membangun platform yang memungkinkan pembuatan model ML dan deployment ke edge device.
    • Pengguna dapat membuat akun, membangun model keyword spotting, lalu langsung menjalankannya di WASM.
    • Kemunculan akselerator embedded ASIC/NPU mendorong adopsi Edge ML.
  • Contoh penggunaan ESP32, Tensor Flow Lite, dan Edge Impulse dari Hacker Box

    • Baru-baru ini Hacker Box menyediakan contoh terperinci menggunakan ESP32, Tensor Flow Lite, dan Edge Impulse.
  • Masa kini dan masa depan TinyML

    • TinyML berarti menjalankan machine learning pada perangkat embedded berdaya rendah.
    • Semua ponsel memiliki chip DSP berdaya rendah yang mendeteksi kata kunci seperti "Hey Google" atau "Hey Siri".
    • TinyML adalah subset dari edge AI, yang mencakup semua jenis perangkat yang berada di tepi jaringan.
    • Bidang ini sangat menarik, memecahkan beragam masalah, dan merupakan teknologi yang dapat diterapkan hampir di semua ruang.
  • Beragam pendapat tentang TinyML

    • Ada pendapat bahwa dalam bidang TinyML, membuat solusi di bawah berbagai keterbatasan akan membawa dampak penting.
    • TinyML, seperti IoT, dianggap sebagai teknologi penting masa depan, tetapi dalam praktiknya berkembang dengan lambat.
    • Bagi mereka yang mencari konten tambahan tentang TinyML, tersedia video dari konferensi Asia 2023.