Vertex AI দিয়ে একটি AutoML পূর্বাভাস মডেল তৈরি করুন

১. সংক্ষিপ্ত বিবরণ

এই ল্যাবে, আপনি যা করবেন:

  • একটি পরিচালিত ডেটাসেট তৈরি করুন
  • গুগল ক্লাউড স্টোরেজ বাকেট থেকে ডেটা ইম্পোর্ট করুন
  • AutoML-এর সাথে যথাযথ ব্যবহারের জন্য কলামের মেটাডেটা আপডেট করুন।
  • বাজেট এবং অপ্টিমাইজেশন উদ্দেশ্যের মতো বিকল্প ব্যবহার করে একটি মডেলকে প্রশিক্ষণ দিন।
  • অনলাইনে ব্যাচ পূর্বাভাস তৈরি করুন

২. ডেটা পর্যালোচনা করুন

এই ল্যাবে BigQuery Public Datasets-এর Iowa Liquor Sales ডেটাসেট থেকে ডেটা ব্যবহার করা হয়েছে। এই ডেটাসেটটিতে ২০১২ সাল থেকে মার্কিন যুক্তরাষ্ট্রের আইওয়া রাজ্যে পাইকারি মদ ক্রয়ের তথ্য রয়েছে।

‘ভিউ ডেটাসেট’ নির্বাচন করে আপনি মূল কাঁচা ডেটা দেখতে পারেন। টেবিলটি অ্যাক্সেস করতে, বাম দিকের নেভিগেশন বারে bigquery-public-datasets প্রজেক্টে, তারপর iowa_liquor_sales ডেটাসেটে এবং তারপর sales টেবিলে যান। ডেটাসেট থেকে নির্বাচিত কিছু সারি দেখতে আপনি ‘প্রিভিউ’ নির্বাচন করতে পারেন।

f07c88368e7445c6.png

এই ল্যাবের প্রয়োজনে, আমরা ক্রয়গুলোকে দিন অনুযায়ী ভাগ করার জন্য ইতিমধ্যেই কিছু প্রাথমিক ডেটা প্রি-প্রসেসিং করে ফেলেছি। আমরা BigQuery টেবিল থেকে একটি CSV এক্সট্র্যাক্ট ব্যবহার করব। CSV ফাইলটির কলামগুলো হলো:

  • ds : তারিখ
  • y : সেই দিনের সমস্ত ক্রয়ের মোট পরিমাণ (ডলারে)
  • ছুটি : তারিখটি মার্কিন যুক্তরাষ্ট্রের ছুটি কিনা, তা নির্দেশকারী একটি বুলিয়ান।
  • id : একটি টাইম-সিরিজ শনাক্তকারী (একাধিক টাইম-সিরিজ সমর্থন করার জন্য, যেমন স্টোর বা পণ্য অনুসারে)। এই ক্ষেত্রে, আমরা কেবল একটি টাইম-সিরিজে সামগ্রিক ক্রয়ের পূর্বাভাস দেব, তাই প্রতিটি সারির জন্য id-এর মান 0 নির্ধারণ করা হয়েছে।

৩. ডেটা আমদানি করুন

ধাপ ১: Vertex AI ডেটাসেটগুলিতে যান

ক্লাউড কনসোলের বাম দিকের নেভিগেশন বার থেকে Vertex AI মেনুতে ডেটাসেটগুলি অ্যাক্সেস করুন।

d8f26bfce50bfdb5.png

ধাপ ২: ডেটাসেট তৈরি করুন

একটি নতুন ডেটাসেট তৈরি করুন, এর জন্য ‘ট্যাবুলার ডেটা’ এবং তারপর ‘ফোরকাস্টিং’ সমস্যার ধরণ নির্বাচন করুন। ‘iowa_daily’ নামটি অথবা আপনার পছন্দের অন্য কোনো নাম বেছে নিন।

4efeaebfd7845b9c.png

ধাপ ৩: ডেটা আমদানি করুন

পরবর্তী ধাপ হলো ডেটাসেটে ডেটা ইম্পোর্ট করা। ‘Select a CSV from Cloud Storage’ অপশনটি বেছে নিন। এরপর, AutoML Demo Alpha বাকেটে থাকা CSV ফাইলটিতে যান এবং automl-demo-240614-lcm/iowa_liquor/iowa_daily.csv ফাইলটি পেস্ট করুন।

৪. ট্রেন মডেল

ধাপ ১: মডেলের বৈশিষ্ট্যগুলি কনফিগার করুন

কয়েক মিনিট পর, AutoML আপনাকে জানিয়ে দেবে যে ইম্পোর্ট সম্পন্ন হয়েছে। সেই মুহূর্তে, আপনি মডেলের ফিচারগুলো কনফিগার করতে পারবেন।

  • টাইম সিরিজ আইডেন্টিফায়ার কলাম হিসেবে 'id' নির্বাচন করুন। আমাদের ডেটাসেটে কেবল একটিই টাইম-সিরিজ আছে, তাই এটি একটি আনুষ্ঠানিকতা মাত্র।
  • Time কলামটিকে ds হিসেবে নির্বাচন করুন।

এরপর, 'Generate Statistics' নির্বাচন করুন। প্রক্রিয়াটি সম্পন্ন হলে, আপনি ' Missing %' এবং 'Distinct values' পরিসংখ্যান দেখতে পাবেন। এই প্রক্রিয়াটিতে কয়েক মিনিট সময় লাগতে পারে, তাই আপনি চাইলে পরবর্তী ধাপে যেতে পারেন।

ধাপ ২: মডেলটিকে প্রশিক্ষণ দিন

প্রশিক্ষণ প্রক্রিয়া শুরু করতে 'Train the Model' নির্বাচন করুন। নিশ্চিত করুন যে 'AutoML' নির্বাচিত আছে, এবং ' Continue ' নির্বাচন করুন।

5028ec6f242dfa6a.png

ধাপ ৩: মডেলটি নির্ধারণ করুন

  • টার্গেট কলাম হিসেবে y নির্বাচন করুন। এটাই সেই মান যা আমরা অনুমান করছি।
  • যদি আগে থেকে সেট করা না থাকে, তাহলে Series identifier কলামটিকে id এবং Timestamp কলামটিকে ds- এ সেট করুন।
  • ডেটা গ্র্যানুলারিটি ' দিন' (Days) এবং পূর্বাভাস দিগন্ত ' ৭' (7) এ সেট করুন। এই ফিল্ডটি নির্দিষ্ট করে যে মডেলটি ভবিষ্যতে কতগুলি সময়কাল পর্যন্ত পূর্বাভাস দিতে পারবে।
  • কনটেক্সট উইন্ডোটি দিনে সেট করুন। মডেলটি পূর্বাভাস দেওয়ার জন্য বিগত ৩০ দিনের ডেটা ব্যবহার করবে। এর চেয়ে ছোট এবং বড় উইন্ডোর মধ্যে কিছু সুবিধা-অসুবিধা রয়েছে, এবং সাধারণত পূর্বাভাস মেয়াদের ১-১০ গুণ পর্যন্ত একটি মান নির্বাচন করার পরামর্শ দেওয়া হয়।
  • BigQuery-তে টেস্ট ডেটাসেট এক্সপোর্ট করতে বক্সটি চেক করুন। আপনি এটি খালিও রাখতে পারেন, এবং এটি স্বয়ংক্রিয়ভাবে আপনার প্রোজেক্টে একটি ডেটাসেট ও টেবিল তৈরি করবে (অথবা আপনার পছন্দের কোনো স্থান নির্দিষ্ট করে দিতে পারেন)।
  • চালিয়ে যান নির্বাচন করুন।

8d2f34779ba49bb1.png

ধাপ ৪: প্রশিক্ষণের বিকল্পগুলি নির্ধারণ করুন

এই ধাপে, আপনি মডেলটিকে কীভাবে প্রশিক্ষণ দিতে চান সে সম্পর্কে আরও বিশদ বিবরণ নির্দিষ্ট করতে পারেন।

  • ছুটির কলামটিকে ‘পূর্বাভাসে উপলব্ধ’ ( Available at prediction) হিসেবে সেট করুন, কারণ কোনো নির্দিষ্ট তারিখ ছুটির দিন কি না, তা আমরা আগে থেকেই জানতে পারি।
  • অপ্টিমাইজেশন অবজেক্টিভ পরিবর্তন করে MAE করুন। MAE বা মিন অ্যাভারেজ এরর, মিন স্কোয়ার্ড এররের তুলনায় আউটলায়ারের ক্ষেত্রে বেশি সহনশীল। যেহেতু আমরা দৈনিক ক্রয়ের ডেটা নিয়ে কাজ করছি যাতে ব্যাপক ওঠানামা থাকতে পারে, তাই MAE ব্যবহার করা একটি উপযুক্ত মেট্রিক।
  • চালিয়ে যান নির্বাচন করুন।

9557c92be32a1987.png

ধাপ ৫: প্রশিক্ষণ শুরু করুন

আপনার পছন্দমতো একটি বাজেট নির্ধারণ করুন। এক্ষেত্রে, মডেলটি প্রশিক্ষণের জন্য ১ নোড আওয়ারই যথেষ্ট। তারপর, প্রশিক্ষণ প্রক্রিয়াটি শুরু করুন।

ধাপ ৬: মডেল মূল্যায়ন করুন

প্রশিক্ষণ প্রক্রিয়াটি সম্পূর্ণ হতে ১-২ ঘণ্টা সময় লাগতে পারে (অতিরিক্ত সেটআপের সময় সহ)। প্রশিক্ষণ সম্পন্ন হলে আপনি একটি ইমেল পাবেন। প্রস্তুত হয়ে গেলে, আপনি আপনার তৈরি করা মডেলটির নির্ভুলতা দেখতে পারবেন।

৫. ভবিষ্যদ্বাণী করুন

ধাপ ১: টেস্ট ডেটার উপর করা পূর্বাভাস পর্যালোচনা করুন

টেস্ট ডেটার প্রেডিকশনগুলো দেখতে BigQuery কনসোলে যান। আপনার প্রোজেক্টের ভেতরে, `export_evaluated_data_items + <model name> + <timestamp> ` নামকরণের স্কিমে স্বয়ংক্রিয়ভাবে একটি নতুন ডেটাসেট তৈরি হয়। সেই ডেটাসেটের ভেতরে, প্রেডিকশনগুলো পর্যালোচনা করার জন্য আপনি ` evaluated_data_items` টেবিলটি খুঁজে পাবেন।

এই টেবিলে দুটি নতুন কলাম যোগ করা হয়েছে:

  • predicted_on_[তারিখ কলাম]: যে তারিখে পূর্বাভাসটি করা হয়েছিল। উদাহরণস্বরূপ, যদি predicted_on_ds হয় 11/4 এবং ds হয় 11/8, তাহলে আমরা ৪ দিন পরের পূর্বাভাস দিচ্ছি।
  • predicted_[target column].tables.value: পূর্বাভাসিত মান

9800c7c67d93db03.png

ধাপ ২: ব্যাচ পূর্বাভাস সম্পাদন করুন

অবশেষে, আপনি পূর্বাভাস দেওয়ার জন্য আপনার মডেলটি ব্যবহার করতে চাইবেন।

ইনপুট ফাইলে ভবিষ্যদ্বাণী করার তারিখগুলির জন্য খালি মান এবং ঐতিহাসিক ডেটা রয়েছে:

ডিএস

ছুটি

আইডি

y

৫/১৫/২০

১৭৫১৩১৫.৪৩

৫/১৬/২০

৫/১৭/২০

৫/১৮/২০

১৬১২০৬৬.৪৩

৫/১৯/২০

১৭৭৩৮৮৫.১৭

5/20/20

১৪৮৭২৭০.৯২

২১/৫/২০

১০২৪০৫১.৭৬

৫/২২/২০

১৪৭১৭৩৬.৩১

৫/২৩/২০

<খালি>

৫/২৪/২০

<খালি>

২৫/৫/২০

<খালি>

৫/২৬/২০

<খালি>

২৭/৫/২০

<খালি>

২৮/৫/২০

<খালি>

৫/২৯/২০

<খালি>

এআই প্ল্যাটফর্ম (ইউনিফাইড)-এর বাম নেভিগেশন বারের ব্যাচ প্রেডিকশনস আইটেম থেকে, আপনি একটি নতুন ব্যাচ প্রেডিকশন তৈরি করতে পারেন।

আপনার জন্য এখানে একটি স্টোরেজ বাকেটে একটি উদাহরণ ইনপুট ফাইল তৈরি করা হয়েছে: automl-demo-240614-lcm/iowa_liquor/iowa_daily_automl_predict.csv

আপনি এই সোর্স ফাইলের অবস্থানটি প্রদান করতে পারেন। এরপর আপনি আপনার প্রেডিকশনগুলো একটি CSV ফাইল হিসেবে ক্লাউড স্টোরেজে, অথবা BigQuery-তে এক্সপোর্ট করার বিকল্প বেছে নিতে পারেন। এই ল্যাবের জন্য, BigQuery নির্বাচন করুন এবং আপনার Google Cloud প্রজেক্ট আইডি বেছে নিন।

22e808dd5cbd4224.png

ব্যাচ প্রেডিকশন প্রক্রিয়াটি সম্পন্ন হতে কয়েক মিনিট সময় লাগবে। এটি সম্পন্ন হলে, আপনি ব্যাচ প্রেডিকশন জবটিতে ক্লিক করে এক্সপোর্ট লোকেশন সহ এর বিস্তারিত দেখতে পারবেন। BigQuery-তে, প্রেডিকশনগুলো অ্যাক্সেস করার জন্য আপনাকে বাম দিকের নেভিগেশন বারে থাকা প্রজেক্ট / ডেটাসেট / টেবিলে যেতে হবে।

এই জবটি BigQuery-তে দুটি ভিন্ন টেবিল তৈরি করবে। একটিতে ত্রুটিযুক্ত সারিগুলো থাকবে এবং অন্যটিতে পূর্বাভাসগুলো থাকবে। Predictions টেবিলের আউটপুটের একটি উদাহরণ নিচে দেওয়া হলো:

9ead59dcc9ad1521.png

ধাপ ৩: উপসংহার

অভিনন্দন, আপনি AutoML ব্যবহার করে সফলভাবে একটি পূর্বাভাস মডেল তৈরি ও প্রশিক্ষণ দিয়েছেন। এই ল্যাবে আমরা ডেটা ইম্পোর্ট করা, মডেল তৈরি করা এবং পূর্বাভাস দেওয়া নিয়ে আলোচনা করেছি।

আপনি আপনার নিজস্ব পূর্বাভাস মডেল তৈরি করতে প্রস্তুত!