fastfm2

A Library for Factorization Machines


License
GPL-3.0
Install
pip install fastfm2==0.5.2

Documentation

Welcome to fastfm v2

CI-Badge

NB: This is still in early development. Use v1 unless you want to contribute to the next version of fastfm

To learn more about the library, read our introduction in the paper presenting it.

Note that c++ dependencies are in a submodule, so to clone with all dependencies included, you should use:

 git clone --recurse-submodules https://github.com/palaimon/fastfm2

Installing

We infrequently push wheels to pypi that you can install with pip install fastfm2.

Source Install

You can build the latest version from source (requires cmake>=3.12) by first compiling the c++ library from the project root directory:

make

then install fastfm2 python lib locally:

User install

pip install .

Also you can build python wheels:

macos:

pip wheel . --no-deps -w wheelhouse
delocate-wheel -w fixed_macos_whls wheelhouse/fastfm*.whl

linux:

pip wheel . --no-deps -w wheelhouse
auditwheel repair wheelhouse/fastfm-*.whl

(auditwheel used instead delocate).

Dev install

For development we use poetry as dependency managmer:

poetry install

and wheels:

poetry build

Tests

To run the tests launch:

pytest

For the tests to run, you'll need to install the following optional dependency:

pip install pytest