Skip to content

πŸš€ Course Recommendation System is a machine learning-powered web application designed to recommend similar courses from Coursera's vast dataset of over 3,000 courses. Built using Python, Scikit-learn, and Streamlit, the app preprocesses course data, applies text vectorization, and leverages cosine similarity to offer personalized recommendations.

Notifications You must be signed in to change notification settings

Ganesh2409/Course-Recommendation-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Course Recommendation System πŸš€

A Dockerized machine learning-based web application that recommends similar courses from a dataset of over 3,000 courses on Coursera. The app uses text vectorization and cosine similarity to provide personalized course recommendations based on user input.

Features πŸ”₯

  • Data preprocessing and cleaning
  • Vectorization of course descriptions and skills using sklearn
  • Cosine similarity-based course recommendation engine
  • Interactive web interface built with Streamlit
  • Fully Dockerized for easy deployment

Table of Contents πŸ“‘

Installation πŸ› οΈ

To run the project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/ganesh2409/Course-Recommendation-System.git
    cd Course-Recommendation-System
  2. Create and activate a virtual environment (optional but recommended):

    python -m venv env
    source env/bin/activate  # Mac/Linux
    .\env\Scripts\activate   # Windows
  3. Install the required dependencies:

    pip install -r requirements.txt

Project Structure πŸ—‚οΈ

Course-Recommendation-System/
β”œβ”€β”€ Data/
β”‚   └── Coursera.csv                                  # Coursera dataset
β”œβ”€β”€ models/
β”‚   β”œβ”€β”€ course_list.pkl                               # Precomputed similarity matrix
β”‚   └── courses.pkl                                   # Processed course list
β”œβ”€β”€ main.py                                           # Streamlit app script
β”œβ”€β”€ CourseRecommendationSystem.py                     # Data preprocessing and model training script 
β”œβ”€β”€ requirements.txt                                  # Python dependencies
β”œβ”€β”€ Dockerfile                                        # Docker configuration
└── README.md                                         # Project README file

Usage βš™οΈ

  1. Run the preprocessing and model training script:

    python CourseRecommendationSystem.py
  2. Run the Streamlit application:

    streamlit run main.py
  3. Navigate to the local URL (http://localhost:8501) to use the web app.

Docker Hub 🐳

To directly use the project from Docker Hub

  1. Pull the pre-built Docker image:

    docker pull ganeshpinnamaneni/course-recommendation-system:latest
  2. Run the Docker container:

    docker run -p 8501:8501 ganeshpinnamaneni/course-recommendation-system:latest
  3. Access the web app at http://localhost:8501.

Contributing 🀝

We welcome contributions to improve the Course Recommendation System. Here's how you can contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Commit your changes (git commit -m 'Add new feature').
  4. Push to the branch (git push origin feature-branch).
  5. Create a Pull Request.

Contact πŸ“§

For any questions or feedback, feel free to reach out:

Made with ❀️ ( Ν‘β€’ ΝœΚ– Ν‘β€’ ) Follow for more  ... :) 

About

πŸš€ Course Recommendation System is a machine learning-powered web application designed to recommend similar courses from Coursera's vast dataset of over 3,000 courses. Built using Python, Scikit-learn, and Streamlit, the app preprocesses course data, applies text vectorization, and leverages cosine similarity to offer personalized recommendations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published