【发布时间】:2017-05-16 12:33:36
【问题描述】:
如何使用 JAVA/Android 估计/拟合指数修正高斯分布 (exGaussian) 的参数?
我需要类似下面的伪代码:
// some observed data points
double dataPoints[] = {200,300,400,278,366,466,325,335,322,332};
// ex-gaussian distribution
ExponentiallyModifiedGaussianDistribution exGaussian = new ExponentiallyModifiedGaussianDistribution();
// MLE
MaximumLikelihoodEstimation MLE = new MaximumLikelihoodEstimation(dataPoints, exGaussian);
MLE.setGuess(3.0, 1.0, 1.0);
MLE.compute();
// get estimated / fitted parameters
double[] parameterEstimates = MLE.getEstimates();
有一些示例演示了 Gamma Distribution 的参数估计。但是这个库似乎不是开源的。
我在 JAVA 中找到了ex-gaussian distribution implementation。但是缺少参数估计。
我认为有很多方法可以估计参数,例如使用最大似然估计(MLE)等。
更新 1:
我会避免使用less than 40 dataPoints。
更新 2:
估计分布参数的一个简单替代方法是矩估计方法 (described on wiki)
【问题讨论】:
标签: java android mathematical-optimization mle