/retailbox

🛍️RetailBox - eCommerce Recommender System using Machine Learning

Primary LanguagePythonMIT LicenseMIT


RetailBox

🛍️ Machine Learning eCommerce Recommender System

Overview

RetailBox is a recommender system that uses machine learning to make recommendations based off of a user's past purchase history. This project was inspired by Amazon and their recommender system techology. In this system we use Collaborative Filtering based off of implicit user data.

Dataset

The dataset we used is the UCI Online Retail Dataset. This dataset has 25900 transactions, with each transaction containing 20 features and these transactions were made by 4,300 users.

Training/Test Split

The way we split the data was by time. In this scenario, our system makes recommendations based on implicit user data from the past so this is how we split our data.

Context of Recommendation Scenario

In this recommender system, the context we used can be seen by the diagram below. Our main model to generate recommendations for a user and if a user bought an item our system recommended, then it was a success!

Installation

pip install retailbox

CLI

$ retailbox --help

  🛍️ Machine Learning eCommerce Recommender System

  Usage
    $ retailbox [<options> ...]

  Options
    --help, -h                Display help message
    --search, -s              Search customer by ID [Can be any integer 0-4338]
    --customer, -c <int>      Input customer ID [Can be any integer 0-4338]
    --info, -i                Display customer information
    --status, -s              Display process info
    --list, -l                List available customer IDs
    --version, -v             Display installed version

  Examples
    $ retailbox --help
    $ retailbox --search
    $ retailbox --customer 1028
    $ retailbox -c 1028
    $ retailbox -m 1028 --info
    $ retailbox -m 1028 -i --status

Usage

from retailbox.recommender import recommender

customer = 2874  # Customer ID
status = True   # Display status information of program while running

# Generate recommendations
recommender(
    customer_id=customer,
    status=status)

References

Attribution and Inspiration

Contributing

Contributions are always welcome! For bug reports or requests please submit an issue..

License

MIT