项目作者: CasperCL

项目描述 :
Collaborative filtering using SVD
高级语言: Python
项目地址: git://github.com/CasperCL/watson.git
创建时间: 2017-11-23T18:52:41Z
项目社区:https://github.com/CasperCL/watson

开源协议:Apache License 2.0

下载


Watson 🔎

DISCLAIMER: This project is a Work in Progress.

Watson is a recommender system that uses Singular Value Decomposition (SVD) to find latent features in historical datasets.

Get started

  1. python3.6 -m venv env
  2. source env/bin/activate
  3. pip install -r requirements.txt

The following scripts are available:

  1. # Generate files
  2. python generate.py
  3. # Train and Test
  4. python recommend.py

Goals

  1. Recommendation for items for a single user based on its buying history
  2. Recommendation for items, not previously bought, for a single user based on its buying historical and other simular users (Item-Item Collaborative Filtering)
  3. Other users bought X also bought Y (Item-Item Collaborative Filtering)
  4. Recommend similar (categorical) product (Content-Based)

Scoring

Items can be ranked based on the frequency on which items are bought. An item that was bought 10 times has a 10 times higher score compared with a product that has been bought only once.
Feature scaling is applied to normalise the scores.

Sources

  1. Recommender Systems: An Introduction by Dietmar Jannach by Dietmar Jannach, Markus Zanker, Alexander Felfernig, Gerhard Friedrich.
  2. Cambridge Spark - Implementing your own recommender systems in Python