Apa Itu TinyML dan Mengapa Penting untuk Perangkat IoT?


Ilustrasi TinyML

Ilustrasi TinyML

Machine learning atau pembelajaran mesin kini bukan lagi teknologi yang hanya ditemukan di laboratorium atau pusat data. Tanpa disadari, teknologi ini telah menjadi bagian dari aktivitas sehari-hari. Ketika seseorang menggunakan media sosial, mesin pencari, asisten virtual, hingga layanan email, kemungkinan besar ada model machine learning yang bekerja di baliknya.

Model tersebut membantu sistem mengenali pola, memahami informasi, memberikan rekomendasi, hingga menyaring pesan yang dianggap sebagai spam. 

Namun, di balik kemampuan tersebut terdapat satu persoalan besar: machine learning membutuhkan sumber daya komputasi.

Semakin kompleks model yang digunakan, semakin besar pula kebutuhan terhadap prosesor, memori, penyimpanan, energi, dan infrastruktur pendukung. Kondisi ini membuat banyak model machine learning harus dijalankan melalui cloud yang menyediakan sumber daya komputasi dalam jumlah besar.

Masalahnya, tidak semua perangkat dapat bergantung pada cloud.

Perangkat yang berada di lokasi dengan koneksi internet terbatas, misalnya, akan kesulitan jika setiap data yang dikumpulkan harus dikirim ke server. Begitu pula aplikasi yang membutuhkan respons cepat karena pengiriman data ke cloud dapat menambah latensi.

Kebutuhan untuk menjalankan machine learning secara langsung pada perangkat kecil inilah yang kemudian mendorong perkembangan Tiny Machine Learning atau TinyML.

 

Apa Itu TinyML?

Secara sederhana, TinyML adalah pendekatan machine learning yang memungkinkan model kecerdasan buatan berjalan pada perangkat dengan sumber daya sangat terbatas dan konsumsi daya rendah. Perangkat tersebut dapat berupa microcontroller, sensor, perangkat IoT, dan berbagai sistem embedded.

Berbeda dengan model machine learning yang biasanya dijalankan pada komputer, server, atau cloud dengan kemampuan komputasi besar, TinyML dirancang agar model dapat bekerja pada perangkat kecil. Konsep ini membawa proses machine learning semakin dekat dengan sumber data atau dikenal sebagai edge.

Misalnya, sebuah sensor mendeteksi suara, gerakan, suhu, getaran, atau gambar. Dalam sistem berbasis cloud, data tersebut dapat dikirim ke server untuk dianalisis. Server kemudian mengirimkan kembali hasil analisis kepada perangkat.

Dalam TinyML, sebagian proses tersebut dapat dilakukan langsung pada perangkat. Sensor menangkap data, model machine learning menganalisisnya, kemudian perangkat menghasilkan respons berdasarkan hasil analisis tersebut. Dengan demikian, perangkat tidak hanya menjadi pengumpul data, tetapi juga mampu melakukan analisis secara lokal.

TinyML sebagai bidang yang mencakup hardware, algoritma, dan software untuk melakukan analisis data sensor langsung pada perangkat dengan konsumsi daya yang sangat rendah, bahkan pada kisaran miliwatt atau lebih rendah.

 

Memahami Hubungan Machine Learning, Deep Learning, dan TinyML

Untuk memahami TinyML, penting terlebih dahulu mengetahui hubungan antara machine learning dan deep learning.

Machine learning merupakan bagian dari kecerdasan buatan yang memungkinkan komputer mempelajari pola dari data. Data historis digunakan untuk melatih model sehingga model dapat membuat prediksi terhadap data baru.

Tujuannya bukan sekadar membuat komputer menghafal data pelatihan. Model diharapkan mampu melakukan generalisasi, yaitu menggunakan pola yang dipelajari untuk menghasilkan prediksi terhadap data yang sebelumnya belum pernah ditemui. 

Salah satu pendekatan yang banyak digunakan dalam machine learning adalah neural network.

Neural network, yang juga disebut artificial neural network atau ANN, menjadi salah satu dasar dari deep learning. Arsitekturnya terinspirasi dari cara neuron biologis dalam otak manusia berkomunikasi. Deep learning sendiri merupakan bagian dari machine learning yang umumnya menggunakan model lebih kompleks dan membutuhkan sumber daya komputasi lebih besar.

Di sinilah TinyML menghadapi tantangan sekaligus menawarkan solusi. Model yang biasanya membutuhkan sumber daya besar harus dioptimalkan agar dapat berjalan pada perangkat kecil. Dengan kata lain, TinyML berusaha membuat teknologi machine learning menjadi lebih ringan sehingga dapat digunakan pada perangkat yang memiliki keterbatasan memori, prosesor, dan energi.

 

Mengapa TinyML Penting?

Perkembangan TinyML tidak dapat dilepaskan dari semakin banyaknya perangkat yang memiliki sensor. Perangkat IoT, peralatan rumah tangga, perangkat industri, sistem pertanian, hingga berbagai sensor lingkungan terus menghasilkan data. Jika seluruh data tersebut harus dikirim ke cloud untuk diproses, kebutuhan bandwidth dan infrastruktur akan meningkat.

Selain itu, proses pengiriman data juga dapat menimbulkan latensi. TinyML menawarkan alternatif dengan melakukan pemrosesan langsung pada perangkat. 

Prinsipnya sederhana: membuat machine learning mampu melakukan lebih banyak hal dengan sumber daya yang lebih sedikit.

Pendekatan tersebut memungkinkan perangkat bekerja secara always-on, atau terus aktif, tanpa harus bergantung sepenuhnya pada server atau koneksi internet.

 

Manfaat Utama TinyML

TinyML menawarkan sejumlah keuntungan yang membuatnya menarik untuk diterapkan pada berbagai perangkat.

  1. Mengurangi Latensi
    Keunggulan pertama adalah kemampuan mengurangi latensi. Pada sistem berbasis cloud, data harus dikirim ke server terlebih dahulu sebelum hasil analisis dapat diperoleh. Proses komunikasi tersebut membutuhkan waktu. TinyML memungkinkan inferensi dilakukan langsung pada perangkat. Data tidak harus dikirim ke server terlebih dahulu.

    Hasilnya, respons dapat diberikan lebih cepat. Kemampuan ini penting untuk aplikasi yang membutuhkan respons real-time, seperti sistem keamanan, perangkat industri, kendaraan, dan perangkat IoT. Semakin cepat perangkat dapat menganalisis data dan mengambil keputusan, semakin kecil pula ketergantungannya terhadap koneksi jaringan.

  2. Menghemat Energi
    TinyML dirancang untuk bekerja pada perangkat dengan konsumsi daya rendah. Microcontroller membutuhkan energi yang relatif kecil sehingga perangkat dapat bekerja dalam waktu lama, terutama jika menggunakan baterai.

    Penghematan energi juga dapat diperoleh karena perangkat tidak harus terus-menerus mengirimkan data ke server. Setiap proses komunikasi membutuhkan energi. Dengan memproses data secara lokal, kebutuhan komunikasi dapat dikurangi.

    Dampaknya bukan hanya pada konsumsi daya perangkat, tetapi juga pada kebutuhan terhadap infrastruktur server dan jaringan.

  3. Mengurangi Kebutuhan Bandwidth
    Tidak semua perangkat IoT memiliki koneksi internet yang stabil. Ada perangkat yang dipasang di wilayah terpencil atau lokasi dengan keterbatasan jaringan. Dalam kondisi seperti itu, mengirim data secara terus-menerus ke cloud bukan pilihan ideal. TinyML memungkinkan sensor menangkap data dan langsung memprosesnya pada perangkat.

    Artinya, perangkat tidak harus mengirim seluruh data mentah ke server. Data yang dikirim dapat dibatasi pada informasi penting, seperti hasil analisis, notifikasi, atau peringatan tertentu. Dengan demikian, kebutuhan bandwidth dapat dikurangi.

  4. Meningkatkan Privasi Data
    Pemrosesan lokal juga memiliki manfaat dari sisi privasi. Dalam sistem cloud, data harus dikirim ke server untuk dianalisis. Artinya, data meninggalkan perangkat.

    Pada TinyML, sebagian data dapat diproses langsung di perangkat sehingga tidak perlu selalu dikirim ke server. Pendekatan ini dapat membantu mengurangi transfer data, terutama pada aplikasi yang menangani informasi sensitif.

    Meski begitu, TinyML bukan berarti otomatis membuat perangkat sepenuhnya aman. Aspek keamanan hardware, software, model, dan komunikasi tetap perlu diperhatikan.

 

Penerapan TinyML

Penerapan TinyML sangat luas, terutama pada sektor yang menggunakan sensor dan Internet of Things atau IoT. IoT merupakan jaringan perangkat fisik yang dilengkapi sensor, software, dan teknologi komunikasi sehingga dapat mengumpulkan dan bertukar data.

Ketika kemampuan machine learning ditambahkan ke perangkat tersebut, sensor tidak hanya mengumpulkan data, tetapi juga dapat menganalisisnya. Beberapa contoh penerapan TinyML antara lain:

  • Computer vision, untuk menganalisis informasi visual.
  • Visual wake words, untuk mengenali objek atau kondisi visual tertentu.
  • Keyword spotting, untuk mengenali kata atau perintah tertentu.
  • Predictive maintenance, untuk mendeteksi potensi kerusakan mesin.
  • Gesture recognition, untuk mengenali gerakan.
  • Pemantauan mesin industri.
  • Pemantauan berbagai perangkat IoT.

Berikut beberapa contoh bidang yang dapat memanfaatkan TinyML.

  • TinyML untuk Pertanian
    Sektor pertanian dapat memanfaatkan TinyML untuk memantau kondisi tanaman dan peternakan secara real-time. Sensor dapat ditempatkan di area pertanian untuk mengumpulkan berbagai informasi. Dengan dukungan machine learning, data tersebut dapat dianalisis langsung pada perangkat.

    Pendekatan ini memungkinkan sistem mendeteksi kondisi tertentu tanpa harus mengirim seluruh data ke server. Sebagai contoh adalah Imagimob, perusahaan edge AI asal Swedia, yang mengembangkan platform machine learning untuk perangkat edge. Disebutkan pula kolaborasi 55 organisasi dari berbagai wilayah Uni Eropa untuk mempelajari pemanfaatan TinyML dalam pengelolaan tanaman dan peternakan.

    Penerapan semacam ini dapat menjadi penting ketika perangkat ditempatkan di area dengan konektivitas internet terbatas.

  • Predictive Maintenance untuk Industri
    Industri merupakan bidang lain yang berpotensi memperoleh manfaat besar dari TinyML. Kerusakan mesin dapat menyebabkan gangguan produksi dan meningkatkan biaya operasional. Karena itu, perusahaan membutuhkan cara untuk mengetahui kondisi mesin sebelum terjadi kerusakan serius.

    TinyML dapat digunakan untuk melakukan predictive maintenance. Perangkat berdaya rendah dapat dipasang pada mesin untuk memantau kondisinya secara terus-menerus.

    Model machine learning kemudian menganalisis data sensor untuk mencari pola yang menunjukkan adanya potensi masalah. Jika terdapat perubahan pola yang tidak normal, sistem dapat memberikan peringatan kepada operator.

    Salah satu contoh adalah EOLOGIX-PING. Perangkat tersebut memantau karakteristik suara atau acoustic signature dari bilah turbin angin untuk mendeteksi perubahan maupun kerusakan. Pemantauan berkelanjutan dapat membantu operator merespons kerusakan lebih cepat, sekaligus berpotensi mengurangi biaya pemeliharaan, risiko kegagalan, dan downtime.

  • TinyML untuk Pengalaman Pelanggan
    TinyML juga dapat digunakan untuk membantu perusahaan memahami konteks pengguna. Dalam pemasaran, personalisasi menjadi salah satu strategi penting. Perusahaan ingin memberikan layanan, iklan, maupun pesan yang sesuai dengan kebutuhan dan perilaku pelanggan. Perangkat edge yang menggunakan TinyML dapat menganalisis informasi tertentu secara lokal.

    Dengan demikian, perangkat dapat membantu memahami konteks pengguna tanpa harus selalu mengirimkan seluruh data ke server. Penerapan ini menunjukkan bahwa TinyML tidak hanya berguna untuk industri atau IoT, tetapi juga dapat mendukung pengalaman pengguna.

 

Bagaimana Workflow TinyML?

Membangun aplikasi TinyML pada dasarnya tetap mengikuti sejumlah tahapan dalam pengembangan machine learning. Model harus dibuat dan dilatih menggunakan data. Setelah itu, model perlu disesuaikan agar dapat berjalan pada perangkat dengan sumber daya terbatas. Perbedaan utama terletak pada target akhirnya.

Pada machine learning tradisional, model dapat dijalankan pada komputer dengan kapasitas besar atau cloud. Pada TinyML, model harus mampu berjalan pada microcontroller atau sistem embedded dengan memori yang jauh lebih kecil.

Salah satu framework yang dapat digunakan adalah TensorFlow Lite for Microcontrollers atau TF Lite Micro. Framework ini dirancang untuk menjalankan machine learning pada sistem embedded dengan kapasitas memori yang sangat kecil, bahkan hanya beberapa kilobyte.

Karena keterbatasan tersebut, model harus dibuat seefisien mungkin.

Hardware yang Dibutuhkan
Selain framework dan model, pengembang membutuhkan hardware yang mendukung TinyML. Beberapa microcontroller board antara lain:

  • Arduino Nano 33 BLE Sense
  • SparkFun Edge
  • STM32F746 Discovery Kit
  • Adafruit EdgeBadge
  • Adafruit TensorFlow Lite for Microcontrollers Kit
  • Adafruit Circuit Playground Bluefruit
  • Espressif ESP32-DevKitC
  • Espressif ESP-EYE
  • Wio Terminal: ATSAMD51
  • Himax WE-I Plus EVB Endpoint AI Development Board
  • Synopsys DesignWare ARC EM Software Development Platform
  • Sony Spresense

Perangkat-perangkat tersebut menunjukkan bahwa eksperimen TinyML dapat dilakukan menggunakan hardware berukuran relatif kecil, bukan hanya komputer dengan kemampuan komputasi tinggi.

 

Tantangan dalam Mengembangkan TinyML

Di balik berbagai keunggulannya, TinyML memiliki tantangan tersendiri. Tantangan utama adalah keterbatasan sumber daya. Microcontroller memiliki memori dan kemampuan pemrosesan yang jauh lebih kecil dibandingkan komputer atau server. Karena itu, model machine learning harus dibuat lebih ringan.

Pengembang juga harus memperhatikan konsumsi daya. Perangkat yang menggunakan baterai perlu bekerja selama mungkin tanpa sering melakukan pengisian ulang.

Selain itu, terdapat tantangan dalam menjaga keseimbangan antara ukuran model dan akurasi. Model yang terlalu besar mungkin tidak dapat dijalankan pada perangkat. Sebaliknya, model yang terlalu sederhana mungkin tidak mampu menghasilkan prediksi yang cukup akurat.

Karena itu, pengembangan TinyML membutuhkan perpaduan antara kemampuan machine learning, pemrograman, dan pemahaman terhadap hardware.

 

Masa Depan TinyML

TinyML membuka peluang untuk membuat perangkat sehari-hari menjadi lebih pintar. Peralatan rumah tangga, sensor industri, perangkat pertanian, hingga berbagai perangkat IoT dapat memperoleh kemampuan untuk menganalisis data secara langsung.

Bayangkan sensor kecil yang dapat mendeteksi suara tertentu, mengenali gerakan, memantau kondisi mesin, atau mengidentifikasi perubahan lingkungan tanpa harus terus terhubung ke cloud.

Kemampuan tersebut dapat membuat perangkat menjadi lebih mandiri. TinyML berpotensi meningkatkan kecerdasan miliaran perangkat yang digunakan sehari-hari, termasuk peralatan rumah tangga dan perangkat IoT.

Kondisi ini menjadi semakin relevan ketika perangkat harus beroperasi di lokasi dengan bandwidth terbatas atau ketika koneksi internet tidak selalu tersedia. Dengan pemrosesan di perangkat, machine learning dapat bekerja lebih dekat dengan sumber data.

 

Kesimpulan

TinyML merupakan pendekatan yang membawa kemampuan machine learning ke perangkat kecil dengan sumber daya dan konsumsi energi terbatas. Teknologi ini menjadi penting karena tidak semua aplikasi membutuhkan atau dapat mengandalkan cloud.

Dengan menjalankan inferensi secara lokal, TinyML dapat mengurangi latensi, menghemat energi, mengurangi kebutuhan bandwidth, dan membantu meningkatkan privasi data. Penerapannya pun luas, mulai dari pertanian, pemeliharaan mesin industri, computer vision, pengenalan suara dan gerakan, hingga berbagai perangkat IoT.

Tantangan terbesarnya adalah bagaimana membuat model machine learning tetap akurat ketika harus bekerja dengan keterbatasan memori, kemampuan komputasi, dan energi.

Namun, seiring berkembangnya microcontroller, sensor, software, dan teknologi Edge AI, TinyML berpotensi menjadi bagian penting dari ekosistem perangkat pintar.

Jika machine learning selama ini identik dengan komputer berperforma tinggi dan pusat data, TinyML membawa gagasan yang berbeda: kecerdasan tidak harus selalu berada di cloud. Kecerdasan juga dapat hadir langsung di perangkat kecil yang berada di sekitar kita.

Bagikan artikel ini

Komentar ()

Video Terkait