Welcome to the "Open Source and Dataverse" Hackathon!
This document provides an overview of the Academic Resource Recommendation System project. It details the objectives, features, and implementation phases for the system, as well as how participants can contribute to its development.
In schools and universities, it is often challenging to recommend academic resources due to the lack of alignment between department courses, required skills, gained skills, and professors' expertise. This project aims to address this issue by developing an innovative web application powered by Machine Learning to provide personalized academic resource recommendations.
Key Objectives:
- Build a cluster-based recommendation system using Machine Learning.
- Develop advanced resource management and statistical analysis features to enhance decision-making for administrators.
- Ensure optimal usability and security within a web application framework.
-
Machine Learning Recommendation System
- Develop a clustering model to recommend academic resources based on student needs.
- Evaluate models using performance metrics like Silhouette Score, Calinski-Harabasz Index, and Davies-Bouldin Index.
-
Backend Functionality
- Implement RESTful APIs for CRUD operations on courses and professors.
- Enable Machine Learning predictions via API endpoints.
- Provide statistical insights through dynamic visualizations.
-
Frontend Interface
- Admin dashboard for resource management and statistical visualization.
- Professor dashboard for course-related notifications and updates.
- Authentication and secure user management.
-
Data Preparation:
- Clean and preprocess data for consistency and usability.
- Encode categorical variables and engineer features for optimal performance.
-
Modeling:
- Train clustering algorithms and evaluate using Silhouette Score, Calinski-Harabasz Index, and Davies-Bouldin Index.
- Export the trained model in
.pkl
or.h5
format for deployment.
-
Deployment:
- Integrate the model into the backend via RESTful APIs for real-time predictions.
-
API Endpoints:
- CRUD operations for managing courses and professors.
- Predictions for course details based on input data.
-
Statistical Analysis:
- Visualizations for metrics like course completion rates, required vs. gained skills, and professor workloads.
-
Security:
- Implement token-based authentication and password encryption using
bcrypt
. - Notification service for real-time updates to professors.
- Implement token-based authentication and password encryption using
-
User Interfaces:
- Home Page: Introduction to the platform’s objectives.
- Admin Dashboard: Statistics visualization, resource management, and testing the recommendation system.
- Professor Dashboard: Notifications and assigned course details.
-
Authentication:
- Secure login page for admins and professors.
Phase | Start Time | Review Time |
---|---|---|
Machine Learning & Database Setup | 11:00 AM, 25/11 | 10:00 PM, 25/11 |
Backend Development | 11:00 PM, 25/11 | 9:00 AM, 26/11 |
Frontend Development | 9:00 AM, 26/11 | 4:00 PM, 26/11 |
Documentation & Presentation | 4:30 PM, 26/11 |
- Students, professionals, and enthusiasts in web development and data science.
- Full-stack web development.
- Artificial Intelligence modeling.
- Database management.
- Personalized recommendations improve students' learning experiences.
- Optimized resource allocation reduces waste.
- Statistical insights enhance decision-making for administrators.
- Improved alignment of required and gained skills for academic success.
- Install Python 3.9 or higher.
- Install required packages:
pandas
,numpy
,scikit-learn
,flask
,bcrypt
, etc.
- Clone the repository:
git clone <repository_url> cd academic-resource-recommendation-system
- Install dependencies:
pip install -r requirements.txt
- Backend:
python app.py
- Frontend:
Openindex.html
in a browser or use a framework like React/Vue.js for dynamic rendering.
- Fork the repository and create feature branches for contributions.
- Submit a pull request with detailed descriptions of changes.
- Adhere to coding standards and comment your code thoroughly.
- Machine Learning Model: Accuracy, evaluation metrics, and innovation.
- Backend: API completeness, efficiency, and security.
- Frontend: Usability, aesthetics, and responsiveness.
- Documentation: Clarity and comprehensiveness.
For any questions or clarifications, feel free to reach out to the event organizers. Let’s innovate and create something impactful together!
Happy Coding! 🎉