Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

AI Project Topic Recommender

A content-based recommendation system that suggests relevant AI/Data Science project topics to students based on their interests and skills. Built as part of Internship Task AI-SS-003.

Features

Core:

  • Student interest & skill profiles
  • Project topic database (10 sample topics across multiple domains)
  • Text preprocessing (tokenization, stopword removal, lemmatization)
  • TF-IDF vectorization of topics and student profiles
  • Cosine similarity matching between students and topics
  • Top-N personalized recommendations

Bonus:

  • Difficulty level filtering (Beginner / Intermediate / Advanced)
  • Domain filtering
  • Trend analysis — most common domains, technologies, and difficulty spread across the topic catalog
  • Topic clustering (KMeans) — groups similar topics together automatically

Tech Stack

  • Python 3
  • pandas, numpy
  • scikit-learn — TfidfVectorizer, cosine_similarity, KMeans
  • NLTK — tokenization, stopwords, lemmatization

Setup Instructions

  1. Clone or download this repository

    git clone <your-repo-url>
    cd <your-repo-folder>
  2. Install dependencies

    pip install pandas numpy scikit-learn nltk
  3. Run it

    python3 topic_recommender.py

    On first run, NLTK automatically downloads the small data packages it needs (punkt, stopwords, wordnet) — this requires an internet connection the first time only.

How It Works

  1. Each project topic's title, domain, and tech stack are combined into one text string and cleaned (lowercased, stopwords removed, lemmatized).
  2. Each student's interests and skills are combined and cleaned the same way.
  3. Both are converted into TF-IDF vectors using the same vectorizer.
  4. Cosine similarity is computed between a student's vector and every topic vector — higher similarity means a better match.
  5. The top N most similar topics are returned as recommendations.
  6. Bonus features (filtering, trend analysis, clustering) build on top of this same vector space.

Example Output

AI Project Topic Recommendations for Student S001
============================================================

1. AI-Powered Chatbot for Mental Health Support
   Domain: Healthcare
   Difficulty: Intermediate
   Duration: 4 weeks
   Tech Stack: Python, NLP, Transformers, Flask
   Match Score: 61.2%
...

Project Structure

.
├── topic_recommender.py     # Main recommender script
├── README.md
└── PROJECT_REPORT.md

Author

Built for the Free Online AI & Data Science Internship (Task AI-SS-003).

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages