CoolFace
Datasetpublic

Shanmuk4622/E2AM_ResNet50

E2AM Ablation Results: ResNet-50 Energy-aware training ablation study for ResNet-50 across three image-classification datasets: CIFAR-10, CIFAR-100, and Tiny-ImageNet. Each dataset has 15 training variants (8 individual-method M0..M7, 7 cumulative ablation C0..C6) at 50 epochs, plus a 5-variant deployment pipeline (FP32 baseline, structured pruning, pruning+finetune, INT8 quantization, pruned+INT8). Status: 45 completed variants, 0 partial. Quick links… See the full description on the dataset page: https://huggingface.co/datasets/Shanmuk4622/E2AM_ResNet50.

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
2likes1kdownloads
Dataset Card

E2AM Ablation Results: ResNet-50

Energy-aware training ablation study for ResNet-50 across three image-classification datasets: CIFAR-10, CIFAR-100, and Tiny-ImageNet.

Each dataset has 15 training variants (8 individual-method M0..M7, 7 cumulative ablation C0..C6) at 50 epochs, plus a 5-variant deployment pipeline (FP32 baseline, structured pruning, pruning+finetune, INT8 quantization, pruned+INT8).

Status: 45 completed variants, 0 partial.

Quick links

Headline results

DatasetBest variantTop-1Top-5Energy (kWh)CO₂ (kg)Time (sec)
CIFAR-10M5adaptivelr_only0.93970.15560.07397368
CIFAR-100M5adaptivelr_only0.74820.93580.15870.07547578
Tiny-ImageNetC5cacheampgradaccumadaptivelr_l10.67420.86510.52310.248524653

Cross-dataset comparison

How the same training variants behave across CIFAR-10, CIFAR-100, and Tiny-ImageNet.

Accuracy By Variant Across Datasets

[image]

Energy By Variant Across Datasets

[image]

Per-dataset results

CIFAR-10

M-matrix (individual methods)

VariantEpochsTop-1Top-5Energy (kWh)CO₂ (kg)Time (s)Status
M0baselinefp32500.82980.15900.07557588completed
M1cacheonly500.85430.15610.07417369completed
M2amponly500.87440.06220.02953006completed
M3gradaccum_only500.87200.15520.07377332completed
M4l1sparsity_only500.83870.15780.07507447completed
M5adaptivelr_only500.93970.15560.07397368completed
M6eagonly500.84520.16110.07657654completed
M7fulle2am500.90880.06640.03153192completed

C-matrix (cumulative ablation)

VariantEpochsTop-1Top-5Energy (kWh)CO₂ (kg)Time (s)Status
C0_baseline500.84420.17470.08308464completed
C1_cache500.84520.17520.08328495completed
C2cacheamp500.85950.06630.03153189completed
C3cacheamp_gradaccum500.87000.07130.03393479completed
C4cacheampgradaccumadaptivelr500.90840.07110.03383476completed
C5cacheampgradaccumadaptivelr_l1500.91510.07180.03413504completed
C6fulle2am500.91510.07170.03403503completed

[image]

[image]

[image]

[image]

CIFAR-100

M-matrix (individual methods)

VariantEpochsTop-1Top-5Energy (kWh)CO₂ (kg)Time (s)Status
M0baselinefp32500.59130.84460.15690.07457414completed
M1cacheonly500.59470.85820.15670.07447415completed
M2amponly500.60810.86520.07020.03343377completed
M3gradaccum_only500.62280.87660.15590.07417380completed
M4l1sparsity_only500.58970.85760.15810.07517475completed
M5adaptivelr_only500.74820.93580.15870.07547578completed
M6eagonly500.58210.84400.15650.07437412completed
M7fulle2am500.70080.90870.06480.03083123completed

C-matrix (cumulative ablation)

VariantEpochsTop-1Top-5Energy (kWh)CO₂ (kg)Time (s)Status
C0_baseline500.58220.86280.16570.07877918completed
C1_cache500.59160.85050.16210.07707754completed
C2cacheamp500.63070.86650.06700.03183233completed
C3cacheamp_gradaccum500.63060.87610.06590.03133188completed
C4cacheampgradaccumadaptivelr500.69180.90420.06590.03133190completed
C5cacheampgradaccumadaptivelr_l1500.67530.89740.06670.03173225completed
C6fulle2am500.67530.89740.06700.03183224completed

[image]

[image]

[image]

[image]

Tiny-ImageNet

M-matrix (individual methods)

VariantEpochsTop-1Top-5Energy (kWh)CO₂ (kg)Time (s)Status
M0baselinefp32500.41870.66291.28320.609560871completed
M1cacheonly500.40270.66371.20880.574257541completed
M2amponly500.48890.74450.51280.243624268completed
M3gradaccum_only500.51410.75021.30580.620361979completed
M4l1sparsity_only500.41120.68741.23780.588058649completed
M5adaptivelr_only500.62430.84261.19170.566156539completed
M6eagonly500.39960.65431.26050.598759534completed
M7fulle2am500.66410.85800.54230.257625681completed

C-matrix (cumulative ablation)

VariantEpochsTop-1Top-5Energy (kWh)CO₂ (kg)Time (s)Status
C0_baseline500.41210.62621.37750.654365154completed
C1_cache500.42130.70071.31770.625962533completed
C2cacheamp500.49930.72110.49290.234122910completed
C3cacheamp_gradaccum500.55050.79800.50490.239823604completed
C4cacheampgradaccumadaptivelr500.66670.86070.54370.258325771completed
C5cacheampgradaccumadaptivelr_l1500.67420.86510.52310.248524653completed
C6fulle2am490.67160.86210.51630.245324352completed

[image]

[image]

[image]

[image]

Deployment results

See paper_tables/deployment_results_table.csv.

Methodology

Model: ResNet-50 (~23.5M params).

Training protocol: from scratch, SGD with momentum 0.9, weight decay 5e-4, initial LR 0.1, 50 epochs, 1 warmup epoch. All variants share the same protocol so ablation comparison stays apples-to-apples across the matrix.

Input: native dataset resolution upsampled to 32x32 in-model via nn.Upsample (FX-traceable to keep D3/D4 INT8 quantization possible).

Optimization toggles (the 5 individual methods and their cumulative combinations):

MethodMechanism
Tensor cacheTraining images held in RAM as a normalized float tensor
AMPtorch.cuda.amp.autocast + GradScaler
Grad accum (x2)Accumulate gradients across 2 mini-batches
L1 sparsityLambda * sum(w_i) added to loss with lambda=1e-8
Cosine LRlr(t) = lr_max 0.5 (1 + cos(pi*t/T))
EAG early-stopEnergy-Aware Gain: stop when accuracy gain per joule plateaus

Energy measurement: GPU power sampled at 1 Hz via nvidia-smi --query-gpu=power.draw. Energy = trapezoidal integration over power-vs-time. CO₂ = energy_kWh * 0.475 (global average grid intensity).

Hardware: Single NVIDIA T4 (14.5 GB) on Kaggle.

Repository structure

runs/
  cifar10/
  cifar100/
  tiny_imagenet/
    individual_methods/M0..M7/   (history.csv, metrics_summary.json,
                                  best_model.pt, last_model.pt, config.yaml)
    cumulative_ablation/C0..C6/  (same)
paper_tables/                     (6 unified CSV tables)
comparison_plots/<dataset>/       (per-dataset plots)
comparison_plots/cross_dataset/   (cross-dataset plots)
README.md                         (this file)

Reproducibility

Each variant directory has a config.yaml with the exact configuration used. To reproduce:

  1. 1.huggingface-cli download Shanmuk4622/E2AM_ResNet50 --repo-type dataset
  2. 2.Load the e2am.py library and call the appropriate config factory
  3. 3.Run e2am.train_one_run(cfg)

Limitations

  • Energy measurement is GPU-only (via nvidia-smi); CPU/memory power not included
  • Pruning is mask-based; no wall-clock speedup without sparsity-aware runtime
  • INT8 (D3/D4) is CPU FX static quantization (fbgemm); may fail on transformer blocks. Failures logged in metrics.json rather than crashing.
  • Single-T4 reproduction; multi-GPU not validated
  • SGD@0.1 is suboptimal for some architectures; the paper compares variant-to-variant deltas which remain meaningful regardless

Citation

bibtex
@misc{e2am_ablation_resnet50,
  title  = {E2AM: Energy-Aware Adaptive Model Training Ablation Study (ResNet-50)},
  author = {Shanmuk},
  year   = {2026},
  howpublished = {\url{https://huggingface.co/datasets/Shanmuk4622/E2AM_ResNet50}},
}

This README was auto-generated on 2026-07-02 08:14 UTC. Source repo: Shanmuk4622/E2AMResNet50_