[请教]一个R问题# DataSciences - 数据科学
c*z
1 楼
我最近做life time value,用的BTYD包
http://cran.r-project.org/web/packages/BTYD/vignettes/BTYD-walk
里面主要的方程是
pnbd.EstimateParameters 它会call optim,使用L-BFGS-B method
pnbd.LL 这是Pareto/NBD的likelihood function
我能够replicate原文章的结果,但是公司自己的数据有这么三个issue
1. L-BFGS-B method requires a finite value for fn 应该是likelihood function
overflow了,我对所有数据先取一次log,基本上解决了这个问题
2. 非常非常的慢,即使我使用十分之一的数据,把data frame变成matrix也没有帮助
3. 结果不stable,几乎总是取得local optimal,我试着用了 mothod = SANN (
simulated annealing) 也没有帮助
有点stuck了,所以想问问大家
多谢多谢!
chao
http://cran.r-project.org/web/packages/BTYD/vignettes/BTYD-walk
里面主要的方程是
pnbd.EstimateParameters 它会call optim,使用L-BFGS-B method
pnbd.LL 这是Pareto/NBD的likelihood function
我能够replicate原文章的结果,但是公司自己的数据有这么三个issue
1. L-BFGS-B method requires a finite value for fn 应该是likelihood function
overflow了,我对所有数据先取一次log,基本上解决了这个问题
2. 非常非常的慢,即使我使用十分之一的数据,把data frame变成matrix也没有帮助
3. 结果不stable,几乎总是取得local optimal,我试着用了 mothod = SANN (
simulated annealing) 也没有帮助
有点stuck了,所以想问问大家
多谢多谢!
chao