বর্তমানে যেকোন ইঞ্জিনিয়ারিং বিভাগের জন্য মেশিন লার্নিং একটি গুরুত্বপূর্ণ বিষয় হয়ে দাঁড়িয়েছে। ডেটা অ্যানালাইসিস, ক্লাসিফিকেশন, প্রেডিকশনের জন্য এটা শেখা অত্যন্ত জরুরি। বিগ ডেটা, ডেটা সায়েন্স, আর্টিফিশিয়াল ইন্টেলিজেন্সের সাথে মেশিন লার্নিং ওতপ্রোতভাবে জড়িত। বর্তমানে সাধারণ ওয়েব অ্যাপ কিংবা মোবাইল ফোনেও ML এর বিভিন্ন থিওরি অ্যাপ্লাই করা হয় যাতে আপনার ব্যবহারকৃত অ্যাপ্লিকেশনটি আরও ইন্টেলিজেন্ট হয় এবং আপনার মনের কথা বোঝার ক্ষমতা অর্জন করতে পারে। সাধারণ অ্যাপ ও ML ইম্প্লিমেন্টেড অ্যাপের মধ্যে তফাৎ হল এই, সাধারণ অ্যাপ্লিকেশন সব সময় সাধারণই থাকবে কিন্তু ML ইম্প্লিমেন্টেড অ্যাপটি হবে অনন্যসাধারণ, প্রতিবার ব্যবহার করার পর আপনার মনে হবে অ্যাপটি যেন আরও ইন্টেলিজেন্ট হচ্ছে। তবে ML যে শুধু অ্যাপকে ইন্টেলিজেন্স দিতে পারে তাই নয়, রোগ নির্ণয় থেকে শুরু করে যেকোন ধরণের ক্লাসিফিকেশন ও প্রেডিকশনের জন্য ML এর জুড়ি নেই। এখানে মূলত মডেল তৈরির পাশাপাশি এর পিছনের ম্যাথমেটিক্সেরও ব্যাখ্যা যথাসাধ্য সাবলীল ভাষায় উপস্থাপন করা হবে।
আমরা মোটামুটিভাবে মেশিন লার্নিংকে বিশেষ চারটি শ্রেণিতে ভাগ করতে পারি।
১. Supervised Learning. (সুপারভাইসড লার্নিং)।
২. Unsupervised learning. (আনসুপারভাইসড লার্নিং)।
৩. Semi-Supervised learning. (সেমি-সুপারভাইসড লার্নিং)।
৪. Reinforcement learning. (রিইনফোর্সমেন্ট লার্নিং)।
১. Supervised Learning: (সুপারভাইসড লার্নিং): একটি প্রোগ্রামকে কতগুলো প্রি-ডিফাইন ডেটাসেটের ভিত্তিতে ট্রেইন করা হয়। আর প্রোগ্রামটিও সংগ্রহকৃত ডাটাসেটের উপর ভিত্তি করে সিদ্ধান্ত গ্রহন করে থাকে। সমগ্র প্রক্রিয়াটিকেই সুপারভাইসড লার্নিং (Supervised Learning) বলা হয়। যেমন আমাদের মেইলের ইনবক্সে আসা মেইলটি স্প্যাম কিনা এই সিদ্ধান্ত আগের কিছু ডাটার উপর নির্ভর করে দেয়া হয়।
২. Unsupervised learning: প্রোগ্রামে কিছু ডেটা ইনপুট দেওয়া হয় এবং প্রোগ্রাম ঐ ডেটার উপর নির্ভর করেই সব ধরনের ডিসিশন দেয়। আর একেই আনসুপারভাইসড লার্নিং(Unsupervised learning) বলা হয়। আনসুপারভাইসড লার্নিং এর ক্ষেত্রে আউটপুট কি সেটা কোথাও বলা থাকে না প্রোগ্রাম নিজ থেকেই সেটা বুঝে বের করে নেয়। যেমন একটি শ্রেণিকক্ষে কিছু ছাত্র ও ছাত্রী বসে রয়েছে। এই প্রোগ্রাম ছাত্র ও ছাত্রী কে ভিন্ন ক্যাটেগরিতে ভাগ করবে, এটা হচ্ছে আনসুপারভাইড লার্নিং ।
৩. Semi-Supervised learning: সুপারভাইসড এবং আনসুপারভাইসড এর কম্বিনেসন হল সেমি সুপারভাইসড লার্নিং।
৪. Reinforcement learning: মেশিন লার্নিং এর এই পর্যায়ে মেশিন তার কিছু কিছু প্রোগ্রামকে ক্রমান্বয়ে আপডেট করতে থাকে। তবে এই প্রোগ্রাম নিজ থেকেই বুঝে যে কখন আপডেট করা বন্ধ করতে হবে। অর্থাৎ সে বুঝতে পারে যে আরও সামনের দিকে আগাতে থাকলে প্রোগ্রামটি নিজে থেকেই শেষ হয়ে যেতে পারে তখন এটা নিজের গতি নিজে থেকেই প্রশমিত হতে থাকে। অর্থাৎ প্রোগ্রামের অবস্থাটি ভাল বুঝলে এগিয়ে চলে বিপদ বুঝলে থেমে যায়। এই ধরণের লার্নিং কে বলা হয় রিইনফোর্সমেন্ট লার্নিং (Reinforcement Learning) ।
বর্তমানে জীবনের প্রায় প্রতিটি ফিল্ডে মেশিন লার্নিং এর ব্যবহার বেড়েই চলছে। ডাক্তার, ইঞ্জিনিয়ার, প্রতিরক্ষা বাহিনী, আবহাওয়াবিদ... কে নেই! রাজনীতিবিদরাও ভোটারদের বিহ্যাভিয়ার অ্যানালাইসিস করতে পারবেন। সামগ্রিকভাবে তারা তাদের জয় কিংবা হারার প্রোভাবিলিটিও বের করে ফেলতে পারবেন। এমনকি কাকে টাকা দিয়ে কেনা যাবে সেটাও 😉
আবহাওয়াবিদ'রা মেশিন লার্নিং প্রয়োগ করে আরো দ্রুত এবং সঠিকভাবে আবহাওয়ার সতর্কতা প্রদান করতে পারবেন। কৃষিবিদরা পূর্বের ডাটা অ্যানালাইসিস করে সিদ্ধান্ত নিতে পারবেন। ফলে দেশের খাদ্য ঘাটতি সহ বিভিন্ন দূর্যোগে আগাম সতর্কতা নেয়া সম্ভব হবে।
আমরা অনেকেই সেলফ ড্রাইভ কারের কথা জানি। রাস্তায় যখন সেলফ ড্রাইভ কার চলতে থাকে তখন তার সামনে অনেক গাড়ি, মানুষ, রাস্তার পাশের বৈদ্যুতিক খুঁটি এমনকি গর্তও থাকতে পারে। এই অবস্থায় গাড়িটি সব কিছু স্ক্যান করে এবং তাদের গুরুত্ব নির্ণয় করে থাকে। আপনি কখনো এমনটা দেখবেন না যে খাঁদে পড়া থেকে বাঁচতে গিয়ে গাড়িটি কোন মানুষকে ধাক্কা দিয়ে দেবে। অন্যদিকে ধরুণ রাস্তায় একটি ছোট বোতল পরে আছে দেখে যে গাড়িটি সাইড করে অন্য দিকে চলে যাবে, তাও হবে না!
এক্ষেত্রে গাড়িটিকে সবকিছু অ্যানালাইসিস করতে হয়। রাস্তার বিভিন্ন সাইন অ্যানালাইসিস, এমনকি নষ্ট হয়ে যাওয়া কিংবা রং উঠে যাওয়া রাস্তার সাইন দেখেও মেশিন লার্নিং বলে দিতে পারবে এখানে কিসের সাইন ছিলো। ভাবা যায়!!
আবার মেশিন লার্নিং এর ক্ষেত্রে আমাদের অবশ্যই খুব সুস্পষ্ট করে ঐ প্রোগ্রামের অ্যালগরিদম ও ডেটা এনালাইসিসের নির্দেশনা দিয়ে দিতেই হবে নতুবা মেশিনটি আশানুরূপ ফলপ্রসূ না ও হতে পারে এবং না হবার সম্ভবনাই বেশি। আজকের দিনে বড়-ছোট প্রায় সব ধরনের অ্যাপেও মেশিন লার্নিং এর বহুল ব্যবহা্র লক্ষ্যনীয়। যেমন, ইমেজ রিকগনিশন, ডেটা মাইনিং, এক্সপার্ট সিস্টেম, ন্যাচারাল ল্যাঙ্গুয়েজ প্রসেসিং সহ কম্পিউটার প্রকৌশল বিজ্ঞানসহ এআই এর ভুবনেও এই মেশিন লার্নিং এর ব্যবহার অনস্বীকার্য। মেশিন লার্নিং এর প্রয়োগ দিনকে দিন উত্তর উত্তর বৃদ্ধি হয়েই চলেছে, এবং হবেই।
তো এতক্ষণে নিশ্চইয় বুঝে গিয়েছেন কেন আপনাকে মেশিন লার্নিং শিখতে হবে! সাথে সাথে এটাও নিশ্চইয় বুঝতে পারছেন অদূর ভবিষৎতে ইন্ডাষ্ট্রি ও দখল করবে মেশিন লারনাররা। আপনাকে মেশিন লার্নিং এর জগতে স্বাগতম জানিয়ে আজকের ফিচার এখানেই শেষ করছি।