আমাজন সেজমেকার এর একটি স্যুট প্রদান করে অন্তর্নির্মিত অ্যালগরিদম, প্রাক-প্রশিক্ষিত মডেল, এবং প্রাক-নির্মিত সমাধান টেমপ্লেট ডেটা সায়েন্টিস্ট এবং মেশিন লার্নিং (ML) অনুশীলনকারীদের প্রশিক্ষণ এবং এমএল মডেলগুলি দ্রুত স্থাপন করা শুরু করতে সহায়তা করার জন্য। এই অ্যালগরিদম এবং মডেলগুলি তত্ত্বাবধানে এবং তত্ত্বাবধানহীন উভয় শিক্ষার জন্য ব্যবহার করা যেতে পারে। তারা ট্যাবুলার, চিত্র এবং পাঠ্য সহ বিভিন্ন ধরণের ইনপুট ডেটা প্রক্রিয়া করতে পারে।
গ্রাহক মন্থন হল টেলিকমিউনিকেশন থেকে শুরু করে ব্যাঙ্কিং পর্যন্ত বিভিন্ন কোম্পানির মুখোমুখি হওয়া একটি সমস্যা, যেখানে গ্রাহকরা সাধারণত প্রতিযোগীদের কাছে হারিয়ে যায়। নতুন গ্রাহক অর্জনের পরিবর্তে বিদ্যমান গ্রাহকদের ধরে রাখা একটি কোম্পানির সর্বোত্তম স্বার্থে কারণ এটি সাধারণত নতুন গ্রাহকদের আকর্ষণ করতে উল্লেখযোগ্যভাবে বেশি খরচ করে। মোবাইল অপারেটরদের ঐতিহাসিক রেকর্ড রয়েছে যেখানে গ্রাহকরা পরিষেবাটি ব্যবহার চালিয়ে গেছেন বা শেষ পর্যন্ত মন্থন করেছেন। আমরা একটি এমএল মডেলকে প্রশিক্ষণ দিতে একটি মোবাইল অপারেটরের মন্থনের এই ঐতিহাসিক তথ্য ব্যবহার করতে পারি। এই মডেলটি প্রশিক্ষণের পরে, আমরা একটি নির্বিচারে গ্রাহকের প্রোফাইল তথ্য (একই প্রোফাইল তথ্য যা আমরা মডেলটিকে প্রশিক্ষণ দিয়েছিলাম) মডেলের কাছে প্রেরণ করতে পারি এবং এটি ভবিষ্যদ্বাণী করতে পারি যে এই গ্রাহক মন্থন করতে যাচ্ছেন কিনা।
এই পোস্টে, আমরা প্রশিক্ষণ এবং স্থাপন চারটি সম্প্রতি প্রকাশিত সেজমেকার অ্যালগরিদম—LightGBM, CatBoost, TabTransformer, এবং AutoGluon-Tabular—একটি মন্থন পূর্বাভাস ডেটাসেটে। আমরা ব্যাবহার করি সেজমেকার স্বয়ংক্রিয় মডেল টিউনিং (হাইপারপ্যারামিটার অপ্টিমাইজেশানের জন্য একটি টুল) প্রতিটি মডেলের জন্য সেরা হাইপারপ্যারামিটারগুলি খুঁজে পেতে এবং সর্বোত্তমটি নির্বাচন করতে একটি হোল্ডআউট টেস্ট ডেটাসেটে তাদের কর্মক্ষমতা তুলনা করুন।
আপনি এই সমাধানটিকে একটি টেমপ্লেট হিসাবে ব্যবহার করতে পারেন অত্যাধুনিক ট্যাবুলার অ্যালগরিদমের সংগ্রহ অনুসন্ধান করতে এবং সর্বোত্তম সামগ্রিক মডেল খুঁজে পেতে হাইপারপ্যারামিটার অপ্টিমাইজেশান ব্যবহার করতে পারেন। আপনার আগ্রহের বাস্তব ব্যবসায়িক সমস্যা সমাধানের জন্য আপনি সহজেই উদাহরণ ডেটাসেটটিকে নিজের সাথে প্রতিস্থাপন করতে পারেন। আপনি যদি সরাসরি সেজমেকার SDK কোডে যেতে চান যা আমরা এই পোস্টে দিয়েছি, আপনি নিম্নলিখিতগুলি উল্লেখ করতে পারেন নমুনা জুপিটার নোটবুক.
সেজমেকার বিল্ট-ইন অ্যালগরিদমের সুবিধা
আপনার নির্দিষ্ট ধরণের সমস্যা এবং ডেটার জন্য একটি অ্যালগরিদম নির্বাচন করার সময়, একটি SageMaker বিল্ট-ইন অ্যালগরিদম ব্যবহার করা সবচেয়ে সহজ বিকল্প, কারণ এটি করার ফলে নিম্নলিখিত প্রধান সুবিধাগুলি আসে:
- কম কোডিং - বিল্ট-ইন অ্যালগরিদম পরীক্ষা চালানো শুরু করার জন্য সামান্য কোডিং প্রয়োজন। শুধুমাত্র ইনপুটগুলি আপনাকে সরবরাহ করতে হবে তা হল ডেটা, হাইপারপ্যারামিটার এবং গণনা সংস্থান। এটি আপনাকে ট্র্যাকিং ফলাফল এবং কোড পরিবর্তনের জন্য কম ওভারহেড সহ আরও দ্রুত পরীক্ষা চালানোর অনুমতি দেয়।
- দক্ষ এবং মাপযোগ্য অ্যালগরিদম বাস্তবায়ন - অন্তর্নির্মিত অ্যালগরিদমগুলি সমস্ত প্রযোজ্য অ্যালগরিদমের জন্য বাক্সের বাইরে একাধিক গণনা দৃষ্টান্ত এবং GPU সমর্থন জুড়ে সমান্তরালকরণের সাথে আসে। যদি আপনার কাছে প্রচুর ডেটা থাকে যার সাহায্যে আপনার মডেলকে প্রশিক্ষণ দেওয়া যায়, তবে বেশিরভাগ অন্তর্নির্মিত অ্যালগরিদম চাহিদা মেটাতে সহজেই স্কেল করতে পারে। এমনকি যদি আপনার ইতিমধ্যেই একটি প্রাক-প্রশিক্ষিত মডেল থাকে, তবুও SageMaker-এ এর ফলাফল ব্যবহার করা সহজ হতে পারে এবং এটিকে পোর্ট করার পরিবর্তে আপনি ইতিমধ্যেই জানেন হাইপারপ্যারামিটারগুলি ইনপুট করুন এবং নিজে একটি প্রশিক্ষণ স্ক্রিপ্ট লিখুন৷
- স্বচ্ছতা - আপনি ফলাফল মডেল শিল্পকর্মের মালিক. আপনি সেই মডেলটি নিতে পারেন এবং বিভিন্ন অনুমান প্যাটার্নের জন্য সেজমেকারে এটি স্থাপন করতে পারেন (সমস্ত পরীক্ষা করে দেখুন উপলব্ধ স্থাপনার ধরন) এবং সহজ এন্ডপয়েন্ট স্কেলিং এবং পরিচালনা, অথবা আপনি যেখানে প্রয়োজন সেখানে এটি স্থাপন করতে পারেন।
ডেটা ভিজ্যুয়ালাইজেশন এবং প্রিপ্রসেসিং
প্রথমত, আমরা আমাদের গ্রাহক মন্থন ডেটাসেট সংগ্রহ করি। এটি 5,000 রেকর্ড সহ একটি অপেক্ষাকৃত ছোট ডেটাসেট, যেখানে প্রতিটি রেকর্ড একটি অজানা মার্কিন মোবাইল অপারেটরের গ্রাহকের প্রোফাইল বর্ণনা করতে 21টি বৈশিষ্ট্য ব্যবহার করে। বৈশিষ্ট্যগুলি হল মার্কিন যুক্তরাষ্ট্রের রাজ্য যেখানে গ্রাহক বসবাস করেন, গ্রাহক পরিষেবাতে তারা যে কল করেছেন তার সংখ্যা, দিনের কলের জন্য তাদের বিল করা খরচ পর্যন্ত। আমরা ভবিষ্যদ্বাণী করার চেষ্টা করছি গ্রাহক মন্থন করবে কি না, যা একটি বাইনারি শ্রেণিবিন্যাস সমস্যা। নিচের সেই বৈশিষ্ট্যগুলির একটি উপসেট দেখতে শেষ কলাম হিসাবে লেবেল সহ।
নিম্নলিখিত প্রতিটি কলামের জন্য কিছু অন্তর্দৃষ্টি, বিশেষ করে সারাংশ পরিসংখ্যান এবং নির্বাচিত বৈশিষ্ট্যগুলির হিস্টোগ্রাম।
তারপরে আমরা ডেটা প্রিপ্রসেস করি, এটিকে প্রশিক্ষণ, বৈধতা এবং পরীক্ষার সেটগুলিতে বিভক্ত করি এবং এতে ডেটা আপলোড করি আমাজন সিম্পল স্টোরেজ সার্ভিস (Amazon S3)।
ট্যাবুলার অ্যালগরিদমের স্বয়ংক্রিয় মডেল টিউনিং
হাইপারপ্যারামিটারগুলি নিয়ন্ত্রণ করে যে আমাদের অন্তর্নিহিত অ্যালগরিদমগুলি কীভাবে কাজ করে এবং মডেলের কার্যকারিতাকে প্রভাবিত করে৷ এই হাইপারপ্যারামিটারগুলি হতে পারে স্তরের সংখ্যা, শেখার হার, ওজন ক্ষয় হার, এবং নিউরাল নেটওয়ার্ক-ভিত্তিক মডেলগুলির জন্য ড্রপআউট, বা গাছের মিলিত মডেলগুলির জন্য পাতার সংখ্যা, পুনরাবৃত্তি এবং সর্বাধিক গাছের গভীরতা। সেরা মডেল নির্বাচন করতে, আমরা চারটি প্রশিক্ষিত সেজমেকার ট্যাবুলার অ্যালগরিদমের প্রতিটিতে সেজমেকার স্বয়ংক্রিয় মডেল টিউনিং প্রয়োগ করি। টিউন করার জন্য আপনাকে শুধুমাত্র হাইপারপ্যারামিটার নির্বাচন করতে হবে এবং প্রতিটি প্যারামিটার এক্সপ্লোর করার জন্য একটি পরিসীমা নির্বাচন করতে হবে। স্বয়ংক্রিয় মডেল টিউনিং সম্পর্কে আরও তথ্যের জন্য, পড়ুন Amazon SageMaker স্বয়ংক্রিয় মডেল টিউনিং: মেশিন লার্নিং এর জন্য মেশিন লার্নিং ব্যবহার করা or Amazon SageMaker স্বয়ংক্রিয় মডেল টিউনিং: স্কেলেবল গ্রেডিয়েন্ট-মুক্ত অপ্টিমাইজেশান.
চলুন দেখা যাক কিভাবে এটি অনুশীলনে কাজ করে।
লাইটজিবিএম
আমরা LightGBM এর সাথে স্বয়ংক্রিয় মডেল টিউনিং চালানোর মাধ্যমে শুরু করি এবং সেই প্রক্রিয়াটিকে অন্যান্য অ্যালগরিদমের সাথে খাপ খাইয়ে নিই। যেমন পোস্টে ব্যাখ্যা করা হয়েছে Amazon SageMaker JumpStart মডেল এবং অ্যালগরিদম এখন API এর মাধ্যমে উপলব্ধ, SageMaker SDK-এর মাধ্যমে একটি পূর্ব-নির্মিত অ্যালগরিদম প্রশিক্ষণের জন্য নিম্নলিখিত নিদর্শনগুলির প্রয়োজন:
- এর ফ্রেমওয়ার্ক-নির্দিষ্ট ধারক চিত্র, প্রশিক্ষণ এবং অনুমানের জন্য প্রয়োজনীয় সমস্ত নির্ভরতা ধারণ করে
- নির্বাচিত মডেল বা অ্যালগরিদমের জন্য প্রশিক্ষণ এবং অনুমান স্ক্রিপ্ট
আমরা প্রথমে এই নিদর্শনগুলি পুনরুদ্ধার করি, যা নির্ভর করে model_id
(lightgbm-classification-model
এই ক্ষেত্রে) এবং সংস্করণ:
তারপরে আমরা লাইটজিবিএম-এর জন্য ডিফল্ট হাইপারপ্যারামিটারগুলি পাই, সেগুলির মধ্যে কয়েকটিকে নির্বাচিত নির্দিষ্ট মানগুলিতে সেট করি যেমন বুস্টিং রাউন্ডের সংখ্যা এবং যাচাইকরণ ডেটাতে মূল্যায়ন মেট্রিক, এবং আমরা অন্যদের জন্য অনুসন্ধান করতে চাই এমন মান পরিসীমা সংজ্ঞায়িত করি। আমরা SageMaker পরামিতি ব্যবহার করি ContinuousParameter
এবং IntegerParameter
এই জন্য:
অবশেষে, আমরা একটি তৈরি করি সেজমেকার এস্টিমেটর, এটি একটি মধ্যে খাওয়ান হাইপাররামিটার টিউনার, এবং এর সাথে হাইপারপ্যারামিটার টিউনিং কাজ শুরু করুন tuner.fit()
:
সার্জারির max_jobs
প্যারামিটার স্বয়ংক্রিয় মডেল টিউনিং কাজে মোট কতগুলি কাজ চালানো হবে তা নির্ধারণ করে এবং max_parallel_jobs
কতগুলি সমসাময়িক প্রশিক্ষণের কাজ শুরু করা উচিত তা নির্ধারণ করে। আমরা উদ্দেশ্য সংজ্ঞায়িত “Maximize”
মডেলের AUC (বক্ররেখার নিচে এলাকা)। দ্বারা উদ্ভাসিত উপলব্ধ পরামিতিগুলির মধ্যে গভীরভাবে ডুব দিতে HyperParameterTuner
, নির্দেশ করে হাইপারপ্যারামিটার টিউনার.
চেক আউট নমুনা নোটবুক আমরা পরীক্ষা সেটে এই মডেলটি কীভাবে স্থাপন এবং মূল্যায়ন করতে এগিয়ে যাই তা দেখতে।
ক্যাটবুস্ট
ক্যাটবুস্ট অ্যালগরিদমে হাইপারপ্যারামিটার টিউনিংয়ের প্রক্রিয়াটি আগের মতোই, যদিও আমাদের আইডির অধীনে মডেল আর্টিফ্যাক্টগুলি পুনরুদ্ধার করতে হবে catboost-classification-model
এবং হাইপারপ্যারামিটারের পরিসীমা নির্বাচন পরিবর্তন করুন:
ট্যাব ট্রান্সফরমার
ট্যাবট্রান্সফরমার মডেলে হাইপারপ্যারামিটার টিউনিংয়ের প্রক্রিয়াটি আগের মতোই, যদিও আমাদের আইডির অধীনে মডেলের আর্টিফ্যাক্টগুলি পুনরুদ্ধার করতে হবে pytorch-tabtransformerclassification-model
এবং হাইপারপ্যারামিটারের পরিসর নির্বাচন পরিবর্তন করুন।
আমরা প্রশিক্ষণও পরিবর্তন করি instance_type
থেকে ml.p3.2xlarge
. TabTransformer হল সম্প্রতি Amazon গবেষণা থেকে প্রাপ্ত একটি মডেল, যা ট্রান্সফরমার মডেল ব্যবহার করে ট্যাবুলার ডেটাতে গভীর শিক্ষার শক্তি নিয়ে আসে। এই মডেলটিকে দক্ষভাবে প্রশিক্ষণ দিতে, আমাদের একটি GPU-ব্যাকড উদাহরণ প্রয়োজন৷ আরো তথ্যের জন্য, পড়ুন টেবিলে ডেটাতে গভীর শিক্ষার শক্তি নিয়ে আসা.
অটোগ্লুওন-টেবুলার
AutoGluon এর ক্ষেত্রে, আমরা হাইপারপ্যারামিটার টিউনিং চালাই না। এটি ডিজাইনের মাধ্যমে, কারণ অটোগ্লুওন হাইপারপ্যারামিটারের বুদ্ধিমান পছন্দের সাথে একাধিক মডেলকে একত্রিত করা এবং একাধিক স্তরে স্ট্যাক করার উপর ফোকাস করে। এটি হাইপারপ্যারামিটারের নিখুঁত নির্বাচনের সাথে একটি মডেলকে প্রশিক্ষণের চেয়ে বেশি পারফরম্যান্স করে এবং গণনাগতভাবে সস্তাও। বিস্তারিত জানার জন্য, চেক আউট অটোগ্লুওন-টেবুলার: স্ট্রাকচার্ড ডেটার জন্য শক্তিশালী এবং সঠিক অটোএমএল.
অতএব, আমরা সুইচ model_id
থেকে autogluon-classification-ensemble
, এবং শুধুমাত্র আমাদের পছন্দসই AUC স্কোরে মূল্যায়ন মেট্রিক হাইপারপ্যারামিটার ঠিক করুন:
ডাকার বদলে tuner.fit()
, আমরা কল estimator.fit()
একটি একক প্রশিক্ষণ কাজ শুরু করতে।
প্রশিক্ষিত মডেলের মানদণ্ড
আমরা চারটি মডেল স্থাপন করার পরে, আমরা ভবিষ্যদ্বাণীর জন্য প্রতিটি শেষ পয়েন্টে সম্পূর্ণ পরীক্ষার সেট পাঠাই এবং প্রতিটির জন্য নির্ভুলতা, F1 এবং AUC মেট্রিক্স গণনা করি (এ কোড দেখুন নমুনা নোটবুক) আমরা একটি গুরুত্বপূর্ণ দাবিত্যাগ সহ নিম্নলিখিত সারণীতে ফলাফলগুলি উপস্থাপন করি: ফলাফল এবং এই মডেলগুলির মধ্যে আপেক্ষিক কর্মক্ষমতা নির্ভর করবে আপনি প্রশিক্ষণের জন্য যে ডেটাসেট ব্যবহার করেন তার উপর। এই ফলাফলগুলি প্রতিনিধিত্বমূলক, এবং যদিও নির্দিষ্ট অ্যালগরিদমের প্রবণতা আরও ভাল করার প্রবণতা প্রাসঙ্গিক কারণগুলির উপর ভিত্তি করে (উদাহরণস্বরূপ, অটোগ্লুওন পর্দার পিছনে LightGBM এবং CatBoost উভয় মডেলের ভবিষ্যদ্বাণীগুলিকে বুদ্ধিমানের সাথে একত্রিত করে), পারফরম্যান্সের ভারসাম্য ভিন্ন হতে পারে। তথ্য বিতরণ।
. | স্বয়ংক্রিয় মডেল টিউনিং সহ LightGBM | স্বয়ংক্রিয় মডেল টিউনিং সহ CatBoost | স্বয়ংক্রিয় মডেল টিউনিং সহ ট্যাবট্রান্সফরমার | অটোগ্লুওন-টেবুলার |
সঠিকতা | 0.8977 | 0.9622 | 0.9511 | 0.98 |
F1 | 0.8986 | 0.9624 | 0.9517 | 0.98 |
AUC | 0.9629 | 0.9907 | 0.989 | 0.9979 |
উপসংহার
এই পোস্টে, আমরা কম কোডিং প্রচেষ্টার সাথে গ্রাহক মন্থন পূর্বাভাস সমস্যা সমাধানের জন্য চারটি ভিন্ন সেজমেকার বিল্ট-ইন অ্যালগরিদম প্রশিক্ষণ দিয়েছি। আমরা SageMaker স্বয়ংক্রিয় মডেল টিউনিং ব্যবহার করে এই অ্যালগরিদমগুলিকে প্রশিক্ষণ দেওয়ার জন্য সেরা হাইপারপ্যারামিটারগুলি খুঁজে বের করেছি এবং একটি নির্বাচিত মন্থন ভবিষ্যদ্বাণী ডেটাসেটে তাদের কর্মক্ষমতা তুলনা করেছি৷ আপনি সম্পর্কিত ব্যবহার করতে পারেন নমুনা নোটবুক একটি টেমপ্লেট হিসাবে, আপনার পছন্দসই ট্যাবুলার ডেটা-ভিত্তিক সমস্যা সমাধানের জন্য আপনার নিজের সাথে ডেটাসেট প্রতিস্থাপন করুন।
SageMaker-এ এই অ্যালগরিদমগুলি ব্যবহার করে দেখতে ভুলবেন না, এবং উপলব্ধ অন্যান্য অন্তর্নির্মিত অ্যালগরিদমগুলি কীভাবে ব্যবহার করবেন তার নমুনা নোটবুকগুলি দেখুন GitHub.
লেখক সম্পর্কে
ডঃ জিন হুয়াং Amazon SageMaker JumpStart এবং Amazon SageMaker বিল্ট-ইন অ্যালগরিদমের জন্য একজন ফলিত বিজ্ঞানী। তিনি স্কেলেবল মেশিন লার্নিং অ্যালগরিদম বিকাশের দিকে মনোনিবেশ করেন। তার গবেষণার আগ্রহগুলি প্রাকৃতিক ভাষা প্রক্রিয়াকরণ, ট্যাবুলার ডেটার উপর ব্যাখ্যাযোগ্য গভীর শিক্ষা এবং নন-প্যারামেট্রিক স্পেস-টাইম ক্লাস্টারিংয়ের শক্তিশালী বিশ্লেষণের ক্ষেত্রে। তিনি ACL, ICDM, KDD কনফারেন্স এবং রয়্যাল স্ট্যাটিস্টিক্যাল সোসাইটি: সিরিজ এ জার্নালে অনেক গবেষণাপত্র প্রকাশ করেছেন।
জোয়াও মৌরা অ্যামাজন ওয়েব সার্ভিসেসের একজন এআই/এমএল বিশেষজ্ঞ সলিউশন আর্কিটেক্ট। তিনি বেশিরভাগই এনএলপি ব্যবহারের ক্ষেত্রে এবং গ্রাহকদের ডিপ লার্নিং মডেল প্রশিক্ষণ এবং স্থাপনার অপ্টিমাইজে সহায়তা করার উপর দৃষ্টি নিবদ্ধ করেন। তিনি লো-কোড এমএল সমাধান এবং এমএল-বিশেষ হার্ডওয়্যারের সক্রিয় প্রবক্তা।
- AI
- ai শিল্প
- এআই আর্ট জেনারেটর
- আইআই রোবট
- আমাজন সেজমেকার
- কৃত্রিম বুদ্ধিমত্তা
- কৃত্রিম বুদ্ধিমত্তা সার্টিফিকেশন
- ব্যাংকিং এ কৃত্রিম বুদ্ধিমত্তা
- কৃত্রিম বুদ্ধিমত্তার রোবট
- কৃত্রিম বুদ্ধিমত্তার রোবট
- কৃত্রিম বুদ্ধিমত্তা সফ্টওয়্যার
- এডাব্লুএস মেশিন লার্নিং
- blockchain
- ব্লকচেইন সম্মেলন এআই
- coingenius
- কথোপকথন কৃত্রিম বুদ্ধিমত্তা
- ক্রিপ্টো সম্মেলন এআই
- ডাল-ই
- গভীর জ্ঞানার্জন
- গুগল আই
- মেশিন লার্নিং
- Plato
- প্লেটো এআই
- প্লেটো ডেটা ইন্টেলিজেন্স
- প্লেটো গেম
- প্লেটোডাটা
- প্লেটোগেমিং
- স্কেল ai
- বাক্য গঠন
- zephyrnet