LeNet and AlexNet
3.4.6· AI-ML › Convolutional Neural Networks
Overview
LeNet aur AlexNet landmark convolutional neural network architectures hain jo demonstrate karte hain ki CNNs image recognition tasks pe breakthrough performance achieve kar sakte hain. LeNet (1998) ne handwritten digits pe concept prove kiya, jabki AlexNet (2012) ne massive performance gap ke saath ImageNet jeetkar deep learning revolution start kar diya.

LeNet-5 Architecture
Layer Sequence:
- Input: grayscale image
- C1 (Conv): 6 filters of , stride 1 → Output:
- S2 (Pool): average pooling, stride 2 → Output:
- C3 (Conv): 16 filters of , stride 1 → Output:
- S4 (Pool): average pooling, stride 2 → Output:
- C5 (Conv): 120 filters of → Output: (effectively FC)
- F6 (FC): 84 neurons
- Output (FC): 10 neurons (digit classes 0-9)
Total Parameters: ~60,000
Output Dimensions Derive Karna
Convolution/pooling ke baad spatial dimension yeh formula follow karta hai:
Derivation:
Yeh formula kyun?
- Kernel positions horizontally slide kar sakta hai
- Har position ek output value produce karta hai
- 6 filters ke saath, output hoga
Average pooling kyun? LeNet ne average pooling use kiya (max nahi):
- Computation: 1998 mein computation expensive tha; averaging, max se sasti thi
- Gradient flow: Averaging saare inputs mein gradients distribute karta hai; max sirf sabse bade mein
- Smoothing: Averaging gentle downsampling provide karta hai
AlexNet Architecture
Layer Sequence:
- Input: RGB image
- Conv1: 96 filters of , stride 4, ReLU →
- MaxPool1: , stride 2 →
- Conv2: 256 filters of , padding 2, ReLU →
- MaxPool2: , stride 2 →
- Conv3: 384 filters of , padding 1, ReLU →
- Conv4: 384 filters of , padding 1, ReLU →
- Conv5: 256 filters of , padding 1, ReLU →
- MaxPool3: , stride 2 →
- FC6: 4096 neurons, ReLU, Dropout(0.5)
- FC7: 4096 neurons, ReLU, Dropout(0.5)
- FC8: 1000 neurons (ImageNet classes), Softmax
Total Parameters: ~60 million
AlexNet Ke Key Innovations
Ruko, AlexNet documentation kyun kehta hai?
- Implementation detail: AlexNet ka actual Conv1 implicit padding use karta hai jo 1 pixel add karta hai
- Effective input ke saath:
- Papers mein "224" ek simplification hai; code mein 227 use hota hai
Itna bada stride (4) kyun?
- Aggressive downsampling: Computation turant kam karta hai
- Large receptive field: kernel with stride 4 input ke bade regions cover karta hai
- Trade-off: Spatial detail kho jaata hai, lekin AlexNet depth se compensate karta hai
1. ReLU Activation
ReLU faster kyun hai: Gradient flow ko consider karo.
Tanh gradient: Bade ke liye, , toh gradient (vanishing gradient).
ReLU gradient:
Key insight: ReLU gradient ya toh 1 ya 0 hota hai, positive inputs ke liye kabhi near-zero nahi. Isse hota hai:
- 6× faster convergence (Krizhevsky ne empirically measure kiya)
- Positive activations ke liye gradient saturation nahi
- Simpler computation (sirf thresholding)
Trade-off: "Dying ReLU" problem jab neurons hamesha 0 output karte hain (baad mein Leaky ReLU se address kiya gaya).
2. Dropout Regularization
Forward pass with dropout: jahan (probability se 1, probability se 0).
Test time (inference):
Test time pe se scale kyun karte hain?
- Training: Average par, fraction neurons active hote hain
- Test: Saare neurons active hote hain, toh outputs times bade ho jaate hain
- Solution: Expected training activation scale se match karne ke liye se multiply karo
Dropout kyun kaam karta hai:
- Ensemble effect: Alag sub-networks train karna (jaise neurons ke liye networks train karna)
- Co-adaptation prevention: Neurons ko robust features independently seekhne ke liye force karta hai
- AlexNet ne FC6 aur FC7 mein use kiya
3. Local Response Normalization (LRN)
jahan:
- = channel mein position par neuron ki activity
- = normalization window (AlexNet: )
- (hyperparameters)
Intuition: Bade activations wale neurons nearby channels ko suppress karte hain (biological lateral inhibition ko mimic karta hai).
Kyun thoda kaam aaya: Feature maps ke beech competition create kiya, generalization ~1% improve hua.
Ab abandoned kyun hai: Batch Normalization (2015) kaafi zyada effective hai. Modern networks LRN use nahi karte.
4. Data Augmentation
AlexNet ne aggressive data augmentation pioneer kiya:
Technique 1: Random Crops
- images se random patches extract karo
- Test time pe 5 crops (corners + center) + unke horizontal flips = 10 crops extract karo
- 10 crops pe predictions average karo
Technique 2: PCA Color Augmentation
- Training set ke RGB values pe PCA perform karo
- RGB values mein principal components ke multiples add karo: jahan = principal components, = eigenvalues,
Yeh kyun kaam karta hai: Lighting aur color mein natural variations capture karta hai jabki object identity preserve rehti hai.
Architectural Comparison
| Aspect | LeNet-5 | AlexNet | |--------|------| | Year | 1998 | 2012 | | Input Size | grayscale | RGB | | Depth | 7 layers | 8 layers | | Parameters | ~60K | ~60M (1000× bada) | | Activation | / sigmoid | ReLU | | Pooling | Average pooling | Max pooling | | Regularization | Weight decay | Dropout + Data Aug | | Normalization | None | LRN | | Hardware | CPU | 2× GTX 580 GPUs | | Dataset | MNIST (60K images) | ImageNet (1.2M images) | | Classes | 10 | 1000 |
- Compute: GPUs ne 1000× bade networks train karna feasible bana diya
- Data: ImageNet ne 20× zyada training data diya
- Algorithms: ReLU + Dropout ne vanishing gradients aur overfitting solve kiya
- Belief: Community ko nahi lagta tha ki deep networks kaam karenge jab tak AlexNet ne prove nahi kiya
Worked Examples
Given:
- 6 filters of size
- Input: 1 channel (grayscale)
- Output: 6 feature maps
Calculation: Har filter mein weights plus 1 bias hote hain. Ek filter ke liye total: parameters. 6 filters ke liye total: parameters.
Yeh step kyun? Har filter poore input par slide karta hai, same 26 parameters har jagah share karte hue (parameter sharing overfitting aur computation dono kam karta hai).
Given:
- Input: (flatten hokar neurons)
- Output: 4096 neurons
Calculation: 4096 output neurons mein se har ek saare 9216 input neurons se connect hai:
Yeh kyun matters karta hai? FC6 akele AlexNet ke 62% total parameters contain karta hai. Isliye modern architectures (ResNet, VGG) FC layers minimize karte hain aur global average pooling use karte hain.
Given:
- Conv1: kernel, stride 4
Calculation: Conv1 ka ek neuron input mein region dekhta hai. Input mein receptive field directly pixels hai.
Conv2 neuron ke liye:
- Conv2, Conv1 feature map mein dekhta hai
- Conv1 ka har pixel stride 4 ke saath input region se correspond karta hai
- Receptive field: pixels
Receptive field ka general formula: jahan = layer par kernel size, = layer par stride.
Yeh kyun matters karta hai? Deep networks input ke bade regions dekhte hain. Conv5 mein ek neuron input region dekhta hai, jo bade objects ko recognize karne deta hai.
Common Mistakes
Kyun sahi lagta hai: Zyada parameters = complex patterns seekhne ki zyada capacity.
Fix:
- Parameters tabhi kaam aate hain jab tumhare paas overfitting bachne ke liye enough training data ho
- LeNet on ImageNet severely overfit karega (60K params, 1.2M images = underfitting)
- AlexNet on MNIST severely overfit karega (60M params, 60K images = wasted capacity)
- Rule: Model capacity ko dataset size se match karo. Bade models ko chhote datasets pe train karne ke liye regularization (dropout, data aug) use karo.
Kyun sahi lagta hai: Network "seekh" raha hai, toh use kisi bhi architecture mein adapt ho jaana chahiye.
Fix:
- Stride information loss control karta hai. Bade strides (AlexNet Conv1 stride 4) aggressively downsample karte hain; information permanently kho jaati hai.
- Padding spatial dimension preservation control karta hai. Padding ke bina, spatial size har layer mein shrink hoti hai; padding ke saath, yeh controlled rehti hai.
- Depth par impact: Padding ke bina, kernels ke saath input ~110 layers mein tak pahunch jaata hai. Padding ke saath, aap arbitrarily deep ja sakte ho (ResNet ke 152+ layers hain).
Example: Agar tum har jagah stride 4 use karo, tumhara network spatial information bahut jaldi kho dega aur fine-grained features seekhne mein fail karega.
Kyun sahi lagta hai: AlexNet ne LRN ke saath ImageNet jeeta, toh yeh important hona chahiye.
Fix:
- LRN ne AlexNet mein sirf ~1% improvement diya
- Batch Normalization (2015) kaafi zyada superior hai: faster training, better generalization, 10-30% error reduction
- Modern practice: Ab koi LRN use nahi karta. Uski jagah Batch Norm use karo.
- Lesson: Purane papers ke architectural details ko blindly mat copy karo. Modern best practices use karo.
Active Recall Questions
Recall LeNet aur AlexNet ko ek 12-saal ke bachche ko explain karo
Socho tum ek computer ko handwritten numbers recognize karna sikha rahe ho. Tum use bol sakte ho "yahan ek curve dekho, wahan ek seedhi line dekho," lekin yeh program karna har us tarike ke liye bahut mushkil hai jisme log likhte hain.
Iske bajaye, LeNet (1998 mein banaya gaya) ek smart trick use karta hai: yeh image ko layers mein dekhta hai. Pehli layer simple cheezein dhundhti hai jaise edges (horizontal lines, vertical lines, curves). Doosri layer un edges ko combine karti hai thodi complex shapes banane ke liye (jaise "5" ke upar ka hissa ya "6" mein loop). Inhe stack karke, computer automatically digits recognize karna seekhta hai, bina koi rules program kiye!
LeNet simple images (jaise MNIST digits) ke liye bahut achha kaam karta tha, lekin real photos mein cats, dogs, cars recognize karne ka kya? Woh kaafi mushkil hai kyunki photos badi hoti hain, zyada colorful hoti hain, aur kaafi variety hoti hai.
2012 mein, AlexNet ne yeh solve kiya network ko bahut bada aur deeper banake. Usne use kiya:
- Zyada layers (8 instead of 5) zyada complex patterns seekhne ke liye
- Faster math (ReLU instead of tanh, jaise slow division se fast addition pe switch karna)
- Dropout (training ke dauran neurons ko randomly band karna, jaise kisi handicap ke saath koi sport practice karna taaki tum zyada strong ho jao)
- Data tricks (images flip karna, colors thoda change karna taaki computer ko zyada examples dikhao)
AlexNet itna better tha baaki sab se ki usne duniya ko shock kar diya aur "deep learning revolution" start kar di. Ab, similar ideas face recognition, self-driving cars, aur AI assistants mein kaam aati hain!
AlexNet ke 8 layers ke liye: "Cats Can Climb Canyon Cliffs For Fun Finally" (Conv, Conv, Conv, Conv, Conv, FC, FC, FC)
Connections
Prerequisites:
- Convolutional Layers — Filters, stride, padding ko samajhna
- Pooling Layers — Max pooling vs average pooling
- Activation Functions — ReLU, tanh, sigmoid
- Backpropagation — Networks mein gradients kaise flow karte hain
Related Concepts:
- VGGNet — Uniform filters ke saath deeper architecture (2014)
- Batch Normalization — LRN ko replace kiya, layer inputs normalize karta hai (2015)
- Dropout — AlexNet ki key regularization technique
- ResNet — Skip connections 100+ layer networks enable karte hain (2015)
- ImageNet Dataset — Woh benchmark jo AlexNet ne jeet liya
Applications:
- Transfer Learning — Naye tasks ke liye pretrained AlexNet/VGG use karna
- Object Detection — R-CNN ne AlexNet features pe build kiya
- Image Classification — Saare modern architectures ki foundation
#flashcards/ai-ml
LeNet-5 ka input size aur parameters ki sankhya kya hai? :: Input: grayscale image. Parameters: approximately 60,000.