[ সংবিধিবদ্ধ সতর্কীকরণঃ এই সিরিজটি কোনভাবেই মেশিন লার্নিং এক্সপার্টদের জন্য নয়, এবং এখানে ইন ডীপে গিয়ে ম্যাথম্যাটিক্যালি কোন কিছু এক্সপ্লেইন করা হয় নি ]

ধরুন, আপনাকে কয়েকটা আপেল এর ছবি দেখানো হল এরপর নতুন আরেকটা আপেল এর ছবি দেখিয়ে জিজ্ঞাস করা হল ওটা কিসের ছবি। আপনি যদি ঐ আগের ছবির ক্ষেত্রে বলতে পারেন কিন্তু নতুন কোন আপেল এর ছবি দেখালে বলতে না পারেন তাহলে বুঝতে হবে, আপনি মেমোরাইজ করেছেন। অর্থাৎ আগের দেখানো আপেল এর ছবিগুলার মধ্যে আপনি প্যাটার্ন বা কমন বৈশিষ্ট্য ধরতে পারেন নি, সোজা কথায় আপনি আসলে শিখেন নি যে আপেল জিনিসটা কি, আপনি জাস্ট ফিক্সড কিছু আপেল এর জন্য মেমোরাইজ করেছেন।

রিসেন্ট যে কয়েকটা টেকনোলজি ক্রেজ লিস্ট এ আছে তাঁর মধ্যে মেশিন লার্নিং অন্যতম। মেশিন লার্নিং এর কনসেপ্ট যদিও বেশ আগের , কিন্তু এটা ব্যাপক ভাবে ব্যবহার শুরু হয়েছে কম্পিউটিং পাওয়ার বৃদ্ধি পাওয়া এবং কম্পিউটার মেমোরি সহজলভ্য হবার পর থেকে। তাঁর কারণ হল, জেনারাইলেশন এর জন্য দরকার হাই কম্পিউটিং পাওয়ার আর মেমোরাইজেশনের জন্য দরকার প্রচুর মেমোরি। কারণ রিয়েল ওয়ার্ল্ড এর সকল ইভেন্ট বা ঘটনাকে আপনই চাইলেও জেনারেলাইজ করতে পারবেন নাহ, কিছু এক্সেপশন থাকবেই , আবার সকল কিছু মেমোরাইজ করলে ইন্টেলিজেন্স বলে কিছু থাকে নাহ।

যারা কম্পিউটার সায়েন্স বা রিলেটেড ফিল্ড এর সাথে সরাসরি সম্পর্ক্ত নন, কিন্তু টেকনোলজির খোঁজখবর রাখেন বা যারা এখনও মেশিন লার্নিং এর ইন ডিটেইলস জানে নাহ, তারা অনেক সময় ভাবতে পারেন , কম্পিউটার বা মেশিন আবার শিখে কি করে?

চলেন একটা উদাহরণ দেইঃ

ধরুন, আপনি পার্ক মোড় থেকে মেডিকেল মোড় যাবেন। আপনার কাছে অনেকগুলা রাস্তার অপশনস আছে। আপনি চান যে মেডিকেল মোড় যাওয়ার কস্টটা মিনিমাইজ হোক অর্থাৎ সবচেয়ে কম খরচে কোন রাস্তায় মেডিকেল মোড় যাওয়া যায় সেটা খুঁজে বের করা। আপনি যেটা করতে পারেন , কয়েকজন লোককে জিজ্ঞাসা করতে পারেন, তাদের হয়তো কেউ মড়ার্ণ মোড় হয়ে মেডিকেল মোড় যায়, কেউ হয়তো জাহাজ কোম্পানি মোড় হয়ে মেডিকেল মোড় যায়। তো আপনি প্রত্যেককে জিজ্ঞাসা করে কস্ট হিসেব করতে পারেন, যে কোন পথে গেলে খরচ কম হবে। আরেকটা বিষয় খেয়াল করুন, আপনি কিন্তু অলরেডি আরও কিছু বিষয় শিখে ফেলেছেন, যেমন , ক্যান্টনমেন্ট , মিলিনিয়াম স্টারস স্কুল, ধাপ  এই জায়গাগুলাতে যদি কেউ যাইতে চায় তাহলে কিন্তু আপনি তাকে কম খরচে যাওয়ার রাস্তাটা বলে দিতে পারবেন। কারণ আপনি শুধু মেডিকেল মোড়ের ভাড়াটাই জানেন নাহ, আপনি ঐ একই ধরনের বা প্রায় একই ধরনের জায়গাগুলার [ এই একই ধরনের জায়গা বা প্রায় একই ধরনের জায়গাগুলাকে একটা ক্লাস্টার বা একই ক্লাসের মধ্যে ধরা যায় ] জন্যও হিসেব করতে শিখেছেন।

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

যেমন , আপনার জিমেইল ইনবক্সে আসা অনেক ইমেইল স্প্যাম বক্সে চলে যায়। জিমেইল স্প্যাম ডিটেকশনের জন্য মেশিন লার্নিং ইউজ করে। অর্থাৎ ঐ ইন্টেলিজেন্ট সিস্টেমটাকে মিলিয়ন্স অফ স্প্যাম ইমেল দেখিয়ে ট্রেইন করা হয়েছে। এবং ঐ ইন্টীলিজেন্ট এজেন্ট শিখে গেছে যে কোন ধরনের ইমেইল গুলা সাধারণত স্প্যাম হয়ে থাকে। এই শিখাটা আবার ডায়নামিক। আপনি যখন একটা স্প্যাম মেইল সিলেক্ট করে বলে দিচ্ছেন যে এটা আসলে স্প্যাম নয়, তখন জিমেইল এর AI ( Artificial Intelligence ) এজেন্ট সেটাকে ট্রেইনিং ডেটা হিসেবে রেখে দিচ্ছে এবং তা থেকে আবার শিখতেছে।

তাই ইনটেলিজেন্ট সিস্টেম গুলো সাধারণ ট্রেইনিং ডেটার মধ্যে কমন প্যাটার্ন খুঁজে সেগুলার মধ্যে জেনারেলাইজ করার চেষ্টা করে, আর জেনারেলাইশনের তথ্যগুলা মেমোরাইজ করে। অনেকটা ছন্দে ছন্দে পড়াশুনা করার মত। ছন্দটা মনে রাখবো , কিন্তু ছন্দ দিয়ে যেসব জিনিস মিলাবো সেগুলা ইজিলি বলে ফেলবো বা অজানা কিছুকেও যেন হিসেব করে ফেলা যায় সেরকম আরকি।

[ ফারুক আহমদ, রিসার্চ অ্যাসিস্ট্যান্ট @ SemanticsLab]