Chatbot For Banking Project Report - Phase - 1,2,3
Chatbot For Banking Project Report - Phase - 1,2,3
ENGINEERING
REGULATIONS 2021
Name:
Reg.No:
Department:
Year/Sem:
KARPAGA VINAYAGA
COLLEGE OF ENGINEERING & TECHNOLOGY
(Approved by AICTE, Accrediated by NBA & Affiliated to Anna University)
G.S.T Road, Chinna Kolambakkam, Padalam – 603 308,
Madhuranthagam (Tk), Kancheepuram (Dt).
BONAFIDE CERTIFICATE
REGISTER NUMBER:
Date :
M.Dinesh Karthick
Register Number:
421223106006
1.Problem Statement
2.Objective
3.Scope
Features Planned:
Constraints:
Feature Engineering:
Create user profiles based on genre preferences
Model Building:
Content-Based Filtering
Model Evaluation:
Deployment:
Optional deployment as a Streamlit app
Language: Python
M. Dinesh Karthick
P. Varunraj
Feature Engineering
Department: ECE
1. Problem Statement
2.
The objective of this project is to develop an AI-driven
movie recommendation system that leverages data
analysis and machine learning algorithms to provide
personalized movie suggestions to users. This system
aims to bridge the gap between user preferences and
available movie content by identifying patterns in user
data and matching them with relevant movie genres,
directors, actors, and other attributes.
3. Project Objectives
To build a robust recommendation model using supervised learning techniques.
Data Type: Structured data consisting of movie attributes (e.g., genre, director,
cast) and user interaction data (e.g., ratings, reviews).
6. Data Preprocessing
Combining features such as genre, director, and cast to create unique identifiers
for recommendation purposes.
9. Model Building
Splitting data into training and testing sets with an 80-20 ratio.
1. Problem Statement
With an exponential rise in content, users face difficulty in finding movies that
match their tastes. This project aims to solve that by building an AI-powered
recommendation system that suggests personalized movie content. It is a
collaborative filtering and content-based recommendation problem using machine
learning techniques.
2. Abstract
This project focuses on designing a personalized movie recommendation system
using an AI-driven matchmaking approach. The goal is to enhance user experience
by providing tailored movie suggestions based on user preferences, watch history,
and movie metadata. The system combines collaborative filtering and content-based
techniques. We used publicly available datasets, performed preprocessing and
exploratory analysis, engineered key features, trained models like KNN, SVD, and
neural networks, and evaluated their performance. The final model is deployed using
Streamlit to make real-time predictions.
.
3. System Requirements
• Hardware:
• RAM: 8GB+
• Software:
• Python 3.8+
4. Objectives
Recommend movies based on user preferences
Improve prediction accuracy using hybrid modeling
Enable real-time suggestions via a web interface
Enhance user engagement with relevant content
5. Flowchart of Project Workflow
6. Dataset Description
Source: Kaggle - MovieLens Dataset
Type: Public
7. Data Preprocessing
Distribution of ratings
Most watched and top-rated movies
Heatmap for user-movie interactions
RMSE, MAE
KNN RMSE: 0.91 | SVD RMSE: 0.87
ROC not applicable (not binary classification)
12. Source code:
import pandas as pd
movies = pd.read_csv('movies.csv')
ratings = pd.read_csv('rating.csv')
print(data.isnull().sum())
user_movie_matrix.fillna(0, inplace=True)
# TF-IDF on genres
movies['genres'] = movies['genres'].fillna('')
tfidf = TfidfVectorizer(stop_words='english')
tfidf_matrix = tfidf.fit_transform(movies['genres'])
def get_recommendations(title):
sim_scores = list(enumerate(cosine_sim[idx]))
model_knn.fit(user_movie_matrix.values)
print(indices)
top_movies = data['title'].value_counts().head(10)
plt.figure(figsize=(10,5))
plt.xlabel("Ratings Count")
plt.ylabel("Movie Title")
plt.show()
plt.figure(figsize=(8,5))
plt.title('Distribution of Ratings')
plt.xlabel('Rating')
plt.ylabel('Count')
plt.show()
rating_counts = data['rating'].value_counts().sort_index()
plt.figure(figsize=(6,6))
plt.axis('equal')
plt.show()
if 'timestamp' in data.columns:
yearly_avg = data.groupby('year')['rating'].mean()
plt.figure(figsize=(10,5))
plt.xlabel('Year')
plt.ylabel('Average Rating')
plt.grid(True)
plt.show()
System
Student Name:P.Varunraj
Register Number: 421223106026
Institution: Karpaga Vinayaga College of engineering and
technology
Department: ECE
Date of Submission: 20/05/2025
1. Problem Statement
2. Proposed Solution
Key Features:
Personalized recommendations
5. Feedback Loop: Updates the model with user ratings and actions
6. Feedback Loop: Users/doctors provide feedback to retrain and
improve mode
5.Feasibility & Challenges
Feasibility:
Feasibility:
Technologies for recommender systems are well-
documented, and datasets are widely available.
Implementation is practical with modest resources.
Challenges:
Privacy concerns
Solutions: Use hybrid models, matrix factorization, and
anonymized data processing.
8. Future Enhancements