एक विज़ुअल डेटा-प्रेप टूल चुनें।
→ML-केंद्रित, SageMaker Studio + फ्लो के साथ एकीकृत → प्रोसेसिंग जॉब → पाइपलाइन → नोटबुक एक्सपोर्ट → SageMaker Data Wrangler। पुनः प्रयोज्य रेसिपी, प्रोफाइलिंग, SageMaker निर्भरता के बिना सामान्य डेटा सफाई → AWS Glue DataBrew। कस्टम कोड के साथ 50 TB+ Spark → Amazon EMR।
क्यों: Data Wrangler SageMaker-नेटिव विकल्प है (300+ ट्रांसफॉर्म, डेटटाइम एक्सट्रैक्शन, पाइपलाइन/प्रोसेसिंग में एक्सपोर्ट)। DataBrew रेसिपी-आधारित और स्रोत-अज्ञेयवादी है। EMR स्केल और आर्बिटरेरी Spark को हैंडल करता है।
संदर्भ↗
S3, RDS, DynamoDB में डेटा को कैटलॉग करें ताकि विश्लेषक और SageMaker डेटासेट खोज सकें।
→AWS Glue Crawlers, AWS Glue Data Catalog को स्कीमा + मेटाडेटा से भरते हैं। Athena, Redshift Spectrum और SageMaker सभी इसका उपयोग करते हैं।
संदर्भ↗
ऑडिट लॉगिंग के साथ डेटा लेक पर कॉलम- और रो-लेवल एक्सेस कंट्रोल की आवश्यकता है।
→AWS Lake Formation। IAM और S3 बकेट नीतियां संरचित डेटा पर कॉलम-स्तर की ग्रैन्युलैरिटी प्रदान नहीं करती हैं।
क्यों: Lake Formation Glue Data Catalog के लिए गवर्नेंस को केंद्रीकृत करता है और ऑडिट के लिए CloudTrail के साथ एकीकृत होता है।
संदर्भ↗
बिना कुछ प्रोविजन किए S3 डेटा पर एड-हॉक SQL चलाएं।
→Amazon Athena। सर्वरलेस, प्रति TB-स्कैन भुगतान। लागत और समय कम करने के लिए डेटा को पार्टिशन करें और Parquet का उपयोग करें।
संदर्भ↗
मौजूदा PySpark कोड के साथ 50 TB की फीचर इंजीनियरिंग, 4 घंटे में पूरी होनी चाहिए।
→Spark के साथ Amazon EMR। ट्यूनेबल क्लस्टर साइज, Spot सपोर्ट, मौजूदा कोड को अपरिवर्तित चलाता है।
क्यों: Glue ETL भी Spark चलाता है, लेकिन EMR क्लस्टर के आकार पर अधिक नियंत्रण देता है; SageMaker Processing छोटे पैमाने के सिंगल-कंटेनर जॉब्स के लिए है।
संदर्भ↗
प्रशिक्षण से पहले एक कस्टम scikit-learn / pandas प्रीप्रोसेसिंग स्क्रिप्ट चलाएं। क्षणिक कंप्यूट, कोई निष्क्रिय लागत नहीं।
→SKLearn (या PySpark) कंटेनर के साथ SageMaker Processing job। प्रोविजन करता है, चलाता है, समाप्त करता है।
क्यों: नोटबुक (चालू रहता है, पैसे लगते हैं) या Lambda (15 मिनट की सीमा, मेमोरी कैप) पर चलाने से बेहतर है।
संदर्भ↗
100,000 छवियों को लागत-कुशलता से लेबल करें — मानव + स्वचालित लेबलिंग चाहते हैं।
→स्वचालित डेटा लेबलिंग सक्षम के साथ Amazon SageMaker Ground Truth। प्रारंभिक मानव-लेबल वाले सबसेट के बाद, Ground Truth एक मॉडल को प्रशिक्षित करता है और उच्च-विश्वास वाले सैंपलों को स्वतः-लेबल करता है।
क्यों: एक्टिव लर्निंग आमतौर पर लेबलिंग लागत को 70% तक कम कर देता है। A2I मॉडल की भविष्यवाणियों की मानव समीक्षा के लिए है, न कि बल्क लेबलिंग के लिए।
संदर्भ↗
कई एनोटेटर असहमत हैं; लेबल के एक नमूने को सत्यापित करने के लिए एक वरिष्ठ समीक्षक की आवश्यकता है।
→Ground Truth लेबल सत्यापन (ऑडिट) वर्कफ़्लो। लेबल का एक सबसेट एक समीक्षा कार्यबल को भेजा जाता है जो अनुमोदित करता है, अस्वीकृत करता है या समायोजित करता है। मल्टी-वर्कर बहुमत वोटिंग के लिए एनोटेशन समेकन के साथ मिलाएं।
संदर्भ↗
प्रशिक्षण (बैच) और अनुमान (10ms से कम) पर समान इंजीनियर फीचर्स की आवश्यकता है।
→Amazon SageMaker Feature Store जिसमें फीचर ग्रुप पर ऑनलाइन + ऑफलाइन दोनों स्टोर सक्षम हैं। ऑनलाइन स्टोर रियल-टाइम GetRecord को बैक करता है; ऑफलाइन स्टोर (S3 में Parquet) प्रशिक्षण को बैक करता है।
क्यों: कस्टम DynamoDB ↔ S3 सिंक के बिना ट्रेन/सर्व स्क्यू को समाप्त करता है।
संदर्भ↗
एक फीचर ग्रुप को परिभाषित करना — क्या अनिवार्य है।
→रिकॉर्ड पहचानकर्ता नाम (प्रति रिकॉर्ड अद्वितीय कुंजी) और इवेंट टाइम फीचर नाम (पॉइंट-इन-टाइम क्वेरीज़ के लिए टाइमस्टैम्प)।
संदर्भ↗
भविष्य के फीचर मूल्यों को लीक किए बिना प्रशिक्षण के लिए दो फीचर ग्रुप्स को जोड़ें।
→इवेंट-टाइम कॉलम का उपयोग करके ऑफलाइन स्टोर के खिलाफ पॉइंट-इन-टाइम जॉइन। प्रत्येक प्रशिक्षण पंक्ति केवल उन्हीं फीचर मूल्यों को देखती है जो उसके इवेंट टाइमस्टैम्प पर मौजूद थे।
क्यों: नवीनतम मानों पर प्लेन JOIN पोस्ट-इवेंट फीचर ड्रिफ्ट को मॉडल तक पहुंचाकर डेटा लीकेज का कारण बनता है।
संदर्भ↗
500 GB डेटासेट के लिए SageMaker प्रशिक्षण डेटा इनपुट मोड चुनें।
→फाइल मोड → पूरा डेटासेट पहले डाउनलोड होता है (धीमी शुरुआत, EBS लागत)। पाइप मोड → S3 से स्ट्रीम होता है, कम स्टार्टअप, कम स्टोरेज। FastFile मोड → लेजी फाइल-लेवल स्ट्रीमिंग। डाउनलोड से बचने के लिए बड़े डेटासेट के लिए पाइप (या FastFile) का उपयोग करें।
संदर्भ↗
लाखों छोटी फाइलें (प्रत्येक ~50 KB) — पाइप मोड थ्रूपुट खराब है।
→Amazon RecordIO (protobuf) में बंडल करें और पाइप मोड के माध्यम से स्ट्रीम करें। अनुक्रमिक रिकॉर्ड प्रति-फाइल S3 GET ओवरहेड को समाप्त करते हैं।
संदर्भ↗
अक्सर कॉलम-सबसेट रीड्स + पार्टिशन फिल्टर के साथ S3 पर ML डेटा लेक के लिए एक स्टोरेज फॉर्मेट और लेआउट चुनें।
→Parquet (कॉलमनार, कंप्रेस्ड) को सबसे अधिक फ़िल्टर किए गए कॉलम (उदाहरण के लिए, तिथि या क्षेत्र) द्वारा पार्टिशन किया गया। Athena और SageMaker में कॉलम प्रूनिंग + पार्टिशन प्रूनिंग को चलाता है।
संदर्भ↗
Glue ETL हर रन पर पहले से हैंडल की गई फाइलों को फिर से प्रोसेस करता है।
→Glue जॉब बुकमार्क सक्षम करें। PAUSE विकल्प का उपयोग करें ताकि एक विफल रन बुकमार्क को आगे न बढ़ाए; केवल आवश्यकता पड़ने पर रीसेट करें।
संदर्भ↗
Glue ETL पाइपलाइन के भीतर स्कीमा, प्रकार, मान श्रेणियों और नल बाधाओं को मान्य करें।
→DQDL नियमों के साथ AWS Glue Data Quality। जब चेक विफल हो जाते हैं तो पाइपलाइन को रोक देता है।
संदर्भ↗
श्रेणीबद्ध विशेषताओं को एन्कोड करें। कुछ क्रमित हैं (Basic/Standard/Premium), कुछ नहीं हैं (US राज्य)।
→क्रमित → ऑर्डिनल एन्कोडिंग (रैंक को संरक्षित करता है)। अक्रमित → वन-हॉट एन्कोडिंग (नकली क्रमबद्धता से बचता है)। अक्रमित विशेषताओं पर लेबल एन्कोडिंग से बचें। टारगेट एन्कोडिंग को लीकेज से बचने के लिए सावधान CV की आवश्यकता होती है।
न्यूमेरिकल कॉलम में गुम मान हैं जो किसी अन्य विशेषता से सहसंबद्ध हैं (उदाहरण के लिए, आय की कमी रोजगार के प्रकार पर निर्भर करती है)।
→समूह-आधारित मीडियन इम्पुटेशन (प्रति रोजगार प्रकार मीडियन)। संबंध को संरक्षित करता है; माध्य आउटलायर्स के प्रति संवेदनशील होता है; ड्रॉप करने से डेटा खो जाता है; शून्य पूर्वाग्रह जोड़ता है।
0.3% पॉजिटिव क्लास के साथ बाइनरी क्लासिफिकेशन।
→केवल प्रशिक्षण फोल्ड पर SMOTE ओवरसैंपलिंग (स्प्लिट के बाद)। PR-curve / F1 मूल्यांकन के साथ मिलाएं, सटीकता के साथ नहीं।
क्यों: लीकेज से बचने के लिए स्प्लिटिंग के बाद ओवरसैंपलिंग लागू करें। असंतुलित डेटा पर सटीकता भ्रामक होती है।
राइट-स्क्यूड न्यूमेरिक फीचर (उदाहरण के लिए, आय) लीनियर-मॉडल प्रदर्शन को नुकसान पहुंचाता है।
→लॉग ट्रांसफॉर्म। राइट टेल को संपीड़ित करता है और अधिक सममित वितरण पैदा करता है। स्टैंडर्डाइजेशन/मिन-मैक्स स्केल को बदलते हैं, आकार को नहीं।
50 अत्यधिक सहसंबद्ध विशेषताएं; विचरण को संरक्षित करते हुए कम आयाम चाहते हैं।
→PCA। सहसंबद्ध विशेषताओं को विचरण द्वारा रैंक किए गए असंबद्ध मुख्य घटकों में बदलता है।
एक ट्रेन/वैल/टेस्ट स्प्लिट चुनें।
→असंतुलित क्लासिफिकेशन → स्ट्रेटिफाइड स्प्लिट (क्लास अनुपात को संरक्षित करता है)। टाइम-सीरीज → कालानुक्रमिक स्प्लिट (प्रारंभिक अवधि पर प्रशिक्षित करें, नवीनतम पर परीक्षण करें); कभी भी रैंडम-शफल न करें। IID टैबुलर → रैंडम।