pcr12's picture
Upload folder using huggingface_hub
59bb9e8 verified
|
Raw
History Blame Contribute Delete
1.98 kB
---
language: en
tags:
- ad-creative
- ctr-prediction
- survival-analysis
- multi-task-learning
- clip
- fatigue-prediction
license: mit
---
# Creative Intelligence Scorer
**Multi-Task Creative Lifespan Prediction** β€” predicts ad creative CTR score and
fatigue half-life from a raw image using a frozen CLIP backbone and a trainable
multi-task head.
## Architecture
```
Input image (224Γ—224 RGB)
↓
[FROZEN] CLIP-ViT-B/32 (openai/clip-vit-base-patch32)
↓ 512-dim embedding
Projection: Linear(512β†’256) β†’ ReLU β†’ Dropout(0.2)
↓ 256-dim shared representation
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
↓ ↓
CTR head Fatigue head
Linear(256β†’1) Linear(256β†’2)
Sigmoid Weibull params (log_scale, log_shape)
```
Loss = 0.5 Γ— BCELoss(ctr) + 0.5 Γ— WeibullNLLLoss(fatigue, right-censored)
## Training data
- Meta Ad Library (Apify scrape): 3,502 real ad images β€” gaming, ecommerce, finance verticals
- PIL-generated synthetic ads: 18,746 images with rule-based CTR and half-life labels
- Total: 22,248 images | 80/10/10 train/val/test split
## Metrics (test set)
| Metric | Value | Target |
|--------|-------|--------|
| Spearman r (CTR ranking) | TBD | > 0.30 |
| MAE (CTR calibration) | TBD | < 0.15 |
## Limitations
- **CTR labels are proxy scores**, not real click-through rates β€” derived from ad
activity signals, not A/B test data.
- **GradCAM is a spatial approximation** β€” CLIP's pooler_output discards spatial
structure; the 16Γ—16 heatmap is gradient-weighted feature attribution on the
projection layer, not true spatial GradCAM.
- Trained on a dataset with known label imbalance (wear-out >> cut-out).
## Intended use
Portfolio project demonstrating Multi-Task Creative Lifespan Prediction for ad
creative scoring. Not intended for production ad serving decisions.