Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Exam Score Prediction with TensorFlow

This project implements a Deep Learning regression model using TensorFlow and Keras to predict student exam scores based on various demographic and academic features.

📊 Project Overview

The goal of this project is to analyze student data from the Exam Score Prediction Dataset (Kaggle) and build a predictive model that estimates the final exam score. It demonstrates a complete Machine Learning workflow, including:

  • Data exploration and visualization (EDA).
  • Feature Engineering (Custom metrics for efficiency and wellbeing).
  • Data preprocessing (One-Hot Encoding, Feature Scaling).
  • Neural Network architecture design using TensorFlow/Keras.
  • Model training with early stopping and learning rate reduction.
  • Model evaluation and persistence.

📁 Project Structure

  • Exam_Score_Prediction.ipynb: The notebook containing the full pipeline, including EDA, Feature Engineering, and Model Training.

🛠️ Tech Stack

  • Language: Python 3.x (3.11)
  • Deep Learning: TensorFlow / Keras
  • Data Manipulation: Pandas, NumPy
  • Machine Learning Tools: Scikit-learn (train_test_split, StandardScaler)
  • Visualization: Matplotlib, Seaborn

🧪 Feature Engineering

To improve predictive performance, custom features were created:

  • Study Efficiency: A combination of study hours and class attendance.
  • Sleep Wellbeing: A weighted score combining sleep hours and sleep quality.

🚀 Getting Started

1. Prerequisites

Ensure you have Python installed. It is recommended to use a virtual environment.

2. Installation

Install the required dependencies:

pip install tensorflow pandas scikit-learn matplotlib seaborn joblib

3. Running the Project

Open the main notebook in VS Code or Jupyter:

jupyter notebook Exam_Score_Prediction.ipynb

🧠 Model Architecture

The model is a Sequential Neural Network consisting of:

  • Input Layer: Matches the number of features after encoding.
  • Hidden Layer 1: 128 neurons with ReLU activation.
  • Hidden Layer 2: 64 neurons with ReLU activation.
  • Output Layer: 1 neuron (Linear activation) for regression.

Compiler Settings:

  • Optimizer: Adam
  • Loss Function: Mean Squared Error (MSE)
  • Metrics: Mean Absolute Error (MAE)

📈 Results

The model's performance is evaluated using MAE, which represents the average error in score points. Training curves (Loss and MAE) are plotted in the notebook to monitor for overfitting.

✅ Conclusion

This laboratory project provides a robust template for handling tabular data regression tasks using modern Deep Learning frameworks.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages