মেশিন লার্নিং (Machine Learning)-এর ধরনগুলো
যেকোনো তিনটি ভিন্ন ভিন্ন ক্লাসরুম বা শ্রেণিকক্ষের কথা ভাবুন।
ধরা যাক ক্লাসরুম এ (Classroom A)-তে, শিক্ষক একটি ছবির কার্ড বা ফ্ল্যাশকার্ড উঁচিয়ে ধরে বললেন, "এটি হলো একটি বিড়াল।" এরপর তিনি আরেকটি ছবি দেখিয়ে বললেন: "এটি একটি কুকুর।" এখানকার শিক্ষার্থীরা মূলত সঠিক উত্তর দেওয়া আছে এমন সব উদাহরণ দেখে শেখে। অনেকগুলো ফ্ল্যাশকার্ড দেখার পর, তারা একা একাই নতুন কোনো প্রাণী দেখে সেটি চিনতে পারে।
আবার ক্লাসরুম বি (Classroom B)-তে, কোনো শিক্ষকই নেই। এর বদলে সেখানে থাকা শিক্ষার্থীদের কেবল এক গাদা ছবি দিয়ে বলা হলো: "এগুলোকে তোমাদের কাছে যেমন ভালো মনে হয়, সেগুলোর ওপর ভিত্তি করে আলাদা আলাদা দলে ভাগ করো।" এখানে কেউই বলে দেয় না যে এর দলগুলো বা গ্রুপগুলো কেমন হবে — বরং শিক্ষার্থীরা একা একাই এর ভেতরের প্যাটার্ন বা গঠনগুলো আবিষ্কার করে।
আর ক্লাসরুম সি (Classroom C)-তে, একজন শিক্ষার্থী সাইকেল চালানো শিখছে। তাকে কেউই কোনো নিয়মকানুন বা ম্যানুয়াল (manual) হাতে ধরিয়ে দেয়নি। সে শুধু চালানোর চেষ্টা করে, টলমল করে, পড়ে যায় এবং এরপর আবার নিজেকে শুধরে নিয়ে নতুন করে চেষ্টা করে। এরপর যতবার সে তার ব্যালেন্স বা ভারসাম্য আগের চেয়ে সামান্য আরেকটু বেশি সময় ধরে রাখতে পারে, ততবার সে একটি "বাহ, দারুণ!" শোনে। সে মূলত বারবার চেষ্টা করা, ভুল করা এবং সেখান থেকে পাওয়া রিওয়ার্ড বা প্রাপ্তির মাধ্যমে এটি শেখে।
আর এই তিনটি ক্লাসরুমের গল্পের সাথেই মেশিন লার্নিংয়ের প্রধান তিনটি ধরনের একেবারে হুবহু মিল রয়েছে।
১. সুপারভাইজড লার্নিং (Supervised Learning) — "সঠিক উত্তর বা অ্যানসার-কী (answer key) থেকে শেখা"
এটি হলো মেশিন লার্নিংয়ের সবচেয়ে পরিচিত এবং কমন একটি ধরন। এখানে মডেলকে ইনপুট-আউটপুট জোড়া (input-output pairs) দেওয়া হয় — অর্থাৎ এখানে আপনি ডেটার সঠিক উত্তর আগে থেকেই জানেন। আর মডেলটি মূলত যেকোনো ইনপুটের সাথে তার সঠিক আউটপুটের সম্পর্ক বা সংযোগটি শিখে নেয়।
এটিকে এমন কোনো পাঠ্যবই দিয়ে পড়ার সাথে তুলনা করতে পারেন, যার পেছনে সমস্ত প্রশ্নের উত্তর দেওয়া থাকে। যেখানে আপনি শুধু অনুশীলন করেন, এরপর নিজের উত্তরের সাথে বইয়ের পৃষ্ঠার শেষের উত্তরটি মিলিয়ে দেখেন এবং নিজের ভুলগুলো শুধরে নেন।
বাস্তব দুনিয়ায় এর ব্যবহার:
- ইমেইল → স্প্যাম (spam) নাকি স্প্যাম নয়? (ক্লাসিফিকেশন বা classification)
- বাড়ির বিভিন্ন বৈশিষ্ট্য বা ফিচার → এটির সম্ভাব্য দাম কত হতে পারে? (রিগ্রেশন বা regression)
- মেডিকেল স্ক্যান → কোনো রোগ আছে নাকি রোগী সম্পূর্ণ সুস্থ? (ক্লাসিফিকেশন বা classification)
- কাস্টমার ডেটা → তারা কি জিনিসটি কিনবে? (ক্লাসিফিকেশন বা classification)
এর প্রধান শর্ত: এর জন্য আপনার লেবেল করা ডেটা (labeled data)-এর প্রয়োজন হবে — অর্থাৎ এখানে ট্রেইনিংয়ের প্রতিটি উদাহরণের সঠিক উত্তরগুলো কেউ একজন (সাধারণত মানুষ) আগে থেকেই দিয়ে রাখে।
সুপারভাইজড লার্নিং (Supervised Learning): বাড়ির দাম প্রেডিক্ট বা অনুমান করা
২. আনসুপারভাইজড লার্নিং (Unsupervised Learning) — "লুকানো গ্রুপ বা দলগুলো খুঁজে বের করা"
এখানে ডেটার কোনো লেবেল থাকে না। এখানে মডেলটিকে কেবল কিছু কাঁচা বা র ডেটা (raw data) দেওয়া হয় এবং এর ভেতরের গঠন বা কাঠামো মডেলটিকে একা একাই খুঁজে নিতে হয়। এটিকে আপনি এমন ভাবতে পারেন যে, কাউকে একটি বক্সে ১,০০০টি বোতাম দিয়ে বলা হলো, "তোমার কাছে যেভাবে ভালো মনে হয় তুমি সেভাবে এগুলোকে গুছিয়ে রাখো।"
এখন মডেলটি চাইলে সেগুলোর রঙ, আকার, তাতে থাকা ছিদ্রে সংখ্যা অথবা সেগুলো কী দিয়ে বানানো হয়েছে, তার ওপর ভিত্তি করে এগুলোকে আলাদা দলে ভাগ করতে পারে — মূলত এখানে এটি এমন কিছু প্যাটার্ন খুঁজে বের করে, যা মানুষের পক্ষে খুঁজে পাওয়া প্রায় অসম্ভব।
বাস্তব দুনিয়ায় এর ব্যবহার:
- মার্কেটিং বা ব্যবসায়ের জন্য কাস্টমারদের বিভিন্ন দলে ভাগ করা (ক্লাস্টারিং বা clustering)
- ক্রেডিট কার্ডের যেকোনো অস্বাভাবিক বা অদ্ভুত লেনদেন শনাক্ত করা (অ্যানোমালি ডিটেকশন বা anomaly detection)
- অনেক বেশি জটিল কোনো ডেটাকে এর মূল ডাইমেনশনে বা মাত্রায় কমিয়ে আনা (ডাইমেনশনালিটি রিডাকশন বা dimensionality reduction)
- সম্পর্কযুক্ত পণ্যগুলো খুঁজে বের করা ("যারা X কিনেছে তারা Y-ও কিনেছে")
আনসুপারভাইজড লার্নিং (Unsupervised Learning): কাস্টমার ক্লাস্টারিং (Customer Clustering)
৩. রিইনফোর্সমেন্ট লার্নিং (Reinforcement Learning) — "কাজের মাধ্যমেই শেখা"
এটি অন্য সবগুলোর চেয়ে একদম আলাদা। কারণ এখানে শেখার জন্য আগে থেকে কোনো ডেটাসেট (dataset) দেওয়া হয় না। এর বদলে একটি এজেন্ট (agent) যেকোনো পরিবেশের (environment) সাথে ইন্টারেক্ট করে কোনো একটি নির্দিষ্ট অ্যাকশন (action) সম্পন্ন করে এবং সেটির ওপর ভিত্তি করে তাকে রিওয়ার্ড বা পুরস্কার (rewards) অথবা পেনাল্টি বা শাস্তি (penalties) দেওয়া হয়। হাজার হাজার বার একই কাজ বারবার করার মাধ্যমে এটি একা একাই সবচেয়ে সেরা কৌশলটি শিখে নেয়。
এটি অনেকটা ভিডিও গেম খেলা শেখার মতোই। কারণ গেম খেলার সময় কখনোই আপনার হাতে "সঠিক মুভ বা চাল" লেখা কোনো ডেটাসেট ধরিয়ে দেওয়া হয় না। আপনি কেবল খেলেন, বারবার হারেন, এরপর ঠিক কোন কারণে আপনি হেরেছেন সেটি বুঝতে পারেন এবং এর পরেরবার ভিন্ন কোনো নিয়ম কাজে লাগিয়ে জেতার চেষ্টা করেন।
বাস্তব দুনিয়ায় এর ব্যবহার:
- গেম এআই (Game AI) (যেমন: AlphaGo, দাবা ইঞ্জিন (Chess engines), অ্যাটারি বটস্ (Atari bots))
- সেলফ-ড্রাইভিং কার বা গাড়ি (কোনো কিছুতে ধাক্কা না খেয়ে চলা = রিওয়ার্ড (reward))
- রোবোটিক বাহু (Robot arms) ব্যবহার করে যেকোনো বস্তু বা জিনিস তোলা শেখা
- সুপারিশ বা রেকমেন্ডেশন সিস্টেম (Recommendation systems) (কোনো কনটেন্ট দেখানো → ইউজারের সেটি ক্লিক করা = রিওয়ার্ড (reward))
রিইনফোর্সমেন্ট লার্নিং (Reinforcement Learning): সাধারণ রিওয়ার্ড এজেন্ট (Simple Reward Agent)
ছোট কুইজ
পড়া চালিয়ে যান