# ayushbadwaik/neual-network-deep-learning-tae architecture

> Architecture diagram of the GitHub repository ayushbadwaik/neual-network-deep-learning-tae, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/ayushbadwaik/neual-network-deep-learning-tae
- Repository: https://github.com/ayushbadwaik/neual-network-deep-learning-tae

## Overview

EarlyStop-Bench is a neural-network benchmark with a Flask dashboard and a standalone CLI. Users choose a benchmark or upload CSV data, configure training, and compare each architecture trained with and without early stopping; results include accuracy, loss histories, overfitting gaps, epochs, and time. The shared engine prepares datasets, constructs models, and orchestrates the comparison. The README also documents CLI charts and a CSV summary. The web excerpt confirms training and upload routes; report-export details are not sampled, so that capability is not wired separately here.

Main entry points: [`app.py`](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/app.py) (Flask API), [`ml_engine/trainer.py`](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/trainer.py) (Comparison Orchestrator), [`main.py`](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/main.py) (CLI Runner), [`static/js/app.js`](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/static/js/app.js) (Dashboard Logic)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web Dashboard"]
  node_dashboard["Dashboard UI<br/>[index.html]"]
  node_browser["Dashboard Logic<br/>[app.js]"]
  node_webapp["Flask API<br/>[app.py]"]
  node_web_results["Web Metrics And Charts<br/>[app.js]"]
end

subgraph group_data["Dataset Preparation"]
  node_benchmark_sets["Built-in Datasets<br/>[dataset_factory.py]"]
  node_custom_csv["CSV Parsing<br/>[dataset_factory.py]"]
  node_data_splits["Split And Scale<br/>[dataset_factory.py]"]
end

subgraph group_engine["Benchmark Engine"]
  node_trainer["Comparison Orchestrator<br/>[trainer.py]"]
  node_model_factory["Model Factory<br/>[models.py]"]
  node_architectures["Neural Architectures<br/>[models.py]"]
  node_stopping["Early Stopping<br/>[early_stopping.py]"]
end

subgraph group_cli["CLI Benchmark"]
  node_cli_runner["CLI Runner<br/>[main.py]"]
  node_cli_reports["CLI Tables And Plots<br/>[main.py]"]
  node_output_files["Benchmark Outputs"]
end

node_user(("User"))

node_user -->|"opens"| node_dashboard
node_dashboard -->|"loads"| node_browser
node_browser -->|"requests training"| node_webapp
node_webapp -->|"loads dataset"| node_benchmark_sets
node_browser -->|"uploads CSV"| node_webapp
node_webapp -->|"parses upload"| node_custom_csv
node_benchmark_sets -->|"prepares data"| node_data_splits
node_custom_csv -->|"prepares data"| node_data_splits
node_webapp -->|"runs comparison"| node_trainer
node_cli_runner -->|"loads dataset"| node_benchmark_sets
node_cli_runner -->|"runs benchmark"| node_trainer
node_trainer -->|"creates model"| node_model_factory
node_model_factory -->|"instantiates"| node_architectures
node_trainer -->|"checks validation"| node_stopping
node_webapp -->|"returns results"| node_web_results
node_cli_runner -->|"formats results"| node_cli_reports
node_cli_reports -->|"writes summary and charts"| node_output_files

click node_dashboard "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/templates/index.html"
click node_browser "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/static/js/app.js"
click node_webapp "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/app.py"
click node_benchmark_sets "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/dataset_factory.py"
click node_custom_csv "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/dataset_factory.py"
click node_data_splits "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/dataset_factory.py"
click node_cli_runner "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/main.py"
click node_trainer "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/trainer.py"
click node_model_factory "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/models.py"
click node_architectures "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/models.py"
click node_stopping "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/early_stopping.py"
click node_web_results "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/static/js/app.js"
click node_cli_reports "https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/main.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_dashboard,node_browser,node_webapp,node_web_results,node_user toneBlue
class node_benchmark_sets,node_custom_csv,node_data_splits toneAmber
class node_trainer,node_model_factory,node_architectures,node_stopping toneMint
class node_cli_runner,node_cli_reports,node_output_files toneRose
```

## Components

### Web Dashboard

- [Dashboard UI](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/templates/index.html): `templates/index.html`
- [Dashboard Logic](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/static/js/app.js): `static/js/app.js`
- [Flask API](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/app.py): `app.py`
- [Web Metrics And Charts](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/static/js/app.js): `static/js/app.js`

### Dataset Preparation

- [Built-in Datasets](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/dataset_factory.py): `ml_engine/dataset_factory.py`
- [CSV Parsing](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/dataset_factory.py): `ml_engine/dataset_factory.py`
- [Split And Scale](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/dataset_factory.py): `ml_engine/dataset_factory.py`

### Benchmark Engine

- [Comparison Orchestrator](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/trainer.py): `ml_engine/trainer.py`
- [Model Factory](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/models.py): `ml_engine/models.py`
- [Neural Architectures](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/models.py): `ml_engine/models.py`
- [Early Stopping](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/ml_engine/early_stopping.py): `ml_engine/early_stopping.py`

### CLI Benchmark

- [CLI Runner](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/main.py): `main.py`
- [CLI Tables And Plots](https://github.com/ayushbadwaik/neual-network-deep-learning-tae/blob/main/main.py): `main.py`
- **Benchmark Outputs**

### Other components

- **User**

## Connections

- User → Dashboard UI: opens
- Dashboard UI → Dashboard Logic: loads
- Dashboard Logic → Flask API: requests training
- Flask API → Built-in Datasets: loads dataset
- Dashboard Logic → Flask API: uploads CSV
- Flask API → CSV Parsing: parses upload
- Built-in Datasets → Split And Scale: prepares data
- CSV Parsing → Split And Scale: prepares data
- Flask API → Comparison Orchestrator: runs comparison
- CLI Runner → Built-in Datasets: loads dataset
- CLI Runner → Comparison Orchestrator: runs benchmark
- Comparison Orchestrator → Model Factory: creates model
- Model Factory → Neural Architectures: instantiates
- Comparison Orchestrator → Early Stopping: checks validation
- Flask API → Web Metrics And Charts: returns results
- CLI Runner → CLI Tables And Plots: formats results
- CLI Tables And Plots → Benchmark Outputs: writes summary and charts
