Chain Rule — চেইন রুল
Chain Rule
ফোন চার্জের Chain — Adapter থেকে Phone পর্যন্ত
ধর গুরু, তোর ফোন dead — চার্জ দিতে হইব। কিন্তু চার্জিং system-টা একটা chain! প্রথমে wall socket থেইকা adapter-এ 220V AC ঢুকে, adapter সেইটা convert করে 5V DC-তে, তারপর cable দিয়া phone-এ যায়, phone সেইটা battery-তে store করে। প্রতিটা step-এ voltage change হয়। তুই জানতে চাস — wall-এর voltage 1V বাড়ালে battery-তে কতটুকু extra charge যাইব? সোজা হিসাব করা যাইব না — কারণ মাঝখানে adapter আর cable-এর conversion আছে। তোরে chain ধইরা ধইরা হিসাব করতে হইব: wall → adapter → cable → battery। প্রতি step-এর change গুণ করলেই total change পাইবি!
এইটাই Chain Rule! যখন function-এর ভিতরে function থাকে (composite function), তখন বাইরের function-এর derivative আর ভিতরের function-এর derivative গুণ কর। Neural network-এ প্রতিটা layer একটা function — input → layer1 → layer2 → ... → output। Backpropagation হইল chain rule বারবার apply করা — output থেইকা input পর্যন্ত derivative-র chain!
সংজ্ঞা
Chain Rule বলে — composite function f(g(x))-এর derivative হইল বাইরের function-এর derivative গুণ ভিতরের function-এর derivative। মানে df/dx = df/du × du/dx, যেইখানে u = g(x)। প্রতিটা 'link' এর change গুণ কইরা total change পাওয়া যায়।
ব্যাখ্যা
Composite Function কী?
Function-এর ভিতরে function — এইটা composite function। যেমন f(x) = sin(x²)। এইখানে ভিতরে g(x) = x², বাইরে f(u) = sin(u)। প্রথমে x² হিসাব হয়, তারপর সেইটার sin নেওয়া হয়। Charging chain-এর মতো — প্রথমে adapter convert করে, তারপর cable pass করে।
Chain Rule Apply করা
f(x) = sin(x²)-এর derivative: বাইরের function sin(u)-এর derivative cos(u), ভিতরের function x²-এর derivative 2x। গুণ কর: cos(x²) × 2x = 2x·cos(x²)। Always ভিতরেরটা আগে differentiate করো না — বাইরে থেকে শুরু কইরা ভিতরে যাও!
Multiple Layers-এর Chain
তিনটা function chained থাকলে? f(g(h(x)))-এর derivative = f'(g(h(x))) × g'(h(x)) × h'(x)। চেইনের প্রতিটা link-এর derivative গুণ! Neural network-এ 100 layer থাকলে 100টা derivative গুণ হয় — এইটাই backpropagation!
Leibniz Notation-এ Chain Rule
df/dx = df/du × du/dx — দেখলে মনে হয় du 'cancel' হইতেছে, কিন্তু আসলে cancel হইতেছে না। এইটা শুধু মনে রাখার shortcut। তিনটা variable হইলে: df/dx = df/du × du/dv × dv/dx। Charging chain: dBattery/dWall = dBattery/dCable × dCable/dAdapter × dAdapter/dWall!
Phone Charging Chain Derivative
Wall voltage → Adapter output: a(w) = 0.023w (220V → 5V)। Adapter → Cable delivery: c(a) = 0.9a (10% loss)। Cable → Battery charge: b(c) = c² / 10। Wall voltage 220V-তে dBattery/dWall কত?
Step 1: প্রতিটা step-এর derivative বের কর
তিনটা function chain করা আছে: b(c(a(w)))
Step 2: Chain Rule apply কর
w=220-এ: a = 0.023×220 = 5.06, c = 0.9×5.06 = 4.554
Step 3: Calculate
সব গুণ কর!
dBattery/dWall ≈ 0.019। মানে wall voltage 1V বাড়ালে battery charge 0.019 unit বাড়বে। Chain-এর প্রতি step-এ কিছু loss হয় — adapter-এ conversion, cable-এ resistance। Neural network-এও তাই — deep network-এ gradient ছোট হইতে হইতে vanish হইয়া যায়!
ML-এ কোথায় লাগে?
মনে রাখার ট্রিক
Chain Rule = ফোন চার্জের chain। Wall → Adapter → Cable → Phone — প্রতি step-এর conversion rate গুণ কর total effect পাইতে। Neural network-এও — Layer1 → Layer2 → Layer3 → Loss — প্রতি layer-এর derivative গুণ = backpropagation!