SMAI A4: Multi-Layer Perceptron (ReLU 128-64)
This model repository contains the serialized parameters (.npz format) and architecture specifications for SMAI Assignment 4 (Monsoon 2026) at IIIT Hyderabad.
Model Architecture
- Input Dimension: $3072$ ($32 \times 32 \times 3$ flattened CIFAR-10 RGB pixels)
- Hidden Layer 1: $3072 \to 128$ (
Linear+ReLU) - Hidden Layer 2: $128 \to 64$ (
Linear+ReLU) - Output Layer: $64 \to 10$ (
Linear+Softmax/Cross-Entropy Loss) - Total Parameters: $402,250$
Preprocessing Information
- Standardization: Channel-wise mean and standard deviation computed strictly on the 36,000 training images and applied identically to test data.
- Channel Means:
[0.4914, 0.4822, 0.4465](normalized to $[0, 1]$ before scaling) - Channel Stds:
[0.2470, 0.2435, 0.2616]
- Channel Means:
- Dataset: CIFAR-10 (36,000 train / 12,000 val / 12,000 test stratified split)
Performance
- Validation Accuracy: $48.35%$
- Test Accuracy: $47.73%$ (NumPy) / $47.17%$ (PyTorch)
- Macro F1-Score: $0.4749$
Loading Instructions
The weights can be loaded using NumPy or the course repository's Model.load_from(path) API:
import numpy as np
data = np.load("MLP_ReLU_128_64.npz")
for k in data.files:
print(k, data[k].shape)