कैसे Logz.io Amazon SageMaker के साथ एमएल अनुशंसाओं और विसंगति का पता लगाने वाले समाधानों को गति देता है

स्रोत नोड: 1594837

Logz.io एक AWS पार्टनर नेटवर्क (APN) एडवांस्ड टेक्नोलॉजी पार्टनर है DevOps, सुरक्षा और डेटा और एनालिटिक्स में AWS दक्षताएँ. Logz.io लॉग, मेट्रिक और ट्रेसिंग एनालिटिक्स के लिए सर्वश्रेष्ठ-इन-क्लास ओपन-सोर्स सॉफ़्टवेयर समाधान के आधार पर एक सेवा (सास) अवलोकन के रूप में एक सॉफ़्टवेयर प्रदान करता है। ग्राहक अपने अनुप्रयोगों और सेवाओं के स्वास्थ्य और प्रदर्शन को प्रबंधित करने के लिए विभिन्न डेटा स्रोतों से डेटा की बढ़ती मात्रा को Logz.io पर भेज रहे हैं। यह नए उपयोगकर्ताओं के लिए भारी हो सकता है जो समय के साथ निर्मित विभिन्न डैशबोर्ड में नेविगेट करना चाहते हैं, विभिन्न अलर्ट सूचनाओं को संसाधित करते हैं, और उत्पादन समस्याओं का निवारण करते समय बिंदुओं को जोड़ते हैं।

मीन टाइम टू डिटेक्ट (एमटीटीडी) और मीन टाइम टू रेजोल्यूशन (एमटीटीआर) हमारे ग्राहकों के लिए प्रमुख मीट्रिक हैं। उनकी गणना उस समय को मापने के द्वारा की जाती है जब कोई उपयोगकर्ता हमारे प्लेटफ़ॉर्म में किसी समस्या (जैसे उत्पादन सेवा डाउन) की जांच शुरू करता है, जब वे प्लेटफ़ॉर्म में विशिष्ट जांच से संबंधित कार्य करना बंद कर देते हैं।

MTTD और MTTR को कम करने में ग्राहकों की मदद करने के लिए, Logz.io मशीन लर्निंग (ML) की ओर रुख कर रहा है ताकि प्रासंगिक डैशबोर्ड और प्रश्नों के लिए सिफारिशें प्रदान की जा सकें और स्व-शिक्षण के माध्यम से विसंगति का पता लगाया जा सके। नतीजतन, औसत उपयोगकर्ता कई लोगों के ज्ञान का लाभ उठाते हुए, उनकी पूरी कंपनी के समग्र अनुभव से लैस होता है। हमने पाया कि हमारा समाधान एमटीटीआर को 20% तक कम कर सकता है।

जैसे ही MTTD घटता है, उपयोगकर्ता समस्या की पहचान कर सकते हैं और इसे तेजी से हल कर सकते हैं। हमारी डेटा सिमेंटिक परत में एक जांच शुरू करने और रोकने के लिए शब्दार्थ शामिल हैं, और एक विशिष्ट अलर्ट के संबंध में उपयोगकर्ता द्वारा की जाने वाली प्रत्येक क्रिया की लोकप्रियता।

इस पोस्ट में, हम साझा करते हैं कि कैसे Logz.io का उपयोग किया जाता है अमेज़न SageMaker हमारी अवधारणा के प्रमाण (POC) के लिए समय और प्रयास को कम करने के लिए, अनुसंधान से लेकर उत्पादन मूल्यांकन तक के प्रयोग, और हमने अपनी उत्पादन अनुमान लागत को कैसे कम किया।

चुनौती

जब तक Logz.io ने SageMaker का उपयोग नहीं किया, अनुसंधान से लेकर POC परीक्षण और उत्पादन पर प्रयोगों के बीच का समय काफी लंबा था। ऐसा इसलिए था क्योंकि हमें डेटा एकत्र करने, साफ़ करने और सामान्य बनाने के लिए स्पार्क जॉब बनाने की आवश्यकता थी। DevOps को प्रत्येक डेटा स्रोत को पढ़ने के लिए इस कार्य की आवश्यकता थी। DevOps और डेटा इंजीनियरिंग कौशल हमारी एमएल टीम का हिस्सा नहीं हैं, और इससे टीमों के बीच उच्च निर्भरता पैदा हो गई है।

इष्टतम लागत बनाम प्रदर्शन अनुपात प्राप्त करते हुए हमारे उत्पादों के लिए एक एमएल अनुमान सेवा प्रदान करना एक और चुनौती थी। हमारा इष्टतम परिदृश्य एक कंप्यूटिंग इकाई के लिए यथासंभव अधिक से अधिक मॉडलों का समर्थन कर रहा है, जबकि कई मॉडलों के साथ ग्राहकों से उच्च समवर्ती प्रदान कर रहा है। हमारे अनुमान समय पर हमारे पास लचीलापन था, क्योंकि अनुमान सेवा के लिए डेटा स्ट्रीम की हमारी प्रारंभिक विंडो लॉग की 5 मिनट की बाल्टी है।

अनुसंधान चरण

डेटा साइंस एक पुनरावृत्त प्रक्रिया है जिसके लिए अनुसंधान के लिए एक इंटरैक्टिव विकास वातावरण की आवश्यकता होती है, प्रत्येक पुनरावृत्ति और डेटा प्रोसेसिंग पर डेटा आउटपुट को मान्य करता है। इसलिए, हम अपने एमएल शोधकर्ताओं को नोटबुक्स का उपयोग करने के लिए प्रोत्साहित करते हैं।

पुनरावृति चक्र में तेजी लाने के लिए, हम अपनी नोटबुक के कोड को बड़े पैमाने पर चलाते हुए वास्तविक उत्पादन डेटा पर परीक्षण करना चाहते थे। इसके अलावा, हम उत्पादन में प्रारंभिक परीक्षण के दौरान DevOps और डेटा इंजीनियरिंग की अड़चन से बचना चाहते थे, जबकि आउटपुट देखने की क्षमता और कोड रनटाइम का अनुमान लगाने की कोशिश कर रहे थे।

इसे लागू करने के लिए, हम अपनी डेटा साइंस टीम को अनुसंधान से लेकर उत्पादन पर प्रारंभिक परीक्षण तक पूर्ण नियंत्रण और संपूर्ण उत्तरदायित्व प्रदान करना चाहते थे। डेटा एक्सेस प्रबंधन को संरक्षित करते हुए और इस एक्सेस की निगरानी करते हुए हमें आसानी से डेटा खींचने की आवश्यकता थी। रनटाइम और अपेक्षित लागतों की निगरानी करते हुए, उन्हें अपने कस्टम POC नोटबुक्स को आसानी से उत्पादन में एक स्केलेबल तरीके से तैनात करने की आवश्यकता थी।

मूल्यांकन चरण

इस चरण के दौरान, हमने प्रशिक्षण और सेवा आवश्यकताओं दोनों का समर्थन करने के लिए कुछ एमएल प्लेटफार्मों का मूल्यांकन किया। हमने पाया कि SageMaker हमारे उपयोग के मामलों के लिए सबसे उपयुक्त है क्योंकि यह प्रशिक्षण और अनुमान दोनों का समर्थन करता है। इसके अलावा, यह अनुकूलन योग्य है, इसलिए हम इसे अपनी पसंदीदा शोध प्रक्रिया के अनुसार तैयार कर सकते हैं।

प्रारंभ में, हमने स्थानीय नोटबुक्स से शुरुआत की, विभिन्न पुस्तकालयों का परीक्षण किया। हमें उत्पादन से बड़े पैमाने पर डेटा निकालने में समस्याएँ आईं। बाद में, हम मॉडलिंग चरण के एक बिंदु पर फंस गए थे जिसमें एक स्थानीय मशीन पर कई घंटे लग जाते थे।

हमने कई समाधानों का मूल्यांकन किया और अंत में निम्नलिखित आर्किटेक्चर को चुना:

  • डेटा की थाली - का ओपन-सोर्स संस्करण डेटा की थाली हमारे स्पार्क का उपयोग करके हमारे डेटा को आसानी से खींचने और जोड़ने में हमारी मदद की अमेज़ॅन ईएमआर डेटा एक्सेस की निगरानी करते हुए, एक साधारण SQL के साथ क्लस्टर
  • SageMaker नोटबुक उदाहरण और प्रसंस्करण कार्य - इसने हमें गिट कनेक्शन के माध्यम से हमारे कोड को सहयोग करते हुए रनटाइम की मापनीयता और मशीन प्रकारों और एमएल फ्रेमवर्क के लचीलेपन में मदद की

अनुसंधान चरण समाधान वास्तुकला

निम्नलिखित आरेख अनुसंधान चरण की समाधान संरचना को दर्शाता है, और इसमें निम्नलिखित घटक शामिल हैं:

  • सेजमेकर नोटबुक - डेटा वैज्ञानिक इनका उपयोग करते हैं पुस्तिकाओं उनके शोध करने के लिए।
  • AWS लाम्बा समारोह - AWS लाम्बा एक सर्वर रहित समाधान है जो मांग पर प्रसंस्करण कार्य चलाता है। कार्य नोटबुक के साथ एक डॉकर कंटेनर का उपयोग करता है जिसे हम अपने प्रयोग के दौरान चलाना चाहते हैं, साथ में हमारी सभी सामान्य फाइलें जिन्हें नोटबुक का समर्थन करने की आवश्यकता होती है (requirements.txt और एक अलग नोटबुक में मल्टी-प्रोसेसिंग फ़ंक्शन कोड)।
  • अमेज़न ईसीआर - अमेज़ॅन इलास्टिक कंटेनर रजिस्ट्री (अमेज़ॅन ईसीआर) हमारे डॉकटर कंटेनर को स्टोर करता है।
  • SageMaker प्रसंस्करण नौकरी - हम इसे चला सकते हैं डाटा प्रोसेसिंग कार्य किसी भी एमएल मशीन पर, और यह हमारी नोटबुक को मापदंडों के साथ चलाता है।
  • डेटा की थाली - यह सेवा हमें SQL का उपयोग करने और कई डेटा स्रोतों को आसानी से जोड़ने में मदद करती है। यह डेटा एक्सेस की निगरानी और डेटा उल्लंघनों को कम करने में मदद करते हुए इसे स्पार्क कोड में अनुवादित करता है और इसे अनुकूलित करता है। एक्स्ट्रा संस्करण ने और भी अधिक क्षमताएं प्रदान कीं।
  • अमेज़ॅन ईएमआर - यह सेवा हमारे सभी डेटा संसाधनों से संपर्क करके स्पार्क पर वर्कलोड के रूप में हमारे डेटा निष्कर्षण को चलाती है।

SageMaker नोटबुक उदाहरण जीवनचक्र के साथ, हम उपयोग करके अधिकतम नोटबुक आवृत्ति रनटाइम को नियंत्रित कर सकते हैं autostop.py टेम्पलेट लिपियों.

ML फ्रेमवर्क का परीक्षण करने के बाद, हमने अपने क्लस्टरिंग और रैंकिंग चरणों के लिए SageMaker MXNet कर्नेल को चुना।

हमारे उत्पादन डेटा पर नोटबुक कोड का परीक्षण करने के लिए, हमने नोटबुक को Amazon ECS में डॉकर के माध्यम से इनकैप्सुलेट करके चलाया और विभिन्न प्रकार की मशीनों पर अधिकतम रनटाइम को मान्य करने के लिए इसे प्रोसेसिंग जॉब के रूप में चलाया।

डॉकटर कंटेनर हमें नोटबुक्स के परीक्षणों के बीच संसाधनों को साझा करने में भी मदद करता है। कुछ मामलों में, एक नोटबुक बड़े डेटा फ़्रेमों को छोटे डेटा फ़्रेमों में विभाजित करके एक बहु-प्रक्रिया का उपयोग करने के लिए अन्य नोटबुक्स को कॉल करती है, जो एक बड़ी मशीन प्रकार में प्रत्येक vCPU पर एक साथ चल सकती हैं।

वास्तविक समय उत्पादन निष्कर्ष समाधान

अनुसंधान चरण में, हमने लकड़ी की छत का इस्तेमाल किया अमेज़न सरल भंडारण सेवा (अमेज़ॅन S3) फ़ाइलें हमारी अनुशंसाओं को बनाए रखने के लिए। हमारे अलर्ट तंत्र में अनुशंसाएं संलग्न करने के लिए हमारी इंजीनियरिंग पाइपलाइन से दिन में एक बार इनका उपयोग किया जाता है।

हालांकि, हमारे रोडमैप को एक उच्च ताज़ा दर समाधान की आवश्यकता है और लंबी अवधि में दिन में एक बार खींचना पर्याप्त नहीं है, क्योंकि हम जाँच के दौरान भी अनुशंसाएँ प्रदान करना चाहते हैं।

इस समाधान को बड़े पैमाने पर लागू करने के लिए, हमने अपने विसंगति-खोज अनुसंधान में अधिकांश सैजमेकर एंडपॉइंट समाधानों का परीक्षण किया। हमने विभिन्न प्रकार की एकल समापन बिंदु मशीन के साथ 500 पूर्व-निर्मित मॉडलों का परीक्षण किया और समापन बिंदु पर अनुरोध करने के लिए समवर्ती बहु-थ्रेडेड क्लाइंट का उपयोग किया। हमने प्रतिक्रिया समय, सीपीयू, मेमोरी और अन्य मेट्रिक्स को मापा (अधिक जानकारी के लिए देखें Amazon CloudWatch के साथ Amazon SageMaker की निगरानी करें). हमने पाया कि मल्टी-मॉडल एंडपॉइंट हमारे उपयोग के मामलों के लिए एकदम सही है।

फ्लास्क (या अन्य पायथन) वेब सेवाओं का उपयोग करने के लिए एकल समापन बिंदु या कुबेरनेट्स की तुलना में एक बहु-मॉडल समापन बिंदु हमारी लागत को नाटकीय रूप से कम कर सकता है। हमारी पहली धारणा यह थी कि हमें प्रत्येक ग्राहक के लिए 4-vCPU छोटी मशीन का उपयोग करके, और औसतन चार समर्पित मॉडलों को क्वेरी करते हुए एक एकल समापन बिंदु प्रदान करना चाहिए, क्योंकि प्रत्येक vCPU एक मॉडल की सेवा करता है। मल्टी-मॉडल एंडपॉइंट के साथ, हम सिंगल मल्टी-एंडपॉइंट मशीन पर अधिक ग्राहक एकत्र कर सकते हैं।

हमारे पास प्रति ग्राहक एक मॉडल और एन्कोडिंग फ़ाइलें थीं, और लोड परीक्षण करने के बाद, हमने निर्धारित किया कि हम 50 ग्राहकों की सेवा कर सकते हैं, प्रत्येक 10 मॉडल का उपयोग कर रहा है और यहां तक ​​कि हमारे समाधानों के लिए सबसे छोटे ml.t2.medium उदाहरण का उपयोग कर रहा है।

इस चरण में, हमने प्रयोग करने पर विचार किया बहु-मॉडल समापन बिंदु. मल्टी-मॉडल एंडपॉइंट्स बड़ी संख्या में मॉडलों को तैनात करने के लिए एक स्केलेबल और लागत प्रभावी समाधान प्रदान करते हैं, जिससे आप एक ही निष्कर्ष कंटेनर के साथ कई मॉडल होस्ट कर सकते हैं। यह कई छोटे एकल-मॉडल समापन बिंदुओं का उपयोग करने की तुलना में समापन बिंदु उपयोग में सुधार करके होस्टिंग लागत को कम करता है जो प्रत्येक एकल ग्राहक को सेवा प्रदान करता है। यह परिनियोजन ओवरहेड को भी कम करता है क्योंकि SageMaker मेमोरी में मॉडल लोड करने का प्रबंधन करता है और उन्हें ट्रैफ़िक पैटर्न के आधार पर स्केल करता है।

इसके अलावा, बहु-मॉडल समापन बिंदु लाभ यह है कि यदि आपके पास विशिष्ट ग्राहकों से उच्च अनुमान दर है, तो इसका ढांचा बेहतर प्रदर्शन के लिए स्मृति में अंतिम सेवारत मॉडल को संरक्षित करता है।

मल्टी-मॉडल एंडपॉइंट्स बनाम मानक एंडपॉइंट्स का उपयोग करके लागतों का अनुमान लगाने के बाद, हमें पता चला कि इससे लागत में लगभग 80% की कमी आ सकती है।

नतीजा

इस खंड में, हम चरणों और प्रक्रिया के परिणाम की समीक्षा करते हैं।

कोड को तेजी से मान्य करने और ऑटोस्टॉप तंत्र का उपयोग करने के लिए नोटबुक को डॉकर कंटेनर में एनकैप्सुलेट करके, नोटबुक को प्रसंस्करण कार्यों के रूप में चलाने में सक्षम करने के लिए हम जीवनचक्र नोटबुक कॉन्फ़िगरेशन का उपयोग करते हैं:

#!/bin/bash # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"). You
# may not use this file except in compliance with the License. A copy of
# the License is located at
#
# http://aws.amazon.com/apache2.0/
#
# or in the "license" file accompanying this file. This file is
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
# ANY KIND, either express or implied. See the License for the specific
# language governing permissions and limitations under the License. set -e # OVERVIEW
# This script installs the sagemaker_run_notebook extension package in SageMaker Notebook Instance
#
# There are two parameters you need to set:
# 1. S3_LOCATION is the place in S3 where you put the extension tarball
# 2. TARBALL is the name of the tar file that you uploaded to S3. You should just need to check
# that you have the version right.
sudo -u ec2-user -i <<'EOF'
# PARAMETERS
VERSION=0.18.0
EXTENSION_NAME=sagemaker_run_notebook
# Set up the user setting and workspace directories
mkdir -p /home/ec2-user/SageMaker/.jupyter-user/{workspaces,user-settings}
# Run in the conda environment that the Jupyter server uses so that our changes are picked up
source /home/ec2-user/anaconda3/bin/activate JupyterSystemEnv
# Install the extension and rebuild JupyterLab so it picks up the new UI
aws s3 cp s3://aws-emr-resources-11111111-us-east-1/infra-sagemaker/sagemaker_run_notebook-0.18.0-Logz-latest.tar.gz ./sagemaker_run_notebook-0.18.0-Logz-latest.tar.gz
pip install sagemaker_run_notebook-0.18.0-Logz-latest.tar.gz jupyter lab build
source /home/ec2-user/anaconda3/bin/deactivate
EOF # sudo -u ec2-user -i <<'EOF'
# PARAMETERS
for PACKAGE in pandas dataplate awswrangler==2.0.0 ipynb==0.5.1 prison==0.1.3 PyMySQL==0.10.1 requests==2.25.0 scipy==1.5.4 dtaidistance joblib sagemaker_run_notebook-0.18.0-Logz-latest.tar.gz fuzzywuzzy==0.18.0; do echo $PACKAGE # Note that "base" is special environment name, include it there as well. for env in base /home/ec2-user/anaconda3/envs/*; do source /home/ec2-user/anaconda3/bin/activate $(basename "$env") if [ $env = 'JupyterSystemEnv' ]; then continue fi pip install --upgrade "$PACKAGE" source /home/ec2-user/anaconda3/bin/deactivate done
done
jupyter lab build # Tell Jupyter to use the user-settings and workspaces directory on the EBS
# volume.
echo "export JUPYTERLAB_SETTINGS_DIR=/home/ec2-user/SageMaker/.jupyter-user/user-settings" >> /etc/profile.d/jupyter-env.sh
echo "export JUPYTERLAB_WORKSPACES_DIR=/home/ec2-user/SageMaker/.jupyter-user/workspaces" >> /etc/profile.d/jupyter-env.sh # The Jupyter server needs to be restarted to pick up the server part of the
# extension. This needs to be done as root.
initctl restart jupyter-server --no-wait # OVERVIEW
# This script stops a SageMaker notebook once it's idle for more than 2 hour (default time)
# You can change the idle time for stop using the environment variable below.
# If you want the notebook the stop only if no browsers are open, remove the --ignore-connections flag
#
# Note that this script will fail if either condition is not met
# 1. Ensure the Notebook Instance has internet connectivity to fetch the example config
# 2. Ensure the Notebook Instance execution role permissions to SageMaker:StopNotebookInstance to stop the notebook
# and SageMaker:DescribeNotebookInstance to describe the notebook.
# PARAMETERS
IDLE_TIME=3600 echo "Fetching the autostop script"
wget https://raw.githubusercontent.com/aws-samples/amazon-sagemaker-notebook-instance-lifecycle-config-samples/master/scripts/auto-stop-idle/autostop.py echo "Starting the SageMaker autostop script in cron" (crontab -l 2>/dev/null; echo "*/5 * * * * /usr/bin/python $PWD/autostop.py --time $IDLE_TIME --ignore-connections") | crontab -

हम क्लोन करते हैं सैजमेकर-रन-नोटबुक GitHub प्रोजेक्ट, और कंटेनर में निम्नलिखित जोड़ें:

  • हमारी पिप आवश्यकताओं
  • नोटबुक के भीतर से नोटबुक चलाने की क्षमता, जो हमें सभी एमएल.एम5.12xबड़े उदाहरण कोर का उपयोग करने के लिए बहु-प्रसंस्करण व्यवहार को सक्षम बनाती है

यह हमें कार्यप्रवाह चलाने में सक्षम बनाता है जिसमें चलने के लिए इंस्टेंस प्रकार को परिभाषित करते हुए कोड की एक पंक्ति में प्रोसेसिंग जॉब के रूप में चलने वाली कई नोटबुक शामिल हैं।

क्योंकि हम नोटबुक में पैरामीटर जोड़ सकते हैं, हम डेटा को खींचने और संसाधित करने के लिए अलग-अलग घंटों, दिनों या महीनों में एक साथ चलाकर अपनी प्रोसेसिंग को स्केल कर सकते हैं।

हम शेड्यूलिंग कार्य भी बना सकते हैं जो नोटबुक चलाते हैं (और रन टाइम को सीमित भी करते हैं)।

हम अंतिम रन और उनके विवरण, जैसे प्रसंस्करण समय भी देख सकते हैं।

कंटेनर में उपयोग किए जाने वाले पेपरमिल से, हम प्रत्येक रन के आउटपुट को देख सकते हैं, जो हमें उत्पादन में डिबग करने में मदद करता है।

हमारी नोटबुक आउटपुट समीक्षा मानक रीड-ओनली नोटबुक के रूप में है।

बहु-प्रसंस्करण उपयोग हमें प्रत्येक नोटबुक प्रसंस्करण पर स्केल करने और इसके सभी कोर का उपयोग करने में मदद करता है। हमने अन्य नोटबुक्स में ऐसे कार्य उत्पन्न किए हैं जो भारी प्रसंस्करण कर सकते हैं, जैसे कि निम्नलिखित:

  • JSON विस्फोट करें
  • डेटाफ़्रेम में प्रासंगिक पंक्तियाँ खोजें जबकि मुख्य नोटबुक डेटाफ़्रेम को विभाजित करती है #cpu-cores तत्व
  • क्लस्टरिंग प्रति अलर्ट प्रकार क्रियाओं को एक साथ चलाएं

फिर हम इन कार्यात्मक नोटबुक्स को कंटेनर में जोड़ते हैं जो नोटबुक को प्रोसेसिंग कार्य के रूप में चलाता है। निम्न डॉकर फ़ाइल देखें (कॉपी कमांड देखें):

ARG BASE_IMAGE=need_an_image
FROM $BASE_IMAGE ENV JUPYTER_ENABLE_LAB yes
ENV PYTHONUNBUFFERED TRUE COPY requirements.txt /tmp/requirements.txt
RUN pip install papermill jupyter nteract-scrapbook boto3 requests==2.20.1
RUN pip install -r /tmp/requirements.txt ENV PYTHONUNBUFFERED=TRUE
ENV PATH="/opt/program:${PATH}" # Set up the program in the image
COPY multiprocessDownloadNormalizeFunctions.ipynb /tmp/multiprocessDownloadNormalizeFunctions.ipynb
COPY multiprocessFunctions.ipynb /tmp/multiprocessFunctions.ipynb
COPY run_notebook execute.py /opt/program/
ENTRYPOINT ["/bin/bash"] # because there is a bug where you have to be root to access the directories
USER root

परिणाम

अनुसंधान चरण के दौरान, हमने अपनी नोटबुक चलाने के विकल्प का मूल्यांकन किया जैसा कि प्रयोग और मूल्यांकन करना है कि हमारा कोड हमारे सभी प्रासंगिक डेटा पर कैसा प्रदर्शन करता है, न कि केवल डेटा का एक नमूना। हमने पाया कि प्रोसेसिंग जॉब्स का उपयोग करके अपनी नोटबुक्स को इनकैप्सुलेट करना हमारे लिए बहुत उपयुक्त हो सकता है, क्योंकि हमें कोड को फिर से लिखने की आवश्यकता नहीं है और हम AWS कंप्यूट ऑप्टिमाइज़्ड और मेमोरी ऑप्टिमाइज़्ड इंस्टेंसेस की शक्ति का उपयोग कर सकते हैं और प्रक्रिया की स्थिति का आसानी से पालन कर सकते हैं।

अनुमान मूल्यांकन के दौरान, हमने विभिन्न सैजमेकर एंडपॉइंट समाधानों का मूल्यांकन किया। हमने पाया कि मल्टी-मॉडल एंडपॉइंट का उपयोग करने से हमें लगभग 50 ग्राहकों को सेवा प्रदान करने में मदद मिल सकती है, जिनमें से प्रत्येक के पास एक ही उदाहरण में कई (लगभग 10) मॉडल हैं, जो हमारी कम-विलंबता बाधाओं को पूरा कर सकते हैं, और इसलिए हमें लागत का 80% तक बचा सकते हैं। .

इस समाधान संरचना के साथ, हम अपने ग्राहकों के एमटीटीआर को कम करने में सक्षम थे, जो हमारे प्लेटफॉर्म का उपयोग करके सफलता को मापने का एक मुख्य पैमाना है। यह हमारे अलर्ट लिंक, जो आपके सिस्टम में किसी समस्या का वर्णन करता है, का जवाब देने के बिंदु से कुल समय को कम करता है, जब आप हमारे प्लेटफॉर्म का उपयोग करके समस्या की जांच कर लेते हैं। जांच चरण के दौरान, हम अपने एमएल अनुशंसा समाधान के साथ और उसके बिना उपयोगकर्ताओं के कार्यों को मापते हैं। यह हमें विशिष्ट समस्या को तेज़ी से हल करने के लिए सर्वोत्तम कार्रवाई के लिए अनुशंसाएँ प्रदान करने में मदद करता है और समस्या के वास्तविक कारण की पहचान करने के लिए विसंगतियों को इंगित करता है।

निष्कर्ष और अगले चरण

इस पोस्ट में, हमने साझा किया कि कैसे Logz.io ने MTTD और MTTR को बेहतर बनाने के लिए SageMaker का उपयोग किया।

अगले चरण के रूप में, हम निम्नलिखित सुविधाओं के साथ समाधान का विस्तार करने पर विचार कर रहे हैं:

हम आपको प्रयास करने के लिए प्रोत्साहित करते हैं सेजमेकर नोटबुक. अधिक उदाहरणों के लिए, देखें SageMaker ने GitHub रेपो का उदाहरण दिया.


लेखक के बारे में

अमित सकल Logz.io के अनुसंधान विभाग का नेतृत्व कर रहे हैं, जो अनुसंधान चरण से एकीकरण चरण तक सभी Logz.io उत्पादों के AI समाधानों के लिए जिम्मेदार है। Logz.io से पहले अमित ने हियर इंक में डेटा साइंस और सिक्योरिटी रिसर्च ग्रुप दोनों का प्रबंधन किया है। और सेलेब्राइट इंक। अमित ने तेल अवीव यूनिवर्सिटी से कंप्यूटर साइंस में एम.एससी की है।

यानीव वक्निन Amazon Web Services में मशीन लर्निंग विशेषज्ञ हैं। एडब्ल्यूएस से पहले यानिव ने एआई स्टार्टअप्स और एंटरप्राइज़ के साथ नेतृत्व के पदों पर काम किया, जिसमें डिप्सी.एआई के सह-संस्थापक और सीईओ शामिल थे। यानीव वास्तविक दुनिया के कार्यों को हल करने और मूल्य प्राप्त करने के लिए मशीन लर्निंग की शक्ति का उपयोग करने के लिए एडब्ल्यूएस ग्राहकों के साथ काम करता है। अपने खाली समय में यानीव अपने लड़कों के साथ फुटबॉल खेलना पसंद करता है।

ईटन सेला Amazon Web Services के साथ मशीन लर्निंग स्पेशलिस्ट सॉल्यूशंस आर्किटेक्ट हैं। वह AWS ग्राहकों के साथ मार्गदर्शन और तकनीकी सहायता प्रदान करने के लिए काम करता है, जिससे उन्हें AWS पर मशीन लर्निंग सॉल्यूशंस बनाने और संचालित करने में मदद मिलती है। अपने खाली समय में, ईटन को जॉगिंग और नवीनतम मशीन लर्निंग लेख पढ़ने का आनंद मिलता है।

स्रोत: https://aws.amazon.com/blogs/machine-learning/how-logz-io-accelerates-ml-recommendations-and-anomaly-detection-solutions-with-amazon-sagemaker/

समय टिकट:

से अधिक एडब्ल्यूएस मशीन लर्निंग ब्लॉग

अमेज़ॅन सेजमेकर को विश्लेषक फर्म कुपिंगरकोल के एआई सर्विस क्लाउड के मूल्यांकन में शीर्ष एआई सर्विस क्लाउड के रूप में दर्जा दिया गया है।

स्रोत नोड: 1181225
समय टिकट: अक्टूबर 19, 2021