अमेज़न SageMaker का एक सूट प्रदान करता है अंतर्निहित एल्गोरिदम, पूर्व प्रशिक्षित मॉडल, तथा पूर्व-निर्मित समाधान टेम्पलेट्स डेटा वैज्ञानिकों और मशीन लर्निंग (एमएल) चिकित्सकों को प्रशिक्षण और एमएल मॉडल को शीघ्रता से तैनात करने में मदद करने के लिए। इन एल्गोरिदम और मॉडल का उपयोग पर्यवेक्षित और गैर-पर्यवेक्षित शिक्षण दोनों के लिए किया जा सकता है। वे सारणीबद्ध, छवि और पाठ सहित विभिन्न प्रकार के इनपुट डेटा को संसाधित कर सकते हैं।
ग्राहक मंथन एक ऐसी समस्या है जिसका सामना दूरसंचार से लेकर बैंकिंग तक कई कंपनियों को करना पड़ता है, जहां ग्राहक आम तौर पर प्रतिस्पर्धियों से हार जाते हैं। नए ग्राहक प्राप्त करने के बजाय मौजूदा ग्राहकों को बनाए रखना कंपनी के सर्वोत्तम हित में है क्योंकि नए ग्राहकों को आकर्षित करने के लिए आमतौर पर काफी अधिक लागत आती है। मोबाइल ऑपरेटरों के पास ऐतिहासिक रिकॉर्ड हैं जिनमें ग्राहकों ने सेवा का उपयोग करना जारी रखा या अंततः बंद कर दिया। हम एक एमएल मॉडल को प्रशिक्षित करने के लिए मोबाइल ऑपरेटर के मंथन की इस ऐतिहासिक जानकारी का उपयोग कर सकते हैं। इस मॉडल को प्रशिक्षित करने के बाद, हम एक मनमाने ग्राहक की प्रोफ़ाइल जानकारी (वही प्रोफ़ाइल जानकारी जो हमने मॉडल को प्रशिक्षित करने के लिए उपयोग की थी) को मॉडल तक पहुंचा सकते हैं, और यह अनुमान लगा सकते हैं कि यह ग्राहक मंथन करने वाला है या नहीं।
इस पोस्ट में, हम प्रशिक्षण और तैनाती करते हैं चार हाल ही में जारी सेजमेकर एल्गोरिदम-लाइटजीबीएम, कैटबूस्ट, टैबट्रांसफॉर्मर, और ऑटोग्लूऑन-टेबुलर-एक मंथन भविष्यवाणी डेटासेट पर। हम उपयोग करते हैं सेजमेकर स्वचालित मॉडल ट्यूनिंग (हाइपरपैरामीटर अनुकूलन के लिए एक उपकरण) प्रत्येक मॉडल के लिए सर्वोत्तम हाइपरपैरामीटर खोजने के लिए, और इष्टतम का चयन करने के लिए होल्डआउट परीक्षण डेटासेट पर उनके प्रदर्शन की तुलना करें।
आप इस समाधान का उपयोग अत्याधुनिक सारणीबद्ध एल्गोरिदम के संग्रह को खोजने के लिए एक टेम्पलेट के रूप में भी कर सकते हैं और सर्वोत्तम समग्र मॉडल खोजने के लिए हाइपरपैरामीटर अनुकूलन का उपयोग कर सकते हैं। आप जिन वास्तविक व्यावसायिक समस्याओं में रुचि रखते हैं उन्हें हल करने के लिए आप आसानी से उदाहरण डेटासेट को अपने डेटासेट से बदल सकते हैं। यदि आप सीधे सेजमेकर एसडीके कोड में जाना चाहते हैं जो हम इस पोस्ट में देखते हैं, तो आप निम्नलिखित का उल्लेख कर सकते हैं नमूना बृहस्पति नोटबुक.
सेजमेकर बिल्ट-इन एल्गोरिदम के लाभ
अपनी विशेष प्रकार की समस्या और डेटा के लिए एल्गोरिथम का चयन करते समय, सेजमेकर बिल्ट-इन एल्गोरिथम का उपयोग करना सबसे आसान विकल्प है, क्योंकि ऐसा करने से निम्नलिखित प्रमुख लाभ मिलते हैं:
- कम कोडिंग - अंतर्निहित एल्गोरिदम को प्रयोग चलाने के लिए कम कोडिंग की आवश्यकता होती है। आपको केवल डेटा, हाइपरपैरामीटर और कंप्यूट संसाधन प्रदान करने की आवश्यकता है। यह आपको ट्रैकिंग परिणामों और कोड परिवर्तनों के लिए कम ओवरहेड के साथ प्रयोगों को अधिक तेज़ी से चलाने की अनुमति देता है।
- कुशल और स्केलेबल एल्गोरिदम कार्यान्वयन - अंतर्निहित एल्गोरिदम कई गणना उदाहरणों में समानांतरता के साथ आते हैं और सभी लागू एल्गोरिदम के लिए बॉक्स के ठीक बाहर GPU समर्थन करते हैं। यदि आपके पास अपने मॉडल को प्रशिक्षित करने के लिए बहुत सारा डेटा है, तो अधिकांश अंतर्निहित एल्गोरिदम आसानी से मांग को पूरा करने के लिए स्केल कर सकते हैं। भले ही आपके पास पहले से ही एक पूर्व-प्रशिक्षित मॉडल है, फिर भी सेजमेकर में इसके परिणाम का उपयोग करना और उन हाइपरपैरामीटरों को इनपुट करना आसान हो सकता है जिन्हें आप पहले से जानते हैं बजाय इसे पोर्ट करने और स्वयं एक प्रशिक्षण स्क्रिप्ट लिखने के।
- ट्रांसपेरेंसी - आप परिणामी मॉडल कलाकृतियों के स्वामी हैं। आप उस मॉडल को ले सकते हैं और उसे कई अलग-अलग अनुमान पैटर्न के लिए सेजमेकर पर तैनात कर सकते हैं (सभी को देखें)। उपलब्ध परिनियोजन प्रकार) और आसान समापन बिंदु स्केलिंग और प्रबंधन, या आप इसे कहीं भी तैनात कर सकते हैं जहां आपको इसकी आवश्यकता है।
डेटा विज़ुअलाइज़ेशन और प्रीप्रोसेसिंग
सबसे पहले, हम अपना ग्राहक मंथन डेटासेट इकट्ठा करते हैं। यह 5,000 रिकॉर्ड वाला एक अपेक्षाकृत छोटा डेटासेट है, जहां प्रत्येक रिकॉर्ड किसी अज्ञात अमेरिकी मोबाइल ऑपरेटर के ग्राहक की प्रोफ़ाइल का वर्णन करने के लिए 21 विशेषताओं का उपयोग करता है। विशेषताएँ अमेरिकी राज्य से लेकर जहां ग्राहक रहता है, ग्राहक सेवा में उनके द्वारा की गई कॉल की संख्या से लेकर, दिन के समय कॉल के लिए बिल की जाने वाली लागत तक होती हैं। हम यह अनुमान लगाने की कोशिश कर रहे हैं कि ग्राहक मंथन करेगा या नहीं, जो एक द्विआधारी वर्गीकरण समस्या है। निम्नलिखित उन सुविधाओं का एक उपसमूह है, जो अंतिम कॉलम के रूप में लेबल के साथ दिखता है।
प्रत्येक कॉलम के लिए कुछ अंतर्दृष्टि निम्नलिखित हैं, विशेष रूप से सारांश आँकड़े और चयनित सुविधाओं का हिस्टोग्राम।
फिर हम डेटा को प्रीप्रोसेस करते हैं, इसे प्रशिक्षण, सत्यापन और परीक्षण सेट में विभाजित करते हैं और डेटा अपलोड करते हैं अमेज़न सरल भंडारण सेवा (अमेज़न S3)।
सारणीबद्ध एल्गोरिदम की स्वचालित मॉडल ट्यूनिंग
हाइपरपैरामीटर नियंत्रित करते हैं कि हमारे अंतर्निहित एल्गोरिदम कैसे संचालित होते हैं और मॉडल के प्रदर्शन को प्रभावित करते हैं। वे हाइपरपैरामीटर परतों की संख्या, सीखने की दर, वजन क्षय दर, और तंत्रिका नेटवर्क-आधारित मॉडल के लिए ड्रॉपआउट, या पेड़ों के संयोजन मॉडल के लिए पत्तियों की संख्या, पुनरावृत्तियों और अधिकतम पेड़ की गहराई हो सकते हैं। सर्वश्रेष्ठ मॉडल का चयन करने के लिए, हम चार प्रशिक्षित सेजमेकर सारणीबद्ध एल्गोरिदम में से प्रत्येक पर सेजमेकर स्वचालित मॉडल ट्यूनिंग लागू करते हैं। आपको ट्यून करने के लिए केवल हाइपरपैरामीटर का चयन करना होगा और प्रत्येक पैरामीटर का पता लगाने के लिए एक रेंज का चयन करना होगा। स्वचालित मॉडल ट्यूनिंग के बारे में अधिक जानकारी के लिए देखें Amazon SageMaker Automatic Model Tuning: मशीन लर्निंग के लिए मशीन लर्निंग का उपयोग करना or अमेज़ॅन सेजमेकर स्वचालित मॉडल ट्यूनिंग: स्केलेबल ग्रेडिएंट-मुक्त अनुकूलन.
आइए देखें कि यह व्यवहार में कैसे काम करता है।
लाइटजीबीएम
हम लाइटजीबीएम के साथ स्वचालित मॉडल ट्यूनिंग चलाकर शुरुआत करते हैं, और उस प्रक्रिया को अन्य एल्गोरिदम के लिए अनुकूलित करते हैं। जैसा कि पोस्ट में बताया गया है Amazon SageMaker जम्पस्टार्ट मॉडल और एल्गोरिदम अब API के माध्यम से उपलब्ध हैंसेजमेकर एसडीके के माध्यम से पूर्व-निर्मित एल्गोरिदम को प्रशिक्षित करने के लिए निम्नलिखित कलाकृतियों की आवश्यकता होती है:
- इसकी रूपरेखा-विशिष्ट कंटेनर छवि, जिसमें प्रशिक्षण और अनुमान के लिए सभी आवश्यक निर्भरताएँ शामिल हैं
- चयनित मॉडल या एल्गोरिदम के लिए प्रशिक्षण और अनुमान स्क्रिप्ट
हम सबसे पहले इन कलाकृतियों को पुनः प्राप्त करते हैं, जो इस पर निर्भर करती हैं model_id
(lightgbm-classification-model
इस मामले में) और संस्करण:
फिर हम लाइटजीबीएम के लिए डिफ़ॉल्ट हाइपरपैरामीटर प्राप्त करते हैं, उनमें से कुछ को चयनित निश्चित मानों पर सेट करते हैं जैसे कि बूस्टिंग राउंड की संख्या और सत्यापन डेटा पर मूल्यांकन मीट्रिक, और उन मूल्य श्रेणियों को परिभाषित करते हैं जिन्हें हम दूसरों के लिए खोजना चाहते हैं। हम सेजमेकर पैरामीटर का उपयोग करते हैं ContinuousParameter
और IntegerParameter
इसके लिए:
अंत में, हम एक बनाते हैं सेजमेकर अनुमानक, इसे एक में फ़ीड करें हाइपरएरामीटर ट्यूनर, और हाइपरपैरामीटर ट्यूनिंग कार्य शुरू करें tuner.fit()
:
RSI max_jobs
पैरामीटर परिभाषित करता है कि स्वचालित मॉडल ट्यूनिंग कार्य में कुल कितने कार्य चलाए जाएंगे, और max_parallel_jobs
परिभाषित करता है कि कितने समवर्ती प्रशिक्षण कार्य शुरू किए जाने चाहिए। हम उद्देश्य को भी परिभाषित करते हैं “Maximize”
मॉडल का AUC (वक्र के नीचे का क्षेत्र)। उपलब्ध मापदंडों के बारे में गहराई से जानने के लिए HyperParameterTuner
, को देखें हाइपरपैरामीटरट्यूनर.
चेक आउट नमूना नोटबुक यह देखने के लिए कि हम परीक्षण सेट पर इस मॉडल को कैसे तैनात और मूल्यांकन करने के लिए आगे बढ़ते हैं।
कैटबॉस्ट
कैटबूस्ट एल्गोरिदम पर हाइपरपैरामीटर ट्यूनिंग की प्रक्रिया पहले जैसी ही है, हालांकि हमें आईडी के तहत मॉडल कलाकृतियों को पुनः प्राप्त करने की आवश्यकता है catboost-classification-model
और हाइपरपैरामीटर का रेंज चयन बदलें:
टैबट्रांसफॉर्मर
TabTransformer मॉडल पर हाइपरपैरामीटर ट्यूनिंग की प्रक्रिया पहले जैसी ही है, हालांकि हमें आईडी के तहत मॉडल कलाकृतियों को पुनः प्राप्त करने की आवश्यकता है pytorch-tabtransformerclassification-model
और हाइपरपैरामीटर के रेंज चयन को बदलें।
हम प्रशिक्षण भी बदलते हैं instance_type
सेवा मेरे ml.p3.2xlarge
. टैबट्रांसफॉर्मर हाल ही में अमेज़ॅन अनुसंधान से प्राप्त एक मॉडल है, जो ट्रांसफार्मर मॉडल का उपयोग करके सारणीबद्ध डेटा में गहन सीखने की शक्ति लाता है। इस मॉडल को कुशल तरीके से प्रशिक्षित करने के लिए, हमें एक GPU-समर्थित उदाहरण की आवश्यकता है। अधिक जानकारी के लिए देखें तालिकाओं में डेटा में गहन शिक्षण की शक्ति लाना.
AutoGluon-सारणी
AutoGluon के मामले में, हम हाइपरपैरामीटर ट्यूनिंग नहीं चलाते हैं। यह डिज़ाइन द्वारा है, क्योंकि AutoGluon हाइपरपैरामीटर के उचित विकल्पों के साथ कई मॉडलों को जोड़ने और उन्हें कई परतों में स्टैक करने पर केंद्रित है। यह हाइपरपैरामीटर के सही चयन के साथ एक मॉडल को प्रशिक्षित करने की तुलना में अधिक प्रदर्शन करने वाला होता है और कम्प्यूटेशनल रूप से सस्ता भी होता है। विवरण के लिए, जांचें ऑटोग्लूऑन-टेबुलर: संरचित डेटा के लिए मजबूत और सटीक ऑटोएमएल.
इसलिए, हम स्विच करते हैं model_id
सेवा मेरे autogluon-classification-ensemble
, और केवल मूल्यांकन मीट्रिक हाइपरपैरामीटर को हमारे वांछित AUC स्कोर पर ठीक करें:
कॉल करने के बजाय tuner.fit()
, हम बुलाते है estimator.fit()
एकल प्रशिक्षण कार्य शुरू करने के लिए.
प्रशिक्षित मॉडलों को बेंचमार्क करना
सभी चार मॉडलों को तैनात करने के बाद, हम भविष्यवाणी के लिए प्रत्येक समापन बिंदु पर पूरा परीक्षण सेट भेजते हैं और प्रत्येक के लिए सटीकता, एफ 1 और एयूसी मेट्रिक्स की गणना करते हैं (कोड देखें) नमूना नोटबुक). हम एक महत्वपूर्ण अस्वीकरण के साथ निम्नलिखित तालिका में परिणाम प्रस्तुत करते हैं: इन मॉडलों के बीच परिणाम और सापेक्ष प्रदर्शन आपके द्वारा प्रशिक्षण के लिए उपयोग किए जाने वाले डेटासेट पर निर्भर करेगा। ये परिणाम प्रतिनिधि हैं, और भले ही कुछ एल्गोरिदम के बेहतर प्रदर्शन करने की प्रवृत्ति प्रासंगिक कारकों पर आधारित है (उदाहरण के लिए, ऑटोग्लूऑन पर्दे के पीछे लाइटजीबीएम और कैटबूस्ट दोनों मॉडलों की भविष्यवाणियों को समझदारी से जोड़ता है), प्रदर्शन में संतुलन अलग-अलग हो सकता है डेटा वितरण.
. | स्वचालित मॉडल ट्यूनिंग के साथ लाइटजीबीएम | स्वचालित मॉडल ट्यूनिंग के साथ कैटबूस्ट | स्वचालित मॉडल ट्यूनिंग के साथ टैबट्रांसफॉर्मर | AutoGluon-सारणी |
शुद्धता | 0.8977 | 0.9622 | 0.9511 | 0.98 |
F1 | 0.8986 | 0.9624 | 0.9517 | 0.98 |
एयूसी | 0.9629 | 0.9907 | 0.989 | 0.9979 |
निष्कर्ष
इस पोस्ट में, हमने कम कोडिंग प्रयास के साथ ग्राहक मंथन भविष्यवाणी समस्या को हल करने के लिए चार अलग-अलग सेजमेकर अंतर्निहित एल्गोरिदम को प्रशिक्षित किया। हमने इन एल्गोरिदम को प्रशिक्षित करने के लिए सर्वोत्तम हाइपरपैरामीटर खोजने के लिए सेजमेकर स्वचालित मॉडल ट्यूनिंग का उपयोग किया, और चयनित मंथन भविष्यवाणी डेटासेट पर उनके प्रदर्शन की तुलना की। आप संबंधित का उपयोग कर सकते हैं नमूना नोटबुक एक टेम्पलेट के रूप में, अपनी वांछित सारणीबद्ध डेटा-आधारित समस्या को हल करने के लिए डेटासेट को अपने स्वयं के डेटासेट से बदलें।
सेजमेकर पर इन एल्गोरिदम को आज़माना सुनिश्चित करें, और उपलब्ध अन्य अंतर्निहित एल्गोरिदम का उपयोग करने के तरीके पर नमूना नोटबुक देखें। GitHub.
लेखक के बारे में
डॉ शिन हुआंग अमेज़ॅन सेजमेकर जम्पस्टार्ट और अमेज़ॅन सेजमेकर बिल्ट-इन एल्गोरिदम के लिए एक अनुप्रयुक्त वैज्ञानिक है। वह स्केलेबल मशीन लर्निंग एल्गोरिदम विकसित करने पर ध्यान केंद्रित करता है। उनकी शोध रुचियां प्राकृतिक भाषा प्रसंस्करण, सारणीबद्ध डेटा पर व्याख्या योग्य गहरी शिक्षा और गैर-पैरामीट्रिक स्पेस-टाइम क्लस्टरिंग के मजबूत विश्लेषण के क्षेत्र में हैं। उन्होंने एसीएल, आईसीडीएम, केडीडी सम्मेलनों और रॉयल स्टैटिस्टिकल सोसाइटी: सीरीज ए जर्नल में कई पत्र प्रकाशित किए हैं।
जोआओ मौरा Amazon वेब सर्विसेज में AI/ML स्पेशलिस्ट सॉल्यूशंस आर्किटेक्ट हैं। वह ज्यादातर एनएलपी उपयोग के मामलों पर केंद्रित है और ग्राहकों को डीप लर्निंग मॉडल प्रशिक्षण और तैनाती को अनुकूलित करने में मदद करता है। वह लो-कोड एमएल सॉल्यूशंस और एमएल-स्पेशलाइज्ड हार्डवेयर के सक्रिय प्रस्तावक भी हैं।
- AI
- ai कला
- ऐ कला जनरेटर
- ऐ रोबोट
- अमेज़न SageMaker
- कृत्रिम बुद्धिमत्ता
- कृत्रिम बुद्धिमत्ता प्रमाणन
- बैंकिंग में आर्टिफिशियल इंटेलिजेंस
- आर्टिफिशियल इंटेलिजेंस रोबोट
- आर्टिफिशियल इंटेलिजेंस रोबोट
- कृत्रिम बुद्धि सॉफ्टवेयर
- AWS मशीन लर्निंग
- blockchain
- ब्लॉकचेन सम्मेलन एआई
- कॉइनजीनियस
- संवादी कृत्रिम बुद्धिमत्ता
- क्रिप्टो सम्मेलन एआई
- दल-ए
- ध्यान लगा के पढ़ना या सीखना
- इसे गूगल करें
- यंत्र अधिगम
- प्लेटो
- प्लेटो एआई
- प्लेटो डेटा इंटेलिजेंस
- प्लेटो गेम
- प्लेटोडाटा
- प्लेटोगेमिंग
- स्केल एआई
- वाक्यविन्यास
- जेफिरनेट