অ্যাক্টিভেশন ফাংশন
Activation Function কী?
প্রতিটি নিউরনের আউটপুটে বসানো একটি function — যা non-linearity যোগ করে। এটাই মডেলকে complex pattern শিখতে সাহায্য করে।
জনপ্রিয় Activation Functions
১. Sigmoid
Output 0 থেকে 1-এর মধ্যে। Binary classification-এর শেষ layer-এ ব্যবহৃত। সমস্যা — gradient খুব ছোট হয়ে যায় ("vanishing gradient")।
def sigmoid(x):
return 1 / (1 + np.exp(-x))২. Tanh
Output -1 থেকে 1। Sigmoid-এর চেয়ে ভালো (zero-centered), কিন্তু vanishing gradient সমস্যা থেকেই যায়।
৩. ReLU — সবচেয়ে জনপ্রিয়
খুব সরল — negative হলে 0, positive হলে অপরিবর্তিত। দ্রুত compute হয়, vanishing gradient সমস্যা নেই। বর্তমানে hidden layer-এর জন্য default পছন্দ।
def relu(x):
return np.maximum(0, x)৪. Leaky ReLU
ReLU-এর "dying ReLU" সমস্যা সমাধান করে — negative side-এ একটু gradient রাখে।
৫. Softmax — multi-class output
Multi-class classification-এর শেষ layer। সব output-এর যোগফল 1 — probability distribution।
def softmax(z):
e = np.exp(z - np.max(z))
return e / e.sum()তুলনা — কোনটা কখন?
Visualization — সব একসাথে
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-5, 5, 200)
plt.plot(x, 1/(1+np.exp(-x)), label="Sigmoid")
plt.plot(x, np.tanh(x), label="Tanh")
plt.plot(x, np.maximum(0, x), label="ReLU")
plt.plot(x, np.where(x>0, x, 0.01*x), label="Leaky ReLU")
plt.legend(); plt.grid(True); plt.show()সাধারণ ভুল ধারণা
- Hidden layer-এ Sigmoid ব্যবহার — vanishing gradient সমস্যা।
- Output layer-এ ReLU — probability পাওয়া যাবে না।
- Multi-class output-এ Sigmoid — Softmax ব্যবহার করুন।
অনুশীলন
১. উপরের সব function plot করুন এবং তাদের derivative-ও plot করুন।
২. softmax([1, 2, 3]) হাতে calculate করে verify করুন।
মিনি প্রজেক্ট
x * sigmoid(x) — এটার নাম Swish!)। Plot করে দেখুন কেমন দেখতে।ইন্টারভিউ প্রশ্ন
- Activation function কেন non-linear হতে হয়?
- Vanishing gradient সমস্যা কী?
- ReLU-এর সুবিধা ও অসুবিধা।
- Sigmoid ও Softmax-এর পার্থক্য।
সারসংক্ষেপ
- Activation = নেটওয়ার্কে non-linearity আনে।
- ReLU = hidden layer-এর default। Softmax = multi-class output।
- পরের অধ্যায়ে দেখব নেটওয়ার্ক কীভাবে input থেকে output বের করে — Forward Propagation।