主要内容

分析生存或可靠性数据

这个例子展示了如何使用审查分析生命周期数据。在生物学或医学应用中,这被称为生存分析,时间可以代表生物体的生存时间或疾病被治愈的时间。在工程应用中,这被称为可靠性分析,时间可以代表一台设备故障的时间。

我们的例子模拟了汽车燃油喷射系统的节流阀失效的时间。

生命周期数据的特殊属性

生命周期数据的一些特征使它们区别于其他类型的数据。首先,寿命总是正值,通常代表时间。其次,有些生命周期可能无法精确观测,因此只能知道它们大于某个值。第三,通常使用的分布和分析技术是相当特定于生命周期数据的

让我们模拟测试100个油门直至失效的结果。如果大多数节流阀的寿命相当长,但有一小部分节流阀很早就出现故障,我们就会生成数据。

rng (2“旋风”);Lifetime = [wblrnd(15000,3,90,1);wblrnd(1500、3、10,1)];

在这个例子中,假设我们在压力条件下测试节流阀,这样每个小时的测试相当于现场100小时的实际使用。出于实用的原因,可靠性测试通常会在一段固定时间后停止。对于这个例子,我们将使用140个小时,相当于14,000个小时的实际服务。有些项目在测试中失败了,而另一些项目则在整个140小时内存活下来。在实际测试中,后者的次数记录为14000次,我们在模拟数据中进行模拟。对故障时间进行排序也是一种常见的做法。

T = 14000;obstime = sort(min(T, lifetime));

我们知道,任何通过测试的节流阀最终都会失效,但测试时间不够长,无法观察到它们的实际失效时间。据了解,它们的寿命仅超过14000小时。据说这些价值观受到了审查。这张图显示了大约40%的数据在14000处被审查。

failed = obstime(obstime= T);情节([0(大小(obstime)), obstime]”,repmat(1:长度(obstime), 2, - 1),...“颜色”“b”“线型”“- - -”) line([T;3e4], repmat(nfailed+(1: n), 2,1),“颜色”“b”“线型”“:”);线([T, T], [0; nfailed + nsurvived],“颜色”“k”“线型”“- - -”)文本(T, 30岁,<—未知生存时间在这里过去)包含(的生存时间);ylabel (“观察数量”

图中包含一个轴对象。axis对象包含149个类型为line, text的对象。

看待分布的方法

在我们检查数据的分布之前,让我们考虑一下查看概率分布的不同方法。

  • 概率密度函数(PDF)表示不同时刻的相对失效概率。

  • 幸存者函数给出了生存概率作为时间的函数,它就是1减去累积分布函数(1-CDF)。

  • 危险率给出了在给定存活时间内发生故障的瞬时概率。它是PDF除以幸存者函数。在这个例子中,风险率是增加的,这意味着随着时间的推移(老化),物品更容易失效。

  • 概率图是重新缩放的CDF,用于将数据与拟合分布进行比较。

下面是这四种图表类型的例子,使用威布尔分布来说明。威布尔分布是对生命周期数据建模的常用分布。

X = linspace(1,30000);次要情节(2 2 1);情节(x, wblpdf (x, 14000, 2), x, wblpdf (x, 18000, 2), x, wblpdf (1.1 x 14000))标题(的概率。密度Fcn”次要情节(2,2,2);情节(x, 1-wblcdf (x, 14000, 2), x, 1-wblcdf (x, 18000, 2), x, 1-wblcdf (1.1 x 14000))标题(“幸存者Fcn”)次要情节(2、2、3);wblhaz = @ (x, a, b) (wblpdf (x, a、b)。/ (1-wblcdf (x, a, b)));情节(x, wblhaz (x, 14000, 2), x, wblhaz (x, 18000, 2), x, wblhaz (1.1 x 14000))标题(“危险率Fcn”)次要情节(2、2、4);probplot (“威布尔”wblrnd(14000 2, 40岁,1))标题(“概率图”

图中包含4个轴对象。轴对象1,标题为Prob。密度Fcn包含3个line类型的对象。标题为Survivor Fcn的Axes对象2包含3个类型为line的对象。标题为Hazard Rate Fcn的坐标轴对象3包含3个类型为line的对象。axis对象4的标题为概率图,包含2个类型为line的对象。

拟合威布尔分布

威布尔分布是指数分布的推广。如果寿命遵循指数分布,那么它们就有恒定的危险率。这意味着它们不会老化,从某种意义上说,在一段时间内观察到故障的概率,考虑到该时间间隔开始时的生存,并不取决于时间间隔开始的位置。威布尔分布具有可能增加或减少的危险率。

其他用于建模寿命数据的分布包括对数正态分布、伽马分布和Birnbaum-Saunders分布。

我们将绘制数据的经验累积分布函数,显示到每个可能生存时间的失败比例。虚线曲线给出了这些概率的95%置信区间。

次要情节(1 1 1);[empF,x,empFlo,empFup] = ecdf(obstime,“审查”、审查);楼梯(x, empF);持有;楼梯(x, empFlo,“:”);楼梯(x, empFup,“:”);持有包含(“时间”);ylabel (“比例”失败);标题(“经验提供”

图中包含一个轴对象。标题为Empirical CDF的axis对象包含3个楼梯类型的对象。

例如,这张图显示,到时间4000时失败的比例约为12%,到此时失败概率的95%置信限为6%至18%。请注意,因为我们的测试只运行了14,000小时,经验CDF只允许我们计算该极限的故障概率。几乎一半的数据被删减为14000,因此经验CDF仅上升到0.53左右,而不是1.0。

威布尔分布通常是一个很好的设备故障模型。这个函数wblfit将威布尔分布拟合到数据,包括带有审查的数据。在计算参数估计之后,我们将使用这些估计来评估拟合Weibull模型的CDF。因为CDF值基于估计的参数,所以我们将计算它们的置信边界。

参数= wblfit(obstime,“审查”、审查);[nlogl,paramCov] = wbllike(参数sts,obstime,审查);xx = linspace(1,2*T,500);[wblF,wblFlo,wblFup] = wblcdf(xx, paramsts (1), paramsts (2),paramCov);

我们可以将经验CDF和拟合CDF的图叠加,以判断威布尔分布对节流可靠性数据的建模效果如何。

楼梯(x, empF);持有handles = plot(xx,wblF,的r -xx wblFlo,“:”xx wblFup,“:”);持有包含(“时间”);ylabel (“拟合失效概率”);标题(“威布尔模型vs.实证”

图中包含一个轴对象。标题为Weibull Model vs. Empirical的坐标轴对象包含楼梯、直线类型的4个对象。

请注意,Weibull模型允许我们预测并计算测试结束后的时间的失败概率。然而,拟合曲线似乎与我们的数据不太匹配。与威布尔模型的预测相比,我们在2000年之前的早期失败太多了,因此,在7000年到13000年之间的失败太少了。这并不奇怪——回想一下,我们用这种行为生成数据。

添加平滑非参数估计

统计和机器学习工具箱™提供的预定义函数不包括任何具有类似这种过量早期失败的分布。相反,我们可能想通过经验CDF绘制一条平滑的非参数曲线,使用函数ksdensity.我们将移除Weibull CDF的置信带,并添加两条曲线,一条具有默认平滑参数,另一条具有平滑参数为默认值的1/3。平滑参数越小,曲线与数据越接近。

delete(handles(2:end)) [npF,ignore,u] = ksdensity(obstime,xx, xx)“岑”审查,“函数”“提供”);线(npF xx,“颜色”‘g’);npF3 = ksdensity(obstime,xx,“岑”审查,“函数”“提供”“宽度”u / 3);线(xx, npF3“颜色”“米”);xlim([0 1.3*T])“威布尔和非参数模型vs.经验模型”)传说(“经验”“符合威布尔”“非参数,默认”'非参数,1/3默认'...“位置”“西北”);

图中包含一个轴对象。标题为Weibull和非参数模型vs. Empirical的坐标轴对象包含楼梯、直线类型的4个对象。这些对象代表经验,拟合威布尔,非参数,默认,非参数,1/3默认。

平滑参数较小的非参数估计与数据匹配良好。然而,就像经验CDF一样,在试验结束后不可能外推非参数模型——估计的CDF水平高于上次观测值。

让我们计算这个非参数拟合的危险率,并在数据范围内绘制它。

Hazrate = ksdensity(obstime,xx,“岑”审查,“宽度”,u/3) ./ (1-npF3);情节(xx, hazrate)标题(“非参数模型的危险率”xlim([0 T])

图中包含一个轴对象。标题为“非参数模型的危险率”的axis对象包含一个类型为line的对象。

这条曲线有点像“浴缸”形状,危险率在2000点附近很高,然后下降到较低的值,然后再次上升。对于在生命早期(婴儿死亡率)和生命后期(老化)更容易失效的组件,这是典型的危险率。

还要注意,对于非参数模型,在最大的未截尾观测值之上无法估计危险率,并且该图降为零。

替代模型

对于我们在这个例子中使用的模拟数据,我们发现威布尔分布并不适合。我们能够用非参数拟合很好地拟合数据,但该模型仅在数据范围内有用。

另一种选择是使用不同的参数分布。统计和机器学习工具箱包括其他常见寿命分布的函数,如对数正态分布、伽马分布和Birnbaum-Saunders分布,以及许多其他在寿命模型中不常用的分布。方法中所述,还可以定义自定义参数模型并使其适合生命周期数据在拟合自定义分布时避免数值问题的例子。

另一种选择是混合使用两个参数分布——一个表示早期失败,另一个表示分布的其余部分。中描述了拟合分布的混合适合自定义分布的例子。