3 पॉइंट द्वारा GN⁺ 2024-01-17 | 1 टिप्पणियां | WhatsApp पर शेयर करें

TinyML क्या है

  • TinyML का मतलब है microcontroller पर machine learning का उपयोग
  • पारंपरिक ML में इस्तेमाल होने वाले सिस्टमों के विपरीत, इसका उपयोग ऐसे सिस्टमों में होता है जिनमें CPU और RAM बहुत कम होते हैं, और बिजली की खपत milliwatt या microwatt स्तर की होती है।
  • इसका काम बड़े मॉडलों को छोटा बनाकर उन्हें बहुत सीमित संसाधनों वाले उपकरणों और microcontroller पर इस्तेमाल योग्य बनाना है।
  • TinyML Foundation की आधिकारिक वेबसाइट है https://www.tinyml.org/
  • Harvard University द्वारा मुफ्त में उपलब्ध 3-कोर्स की एक श्रृंखला है:
    1. TinyML की बुनियाद (क्या बनाना है, क्यों बनाना है, और कौन-सी समस्याएँ हैं)
    2. TinyML के अनुप्रयोग (data-driven, bias आदि)
    3. TinyML deployment (मॉडल को कहाँ deploy करना है, security और privacy)

TinyML के बुनियादी सिद्धांत

  • microcontroller का उपयोग करने वाले embedded systems में अधिकतम 256kB memory होती है, इसलिए वे बड़े मॉडल नहीं चला सकते।
  • microcontroller के साथ इस्तेमाल किए जा सकने वाले कुछ operating systems के उदाहरण:
    • FreeRTOS
    • Mbed OS
  • machine learning ऐसे algorithms से बनी होती है जो data में patterns खोजते हैं।
  • TinyML में इन algorithms को compress किया जाता है ताकि वे data में patterns को प्रभावी ढंग से खोज सकें।
  • IoT में हर दिन 5 quintillion bytes data बनता है, लेकिन उसमें से 1% से भी कम का विश्लेषण होता है।

algorithm compression तकनीकें

  • pruning

    • Synapsis pruning: मॉडल में network connections को हटाया जाता है। कभी-कभी इससे accuracy कम हो सकती है।
    • Neurons pruning: मॉडल से पूरे neurons को हटाकर network की computational requirement कम की जाती है।
  • quantization

    • values को एक छोटे range के भीतर discretize किया जाता है। उदाहरण के लिए, floating point को -128 से 127 की range में discretize करने पर केवल 256 values को देखना होता है।
    • 4 byte में store होने वाली floating point values को 1 byte में store होने वाली integer values में बदलने पर आकार 4 गुना कम हो जाता है।
    • सीमित संसाधनों के कारण TinyML में quantization बहुत महत्वपूर्ण है।
  • knowledge distillation

    • knowledge और know-how का उपयोग करके मॉडल को छोटा बनाया जाता है।

tools

  • TensorFlow Lite का उपयोग किया जाता है।
  • TensorFlow जहाँ ML researchers पर केंद्रित है, वहीं TensorFlow Lite application developers के लिए है।

TinyML का उपयोग

  • DIY, maker और hacker दुनिया के लिए विशेष TinyML use cases इस वेबसाइट पर मिल सकते हैं।

उद्योग में TinyML का उपयोग

  • औद्योगिक क्षेत्र में इसका उपयोग maintenance के लिए किया जाता है, जहाँ vibration होने पर failure की चेतावनी देकर efficiency बढ़ाई जाती है और लागत घटाई जाती है।
  • accuracy की समस्या के कारण false alarms हो सकते हैं, और false alarm की जिम्मेदारी operator या system पर होती है।

पर्यावरण में TinyML

  • data इकट्ठा करने के बाद उसे process करने के बजाय, TinyML की मदद से पर्यावरणीय बदलावों पर real-time response प्राप्त किया जा सकता है। उदाहरण के लिए, वन्यजीवों के जीवन में होने वाले बदलावों को real time में जाना जा सकता है।

मनुष्यों के लिए TinyML

  • यह दिव्यांग लोगों को हाथों का उपयोग किए बिना अधिक काम करने में मदद करता है।
  • application के UI और UX को बेहतर बनाकर उसे इस्तेमाल में आसान बनाता है।
  • तकनीक मानव अनुभव को बेहतर बनाने के लिए बनाई जाती है। तकनीक को लोगों की मदद करनी चाहिए।

जोखिम और कमियाँ

  • क्या यह सभी जनसंख्या समूहों में अच्छी तरह काम करेगा?
  • क्या data privacy की गारंटी है?
  • क्या इस data की सुरक्षा की जा सकती है?
  • तकनीक को human-centered AI के आधार पर बनाया जाना चाहिए। design, development और deployment की प्रक्रिया में इसे ध्यान में रखना चाहिए।

GN⁺ की राय

  • TinyML एक नवोन्मेषी तकनीक है जो सीमित संसाधनों वाले वातावरण में भी machine learning को संभव बनाती है, और IoT devices की efficiency तथा intelligence को काफी बढ़ा सकती है।
  • pruning, quantization और knowledge distillation जैसी algorithm compression तकनीकें machine learning मॉडलों को छोटा बनाकर उन्हें low-power devices पर चलाने योग्य बनाने वाले मुख्य तत्व हैं।
  • TinyML का उपयोग औद्योगिक maintenance, environmental monitoring और दिव्यांग सहायता जैसे विभिन्न क्षेत्रों में मानव जीवन को बेहतर बनाने में योगदान दे सकता है, और यह समाज पर तकनीक के सकारात्मक प्रभाव का एक अच्छा उदाहरण है।

1 टिप्पणियां

 
GN⁺ 2024-01-17
Hacker News राय
  • Rust TinyML compiler का विकास

    • मास्टर थीसिस प्रोजेक्ट के रूप में Rust-आधारित TinyML compiler विकसित किया गया।
    • Rust procedural macros का उपयोग करके compile time पर मॉडल का मूल्यांकन किया गया, और दिए गए मॉडल पर inference करने वाला predict() फ़ंक्शन बनाया गया।
    • TensorFlow Lite for Microcontrollers और अन्य engines की तुलना में कहीं छोटा binary size हासिल किया गया।
    • 8-bit ATmega328 (Arduino Uno) पर voice command recognizer (TinyConv) चलाने में सफलता मिली।
  • TinyML क्षेत्र का आकर्षण

    • TinyML ऐसा शानदार क्षेत्र है जिसमें बहुत छोटे hardware पर भी बहुत कुछ किया जा सकता है।
    • उदाहरण के लिए, esp32-s3 का उपयोग करके real-time computer vision system बनाया जा सकता है (कीमत लगभग 2 डॉलर)।
    • AutoML जैसे solutions के ज़रिए TinyML क्षेत्र में आसानी से प्रवेश किया जा सकता है।
    • hardware कंपनियाँ power consumption को न्यूनतम करने के लिए NPU वाले MCU देना शुरू कर रही हैं।
    • आने वाले समय में TinyML पर और अधिक ध्यान जाने की संभावना है।
  • LLM का उपयोग करने वाला infrastructure-targeting virus

    • LLM (Large Language Models) का उपयोग करके infrastructure को निशाना बनाने वाले virus की कल्पना की गई।
    • छोटे devices को power grid में छिपाकर network traffic इकट्ठा किया जा सकता है और सिस्टम को नष्ट करने की कोशिश की जा सकती है।
    • ऐसे devices network equipment में छिपे हो सकते हैं और उन्हें बाहरी traffic की ज़रूरत नहीं होती, इसलिए उनका पता लगाना मुश्किल होता है।
  • Edge Impulse द्वारा TinyML / Edge ML की व्याख्या

    • Edge Impulse ने ऐसा platform बनाया है जिस पर ML models बनाए जा सकते हैं और edge devices पर deploy किए जा सकते हैं।
    • उपयोगकर्ता account बनाकर keyword spotting model तैयार कर सकते हैं और उसे सीधे WASM में चला सकते हैं।
    • embedded accelerator ASICs/NPUs का आगमन Edge ML को अपनाने की रफ़्तार बढ़ा रहा है।
  • Hacker Box के ESP32 तथा Tensor Flow Lite और Edge Impulse के उपयोग का उदाहरण

    • हाल ही में Hacker Box ने ESP32, Tensor Flow Lite और Edge Impulse का उपयोग करने वाला एक विस्तृत उदाहरण दिया।
  • TinyML का वर्तमान और भविष्य

    • TinyML का अर्थ है low-power embedded devices पर machine learning चलाना।
    • हर मोबाइल फ़ोन में low-power DSP chip होती है जो "Hey Google" या "Hey Siri" जैसे keywords पहचानती है।
    • TinyML, edge AI का एक subset है, जिसमें network edge पर मौजूद हर तरह के devices शामिल होते हैं।
    • यह क्षेत्र बेहद रोचक है, कई तरह की समस्याएँ हल कर सकता है, और लगभग हर जगह लागू किया जा सकता है।
  • TinyML पर विभिन्न राय

    • कुछ लोगों का मानना है कि TinyML क्षेत्र में constrained solutions बनाना बड़ा प्रभाव डाल सकता है।
    • TinyML को IoT की तरह भविष्य की महत्वपूर्ण तकनीक माना जाता है, लेकिन व्यवहार में इसका विकास धीमा रहा है।
    • TinyML पर और सामग्री खोजने वालों के लिए Asia 2023 conference के वीडियो उपलब्ध कराए गए हैं।