
আমরা নিশ্চিত ভাবে ধরে নিতে পারি যে মেশিন লার্নিং আজকের বিশ্বে একটি প্রভাবশালী শক্তি এবং সমস্ত ক্ষেত্রে আমাদের অগ্রগতি ত্বরান্বিত করেছে। আপনি যে কোন শিল্পের দিকে তাকান না কেন, মেশিন লার্নিং এটিকে নাটকীয়ভাবে পরিবর্তন করেছে।
মেশিন লার্নিং (Machine Learning – ML) কী?
এটি কৃত্রিম বুদ্ধিমত্তার (Artificial Intelligence) একটি সাবসেট হিসাবে দেখা হয় । মেশিন লার্নিং অ্যালগরিদমগুলি স্পষ্টতভাবে প্রোগ্রাম না করে ভবিষ্যদ্বাণী বা সিদ্ধান্ত গ্রহণের জন্য, ” প্রশিক্ষণ ডেটা ” নামে পরিচিত নমুনা তথ্যের উপর ভিত্তি করে একটি গাণিতিক মডেল তৈরি করে ।
নাম অনুসারে মেশিন যখন স্বতঃস্ফূর্তভাবে কোনও অভিজ্ঞতা, পর্যবেক্ষণ এবং বিশদভাবে কোনও প্রোগ্রামিং ছাড়াই প্রদত্ত ডেটা সেটগুলির মধ্যে বিশ্লেষণের নিদর্শনগুলির উপর ভিত্তি করে শেখার দক্ষতা রাখে তাকে মেশিন লার্নিং বলে। যখন আমরা কোনও নির্দিষ্ট উদ্দেশ্যে কোনও প্রোগ্রাম বা একটি কোড লিখি, আমরা আসলে মেশিনটি অনুসরণ করবে এমন একটি নির্দেশনা দিচ্ছে।
কিন্তু মেশিন লার্নিংয়ের ক্ষেত্রে, আমরা একটি ডেটা সেট ইনপুট করি যার মাধ্যমে মেশিন ডেটা সেটে নিদর্শনগুলি সনাক্ত করে এবং বিশ্লেষণ করে শিখবে এবং ডেটাসেটের পর্যবেক্ষণ এবং শিখার উপর ভিত্তি করে স্বায়ত্তশাসিত সিদ্ধান্ত নিতে শিখবে।
যেমন, ফেসবুকের মুখের স্বীকৃতি আলগোরিদিম যা আপনাকে কারো মুখের সাথে মিল পেলে ট্যাগ করার পরামর্শ দেয়া। ক্রিমিনাল রেকর্ড সার্চ করে অপরাধীদের সনাক্ত করতে একই পদ্ধতি ব্যবহার করা হয়। এমনকি ভয়েস সহায়করা ব্যবহারকারীর অনুরোধ সনাক্ত করতে এবং সেবার জন্য মেশিন লার্নিং ব্যবহার করে। টেসলার অটোপাইলট এটির আরও একটি উদাহরণ।
যন্ত্রগুলি কীভাবে শিখবে?
ঠিক আছে, সহজ উত্তরটি হবে মানুষের মতোই! প্রথমে আমরা একটি নির্দিষ্ট জিনিস সম্পর্কে জ্ঞান পাই এবং তারপরে এই জ্ঞানটি মাথায় রেখে আমরা ভবিষ্যতে জিনিসটি সনাক্ত করতে সক্ষম হয়েছি। এছাড়াও, অতীতের অভিজ্ঞতাগুলি ভবিষ্যতে সেই অনুযায়ী সিদ্ধান্ত নিতে সহায়তা করে। আমাদের মস্তিষ্ক জ্ঞান / উপাত্তের বৈশিষ্ট্য এবং নিদর্শনগুলি সনাক্ত করে নিজেকে প্রশিক্ষণ দেয়, এভাবে নিজেকে বিভিন্ন জিনিসের মধ্যে সাফল্যের সাথে সনাক্ত বা আলাদা করতে সক্ষম করে।
মেশিন লার্নিং টাইমলাইন
মেশিন লার্নিং সাম্প্রতিক ঘটনা নয়। আসলে, নিউরাল নেটওয়ার্কগুলি ১৯৪৩ সালে একটি রিসার্চের মাধ্যমে প্রথম চালু হয়েছিল !
যদিও প্রথম দিনগুলিতে কম্পিউটারের উচ্চ ব্যয়ের কারণে মেশিন লার্নিংয়ের অগ্রগতি কিছুটা ধীর ছিল যা এই ডোমেনটিকে কেবল বৃহত্তর একাডেমিক প্রতিষ্ঠান বা বহুজাতিক কর্পোরেশনে অ্যাক্সেসযোগ্য করে তুলেছিল। তবে ইন্টারনেটের আগমনের সাথে সাথে আমরা এখন প্রতিদিন কুইন্টিলিয়ন্স ডেটা উত্পন্ন করছি !
আসুন নীচে মেশিন লার্নিংয়ের ইতিহাসের উল্লেখযোগ্য কয়েকটি ইভেন্টের সাথে সময়রেখার পরিকল্পনা করার চেষ্টা করি:

মেশিন লার্নিং, ডিপ লার্নিং, কৃত্রিম বুদ্ধিমত্তার মধ্যে পার্থক্য?
মেশিন লার্নিংয়ের বেসিক জিনিস শেখার সময় প্রায়ই অনেকে মেশিন লার্নিং, কৃত্রিম বুদ্ধিমত্তা এবং গভীর শিক্ষণকে নিয়ে বিভ্রান্তর মধ্যে পরে। নীচের চিত্রটি মেশিন লার্নিংয়ের ধারণাটি পরিষ্কার করবে:

মেশিন লার্নিংয়ে ব্যবহৃত পদক্ষেপগুলি কী কী?
একটি মেশিন লার্নিংয়ের কার্য সম্পাদনের জন্য ৫ টি প্রাথমিক পদক্ষেপ ব্যবহার করা হয়েছে:
ডেটা সংগ্রহ করা : এটি এক্সেল, অ্যাক্সেস, ইত্যাদির র’ডেটা নেয়া, এই পদক্ষেপটি (অতীতের ডেটা সংগ্রহ করা) ভবিষ্যতের শিক্ষার ভিত্তি তৈরি করে। প্রাসঙ্গিক ডেটার বিভিন্নতা, নির্ভরযোগ্যতা এবং কোয়ালিটি যত ভালো হবে, মেশিনের জন্য শেখার সম্ভাবনা তত উন্নত হয়।
ডেটা প্রস্তুত করা : যে কোনও বিশ্লেষণমূলক প্রক্রিয়া ব্যবহৃত তথ্যের মানের উপর নির্ভর করে। ডেটা গুণমান নির্ধারণ এবং তার আউটপুট ইত্যাদি অধ্যয়নের মাধ্যমে তথ্যের উপকারিতা বাড়িয়ে তোলা।
কোনও মডেলকে প্রশিক্ষণ দেওয়া : এই পদক্ষেপের মধ্যে মডেল আকারে উপযুক্ত অ্যালগরিদম এবং ডেটা উপস্থাপনা নির্বাচন করা জড়িত। পরিষ্কার করা ডেটা দুটি ভাগে বিভক্ত – ট্রেন এবং পরীক্ষা (পূর্ব শর্তগুলির উপর নির্ভর করে অনুপাত); প্রথম অংশ (প্রশিক্ষণ ডেটা) মডেল বিকাশের জন্য ব্যবহৃত হয়। দ্বিতীয় অংশ (পরীক্ষার ডেটা), একটি রেফারেন্স হিসাবে ব্যবহৃত হয়।
মডেলটির মূল্যায়ন : যথার্থতা পরীক্ষা করতে, তথ্যের দ্বিতীয় অংশ (হোল্ডআউট / টেস্ট ডেটা) ব্যবহার করা হয়। এই পদক্ষেপটি ফলাফলের ভিত্তিতে অ্যালগরিদমের পছন্দে নির্ভুলতা নির্ধারণ করে। মডেলের নির্ভুলতা যাচাই করার জন্য আরও ভাল পরীক্ষা হ’ল ডেটাতে এর পারফরম্যান্স দেখা যা মডেল তৈরির সময় ব্যবহার করা হয়নি।
কর্মক্ষমতা উন্নত করা : এই পদক্ষেপটি পুরোপুরি আলাদা আলাদা মডেল নির্বাচন করা বা দক্ষতা বাড়ানোর জন্য আরও ভেরিয়েবল প্রবর্তন করতে পারে। এজন্য ডেটা সংগ্রহ এবং প্রস্তুতিতে উল্লেখযোগ্য পরিমাণ সময় ব্যয় করা প্রয়োজন ।
মেশিন লার্নিং – এর প্রকারভেদ

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