লিনিয়ার রিগ্রেশন (Linear Regression)
ধরা যাক, আপনি একজন শিশু, যার হাতে একটি স্কেল এবং বিন্দু আঁকা একটি গ্রাফ পেপার রয়েছে। এখানে প্রতিটি বিন্দু হলো একেকটি বাড়ি — যার x-অক্ষে রয়েছে ঘরগুলোর বর্গফুট বা আকার এবং y-অক্ষে রয়েছে সেগুলোর দাম। এখন আপনার কাজ হলো: স্কেলটিকে এমনভাবে বসিয়ে একটি দাগ বা লাইন টানা, যাতে সেই লাইনটি সবগুলো বিন্দুর যতটা সম্ভব কাছাকাছি দিয়ে যায়।
খুব সহজ ভাষায় এটিই হলো লিনিয়ার রিগ্রেশন (linear regression)। এখানে আপনি মূলত আপনার ডেটাগুলোর ভেতর দিয়ে সবচেয়ে পারফেক্ট একটি সোজা লাইন (best straight line) আঁকেন, যাতে পরবর্তীতে আপনি সেই লাইনটি ব্যবহার করে নতুন কোনো কিছুর মান অনুমান বা প্রেডিক্ট করতে পারেন।
এই লাইনের ভেতরের সমীকরণ বা ইকুয়েশন
যেকোনো সোজা লাইনকে নিচের মতো করে লেখা যায়:
y = mx + b
আপনি হয়তো স্কুল থেকেই এর সম্পর্কে জানেন। মেশিন লার্নিংয়ের ভাষায়, আমরা মূলত জিনিসগুলোর নাম বদলে ফেলি:
- y — প্রেডিকশন বা অনুমান (যেমন বাড়ির দাম)
- x — ইনপুট ফিচার (input feature) (যেমন বাড়ির আকার)
- m — ওয়েট (weight) বা ওজন (প্রতি বর্গফুটে দাম কতটা পরিবর্তন হয়)
- b — বায়াস (bias) (কোনো বাড়ির আকার "শূন্য (zero)" হলেও এর একটি বেস প্রাইস বা সাধারণ দাম)
একটি লিনিয়ার রিগ্রেশন মডেলকে ট্রেইন করা মানে হলো m এবং b-এর সর্বোত্তম বা সবচেয়ে পারফেক্ট মানগুলো খুঁজে বের করা, যাতে লাইনটি ডেটার যত বেশি সম্ভব কাছাকাছি দিয়ে যেতে পারে।
আমরা এই "সবচেয়ে পারফেক্ট (best)"-কে কীভাবে মাপি?
এর জন্য আমরা মিন স্কয়ারড এরর (Mean Squared Error বা MSE) নামের একটি হিসাব ব্যবহার করি। এখানে আমরা প্রতিটি ডেটা পয়েন্টের জন্য তার আসল এবং আমাদের লাইনের অনুমান করা মানের মধ্যকার পার্থক্য বের করি, তারপর সেটিকে স্কয়ার (square) বা বর্গ করি (যাতে নেগেটিভ বা ঋণাত্মক মানগুলো বাতিল না হয়), এবং সবশেষে সেই স্কয়ার করা ভুলগুলোর একটি গড় বা এভারেজ বের করি।
এটিকে অনেকটা শিক্ষকের খাতা দেখার সাথে তুলনা করা যেতে পারে। যে উত্তরে ১০ নম্বরের ভুল রয়েছে, তার জন্য শিক্ষক ১০০ নম্বর (১০ এর স্কয়ার) কেটে নেন। আবার যার ২ নম্বরের ভুল রয়েছে, তাকে ৪ নম্বরের পেনাল্টি বা শাস্তি দেওয়া হয়। অর্থাৎ, ছোট ভুলের চেয়ে বড় ভুলগুলোকে অনেক বেশি শাস্তি দেওয়া বা পেনাল্টি দেওয়া হয় — আর এটিই হলো মূলত স্কয়ারিং (squaring)-এর আসল সৌন্দর্য।
মডেলটির আসল লক্ষ্য হলো: এর MSE কমানো বা মিনিমাইজ করা। অর্থাৎ, এমন m এবং b খুঁজে বের করা, যা এই মোট এরর বা ভুলের পরিমাণকে যতটা সম্ভব ছোট বা কম করে আনে।
শুরু থেকে লিনিয়ার রিগ্রেশন তৈরি করা (Linear Regression from Scratch)
Key Metrics
ছোট কুইজ
পড়া চালিয়ে যান