Skip to content

Vice777/SAFE-HEART

Repository files navigation

Safe-Heart-Classifier-Multi-Layer-Perceptron-from-Scratch

LINK : https://vice777-safe-heart-classifier-multilayer-perceptron--app-idf5su.streamlitapp.com/


Description:

Classify the chances of having a Heart Attack based on your Heart's Condition.
In this end-to-end Machine Learning project-tutorial, I have created and trained Multi-Layer model from scratch, using NumPy.
Furthermore, the model with the best accuracy is embedded in the web-app developed using streamlit module for the purpose of classification of your Heart's Condition.


Understanding the Problem Statement

This project uses the popular Heart Attack Analysis & Prediction Dataset for training the model and making predictions.

For the purpose of prediction and classification, the features given in the table below are used.
Detailed description about the features is provided within the table.

Features Description
Age Age of the patient
Sex Sex of the patient
cp Chest Pain type chest pain type:
  • Value 1: Typical angina
  • Value 2: Atypical angina
  • Value 3: Non-anginal pain
  • Value 4: Asymptomatic
trtbps Resting Blood Pressure (in mm Hg)
chol Cholestoral in mg/dl fetched via BMI Sensor
fbs (Fasting blood sugar > 120 mg/dl)
  • 1 = true
  • 0 = false
  • restecg
    1. Value 0: Normal
    2. Value 1: Having ST-T wave abnormality (T wave inversions and/or ST elevation or depression of > 0.05 mV)
    3. Value 2: Showing probable or definite left ventricular hypertrophy by Estes criteria
    thalach Maximum Heart Rate achieved
    exang Exercise induced angina
  • 1 = yes
  • 0 = no
  • Oldpeak ST depression induced by exercise relative to rest
    slp Peak exercise ST segment Slop
  • 0 = Downsloping
  • 1 = Flat
  • 2 = Upsloping
  • caa The number of major vessels (0–3)
    thall A blood disorder called Thalassemia
  • Value 1: fixed defect (no blood flow in some part of the heart)
  • Value 2: normal blood flow
  • Value 3: reversible defect (a blood flow is observed but it is not normal)
  • target Percentage of deliverable volume
  • 0= less chance of heart attack
  • 1= more chance of heart attack


  • Key Project Takeaways

    This project provided hands-on experience in real-time data handling and working behind Neural Networks :

      Data preprocessing and cleaning for training and testing the data
      Building an efficient Neural Network (Multi-Layer Perceptron) from scratch using NumPy
      Mathematics behind Activation Functions and Gradient Losses
      Web-app development using Streamlit