1
Student Success
Prediction Using
Neural Networks
COMP-258 Neural Networks
Group 5
Thursday, December 12, 2024
2
Our Group
❖ Antony Tibursias - Designed the CNN architecture
❖ Jaspreet Kaur - Handled data preprocessing and
feature engineering.
❖ Sumanth Koppinadi- Developed the Flask-based
REST API and Dockerized the back-end.
❖ Ajaypal Singh- Built the React front-end and
integrated it with the API.
❖ Mohana Subramanian- Managed deployment on
Render and coordinated the testing process
Our Focus : Predicting academic outcomes with AI
Thursday, December 12, 2024
3
The Challenge: Building a
Student Success Prediction
System
Data Preprocessing Complexities
•Managing missing values and ensuring data consistency.
•Normalizing features and scaling data for model readiness.
Neural Network Design
•Striking the right balance between model complexity and
efficiency.
•Avoiding overfitting through dropout layers and fine-tuning
hyperparameters
Thursday, December 12, 2024
4
Integration Hurdles
Establishing smooth communication between the Flask API and React front-end.
Synchronizing environments to ensure seamless functionality.
Deployment on Render
Configuring back-end and front-end deployment pipelines with Docker.
Addressing real-world accessibility and performance issues.
Team Coordination Challenges
Balancing workload and aligning deliverables among diverse team roles.
Overcoming communication barriers for smoother collaboration.
Real-Time Application
Ensuring the predictive model's reliability under real-time data inputs.
Adapting the system for unforeseen user behaviors and dynamic datasets.
Thursday, December 12, 2024
5
Application Architecture and Technologies
used
Architecture:
• Backend: Flask with Python
• AI Model: Neural Network built using TensorFlow
• Frontend: [Link] with JavaScript
Key Technologies:
• Flask for creating and managing RESTful APIs.
• TensorFlow for designing, training, and predicting with neural networks.
• Joblib for efficient model serialization and pipeline management.
• [Link] for creating an interactive user interface.
• [Link] for hosting and deployment of the entire application stack.
Thursday, December 12, 2024
6
Our workflow
Data Collection & Preprocessing:
•Raw academic and demographic data collected.
•Data cleaning, feature engineering, and scaling.
Model Training:
•Neural network trained on processed data using TensorFlow.
•Fine-tuning with hyperparameters like learning rate, epochs, and layers.
Backend Development:
•Flask API to serve predictions from the trained model.
•API endpoint
Frontend Development:
•[Link] application to interact with users.
•Form to input features and display predictions.
Integration:
•Frontend communicates with backend via API.
•JSON payload used to send feature data and receive predictions.
Deployment:
•Application hosted on [Link].
•Backend and frontend deployed seamlessly with environment configurations.
Thursday, December 12, 2024
7
Dataset Overview
Dataset Description:
•Includes academic, demographic, and program-related features
for students.
•Target Variable:: 1 = Success, 0 = Failure).
Features (14 Independent Variables):
•Numerical:
•First Term GPA, Second Term GPA, High School Average
Marks.
•Math Score, English Grade.
•Categorical:
•Gender, Age Group, Residency.
•Previous Education, First Language.
•School, Coop, Fast Track, Funding.
Target Variable Distribution:
•Success: 80%.
•Failure: 20% (class imbalance).
Thursday, December 12, 2024
8
Dataset Features
Academic Performance:
• First Term GPA, Second Term GPA (Scale: 0.0–4.5).
• High School Average Mark (Scale: 0–100).
• Math Score (Scale: 0–50).
Demographics:
• Gender (Male/Female).
• Age Group (Under 20, 20–25, Above 25).
• Residency Status (Domestic/International).
Programs:
• Fast Track, Co-op Participation, Funding Type (Scholarship/No Scholarship).
• School Categories: Business, Engineering, Community, and Health.
Target Variable:
• Binary Classification:
• 1 = Success (Persisted).
• 0 = Failure (Did Not Persist).
Thursday, December 12, 2024
9
Data Preprocessing
1. Missing Value Handling:
•Step: Removed rows with missing values to ensure clean and complete data for model training.
•Tools Used:
•Pandas
•Impact: This ensures no null values disrupt the model's learning process but may reduce the dataset
size.
2. Data Filtering and Normalization:
•Filtering:
•Outlier detection and removal (if applicable) to avoid skewing the model.
•Filtering rows or columns based on domain knowledge or redundancy.
•Normalization:
•Used normalization techniques to bring numerical data to a standard scale, such as between 0 and 1.
•Purpose: Improves the convergence speed of neural networks and ensures features contribute
equally to the learning process.
•Tools Used:
•Scikit-learn's StandardScaler or MinMaxScale.
Thursday, December 12, 2024
10
Splitting Data into Features and Target:
•Features (X):
•Selected independent variables, such as GPA, age group, and high school marks.
•Target (y):
•Binary classification target, representing success (1) or failure (0).
•Purpose: Ensures clear separation for input-output mapping in the machine learning
pipeline.
•Tools Used:
•Pandas for splitting the dataset (data[['feature1', 'feature2']] for X and data['target'] for
y).
4. Tools Overview:
•Python: Base programming language for handling preprocessing tasks.
•Pandas: Efficiently managed data manipulation and cleaning.
•Scikit-learn: Provided functions for scaling, splitting, and standardizing data.
Thursday, December 12, 2024
11
Neural Network Architecture
1. Input Layer
Purpose: Accepts the processed feature set (e.g., GPA, math scores, demographics).
Number of Neurons: Matches the number of input features (e.g., 14 features for this project).
2. Hidden Layers
Purpose: Extract patterns and relationships between input features.
Number of Layers: [Include the actual number of layers in your model, e.g., 2 hidden layers.]
Structure:
Layer 1: [e.g., 64 neurons, ReLU activation]
Layer 2: [e.g., 32 neurons, ReLU activation]
Activation Function:
ReLU (Rectified Linear Unit): Efficient for deep networks and prevents the vanishing gradient problem.
Helps introduce non-linearity to learn complex relationships.
Dropout Layers:
Regularization technique used to prevent overfitting by randomly deactivating a fraction of neurons during training.
3. Output Layer
Purpose: Produces the final prediction (binary classification: success or failure).
Number of Neurons: 1 (for binary classification).
Activation Function:
Sigmoid Activation: Outputs a probability between 0 and 1, representing the likelihood of success.
Threshold: Prediction is classified as:
Success if the output probability ≥ 0.5.
Failure if the output probability < 0.5.
Thursday, December 12, 2024
12
Loss Function
Purpose: Measures the error in predictions during training.
Type: Binary Cross-Entropy Loss.
Reason: Suitable for binary classification problems as it calculates the difference between predicted
probabilities and actual labels.
Optimizer
Purpose: Updates weights to minimize the loss.
Type: Adam Optimizer.
Reason: Combines the advantages of momentum and adaptive learning rate for faster convergence.
Thursday, December 12, 2024
13
Model Evaluation
• Training and validation accuracy/loss plots.
• Observations:
• Model convergence.
• Minimal overfitting.
Thursday, December 12, 2024
14
Deployment
Workflow
Back-End:
•Flask API with Dockerization.
Front-End:
•React app for user interaction.
Platform:
•Render deployment.
Thursday, December 12, 2024
15
End-to-end workflow:
System User input → API → Model →
Integration Prediction → Display.
Real-time prediction demo.
Thursday, December 12, 2024
16
Challenges and
Lessons Learned
Challenges:
•Data preprocessing complexities.
•Integration bugs between API and front-end.
Lessons:
•Team coordination is crucial.
•Importance of deployment testing.
Thursday, December 12, 2024
17
Summary:
Conclusion and •Achieved a reliable prediction system.
•Deployed successfully for real-time usage.
Future Scope Future Scope:
•Expand dataset for better accuracy.
•Implement multi-class classification (e.g., success
levels).
Thursday, December 12, 2024