分布拟合

假设您要对电子元件使用寿命的分布进行建模。变量 life 用于测量 50 个完全相同的电子元件的失效时间。
life = [ 6.2 16.1 16.3 19.0 12.2 8.1 8.8 5.9 7.3 8.2 … 16.1 12.8 9.8 11.3 5.1 10.8 6.7 1.2 8.3 2.3 … 4.3 2.9 14.8 4.6 3.1 13.6 14.5 5.2 5.7 6.5 … 5.3 6.4 3.5 11.4 9.3 12.4 18.3 15.9 4.0 10.4 … 8.7 3.0 12.1 3.9 6.5 3.4 8.5 0.9 9.9 7.9]’;
用直方图可视化数据。
binWidth = 2; lastVal = ceil(max(life)); binEdges = 0:binWidth:lastVal+1; h = histogram(life,binEdges); xlabel(‘Time to Failure’); ylabel(‘Frequency’); ylim([0 10]);
MATLAB 频数分布拟合 - 图1
由于使用寿命数据通常遵循 Weibull 分布,因此可以使用前一个曲线拟合示例中的 Weibull 曲线来拟合直方图。要尝试此方法,请将直方图转换为一个 (x,y) 点集,其中 x 是 bin 中心,y 是 bin 高度,然后对这些点进行曲线拟合。
counts = histcounts(life,binEdges); binCtrs = binEdges(1:end-1) + binWidth/2; h.FaceColor = [.9 .9 .9]; hold on plot(binCtrs,counts,’o’); hold off
MATLAB 频数分布拟合 - 图2
但是,对直方图进行曲线拟合容易出现问题,通常不建议这样做。

  1. 该过程违背了最小二乘拟合的基本假设。bin 计数是非负值,这意味着测量误差不对称。而且,bin 计数在分布的尾部和中心具有不同的变异性。最后,bin 计数的总和是固定的,这意味着它们不是独立的测量值。
  2. 如果您对条形高度进行 Weibull 曲线拟合,则必须对曲线进行约束,因为直方图是经过缩放的经验概率密度函数 (pdf)。
  3. 对于连续数据,对直方图(而不是数据)进行曲线拟合会丢弃信息。
  4. 直方图的条形高度依赖于 bin 边界和 bin 宽度的选择。

对于许多参数化分布,最大似然是更好的参数估计方法,因为它能避免这些问题。Weibull pdf 与 Weibull 曲线具有几乎相同的形式:
y=(b/a)(x/a)(b−1)e−(x/a)b.
只不过 b/a 取代了尺度参数 c,因为该函数的积分必须为 1。要使用最大似然对数据进行 Weibull 分布拟合,请使用 fitdist 并将 ‘Weibull’ 指定为分布名称。与最小二乘不同,最大似然会找到与缩放后的直方图最匹配的 Weibull pdf,而无需最小化 pdf 与条形高度之差的平方和。
pd = fitdist(life,’Weibull’);
绘制经过缩放的数据直方图,并叠加绘制拟合的 pdf。
h = histogram(life,binEdges,’Normalization’,’pdf’,’FaceColor’,[.9 .9 .9]); xlabel(‘Time to Failure’); ylabel(‘Probability Density’); ylim([0 0.1]); xgrid = linspace(0,20,100)’; pdfEst = pdf(pd,xgrid); line(xgrid,pdfEst)
MATLAB 频数分布拟合 - 图3
最佳做法是检查模型的拟合优度。
尽管通常不建议对直方图进行曲线拟合,但在某些情况下这样做是合适的。有关示例,请参阅Fit Custom Distributions

分布拟合函数

  • Statistics and Machine Learning Toolbox™ 包含用于对数据进行概率分布对象拟合的函数 fitdist。它还包括使用最大似然来拟合参数化分布的专用拟合函数(例如 wblfit)、用于拟合自定义分布(此时不使用专用拟合函数)的函数 mle,以及用于对数据进行非参数化分布模型拟合的函数 ksdensity
  • Statistics and Machine Learning Toolbox 还提供了 分布拟合器 App,它能简化分布拟合中的许多任务,例如生成可视化和诊断图。
  • 利用 Optimization Toolbox™ 中的函数,您可以拟合复杂的分布,包括具有参数约束的分布。
  • MATLAB® 函数 fminsearch 提供最大似然分布拟合。