Ek fully-connected layer se shuru karo: har output unit yp=∑qWpqxq+bp. Ek 100×100 image jo ek 100×100 hidden layer ko feed kar rahi hai, usmein 108 weights hote hain. Do problems hain:
Koi spatial prior nahi — pixel (0,0) aur (99,99) ko independent weights milte hain, isliye net yeh "jaan" nahi sakta ki nearby pixels zyada matter karte hain.
Koi reuse nahi — ek location par seekha gaya feature har jagah dobara seekhna padega.
W par do constraints lagao:
Locality: Wpq=0 unless q, p ke ek chhote k×k neighbourhood mein ho.
Weight sharing: samek2 weights har output p ke liye use hote hain.
Inn constraints ko yp=∑qWpqxq mein substitute karne par giant matrix ek single tiny kernel K mein collapse ho jaata hai jo image ke upar slide karta hai — aur convolution formula upar wala nikal aata hai. Convolution sirf ek constrained fully-connected layer hai. Yahi hai WHY.
Real images mein C channels hote hain (RGB, ya stacked physics fields). Tab ek filter k×k×C hota hai; tum channels ke upar bhi sum karte ho. F filters ke saath output mein F channels hote hain. Parameters=F(k2C+1).
(32−5+4)/1+1=32 (padding size preserve karta hai).
Max-pool vs average-pool intuition?
Max sabse strong "feature present hai?" signal rakhta hai; average smooth/overall magnitude retain karta hai.
Recall Feynman: 12-saal ke bachche ko explain karo
Socho tumhare paas ek chhoti stamp hai jis par ek pattern bana hai, aur stickers ki ek badi sheet hai. Tum same stamp ko poori sheet par dabate ho aur mark karte ho jahan bhi pattern match karta hai — yeh stamping convolution hai, aur ek hi stamp ko har jagah use karne ka matlab hai ki tumhe har spot ke liye alag rule yaad nahi karna. Phir tum marked sheet ko chhote 2×2 squares mein dekhte ho aur, har square mein, sirf sabse loud mark rakhte ho — yahi max-pooling hai. Ab sheet chhoti hai aur tumhe abhi bhi yaad hai ki kahan kaisi cheezein hain, chahe woh thodi si hil bhi gayi hon. Bahut sari stamps aur shrinks stack karo, aur computer wing mein cracks ya sky se runways recognize karna seekh jaata hai.