Android के लिए LiteRT

LiteRT की मदद से, TensorFlow के मशीन लर्निंग (एमएल) मॉडल को चलाया जा सकता है Android ऐप्लिकेशन. LiteRT सिस्टम, पहले से बनी हुई है और इसे अपनी पसंद के मुताबिक बनाया जा सकता है Android पर तेज़ी से और बेहतर तरीके से मॉडल चलाने के लिए, तेज़ी और आसानी से काम करने की क्षमता हो, इसमें हार्डवेयर की मदद से तेज़ी लाने के विकल्प शामिल हैं.

मशीन लर्निंग मॉडल

LiteRT, ऐसे TensorFlow मॉडल का इस्तेमाल करता है जिन्हें छोटे साइज़, पोर्टेबल और ज़्यादा बेहतर मशीन लर्निंग मॉडल फ़ॉर्मैट. पहले से बनी होम स्क्रीन का इस्तेमाल किया जा सकता है Android डिवाइस पर LiteRT वाले मॉडल बनाएं या अपने TensorFlow के मॉडल बनाएं और उन्हें LiteRT फ़ॉर्मैट में बदल सकते हैं.

इस पेज पर, पहले से बने मशीन लर्निंग मॉडल के इस्तेमाल के बारे में बताया गया है. मॉडल बनाना, ट्रेनिंग, टेस्टिंग या कन्वर्ट करना. इसके बारे में ज़्यादा जानें के लिए मशीन लर्निंग मॉडल चुनना, संशोधित करना, बनाना, और रूपांतरण करना मॉडल पेज में LiteRT.

मॉडल Android पर काम करते हैं

Android ऐप्लिकेशन में चलने वाला LiteRT मॉडल, डेटा को इकट्ठा करके उसे प्रोसेस करता है इस डेटा को इकट्ठा करता है. साथ ही, मॉडल के लॉजिक के आधार पर अनुमान जनरेट करता है. TensorFlow लाइट मॉडल को चलाने के लिए, एक खास रनटाइम एनवायरमेंट की ज़रूरत होती है और मॉडल में पास किया जाने वाला डेटा एक खास डेटा फ़ॉर्मैट में होना चाहिए. इसे tensor. जब कोई मॉडल इसे अनुमान चलाने के तौर पर जाना जाता है. यह नए अनुमान के नतीजे टेंसर देता है और उन्हें Android ऐप्लिकेशन में भेजता है, ताकि वह कार्रवाई कर सके. उदाहरण के लिए, किसी उपयोगकर्ता को नतीजा दिखाना या किसी अन्य कारोबारी लॉजिक को एक्ज़ीक्यूट करना.

Android में LiteRT मॉडल के लिए फ़ंक्शनल एक्ज़ीक्यूशन फ़्लो
देखें

पहला डायग्राम. Android में LiteRT मॉडल के लिए फ़ंक्शनल एक्ज़ीक्यूशन फ़्लो दिखाई देता है.

फ़ंक्शनल डिज़ाइन के हिसाब से, आपके Android ऐप्लिकेशन को इन एलिमेंट की ज़रूरत होती है LiteRT मॉडल चलाएं:

  • मॉडल को लागू करने के लिए, LiteRT रनटाइम एनवायरमेंट
  • डेटा को टेंसर में बदलने के लिए, मॉडल इनपुट हैंडलर
  • आउटपुट नतीजे के टेंसर पाने और उन्हें समझने के लिए, मॉडल आउटपुट हैंडलर अनुमान के नतीजों के तौर पर

यहां दिए गए सेक्शन में, LiteRT लाइब्रेरी और टूल के बारे में बताया गया है ये फ़ंक्शनल एलिमेंट उपलब्ध कराते हैं.

LiteRT की मदद से ऐप्लिकेशन बनाएं

इस सेक्शन में, लागू करने के लिए सुझाए गए सबसे सामान्य पाथ की जानकारी दी गई है आपके Android ऐप्लिकेशन में LiteRT. आपको इन बातों पर सबसे ज़्यादा ध्यान देना चाहिए: रनटाइम एनवायरमेंट और डेवलपमेंट लाइब्रेरी सेक्शन भी शामिल हैं. अगर आपने आपने एक कस्टम मॉडल डेवलप किया है, तो " पाथ सेक्शन में बताया जा सकता है.

रनटाइम एनवायरमेंट के विकल्प

मॉडल एक्ज़ीक्यूट करने के लिए, रनटाइम एनवायरमेंट को चालू करने के कई तरीके हैं Android ऐप्लिकेशन में. ये पसंदीदा विकल्प हैं:

आम तौर पर, आपको Google Play से मिले रनटाइम एनवायरमेंट का इस्तेमाल करना चाहिए इसलिए, क्योंकि यह स्टैंडर्ड एनवायरमेंट की तुलना में कम जगह लेता है यह आपके ऐप्लिकेशन के साइज़ को छोटा रखते हुए, डाइनैमिक तौर पर लोड होता है. Google Play services भी यह LiteRT की सबसे नई और स्टेबल रिलीज़ का अपने-आप इस्तेमाल करता है इससे आपको समय के साथ नई सुविधाएं और बेहतर परफ़ॉर्मेंस मिलती है. अगर आपने आपका ऐप्लिकेशन उन डिवाइसों पर उपलब्ध कराया जाता हो जिनमें Google Play services शामिल नहीं हैं या आप को अपने एमएल रनटाइम एनवायरमेंट को करीब से मैनेज करने की ज़रूरत है, तो आपको स्टैंडर्ड LiteRT रनटाइम. यह विकल्प आपकी ऐप्लिकेशन की मदद से, आपको अपने ऐप्लिकेशन में एमएल रनटाइम पर ज़्यादा कंट्रोल मिलता है आपके ऐप्लिकेशन के डाउनलोड साइज़ को बढ़ाने की लागत.

TensorFlow को जोड़कर, Android ऐप्लिकेशन में रनटाइम की इन सुविधाओं को ऐक्सेस किया जाता है आपके ऐप्लिकेशन डेवलपमेंट एनवायरमेंट के लिए लाइट डेवलपमेंट लाइब्रेरी. जानकारी के लिए अपने ऐप्लिकेशन में स्टैंडर्ड रनटाइम एनवायरमेंट का इस्तेमाल करने के बारे में जानने के लिए, अगला सेक्शन में जाएं.

लाइब्रेरी

Google Play का इस्तेमाल करके, अनुवादक एपीआई को ऐक्सेस किया जा सकता है सेवाएं. Google आपके यूआरएल पैरामीटर को कैसे इस्तेमाल करेगा, यह तय करने के लिए LiteRT कोर और सहायता लाइब्रेरी में उपलब्ध है. इसके लिए LiteRT लाइब्रेरी और रनटाइम का इस्तेमाल करने के बारे में प्रोग्रामिंग की जानकारी एनवायरमेंट के लिए, Android के लिए डेवलपमेंट टूल देखें.

मॉडल पाएं

Android ऐप्लिकेशन में मॉडल चलाने के लिए, LiteRT-फ़ॉर्मैट वाला मॉडल ज़रूरी है. आपने लोगों तक पहुंचाया मुफ़्त में पहले से बने मॉडल इस्तेमाल कर सकते हैं या TensorFlow की मदद से कोई मॉडल बनाकर उसे Lite में बदल सकते हैं फ़ॉर्मैट. अपने Android ऐप्लिकेशन के लिए मॉडल पाने से जुड़ी ज़्यादा जानकारी के लिए, यह देखें LiteRT मॉडल पेज.

इनपुट डेटा मैनेज करना

एमएल मॉडल में पास किया जाने वाला डेटा, एक खास डेटा वाला टेंसर होना चाहिए संरचना, जिसे अक्सर टेंसर का आकार कहा जाता है. मॉडल के साथ डेटा प्रोसेस करने के लिए, तो आपको अपने ऐप्लिकेशन कोड को उसके नेटिव फ़ॉर्मैट से डेटा में बदलना होगा. जैसे, इमेज, टेक्स्ट, या ऑडियो डेटा, आपके मॉडल के लिए ज़रूरी आकार में टेंसर में डालें.

अनुमान चलाएं

अनुमान का नतीजा जनरेट करने के लिए, किसी मॉडल के ज़रिए डेटा को प्रोसेस करने को इसके नाम से जाना जाता है अनुमान लगा रहे हैं. Android ऐप्लिकेशन में अनुमान चलाने के लिए LiteRT रनटाइम एनवायरमेंट, मॉडल और इनपुट डेटा.

वह रफ़्तार जिससे कोई मॉडल किसी खास डिवाइस पर अनुमान जनरेट कर सकता है प्रोसेस किए गए डेटा के साइज़, मॉडल की जटिलता, और उपलब्ध कंप्यूटिंग संसाधन, जैसे कि मेमोरी और सीपीयू या खास तरह के प्रोसेसर इन्हें ऐक्सेलरेटर कहते हैं. मशीन लर्निंग मॉडल इन पर तेज़ी से काम कर सकते हैं विशेष प्रोसेसर, जैसे कि ग्राफ़िक्स प्रोसेसिंग यूनिट (जीपीयू) और टेंसर प्रोसेसिंग यूनिट (TPU), LiteRT हार्डवेयर ड्राइवर का इस्तेमाल करके, जिन्हें डेलीगेट हैं. संपर्कों का ऐक्सेस देने और हार्डवेयर की मदद से तेज़ी लाने के बारे में ज़्यादा जानकारी के लिए मॉडल प्रोसेसिंग के लिए, हार्डवेयर एक्सेलरेटर को देखें खास जानकारी पर टैप करें.

आउटपुट के नतीजों को मैनेज करना

मॉडल, टेंसर के रूप में अनुमान के नतीजे जनरेट करते हैं. इन्हें आपके Android ऐप्लिकेशन के लिए कोई कार्रवाई करके या उपयोगकर्ता को कोई नतीजा दिखाकर. मॉडल आउटपुट ये नतीजे, किसी एक नतीजे से जुड़ी संख्या जितने आसान हो सकते हैं (0 = कुत्ता, 1 = बिल्ली, 2 = पक्षी) जैसे, किसी इमेज में कई क्लासिफ़ाइड ऑब्जेक्ट के लिए कई बाउंडिंग बॉक्स, अनुमान कॉन्फ़िडेंस रेटिंग 0 और 1 के बीच होनी चाहिए.

बेहतर डेवलपमेंट पाथ

ज़्यादा बेहतर और कस्टमाइज़ किए गए LiteRT मॉडल का इस्तेमाल करते समय, के लिए ऊपर बताए गए तरीकों की तुलना में, विकास के ज़्यादा बेहतर तरीके इस्तेमाल करने की ज़रूरत नहीं है. यहां दिए सेक्शन में, मॉडल लागू करने की बेहतर तकनीकों के बारे में बताया गया है. साथ ही, उन्हें Android ऐप्लिकेशन में LiteRT के लिए डेवलप करना.

बेहतर रनटाइम एनवायरमेंट

स्टैंडर्ड रनटाइम और Google Play services के रनटाइम के अलावा LiteRT के लिए एनवायरमेंट है, तो अतिरिक्त रनटाइम एनवायरमेंट होने चाहिए को आपके Android ऐप्लिकेशन के साथ इस्तेमाल किया जा सकता है. इन एनवायरमेंट का सबसे ज़्यादा इस्तेमाल तब होता है, जब आपके पास ऐसा मशीन लर्निंग मॉडल है जो ऐसे एमएल ऑपरेशन का इस्तेमाल करता है जो काम नहीं करता LiteRT के लिए स्टैंडर्ड रनटाइम एनवायरमेंट का इस्तेमाल करता है.

  • LiteRT के लिए Flex रनटाइम
  • पसंद के मुताबिक बनाया गया LiteRT रनटाइम

LiteRT Flex रनटाइम का इस्तेमाल करके, खास ऑपरेटर की ज़रूरत होती है. दौड़ने के लिए एक बेहतर विकल्प के रूप में तो मोबाइल और इंटरनेट सेवा देने वाली कंपनियों को शामिल करने के लिए, आप Android के लिए LiteRT बना सकते हैं TensorFlow मशीन लर्निंग मॉडल को चलाने के लिए ज़रूरी दूसरी सुविधाएं. ज़्यादा जानकारी के लिए, Android के लिए LiteRT बनाएं लेख पढ़ें.

C और C++ एपीआई

LiteRT, C और C++ का इस्तेमाल करके रनिंग मॉडल के लिए एपीआई भी उपलब्ध कराता है. अगर आपके ऐप्लिकेशन Android NDK का इस्तेमाल करता है, तो आपको इस एपीआई का इस्तेमाल करें. आप चाहें, तो इस एपीआई का इस्तेमाल तब भी किया जा सकता है, जब कई प्लैटफ़ॉर्म के बीच कोड शेयर करना हो. Reader Revenue Manager को सेट अप करने के बारे में इस डेवलपमेंट विकल्प के बारे में, डेवलपमेंट टूल पेज पर जाएं.

सर्वर के आधार पर मॉडल को एक्ज़ीक्यूट करें

आम तौर पर, डाउनलोड करने के लिए आपको Android डिवाइस पर अपने ऐप्लिकेशन के मॉडल चलाने चाहिए इंतज़ार का समय कम करने और डेटा की निजता को बेहतर बनाने में मदद करते हैं. हालांकि, कुछ मामलों में, मॉडल को डिवाइस से बाहर क्लाउड सर्वर पर चलाना बेहतर होता है समाधान. उदाहरण के लिए, अगर आपके पास कोई बड़ा मॉडल है, जो आसानी से कंप्रेस नहीं होता अपने उपयोगकर्ताओं की ज़रूरतों के हिसाब से Android डिवाइस या उनका इस्तेमाल करके चलाया जा सकता है उन डिवाइस पर ठीक से काम करते हैं. यह तरीका आपका समाधान की सलाह तब दी जाती है, जब बड़ी रेंज में मॉडल की परफ़ॉर्मेंस एक जैसी हो डिवाइसों के लिए सबसे ज़्यादा प्राथमिकता है.

Google Cloud, TensorFlow मशीन चलाने के लिए सेवाओं का पूरा सुइट उपलब्ध कराता है सीखने के तरीके. ज़्यादा जानकारी के लिए, Google Cloud के एआई और मशीन की जानकारी देखें सीखने के लिए प्रॉडक्ट पेज पर जाएं.

कस्टम मॉडल डेवलपमेंट और ऑप्टिमाइज़ेशन

ज़्यादा बेहतर डेवलपमेंट पाथ में कस्टम मशीन डेवलप करना शामिल है लर्निंग मॉडल और उन मॉडल को Android डिवाइसों पर इस्तेमाल करने के लिए ऑप्टिमाइज़ करना. अगर आपको अगर आपको कस्टम मॉडल बनाने की योजना बनानी है, तो पक्का करें कि आपने गिनती करने की सुविधा को लागू किया है कम की जाने वाली तकनीकों का इस्तेमाल मेमोरी और प्रोसेसिंग की लागत होती है. ऐप्लिकेशन बनाने के बारे में ज़्यादा जानने के लिए, LiteRT के साथ इस्तेमाल करने के लिए, बेहतर परफ़ॉर्मेंस वाले मॉडल. परफ़ॉर्मेंस की सबसे अच्छी परफ़ॉर्मेंस तरीकों के बारे में ज़्यादा जानें.