हमने हाल ही में में एक नई क्षमता पेश की है अमेज़न SageMaker पायथन एसडीके जो डेटा वैज्ञानिकों को उनके मशीन लर्निंग (एमएल) कोड को उनके पसंदीदा एकीकृत डेवलपर वातावरण (आईडीई) और नोटबुक के साथ-साथ संबद्ध रनटाइम निर्भरता के रूप में चलाने देता है अमेज़न SageMaker स्थानीय स्तर पर किए गए प्रयोग में न्यूनतम कोड परिवर्तन के साथ प्रशिक्षण कार्य। डेटा वैज्ञानिक आमतौर पर किसी एमएल समस्या पर काम करते समय डेटा प्रोसेसिंग और प्रशिक्षण मॉडल में प्रयोग के कई पुनरावृत्तियों को पूरा करते हैं। वे इस एमएल कोड को चलाना चाहते हैं और प्रयोग में आसानी और न्यूनतम कोड परिवर्तन के साथ प्रयोग करना चाहते हैं। अमेज़न सैजमेकर मॉडल प्रशिक्षण AWS के कंप्यूट इंफ्रास्ट्रक्चर पर डेटा वैज्ञानिकों को पूरी तरह से प्रबंधित बड़े पैमाने पर प्रशिक्षण कार्य चलाने में मदद करता है। SageMaker प्रशिक्षण डेटा वैज्ञानिकों को उन्नत टूल जैसे कि अमेज़न SageMaker डिबगर और उनके बड़े पैमाने के प्रशिक्षण कार्यों को डिबग और विश्लेषण करने के लिए प्रोफाइलर।
छोटे बजट, छोटी टीमों और तंग समयसीमा वाले ग्राहकों के लिए, सैजमेकर पर चलने के लिए फिर से लिखी गई हर एक नई अवधारणा और कोड की पंक्ति उन्हें उनके मुख्य कार्यों, अर्थात् डेटा प्रोसेसिंग और प्रशिक्षण एमएल मॉडल के प्रति कम उत्पादक बनाती है। वे अपनी पसंद के ढांचे में एक बार कोड लिखना चाहते हैं और SageMaker क्षमताओं का उपयोग करके अपने नोटबुक या लैपटॉप में चल रहे कोड से बड़े पैमाने पर कोड चलाने के लिए मूल रूप से स्थानांतरित करने में सक्षम हैं।
सैजमेकर पायथन एसडीके की इस नई क्षमता के साथ, डेटा वैज्ञानिक कुछ ही मिनटों में अपने एमएल कोड को सैजमेकर ट्रेनिंग प्लेटफॉर्म पर ऑनबोर्ड कर सकते हैं। आपको बस अपने ML कोड में कोड की एक पंक्ति जोड़ने की आवश्यकता है, और SageMaker समझदारी से आपके कोड को डेटासेट और कार्यक्षेत्र पर्यावरण सेटअप के साथ समझती है और इसे SageMaker प्रशिक्षण कार्य के रूप में चलाती है। फिर आप SageMaker प्रशिक्षण मंच की प्रमुख क्षमताओं का लाभ उठा सकते हैं, जैसे कि नौकरियों को आसानी से स्केल करने की क्षमता, और अन्य संबद्ध उपकरण जैसे डीबगर और प्रोफाइलर। इस रिलीज़ में, आप अपने स्थानीय मशीन लर्निंग (एमएल) पायथन कोड को सिंगल-नोड Amazon SageMaker ट्रेनिंग जॉब या मल्टीपल पैरेलल जॉब के रूप में चला सकते हैं। वितरित प्रशिक्षण कार्य (कई नोड्स में) दूरस्थ कार्यों द्वारा समर्थित नहीं हैं।
इस पोस्ट में, हम आपको दिखाते हैं कि स्थानीय एमएल कोड को सेजमेकर ट्रेनिंग जॉब के रूप में चलाने के लिए इस नई क्षमता का उपयोग कैसे करें।
समाधान अवलोकन
अब आप अपने IDE या नोटबुक में लिखे गए ML कोड को SageMaker ट्रेनिंग जॉब के रूप में फ़ंक्शन को एनोटेट करके चला सकते हैं, जो एक साधारण डेकोरेटर के साथ उपयोगकर्ता के कोड बेस के प्रवेश बिंदु के रूप में कार्य करता है। मंगलाचरण पर, यह क्षमता स्वचालित रूप से आपके एमएल कोड से सभी संबंधित चर, फ़ंक्शंस, पैकेज, पर्यावरण चर और अन्य रनटाइम आवश्यकताओं का एक स्नैपशॉट लेती है, उन्हें क्रमबद्ध करती है, और उन्हें एक सैजमेकर प्रशिक्षण कार्य के रूप में प्रस्तुत करती है। यह हाल ही में घोषित के साथ एकीकृत करता है मापदंडों के लिए डिफ़ॉल्ट मान सेट करने के लिए SageMaker Python SDK सुविधा. यह क्षमता SageMaker निर्माणों को सरल बनाती है जिसे आपको SageMaker प्रशिक्षण का उपयोग करके कोड चलाने में सक्षम होने के लिए सीखने की आवश्यकता है। डेटा वैज्ञानिक किसी भी पसंदीदा आईडीई (जैसे अमेज़ॅन सैजमेकर स्टूडियो, नोटबुक्स, VS कोड, या PyCharm)। तैयार होने पर, आप अपने पायथन फ़ंक्शन को इसके साथ एनोटेट कर सकते हैं @remote
डेकोरेटर और इसे बड़े पैमाने पर SageMaker जॉब के रूप में चलाएं।
यह क्षमता परिचित ओपन-सोर्स पायथन ऑब्जेक्ट्स को तर्क और आउटपुट के रूप में लेती है। इसके अलावा, आपको कंटेनर जीवनचक्र प्रबंधन को समझने की आवश्यकता नहीं है और न्यूनतम कॉन्फ़िगरेशन ओवरहेड्स के साथ बस अपने कार्यभार को विभिन्न गणना संदर्भों (जैसे स्थानीय आईडीई, स्टूडियो, या प्रशिक्षण कार्य) में चला सकते हैं। किसी भी स्थानीय कोड को SageMaker प्रशिक्षण कार्य के रूप में चलाने के लिए, यह क्षमता कार्य चलाने के लिए आवश्यक कॉन्फ़िगरेशन का अनुमान लगाती है, जैसे कि AWS पहचान और अभिगम प्रबंधन (आईएएम) भूमिका, एन्क्रिप्शन कुंजी, और नेटवर्क कॉन्फ़िगरेशन, स्टूडियो या आईडीई सेटिंग्स से (जो डिफ़ॉल्ट सेटिंग्स) और उन्हें डिफ़ॉल्ट रूप से प्लेटफ़ॉर्म पर भेज देता है। आपके पास अनुमानित कॉन्फ़िगरेशन का उपयोग करके SageMaker प्रबंधित बुनियादी ढांचे में अपने रनटाइम को अनुकूलित करने या उन्हें डेकोरेटर के तर्कों के रूप में पास करके SDK-स्तर पर ओवरराइड करने की सुविधा है।
SageMaker Python SDK की यह नई क्षमता आपके ML कोड को मौजूदा कार्यक्षेत्र के वातावरण और किसी भी संबद्ध डेटा प्रोसेसिंग कोड और डेटासेट को SageMaker प्रशिक्षण कार्य में बदल देती है। यह क्षमता a के अंदर लिपटे ML कोड की तलाश करती है @remote
डेकोरेटर और स्वचालित रूप से इसे एक ऐसी नौकरी में अनुवादित करता है जो स्टूडियो या स्थानीय IDE जैसे कि PyCharm में चलती है।
निम्नलिखित अनुभागों में, हम इस नई क्षमता की विशेषताओं और सेजमेकर प्रशिक्षण नौकरियों के रूप में पायथन कार्यों को कैसे लॉन्च करें, इसके बारे में जानेंगे।
.. पूर्वापेक्षाएँ
इस नई सैजमेकर पायथन एसडीके क्षमता का उपयोग करने और इस पोस्ट से जुड़े कोड को चलाने के लिए, आपको निम्नलिखित पूर्वापेक्षाएँ चाहिए:
- एक AWS खाता जिसमें आपके सभी AWS संसाधन होंगे
- SageMaker तक पहुँचने के लिए IAM की भूमिका
- स्टूडियो या एक SageMaker नोटबुक उदाहरण या एक IDE जैसे कि PyCharm तक पहुँच
स्टूडियो और सेजमेकर नोटबुक्स से SDK का उपयोग करें
आप एक नोटबुक लॉन्च करके और अपने कोड को एक के साथ लपेटकर स्टूडियो से इस क्षमता का उपयोग कर सकते हैं @remote
नोटबुक के अंदर डेकोरेटर। आपको पहले निम्न कोड का उपयोग करके रिमोट फ़ंक्शन आयात करने की आवश्यकता है:
from sagemaker.remote_function import remote
जब आप डेकोरेटर फ़ंक्शन का उपयोग करते हैं, तो यह क्षमता स्वचालित रूप से आपके कोड के फ़ंक्शन की व्याख्या करेगी और इसे सेजमेकर प्रशिक्षण कार्य के रूप में चलाएगी।
आप इस क्षमता का उपयोग SageMaker नोटबुक इंस्टेंस से भी कर सकते हैं। आपको सबसे पहले एक नोटबुक इंस्टेंस शुरू करने की जरूरत है, उस पर ज्यूपिटर या जुपिटर लैब खोलें और एक नोटबुक लॉन्च करें। फिर रिमोट फ़ंक्शन को पिछले कोड में दिखाए अनुसार आयात करें और अपने कोड को इसके साथ लपेटें @remote
डेकोरेटर। हम इस पोस्ट में बाद में डेकोरेटर फ़ंक्शन और संबंधित सेटिंग्स का उपयोग करने का एक उदाहरण शामिल करते हैं।
अपने स्थानीय वातावरण से एसडीके का प्रयोग करें
आप इस क्षमता का उपयोग अपने स्थानीय आईडीई से भी कर सकते हैं। एक शर्त के रूप में, आपके पास होना चाहिए AWS कमांड लाइन इंटरफ़ेस (एडब्ल्यूएस सीएलआई), सेजमेकर पायथन एसडीके, और अजगर के लिए AWS SDK (Boto3) आपके स्थानीय वातावरण में स्थापित। आपको इन पुस्तकालयों को अपने कोड में आयात करने, SageMaker सत्र सेट करने, सेटिंग्स निर्दिष्ट करने और अपने फ़ंक्शन को इसके साथ सजाने की आवश्यकता है @remote
डेकोरेटर। निम्नलिखित उदाहरण कोड में, हम एक SageMaker प्रशिक्षण कार्य के रूप में एक साधारण डिवाइड फ़ंक्शन चलाते हैं:
import boto3
import sagemaker
from sagemaker.remote_function import remote sm_session = sagemaker.Session(boto_session=boto3.session.Session(region_name="us-west-2"))
settings = dict(
sagemaker_session=sm_session,
role=<IAM_ROLE_NAME>
instance_type="ml.m5.xlarge",
)
@remote(**settings)
def divide(x, y):
return x / y
if __name__ == "__main__":
print(divide(2, 3.0))
हम प्रशिक्षण कार्यों के रूप में उन्नत कार्यों को चलाने के लिए समान कार्यप्रणाली का उपयोग कर सकते हैं, जैसा कि अगले भाग में दिखाया गया है।
SageMaker जॉब्स के रूप में Python फ़ंक्शंस लॉन्च करें
नया सैजमेकर पायथन एसडीके फीचर आपको पायथन कार्यों को चलाने की अनुमति देता है सेज मेकर ट्रेनिंग जॉब्स. किसी भी पायथन कोड, एमएल प्रशिक्षण कोड को डेटा वैज्ञानिकों द्वारा अपने पसंदीदा स्थानीय आईडीई (पाइचर्म, वीएस कोड), सेजमेकर नोटबुक, या स्टूडियो नोटबुक का उपयोग करके प्रबंधित सेजमेकर जॉब के रूप में लॉन्च किया जा सकता है।
इस क्षमता का उपयोग करते हुए एमएल वर्कलोड में, संबंधित डेटासेट, निर्भरता और कार्यक्षेत्र पर्यावरण सेटअप को एमएल कोड का उपयोग करके क्रमबद्ध किया जाता है और सिंक्रोनस और एसिंक्रोनस रूप से सेजमेकर जॉब के रूप में चलाया जाता है।
आप एक जोड़ सकते हैं @remote
स्थानीय एमएल प्रसंस्करण या प्रशिक्षण समारोह सहित किसी भी पायथन कोड के लिए डेकोरेटर एनोटेशन इसे एक प्रबंधित सैजमेकर प्रशिक्षण कार्य के रूप में लॉन्च करने के लिए, जिससे सैजमेकर के पैमाने, प्रदर्शन और लागत लाभों का लाभ उठाया जा सके। इसे पायथन फंक्शन कोड में एक डेकोरेटर जोड़कर न्यूनतम कोड परिवर्तन के साथ प्राप्त किया जा सकता है। सजाए गए फ़ंक्शन के लिए आमंत्रण समकालिक रूप से चलाया जाता है, और फ़ंक्शन रन तब तक प्रतीक्षा करता है जब तक कि SageMaker का काम पूरा नहीं हो जाता।
निम्नलिखित उदाहरण में, हम इसका उपयोग करते हैं @remote
डेकोरेटर एमएल.एम5.लार्ज इंस्टेंस का उपयोग करके डेकोरेटर मोड में सेजमेकर जॉब लॉन्च करने के लिए। SageMaker इस कार्य को एक प्रबंधित कार्य के रूप में लॉन्च करने के लिए प्रशिक्षण नौकरियों का उपयोग करता है।
from sagemaker.remote_function import remote
from numpy as np @remote(instance_type="ml.m5.large")
def matrix_multiply(a, b): return np.matmul(a, b) a = np.array([[1, 0], [0, 1]])
b = np.array([1, 2]) assert matrix_multiply(a, b) == np.array([1,2])
आप सेजमेकर जॉब्स, पायथन पैकेज और निर्भरताओं को लॉन्च करने के लिए डेकोरेटर मोड का भी उपयोग कर सकते हैं। आप SageMaker प्रशिक्षण नौकरियों को लॉन्च करने के लिए VPC, सबनेट और सुरक्षा समूहों जैसे पर्यावरण चर शामिल कर सकते हैं environment.yml
फ़ाइल। यह एमएल इंजीनियरों और व्यवस्थापकों को इन पर्यावरण चरों को कॉन्फ़िगर करने की अनुमति देता है ताकि डेटा वैज्ञानिक एमएल मॉडल निर्माण पर ध्यान केंद्रित कर सकें और तेजी से पुनरावृति कर सकें। निम्न कोड देखें:
from sagemaker.remote_function import remote @remote(instance_type="ml.g4dn.xlarge",dependencies = "./environment.yml")
def train_hf_model(
train_input_path,test_input_path,s3_output_path = None,
*,epochs = 1, train_batch_size = 32, eval_batch_size = 64,
warmup_steps = 500,learning_rate = 5e-5
):
model_name = "distilbert-base-uncased"
model = AutoModelForSequenceClassification.from_pretrained(model_name)
... <TRUCNATED>
return os.path.join(s3_output_path, model_dir), eval_result
आप का उपयोग कर सकते हैं RemoteExecutor
SageMaker जॉब के रूप में Python फ़ंक्शंस को एसिंक्रोनस रूप से लॉन्च करने के लिए। कार्य की स्थिति को अद्यतन करने के लिए निष्पादक अतुल्यकालिक रूप से SageMaker Training नौकरियों का चुनाव करता है। RemoteExecutor
वर्ग का कार्यान्वयन है समवर्ती। भविष्य। निष्पादक, जिसका उपयोग SageMaker प्रशिक्षण कार्यों को अतुल्यकालिक रूप से सबमिट करने के लिए किया जाता है। निम्न कोड देखें:
from sagemaker.remote_function import RemoteExecutor def train_hf_model(
train_input_path,test_input_path,s3_output_path = None,
*,epochs = 1, train_batch_size = 32, eval_batch_size = 64,
warmup_steps = 500,learning_rate = 5e-5
):
model_name = "distilbert-base-uncased"
model = AutoModelForSequenceClassification.from_pretrained(model_name)
...<TRUNCATED>
return os.path.join(s3_output_path, model_dir), eval_result with RemoteExecutor(instance_type="ml.g4dn.xlarge", dependencies = './requirements.txt') as e:
future = e.submit(train_hf_model, train_input_path,test_input_path,s3_output_path,
epochs, train_batch_size, eval_batch_size,warmup_steps,learning_rate)
रनटाइम वातावरण को अनुकूलित करें
डेकोरेटर मोड और RemoteExecutor
आपको SageMaker जॉब के लिए रनटाइम वातावरण को परिभाषित और अनुकूलित करने की अनुमति देता है। रनटाइम को अनुकूलित करने के लिए, SageMaker नौकरियों के लिए Python पैकेज और पर्यावरण चर सहित रनटाइम निर्भरताएँ निर्दिष्ट की जा सकती हैं। SageMaker प्रबंधित नौकरियों के रूप में स्थानीय Python कोड चलाने के लिए, SageMaker को Python पैकेज और निर्भरताएँ उपलब्ध कराने की आवश्यकता है। ML इंजीनियर या डेटा साइंस एडमिनिस्ट्रेटर SageMaker जॉब के लिए नेटवर्किंग और सुरक्षा कॉन्फ़िगरेशन जैसे VPC, सबनेट और सुरक्षा समूह को कॉन्फ़िगर कर सकते हैं, इसलिए SageMaker जॉब लॉन्च करते समय डेटा वैज्ञानिक इन केंद्रीय रूप से प्रबंधित कॉन्फ़िगरेशन का उपयोग कर सकते हैं। आप या तो ए का उपयोग कर सकते हैं requirements.txt
फाइल या ए Conda environment.yaml
फ़ाइल.
जब निर्भरता के साथ परिभाषित किया जाता है requirements.txt
, संकुल को जॉब रनटाइम में पाइप का उपयोग करके स्थापित किया जाएगा। यदि नौकरी चलाने के लिए उपयोग की जाने वाली छवि कोंडा वातावरण के साथ आती है, तो नौकरियों के उपयोग के लिए घोषित कोंडा पर्यावरण में संकुल स्थापित किए जाएंगे। निम्नलिखित कोड एक उदाहरण दिखाता है requirements.txt
फ़ाइल:
datasets
transformers
torch
scikit-learn
s3fs==0.4.2
sagemaker>=2.148.0
आप अपना पास कर सकते हैं Conda environment.yaml
कोंडा वातावरण बनाने के लिए फ़ाइल जिसमें आप अपने कोड को प्रशिक्षण कार्य के दौरान चलाना चाहते हैं। यदि नौकरी चलाने के लिए उपयोग की जाने वाली छवि कोड को चलाने के लिए कोंडा पर्यावरण की घोषणा करती है, तो हम दिए गए विनिर्देशों के साथ घोषित कोंडा पर्यावरण को अपडेट करेंगे। निम्नलिखित कोड एक का एक उदाहरण है Conda environment.yaml
फ़ाइल:
name: sagemaker_example
channels: - conda-forge
dependencies: - python=3.10 - pandas - pip: - sagemaker
वैकल्पिक रूप से, आप सेट कर सकते हैं dependencies=”auto_capture”
SageMaker Python SDK को सक्रिय कोंडा वातावरण में स्थापित निर्भरताओं को पकड़ने देने के लिए। आपके पास इसके लिए एक सक्रिय कोंडा वातावरण होना चाहिए auto_capture
काम करने के लिए। ध्यान दें कि इसके लिए पूर्वापेक्षाएँ हैं auto_capture
काम करने के लिए; हम अनुशंसा करते हैं कि आप अपनी निर्भरताओं में a requirement.txt
or Conda environment.yml
फ़ाइल जैसा कि पिछले अनुभाग में बताया गया है।
अधिक जानकारी के लिए देखें SageMaker प्रशिक्षण कार्य के रूप में अपना स्थानीय कोड चलाएँ.
SageMaker जॉब के लिए कॉन्फ़िगरेशन
इन्फ्रास्ट्रक्चर से संबंधित सेटिंग्स को एक कॉन्फ़िगरेशन फ़ाइल में लोड किया जा सकता है जिसे व्यवस्थापक उपयोगकर्ता सेट अप करने में सहायता कर सकते हैं। आपको इसे केवल एक बार सेट करना होगा। इन्फ्रास्ट्रक्चर सेटिंग्स में नेटवर्क कॉन्फ़िगरेशन, IAM भूमिकाएँ शामिल हैं, अमेज़न सरल भंडारण सेवा (अमेज़न S3) इनपुट, आउटपुट डेटा और टैग के लिए फ़ोल्डर। को देखें सैजमेकर पायथन एसडीके के साथ डिफॉल्ट्स को कॉन्फ़िगर करना और उपयोग करना अधिक जानकारी के लिए.
SchemaVersion: '1.0'
SageMaker:
PythonSDK:
Modules:
RemoteFunction:
Dependencies: path/to/requirements.txt
EnvironmentVariables: {"EnvVarKey": "EnvVarValue"}
ImageUri: 366666666666.dkr.ecr.us-west-2.amazonaws.com/my-image:latest
InstanceType: ml.m5.large
RoleArn: arn:aws:iam::366666666666:role/MyRole
S3KmsKeyId: somekmskeyid
S3RootUri: s3://my-bucket/my-project
SecurityGroupIds:
- sg123
Subnets:
- subnet-1234
Tags:
- {"Key": "someTagKey", "Value": "someTagValue"}
VolumeKmsKeyId: somekmskeyid
कार्यान्वयन
नोटबुक के भीतर प्रशिक्षण कार्य के रूप में कोड चलाकर PyTorch या TensorFlow जैसे गहन शिक्षण मॉडल भी स्टूडियो के भीतर चलाए जा सकते हैं। स्टूडियो में इस क्षमता को प्रदर्शित करने के लिए, आप इस रेपो को अपने स्टूडियो में क्लोन कर सकते हैं और इसमें स्थित नोटबुक चला सकते हैं GitHub भंडार।
यह उदाहरण एंड-टू-एंड बाइनरी टेक्स्ट वर्गीकरण उपयोग केस प्रदर्शित करता है। हम बाइनरी टेक्स्ट वर्गीकरण पर पूर्व-प्रशिक्षित ट्रांसफॉर्मर को ठीक करने के लिए हगिंग फेस ट्रांसफॉर्मर और डेटासेट लाइब्रेरी का उपयोग कर रहे हैं। विशेष रूप से, पूर्व-प्रशिक्षित मॉडल का उपयोग करके ठीक-ठाक किया जाएगा आईएमडीबी डेटासेट.
जब आप रिपॉजिटरी को क्लोन करते हैं, तो आपको निम्न फाइलों का पता लगाना चाहिए:
- config.yaml - बुनियादी ढांचे से संबंधित सेटिंग्स को कोड बेस से अलग करने के लिए अधिकांश डेकोरेटर तर्कों को कॉन्फ़िगरेशन फ़ाइल में लोड किया जा सकता है
- हगिंगफेस.ipynb - इसमें पूर्व-प्रशिक्षित हगिंगफेस मॉडल को प्रशिक्षित करने के लिए कोड शामिल है, जिसे IMDB डेटासेट का उपयोग करके ठीक-ठीक किया जाएगा
- requirements.txt - इस फ़ाइल में फ़ंक्शन को चलाने के लिए सभी निर्भरताएँ हैं जिनका उपयोग इस नोटबुक में कोड चलाने और प्रशिक्षण कार्य के रूप में GPU उदाहरण में दूरस्थ रूप से प्रशिक्षण चलाने के लिए किया जाएगा
जब आप नोटबुक खोलते हैं, तो आपको नोटबुक परिवेश सेट करने के लिए कहा जाएगा. आप नोटबुक कोड चलाने के लिए तेज़ लॉन्च इंस्टेंस प्रकार के रूप में Python 3.0 कर्नेल और ml.m3.large के साथ डेटा साइंस 5 छवि का चयन कर सकते हैं। यह उदाहरण प्रकार किसी परिवेश को स्पिन करने में काफ़ी तेज़ है।
प्रशिक्षण कार्य एक ml.g4dn.xlarge उदाहरण में चलाया जाएगा, जैसा कि इसमें परिभाषित किया गया है config.yaml
फ़ाइल:
SchemaVersion: '1.0'
SageMaker:
PythonSDK:
Modules:
RemoteFunction:
# role arn is not required if in SageMaker Notebook instance or SageMaker Studio
# Uncomment the following line and replace with the right execution role if in a local IDE
# RoleArn: <IAM_ROLE_ARN>
InstanceType: ml.g4dn.xlarge
Dependencies: ./requirements.txt
RSI requirements.txt
हगिंग फेस मॉडल के प्रशिक्षण के लिए फ़ंक्शन को चलाने के लिए फ़ाइल निर्भरताओं में निम्नलिखित शामिल हैं:
datasets
transformers
torch
scikit-learn
# lock s3fs to this specific version as more recent ones introduce dependency on aiobotocore, which is not compatible with botocore
s3fs==0.4.2
sagemaker>=2.148.0,<3
हगिंग फेस नोटबुक दिखाता है कि प्रशिक्षण को दूरस्थ रूप से कैसे चलाया जाए @remote
फ़ंक्शन, जो समकालिक रूप से चलाया जाता है। इसलिए, मॉडल के प्रशिक्षण के लिए चलाया जाने वाला फंक्शन सैजमेकर प्रशिक्षण कार्य पूरा होने तक प्रतीक्षा करेगा। प्रशिक्षण दूरस्थ रूप से एक GPU उदाहरण के साथ चलाया जाएगा जिसमें पूर्ववर्ती कॉन्फ़िगरेशन फ़ाइल में उदाहरण प्रकार परिभाषित किया गया है।
आपके द्वारा प्रशिक्षण कार्य चलाने के बाद, आप मूल्यांकन मेट्रिक्स का निरीक्षण करने और हमारे प्रशिक्षित मॉडल पर पाठ को वर्गीकृत करने के लिए नोटबुक में शेष कक्षों को चला सकते हैं।
आप उस प्रशिक्षण कार्य की स्थिति को भी देख सकते हैं जो सैजमेकर कंसोल पर वापस नेविगेट करके सैजमेकर डैशबोर्ड पर जीपीयू इंस्टेंस में दूरस्थ रूप से ट्रिगर हो गया।
जैसे ही प्रशिक्षण कार्य पूरा हो जाता है, यह मूल्यांकन और वर्गीकरण के लिए नोटबुक में निर्देश चलाना जारी रखता है। इसी तरह की नौकरियों को अतुल्यकालिक रूप से चलाने के लिए स्टूडियो नोटबुक के भीतर एम्बेडेड रिमोट एक्ज़ीक्यूटर फ़ंक्शन के माध्यम से प्रशिक्षित और चलाया जा सकता है।
@remote फ़ंक्शन के अंदर SageMaker प्रयोगों के साथ एकीकरण
SageMaker प्रयोग रन बनाने के लिए आप अपने प्रयोग का नाम, रन नाम और अन्य पैरामीटर अपने रिमोट फ़ंक्शन में पास कर सकते हैं। निम्न कोड उदाहरण प्रयोग का नाम, रन का नाम और प्रत्येक रन के लिए लॉग करने के लिए पैरामीटर आयात करता है:
from sagemaker.remote_function import remote
from sagemaker.experiments.run import Run
# Define your remote function
@remote
def train(value_1, value_2, exp_name, run_name):
...
...
#Creates the experiment
with Run( experiment_name=exp_name, run_name=run_name, sagemaker_session=sagemaker_session
) as run:
...
...
#Define values for the parameters to log
run.log_parameter("param_1", value_1)
run.log_parameter("param_2", value_2)
...
...
#Define metrics to log
run.log_metric("metric_a", 0.5)
run.log_metric("metric_b", 0.1) # Invoke your remote function
train(1.0, 2.0, "my-exp-name", "my-run-name")
पिछले उदाहरण में, पैरामीटर p1
और p2
एक प्रशिक्षण पाश के अंदर समय के साथ लॉग इन किया जाता है। सामान्य मापदंडों में बैच आकार या युग शामिल हो सकते हैं। उदाहरण में, मेट्रिक्स A
और B
एक प्रशिक्षण पाश के अंदर एक रन ओवर टाइम के लिए लॉग किया जाता है। सामान्य मेट्रिक्स में सटीकता या हानि शामिल हो सकती है। अधिक जानकारी के लिए देखें एक Amazon SageMaker प्रयोग बनाएँ.
निष्कर्ष
इस पोस्ट में, हमने एक नई सैजमेकर पायथन एसडीके क्षमता पेश की है जो डेटा वैज्ञानिकों को उनके एमएल कोड को उनके पसंदीदा आईडीई में सेजमेकर ट्रेनिंग जॉब के रूप में चलाने में सक्षम बनाती है। हमने इसकी विशेषताओं के साथ इस क्षमता का उपयोग करने के लिए आवश्यक पूर्वापेक्षाओं पर चर्चा की। हमने यह भी दिखाया कि स्टूडियो, सेजमेकर नोटबुक इंस्टेंस और आपकी स्थानीय आईडीई में इस क्षमता का उपयोग कैसे करें। इसके अलावा, हमने इस क्षमता का उपयोग करने के तरीके को प्रदर्शित करने के लिए नमूना कोड उदाहरण प्रदान किए। अगले चरण के रूप में, हम अनुशंसा करते हैं कि आप निम्न का पालन करके अपने IDE या SageMaker में इस क्षमता को आज़माएँ कोड उदाहरण इस पोस्ट में संदर्भित।
लेखक के बारे में
दीपंकर पात्रो AWS SageMaker में एक सॉफ्टवेयर डेवलपमेंट इंजीनियर है, जो ग्राहकों को बड़े पैमाने पर AI / ML समाधान अपनाने में मदद करने के लिए MLOps समाधानों का नवाचार और निर्माण कर रहा है। उन्होंने कंप्यूटर विज्ञान में एमएस किया है और उनकी रुचि के क्षेत्र कंप्यूटर सुरक्षा, वितरित सिस्टम और एआई/एमएल हैं।
फारूक साबिर AWS में एक वरिष्ठ आर्टिफिशियल इंटेलिजेंस और मशीन लर्निंग स्पेशलिस्ट सॉल्यूशंस आर्किटेक्ट हैं। उनके पास ऑस्टिन में टेक्सास विश्वविद्यालय से इलेक्ट्रिकल इंजीनियरिंग में पीएचडी और एमएस की डिग्री है और जॉर्जिया इंस्टीट्यूट ऑफ टेक्नोलॉजी से कंप्यूटर साइंस में एमएस है। उनके पास 15 साल से अधिक का कार्य अनुभव है और वह कॉलेज के छात्रों को पढ़ाना और सलाह देना भी पसंद करते हैं। AWS में, वह ग्राहकों को डेटा साइंस, मशीन लर्निंग, कंप्यूटर विज़न, आर्टिफिशियल इंटेलिजेंस, न्यूमेरिकल ऑप्टिमाइज़ेशन और संबंधित डोमेन में उनकी व्यावसायिक समस्याओं को तैयार करने और हल करने में मदद करता है। डलास, टेक्सास में स्थित, वह और उसका परिवार यात्रा करना और लंबी सड़क यात्राओं पर जाना पसंद करते हैं।
मनोज रवि Amazon SageMaker के वरिष्ठ उत्पाद प्रबंधक हैं। उन्हें अगली पीढ़ी के एआई उत्पादों के निर्माण का शौक है और वे ग्राहकों के लिए बड़े पैमाने पर मशीन लर्निंग को आसान बनाने के लिए सॉफ्टवेयर और टूल्स पर काम करते हैं। उन्होंने हास स्कूल ऑफ बिजनेस से एमबीए किया है और कार्नेगी मेलॉन यूनिवर्सिटी से सूचना प्रणाली प्रबंधन में मास्टर्स किया है। मनोज अपने खाली समय में टेनिस खेलना और लैंडस्केप फोटोग्राफी करना पसंद करते हैं।
शिखर क्वात्र Amazon Web Services में एक AI/ML स्पेशलिस्ट सॉल्यूशन आर्किटेक्ट है, जो एक प्रमुख ग्लोबल सिस्टम इंटीग्रेटर के साथ काम कर रहा है। उन्होंने AI/ML और IoT डोमेन में 500 से अधिक पेटेंट के साथ सबसे कम उम्र के भारतीय मास्टर इन्वेंटर्स में से एक का खिताब अर्जित किया है। शिखर संगठन के लिए लागत-कुशल, स्केलेबल क्लाउड वातावरण बनाने, बनाने और बनाए रखने में सहायता करता है, और AWS पर रणनीतिक उद्योग समाधान बनाने में GSI भागीदार का समर्थन करता है। शिखर को अपने खाली समय में गिटार बजाना, संगीत रचना करना और माइंडफुलनेस का अभ्यास करना पसंद है।
विक्रम एलंगो वर्जीनिया, यूएस में स्थित AWS में एक सीनियर AI/ML स्पेशलिस्ट सॉल्यूशन आर्किटेक्ट हैं। वह वर्तमान में जनरेटिव एआई, एलएलएम, शीघ्र इंजीनियरिंग, बड़े मॉडल अनुमान अनुकूलन और उद्यमों में एमएल को स्केल करने पर केंद्रित है। विक्रम वित्तीय और बीमा उद्योग के ग्राहकों को बड़े पैमाने पर मशीन लर्निंग एप्लिकेशन बनाने और तैनात करने के लिए डिजाइन और विचार नेतृत्व के साथ मदद करता है। अपने खाली समय में, वह यात्रा करना, लंबी पैदल यात्रा करना, खाना बनाना और शिविर लगाना पसंद करते हैं।
- एसईओ संचालित सामग्री और पीआर वितरण। आज ही प्रवर्धित हो जाओ।
- प्लेटोआईस्ट्रीम। Web3 डेटा इंटेलिजेंस। ज्ञान प्रवर्धित। यहां पहुंचें।
- मिंटिंग द फ्यूचर डब्ल्यू एड्रिएन एशले। यहां पहुंचें।
- स्रोत: https://aws.amazon.com/blogs/machine-learning/run-your-local-machine-learning-code-as-amazon-sagemaker-training-jobs-with-minimal-code-changes/
- :हैस
- :है
- :नहीं
- $यूपी
- 1
- 10
- 100
- 15 साल
- 500
- 7
- a
- क्षमता
- योग्य
- About
- पहुँच
- लेखा
- शुद्धता
- हासिल
- के पार
- सक्रिय
- कार्य करता है
- जोड़ना
- जोड़ने
- इसके अलावा
- व्यवस्थापक
- प्रशासकों
- अपनाना
- उन्नत
- लाभ
- AI
- ऐ / एमएल
- एड्स
- सब
- की अनुमति देता है
- साथ में
- भी
- वीरांगना
- अमेज़न SageMaker
- अमेज़ॅन वेब सेवा
- an
- विश्लेषण करें
- और
- की घोषणा
- कोई
- अनुप्रयोगों
- हैं
- क्षेत्रों के बारे में जानकारी का उपयोग करके ट्रेडिंग कर सकते हैं।
- तर्क
- कृत्रिम
- कृत्रिम बुद्धिमत्ता
- आर्टिफिशियल इंटेलिजेंस एंड मशीन लर्निंग
- AS
- जुड़े
- At
- ऑस्टिन
- स्वतः
- उपलब्ध
- एडब्ल्यूएस
- वापस
- आधार
- आधारित
- BE
- लाभ
- बजट
- निर्माण
- इमारत
- व्यापार
- by
- कर सकते हैं
- क्षमताओं
- कब्जा
- कार्नेगी मेलॉन
- ले जाना
- मामला
- कोशिकाओं
- परिवर्तन
- परिवर्तन
- चैनलों
- चुनाव
- कक्षा
- वर्गीकरण
- वर्गीकृत
- बादल
- कोड
- कोड आधार
- कॉलेज
- आता है
- सामान्य
- संगत
- पूरा
- गणना करना
- कंप्यूटर
- कम्प्यूटर साइंस
- कंप्यूटर सुरक्षा
- Computer Vision
- संकल्पना
- विन्यास
- कंसोल
- शामिल
- कंटेनर
- शामिल हैं
- संदर्भों
- जारी
- मूल
- लागत
- सका
- आवरण
- बनाना
- वर्तमान में
- ग्राहक
- अनुकूलित
- डलास
- डैशबोर्ड
- तिथि
- डेटा संसाधन
- डेटा विज्ञान
- डेटासेट
- वाणी
- चूक
- चूक
- परिभाषित
- दिखाना
- दर्शाता
- निर्भरता
- तैनात
- वर्णित
- डिज़ाइन
- विवरण
- विकसित
- डेवलपर
- विकास
- विभिन्न
- चर्चा की
- वितरित
- वितरित प्रणाली
- वितरित प्रशिक्षण
- डोमेन
- किया
- dont
- दौरान
- e
- से प्रत्येक
- अर्जित
- उपयोग में आसानी
- आसान
- आसानी
- भी
- एम्बेडेड
- सक्षम बनाता है
- एन्क्रिप्शन
- शुरू से अंत तक
- इंजीनियर
- अभियांत्रिकी
- इंजीनियर्स
- उद्यम
- प्रविष्टि
- वातावरण
- वातावरण
- युग
- अवधियों को
- मूल्यांकन
- प्रत्येक
- उदाहरण
- उदाहरण
- निष्पादन
- मौजूदा
- अनुभव
- प्रयोग
- चेहरा
- परिचित
- परिवार
- फास्ट
- और तेज
- Feature
- विशेषताएं
- कुछ
- पट्टिका
- फ़ाइलें
- वित्तीय
- प्रथम
- लचीलापन
- फोकस
- ध्यान केंद्रित
- निम्नलिखित
- के लिए
- ढांचा
- से
- पूरी तरह से
- समारोह
- कार्यों
- और भी
- भविष्य
- भावी सौदे
- उत्पादक
- जनरेटिव एआई
- जॉर्जिया
- दी
- वैश्विक
- Go
- GPU
- समूह की
- है
- he
- मदद
- मदद करता है
- उसके
- रखती है
- कैसे
- How To
- एचटीएमएल
- http
- HTTPS
- हगिंग फ़ेस
- पहचान
- if
- की छवि
- कार्यान्वयन
- आयात
- आयात
- in
- शामिल
- सहित
- भारतीय
- उद्योग
- करें-
- सूचना प्रणालियों
- इंफ्रास्ट्रक्चर
- innovating
- निवेश
- installed
- उदाहरण
- संस्थान
- निर्देश
- बीमा
- एकीकृत
- एकीकृत
- बुद्धि
- ब्याज
- में
- परिचय कराना
- शुरू की
- अन्वेषकों
- IOT
- IT
- पुनरावृत्तियों
- आईटी इस
- काम
- नौकरियां
- जेपीजी
- केवल
- कुंजी
- प्रयोगशाला
- परिदृश्य
- लैपटॉप
- बड़ा
- बड़े पैमाने पर
- ताज़ा
- लांच
- शुभारंभ
- शुरू करने
- नेतृत्व
- प्रमुख
- जानें
- सीख रहा हूँ
- चलो
- चलें
- पुस्तकालयों
- पुस्तकालय
- जीवन चक्र
- पसंद
- को यह पसंद है
- लाइन
- लिंक्डइन
- स्थानीय
- स्थानीय स्तर पर
- स्थित
- लॉग इन
- लॉग इन
- लंबा
- लग रहा है
- बंद
- मोहब्बत
- मशीन
- यंत्र अधिगम
- बनाया गया
- को बनाए रखने के
- बनाना
- बनाता है
- कामयाब
- प्रबंध
- प्रबंधक
- मास्टर
- मई..
- मेलॉन
- क्रियाविधि
- मेट्रिक्स
- Mindfulness
- कम से कम
- मिनटों
- ML
- एमएलओपीएस
- मोड
- आदर्श
- मॉडल
- मॉड्यूल
- अधिक
- अधिकांश
- चाल
- MS
- विभिन्न
- संगीत
- नाम
- यानी
- नेविगेट
- आवश्यकता
- जरूरत
- नेटवर्क
- शुद्ध कार्यशील
- नया
- अगला
- नोड्स
- नोटबुक
- अभी
- numpy
- वस्तुओं
- of
- on
- जहाज
- एक बार
- ONE
- केवल
- खुला
- खुला स्रोत
- इष्टतमीकरण
- or
- आदेश
- संगठन
- OS
- अन्य
- हमारी
- आउट
- उत्पादन
- के ऊपर
- ओवरराइड
- पैकेज
- संकुल
- पांडा
- समानांतर
- पैरामीटर
- विशेष
- साथी
- पास
- गुजरता
- पासिंग
- आवेशपूर्ण
- पेटेंट
- पथ
- प्रदर्शन
- फ़ोटोग्राफ़ी
- मंच
- प्लेटो
- प्लेटो डेटा इंटेलिजेंस
- प्लेटोडाटा
- खेल
- बिन्दु
- पद
- वरीय
- आवश्यक शर्तें
- पिछला
- मुसीबत
- समस्याओं
- प्रसंस्करण
- एस्ट्रो मॉल
- उत्पादन प्रबंधक
- उत्पादक
- उत्पाद
- बशर्ते
- अजगर
- pytorch
- तैयार
- हाल
- हाल ही में
- की सिफारिश
- सम्बंधित
- और
- दूरस्थ
- की जगह
- कोष
- अपेक्षित
- आवश्यकताएँ
- बाकी
- वापसी
- सड़क
- भूमिका
- भूमिकाओं
- रन
- दौड़ना
- sagemaker
- स्केलेबल
- स्केल
- स्केलिंग
- स्कूल के साथ
- विज्ञान
- वैज्ञानिकों
- scikit सीखने
- एसडीके
- मूल
- अनुभाग
- वर्गों
- सुरक्षा
- देखना
- वरिष्ठ
- अलग
- सेवाएँ
- सत्र
- सेट
- की स्थापना
- सेटिंग्स
- व्यवस्था
- कई
- चाहिए
- दिखाना
- प्रदर्शन
- दिखाया
- दिखाता है
- काफी
- समान
- सरल
- केवल
- एक
- आकार
- छोटा
- आशुचित्र
- So
- सॉफ्टवेयर
- सॉफ्टवेयर विकास
- समाधान ढूंढे
- हल
- विशेषज्ञ
- विशिष्ट
- विनिर्देश
- विनिर्दिष्ट
- प्रारंभ
- शुरुआत में
- स्थिति
- कदम
- भंडारण
- सामरिक
- छात्र
- स्टूडियो
- प्रस्तुत
- सबनेट
- ऐसा
- समर्थित
- समर्थन करता है
- प्रणाली
- सिस्टम
- लेना
- लेता है
- ले जा
- कार्य
- टीमों
- टेक्नोलॉजी
- tensorflow
- टेक्सास
- पाठ वर्गीकरण
- कि
- RSI
- लेकिन हाल ही
- उन
- फिर
- वहाँ।
- जिसके चलते
- इसलिये
- इन
- वे
- इसका
- विचार
- वैचारिक नेतृत्व
- यहाँ
- पहर
- शीर्षक
- सेवा मेरे
- उपकरण
- मशाल
- की ओर
- रेलगाड़ी
- प्रशिक्षित
- प्रशिक्षण
- ट्रान्सफ़ॉर्मर
- यात्रा
- यात्रा का
- शुरू हो रहा
- टाइप
- आम तौर पर
- के अंतर्गत
- समझना
- विश्वविद्यालय
- अपडेट
- us
- उपयोग
- उदाहरण
- प्रयुक्त
- उपयोगकर्ताओं
- का उपयोग
- मूल्य
- मान
- संस्करण
- के माध्यम से
- देखें
- वर्जीनिया
- दृष्टि
- vs
- बनाम कोड
- प्रतीक्षा
- करना चाहते हैं
- we
- वेब
- वेब सेवाओं
- कब
- कौन कौन से
- जब
- मर्जी
- साथ में
- अंदर
- काम
- काम कर रहे
- कार्य
- होगा
- लपेटो
- लिपटा
- लिखना
- कोड लिखें
- लिखा हुआ
- X
- साल
- आप
- सबसे कम उम्र
- आपका
- जेफिरनेट