Skip to content

Shiva-129/Personalized-Learning-System-for-K-12-Students

Repository files navigation

🎓 AI Student Insight System

An intelligent learning analytics platform that helps educators identify student behavioral patterns and provide personalized learning recommendations using machine learning.

Python Streamlit License

📸 Screenshots

Dark Mode

Dark Mode

Light Mode

Light Mode

Prediction Results

Demo Results

🌟 Overview

The AI Student Insight System is designed for K-12 educators and administrators to:

  • Analyze student behavior patterns using machine learning
  • Identify at-risk students early for timely intervention
  • Generate personalized learning recommendations based on individual profiles
  • Track class-wide trends through batch analysis

The system classifies students into three behavioral categories:

  • 🔴 At Risk - Students needing immediate attention and support
  • 🟡 Balanced - Students performing within expected parameters
  • 🟢 High Performer - Students excelling academically

✨ Features

📂 Batch Analysis

Upload a CSV file containing student data to analyze your entire class at once. Get instant insights including:

  • Behavior distribution charts
  • At-risk student identification
  • Downloadable reports with recommendations

👤 Individual Student Report Card

Enter individual student information to generate a personalized assessment including:

  • Behavioral prediction
  • AI usage impact analysis
  • Recommended content strategy
  • Study plan suggestions
  • Monitoring frequency recommendations

🌙 Dark/Light Mode Toggle

Switch between dark and light themes for comfortable viewing in any environment.


🚀 Getting Started

Prerequisites

  • Python 3.9 or higher
  • pip (Python package manager)

Installation

  1. Clone the repository

    git clone https://github.com/Shiva-129/Personalized-Learning-System-for-K-12-Students.git
    cd Personalized-Learning-System-for-K-12-Students
  2. Install dependencies

    pip install -r requirements.txt
  3. Run the application

    streamlit run app.py
  4. Open in browser Navigate to http://localhost:8501


📊 How It Works

The system uses a Random Forest Classifier trained on student behavioral data to predict outcomes based on:

Feature Category Examples
Demographics Age, Grade Level, Gender
Study Habits Study hours, Sleep hours, Social media usage
Academic Performance Attendance, Exam scores, Assignment averages
AI Usage AI tools used, Usage purpose, Dependency level

The model combines these features with engineered metrics like:

  • Study-life balance ratio
  • Engagement score
  • Risk indicators
  • Learning efficiency

🛠️ Tech Stack

  • Frontend: Streamlit
  • Machine Learning: scikit-learn (Random Forest)
  • Data Processing: Pandas
  • Styling: Custom CSS with dark/light theme support

📁 Project Structure

├── app.py                  # Main Streamlit application
├── behavior_model.pkl      # Trained ML model
├── label_encoder.pkl       # Label encoder for predictions
├── feature_list.pkl        # Feature configuration
├── requirements.txt        # Python dependencies
├── .streamlit/
│   └── config.toml        # Streamlit configuration
└── README.md              # This file

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.


📄 License

This project is licensed under the MIT License.


👨‍💻 Author

Shiva - GitHub Profile


Made with ❤️ for better education

About

AI-powered K-12 student analytics platform. Uses ML to predict behavior patterns, identify at-risk students early, and generate personalized learning recommendations. Built with Streamlit & scikit-learn.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages