अमेज़ॅन नेपच्यून एमएल की एक मशीन लर्निंग (एमएल) क्षमता है अमेज़न नेपच्यून जो आपके ग्राफ़ डेटा पर सटीक और तेज़ भविष्यवाणियाँ करने में आपकी सहायता करता है। हुड के तहत, नेप्च्यून एमएल मौजूदा कार्य को हल करने के लिए ग्राफ संरचना और नोड/किनारे गुणों का एक साथ लाभ उठाने के लिए ग्राफ न्यूरल नेटवर्क (जीएनएन) का उपयोग करता है। पारंपरिक विधियाँ या तो केवल गुणों का उपयोग करती हैं और कोई ग्राफ़ संरचना नहीं (उदाहरण के लिए, XGBoost, न्यूरल नेटवर्क), या केवल ग्राफ़ संरचना और कोई गुण नहीं (उदाहरण के लिए, नोड2वेक, लेबल प्रसार)। नोड/एज गुणों को बेहतर ढंग से हेरफेर करने के लिए, एमएल एल्गोरिदम को डेटा को अच्छी तरह से व्यवहारित संख्यात्मक डेटा की आवश्यकता होती है, लेकिन डेटाबेस में कच्चे डेटा में अन्य प्रकार भी हो सकते हैं, जैसे कच्चा पाठ। इन अन्य प्रकार के डेटा का उपयोग करने के लिए, हमें विशेष प्रसंस्करण चरणों की आवश्यकता होती है जो उन्हें उनके मूल प्रकार से संख्यात्मक डेटा में परिवर्तित करते हैं, और एमएल परिणामों की गुणवत्ता दृढ़ता से इन डेटा परिवर्तनों की गुणवत्ता पर निर्भर करती है। कच्चे पाठ, वाक्यों की तरह, रूपांतरित करने के लिए सबसे कठिन प्रकारों में से हैं, लेकिन प्राकृतिक भाषा प्रसंस्करण (एनएलपी) के क्षेत्र में हाल की प्रगति ने मजबूत तरीकों को जन्म दिया है जो कई भाषाओं और विभिन्न प्रकार की लंबाई से आने वाले पाठ को संभाल सकते हैं।
संस्करण 1.1.0.0 से शुरू होकर, नेप्च्यून एमएल समर्थन करता है एकाधिक पाठ एनकोडर (text_fasttext, text_sbert, text_word2vec, तथा text_tfidf), जो एनएलपी में हाल की प्रगति का लाभ लाता है और बहुभाषी पाठ गुणों के साथ-साथ भाषाओं और पाठ की लंबाई के आसपास अतिरिक्त अनुमान आवश्यकताओं के लिए समर्थन सक्षम बनाता है। उदाहरण के लिए, नौकरी अनुशंसा उपयोग के मामले में, विभिन्न देशों में नौकरी पदों का वर्णन अलग-अलग भाषाओं में किया जा सकता है और नौकरी विवरण की लंबाई काफी भिन्न होती है। इसके अतिरिक्त, नेप्च्यून एमएल एक का समर्थन करता है स्वत: विकल्प जो डेटा में टेक्स्ट सुविधा की विशेषताओं के आधार पर स्वचालित रूप से सर्वोत्तम एन्कोडिंग विधि चुनता है।
इस पोस्ट में, हम प्रत्येक टेक्स्ट एनकोडर के उपयोग का वर्णन करते हैं, उनके फायदे और नुकसान की तुलना करते हैं, और नौकरी अनुशंसा कार्य के लिए सही टेक्स्ट एनकोडर कैसे चुनें इसका एक उदाहरण दिखाते हैं।
टेक्स्ट एन्कोडर क्या है?
टेक्स्ट एन्कोडिंग का लक्ष्य नेप्च्यून में टेक्स्ट-आधारित किनारे/नोड गुणों को नोड वर्गीकरण या लिंक भविष्यवाणी कार्यों के लिए डाउनस्ट्रीम मशीन लर्निंग मॉडल में उपयोग के लिए निश्चित आकार के वैक्टर में परिवर्तित करना है। टेक्स्ट फीचर की लंबाई बहुत भिन्न हो सकती है। यह एक शब्द, वाक्यांश, वाक्य, पैराग्राफ या यहां तक कि कई वाक्यों वाला एक दस्तावेज़ भी हो सकता है (नेप्च्यून में एक संपत्ति का अधिकतम आकार 55 एमबी है)। इसके अतिरिक्त, पाठ सुविधाएँ विभिन्न भाषाओं में हो सकती हैं। ऐसे वाक्य भी हो सकते हैं जिनमें कई अलग-अलग भाषाओं के शब्द हों, जिन्हें हम इस रूप में परिभाषित करते हैं कोड स्विचिंग.
1.1.0.0 रिलीज के साथ शुरुआत करते हुए, नेप्च्यून एमएल आपको कई अलग-अलग टेक्स्ट एनकोडर में से चुनने की अनुमति देता है। प्रत्येक एनकोडर थोड़ा अलग तरीके से काम करता है, लेकिन नेप्च्यून से टेक्स्ट वैल्यू फ़ील्ड को एक निश्चित आकार के वेक्टर में परिवर्तित करने का एक ही लक्ष्य होता है जिसका उपयोग हम नेप्च्यून एमएल का उपयोग करके अपने जीएनएन मॉडल को बनाने के लिए करते हैं। नए एनकोडर इस प्रकार हैं:
- text_fasttext (नया) - उपयोग फास्टटेक्स्ट एन्कोडिंग. फास्टटेक्स्ट कुशल पाठ प्रतिनिधित्व सीखने के लिए एक पुस्तकालय है।
text_fasttext
उन सुविधाओं के लिए अनुशंसित है जो फास्टटेक्स्ट द्वारा समर्थित पांच भाषाओं (अंग्रेजी, चीनी, हिंदी, स्पेनिश और फ्रेंच) में से केवल एक का उपयोग करती हैं।text_fasttext
विधि वैकल्पिक रूप से ले सकते हैंmax_length
फ़ील्ड, जो टेक्स्ट प्रॉपर्टी मान में एन्कोड किए जाने वाले टोकन की अधिकतम संख्या निर्दिष्ट करती है, जिसके बाद स्ट्रिंग को छोटा कर दिया जाता है। आप टोकन को एक शब्द के रूप में मान सकते हैं। जब टेक्स्ट प्रॉपर्टी मानों में लंबी स्ट्रिंग्स होती हैं तो यह प्रदर्शन में सुधार कर सकता है, क्योंकि यदिmax_length
निर्दिष्ट नहीं है, fastText स्ट्रिंग की लंबाई की परवाह किए बिना सभी टोकन को एन्कोड करता है। - text_sbert (नया) - वाक्य BERT का उपयोग करता है (एसबीईआरटी) एन्कोडिंग विधि। एसबीईआरटी प्रासंगिक प्रतिनिधित्व शिक्षण मॉडल, बीईआरटी-नेटवर्क का उपयोग करके एक प्रकार की वाक्य एम्बेडिंग विधि है।
text_sbert
जब भाषा समर्थित न हो तो इसकी अनुशंसा की जाती हैtext_fasttext
. नेपच्यून दो SBERT विधियों का समर्थन करता है:text_sbert128
, जो कि यदि आप अभी निर्दिष्ट करते हैं तो डिफ़ॉल्ट हैtext_sbert
, तथाtext_sbert512
. उनके बीच का अंतर किसी टेक्स्ट प्रॉपर्टी में एन्कोड किए गए टोकन की अधिकतम संख्या है।text_sbert128
एन्कोडिंग केवल पहले 128 टोकन को एनकोड करती है, जबकिtext_sbert512
512 टोकन तक एन्कोड करता है। परिणामस्वरूप, उपयोग करनाtext_sbert512
से अधिक प्रसंस्करण समय की आवश्यकता हो सकती हैtext_sbert128
. दोनों विधियाँ धीमी हैंtext_fasttext
. - text_word2vec - उपयोग करता है वर्ड2पुराना टेक्स्ट को एनकोड करने के लिए एल्गोरिदम मूल रूप से Google द्वारा प्रकाशित किया गया था। Word2Vec केवल अंग्रेजी का समर्थन करता है।
- text_tfidf - एक शब्द आवृत्ति-व्युत्क्रम दस्तावेज़ आवृत्ति का उपयोग करता है (TF-आईडीएफ) एन्कोडिंग टेक्स्ट के लिए वेक्टराइज़र। टीएफ-आईडीएफ एन्कोडिंग उन सांख्यिकीय विशेषताओं का समर्थन करती है जो अन्य एन्कोडिंग नहीं करती हैं। यह अन्य सभी नोड्स के बीच एक नोड संपत्ति में शब्दों के महत्व या प्रासंगिकता को मापता है।
ध्यान दें कि text_word2vec
और text_tfidf
पहले समर्थित थे और नए तरीके text_fasttext
और text_sbert
पुराने तरीकों की तुलना में इसकी अनुशंसा की जाती है।
विभिन्न टेक्स्ट एन्कोडर्स की तुलना
निम्न तालिका सभी समर्थित टेक्स्ट एन्कोडिंग विकल्पों की विस्तृत तुलना दिखाती है (text_fasttext
, text_sbert
, तथा text_word2vec
). text_tfidf
यह एक मॉडल-आधारित एन्कोडिंग विधि नहीं है, बल्कि एक गिनती-आधारित माप है जो मूल्यांकन करता है कि एक टोकन (उदाहरण के लिए, एक शब्द) अन्य नोड्स या किनारों में पाठ सुविधाओं के लिए कितना प्रासंगिक है, इसलिए हम शामिल नहीं करते हैं text_tfidf
तुलना के लिए। हम उपयोग करने की सलाह देते हैं text_tfidf
जब आप अन्य सभी नोड या एज प्रॉपर्टी के बीच एक नोड या एज प्रॉपर्टी में कुछ शब्दों के महत्व या प्रासंगिकता को मापना चाहते हैं।)
. | . | text_fasttext | text_sbert | text_word2vec |
मॉडल क्षमता | समर्थित भाषा | अंग्रेजी, चीनी, हिंदी, स्पेनिश और फ्रेंच | 50 से अधिक भाषाएँ | अंग्रेज़ी |
उन पाठ गुणों को एन्कोड कर सकते हैं जिनमें विभिन्न भाषाओं के शब्द शामिल हैं | नहीं | हाँ | नहीं | |
अधिकतम-लंबाई समर्थन | अधिकतम लंबाई की कोई सीमा नहीं | पाठ अनुक्रम को 128 और 512 की अधिकतम लंबाई के साथ एन्कोड करता है | अधिकतम लंबाई की कोई सीमा नहीं | |
समय लागत | लदान | लगभग 10 सेकंड | लगभग 2 सेकंड | लगभग 2 सेकंड |
अनुमान | तेज | धीरे | मध्यम |
निम्नलिखित उपयोग युक्तियों पर ध्यान दें:
- अंग्रेजी, चीनी, हिंदी, स्पैनिश और फ़्रेंच में टेक्स्ट प्रॉपर्टी मानों के लिए,
text_fasttext
अनुशंसित एन्कोडिंग है. हालाँकि, यह उन मामलों को नहीं संभाल सकता जहाँ एक ही वाक्य में एक से अधिक भाषाओं के शब्द हों। पाँच के अलावा अन्य भाषाओं के लिएfastText
समर्थन करता है, उपयोग करता हैtext_sbert
एन्कोडिंग। - यदि आपके पास कई संपत्ति मूल्य टेक्स्ट स्ट्रिंग हैं, उदाहरण के लिए, 120 टोकन से अधिक, तो इसका उपयोग करें
max_length
प्रत्येक स्ट्रिंग में टोकन की संख्या सीमित करने के लिए फ़ील्डtext_fasttext
एन्कोड करता है।
संक्षेप में, आपके उपयोग के मामले के आधार पर, हम निम्नलिखित एन्कोडिंग विधि की अनुशंसा करते हैं:
- यदि आपके टेक्स्ट गुण पाँच समर्थित भाषाओं में से एक में हैं, तो हम इसका उपयोग करने की सलाह देते हैं
text_fasttext
इसके त्वरित अनुमान के कारण.text_fasttext
अनुशंसित विकल्प हैं और आप इसका उपयोग भी कर सकते हैंtext_sbert
निम्नलिखित दो अपवादों में. - यदि आपके टेक्स्ट गुण अलग-अलग भाषाओं में हैं, तो हम इसका उपयोग करने की सलाह देते हैं
text_sbert
क्योंकि यह एकमात्र समर्थित विधि है जो कई अलग-अलग भाषाओं में शब्दों वाले टेक्स्ट गुणों को एन्कोड कर सकती है। - यदि आपके टेक्स्ट गुण एक ऐसी भाषा में हैं जो पांच समर्थित भाषाओं में से एक नहीं है, तो हम इसका उपयोग करने की सलाह देते हैं
text_sbert
क्योंकि यह 50 से अधिक भाषाओं को सपोर्ट करता है। - यदि आपके टेक्स्ट गुणों की औसत लंबाई 128 से अधिक है, तो उपयोग करने पर विचार करें
text_sbert512
ortext_fasttext
. दोनों विधियाँ लंबे पाठ अनुक्रमों को एन्कोड करने का उपयोग कर सकती हैं। - यदि आपके टेक्स्ट गुण केवल अंग्रेजी में हैं, तो आप इसका उपयोग कर सकते हैं
text_word2vec
, लेकिन हम उपयोग करने की सलाह देते हैंtext_fasttext
इसके त्वरित अनुमान के लिए.
केस डेमो का उपयोग करें: नौकरी अनुशंसा कार्य
नौकरी अनुशंसा कार्य का लक्ष्य यह अनुमान लगाना है कि उपयोगकर्ता अपने पिछले अनुप्रयोगों, जनसांख्यिकीय जानकारी और कार्य इतिहास के आधार पर किस नौकरी के लिए आवेदन करेंगे। यह पोस्ट उपयोग करता है एक खुला कागल डेटासेट. हम डेटासेट को तीन-नोड प्रकार के ग्राफ़ के रूप में बनाते हैं: काम, उपयोगकर्ता, तथा शहर.
किसी नौकरी की पहचान उसके शीर्षक, विवरण, आवश्यकताओं, स्थित शहर और राज्य से होती है। एक उपयोगकर्ता को प्रमुख गुणों, डिग्री प्रकार, कार्य इतिहास की संख्या, कार्य अनुभव के लिए वर्षों की कुल संख्या और बहुत कुछ के साथ वर्णित किया गया है। इस उपयोग के मामले में, नौकरी का शीर्षक, नौकरी का विवरण, नौकरी की आवश्यकताएं और प्रमुख बातें सभी पाठ के रूप में हैं।
डेटासेट में, उपयोगकर्ताओं के पास निम्नलिखित गुण होते हैं:
- राज्य - उदाहरण के लिए, सीए या 广东省 (चीनी)
- प्रमुख - उदाहरण के लिए, मानव संसाधन प्रबंधन या एलआईसी साइटुरा फिशिका (स्पेनिश)
- डिग्री प्रकार - उदाहरण के लिए, बैचलर, मास्टर, पीएचडी, या कोई नहीं
- कार्य इतिहास गणना - उदाहरण के लिए, 0, 1, 16, इत्यादि
- कुल वर्षों का अनुभव - उदाहरण के लिए, 0.0, 10.0, या NAN
नौकरियों में निम्नलिखित गुण होते हैं:
- शीर्षक - उदाहरण के लिए, प्रशासनिक सहायक या एलआईसी कल्टुरा फिसिका (स्पेनिश)।
- Description - उदाहरण के लिए, "यह प्रशासनिक सहायक पद संचार के क्षेत्रों में विभिन्न प्रकार के लिपिकीय और प्रशासनिक सहायता कार्यों को करने के लिए जिम्मेदार है, ..." विवरण में शब्दों की औसत संख्या लगभग 192.2 है।
- आवश्यकताएँ - उदाहरण के लिए, "नौकरी की आवश्यकताएँ: 1. विवरण पर ध्यान;" 2. तेज गति वाले वातावरण में काम करने की क्षमता; 3. चालान..."
- राज्य: - उदाहरण के लिए, सीए, एनवाई, इत्यादि।
नोड प्रकार शहर जैसे वाशिंगटन डीसी और ऑरलैंडो एफएल में केवल प्रत्येक नोड के लिए पहचानकर्ता होता है। निम्नलिखित अनुभाग में, हम विभिन्न टेक्स्ट विशेषताओं की विशेषताओं का विश्लेषण करते हैं और बताते हैं कि विभिन्न टेक्स्ट गुणों के लिए उचित टेक्स्ट एनकोडर का चयन कैसे करें।
विभिन्न टेक्स्ट एनकोडर का चयन कैसे करें
हमारे उदाहरण के लिए, प्रमुख और शीर्षक गुण कई भाषाओं में हैं और उनमें संक्षिप्त पाठ अनुक्रम हैं, इसलिए text_sbert
इसकी सिफारिश की जाती है। के लिए नमूना कोड निर्यात पैरामीटर इस प्रकार है। के लिए text_sbert
प्रकार, कोई अन्य पैरामीटर फ़ील्ड नहीं हैं। यहां हम चुनते हैं text_sbert128
अन्य की तुलना में text_sbert512
, क्योंकि पाठ की लंबाई 128 से अपेक्षाकृत कम है।
RSI Description और आवश्यकताएँ गुण आमतौर पर लंबे पाठ अनुक्रमों में होते हैं। विवरण की औसत लंबाई लगभग 192 शब्द है, जो अधिकतम इनपुट लंबाई से अधिक है text_sbert
(128). हम इसका उपयोग कर सकते हैं text_sbert512
, लेकिन इसका परिणाम धीमा अनुमान हो सकता है। इसके अलावा, पाठ एक ही भाषा (अंग्रेजी) में है। इसलिए, हम अनुशंसा करते हैं text_fasttext
साथ en भाषा का मूल्य इसके तेज़ अनुमान और सीमित इनपुट लंबाई के कारण नहीं है। के लिए नमूना कोड निर्यात पैरामीटर इस प्रकार है। text_fasttext
एन्कोडिंग का उपयोग करके अनुकूलित किया जा सकता है भाषा और अधिकतम लंबाई। language
मान आवश्यक है, लेकिन max_length
वैकल्पिक है।
नौकरी अनुशंसा उपयोग मामलों का अधिक विवरण यहां पाया जा सकता है नेप्च्यून नोटबुक ट्यूटोरियल.
प्रदर्शन उद्देश्यों के लिए, हम एक उपयोगकर्ता का चयन करते हैं, यानी, उपयोगकर्ता 443931, जिसके पास 'प्रबंधन और मानव संसाधन' में मास्टर डिग्री है। उपयोगकर्ता ने "मानव संसाधन (एचआर) प्रबंधक", "एचआर जनरलिस्ट", "मानव संसाधन प्रबंधक", "मानव संसाधन प्रशासक" और "वरिष्ठ पेरोल विशेषज्ञ" शीर्षक से पांच अलग-अलग नौकरियों के लिए आवेदन किया है। अनुशंसा कार्य के प्रदर्शन का मूल्यांकन करने के लिए, हम उपयोगकर्ता के 50% लागू कार्यों (किनारों) को हटा देते हैं (यहां हम "मानव संसाधन प्रशासक" और "मानव संसाधन (एचआर) प्रबंधक) को हटा देते हैं और शीर्ष की भविष्यवाणी करने का प्रयास करते हैं 10 नौकरियाँ जिनके लिए इस उपयोगकर्ता द्वारा आवेदन करने की सबसे अधिक संभावना है।
कार्य सुविधाओं और उपयोगकर्ता सुविधाओं को एन्कोड करने के बाद, हम एक रिलेशनल ग्राफ कनवल्शनल नेटवर्क (आरजीसीएन) मॉडल को प्रशिक्षित करके एक लिंक भविष्यवाणी कार्य करते हैं। नेप्च्यून एमएल मॉडल को प्रशिक्षित करने के लिए तीन चरणों की आवश्यकता होती है: डेटा प्रोसेसिंग, मॉडल प्रशिक्षण और एंडपॉइंट निर्माण। अनुमान समापन बिंदु बनाए जाने के बाद, हम उपयोगकर्ता 443931 के लिए सिफारिशें कर सकते हैं। उपयोगकर्ता 10 के लिए अनुमानित शीर्ष 443931 नौकरियों में से (यानी, "एचआर जनरलिस्ट", "मानव संसाधन (एचआर) प्रबंधक", "वरिष्ठ पेरोल विशेषज्ञ", "मानव संसाधन प्रशासक", "एचआर विश्लेषक", आदि), हम देखते हैं कि हटाई गई दो नौकरियां 10 भविष्यवाणियों में से हैं।
निष्कर्ष
इस पोस्ट में, हमने नेप्च्यून एमएल में नए समर्थित टेक्स्ट एनकोडर का उपयोग दिखाया। ये टेक्स्ट एनकोडर उपयोग में आसान हैं और कई आवश्यकताओं का समर्थन कर सकते हैं। सारांश,
- text_fasttext उन सुविधाओं के लिए अनुशंसित है जो text_fasttext द्वारा समर्थित पांच भाषाओं में से एक और केवल एक का उपयोग करती हैं।
- text_sbert की अनुशंसा उस पाठ के लिए की जाती है जिसका text_fasttext समर्थन नहीं करता है।
- text_word2vec केवल अंग्रेजी का समर्थन करता है, और किसी भी परिदृश्य में text_fasttext द्वारा प्रतिस्थापित किया जा सकता है।
समाधान के बारे में अधिक जानकारी के लिए देखें गीथहब रेपो. हम आपकी आवश्यकताओं को पूरा करने के लिए आपके ग्राफ़ डेटा पर टेक्स्ट एनकोडर का उपयोग करने की सलाह देते हैं। आप बस एक एनकोडर नाम चुन सकते हैं और जीएनएन मॉडल को अपरिवर्तित रखते हुए कुछ एनकोडर विशेषताएँ सेट कर सकते हैं।
लेखक के बारे में
जियानी झांग AWS AI रिसर्च एंड एजुकेशन (AIRE) के एक व्यावहारिक वैज्ञानिक हैं। वह मशीन लर्निंग एल्गोरिदम, विशेष रूप से प्राकृतिक भाषा और ग्राफ़ से संबंधित समस्याओं का उपयोग करके वास्तविक दुनिया के अनुप्रयोगों को हल करने पर काम करती है।
- उन्नत (300)
- AI
- ai कला
- ऐ कला जनरेटर
- ऐ रोबोट
- अमेज़न नेपच्यून
- कृत्रिम बुद्धिमत्ता
- कृत्रिम बुद्धिमत्ता प्रमाणन
- बैंकिंग में आर्टिफिशियल इंटेलिजेंस
- आर्टिफिशियल इंटेलिजेंस रोबोट
- आर्टिफिशियल इंटेलिजेंस रोबोट
- कृत्रिम बुद्धि सॉफ्टवेयर
- AWS मशीन लर्निंग
- blockchain
- ब्लॉकचेन सम्मेलन एआई
- कॉइनजीनियस
- संवादी कृत्रिम बुद्धिमत्ता
- क्रिप्टो सम्मेलन एआई
- दल-ए
- ध्यान लगा के पढ़ना या सीखना
- इसे गूगल करें
- यंत्र अधिगम
- प्लेटो
- प्लेटो एआई
- प्लेटो डेटा इंटेलिजेंस
- प्लेटो गेम
- प्लेटोडाटा
- प्लेटोगेमिंग
- स्केल एआई
- वाक्यविन्यास
- जेफिरनेट