# aryamanstha/home-assignment-neural-network-and-deep-learning architecture

> Architecture diagram of the GitHub repository aryamanstha/home-assignment-neural-network-and-deep-learning, 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/aryamanstha/home-assignment-neural-network-and-deep-learning
- Repository: https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning

## Overview

This repository is a Jupyter-based neural-network assignment, not a packaged application. Its documented workflow runs tensor and loss demonstrations, trains MNIST classifiers, compares optimizers, and logs a separate model’s training metrics for TensorBoard inspection. The notebook itself was not included in the sampled source, so the connections below follow README descriptions; implementation details and exact call wiring cannot be verified.

Main entry points: [`app.ipynb`](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb) (Image Normalization), [`logs/fit`](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/tree/main/logs/fit) (Event Logs)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_notebooks["Notebook Exercises"]
  node_tensor_ops["Tensor Operations<br/>[app.ipynb]"]
  node_loss_compare["Loss Comparison<br/>[app.ipynb]"]
end

subgraph group_training["MNIST Training"]
  node_mnist[("MNIST Dataset")]
  node_preprocessing["Image Normalization<br/>[app.ipynb]"]
  node_cnn["CNN Models<br/>[app.ipynb]"]
  node_optimizers["Adam and SGD<br/>[app.ipynb]"]
  node_performance["Accuracy Curves<br/>[app.ipynb]"]
end

subgraph group_monitoring["Training Monitoring"]
  node_feedforward["Feedforward Model<br/>[app.ipynb]"]
  node_tensorboard_callback["TensorBoard Logging<br/>[app.ipynb]"]
  node_event_logs["Event Logs"]
  node_overfit_analysis["Overfitting Analysis<br/>[app.ipynb]"]
end

node_learner(("Learner"))
node_tensorboard["TensorBoard Viewer"]

node_learner -->|"runs exercise"| node_tensor_ops
node_learner -->|"runs comparison"| node_loss_compare
node_learner -->|"loads dataset"| node_mnist
node_mnist -->|"provides images"| node_preprocessing
node_preprocessing -->|"feeds images"| node_cnn
node_cnn -->|"trains with"| node_optimizers
node_optimizers -->|"compares accuracy"| node_performance
node_learner -->|"trains model"| node_feedforward
node_feedforward -->|"uses callback"| node_tensorboard_callback
node_tensorboard_callback -->|"writes metrics"| node_event_logs
node_tensorboard -->|"reads metrics"| node_event_logs
node_tensorboard -.->|"supports inspection"| node_overfit_analysis

click node_tensor_ops "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_loss_compare "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_preprocessing "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_cnn "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_optimizers "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_performance "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_feedforward "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_tensorboard_callback "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"
click node_event_logs "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/tree/main/logs/fit"
click node_overfit_analysis "https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb"

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_tensor_ops,node_loss_compare,node_tensorboard toneBlue
class node_mnist,node_preprocessing,node_cnn,node_optimizers,node_performance toneAmber
class node_feedforward,node_tensorboard_callback,node_event_logs,node_overfit_analysis toneMint
class node_learner toneIndigo
```

## Components

### Notebook Exercises

- [Tensor Operations](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`
- [Loss Comparison](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`

### MNIST Training

- **MNIST Dataset**
- [Image Normalization](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`
- [CNN Models](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`
- [Adam and SGD](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`
- [Accuracy Curves](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`

### Training Monitoring

- [Feedforward Model](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`
- [TensorBoard Logging](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`
- [Event Logs](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/tree/main/logs/fit): `logs/fit`
- [Overfitting Analysis](https://github.com/aryamanstha/home-assignment-neural-network-and-deep-learning/blob/main/app.ipynb): `app.ipynb`

### Other components

- **Learner**
- **TensorBoard Viewer**

## Connections

- Learner → Tensor Operations: runs exercise
- Learner → Loss Comparison: runs comparison
- Learner → MNIST Dataset: loads dataset
- MNIST Dataset → Image Normalization: provides images
- Image Normalization → CNN Models: feeds images
- CNN Models → Adam and SGD: trains with
- Adam and SGD → Accuracy Curves: compares accuracy
- Learner → Feedforward Model: trains model
- Feedforward Model → TensorBoard Logging: uses callback
- TensorBoard Logging → Event Logs: writes metrics
- TensorBoard Viewer → Event Logs: reads metrics
- TensorBoard Viewer → Overfitting Analysis: supports inspection
