🧮ML গণিত গুরু
calculusমাঝারি14 মিনিট

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 পাওয়া যায়।

Chain Rule — বাইরের derivative × ভিতরের derivative
\[\frac{df}{dx} = \frac{df}{du} \cdot \frac{du}{dx}\]

ব্যাখ্যা

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 করে।

\[f(x) = \sin(x^2) = \underbrace{\sin}_{\text{বাইরে}}(\underbrace{x^2}_{\text{ভিতরে}})\]

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 করো না — বাইরে থেকে শুরু কইরা ভিতরে যাও!

\[\frac{d}{dx}[\sin(x^2)] = \cos(x^2) \cdot 2x = 2x\cos(x^2)\]

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!

\[\frac{d}{dx}[f(g(h(x)))] = f'(g(h(x))) \cdot g'(h(x)) \cdot h'(x)\]

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!

\[\frac{df}{dx} = \frac{df}{du} \cdot \frac{du}{dv} \cdot \frac{dv}{dx}\]

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)))

\[\frac{da}{dw} = 0.023, \quad \frac{dc}{da} = 0.9, \quad \frac{db}{dc} = \frac{2c}{10} = \frac{c}{5}\]

Step 2: Chain Rule apply কর

w=220-এ: a = 0.023×220 = 5.06, c = 0.9×5.06 = 4.554

\[\frac{db}{dw} = \frac{db}{dc} \cdot \frac{dc}{da} \cdot \frac{da}{dw} = \frac{4.554}{5} \times 0.9 \times 0.023\]

Step 3: Calculate

সব গুণ কর!

\[\frac{db}{dw} = 0.9108 \times 0.9 \times 0.023 = 0.01885\]
উত্তর:

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!

#chain-rule#composite-function#backpropagation#vanishing-gradient#autograd#residual-connection