Skip to content

Feature/brain stroke assessment#1062

Open
notdekyy wants to merge 10 commits into
abhisheks008:mainfrom
notdekyy:feature/brain-stroke-assessment
Open

Feature/brain stroke assessment#1062
notdekyy wants to merge 10 commits into
abhisheks008:mainfrom
notdekyy:feature/brain-stroke-assessment

Conversation

@notdekyy

Copy link
Copy Markdown

Pull Request for DL-Simplified 💡

Issue Title : Brain Stroke Risk Assessment using Multi-Architecture ANN

  • Info about the related issue (Aim of the project) : The goal of this project is to predict brain stroke susceptibility using physiological data features while handling a highly imbalanced classification distribution (~5% positive stroke cases) using 4 distinct Artificial Neural Network (ANN) topologies built via TensorFlow/Keras.
  • Name: Chirag Bhatia
  • GitHub ID: notdekyy
  • Email ID: bhatiachirag714@gmail.com
  • Identify yourself: GSSoC 2026 Participant

Closes: #1040

Describe the add-ons or changes you've made 📃

I have added an end-to-end deep learning workflow under a newly structured project directory: Brain Stroke Risk Assessment/. The additions include:

  1. Data Ingestion Pipeline: Implemented programmatic loading and validation of the clinical features dataset.
  2. Robust Preprocessing Pipeline: Handled categorical variables using OneHotEncoder and scaled continuous values via StandardScaler using a ColumnTransformer layout to avoid data leakage. Dataset features were safely expanded into 19 structural input columns.
  3. Multi-Architecture Modeling Matrix: Designed, trained, and benchmarked 4 distinct neural networks:
    • Model 1 (Vanilla MLP): Standard sequential baseline feedforward layer stack.
    • Model 2 (Regularized MLP): Stacked setup utilizing BatchNormalization and Dropout(0.3) layers to reduce overfitting constraints.
    • Model 3 (Class-Weighted MLP): Imbalance-optimized network tracking sample penalty distributions via dynamically scaled loss weights.
    • Model 4 (Residual MLP): Advanced implementation using the Keras Functional API to map residual shortcut skip connections.
  4. Documentation: Created a comprehensive project-level README.md containing the baseline performance matrix tracking F1-Score and PR-AUC.

--- 📊 GSSoC PROJECT EVALUATION MATRIX ---

  • Vanilla MLP -> F1-Score: 0.0377 | PR-AUC: 0.1938
  • Regularized MLP -> F1-Score: 0.0392 | PR-AUC: 0.1729
  • Class-Weighted MLP -> F1-Score: 0.2182 | PR-AUC: 0.1760
  • Residual MLP -> F1-Score: 0.1127 | PR-AUC: 0.1603

Insight: The introduction of structural class-weight penalties in Model 3 yielded a ~478% increase in minority target F1-Score classification, highlighting its necessity in imbalanced diagnostic models.

Type of change ☑️

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Code style update (formatting, local variables)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested? ⚙️

  • Tested using isolated notebook environment runtimes on a Jupyter-compatible compiler engine layout.
  • Evaluated models using stratified data subset splits (train_test_split with test_size=0.2), ensuring that training evaluations were verified against a completely hidden validation set.
  • Model performance was strictly quantified using threshold-agnostic evaluation indicators (F1-Score and Precision-Recall AUC) instead of simple raw accuracy, to confirm true positive minority predictions.

Checklist: ☑️

  • My code follows the guidelines of this project.
  • I have performed a self-review of my own code.
  • I have commented my code, particularly wherever it was hard to understand.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have added things that prove my fix is effective or that my feature works.
  • Any dependent changes have been merged and published in downstream modules.

@github-actions

Copy link
Copy Markdown

Our team will soon review your PR. Thanks @notdekyy :)

@abhisheks008 abhisheks008 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @notdekyy please follow the project structure mentioned in the README of this repository.
Also please follow the README template to update the main README of your project folder.
Create an Images folder and store the project generated images/output inside that. Use those images in the README of the project folder to provide a clear user experience.

@abhisheks008 abhisheks008 added Status: Requested Changes Changes requested. GSSOC 2026 Issues marked for GSSOC 2026 labels May 30, 2026
@notdekyy

notdekyy commented Jun 1, 2026

Copy link
Copy Markdown
Author

Hi @abhisheks008 ,

Thank you for the review and guidance! I have completely updated the project structure and documentation to match the repository standards.

Here is a summary of the adjustments made:

  1. Directory Restructuring: Reorganized the file layout to place the analysis notebook inside the dedicated Model/ directory.
  2. Created Images Directory: Added an Images/ folder containing verification screenshots of the data ingestion (dataset_preview.png) and the final comparative performance table (evaluation_matrix.png).
  3. README Overhaul: Rewrote the project folder's README.md file using the standard project template and cleanly embedded the output images to maximize scannability and user experience.

@notdekyy notdekyy requested a review from abhisheks008 June 1, 2026 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

GSSOC 2026 Issues marked for GSSOC 2026 Status: Requested Changes Changes requested.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Project Addition]: Brain Stroke Risk Assessment and Multi-Architecture ANN Comparison

2 participants