टेक्स्ट एम्बेड करने की गाइड

दो उदाहरण के वाक्य, जो वाक्यों में मौजूद हर शब्द के लिए, एरे के तौर पर मिलते-जुलते एम्बेड दिखाते हैं.

MediaPipe Text Embedder टास्क की मदद से, टेक्स्ट डेटा को संख्या के तौर पर दिखाया जा सकता है, ताकि उसका सिमेंटिक मतलब कैप्चर किया जा सके. इस सुविधा का इस्तेमाल अक्सर, कोसाइन मिलते-जुलते शब्दों की तुलना करने जैसी गणितीय तुलना करने की तकनीकों का इस्तेमाल करके, दो टेक्स्ट के बीच सेमेटिक मिलते-जुलते शब्दों की तुलना करने के लिए किया जाता है. यह टास्क, मशीन लर्निंग (एमएल) मॉडल की मदद से टेक्स्ट डेटा पर काम करता है. साथ ही, टेक्स्ट डेटा को संख्या के तौर पर दिखाता है. यह आउटपुट, हाई-डाइमेंशनल फ़ीचर वैक्टर की सूची के तौर पर दिखता है. इसे एम्बेडिंग वैक्टर भी कहा जाता है. यह आउटपुट, फ़्लोटिंग-पॉइंट या क्वांटिज़्ड फ़ॉर्मैट में दिखता है.

इसे आज़माएं!

शुरू करें

अपने टारगेट प्लैटफ़ॉर्म के लिए, लागू करने से जुड़ी इनमें से किसी एक गाइड का पालन करके, इस टास्क का इस्तेमाल शुरू करें. प्लैटफ़ॉर्म के हिसाब से बनी इन गाइड में, इस टास्क को लागू करने का बुनियादी तरीका बताया गया है. इनमें सुझाया गया मॉडल और सुझाए गए कॉन्फ़िगरेशन विकल्पों के साथ कोड का उदाहरण भी शामिल है:

टास्क की जानकारी

इस सेक्शन में, इस टास्क की सुविधाओं, इनपुट, आउटपुट, और कॉन्फ़िगरेशन के विकल्पों के बारे में बताया गया है.

सुविधाएं

  • इनपुट टेक्स्ट प्रोसेसिंग - इन-ग्राफ़ टोकनेज़ेशन के बिना, मॉडल के लिए आउट-ऑफ़-ग्राफ़ टोकनेज़ेशन की सुविधा देता है.
  • एम्बेडिंग मिलती-जुलती वैल्यू का हिसाब लगाना - दो फ़ीचर वैक्टर के बीच कोसाइन मिलती-जुलती वैल्यू का हिसाब लगाने के लिए, पहले से मौजूद यूटिलिटी फ़ंक्शन.
  • क्वांटाइज़ेशन - फ़ीचर वेक्टर के लिए स्केलर क्वांटाइज़ेशन की सुविधा देता है.
टास्क के इनपुट टास्क के आउटपुट
टेक्स्ट एम्बेडर, इनपुट डेटा के इस टाइप को स्वीकार करता है:
  • स्ट्रिंग
टेक्स्ट एम्बेडर, एम्बेड की गई ऐसी सूची दिखाता है जिसमें ये शामिल होते हैं:
  • एम्बेड करना: फ़्लोटिंग-पॉइंट फ़ॉर्म या स्केलर-क्विंटाइज़्ड में, फ़ीचर वेक्टर.
  • हेड इंडेक्स: उस हेड का इंडेक्स जिसने यह एम्बेडिंग जनरेट किया.
  • हेड का नाम (ज़रूरी नहीं): उस हेड का नाम जिसने यह एम्बेड किया है.

कॉन्फ़िगरेशन के विकल्प

इस टास्क के लिए, कॉन्फ़िगरेशन के ये विकल्प उपलब्ध हैं:

विकल्प का नाम ब्यौरा वैल्यू की रेंज डिफ़ॉल्ट मान
l2_normalize लौटाए गए फ़ीचर वेक्टर को L2 नॉर्म के साथ सामान्य करना है या नहीं. इस विकल्प का इस्तेमाल सिर्फ़ तब करें, जब मॉडल में पहले से कोई नेटिव L2_NORMALIZATION TFLite Op न हो. ज़्यादातर मामलों में, ऐसा पहले से ही होता है और इसलिए, L2 नॉर्मलाइज़ेशन को TFLite इंफ़रेंस की मदद से हासिल किया जाता है. इसके लिए, इस विकल्प की ज़रूरत नहीं होती. Boolean False
quantize स्केलर क्वांटाइज़ेशन की मदद से, दिखाए गए एम्बेड को बाइट में क्वांटाइज़ किया जाना चाहिए या नहीं. एम्बेड को यूनिट-नॉर्म माना जाता है और इसलिए, किसी भी डाइमेंशन की वैल्यू [-1.0, 1.0] के बीच होनी चाहिए. अगर ऐसा नहीं है, तो l2_normalize विकल्प का इस्तेमाल करें. Boolean False

मॉडल

इस टास्क के साथ डेवलपमेंट शुरू करने पर, हम डिफ़ॉल्ट रूप से सुझाया गया मॉडल उपलब्ध कराते हैं.

यह मॉडल, ड्यूअल एन्कोडर आर्किटेक्चर का इस्तेमाल करता है और इसे सवाल-जवाब वाले अलग-अलग डेटासेट पर ट्रेन किया गया है.

नीचे दिए गए वाक्यों के जोड़े देखें:

  • ("it's a charming and often affecting journey", "what a great and fantastic trip")
  • ("मुझे अपना फ़ोन पसंद है", "मुझे अपना फ़ोन पसंद नहीं है")
  • ("इस रेस्टोरेंट में एक शानदार चीज़ है", "हमें अपने प्लान की जानकारी की दोबारा जांच करनी होगी")

पहले दो पेयर में मौजूद टेक्स्ट एम्बेड, तीसरे पेयर में मौजूद एम्बेड से ज़्यादा कोसाइन मिलते-जुलते होंगे. इसकी वजह यह है कि पहले दो पेयर के वाक्यों में "यात्रा के बारे में भावना" और "फ़ोन के बारे में राय", दोनों एक ही विषय के बारे में हैं. वहीं, तीसरे पेयर के वाक्यों में कोई एक विषय नहीं है.

ध्यान दें कि दूसरे पेयर में मौजूद दो वाक्यों में अलग-अलग सेंटीमेंट हैं. हालांकि, इनका मिलते-जुलते होने का स्कोर ज़्यादा है, क्योंकि इनमें एक ही विषय है.

मॉडल का नाम इनपुट का आकार क्वांटाइज़ेशन का टाइप वर्शन
यूनिवर्सल सेंटेंस एन्कोडर string, string, string कोई नहीं (float32) हाल ही के अपडेट

टास्क के मानदंड

यहां पूरी पाइपलाइन के लिए टास्क के मानदंड दिए गए हैं. ये मानदंड, ऊपर दिए गए पहले से ट्रेन किए गए मॉडल पर आधारित हैं. इंतज़ार का समय, सीपीयू / जीपीयू का इस्तेमाल करके Pixel 6 पर औसत इंतज़ार का समय होता है.

मॉडल का नाम सीपीयू के इंतज़ार का समय जीपीयू में इंतज़ार का समय
यूनिवर्सल सेंटेंस एन्कोडर 18.21 मिलीसेकंड -