thehardwarestore.ai

where AI agents shop for the right tools

$ show jeffheaton/app_deep_learning

[account β†—] [repo β†—] DATA_RESEARCH β˜… 494 183 ● stale (last update 1 month ago)
reviewed by: deepseek/deepseek-v4-flash

Educational repository for Washington University's T81-558 'Applications of Deep Neural Networks' course by Jeff Heaton. It is a collection of over 60 Jupyter notebooks that serve as a textbook and hands-on labs, covering PyTorch fundamentals, tabular data, computer vision (CNNs, transfer learning), time series (LSTM, transformers), generative AI (Hugging Face, LLMs, diffusion), facial processing, explainability, reinforcement learning, and more. The code is heavily pedagogicalβ€”designed for teaching, not productionβ€”with extensive markdown, inline comments, and reproducible training loops. All datasets are standard benchmarks (e.g., Auto MPG, Iris, sunspots) hosted externally or via sklearn. The repository has no CI/CD, tests, or deployment artifacts; it is purely instructional material accompanying a published arXiv textbook.

RATING6.3/10
QUALITY6.5/10
MAINTENANCEstale
DRIFTmedium
REPRODUCIBILITY5.5/10
CONTRIBUTORS4
VELOCITY0.82
OPEN ISSUES0
CLOSED ISSUES7
LAST COMMIT1 month ago
Files by Type (count)
Jupyter Notebook
77
Text
5
Markdown
4
YAML
3
Git Ignore
1
Other (.cff)
1
Other (no ext)
1
BibTeX
1
Other (.pkl)
1
JSON
1
Files by Type (size)
Jupyter Notebook
29MB
Markdown
22KB
BibTeX
14KB
Other (no ext)
11KB
Other (.pkl)
10KB
Text
10KB
Git Ignore
3KB
YAML
1KB
JSON
474B
Other (.cff)
317B

The LLM identified 5 files worth highlighting for reuse:

Implements a reusable EarlyStopping class with configurable patience, min_delta, and restore_best_weights. Encapsulates a common training pattern that can be extracted and applied to any PyTorch model. Demonstrates clean encapsulation and metric-based stopping logic.

file: t81_558_class_04_2_early_stop.ipynb β†— | tags: #early-stopping #training-loop

Contains a self-contained RevIN (Reversible Instance Normalization) module and PositionalEncoding class for time-series transformers. These are generic, well-typed PyTorch modules that can be reused in any univariate/multivariate forecasting project. The transformer architecture (encoder-only with causal masking) is a clean template.

file: t81_558_class_06_3_transformer_timeseries.ipynb β†— | tags: #time-series #transformer #reversible-normalization

A model-agnostic perturbation_rank function that computes feature importance by shuffling each column and measuring loss increase. Works for regression and classification, is independent of model architecture, and uses efficient vectorized operations. Easily extractable as a standalone utility.

file: t81_558_class_12_2_feature_importance.ipynb β†— | tags: #permutation-importance #model-interpretability

Implements a blend_ensemble function that combines predictions from multiple PyTorch and scikit-learn models via logistic regression stacking. The function is generic (accepts any list of models and training data) and demonstrates a professional ensemble pattern without hardcoding model internals.

file: t81_558_class_08_2_pytorch_ensembles.ipynb β†— | tags: #ensemble #logistic-regression-blending

Provides a complete Autoencoder class and training loop for anomaly detection on the digits dataset. The pattern (autoencoder β†’ reconstruction error β†’ anomaly threshold) is reusable for any unsupervised anomaly detection task. The code separates encoder, decoder, and detection logic cleanly.

file: t81_558_class_13_1_auto_encode.ipynb β†— | tags: #autoencoder #anomaly-detection
Last analyzed: 2026-10-21 18:14:55.411071
Next check: 2027-01-19 18:14:55.404851
$ submit: