/Book-Recommendation-System

System that recommends a new book by looking at a person's previous choices with the collaborative filtering method.

Primary LanguageC

Book-Recommendation-System-by-Collaborative-Filtering-using-C

System that recommends a new book by looking at a person's previous choices with the collaborative filtering method.

System includes 3 subsections:

1. Calculation of the similarity of a reader to other readers: The similarity of a reader to other readers will be calculated using the pearson coefficient. While calculating, transactions will be made for books that both people read. Using the Pearson coefficient, the similarity of persons a and b is calculated as follows:

sim
P: books read by both a and b
ra,p: User a's score for book p
rb,p: User b's score for book p
ra: Average score of books read by user a
rb: Average score of books read by user b
Similarity value is between -1 and 1.

2. Determining the k people with whom a reader is the most similar: Find the reader most similar to the reader, based on the result of the previous calculation for a given value of k without sorting.

3. Suggesting a book : To suggest a book, make a calculation for most similar k person with equation below. On this equation, N is equal to most similar k person/s. The calculated value pred(a,p) is estimated point to a book which is not read by user.
pred

Input file is "RecomendationDataSet.csv".
SCREENSHOTS
1
1

2
2