|
|
4 months ago | |
|---|---|---|
| .. | ||
| README.md | 4 months ago | |
| assignment.md | 7 months ago | |
README.md
মেশিন লার্নিংয়ের প্রযুক্তি
মেশিন লার্নিং মডেল তৈরির, ব্যবহারের এবং রক্ষণাবেক্ষণের প্রক্রিয়া এবং তারা যে ডেটা ব্যবহার করে তা অনেক অন্যান্য ডেভেলপমেন্ট ওয়ার্কফ্লো থেকে অনেক ভিন্ন প্রক্রিয়া। এই পাঠে, আমরা এই প্রক্রিয়াটি স্পষ্ট করব এবং আপনার জানা প্রয়োজন এমন প্রধান প্রযুক্তিগুলি তুলে ধরব। আপনি করতে পারবেন:
- উচ্চ স্তরে মেশিন লার্নিংয়ের ভিত্তি প্রক্রিয়াগুলি বুঝতে।
- 'মডেল', 'পূর্বাভাস', এবং 'প্রশিক্ষণ ডেটা' এর মতো মূল ধারণাগুলি অন্বেষণ করতে।
পাঠের পূর্বে কুইজ
🎥 এই পাঠের একটি সংক্ষিপ্ত ভিডিও দেখতে উপরের ছবিতে ক্লিক করুন।
পরিচিতি
উচ্চ স্তরে, মেশিন লার্নিং (এমএল) প্রক্রিয়া তৈরির কলা অনেক ধাপে বিভক্ত:
- প্রশ্ন নির্ধারণ করুন। বেশিরভাগ এমএল প্রক্রিয়া একটি প্রশ্ন নিয়ে শুরু হয় যা সাধারণ শর্তসাপেক্ষ প্রোগ্রাম বা নিয়ম ভিত্তিক ইঞ্জিন দ্বারা উত্তর দেওয়া যায় না। এই প্রশ্নগুলি প্রায়শই ডেটার সংগ্রহের উপর ভিত্তি করে পূর্বাভাস নিয়ে আবর্তিত হয়।
- ডেটা সংগ্রহ ও প্রস্তুতি। আপনার প্রশ্নের উত্তর দিতে হলে আপনাকে ডেটা দরকার। আপনার ডেটার গুণগতমান এবং কখনও কখনও পরিমাণ নির্ধারণ করবে আপনি কত ভাল আপনার প্রাথমিক প্রশ্নের উত্তর দিতে পারবেন। ডেটা ভিজ্যুয়ালাইজ করা এই ধাপের একটি গুরুত্বপূর্ণ অংশ। এই ধাপে ডেটাকে প্রশিক্ষণ এবং পরীক্ষার গ্রুপে ভাগ করার কাজও অন্তর্ভুক্ত রয়েছে মডেল তৈরি করতে।
- প্রশিক্ষণ পদ্ধতি নির্বাচন করুন। আপনার প্রশ্ন ও ডেটার প্রকৃতির উপর নির্ভর করে, আপনাকে একটি মডেল ট্রেন করতে হবে যা আপনার ডেটাকে সেরা প্রতিফলিত করবে এবং তার বিরুদ্ধে সঠিক পূর্বাভাস দেবে। এটি আপনার এমএল প্রক্রিয়ার অংশ যা নির্দিষ্ট দক্ষতা এবং প্রায়ই প্রচুর পরীক্ষা নিরীক্ষা প্রয়োজন।
- মডেল প্রশিক্ষণ দিন। আপনার প্রশিক্ষণ ডেটা ব্যবহার করে, আপনি বিভিন্ন অ্যালগরিদম ব্যবহার করে একটি মডেল ট্রেন করবেন যা ডেটায় প্যাটার্ন চিনতে পারে। মডেলটি অন্তর্নিহিত ওজন ব্যবহার করতে পারে যা ডেটার নির্দিষ্ট অংশকে অন্য অংশের থেকে বেশি গুরুত্ব দিতে সমন্বয়যোগ্য যাতে একটি ভাল মডেল তৈরি হয়।
- মডেল মূল্যায়ন করুন। আপনি আগে কখনও দেখা না হওয়া ডেটা (আপনার পরীক্ষার ডেটা) ব্যবহার করে দেখতে পারেন মডেল কতটা কার্যকর।
- প্যারামিটার সমন্বয়। মডেলের কার্যক্ষমতার উপর ভিত্তি করে, আপনি বিভিন্ন প্যারামিটার বা ভেরিয়েবল ব্যবহার করে প্রক্রিয়াটি পুনরায় করতে পারেন যা মডেল ট্রেন করতে ব্যবহৃত অ্যালগরিদমগুলোর আচরণ নিয়ন্ত্রণ করে।
- পূর্বাভাস দিন। নতুন ইনপুট ব্যবহার করে মডেলের সঠিকতা পরীক্ষা করুন।
কোন প্রশ্ন করবেন
কম্পিউটার ডেটায় লুকানো প্যাটার্ন আবিষ্কারে বিশেষ দক্ষ। গবেষকদের জন্য যারা একটি নির্দিষ্ট ক্ষেত্রে প্রশ্ন রাখেন এবং যেগুলোর উত্তর সহজে শর্তসাপেক্ষ নিয়ম ইঞ্জিন তৈরির মাধ্যমে পাওয়া যায় না, এটি খুব সাহায্যকারী।
উদাহরণস্বরূপ, একটি অ্যাকচুয়ারিয়াল কাজ দেওয়া হলে, একজন ডেটা সায়েন্টিস্ট ধূমপায়ী ও অ-ধূমপায়ীদের মৃত্যু হার নিয়ন্ত্রণ করে তৈরি কাস্টম নিয়ম তৈরি করতে পারেন।
কিন্তু যখন আরও অনেক ভেরিয়েবল যুক্ত হয়, তখন এমএল মডেল অতীত স্বাস্থ্যের ইতিহাসের ভিত্তিতে ভবিষ্যত মৃত্যুহার পূর্বাভাস দেওয়া আরও কার্যকর প্রমাণিত হতে পারে। একটি আনন্দদায়ক উদাহরণ হতে পারে এপ্রিল মাসে একটি নির্দিষ্ট স্থানে আবহাওয়ার পূর্বাভাস দেওয়া, যেখানে ডেটাতে অন্তর্ভুক্ত রয়েছে অক্ষাংশ, দ্রাঘিমাংশ, জলবায়ু পরিবর্তন, মহাসাগরের নিকটতা, জেট স্ট্রিমের প্যাটার্ন প্রভৃতি।
✅ এই স্লাইড ডেক আবহাওয়ার মডেল নিয়ে একটি ঐতিহাসিক দৃষ্টিভঙ্গি দেয় যা আবহাওয়া বিশ্লেষণে এমএল ব্যবহারের বিষয়ে।
মডেল তৈরির পূর্বের কাজ
মডেল তৈরি শুরু করার আগে আপনাকে কিছু কাজ শেষ করতে হবে। আপনার প্রশ্ন পরীক্ষা করার এবং মডেলের পূর্বাভাসের ভিত্তিতে একটি অনুমান গড়ে তোলার জন্য আপনাকে কয়েকটি উপাদান চিহ্নিত এবং কনফিগার করতে হবে।
ডেটা
আপনার প্রশ্নের নিশ্চিত উত্তর দেওয়ার জন্য সঠিক ধরনের প্রচুর ডেটা প্রয়োজন। এ সময় আপনাকে দুটি জিনিস করতে হবে:
- ডেটা সংগ্রহ করুন। পূর্বের পাঠের ফেয়ারনেস বা ন্যায়পরায়ণতা বিষয়টি মাথায় রেখে, সাবধানে ডেটা সংগ্রহ করুন। এই ডেটা উৎস সম্পর্কে সচেতন থাকুন, কোনও অন্তর্নিহিত পক্ষপাত থাকলে জানুন এবং তার উত্স ডকুমেন্ট করুন।
- ডেটা প্রস্তুত করুন। ডেটা প্রস্তুতির কয়েকটি ধাপ রয়েছে। আপনি যদি ডেটা বিভিন্ন উৎস থেকে সংগ্রহ করেন তবে সেটি একত্রিত ও স্বাভাবিককরণ করতে হবে। আপনি ডেটার মান ও পরিমাণ উন্নত করতে পারবেন বিভিন্ন পদ্ধতি ব্যবহার করে যেমন স্ট্রিং থেকে সংখ্যা রূপান্তর (যেমন আমরা ক্লাস্টারিং এ করি)। আপনি নতুন ডেটাও তৈরি করতে পারেন মূল ডেটার ওপর ভিত্তি করে (যেমন আমরা ক্লাসিফিকেশন এ করি)। আপনি ডেটা পরিষ্কার ও সম্পাদনা করতে পারেন (যেমন আমরা ওয়েব অ্যাপ পাঠের আগে করব)। শেষ পর্যন্ত, আপনি যদি প্রয়োজন হয় তবে ডেটা র্যান্ডমাইজ ও শাফলও করতে পারেন প্রশিক্ষণ প্রযুক্তির ওপর নির্ভর করে।
✅ ডেটা সংগ্রহ ও প্রক্রিয়াকরণের পরে, কয়েক মুহুর্ত নিন দেখে নিতে ডেটার আকৃতি আপনার প্রশ্নের উত্তর দেওয়ার জন্য যথেষ্ট কিনা। হয়তো ডেটা আপনার কাজের জন্য ভাল কার্যকর নাও হতে পারে, যেমন আমরা আমাদের ক্লাস্টারিং পাঠে আবিষ্কার করি!
ফিচার ও টার্গেট
একটি ফিচার হল আপনার ডেটার একটি পরিমাপযোগ্য বৈশিষ্ট্য। অনেক ডেটাসেটে এটি একটি কলামের শিরোনামের মতো প্রকাশ পায় যেমন 'তারিখ', 'আকার' বা 'রঙ'। আপনার ফিচার ভেরিয়েবল, যা সাধারণত কোডে X দ্বারা প্রকাশিত হয়, হল ইনপুট ভেরিয়েবল যেটা মডেল ট্রেন করতে ব্যবহৃত হয়।
একটি টার্গেট হল আপনি যা পূর্বাভাস দিতে চান। টার্গেট, সাধারণত কোডে y দ্বারা প্রকাশিত, আপনার প্রশ্নের উত্তর যা আপনি আপনার ডেটাতে করতে চান: ডিসেম্বর মাসে কোন রঙের কুমড়ো সবচেয়ে সস্তা হবে? সান ফ্রান্সিস্কোতে কোন পাড়াগুলো সবচেয়ে ভাল রিয়েল এস্টেট মূল্য থাকবে? টার্গেটকে কখনও কখনও লেবেল অ্যাট্রিবিউটও বলা হয়।
আপনার ফিচার ভেরিয়েবল নির্বাচন
🎓 ফিচার সিলেকশন ও ফিচার এক্সট্র্যাকশন একটি মডেল তৈরি করার সময় কোন ভেরিয়েবল বেছে নিবেন কিভাবে বুঝবেন? আপনি সম্ভবত সেরা কর্মক্ষম মডেলের জন্য সঠিক ভেরিয়েবল বাছাই করতে ফিচার সিলেকশন বা এক্সট্র্যাকশন প্রক্রিয়ার মধ্য দিয়ে যাবেন। তবে এরা একই নয়: "ফিচার এক্সট্র্যাকশন মূল ফিচার থেকে নতুন ফিচার তৈরি করে, আর ফিচার সিলেকশন ফিচারের একটি উপসেট প্রদান করে।" (সূত্র)
আপনার ডেটা ভিজ্যুয়ালাইজ করুন
ডেটা সায়েন্টিস্টের টুলকিটের একটি গুরুত্বপূর্ণ অংশ হলো পাওয়ারফুল ভিজ্যুয়াল লাইব্রেরি ব্যবহার করে ডেটাকে ভিজ্যুয়ালাইজ করার ক্ষমতা যেমন Seaborn বা MatPlotLib। আপনার ডেটাকে ভিজ্যুয়ালভাবে প্রতিনিধিত্ব করা হয়তো আপনাকে লুকানো সম্পর্ক আবিষ্কার করতে সাহায্য করবে যা আপনি কাজে লাগাতে পারেন। আপনার ভিজ্যুয়ালাইজেশন হয়তো পক্ষপাত বা অসমতল ডেটাও উন্মোচন করতে সাহায্য করবে (যেমন আমরা ক্লাসিফিকেশন এ আবিষ্কার করি)।
আপনার ডেটাসেট ভাগ করুন
প্রশিক্ষণের আগে, আপনাকে আপনার ডেটাসেটকে দুই বা ততোধিক অসম আকারের অংশে ভাগ করতে হবে যা ডেটার ভাল প্রতিনিধিত্ব করবে।
- প্রশিক্ষণ। ডেটাসেটের এই অংশটি আপনার মডেল ট্রেন করতে ব্যবহার হয়। এটি মূল ডেটাসেটের সর্বাধিক অংশ।
- পরীক্ষা। একটি পরীক্ষার ডেটাসেট একটি স্বাধীন ডেটা গ্রুপ যা সাধারণত মূল ডেটা থেকে সংগৃহীত হয়, যেটি আপনি তৈরি মডেলের কার্যক্ষমতা যাচাই করার জন্য ব্যবহার করবেন।
- ভ্যালিডেশন। একটি ভ্যালিডেশন সেট হল ছোট একটি স্বাধীন উদাহরণসমূহের দল যা আপনি মডেলের হাইপারপ্যারামিটার বা আর্কিটেকচার উন্নত করার জন্য ব্যবহার করবেন। আপনার ডেটার আকার এবং প্রশ্নের ওপর নির্ভর করে, হয়তো আপনাকে এই তৃতীয় সেট তৈরি করতে হবে না (যেমন আমরা টাইম সিরিজ ফরকাস্টিং এ উল্লেখ করেছি)।
মডেল তৈরি
আপনার প্রশিক্ষণ ডেটা ব্যবহার করে, আপনার লক্ষ্য হলো একটি মডেল বা আপনার ডেটার একটি পরিসংখ্যানগত প্রতিনিধিত্ব তৈরি করা বিভিন্ন অ্যালগরিদম ব্যবহার করে ট্রেন করার জন্য। মডেল প্রশিক্ষণ মানে মডেলকে ডেটার নিদর্শন চিনতে শেখানো, অনুমান করা এবং যাচাই করার সুযোগ দেয়, এবং তারপরে তা গ্রহণ বা প্রত্যাখ্যান করে।
একটি প্রশিক্ষণ পদ্ধতি নির্ধারণ করুন
আপনার প্রশ্ন ও ডেটার প্রকৃতির উপর নির্ভর করে আপনি একটি পদ্ধতি নির্বাচন করবেন মডেল ট্রেন করার জন্য। Scikit-learn এর ডকুমেন্টেশন - যেটা আমরা এই কোর্সে ব্যবহার করি - অনুসরণ করলে আপনি অনেক পদ্ধতিতে মডেল ট্রেন করা অন্বেষণ করতে পারবেন। আপনার অভিজ্ঞতার ওপর ভিত্তি করে, সম্ভবত আপনাকে সেরা মডেল তৈরির জন্য বিভিন্ন পদ্ধতি চেষ্টা করতে হবে। সাধারণত ডেটা সায়েন্টিস্টরা একটি মডেলের কার্যকারিতা মূল্যায়ন করেন অদেখা ডেটা খাওয়িয়ে, সঠিকতা, পক্ষপাত এবং অন্যান্য গুণগত সমস্যা যাচাই করে, এবং কাজের জন্য সবচেয়ে উপযুক্ত প্রশিক্ষণ পদ্ধতি বেছে নেন।
মডেল প্রশিক্ষণ দিন
আপনার প্রশিক্ষণ ডেটা নিয়ে আপনি প্রস্তুত 'ফিট' করার জন্য একটি মডেল তৈরি করতে। অনেক এমএল লাইব্রেরিতে আপনি কোডে 'model.fit' দেখবেন - এই সময় আপনি আপনার ফিচার ভেরিয়েবলকে মানের এরে (সাধারণত 'X') এবং টার্গেট ভেরিয়েবল (সাধারণত 'y') হিসাবে পাঠান।
মডেল মূল্যায়ন করুন
প্রশিক্ষণ প্রক্রিয়া শেষ হলে (একটি বড় মডেল ট্রেন করতে অনেক পুনরাবৃত্তি বা 'ইপোক' লাগতে পারে), আপনি মডেলের গুণমান মূল্যায়ন করতে পারবেন। এর জন্য আপনি পরীক্ষার ডেটা ব্যবহার করবেন যা মডেল আগেই বিশ্লেষণ করে নি। আপনি মডেলের গুণমান সম্পর্কে মেট্রিক্সের একটি টেবিল প্রিন্ট করতে পারবেন।
🎓 মডেল ফিটিং
মেশিন লার্নিং প্রসঙ্গে, মডেল ফিটিং মানে হলো মডেলের অন্তর্নিহিত ফাংশনের সঠিকতা, যখন এটি অপরিচিত ডেটা বিশ্লেষণ করার চেষ্টা করে।
🎓 আন্ডারফিটিং এবং ওভারফিটিং হল সাধারণ সমস্যা যা মডেলের গুণমান কমিয়ে দেয়, কারণ মডেল বা খারাপভাবে ফিট হয় বা অত্যধিক ভালভাবে ফিট হয়। এর ফলে মডেল পূর্বাভাস দেয় প্রশিক্ষণ ডেটার সাথে খুব ঘনিষ্ঠভাবে মেলানো বা খুব দূরত্বপূর্ণ। ওভারফিট মডেল প্রশিক্ষণ ডেটার বিস্তারিত এবং শব্দ খুব ভালোভাবে শিখে ফেলায় খুব ভালো পূর্বাভাস দেয়। আন্ডারফিট মডেল যথাযথ বিশ্লেষণ করতে পারে না না প্রশিক্ষণ ডেটা, না অপরিচিত ডেটা।
ইনফোগ্রাফিক জেন লুপার দ্বারা
প্যারামিটার টিউনিং
আপনার প্রাথমিক প্রশিক্ষণ সম্পন্ন হলে, মডেলের গুণমান দেখুন এবং এর 'হাইপারপ্যারামিটারগুলিকে' টিক্ব করার মাধ্যমে উন্নতি করার কথা বিবেচনা করুন। আরও পড়ুন ডকুমেন্টেশন দেখুন।
পূর্বাভাস
এখন আপনি সম্পূর্ণ নতুন ডেটা ব্যবহার করে মডেলের সঠিকতা পরীক্ষা করতে পারেন। একটি 'প্রয়োগকৃত' এমএল পরিবেশে, যেখানে আপনি মডেলকে উৎপাদনে ব্যবহার করতে ওয়েব অ্যাসেট তৈরি করছেন, এই প্রক্রিয়াটি ব্যবহারকারীর ইনপুট (যেমন বোতাম চাপ) সংগ্রহ করা এবং সেটি একটি ভেরিয়েবল হিসাবে সেট করে, মডেলে ইনফারেন্স বা মূল্যায়নের জন্য পাঠানো অন্তর্ভুক্ত থাকতে পারে।
এই পাঠে, আপনি শিখবেন কীভাবে এই ধাপগুলোকে প্রস্তুত, তৈরি, পরীক্ষা, মূল্যায়ন, এবং পূর্বাভাসে ব্যবহার করবেন - ডেটা সায়েন্টিস্টের সকল কাজ এবং আরো কিছু, যেভাবে আপনি 'ফুল স্ট্যাক' এমএল ইঞ্জিনিয়ার হওয়ার পথে অগ্রসর হবেন।
🚀চ্যালেঞ্জ
একটি ফ্লো চার্ট আঁকুন যা একটি এমএল প্র্যাকটিশনারের ধাপগুলো প্রদর্শন করে। বর্তমানে আপনি প্রক্রিয়ার কোন অংশে আছেন বলে মনে করেন? কোথায় আপনি কষ্টের সম্মুখীন হবেন বলে অনুমান করেন? কোন কাজটি আপনার কাছে সহজ মনে হয়?
পাঠের পরে কুইজ
রিভিউ ও স্ব-অধ্যয়ন
অনলাইনে সন্ধান করুন ডেটা সায়েন্টিস্টদের সাক্ষাৎকার যারা তাদের দৈনন্দিন কাজ নিয়ে কথা বলেন। এখানে একটি সাক্ষাৎকার দেওয়া হলো।
অ্যাসাইনমেন্ট
একজন ডেটা সায়েন্টিস্টের সাক্ষাৎকার নিন
অস্বীকৃতি: এই ডকুমেন্টটি AI অনুবাদ পরিষেবা Co-op Translator ব্যবহার করে অনুবাদ করা হয়েছে। আমরা সঠিকতার জন্য চেষ্টা করি, তবে অনুগত হোন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। মূল ডকুমেন্টটির তার নিজস্ব ভাষায় থাকা সংস্করণই কর্তৃত্বপূর্ণ উত্স হিসাবে বিবেচিত হওয়া উচিত। গুরুতর তথ্যের জন্য পেশাদার মানুষের অনুবাদের পরামর্শ দেওয়া হয়। এই অনুবাদ ব্যবহারের ফলে কোনও ভুল বোঝাবুঝি বা ভুল ব্যাখ্যার জন্য আমরা দায়বদ্ধ নই।

