Looks like a nice collection you've built here, however I'm observing strange behavior with your package unfortunately. For example, with both FISM and BPRMF:
User_coverage remains static between epochs
Item coverage static at 1
SPS often 0 where other packages using the same dataset and cost functions (lightFM, implicit etc.) show progress
A blockbuster share of either 0, or 6, neither of which makes much sense.
Ngdc remains static between epochs also
Yet "Last train cost" goes down and recall varies between epochs.
Model filesize and test results look identical between epochs.
The dataset is in the correct format etc. and consists of around 1.6M records. I have been training of 25 epochs.
Looks like a nice collection you've built here, however I'm observing strange behavior with your package unfortunately. For example, with both FISM and BPRMF:
User_coverage remains static between epochs Item coverage static at 1 SPS often 0 where other packages using the same dataset and cost functions (lightFM, implicit etc.) show progress A blockbuster share of either 0, or 6, neither of which makes much sense. Ngdc remains static between epochs also
Yet "Last train cost" goes down and recall varies between epochs.
Model filesize and test results look identical between epochs.
The dataset is in the correct format etc. and consists of around 1.6M records. I have been training of 25 epochs.
Command run:
python2 train.py -d PATH/TO/DATA/ -m FISM --loss BPR --dir FISM_BPR/ --metrics sps,recall --save Best