49 KiB
ক্লাউডে ডেটা সায়েন্স: "লো কোড/নো কোড" পদ্ধতি
![]() |
---|
ক্লাউডে ডেটা সায়েন্স: লো কোড - @nitya দ্বারা স্কেচনোট |
সূচিপত্র:
- ক্লাউডে ডেটা সায়েন্স: "লো কোড/নো কোড" পদ্ধতি
পূর্ব-লেকচার কুইজ
১. ভূমিকা
১.১ Azure Machine Learning কী?
Azure ক্লাউড প্ল্যাটফর্ম ২০০টিরও বেশি পণ্য এবং ক্লাউড পরিষেবা নিয়ে গঠিত, যা আপনাকে নতুন সমাধান তৈরি করতে সহায়তা করে।
ডেটা বিজ্ঞানীরা ডেটা বিশ্লেষণ এবং প্রি-প্রসেসিং, বিভিন্ন মডেল-প্রশিক্ষণ অ্যালগরিদম পরীক্ষা করার জন্য প্রচুর সময় ব্যয় করেন, যা সময়সাপেক্ষ এবং ব্যয়বহুল কম্পিউট হার্ডওয়্যারের অপ্রয়োজনীয় ব্যবহার ঘটায়।
Azure ML হলো একটি ক্লাউড-ভিত্তিক প্ল্যাটফর্ম, যা Azure-এ মেশিন লার্নিং সমাধান তৈরি এবং পরিচালনার জন্য ব্যবহৃত হয়। এটি ডেটা প্রস্তুতি, মডেল প্রশিক্ষণ, প্রেডিক্টিভ পরিষেবা প্রকাশ এবং তাদের ব্যবহার পর্যবেক্ষণের জন্য বিস্তৃত বৈশিষ্ট্য সরবরাহ করে। সবচেয়ে গুরুত্বপূর্ণ বিষয় হলো, এটি মডেল প্রশিক্ষণের সাথে সম্পর্কিত সময়সাপেক্ষ কাজগুলো স্বয়ংক্রিয় করে দক্ষতা বৃদ্ধি করে এবং ক্লাউড-ভিত্তিক কম্পিউট রিসোর্স ব্যবহার করতে সক্ষম করে, যা বড় ডেটা ভলিউম পরিচালনা করতে পারে এবং কেবলমাত্র ব্যবহারের সময় খরচ করে।
Azure ML ডেভেলপার এবং ডেটা বিজ্ঞানীদের মেশিন লার্নিং ওয়ার্কফ্লো পরিচালনার জন্য প্রয়োজনীয় সব সরঞ্জাম সরবরাহ করে। এর মধ্যে রয়েছে:
- Azure Machine Learning Studio: এটি একটি ওয়েব পোর্টাল, যা মডেল প্রশিক্ষণ, ডিপ্লয়মেন্ট, অটোমেশন, ট্র্যাকিং এবং অ্যাসেট ম্যানেজমেন্টের জন্য লো-কোড এবং নো-কোড বিকল্প সরবরাহ করে। এটি Azure Machine Learning SDK-এর সাথে একীভূত অভিজ্ঞতা প্রদান করে।
- Jupyter Notebooks: দ্রুত প্রোটোটাইপ এবং মডেল পরীক্ষা করার জন্য।
- Azure Machine Learning Designer: মডিউল ড্র্যাগ-এন্ড-ড্রপ করে পরীক্ষাগুলো তৈরি এবং লো-কোড পরিবেশে পাইপলাইন ডিপ্লয় করার জন্য।
- Automated machine learning UI (AutoML): মডেল ডেভেলপমেন্টের পুনরাবৃত্তিমূলক কাজগুলো স্বয়ংক্রিয় করে, উচ্চ স্কেল, দক্ষতা এবং উৎপাদনশীলতার সাথে মডেল তৈরি করতে সহায়তা করে।
- Data Labelling: ডেটা স্বয়ংক্রিয়ভাবে লেবেল করার জন্য একটি সহায়ক টুল।
- Visual Studio Code-এর জন্য মেশিন লার্নিং এক্সটেনশন: মেশিন লার্নিং প্রকল্প তৈরি এবং পরিচালনার জন্য একটি পূর্ণাঙ্গ ডেভেলপমেন্ট পরিবেশ সরবরাহ করে।
- Machine learning CLI: কমান্ড লাইন থেকে Azure ML রিসোর্স পরিচালনার জন্য কমান্ড সরবরাহ করে।
- PyTorch, TensorFlow, Scikit-learn-এর মতো ওপেন-সোর্স ফ্রেমওয়ার্কের সাথে ইন্টিগ্রেশন: মডেল প্রশিক্ষণ, ডিপ্লয়মেন্ট এবং মেশিন লার্নিং প্রক্রিয়ার সম্পূর্ণ জীবনচক্র পরিচালনার জন্য।
- MLflow: এটি মেশিন লার্নিং পরীক্ষার জীবনচক্র পরিচালনার জন্য একটি ওপেন-সোর্স লাইব্রেরি। MLFlow Tracking হলো MLflow-এর একটি উপাদান, যা আপনার প্রশিক্ষণ রান মেট্রিক এবং মডেল আর্টিফ্যাক্ট লগ এবং ট্র্যাক করে, আপনার পরীক্ষার পরিবেশ নির্বিশেষে।
১.২ হার্ট ফেলিওর প্রেডিকশন প্রকল্প:
প্রকল্প তৈরি এবং তা বাস্তবায়ন করা আপনার দক্ষতা এবং জ্ঞান পরীক্ষা করার সেরা উপায়। এই পাঠে, আমরা Azure ML স্টুডিওতে হার্ট ফেলিওর আক্রমণের পূর্বাভাস দেওয়ার জন্য একটি ডেটা সায়েন্স প্রকল্প তৈরি করার দুটি ভিন্ন পদ্ধতি অন্বেষণ করব: লো কোড/নো কোড এবং Azure ML SDK ব্যবহার করে, যা নিচের স্কিমায় দেখানো হয়েছে:
প্রতিটি পদ্ধতির নিজস্ব সুবিধা এবং অসুবিধা রয়েছে। লো কোড/নো কোড পদ্ধতি শুরু করার জন্য সহজ, কারণ এটি GUI (গ্রাফিকাল ইউজার ইন্টারফেস) ব্যবহার করে এবং কোডের পূর্ব জ্ঞানের প্রয়োজন হয় না। এই পদ্ধতি প্রকল্পের কার্যকারিতা দ্রুত পরীক্ষা করতে এবং POC (প্রুফ অফ কনসেপ্ট) তৈরি করতে সহায়তা করে। তবে, প্রকল্প বড় হলে এবং প্রোডাকশন-রেডি করতে হলে GUI ব্যবহার করে রিসোর্স তৈরি করা সম্ভব নয়। তখন প্রোগ্রাম্যাটিকভাবে সবকিছু স্বয়ংক্রিয় করতে হবে, যেমন রিসোর্স তৈরি থেকে শুরু করে মডেল ডিপ্লয়মেন্ট পর্যন্ত। এই ক্ষেত্রে Azure ML SDK ব্যবহার জানা অত্যন্ত গুরুত্বপূর্ণ।
লো কোড/নো কোড | Azure ML SDK | |
---|---|---|
কোড দক্ষতা | প্রয়োজন নেই | প্রয়োজন |
ডেভেলপমেন্ট সময় | দ্রুত এবং সহজ | কোড দক্ষতার উপর নির্ভরশীল |
প্রোডাকশন-রেডি | না | হ্যাঁ |
১.৩ হার্ট ফেলিওর ডেটাসেট:
কার্ডিওভাসকুলার ডিজিজ (CVD) বিশ্বব্যাপী মৃত্যুর প্রধান কারণ, যা বিশ্বব্যাপী ৩১% মৃত্যুর জন্য দায়ী। তামাক ব্যবহার, অস্বাস্থ্যকর খাদ্যাভ্যাস, স্থূলতা, শারীরিক নিষ্ক্রিয়তা এবং অ্যালকোহলের ক্ষতিকর ব্যবহার ইত্যাদি পরিবেশগত এবং আচরণগত ঝুঁকির কারণগুলো মডেল অনুমানের বৈশিষ্ট্য হিসেবে ব্যবহার করা যেতে পারে। CVD বিকাশের সম্ভাবনা অনুমান করা উচ্চ ঝুঁকিপূর্ণ ব্যক্তিদের আক্রমণ প্রতিরোধে অত্যন্ত কার্যকর হতে পারে।
Kaggle একটি হার্ট ফেলিওর ডেটাসেট উন্মুক্ত করেছে, যা আমরা এই প্রকল্পে ব্যবহার করব। আপনি এখন ডেটাসেটটি ডাউনলোড করতে পারেন। এটি একটি ট্যাবুলার ডেটাসেট, যেখানে ১৩টি কলাম (১২টি বৈশিষ্ট্য এবং ১টি লক্ষ্য ভেরিয়েবল) এবং ২৯৯টি সারি রয়েছে।
ভেরিয়েবল নাম | প্রকার | বিবরণ | উদাহরণ | |
---|---|---|---|---|
১ | age | সংখ্যাগত | রোগীর বয়স | ২৫ |
২ | anaemia | বুলিয়ান | রক্তকণিকা বা হিমোগ্লোবিনের ঘাটতি | ০ বা ১ |
৩ | creatinine_phosphokinase | সংখ্যাগত | রক্তে CPK এনজাইমের মাত্রা | ৫৪২ |
৪ | diabetes | বুলিয়ান | রোগীর ডায়াবেটিস আছে কিনা | ০ বা ১ |
৫ | ejection_fraction | সংখ্যাগত | প্রতিটি সংকোচনে হৃদয় থেকে রক্ত বের হওয়ার শতাংশ | ৪৫ |
৬ | high_blood_pressure | বুলিয়ান | রোগীর উচ্চ রক্তচাপ আছে কিনা | ০ বা ১ |
৭ | platelets | সংখ্যাগত | রক্তে প্লেটলেটের পরিমাণ | ১৪৯০০০ |
৮ | serum_creatinine | সংখ্যাগত | রক্তে সিরাম ক্রিয়েটিনিনের মাত্রা | ০.৫ |
৯ | serum_sodium | সংখ্যাগত | রক্তে সিরাম সোডিয়ামের মাত্রা | জুন |
১০ | sex | বুলিয়ান | নারী বা পুরুষ | ০ বা ১ |
১১ | smoking | বুলিয়ান | রোগী ধূমপান করেন কিনা | ০ বা ১ |
১২ | time | সংখ্যাগত | ফলো-আপ সময়কাল (দিন) | ৪ |
---- | --------------------------- | ------------------- | --------------------------------------------------------- | ------------------- |
২১ | DEATH_EVENT [লক্ষ্য] | বুলিয়ান | ফলো-আপ সময়কালে রোগী মারা গেছেন কিনা | ০ বা ১ |
ডেটাসেটটি প্রস্তুত হলে, আমরা Azure-এ প্রকল্প শুরু করতে পারি।
২. Azure ML স্টুডিওতে লো কোড/নো কোড মডেল প্রশিক্ষণ
২.১ Azure ML ওয়ার্কস্পেস তৈরি
Azure ML-এ মডেল প্রশিক্ষণ দিতে হলে প্রথমে একটি Azure ML ওয়ার্কস্পেস তৈরি করতে হবে। ওয়ার্কস্পেস হলো Azure Machine Learning-এর শীর্ষ স্তরের রিসোর্স, যা আপনার তৈরি করা সমস্ত আর্টিফ্যাক্ট পরিচালনার জন্য একটি কেন্দ্রীয় স্থান সরবরাহ করে। এটি সমস্ত প্রশিক্ষণ রান, লগ, মেট্রিক, আউটপুট এবং আপনার স্ক্রিপ্টের স্ন্যাপশটের একটি ইতিহাস সংরক্ষণ করে। এই তথ্য ব্যবহার করে আপনি নির্ধারণ করতে পারবেন কোন প্রশিক্ষণ রানটি সেরা মডেল তৈরি করেছে। আরও জানুন
আপনার অপারেটিং সিস্টেমের সাথে সামঞ্জস্যপূর্ণ সর্বশেষ ব্রাউজার ব্যবহার করার পরামর্শ দেওয়া হয়। নিম্নলিখিত ব্রাউজারগুলো সমর্থিত:
- Microsoft Edge (নতুন সংস্করণ, Microsoft Edge লিগ্যাসি নয়)
- Safari (সর্বশেষ সংস্করণ, কেবল ম্যাকের জন্য)
- Chrome (সর্বশেষ সংস্করণ)
- Firefox (সর্বশেষ সংস্করণ)
Azure Machine Learning ব্যবহার করতে, আপনার Azure সাবস্ক্রিপশনে একটি ওয়ার্কস্পেস তৈরি করুন। এরপর এই ওয়ার্কস্পেসটি ব্যবহার করে ডেটা, কম্পিউট রিসোর্স, কোড, মডেল এবং মেশিন লার্নিং সম্পর্কিত অন্যান্য আর্টিফ্যাক্ট পরিচালনা করতে পারবেন।
নোট: যতক্ষণ আপনার Azure Machine Learning ওয়ার্কস্পেস আপনার সাবস্ক্রিপশনে থাকবে, ততক্ষণ ডেটা স্টোরেজের জন্য সামান্য চার্জ হবে। তাই যখন এটি আর ব্যবহার করবেন না, তখন ওয়ার্কস্পেসটি মুছে ফেলার পরামর্শ দেওয়া হয়।
১. Azure পোর্টালে Microsoft শংসাপত্র ব্যবহার করে সাইন ইন করুন।
২. +Create a resource নির্বাচন করুন।
Machine Learning খুঁজুন এবং Machine Learning টাইল নির্বাচন করুন।
Create বোতামে ক্লিক করুন।
নিম্নলিখিত সেটিংস পূরণ করুন:
- Subscription: আপনার Azure সাবস্ক্রিপশন
- Resource group: একটি রিসোর্স গ্রুপ তৈরি করুন বা নির্বাচন করুন
- Workspace name: আপনার ওয়ার্কস্পেসের জন্য একটি অনন্য নাম লিখুন
- Region: আপনার নিকটস্থ ভৌগোলিক অঞ্চল নির্বাচন করুন
- Storage account: আপনার ওয়ার্কস্পেসের জন্য তৈরি হওয়া ডিফল্ট নতুন স্টোরেজ অ্যাকাউন্ট লক্ষ্য করুন
- Key vault: আপনার ওয়ার্কস্পেসের জন্য তৈরি হওয়া ডিফল্ট নতুন কী ভল্ট লক্ষ্য করুন
- Application insights: আপনার ওয়ার্কস্পেসের জন্য তৈরি হওয়া ডিফল্ট নতুন অ্যাপ্লিকেশন ইনসাইটস রিসোর্স লক্ষ্য করুন
- Container registry: কিছুই নয় (প্রথমবার একটি মডেল কন্টেইনারে ডিপ্লয় করার সময় এটি স্বয়ংক্রিয়ভাবে তৈরি হবে)

- Create + review বোতামে ক্লিক করুন এবং তারপর Create বোতামে ক্লিক করুন।
৩. আপনার ওয়ার্কস্পেস তৈরি হওয়ার জন্য অপেক্ষা করুন (এটি কয়েক মিনিট সময় নিতে পারে)। তারপর পোর্টালে এটি খুলুন। আপনি এটি Machine Learning Azure পরিষেবার মাধ্যমে খুঁজে পেতে পারেন।
৪. আপনার ওয়ার্কস্পেসের ওভারভিউ পৃষ্ঠায়, Azure Machine Learning স্টুডিও চালু করুন (অথবা একটি নতুন ব্রাউজার ট্যাবে https://ml.azure.com-এ যান) এবং Microsoft অ্যাকাউন্ট ব্যবহার করে Azure Machine Learning স্টুডিওতে সাইন ইন করুন। যদি প্রম্পট করা হয়, তবে আপনার Azure ডিরেক্টরি এবং সাবস্ক্রিপশন এবং Azure Machine Learning ওয়ার্কস্পেস নির্বাচন করুন।
৫. Azure Machine Learning স্টুডিওতে, উপরের বাম দিকে ☰ আইকনে টগল করুন এবং ইন্টারফেসের বিভিন্ন পৃষ্ঠাগুলি দেখুন। আপনি এই পৃষ্ঠাগুলি ব্যবহার করে আপনার ওয়ার্কস্পেসের রিসোর্স পরিচালনা করতে পারবেন।
আপনার ওয়ার্কস্পেস Azure পোর্টাল ব্যবহার করে পরিচালনা করা যেতে পারে, তবে ডেটা বিজ্ঞানী এবং মেশিন লার্নিং অপারেশন ইঞ্জিনিয়ারদের জন্য, Azure Machine Learning স্টুডিও একটি আরও কেন্দ্রীভূত ব্যবহারকারীর ইন্টারফেস সরবরাহ করে।
২.২ কম্পিউট রিসোর্স
কম্পিউট রিসোর্স হলো ক্লাউড-ভিত্তিক রিসোর্স, যেখানে আপনি মডেল প্রশিক্ষণ এবং ডেটা অনুসন্ধানের প্রক্রিয়া চাল
- সংযুক্ত কম্পিউট: বিদ্যমান Azure কম্পিউট রিসোর্সের সাথে সংযোগ স্থাপন করে, যেমন Virtual Machines বা Azure Databricks ক্লাস্টার।
2.2.1 আপনার কম্পিউট রিসোর্সের জন্য সঠিক অপশন নির্বাচন করা
কম্পিউট রিসোর্স তৈরি করার সময় কিছু গুরুত্বপূর্ণ বিষয় বিবেচনা করতে হয় এবং এই সিদ্ধান্তগুলো গুরুত্বপূর্ণ হতে পারে।
আপনার কি CPU বা GPU দরকার?
CPU (Central Processing Unit) হলো ইলেকট্রনিক সার্কিট যা কম্পিউটার প্রোগ্রামের নির্দেশনা সম্পাদন করে। GPU (Graphics Processing Unit) হলো একটি বিশেষায়িত ইলেকট্রনিক সার্কিট যা গ্রাফিক্স-সম্পর্কিত কোড খুব দ্রুত সম্পাদন করতে পারে।
CPU এবং GPU স্থাপত্যের প্রধান পার্থক্য হলো CPU বিভিন্ন কাজ দ্রুত সম্পাদন করতে ডিজাইন করা হয়েছে (CPU ক্লক স্পিড দ্বারা পরিমাপ করা হয়), তবে এটি একসাথে চলমান কাজের সংখ্যা সীমিত। GPU সমান্তরাল কম্পিউটিংয়ের জন্য ডিজাইন করা হয়েছে এবং তাই এটি ডিপ লার্নিং কাজের জন্য অনেক ভালো।
CPU | GPU |
---|---|
কম ব্যয়বহুল | বেশি ব্যয়বহুল |
কম সমান্তরাল ক্ষমতা | বেশি সমান্তরাল ক্ষমতা |
ডিপ লার্নিং মডেল প্রশিক্ষণে ধীর | ডিপ লার্নিংয়ের জন্য উপযুক্ত |
ক্লাস্টার সাইজ
বড় ক্লাস্টার বেশি ব্যয়বহুল কিন্তু ভালো প্রতিক্রিয়াশীলতা প্রদান করে। তাই, যদি আপনার সময় থাকে কিন্তু পর্যাপ্ত অর্থ না থাকে, তাহলে ছোট ক্লাস্টার দিয়ে শুরু করুন। বিপরীতে, যদি আপনার অর্থ থাকে কিন্তু সময় কম থাকে, তাহলে বড় ক্লাস্টার দিয়ে শুরু করুন।
VM সাইজ
আপনার সময় এবং বাজেটের সীমাবদ্ধতার উপর নির্ভর করে, আপনি RAM, ডিস্ক, কোর সংখ্যা এবং ক্লক স্পিডের সাইজ পরিবর্তন করতে পারেন। এই সমস্ত প্যারামিটার বাড়ানো ব্যয়বহুল হবে, তবে এটি ভালো পারফরম্যান্স প্রদান করবে।
ডেডিকেটেড বা লো-প্রায়োরিটি ইনস্ট্যান্স?
লো-প্রায়োরিটি ইনস্ট্যান্স মানে এটি বাধাগ্রস্ত হতে পারে: মূলত, Microsoft Azure এই রিসোর্সগুলো অন্য কাজে ব্যবহার করতে পারে, ফলে একটি কাজ বাধাগ্রস্ত হতে পারে। একটি ডেডিকেটেড ইনস্ট্যান্স, বা বাধাগ্রস্ত না হওয়া, মানে কাজটি আপনার অনুমতি ছাড়া কখনো বন্ধ হবে না। এটি সময় বনাম অর্থের আরেকটি বিবেচনা, কারণ বাধাগ্রস্ত ইনস্ট্যান্স ডেডিকেটেড ইনস্ট্যান্সের তুলনায় কম ব্যয়বহুল।
2.2.2 একটি কম্পিউট ক্লাস্টার তৈরি করা
আমরা আগে তৈরি করা Azure ML workspace এ যান, কম্পিউট মেনুতে যান এবং আপনি বিভিন্ন কম্পিউট রিসোর্স দেখতে পাবেন (যেমন কম্পিউট ইনস্ট্যান্স, কম্পিউট ক্লাস্টার, ইনফারেন্স ক্লাস্টার এবং সংযুক্ত কম্পিউট)। এই প্রকল্পের জন্য, আমাদের মডেল প্রশিক্ষণের জন্য একটি কম্পিউট ক্লাস্টার দরকার। Studio-তে, "Compute" মেনুতে ক্লিক করুন, তারপর "Compute cluster" ট্যাবে ক্লিক করুন এবং "+ New" বোতামে ক্লিক করে একটি কম্পিউট ক্লাস্টার তৈরি করুন।
- আপনার অপশন নির্বাচন করুন: ডেডিকেটেড বনাম লো-প্রায়োরিটি, CPU বা GPU, VM সাইজ এবং কোর সংখ্যা (এই প্রকল্পের জন্য ডিফল্ট সেটিংস রাখতে পারেন)।
- "Next" বোতামে ক্লিক করুন।
- ক্লাস্টারকে একটি কম্পিউট নাম দিন।
- আপনার অপশন নির্বাচন করুন: ন্যূনতম/সর্বাধিক নোড সংখ্যা, স্কেল ডাউন করার আগে আইডল সেকেন্ড, SSH অ্যাক্সেস। মনে রাখবেন, যদি ন্যূনতম নোড সংখ্যা 0 হয়, তাহলে ক্লাস্টার আইডল থাকলে আপনি অর্থ সঞ্চয় করবেন। সর্বাধিক নোড সংখ্যা যত বেশি হবে, প্রশিক্ষণ তত দ্রুত হবে। সর্বাধিক নোড সংখ্যা 3 সুপারিশ করা হয়।
- "Create" বোতামে ক্লিক করুন। এই ধাপটি কয়েক মিনিট সময় নিতে পারে।
অসাধারণ! এখন আমাদের একটি কম্পিউট ক্লাস্টার আছে, আমরা Azure ML Studio-তে ডেটা লোড করতে পারি।
2.3 ডেটাসেট লোড করা
-
আমরা আগে তৈরি করা Azure ML workspace এ যান, বাম মেনুতে "Datasets" এ ক্লিক করুন এবং "+ Create dataset" বোতামে ক্লিক করে একটি ডেটাসেট তৈরি করুন। "From local files" অপশন নির্বাচন করুন এবং আগে ডাউনলোড করা Kaggle ডেটাসেটটি নির্বাচন করুন।
-
আপনার ডেটাসেটের একটি নাম, টাইপ এবং বিবরণ দিন। "Next" এ ক্লিক করুন। ফাইল থেকে ডেটা আপলোড করুন। "Next" এ ক্লিক করুন।
-
স্কিমায়, নিম্নলিখিত বৈশিষ্ট্যগুলির জন্য ডেটা টাইপ Boolean-এ পরিবর্তন করুন: anaemia, diabetes, high blood pressure, sex, smoking, এবং DEATH_EVENT। "Next" এ ক্লিক করুন এবং "Create" এ ক্লিক করুন।
দারুণ! এখন ডেটাসেট প্রস্তুত এবং কম্পিউট ক্লাস্টার তৈরি হয়েছে, আমরা মডেল প্রশিক্ষণ শুরু করতে পারি!
2.4 অটোএমএল দিয়ে লো কোড/নো কোড প্রশিক্ষণ
প্রথাগত মেশিন লার্নিং মডেল উন্নয়ন সময়সাপেক্ষ, উল্লেখযোগ্য ডোমেইন জ্ঞান এবং একাধিক মডেল তৈরি ও তুলনা করার জন্য সময় প্রয়োজন। অটোমেটেড মেশিন লার্নিং (AutoML) হলো মেশিন লার্নিং মডেল উন্নয়নের সময়সাপেক্ষ, পুনরাবৃত্তিমূলক কাজগুলোকে স্বয়ংক্রিয় করার প্রক্রিয়া। এটি ডেটা বিজ্ঞানী, বিশ্লেষক এবং ডেভেলপারদের উচ্চ স্কেল, দক্ষতা এবং উৎপাদনশীলতার সাথে মডেল তৈরি করতে সাহায্য করে, মডেলের গুণমান বজায় রেখে। এটি উৎপাদন-প্রস্তুত মডেল তৈরি করার সময় কমিয়ে দেয়, সহজে এবং দক্ষতার সাথে। আরও জানুন
-
আমরা আগে তৈরি করা Azure ML workspace এ যান, বাম মেনুতে "Automated ML" এ ক্লিক করুন এবং আপনি যে ডেটাসেটটি আপলোড করেছেন তা নির্বাচন করুন। "Next" এ ক্লিক করুন।
-
একটি নতুন এক্সপেরিমেন্ট নাম, টার্গেট কলাম (DEATH_EVENT) এবং আমরা তৈরি করা কম্পিউট ক্লাস্টারটি লিখুন। "Next" এ ক্লিক করুন।
-
"Classification" নির্বাচন করুন এবং "Finish" এ ক্লিক করুন। এই ধাপটি কম্পিউট ক্লাস্টারের সাইজের উপর নির্ভর করে ৩০ মিনিট থেকে ১ ঘণ্টা সময় নিতে পারে।
-
রান সম্পন্ন হলে, "Automated ML" ট্যাবে ক্লিক করুন, আপনার রান নির্বাচন করুন এবং "Best model summary" কার্ডে অ্যালগরিদমে ক্লিক করুন।
এখানে আপনি AutoML দ্বারা তৈরি করা সেরা মডেলের বিস্তারিত বিবরণ দেখতে পারেন। আপনি মডেল ট্যাবে অন্যান্য মডেলও অন্বেষণ করতে পারেন। কয়েক মিনিট সময় নিয়ে মডেলগুলোর ব্যাখ্যা (preview button) দেখুন। একবার আপনি যে মডেলটি ব্যবহার করতে চান তা নির্বাচন করলে (এখানে আমরা AutoML দ্বারা নির্বাচিত সেরা মডেলটি বেছে নেব), আমরা এটি কীভাবে ডিপ্লয় করতে পারি তা দেখব।
3. লো কোড/নো কোড মডেল ডিপ্লয়মেন্ট এবং এন্ডপয়েন্ট ব্যবহার
3.1 মডেল ডিপ্লয়মেন্ট
অটোমেটেড মেশিন লার্নিং ইন্টারফেস আপনাকে কয়েকটি ধাপে সেরা মডেলকে একটি ওয়েব সার্ভিস হিসেবে ডিপ্লয় করতে দেয়। ডিপ্লয়মেন্ট হলো মডেলকে একীভূত করা যাতে এটি নতুন ডেটার উপর ভিত্তি করে পূর্বাভাস দিতে পারে এবং সম্ভাব্য সুযোগের ক্ষেত্রগুলো চিহ্নিত করতে পারে। এই প্রকল্পের জন্য, ওয়েব সার্ভিসে ডিপ্লয়মেন্ট মানে মেডিকেল অ্যাপ্লিকেশনগুলো মডেলটি ব্যবহার করতে পারবে এবং তাদের রোগীদের হার্ট অ্যাটাকের ঝুঁকি লাইভ পূর্বাভাস দিতে পারবে।
সেরা মডেলের বিবরণে, "Deploy" বোতামে ক্লিক করুন।
- একটি নাম, বিবরণ, কম্পিউট টাইপ (Azure Container Instance), অথেনটিকেশন সক্রিয় করুন এবং "Deploy" এ ক্লিক করুন। এই ধাপটি সম্পন্ন হতে প্রায় ২০ মিনিট সময় নিতে পারে। ডিপ্লয়মেন্ট প্রক্রিয়ায় কয়েকটি ধাপ অন্তর্ভুক্ত থাকে, যেমন মডেল রেজিস্টার করা, রিসোর্স তৈরি করা এবং ওয়েব সার্ভিসের জন্য কনফিগার করা। ডিপ্লয় স্ট্যাটাসের অধীনে একটি স্ট্যাটাস বার্তা প্রদর্শিত হয়। স্ট্যাটাস পরীক্ষা করতে "Refresh" নির্বাচন করুন। স্ট্যাটাস "Healthy" হলে এটি ডিপ্লয় এবং চালু হয়েছে।
- একবার এটি ডিপ্লয় হয়ে গেলে, "Endpoint" ট্যাবে ক্লিক করুন এবং আপনি যে এন্ডপয়েন্টটি ডিপ্লয় করেছেন তা নির্বাচন করুন। এখানে আপনি এন্ডপয়েন্ট সম্পর্কে সমস্ত বিবরণ দেখতে পাবেন।
অসাধারণ! এখন আমাদের একটি মডেল ডিপ্লয় হয়েছে, আমরা এন্ডপয়েন্ট ব্যবহার শুরু করতে পারি।
3.2 এন্ডপয়েন্ট ব্যবহার
"Consume" ট্যাবে ক্লিক করুন। এখানে আপনি REST এন্ডপয়েন্ট এবং একটি পাইথন স্ক্রিপ্ট খুঁজে পাবেন। পাইথন কোডটি পড়ার জন্য কিছু সময় নিন।
এই স্ক্রিপ্টটি সরাসরি আপনার লোকাল মেশিন থেকে চালানো যেতে পারে এবং এটি আপনার এন্ডপয়েন্ট ব্যবহার করবে।
এই দুটি লাইনের কোড দেখুন:
url = 'http://98e3715f-xxxx-xxxx-xxxx-9ec22d57b796.centralus.azurecontainer.io/score'
api_key = '' # Replace this with the API key for the web service
url
ভেরিয়েবলটি "Consume" ট্যাবে পাওয়া REST এন্ডপয়েন্ট এবং api_key
ভেরিয়েবলটি প্রাইমারি কী যা "Consume" ট্যাবে পাওয়া যায় (শুধুমাত্র যদি আপনি অথেনটিকেশন সক্রিয় করেন)। এইভাবে স্ক্রিপ্টটি এন্ডপয়েন্ট ব্যবহার করতে পারে।
- স্ক্রিপ্ট চালানোর সময়, আপনি নিম্নলিখিত আউটপুট দেখতে পাবেন:
b'"{\\"result\\": [true]}"'
এর মানে হলো প্রদত্ত ডেটার জন্য হার্ট ফেইলিউরের পূর্বাভাস সত্য। এটি অর্থবহ কারণ স্ক্রিপ্টে স্বয়ংক্রিয়ভাবে তৈরি করা ডেটা আরও ঘনিষ্ঠভাবে দেখলে, সবকিছু ডিফল্টভাবে 0 এবং false থাকে। আপনি নিম্নলিখিত ইনপুট নমুনা দিয়ে ডেটা পরিবর্তন করতে পারেন:
data = {
"data":
[
{
'age': "0",
'anaemia': "false",
'creatinine_phosphokinase': "0",
'diabetes': "false",
'ejection_fraction': "0",
'high_blood_pressure': "false",
'platelets': "0",
'serum_creatinine': "0",
'serum_sodium': "0",
'sex': "false",
'smoking': "false",
'time': "0",
},
{
'age': "60",
'anaemia': "false",
'creatinine_phosphokinase': "500",
'diabetes': "false",
'ejection_fraction': "38",
'high_blood_pressure': "false",
'platelets': "260000",
'serum_creatinine': "1.40",
'serum_sodium': "137",
'sex': "false",
'smoking': "false",
'time': "130",
},
],
}
স্ক্রিপ্টটি ফেরত দেবে:
python b'"{\\"result\\": [true, false]}"'
অভিনন্দন! আপনি মডেলটি ডিপ্লয় করেছেন এবং Azure ML-এ এটি প্রশিক্ষণ দিয়েছেন!
NOTE: প্রকল্প শেষ হলে, সমস্ত রিসোর্স মুছে ফেলতে ভুলবেন না।
🚀 চ্যালেঞ্জ
AutoML দ্বারা তৈরি শীর্ষ মডেলগুলোর ব্যাখ্যা এবং বিস্তারিত ভালোভাবে দেখুন। সেরা মডেলটি কেন অন্যগুলোর চেয়ে ভালো তা বোঝার চেষ্টা করুন। কোন অ্যালগরিদমগুলো তুলনা করা হয়েছিল? তাদের মধ্যে পার্থক্য কী? এই ক্ষেত্রে সেরা মডেলটি কেন ভালো পারফর্ম করছে?
পোস্ট-লেকচার কুইজ
রিভিউ এবং স্ব-অধ্যয়ন
এই পাঠে, আপনি ক্লাউডে লো কোড/নো কোড পদ্ধতিতে হার্ট ফেইলিউর ঝুঁকি পূর্বাভাসের জন্য একটি মডেল প্রশিক্ষণ, ডিপ্লয় এবং ব্যবহার করতে শিখেছেন। যদি আপনি এখনও না করে থাকেন, AutoML দ্বারা তৈরি শীর্ষ মডেলগুলোর ব্যাখ্যা আরও গভীরভাবে দেখুন এবং সেরা মডেলটি কেন অন্যগুলোর চেয়ে ভালো তা বোঝার চেষ্টা করুন।
লো কোড/নো কোড AutoML সম্পর্কে আরও জানতে এই ডকুমেন্টেশন পড়ুন।
অ্যাসাইনমেন্ট
Azure ML-এ লো কোড/নো কোড ডেটা সায়েন্স প্রকল্প
অস্বীকৃতি:
এই নথিটি AI অনুবাদ পরিষেবা Co-op Translator ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসম্ভব সঠিক অনুবাদের চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। নথিটির মূল ভাষায় রচিত সংস্করণটিকেই প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে সৃষ্ট কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যার জন্য আমরা দায়ী নই।