Python因子分解库:fastFM

FastFM简介

FastFM的主要特点是将是将因子分解封装成scikit-learn API接口,核心代码使用C编写,性能有一定的保障。fastFM主要提供了回归、分类、排序三种问题的解决方法。其中对于优化器,有als,mcmc,sgd三种,Loss function则对应于所需要解决的问题而不同。

TaskSolverLoss
Regressionals, mcmc, sgdSquare Loss
Classificationals, mcmc, sgdProbit(Map), Probit, Sigmoid
RankingsgdBPR

如何选取不同的优化器?

  • ALS:
    • 优点:预测速度快,相比SGD,所需要的参数更少
    • 缺点:需要手动正则化
  • SGD:
    • 优点:预测速度快,可以在大数据量的基础上迭代
    • 缺点:必须手动指定正则化,超参数,step_size步长需要自己指定
  • MCMC:
    • 优点:需要的超参数很少,一般只需要指定迭代次数、初始化方差、以及rank,自动正则化
    • 缺点:在训练的过程中需要预测测试集

FastFM的使用

1、使用ALS进行回归预测

2、使用MCMC进行回归预测

注意事项:fastfm的特征需要csr格式,如果是panas dataframe 需要先进行转换。

参考链接:

微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

Python检验数据是否正态分布

判断数据是否符合正态分布,比如使用3-sigma判断数据异常前,首先需要确定的是数据是否符合正态分布。今天一起

数据探索Pandas-Profiling与Dataprep.…

在使用数据前,我们首先要做的事观察数据,包括查看数据的类型、数据的范围、数据的分布等。Pandas-Profi

开源指标可视化工具Graphite

Graphite 是处理可视化和指标数据的优秀开源工具。它有强大的查询 API 和相当丰富的插件功能设置。事实

发表评论

电子邮件地址不会被公开。 必填项已用*标注