# infant-joshva/data-science-learning-path architecture

> Architecture diagram of the GitHub repository infant-joshva/data-science-learning-path, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-08-13). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/infant-joshva/data-science-learning-path
- Repository: https://github.com/infant-joshva/data-science-learning-path

## Overview

#### Purpose and Scope
This is a data-science learning portfolio, not one deployable application. It organizes curriculum notebooks from Python/SQL through ML, deep learning, NLP, RAG, computer vision, AWS, and five standalone analytics/ML projects. The root overview is `README.md`; curriculum material begins at `DS-Practice-Notebooks/README.md`.

#### Execution Entry Points
Jupyter notebooks are the principal execution and training entry points, including `DS-Practice-Notebooks/DS03-eda-casestudy-ml/EDA_Git.ipynb` and `ML Project-CropYieldPredictor/notebook/Crop_Production_Prediction.ipynb`. Runnable Python application entry points exist for the Employee Attrition, Multiple Disease, and sentiment projects: `Project_3(Employee_Attrition_ML_Model)Git/app/main.py`, `Project_4(Multiple_Disease_Prediction)/app/main.py`, and `Project_5(AI Echo - Sentiment Analysis)/app/main.py`.

#### Learning-to-Project Structure
The curriculum is staged by capability:
- Python, SQL, Pandas data handling: `DS-Practice-Notebooks/DS01-python-sql-pandas/Py-SQL-Pandas_Git.ipynb`.
- Statistics and scientific computing: `DS-Practice-Notebooks/DS02-stats-numpy-scipy/Stats_NumPy_&_SciPy_Git.ipynb`.
- EDA, case studies, and supervised ML: `DS-Practice-Notebooks/DS03-eda-casestudy-ml/ML/1_Supervised Learning/ML_Hands_on.ipynb`.
- Deep learning, NLP, computer vision, RAG, and AWS: `DS-Practice-Notebooks/DS04-DL-NLP/RAG/Document_RAG.ipynb`, `DS-Practice-Notebooks/DS04-aws/CustomLayerAWS.ipynb`.

#### Data and Model Lifecycle
Projects generally follow a local artifact flow: raw CSV data → notebook/ETL-based cleaning and feature engineering → cleaned CSV → model training → serialized `.pkl` model → application inference. This boundary is explicit in the disease project: `Project_4(Multiple_Disease_Prediction)/data/raw_dataset`, `Project_4(Multiple_Disease_Prediction)/data/cleaned_dataset`, and `Project_4(Multiple_Disease_Prediction)/models`. Training and serving are decoupled; apps consume already-trained artifacts rather than retraining at request time.

#### Analytics and Persistence Boundary
Two projects include PostgreSQL-oriented ETL scripts, separating source-file preparation from reporting or downstream querying: `Project_2(AgriData_Explorer)Git/agri_etl_postgres.py` and `Project_3(Employee_Attrition_ML_Model)Git/attrition_etl_postgres.py`. Power BI files provide a separate reporting/presentation layer: `Project_2(AgriData_Explorer)Git/Agri_dashboard.pbix` and `Project_3(Employee_Attrition_ML_Model)Git/dashboard/Attrition report.pbix`.

#### Deployed ML Project Families
Employee attrition supports model selection and alternate imbalance-aware pipelines, with persisted logistic-regression/SMOTE and SVC/ADASYN models in `Project_3(Employee_Attrition_ML_Model)Git/models`. Multiple disease prediction routes inference across kidney, liver, and Parkinson’s artifacts in `Project_4(Multiple_Disease_Prediction)/models`. AI Echo performs review sentiment inference from versioned Naive Bayes and logistic-model artifacts in `Project_5(AI Echo - Sentiment Analysis)/model`.

#### Material Runtimes and External Assets
The repository is primarily Python, executed in Jupyter and app runtimes; dependencies are declared globally in `requirements.txt` and project-specifically in `Project_3(Employee_Attrition_ML_Model)Git/requirements.txt`. Core data/ML tooling includes Pandas, NumPy, scikit-learn, TensorFlow/Keras, and visualization libraries per the root README. External or binary assets include Roboflow/YOLO-focused notebooks and a trained PyTorch model at `DS-Practice-Notebooks/DS04-DL-NLP/Computer_vision/model/best.pt`, plus local RAG input `DS-Practice-Notebooks/DS04-DL-NLP/RAG/sample.pdf`.

Main entry points: [`DS-Practice-Notebooks/DS03-eda-casestudy-ml/ML/1_Supervised Learning/ML_Hands_on.ipynb`](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS03-eda-casestudy-ml/ML/1_Supervised%20Learning/ML_Hands_on.ipynb) (EDA & Supervised ML), [`Project_4(Multiple_Disease_Prediction)/data/cleaned_dataset`](https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/data/cleaned_dataset) (Cleaned Datasets), [`Project_3(Employee_Attrition_ML_Model)Git/attrition_etl_postgres.py`](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/attrition_etl_postgres.py) (Attrition ETL), [`DS-Practice-Notebooks/README.md`](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/README.md) (Curriculum Index)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_curriculum["Learning Curriculum"]
  node_curriculum_readme["Curriculum Index<br/>documentation<br/>[README.md]"]
  node_foundations["Python, SQL &amp; Pandas<br/>notebook"]
  node_statistics["Statistics &amp; SciPy<br/>notebook"]
  node_ml_curriculum["EDA &amp; Supervised ML<br/>notebook<br/>[ML_Hands_on.ipynb]"]
  node_rag_curriculum["Document RAG<br/>notebook<br/>[Document_RAG.ipynb]"]
  node_aws_curriculum["AWS Deep Learning<br/>notebook"]
  node_vision_model{{"YOLO/PyTorch Model<br/>model artifact<br/>[best.pt]"}}
end

subgraph group_projects["Standalone Projects"]
  node_disease_app["Multiple Disease App<br/>Python application<br/>[main.py]"]
  node_crop_notebook["Crop Yield Training<br/>notebook"]
  node_agri_etl["Agriculture ETL<br/>Python ETL"]
  node_agri_dashboard["Agriculture Dashboard<br/>Power BI report"]
  node_attrition_etl["Attrition ETL<br/>Python ETL"]
  node_attrition_models{{"Attrition Model Artifacts<br/>model directory"}}
  node_attrition_app["Employee Attrition App<br/>Python application<br/>[main.py]"]
  node_attrition_dashboard["Attrition Dashboard<br/>Power BI report"]
  node_sentiment_models{{"Sentiment Model Artifacts<br/>model directory"}}
  node_sentiment_app["AI Echo Sentiment App<br/>Python application<br/>[main.py]"]
end

subgraph group_lifecycle["ML Artifact Lifecycle"]
  node_raw_data[("Raw Datasets<br/>data directory")]
  node_cleaned_data[("Cleaned Datasets<br/>data directory")]
  node_trained_models{{"Disease Model Artifacts<br/>model directory"}}
end

node_root_readme["Portfolio Overview<br/>documentation<br/>[README.md]"]

node_root_readme -->|"introduces"| node_curriculum_readme
node_curriculum_readme -->|"starts with"| node_foundations
node_foundations -->|"builds toward"| node_statistics
node_statistics -->|"prepares"| node_ml_curriculum
node_ml_curriculum -->|"advances to"| node_rag_curriculum
node_ml_curriculum -->|"advances to"| node_aws_curriculum
node_rag_curriculum -.->|"parallel advanced AI assets"| node_vision_model
node_raw_data -->|"cleaning &amp; features"| node_cleaned_data
node_cleaned_data -->|"trains"| node_trained_models
node_trained_models -->|"serves for inference"| node_disease_app
node_crop_notebook -.->|"illustrates notebook training flow"| node_cleaned_data
node_agri_etl -->|"prepares reporting data"| node_agri_dashboard
node_attrition_etl -->|"prepares training data"| node_attrition_models
node_attrition_etl -->|"feeds reporting"| node_attrition_dashboard
node_attrition_models -->|"serves for inference"| node_attrition_app
node_sentiment_models -->|"serves for inference"| node_sentiment_app

click node_root_readme "https://github.com/infant-joshva/data-science-learning-path/blob/main/README.md"
click node_curriculum_readme "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/README.md"
click node_foundations "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS01-python-sql-pandas/Py-SQL-Pandas_Git.ipynb"
click node_statistics "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS02-stats-numpy-scipy/Stats_NumPy_%26_SciPy_Git.ipynb"
click node_ml_curriculum "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS03-eda-casestudy-ml/ML/1_Supervised%20Learning/ML_Hands_on.ipynb"
click node_rag_curriculum "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS04-DL-NLP/RAG/Document_RAG.ipynb"
click node_aws_curriculum "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS04-aws/CustomLayerAWS.ipynb"
click node_vision_model "https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS04-DL-NLP/Computer_vision/model/best.pt"
click node_raw_data "https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/data/raw_dataset"
click node_cleaned_data "https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/data/cleaned_dataset"
click node_trained_models "https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/models"
click node_disease_app "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_4(Multiple_Disease_Prediction)/app/main.py"
click node_crop_notebook "https://github.com/infant-joshva/data-science-learning-path/blob/main/ML%20Project-CropYieldPredictor/notebook/Crop_Production_Prediction.ipynb"
click node_agri_etl "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_2(AgriData_Explorer)Git/agri_etl_postgres.py"
click node_agri_dashboard "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_2(AgriData_Explorer)Git/Agri_dashboard.pbix"
click node_attrition_etl "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/attrition_etl_postgres.py"
click node_attrition_models "https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_3(Employee_Attrition_ML_Model)Git/models"
click node_attrition_app "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/app/main.py"
click node_attrition_dashboard "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/dashboard/Attrition%20report.pbix"
click node_sentiment_models "https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_5(AI%20Echo%20-%20Sentiment%20Analysis)/model"
click node_sentiment_app "https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_5(AI%20Echo%20-%20Sentiment%20Analysis)/app/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_curriculum_readme,node_foundations,node_statistics,node_ml_curriculum,node_rag_curriculum,node_aws_curriculum,node_vision_model toneBlue
class node_disease_app,node_crop_notebook,node_agri_etl,node_agri_dashboard,node_attrition_etl,node_attrition_models,node_attrition_app,node_attrition_dashboard,node_sentiment_models,node_sentiment_app toneAmber
class node_raw_data,node_cleaned_data,node_trained_models toneMint
class node_root_readme toneNeutral
```

## Components

### Learning Curriculum

Notebook-based progression from foundations to advanced AI.

- [Curriculum Index](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/README.md): documentation · `DS-Practice-Notebooks/README.md`
- [Python, SQL & Pandas](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS01-python-sql-pandas/Py-SQL-Pandas_Git.ipynb): notebook · `DS-Practice-Notebooks/DS01-python-sql-pandas/Py-SQL-Pandas_Git.ipynb`
- [Statistics & SciPy](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS02-stats-numpy-scipy/Stats_NumPy_%26_SciPy_Git.ipynb): notebook · `DS-Practice-Notebooks/DS02-stats-numpy-scipy/Stats_NumPy_&_SciPy_Git.ipynb`
- [EDA & Supervised ML](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS03-eda-casestudy-ml/ML/1_Supervised%20Learning/ML_Hands_on.ipynb): notebook · `DS-Practice-Notebooks/DS03-eda-casestudy-ml/ML/1_Supervised Learning/ML_Hands_on.ipynb`
- [Document RAG](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS04-DL-NLP/RAG/Document_RAG.ipynb): notebook · RAG learning workflow using a local PDF input. · `DS-Practice-Notebooks/DS04-DL-NLP/RAG/Document_RAG.ipynb`
- [AWS Deep Learning](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS04-aws/CustomLayerAWS.ipynb): notebook · `DS-Practice-Notebooks/DS04-aws/CustomLayerAWS.ipynb`
- [YOLO/PyTorch Model](https://github.com/infant-joshva/data-science-learning-path/blob/main/DS-Practice-Notebooks/DS04-DL-NLP/Computer_vision/model/best.pt): model artifact · Trained computer-vision asset. · `DS-Practice-Notebooks/DS04-DL-NLP/Computer_vision/model/best.pt`

### Standalone Projects

Analytics and ML project families with independent runtimes.

- [Multiple Disease App](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_4(Multiple_Disease_Prediction)/app/main.py): Python application · Routes inference to disease-specific persisted models. · `Project_4(Multiple_Disease_Prediction)/app/main.py`
- [Crop Yield Training](https://github.com/infant-joshva/data-science-learning-path/blob/main/ML%20Project-CropYieldPredictor/notebook/Crop_Production_Prediction.ipynb): notebook · `ML Project-CropYieldPredictor/notebook/Crop_Production_Prediction.ipynb`
- [Agriculture ETL](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_2(AgriData_Explorer)Git/agri_etl_postgres.py): Python ETL · Prepares source data for PostgreSQL-oriented analysis. · `Project_2(AgriData_Explorer)Git/agri_etl_postgres.py`
- [Agriculture Dashboard](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_2(AgriData_Explorer)Git/Agri_dashboard.pbix): Power BI report · `Project_2(AgriData_Explorer)Git/Agri_dashboard.pbix`
- [Attrition ETL](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/attrition_etl_postgres.py): Python ETL · Prepares source data for PostgreSQL-oriented reporting. · `Project_3(Employee_Attrition_ML_Model)Git/attrition_etl_postgres.py`
- [Attrition Model Artifacts](https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_3(Employee_Attrition_ML_Model)Git/models): model directory · Logistic/SMOTE and SVC/ADASYN alternatives. · `Project_3(Employee_Attrition_ML_Model)Git/models`
- [Employee Attrition App](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/app/main.py): Python application · `Project_3(Employee_Attrition_ML_Model)Git/app/main.py`
- [Attrition Dashboard](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_3(Employee_Attrition_ML_Model)Git/dashboard/Attrition%20report.pbix): Power BI report · `Project_3(Employee_Attrition_ML_Model)Git/dashboard/Attrition report.pbix`
- [Sentiment Model Artifacts](https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_5(AI%20Echo%20-%20Sentiment%20Analysis)/model): model directory · Versioned Naive Bayes and logistic-regression artifacts. · `Project_5(AI Echo - Sentiment Analysis)/model`
- [AI Echo Sentiment App](https://github.com/infant-joshva/data-science-learning-path/blob/main/Project_5(AI%20Echo%20-%20Sentiment%20Analysis)/app/main.py): Python application · `Project_5(AI Echo - Sentiment Analysis)/app/main.py`

### ML Artifact Lifecycle

Local data preparation, training, persistence, and inference.

- [Raw Datasets](https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/data/raw_dataset): data directory · `Project_4(Multiple_Disease_Prediction)/data/raw_dataset`
- [Cleaned Datasets](https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/data/cleaned_dataset): data directory · `Project_4(Multiple_Disease_Prediction)/data/cleaned_dataset`
- [Disease Model Artifacts](https://github.com/infant-joshva/data-science-learning-path/tree/main/Project_4(Multiple_Disease_Prediction)/models): model directory · Kidney, liver, and Parkinson's inference artifacts. · `Project_4(Multiple_Disease_Prediction)/models`

### Other components

- [Portfolio Overview](https://github.com/infant-joshva/data-science-learning-path/blob/main/README.md): documentation · `README.md`

## Connections

- Portfolio Overview → Curriculum Index: introduces
- Curriculum Index → Python, SQL & Pandas: starts with
- Python, SQL & Pandas → Statistics & SciPy: builds toward
- Statistics & SciPy → EDA & Supervised ML: prepares
- EDA & Supervised ML → Document RAG: advances to
- EDA & Supervised ML → AWS Deep Learning: advances to
- Document RAG → YOLO/PyTorch Model: parallel advanced AI assets
- Raw Datasets → Cleaned Datasets: cleaning & features
- Cleaned Datasets → Disease Model Artifacts: trains
- Disease Model Artifacts → Multiple Disease App: serves for inference
- Crop Yield Training → Cleaned Datasets: illustrates notebook training flow
- Agriculture ETL → Agriculture Dashboard: prepares reporting data
- Attrition ETL → Attrition Model Artifacts: prepares training data
- Attrition ETL → Attrition Dashboard: feeds reporting
- Attrition Model Artifacts → Employee Attrition App: serves for inference
- Sentiment Model Artifacts → AI Echo Sentiment App: serves for inference
