দুটি পৃথক ক্লাসের মাঝখান দিয়ে আঁকা যায় এমন অসীম সংখ্যক সরলরেখার মধ্যে কোনটি গাণিতিকভাবে সর্বশ্রেষ্ঠ? ফ্র্যাঙ্ক রোজেনব্ল্যাটের পারসেপ্ট্রন যে সরলরেখা খুঁজে পেত, তা প্রায়শই ডেটা পয়েন্টের খুব কাছাকাছি চলে আসত—ফলে সামান্য নয়েজ পেলেই মডেলটি ভুল করত। ১৯৯০-এর দশকে ভ্লাদিমির ভ্যাপনিক, বের্নহার্ড বোসার এবং কোরিনা কর্টেস নিয়ে আসেন সাপোর্ট ভেক্টর মেশিন (SVM): এক অনবদ্য জ্যামিতিক কাঠামো যা দুই ক্লাসের মাঝখানের দূরত্ব বা মার্জিন (Margin) সর্বোচ্চ করে উত্তল অপ্টিমাইজেশনের মাধ্যমে বিশ্বস্ততম সমাধান নিশ্চিত করে।

১. জ্যামিতিক মার্জিনের ধারণা

ধরা যাক ট্রেনিং ডেটা $(x_i, y_i)$ রৈখিকভাবে বিভাজ্য, যেখানে $y_i in {-1, +1}$। একটি হাইপারপ্লেন সংজ্ঞায়িত হয় $w cdot x + b = 0$ দ্বারা। যেকোনো ডেটা পয়েন্ট থেকে এই হাইপারপ্লেনের লম্ব ইউক্লিডীয় দূরত্ব হলো:

$$gamma_i = frac{y_i(w cdot x_i + b)}{|w|}$$

সবচেয়ে কাছের ডেটা পয়েন্ট থেকে হাইপারপ্লেনের দূরত্বই হলো জ্যামিতিক মার্জিন ($gamma$)। ভ্যাপনিক এমন একটি হাইপারপ্লেন খুঁজলেন যা এই ন্যূনতম দূরত্বকে সর্বোচ্চ করে:

$$max_{w, b} min_{i} frac{y_i(w cdot x_i + b)}{|w|}$$

ক্যানোনিকাল স্কেলিং অনুযায়ী সবচেয়ে কাছের বিন্দুর জন্য $y_i(w cdot x_i + b) = 1$ ধরে নিলে মার্জিনের মান দাঁড়ায় $frac{1}{|w|}$। সুতরাং মার্জিন সর্বোচ্চ করা মানে হলো $frac{1}{2} |w|^2$-কে সর্বনিম্ন করা।

২. প্রাইমাল উত্তল কোয়াড্রেটিক সমস্যা

এখান থেকেই তৈরি হয় এসভিএম-এর মূল অবজেক্টিভ ফাংশন:

$$min_{w, b} frac{1}{2} |w|^2 quad text{শর্ত:} quad y_i(w cdot x_i + b) ge 1 quad forall i$$

এই সমীকরণটির গাণিতিক সৌন্দর্য অপরিসীম: লক্ষ্য ফাংশনটি কঠোরভাবে উত্তল এবং শর্তগুলো রৈখিক। নিউরাল নেটওয়ার্কের মতো এতে কোনো লোকাল ট্র্যাপ বা স্যাডল পয়েন্ট থাকে না—এর একটিই অনন্য বৈশ্বিক সমাধান থাকে যা নিখুঁতভাবে নির্ণয় করা সম্ভব।

৩. ল্যাগ্রাঞ্জিয়ান ডুয়াল ও কেকেটি শর্ত

শর্তযুক্ত সমস্যা সমাধানের জন্য আমরা ল্যাগ্রাঞ্জ গুণক $alpha_i ge 0$ যুক্ত করে ডুয়াল সমীকরণে রূপান্তর করি:

$$mathcal{L}(w, b, alpha) = frac{1}{2} |w|^2 – sum_{i=1}^n alpha_i left[ y_i(w cdot x_i + b) – 1 right]$$

প্রথম ডেরিভেটিভ শূন্য ধরে পাই $w = sum_{i=1}^n alpha_i y_i x_i$ এবং $sum alpha_i y_i = 0$। এগুলো ল্যাগ্রাঞ্জিয়ানে প্রতিস্থাপন করলে পাওয়া যায় সুবিখ্যাত ডুয়াল অপ্টিমাইজেশন সমস্যা:

$$max_alpha sum_{i=1}^n alpha_i – frac{1}{2} sum_{i,j} alpha_i alpha_j y_i y_j (x_i cdot x_j) quad text{শর্ত:} quad alpha_i ge 0, quad sum alpha_i y_i = 0$$

লক্ষ করুন, ডুয়াল সমীকরণে ডেটা পয়েন্টগুলো কেবল পরস্পরের ডট প্রোডাক্ট ($x_i cdot x_j$) হিসেবে উপস্থিত থাকে—যা পরবর্তীতে কার্নেল ট্রিকের জন্ম দেয়!

৪. স্পার্স সৌন্দর্যের প্রতীক: সাপোর্ট ভেক্টর

কারুশ-কুন-টাকার (KKT) কমপ্লিমেন্টারি স্ল্যাকনেস শর্তটি হলো:

$$alpha_i left[ y_i(w cdot x_i + b) – 1 right] = 0$$

এর এক গভীর জ্যামিতিক তাৎপর্য রয়েছে:

  • যেসব ডেটা পয়েন্ট মার্জিনের বাইরে নিরাপদে অবস্থান করছে ($y_i(w cdot x_i + b) > 1$), তাদের জন্য $alpha_i = 0$ হতে বাধ্য।
  • কেবলমাত্র যেসব পয়েন্ট সরাসরি মার্জিনের সীমানায় অবস্থান করছে ($y_i(w cdot x_i + b) = 1$), তাদের জন্যই $alpha_i > 0$ হতে পারে।

এই সীমানার বিন্দুগুলোকেই বলা হয় সাপোর্ট ভেক্টর (Support Vectors)। যেহেতু $w = sum alpha_i y_i x_i$, তাই সম্পূর্ণ সিদ্ধান্ত রেখাটি নির্ভর করে কেবল এই অল্প কয়েকটি সাপোর্ট ভেক্টরের ওপর! বাকি সব ডেটা মুছে ফেললেও হাইপারপ্লেন বিন্দুমাত্র পরিবর্তিত হবে না।

৫. সফট মার্জিন ও স্ল্যাক ভেরিয়েবল

বাস্তব ডেটায় কিছুটা নয়েজ থাকতে পারে। এর জন্য স্ল্যাক ভেরিয়েবল $xi_i ge 0$ এবং পেনাল্টি প্যারামিটার $C$ যুক্ত করা হয়, যা ডুয়াল সমীকরণে রূপ নেয় একটি বক্স কনস্ট্রেইন্টে: $0 le alpha_i le C$। মার্জিনের এই অনন্য গাণিতিক বিশুদ্ধতার কারণেই প্রায় দুই দশক ধরে সাপোর্ট ভেক্টর মেশিন গোটা বিশ্বের মেশিন লার্নিং গবেষণায় অবিসংবাদিত রাজত্ব করেছিল।