मशीन लर्निंग मॉडेल्स सध्या सर्वत्र आहेत. दिवसा, तुम्ही कदाचित या मॉडेल्सचा तुमच्या लक्षात येण्यापेक्षा खूप जास्त वापर करता. सोशल मीडिया ब्राउझिंग, फोटो काढणे आणि हवामान तपासणे यासारख्या सामान्य कामांमध्ये मशीन लर्निंग मॉडेलचा वापर केला जातो.
मशीन-लर्निंग अल्गोरिदमने तुम्हाला या ब्लॉगची शिफारस केली असेल. या मॉडेल्सना प्रशिक्षण देणे किती वेळखाऊ आहे हे आपण सर्वांनी ऐकले आहे. आम्ही सर्व ऐकले आहे की या मॉडेलचे प्रशिक्षण वेळ घेणारे आहे.
तथापि, या मॉडेल्सचे अनुमान काढणे वारंवार संगणकीयदृष्ट्या महाग असते.
ज्या दराने आम्ही मशीन लर्निंग सेवा वापरत आहोत ते हाताळण्यासाठी आम्हाला संगणक प्रणालीची गरज आहे. परिणामी, यातील बहुतांश मॉडेल्स CPU आणि GPU क्लस्टर्स (काही प्रकरणांमध्ये TPU देखील) असलेल्या मोठ्या डेटा केंद्रांवर चालतात.
जेव्हा तुम्ही चित्र काढता तेव्हा तुम्हाला हवे असते मशीन शिक्षण ते त्वरित सुधारण्यासाठी. प्रतिमा डेटा सेंटरमध्ये हस्तांतरित होण्याची, त्यावर प्रक्रिया केली जाण्यासाठी आणि तुम्हाला परत येण्यासाठी तुम्हाला प्रतीक्षा करावी लागणार नाही. या प्रकरणात, मशीन लर्निंग मॉडेल स्थानिक पातळीवर कार्यान्वित केले जावे.
जेव्हा तुम्ही “Hey Siri” किंवा “OK, Google” म्हणता तेव्हा तुमच्या गॅझेटने लगेच प्रतिसाद द्यावा असे तुम्हाला वाटते. तुमचा आवाज संगणकावर प्रसारित होण्याची वाट पाहत आहे, जिथे त्याचे मूल्यमापन केले जाईल आणि डेटा प्राप्त होईल.
यास वेळ लागतो आणि वापरकर्त्याच्या अनुभवावर त्याचा हानिकारक प्रभाव पडतो. या प्रकरणात, तुम्हाला मशीन लर्निंग मॉडेलने स्थानिक पातळीवरही काम करावे असे वाटते. इथेच TinyML येतो.
या पोस्टमध्ये, आम्ही TinyML, ते कसे कार्य करते, त्याचे उपयोग, ते कसे सुरू करावे आणि बरेच काही पाहू.
काय आहे TinyML?
TinyML ही एक अत्याधुनिक शिस्त आहे जी लहान उपकरणे आणि एम्बेडेड सिस्टीमच्या कार्यप्रदर्शन आणि उर्जा मर्यादांवर मशीन शिक्षणाची क्रांतिकारक क्षमता लागू करते.
या उद्योगात यशस्वी उपयोजनासाठी ऍप्लिकेशन्स, अल्गोरिदम, हार्डवेअर आणि सॉफ्टवेअरची सखोल माहिती असणे आवश्यक आहे. ही एक मशीन लर्निंग उपशैली आहे जी एम्बेडेड सिस्टीममध्ये डीप लर्निंग आणि मशीन लर्निंग मॉडेल्स वापरते जी मायक्रोकंट्रोलर, डिजिटल सिग्नल प्रोसेसर किंवा इतर अल्ट्रा-लो-पॉवर स्पेशलाइज्ड प्रोसेसर वापरतात.
TinyML-सक्षम एम्बेडेड उपकरणे विशिष्ट कामासाठी मशीन लर्निंग अल्गोरिदम चालवण्याच्या उद्देशाने असतात, विशेषत: डिव्हाइसचा भाग म्हणून एज कंप्यूटिंग.
रिचार्जिंग किंवा बॅटरी बदलल्याशिवाय आठवडे, महिने किंवा वर्षे चालण्यासाठी, या एम्बेडेड सिस्टमचा वीज वापर 1 mW पेक्षा कमी असणे आवश्यक आहे.
हे कस काम करत?
मायक्रोकंट्रोलर्स आणि कॉम्प्युटरसह वापरता येणारी एकमेव मशीन लर्निंग फ्रेमवर्क आहे टेन्सरफ्लो लाइट. हे साधनांचा एक संच आहे जे विकसकांना त्यांचे मॉडेल मोबाइल, एम्बेडेड आणि एज डिव्हाइसेसवर चालवू देतात, ज्यामुळे फ्लायवर मशीन शिकण्याची परवानगी मिळते.
मायक्रोकंट्रोलरच्या इंटरफेसचा वापर सेन्सर्समधून डेटा गोळा करण्यासाठी केला जातो (जसे की मायक्रोफोन, कॅमेरा किंवा एम्बेडेड सेन्सर).
मायक्रोकंट्रोलरला पाठवण्यापूर्वी, डेटा क्लाउड-आधारित मशीन लर्निंग मॉडेलमध्ये समाविष्ट केला जातो. या मॉडेल्सना प्रशिक्षित करण्यासाठी ऑफलाइन मोडमध्ये बॅच प्रशिक्षण सामान्यतः वापरले जाते. सेन्सर डेटा ज्यासाठी वापरला जाईल शिकणे आणि अनुमान विशिष्ट अनुप्रयोगासाठी आधीच निर्धारित केले गेले आहे.
मॉडेलला वेक शब्द शोधण्याचे प्रशिक्षण दिले जात असल्यास, उदाहरणार्थ, मायक्रोफोनवरून सतत ऑडिओ प्रवाह हाताळण्यासाठी ते आधीच सेट केलेले आहे.
TensorFlow Lite च्या बाबतीत Google Colab सारख्या क्लाउड प्लॅटफॉर्मच्या मदतीने सर्वकाही आधीच केले गेले आहे, ज्यामध्ये डेटासेट निवड, सामान्यीकरण, मॉडेलचे अंडरफिटिंग किंवा ओव्हरफिटिंग, नियमितीकरण, डेटा ऑगमेंटेशन, प्रशिक्षण, प्रमाणीकरण आणि चाचणी यांचा समावेश आहे.
ऑफलाइन बॅच प्रशिक्षणानंतर पूर्ण प्रशिक्षित मॉडेल शेवटी रूपांतरित केले जाते आणि मायक्रोकंट्रोलर, मायक्रो कॉम्प्युटर किंवा डिजिटल सिग्नल प्रोसेसरमध्ये हस्तांतरित केले जाते. एम्बेडेड डिव्हाइसवर हलविल्यानंतर मॉडेलला कोणतेही अतिरिक्त प्रशिक्षण नाही. त्याऐवजी, ते मॉडेल लागू करण्यासाठी सेन्सर्स किंवा इनपुट डिव्हाइसेसमधील रिअल-टाइम डेटा वापरते.
परिणामी, TinyML मशीन लर्निंग मॉडेल अपवादात्मकपणे टिकाऊ आणि वर्षांनंतर पुन्हा प्रशिक्षित होण्यासाठी किंवा कधीही पुन्हा प्रशिक्षित न होण्यास सक्षम असणे आवश्यक आहे. सर्व संभाव्य मॉडेल अंडरफिटिंग आणि ओव्हरफिटिंगची तपासणी करणे आवश्यक आहे जेणेकरुन मॉडेल दीर्घकाळापर्यंत, आदर्शपणे अनिश्चित काळासाठी संबंधित राहील.
पण TinyML का वापरायचे?
TinyML ने मूलभूत लघु-स्तरीय क्लाउड सेवांवरील IoT चे अवलंबित्व दूर करण्याचा किंवा कमी करण्याचा प्रयत्न म्हणून सुरुवात केली. मशीन शिक्षण ऑपरेशन्स यामुळे एज उपकरणांवर मशीन लर्निंग मॉडेल्सचा वापर करणे आवश्यक होते. हे खालील प्रमुख फायदे प्रदान करते:
- कमी शक्ती वापर: TinyML ऍप्लिकेशनने शक्यतो 1 मिलीवॅटपेक्षा कमी पॉवर वापरली पाहिजे. अशा कमी-पॉवर वापरासह, एखादे डिव्हाइस काही महिने किंवा वर्षांपर्यंत सेन्सर डेटावरून निष्कर्ष काढत राहू शकते, जरी नाणे बॅटरीद्वारे समर्थित असले तरीही.
- कमी किंमत: हे कमी किमतीच्या 32-बिट मायक्रोकंट्रोलर किंवा DSP वर चालण्यासाठी डिझाइन केलेले आहे. हे मायक्रोकंट्रोलर सामान्यत: प्रत्येकी काही सेंट असतात आणि त्यांच्यासह विकसित केलेली एकूण एम्बेडेड सिस्टम $50 पेक्षा कमी असते. लहान मशीन लर्निंग प्रोग्रॅम्स मोठ्या प्रमाणावर चालवण्याचा हा एक अतिशय किफायतशीर पर्याय आहे आणि IoT ऍप्लिकेशन्समध्ये तो विशेषतः फायदेशीर आहे जेथे मशीन लर्निंग लागू करणे आवश्यक आहे.
- कमी विलंब: त्याच्या अॅप्लिकेशनमध्ये कमी विलंब आहे कारण त्यांना नेटवर्कवर डेटाची वाहतूक किंवा देवाणघेवाण करण्याची आवश्यकता नाही. सर्व सेन्सर डेटा स्थानिक पातळीवर रेकॉर्ड केला जातो आणि आधीच प्रशिक्षित केलेल्या मॉडेलचा वापर करून निष्कर्ष काढले जातात. निष्कर्षांचे परिणाम लॉगिंग किंवा अतिरिक्त प्रक्रियेसाठी सर्व्हर किंवा क्लाउडवर पाठवले जाऊ शकतात, जरी डिव्हाइस कार्य करण्यासाठी हे आवश्यक नाही. हे नेटवर्क लेटन्सी कमी करते आणि क्लाउड किंवा सर्व्हरवर मशीन लर्निंग ऑपरेशन्स करण्याची आवश्यकता दूर करते.
- गोपनीयता: इंटरनेटवर आणि गोष्टींच्या इंटरनेटसह ही एक मोठी चिंता आहे. सर्व्हर/क्लाउडवर सेन्सर/वापरकर्ता डेटा संचयित किंवा पाठविल्याशिवाय, TinyML अॅप्समधील मशीन लर्निंग कार्य स्थानिक पातळीवर केले जाते. परिणामी, नेटवर्कशी लिंक केलेले असतानाही, हे ॲप्लिकेशन वापरण्यास सुरक्षित आहेत आणि गोपनीयतेला कोणताही धोका नाही.
अनुप्रयोग
- शेती - कधी शेतकरी झाडाचा फोटो घेतात, TensorFlow Lite चे ऍप्लिकेशन त्यातील आजार शोधते. हे कोणत्याही डिव्हाइसवर कार्य करते आणि इंटरनेट कनेक्शनची आवश्यकता नसते. ही प्रक्रिया कृषी हितसंबंधांचे रक्षण करते आणि ग्रामीण शेतकर्यांसाठी ती अत्यंत आवश्यक आहे.
- यांत्रिकी देखभाल - TinyML, जेव्हा कमी-शक्तीच्या उपकरणांवर वापरले जाते, तेव्हा ते मशीनमधील दोष सतत ओळखू शकते. यात अंदाज-आधारित देखभाल समाविष्ट आहे. पिंग सर्व्हिसेस या ऑस्ट्रेलियन स्टार्ट-अपने एक IoT गॅझेट सादर केले आहे जे टर्बाइनच्या बाहेरील बाजूस जोडून पवन टर्बाइनचे निरीक्षण करते. कोणतीही संभाव्य समस्या किंवा खराबी आढळल्यास ते अधिकाऱ्यांना सूचित करते.
- रुग्णालये - द सोलर स्केअर हा एक प्रकल्प आहे. डेंग्यू आणि मलेरियासारख्या आजारांचा प्रसार रोखण्यासाठी डास TinyML चा वापर करतात. हे सौर ऊर्जेद्वारे समर्थित आहे आणि डासांची पैदास रोखण्यासाठी पाणी सिग्नल करण्यापूर्वी डासांच्या प्रजननाची परिस्थिती ओळखते.
- वाहतूक पाळत ठेवणे – द्वारे रिअल-टाइम ट्रॅफिक डेटा संकलित करणार्या सेन्सर्सवर TinyML लागू करून, आम्ही त्यांचा वापर चांगल्या थेट रहदारीसाठी आणि आणीबाणीच्या वाहनांसाठी प्रतिसाद वेळ कमी करण्यासाठी करू शकतो. Swim.AI, उदाहरणार्थ, स्मार्ट रूटिंगद्वारे गर्दी आणि उत्सर्जन कमी करताना प्रवाशांची सुरक्षितता वाढवण्यासाठी स्ट्रीमिंग डेटावर या तंत्रज्ञानाचा वापर करते.
- कायदा: TinyML कायद्याच्या अंमलबजावणीमध्ये मशीन लर्निंग आणि जेश्चर रेकग्निशन वापरून दंगा आणि चोरी यासारख्या बेकायदेशीर कृती ओळखण्यासाठी वापरला जाऊ शकतो. बँक एटीएम सुरक्षित करण्यासाठीही असाच कार्यक्रम वापरला जाऊ शकतो. वापरकर्त्याचे वर्तन पाहून, TinyML मॉडेल अंदाज लावू शकतो की वापरकर्ता व्यवहार पूर्ण करणारा खरा ग्राहक आहे की एटीएम हॅक किंवा नष्ट करण्याचा प्रयत्न करणारा घुसखोर आहे.
TinyML सह सुरुवात कशी करावी?
TensorFlow Lite मध्ये TinyML सह प्रारंभ करण्यासाठी, तुम्हाला सुसंगत मायक्रोकंट्रोलर बोर्डची आवश्यकता असेल. मायक्रोकंट्रोलरसाठी टेन्सरफ्लो लाइट खाली सूचीबद्ध केलेल्या मायक्रोकंट्रोलरला समर्थन देते.
- Wio टर्मिनल: ATSAMD51
- Himax WE-I Plus EVB एंडपॉइंट AI विकास मंडळ
- STM32F746 डिस्कव्हरी किट
- Adafruit EdgeBadge
- Synopsys DesignWare ARC EM सॉफ्टवेअर डेव्हलपमेंट प्लॅटफॉर्म
- सोनी Spresense
- अर्दूनो नॅनो 33 बीएलई सेन्स
- स्पार्कफन एज
- मायक्रोकंट्रोलर्स किटसाठी ॲडफ्रूट टेन्सरफ्लो लाइट
- Adafruit सर्किट खेळाचे मैदान Bluefruit
- Espressif ESP32-DevKitC
- Espressif ESP-EYE
हे 32-बिट मायक्रोकंट्रोलर आहेत ज्यात मशीन लर्निंग मॉडेल कार्यान्वित करण्यासाठी पुरेशी फ्लॅश मेमरी, RAM आणि घड्याळ वारंवारता आहे. बोर्डांमध्ये कोणतेही एम्बेडेड प्रोग्राम चालवण्यास आणि लक्ष्यित ऍप्लिकेशनवर मशीन लर्निंग मॉडेल लागू करण्यास सक्षम असलेले अनेक ऑनबोर्ड सेन्सर देखील आहेत. ला मशीन लर्निंग मॉडेल तयार करा, तुम्हाला हार्डवेअर प्लॅटफॉर्म व्यतिरिक्त लॅपटॉप किंवा संगणकाची आवश्यकता असेल.
प्रत्येक हार्डवेअर प्लॅटफॉर्मवर मशीन लर्निंग मॉडेल तयार करण्यासाठी, प्रशिक्षण देण्यासाठी आणि पोर्ट करण्यासाठी स्वतःची प्रोग्रामिंग साधने आहेत, जी मायक्रोकंट्रोलर पॅकेजसाठी टेन्सरफ्लो लाइट वापरतात. TensorFlow Lite वापरण्यास आणि सुधारण्यासाठी विनामूल्य आहे कारण ते आहे मुक्त स्रोत.
TinyML आणि TensorFlow Lite सह प्रारंभ करण्यासाठी, तुम्हाला फक्त वर नमूद केलेल्या एम्बेडेड हार्डवेअर प्लॅटफॉर्मपैकी एक, एक संगणक/लॅपटॉप, एक USB केबल, एक USB-टू-सिरियल कनवर्टर – आणि एम्बेडेड सिस्टमसह मशीन लर्निंगचा सराव करण्याची इच्छा असणे आवश्यक आहे. .
आव्हाने
जरी TinyML च्या प्रगतीने बरेच सकारात्मक परिणाम दिले असले तरी, मशीन लर्निंग उद्योग अजूनही लक्षणीय अडथळ्यांना तोंड देत आहे.
- सॉफ्टवेअर विविधता - हँड-कोडिंग, कोड जनरेशन, आणि ML इंटरप्रिटर हे TinyML डिव्हाइसेसवर मॉडेल्स तैनात करण्यासाठी सर्व पर्याय आहेत आणि प्रत्येकाला वेगळा वेळ आणि मेहनत लागते. याचा परिणाम म्हणून विविध कामगिरी उद्भवू शकतात.
- हार्डवेअर विविधता - तेथे अनेक हार्डवेअर पर्याय उपलब्ध आहेत. TinyML प्लॅटफॉर्म सामान्य-उद्देशीय मायक्रोकंट्रोलरपासून अत्याधुनिक न्यूरल प्रोसेसरपर्यंत काहीही असू शकतात. यामुळे वेगवेगळ्या आर्किटेक्चरमध्ये मॉडेल डिप्लॉयमेंटमध्ये समस्या निर्माण होतात.
- समस्यानिवारण/डीबगिंग - केव्हा ML मॉडेल क्लाउडवर खराब कामगिरी करते, डेटा पाहणे आणि काय चूक होत आहे हे शोधणे सोपे आहे. जेव्हा एखादे मॉडेल हजारो TinyML डिव्हाइसेसमध्ये पसरलेले असते, तेव्हा क्लाउडवर डेटा प्रवाह न येता, डीबग करणे कठीण होते आणि वेगळ्या पद्धतीची आवश्यकता असू शकते.
- मेमरी मर्यादा - पारंपारिक स्मार्टफोन्स आणि लॅपटॉप्स सारख्या प्लॅटफॉर्म्सना गीगाबाइट्स RAM ची आवश्यकता असते, तर TinyML साधने किलोबाइट्स किंवा मेगाबाइट्स वापरतात. परिणामी, उपयोजित केलेल्या मॉडेलचा आकार मर्यादित आहे.
- मॉडेल प्रशिक्षण - जरी TinyML डिव्हाइसेसवर ML मॉडेल्स तैनात करण्याचे अनेक फायदे आहेत, ML मॉडेल्सचा मोठा भाग अजूनही क्लाउडवर पुनरावृत्ती करण्यासाठी आणि मॉडेल अचूकता सुधारण्यासाठी प्रशिक्षित आहे.
भविष्यातील
TinyML, त्याच्या लहान पावलांचा ठसा, कमी बॅटरी वापर आणि इंटरनेट कनेक्टिव्हिटीचा अभाव किंवा मर्यादित अवलंबित्व यांमुळे, बहुसंख्य अरुंद असल्याने, भविष्यात प्रचंड क्षमता आहे. कृत्रिम बुद्धिमत्ता एज डिव्हाइसेस किंवा स्वतंत्र एम्बेडेड गॅझेट्सवर लागू केले जाईल.
ते IoT ऍप्लिकेशन्सचा फायदा घेऊन त्यांना अधिक खाजगी आणि सुरक्षित बनवेल. तरी टेन्सर फ्लो मायक्रोकंट्रोलर्स आणि मायक्रोकॉम्प्युटर्ससाठी लाईट हे सध्या एकमेव मशीन लर्निंग फ्रेमवर्क आहे, इतर तुलनात्मक फ्रेमवर्क जसे की सेन्सर आणि ARM चे CMSIS-NN काम करत आहेत.
TensorFlow Lite हा एक मुक्त-स्रोत प्रकल्प प्रगतीपथावर असताना, ज्याने Google च्या टीमसह उत्कृष्ट सुरुवात केली आहे, तरीही त्याला मुख्य प्रवाहात येण्यासाठी समुदायाच्या समर्थनाची आवश्यकता आहे.
निष्कर्ष
TinyML हा एक नवीन दृष्टीकोन आहे जो एम्बेडेड सिस्टमला मशीन लर्निंगसह एकत्रित करतो. अनेक अनुलंब आणि डोमेनमध्ये अरुंद AI शिखरावर असल्याने, तंत्रज्ञान मशीन शिक्षण आणि कृत्रिम बुद्धिमत्तेमध्ये एक प्रमुख उपक्षेत्र म्हणून उदयास येऊ शकते.
हे IoT क्षेत्र आणि अनेक डोमेन-विशिष्ट विषयांमध्ये मशीन लर्निंग लागू करणार्या व्यावसायिकांना आता तोंड देत असलेल्या असंख्य आव्हानांचे निराकरण करते.
येथे मशीन लर्निंग वापरण्याची संकल्पना लहान संगणनासह एज डिव्हाइसेस फूटप्रिंट आणि पॉवर वापरामध्ये एम्बेडेड सिस्टीम आणि रोबोटिक्स कसे तयार केले जातात याचे लक्षणीय रूपांतर करण्याची क्षमता आहे.
प्रत्युत्तर द्या