# vijay9972/ncifa_ndn architecture

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

- Interactive diagram: https://gitdiagram.com/vijay9972/ncifa_ndn
- Repository: https://github.com/vijay9972/ncifa_ndn

## Overview

This repository is a notebook-based experimentation toolkit for generating and evaluating network-feature data with FeatureGAN, other GANs, and traditional methods. The visible stages span preprocessing, training, generation or data preparation, and evaluation/validation. The tree also includes result and validation artifacts. With no README or sampled notebook code, the connections between stages and their data inputs/outputs cannot be verified, so the graph shows the researcher entry points without implying a pipeline.

Main entry points: [`Fagan/featureGAN_preprocessing.ipynb`](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_preprocessing.ipynb) (Preprocess), [`Fagan/featureGAN_train.ipynb`](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_train.ipynb) (Train), [`Fagan/featureGAN_generate.ipynb`](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_generate.ipynb) (Generate), [`Fagan/featureGAN_evaluate.ipynb`](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_evaluate.ipynb) (Evaluate)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_fagan["FeatureGAN workflow"]
  node_fagan_preprocess["Preprocess"]
  node_fagan_train["Train"]
  node_fagan_generate["Generate"]
  node_fagan_evaluate["Evaluate"]
  node_fagan_validate["Validate"]
  node_fagan_results["FeatureGAN results"]
  node_fagan_validation_results["FeatureGAN validation"]
end

subgraph group_gan["GAN workflow"]
  node_gan_preprocess["Preprocess"]
  node_gan_train["Train<br/>[train_gans.ipynb]"]
  node_gan_generate["Generate data"]
  node_gan_evaluate["Evaluate"]
  node_gan_results["GAN results"]
end

subgraph group_traditional["Traditional methods"]
  node_traditional_generate["Generate data"]
  node_traditional_preprocess["Preprocess"]
  node_traditional_train["Train methods"]
  node_traditional_evaluate["Compare methods"]
  node_imbalance_summary["Imbalance summary"]
  node_traditional_results["Traditional results"]
end

subgraph group_validation["Validation artifacts"]
  node_validation_metrics["Validation metrics"]
end

node_researcher(("Researcher"))

node_researcher -->|"opens"| node_fagan_preprocess
node_researcher -->|"opens"| node_fagan_train
node_researcher -->|"opens"| node_fagan_generate
node_researcher -->|"opens"| node_fagan_evaluate
node_researcher -->|"opens"| node_fagan_validate
node_researcher -->|"opens"| node_gan_preprocess
node_researcher -->|"opens"| node_gan_train
node_researcher -->|"opens"| node_gan_generate
node_researcher -->|"opens"| node_gan_evaluate
node_researcher -->|"opens"| node_traditional_generate
node_researcher -->|"opens"| node_traditional_preprocess
node_researcher -->|"opens"| node_traditional_train
node_researcher -->|"opens"| node_traditional_evaluate

click node_fagan_preprocess "https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_preprocessing.ipynb"
click node_fagan_train "https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_train.ipynb"
click node_fagan_generate "https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_generate.ipynb"
click node_fagan_evaluate "https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_evaluate.ipynb"
click node_fagan_validate "https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/Step_7_featureGAN_validate.ipynb"
click node_fagan_results "https://github.com/vijay9972/ncifa_ndn/tree/main/results/fagan"
click node_gan_preprocess "https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/preprocessing_gans.ipynb"
click node_gan_train "https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/train_gans.ipynb"
click node_gan_generate "https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/generate_gandatas.ipynb"
click node_gan_evaluate "https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/evaluate_gans.ipynb"
click node_gan_results "https://github.com/vijay9972/ncifa_ndn/tree/main/results/gan"
click node_traditional_generate "https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/Data_generation_traditional1.ipynb"
click node_traditional_preprocess "https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/preprocessing_traditional.ipynb"
click node_traditional_train "https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/train_traditional_methods.ipynb"
click node_traditional_evaluate "https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/result_traditional_methods.ipynb"
click node_imbalance_summary "https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/imbalance_ratio_summary.csv"
click node_traditional_results "https://github.com/vijay9972/ncifa_ndn/tree/main/results/traditional"
click node_validation_metrics "https://github.com/vijay9972/ncifa_ndn/tree/main/validation_results"
click node_fagan_validation_results "https://github.com/vijay9972/ncifa_ndn/tree/main/Fagan/validation_results"

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_fagan_preprocess,node_fagan_train,node_fagan_generate,node_fagan_evaluate,node_fagan_validate,node_fagan_results,node_fagan_validation_results toneBlue
class node_gan_preprocess,node_gan_train,node_gan_generate,node_gan_evaluate,node_gan_results toneAmber
class node_traditional_generate,node_traditional_preprocess,node_traditional_train,node_traditional_evaluate,node_imbalance_summary,node_traditional_results toneMint
class node_validation_metrics toneRose
class node_researcher toneIndigo
```

## Components

### FeatureGAN workflow

- [Preprocess](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_preprocessing.ipynb): `Fagan/featureGAN_preprocessing.ipynb`
- [Train](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_train.ipynb): `Fagan/featureGAN_train.ipynb`
- [Generate](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_generate.ipynb): `Fagan/featureGAN_generate.ipynb`
- [Evaluate](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/featureGAN_evaluate.ipynb): `Fagan/featureGAN_evaluate.ipynb`
- [Validate](https://github.com/vijay9972/ncifa_ndn/blob/main/Fagan/Step_7_featureGAN_validate.ipynb): `Fagan/Step_7_featureGAN_validate.ipynb`
- [FeatureGAN results](https://github.com/vijay9972/ncifa_ndn/tree/main/results/fagan): `results/fagan`
- [FeatureGAN validation](https://github.com/vijay9972/ncifa_ndn/tree/main/Fagan/validation_results): `Fagan/validation_results`

### GAN workflow

- [Preprocess](https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/preprocessing_gans.ipynb): `Gan/preprocessing_gans.ipynb`
- [Train](https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/train_gans.ipynb): `Gan/train_gans.ipynb`
- [Generate data](https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/generate_gandatas.ipynb): `Gan/generate_gandatas.ipynb`
- [Evaluate](https://github.com/vijay9972/ncifa_ndn/blob/main/Gan/evaluate_gans.ipynb): `Gan/evaluate_gans.ipynb`
- [GAN results](https://github.com/vijay9972/ncifa_ndn/tree/main/results/gan): `results/gan`

### Traditional methods

- [Generate data](https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/Data_generation_traditional1.ipynb): `traditional/Data_generation_traditional1.ipynb`
- [Preprocess](https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/preprocessing_traditional.ipynb): `traditional/preprocessing_traditional.ipynb`
- [Train methods](https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/train_traditional_methods.ipynb): `traditional/train_traditional_methods.ipynb`
- [Compare methods](https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/result_traditional_methods.ipynb): `traditional/result_traditional_methods.ipynb`
- [Imbalance summary](https://github.com/vijay9972/ncifa_ndn/blob/main/traditional/imbalance_ratio_summary.csv): `traditional/imbalance_ratio_summary.csv`
- [Traditional results](https://github.com/vijay9972/ncifa_ndn/tree/main/results/traditional): `results/traditional`

### Validation artifacts

- [Validation metrics](https://github.com/vijay9972/ncifa_ndn/tree/main/validation_results): `validation_results`

### Other components

- **Researcher**

## Connections

- Researcher → Preprocess: opens
- Researcher → Train: opens
- Researcher → Generate: opens
- Researcher → Evaluate: opens
- Researcher → Validate: opens
- Researcher → Preprocess: opens
- Researcher → Train: opens
- Researcher → Generate data: opens
- Researcher → Evaluate: opens
- Researcher → Generate data: opens
- Researcher → Preprocess: opens
- Researcher → Train methods: opens
- Researcher → Compare methods: opens
