/Diabetes-Prediction-Web-application-using-TensorFlow-and-Keras

This repository contains a Streamlit-based web application designed to predict the likelihood of diabetes in individuals. Utilizing a machine learning model built with TensorFlow and Keras, the app evaluates user-provided health metrics to estimate diabetes risk.

Primary LanguageJupyter Notebook

##Diabetes Prediction Web Application https://diabetes-prediction-web-application.streamlit.app/

#Abstract: The purpose of this project is to develop a user-friendly web-based application that predicts the likelihood of diabetes in individuals. The application utilizes a machine learning model trained on clinical data and offers an interactive interface for users to input their medical parameters and receive a prediction. The primary goal is to provide an early diabetes risk assessment tool by leveraging data science and web technologies.

#Data Description: The dataset used for this project consists of clinical records relevant to diabetes diagnosis. Key features include age, gender, body mass index (BMI), blood pressure, and blood glucose levels, among others. The data underwent thorough preprocessing, including normalization and encoding, to fit the model's requirements. The final dataset was split into training and testing sets to develop a robust predictive model.

#Algorithm Description: The core of the application is a TensorFlow-based neural network model. The model architecture consists of several densely connected layers with dropout regularization to prevent overfitting. The training process involved optimizing a binary cross-entropy loss function using the Adam optimizer, with early stopping implemented to halt training upon validation loss saturation. The model outputs a probability score indicating the likelihood of diabetes, which the web app interprets to provide a categorical prediction. The performance metrics used to evaluate the model include accuracy, precision, recall, and others.

#Tools Used: The primary programming language used for both data processing and model development was Python. TensorFlow and Keras were used for building and training the machine learning model. Pandas and NumPy were used for data manipulation and numerical computations. Streamlit was used to create the interactive web application that interfaces with the machine learning model. Matplotlib and Seaborn were used for data visualization, both during the exploratory data analysis phase and within the web application. Jupyter Notebook was used for prototyping the model and initial data analysis. Git was used for version control and tracking changes in the codebase.

Note: The data was sourced from a specific source, and the cleaning or preprocessing steps applied included normalization, handling missing values, and data splitting.