Logistic Regression এর গাণিতিক ধারণা

Logistic Regression এর মৌলিক ধারণা - পাইথনে লজিস্টিক রিগ্রেশন (Logistic Regression in Python) - Machine Learning

382

লজিস্টিক রিগ্রেশন একটি সুপারভাইজড মেশিন লার্নিং অ্যালগরিদম যা ক্লাসিফিকেশন সমস্যা সমাধানে ব্যবহৃত হয়। যদিও এটি রিগ্রেশন মডেল নামে পরিচিত, তবে এটি মূলত ক্লাসিফিকেশন মডেল এবং বাইনারি ক্লাসিফিকেশন বা মাল্টিক্লাস ক্লাসিফিকেশন সমস্যায় ব্যবহৃত হয়।

লজিস্টিক রিগ্রেশন মূলত সিগময়েড ফাংশন বা লজিস্টিক ফাংশন ব্যবহার করে, যা একটি প্রোবাবিলিটি (সম্ভাবনা) প্রদান করে 0 থেকে 1 এর মধ্যে। এর মাধ্যমে কোন ক্লাসে (যেমন 0 বা 1) একটি ইনপুট ডেটা শ্রেণীবদ্ধ করা হয়।


1. লজিস্টিক রিগ্রেশন এর ধারণা

লজিস্টিক রিগ্রেশন একটি লিনিয়ার মডেল, তবে এটি সরাসরি আউটপুট হিসাবে একটি নির্দিষ্ট সংখ্যা (যেমন 0 বা 1) দেয় না। বরং, এটি একটি প্রোবাবিলিটি প্রদান করে, যেটি পরবর্তীতে 0 বা 1 হিসাবে ক্লাসিফাই করা হয়।

লজিস্টিক রিগ্রেশন মডেলটির গাণিতিক ফর্ম:

h(x)=11+ezh(x) = \frac{1}{1 + e^{-z}}

এখানে:

  • h(x)h(x) হল প্রোবাবিলিটি, যা 0 এবং 1 এর মধ্যে থাকে।
  • z=w0+w1x1+w2x2+...+wnxnz = w_0 + w_1x_1 + w_2x_2 + ... + w_nx_n হল ইনপুট ফিচার এবং তাদের সাথে সম্পর্কিত ওজন (weights)

যেহেতু zz একটি লিনিয়ার সমীকরণ, সেজন্য মডেলটি একটি লিনিয়ার সিগময়েড ফাংশন তৈরি করে, যা ইনপুটের উপর ভিত্তি করে 0 এবং 1 এর মধ্যে প্রোবাবিলিটি প্রদান করে।


2. সিগময়েড ফাংশন:

সিগময়েড ফাংশন (যা লজিস্টিক ফাংশনও বলা হয়) আউটপুটকে 0 এবং 1 এর মধ্যে সীমাবদ্ধ রাখে। এর গাণিতিক রূপ:

Sigmoid(z)=11+ez\text{Sigmoid}(z) = \frac{1}{1 + e^{-z}}

এটি একটি "S"-আকৃতির (sigmoid) কার্ভ তৈরি করে যা প্রোবাবিলিটি হিসাব করে। এই প্রোবাবিলিটি পরে 0 বা 1 হিসেবে শ্রেণী নির্ধারণ করতে ব্যবহার করা হয়।

  • যদি h(x)>0.5h(x) > 0.5, তাহলে আউটপুট 1 (পজিটিভ ক্লাস) হবে।
  • যদি h(x)<0.5h(x) < 0.5, তাহলে আউটপুট 0 (নেগেটিভ ক্লাস) হবে।

3. লজিস্টিক রিগ্রেশন মডেলের লস ফাংশন

লজিস্টিক রিগ্রেশন মডেলটির পারফরম্যান্স মূল্যায়ন করতে লগ লস ফাংশন বা ক্রস এন্ট্রপি লস ব্যবহার করা হয়, যা গাণিতিকভাবে নিম্নরূপ:

J(w)=1mi=1m[y(i)log(h(x(i)))+(1y(i))log(1h(x(i)))]J(w) = - \frac{1}{m} \sum_{i=1}^{m} \left[y^{(i)} \log(h(x^{(i)})) + (1 - y^{(i)}) \log(1 - h(x^{(i)}))\right]

এখানে:

  • mm হল ট্রেনিং ডেটার সংখ্যা।
  • y(i)y^{(i)} হল প্রকৃত আউটপুট (ট্যাগ)।
  • h(x(i))h(x^{(i)}) হল মডেল দ্বারা প্রেডিক্ট করা প্রোবাবিলিটি।
  • log\log হল লগারিদমিক ফাংশন।

এই লস ফাংশনটি প্রতিটি প্রেডিকশন এবং প্রকৃত আউটপুটের মধ্যে পার্থক্যকে গণনা করে এবং সেটি মিনিমাইজ করার চেষ্টা করে যাতে মডেলটি সঠিকভাবে প্রেডিকশন করতে পারে।


4. লজিস্টিক রিগ্রেশন মডেল ট্রেনিং

লজিস্টিক রিগ্রেশন মডেলটি গ্রেডিয়েন্ট ডিসেন্ট বা অন্য কোনো অপটিমাইজেশন অ্যালগরিদম ব্যবহার করে প্রশিক্ষিত হয়। এর উদ্দেশ্য হল লস ফাংশনের মান কমানো (অথবা মিনিমাইজ করা) যাতে মডেলটির ওজনের মান এমনভাবে আপডেট হয় যে, এটি ডেটার জন্য সঠিক প্রেডিকশন করতে পারে।

গ্রেডিয়েন্ট ডিসেন্ট এর আপডেট রুল:

wj:=wjαJ(w)wjw_j := w_j - \alpha \frac{\partial J(w)}{\partial w_j}

এখানে:

  • wjw_j হল ফিচার jj-এর জন্য ওজন।
  • α\alpha হল লার্নিং রেট, যা আপডেটের গতি নির্ধারণ করে।
  • J(w)wj\frac{\partial J(w)}{\partial w_j} হল লস ফাংশনের প্রতি ওজনের গ্রেডিয়েন্ট, যা মডেলটি শেখার জন্য ব্যবহার করে।

5. মডেল প্রেডিকশন

মডেলটি প্রেডিকশন করার জন্য স্কোরিং ফাংশন ব্যবহার করে:

y=round(h(x))y = \text{round}(h(x))

যেখানে:

  • h(x)h(x) হল প্রোবাবিলিটি, যা সিগময়েড ফাংশন থেকে বের করা হয়।
  • round() ফাংশনটি প্রোবাবিলিটিকে 0 বা 1 এ রূপান্তরিত করে, যেখানে h(x)>0.5h(x) > 0.5 হলে 1 (পজিটিভ ক্লাস), আর h(x)<0.5h(x) < 0.5 হলে 0 (নেগেটিভ ক্লাস)।

সারাংশ

লজিস্টিক রিগ্রেশন হল একটি লিনিয়ার মডেল যা সিগময়েড ফাংশন ব্যবহার করে একটি প্রোবাবিলিটি নির্ধারণ করে। এই প্রোবাবিলিটি 0 এবং 1 এর মধ্যে থাকে এবং এটি ক্লাসিফিকেশন টাস্কের জন্য ব্যবহৃত হয়। লগ লস ফাংশন বা ক্রস এন্ট্রপি লস ব্যবহার করে মডেলটি প্রশিক্ষিত হয় এবং গ্রেডিয়েন্ট ডিসেন্ট অ্যালগরিদমের মাধ্যমে ওজন আপডেট করা হয়।

Content added By
Promotion

Are you sure to start over?

Loading...