https://github.com/abdullahselek/koolsla
Food recommendation tool with Machine learning.
https://github.com/abdullahselek/koolsla
cosine-similarity machine-learning pypi-packages python-2 python-3 tf-idf
Last synced: 12 months ago
JSON representation
Food recommendation tool with Machine learning.
- Host: GitHub
- URL: https://github.com/abdullahselek/koolsla
- Owner: abdullahselek
- License: mit
- Created: 2018-02-16T17:53:36.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-02-17T20:56:24.000Z (about 4 years ago)
- Last Synced: 2025-03-23T18:39:19.134Z (about 1 year ago)
- Topics: cosine-similarity, machine-learning, pypi-packages, python-2, python-3, tf-idf
- Language: Python
- Homepage: https://koolsla.abdullahselek.com/
- Size: 13.4 MB
- Stars: 21
- Watchers: 2
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: COPYING
Awesome Lists containing this project
README
|logo| koolsla
==============
.. |logo| image:: https://images1-focus-opensocial.googleusercontent.com/gadgets/proxy?url=https://raw.githubusercontent.com/abdullahselek/koolsla/master/resources/logo.png&container=focus&resize_w=20&resize_h=20
.. image:: https://github.com/abdullahselek/koolsla/workflows/koolsla%20ci/badge.svg
:target: https://github.com/abdullahselek/koolsla/actions
.. image:: https://img.shields.io/pypi/v/koolsla.svg
:target: https://pypi.python.org/pypi/koolsla/
.. image:: https://img.shields.io/pypi/pyversions/koolsla.svg
:target: https://pypi.org/project/koolsla
.. image:: https://readthedocs.org/projects/koolsla/badge/?version=latest
:target: http://koolsla.readthedocs.org/en/latest/?badge=latest
.. image:: https://codecov.io/gh/abdullahselek/koolsla/branch/master/graph/badge.svg
:target: https://codecov.io/gh/abdullahselek/koolsla
+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
| Linux | Windows |
+==========================================================================+====================================================================================+
| .. image:: https://travis-ci.org/abdullahselek/koolsla.svg?branch=master | .. image:: https://ci.appveyor.com/api/projects/status/l5bt8yw7n35cvsov?svg=true |
| :target: https://travis-ci.org/abdullahselek/koolsla | :target: https://ci.appveyor.com/project/abdullahselek/koolsla |
+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
Description
===========
koolsla (`Coleslaw `_) is a recommendation tool based on Machine Learning with contents.
Developed with the power of `tf-idf `_ and `Cosine Similarity `_.
The user gives a natural number that corresponds to the ID of a unique dish name. Through `tf-idf` the plot summaries of 424508 different dishes that reside in the dataset, are analyzed and vectorized.
Set of dishes (number set by user) is chosen as recommendations based on their `cosine similarity` with the vectorized input.
koolsla is mainly an educational project.
Installation
============
You can install koolsla using::
$ pip install koolsla
Getting the code
================
The code is hosted at https://github.com/abdullahselek/koolsla
Check out the latest development version anonymously with::
$ git clone git://github.com/abdullahselek/koolsla.git
$ cd koolsla
To install test dependencies, run either::
$ pip install -Ur requirements.testing.txt
Running Tests
=============
The test suite can be run against a single Python version which requires ``pip install pytest`` and optionally ``pip install pytest-cov``
(these are included if you have installed dependencies from ``requirements.testing.txt``)
To run the unit tests with a single Python version::
$ py.test -v
To also run code coverage::
$ py.test --cov=koolsla
To run the unit tests against a set of Python versions::
$ tox
Sample Usage
============
Import recommender::
from koolsla import recommender
Getting recommendations with dish id and recommendation count::
// Returns dictionary of tuples [(dish_id_1, similarity_ratio1), (dish_id_2, similarity_ratio2), (dish_id_3, similarity_ratio3)]
recommendatons = recommender.recommend(82, 3)
CLI
===
After getting the code from https://github.com/abdullahselek/koolsla, run command::
$ pip install -r requirements.txt
And it's ready to use, there is detailed help menu which you can follow. One of the most used function for recommendation::
$ python koolsla.py -d 25 --recommend 3
For the help menu::
$ python koolsla.py --help