计算估计参数的置信区间(需要)统计和机器学习工具箱)
计算估计参数的95%置信区间ci
= sbioparameterci (fitResults
)fitResults
,一个NLINResults对象
或者OptimerResults对象
返回的sbiofit
函数。ci
是一个ParameterConfidenceInterval
包含计算的置信区间的对象。
使用一个或多个指定的其他选项ci
= sbioparameterci (fitResults
,名称,价值
)名称,价值
对论点。
加载数据
加载样本数据以适应。数据存储为带有变量的表ID,时间,CentralConc, 和peripheralconc..该合成数据代表在输注剂量为三个个体后在八个不同时间点测量的血浆浓度的时间过程。
负载data10_32R.matgData = groupedData(数据);gData.Properties.VariableUnits = {'',“小时”,毫克/升的,毫克/升的};sbiotrellis(gdata,'ID',“时间”,{'CentralConc',“PeripheralConc”},'标记','+',...“线型”,'没有任何');
创建模型
创建一个两室模型。
pkmd = pkmodeldesign;pkc1 = addcompartment(pkmd,'中央');pkc1.dosentype =“注入”;pkc1.eliminationtype =“linear-clearance”;pkc1。H一个年代ResponseVariable = true; pkc2 = addCompartment(pkmd,'外围');模型=构造(pkmd);configset = getconfigset(模型);configset.CompileOptions.UnitConversion = true;
定义剂量
定义输注剂量。
剂量= sbiodose (“剂量”,“TargetName”,“Drug_Central”);剂量。年代t一个rtTime = 0; dose.Amount = 100; dose.Rate = 50; dose.AmountUnits =毫克的;dose.timeUnits =.“小时”;dose.rateunits =.'毫克/小时';
定义参数
定义要估计的参数。为每个参数设置参数界限。除了这些显式范围之外,参数转换(例如日志,登录或探测)施加隐含界限。
responseMap = {“Drug_Central = CentralConc”,'taxperipheral = peripheralconc'};paramsToEstimate = {'log(central)',的日志(外围),“12”,“Cl_Central”};estimatedParam = estimatedInfo (paramsToEstimate,...“InitialValue”,[1 1 1 1],...“界限”,[0.1 3; 0.1 10; 0 10; 0.1 2]);
合适的模型
执行非合集拟合,即为每个患者估计一组参数。
UnopooledFit = SBIOfit(模型,GDATA,respectemap,估计日常,剂量,'汇集',错误的);
执行汇总的合适,即所有患者的一组估计参数。
pooledFit = sbiofit(模型、gData responseMap estimatedParam,剂量,'汇集',真正的);
计算估计参数的置信区间
为未凝固的拟合中的每个估计参数计算95%置信区间。
ciParamUnpooled = sbioparameterci (unpooledFit);
显示结果
以表格格式显示置信区间。有关每个估计状态的含义的详细信息,请参阅参数置信区间估计状态.
CI2Table(Ciparamunpooled)
ans = 12x7表组名称估计浓密interval型alpha状态_____ ______________________________________________ 1 {'central'1.1533 1.6906高斯0.05 0.83143 2.3551高斯0.83143 2.3551高斯0.83143 2.3551高斯0.83143 2.3551高斯0.83143 2.3551高斯0.83143 2.3551高斯0.83143。0.80247高斯0.05约束1 {'cl_clean'} 0.52898 0.44842 0.44842 0.44842 0.60955高斯0.05估计2 {'Central'} 1.8322 1.7893 1.8751高斯0.05成功2 {'feripheral'} 5.3368 3.9133 6.7602高斯0.05成功2 {'Q12'0.2093 0.27641 0.27641 0.2093 0.27641 0.27351 0.27641 0.2093 0.34351高斯0.05成功2 {'CL_CONCRAL'} 0.86034 0.8034 0.91755高斯0.05成功3 {'Central'} 1.6657 1.5818 1.7497高斯0.05 1.7497高斯0.05成功3 {'外围'} 5.5632 4.7557 6.3708高斯0.05成功3 {'Q12'0.65581 0.91142高斯0.65581 0.91142高斯0.65581 0.91142高斯0.65581 0.91142高斯0.65581 0.91142高斯0.05成功3 {'cl_clean'} 1.0233 0.96375 1.0828高斯0.05成功
绘制置信区间。若置信区间的估计状态为成功
,它被绘制成蓝色(第一种默认颜色)。否则,它将被绘制成红色(第二种默认颜色),这表明可能需要进一步研究拟合参数。若置信区间为不是估计
,然后该函数用居中交叉绘制红线。如果存在任何具有估计值0的转换参数(对于日志变换)和1或0(对于探测或记录变换),则不会绘制用于那些参数估计的置信区间。查看颜色顺序,键入get(大的,“defaultAxesColorOrder”)
.
以与它们出现的相同顺序从左到右显示组groupname
对象的属性,用于标记x轴。y标签是转换后的参数名。
情节(ciParamUnpooled)
计算集合拟合的置信区间。
ciparampooled = sbioparameterci(pooledfit);
显示置信区间。
CI2Table(Ciparampooled)
ans = 4x7表组名称估计浓度inalla状态______________________________ ____________________ {'Central'} 1.6626 1.3287 1.6965高斯0.89848 4.8323高斯0.89848 4.8323高斯0.89848 4.8323高斯0.89848 4.8323高斯0.89848 4.8323高斯0.89848 4.8323高斯0.89848 4.8323高斯0.89848。0.85152高斯0.05约束汇总{'CL_CONTRAL'} 0.78493 0.59222 0.97764高斯0.05可估计
绘制置信区间。组名被标记为“pooled”,以表明这种匹配。
情节(ciParamPooled)
把所有的置信区间结果画在一起。默认情况下,每个参数估计的置信区间绘制在单独的坐标轴上。垂直直线组在公共拟合中计算的参数估计的置信区间。
ciAll = [ciParamUnpooled; ciParamPooled];情节(ciAll)
您还可以使用“分组”布局,在一个根据参数估计分组的轴上绘制所有置信区间。
情节(ciall,“布局”,'被分组')
在这个布局中,您可以指向每个置信区间的中心标记来查看组名。每个估计的参数由一条垂直的黑线隔开。垂直虚线组在公共拟合中计算的参数估计的置信区间。在原始拟合中定义的参数边界用方括号标记。注意,由于参数转换,y轴上的不同比例。例如,的y轴Q12
是线性的,但是中央
是对数尺度的,因为它是对数变换。
计算模型预测的置信区间
计算模型预测的95%置信区间,即使用估计参数的模拟结果。
汇集合身的百分比cipredpooled = sbiopredictionci(pooledfit);未填充的含量%cipredunpooled = sbiopredictionci(未填充文件);
绘制模型预测的置信区间
每个组的置信区间绘制在单独的列中,并且每个响应被绘制在单独的行中。受限制限制的置信区间以红色绘制。不受边界限制的置信区间以蓝色绘制。
情节(ciPredPooled)
情节(ciPredUnpooled)
fitResults
- - - - - -参数估计结果由sbiofit
nlinresults.
对象|OptimResults
对象|向量参数估计结果由sbiofit
,指定为一个NLINResults对象
,OptimerResults对象
或者从相同返回的未加工适合的对象的向量sbiofit
调用。
指定可选的逗号分隔的对名称,价值
参数。的名字
参数名和价值
是相应的价值。的名字
必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen
.
“阿尔法”,0.01,“类型”,“profileLikelihood”
指定使用配置文件可能性方法计算99%置信区间。
根据置信区间的类型,兼容的名称-值参数也不同。下表列出了所有的名称-值参数及其相应的置信区间类型。检查标记(1 / 4)表明name-value参数适用于该类型。
名称 - 值参数 | 高斯(默认) | 文中针对概要文件的可能性 | 集成的配置文件可能 | 引导 |
---|---|---|---|---|
α |
✔ | ✔ | ✔ | ✔ |
类型 |
✔ | ✔ | ✔ | ✔ |
显示 |
✔ | ✔ | ✔ | ✔ |
使用指α. |
✔ | ✔ | ✔ | ✔ |
NumSamples |
✔ | |||
宽容 |
✔ | ✔ | ✔ | |
参数 |
✔ | ✔ | ||
maxstepsize. |
✔ | ✔ | ||
umering integration. |
✔ | ✔ | ||
IntegrationOptions |
✔ |
α
- - - - - -置信水平置信水平,(1α)* 100%
,指定为逗号分隔的配对组成'Α'
和0到1之间的正标量是默认值0.05
,表示计算95%置信区间。
例子:'alpha',0.01
类型
- - - - - -置信区间类型'高斯'
(默认)|“profileLikelihood”
|“引导”
置信区间类型,指定为逗号分隔的对,由“类型”
和一个字符矢量。有效的选择是:
'高斯'
——使用高斯近似参数估计的分布。
“profileLikelihood”
—计算轮廓似然区间。该函数有两种方法来计算轮廓似然曲线。默认情况下,该函数使用基于优化的方法。要使用基于集成的方法,还必须设置'使用integration'
来真的
.
基于优化的方法一次修复一个参数值,并重新运行优化以计算最大可能性。此优化是针对每个参数和轮廓曲线上的每个点完成的。基于集成的方法基于集成从基于优化的方法的拉格朗日方程导出的微分方程。有关这两种方法的详细信息,请参阅轮廓似然置信区间计算.
“引导”
- 计算置信区间使用引导的方法.
例子:'类型','bootstrap'
显示
- - - - - -返回到命令行的显示级别“关闭”
(默认)|'没有任何'
|“最后一次”
|“通路”
返回到命令行的显示级别,指定为逗号分隔对组成“显示”
和一个字符矢量。“关闭”
(默认)或'没有任何'
显示没有输出。“最后一次”
在计算完成时显示一条消息。“通路”
显示每次迭代的输出。
例子:“显示”、“最后”
使用指α.
- - - - - -并行计算置信区间的逻辑标志真的
|错误的
并行计算置信区间的逻辑标志,指定为逗号分隔的对,由“UseParallel”
和真的
或者错误的
.默认情况下,使用原始fit中的并行选项。如果这个参数设置为真的
和Parallel Computing Toolbox™可用,忽略原始拟合中的并行选项,并行计算置信区间。
对于高斯置信区间:
如果输入fitResults
是结果对象的向量,然后并行计算每个对象的置信区间。高斯置信区间计算很快。因此,将原始拟合(sbiofit
)并没有设置使用指α.
为真正的sbioparameterci
.
对于Profile Likelihood置信区间:
如果在输入中的结果对象的数量fitResults
向量大于估计参数的个数,然后并行计算每个对象的置信区间。
否则,在函数移动到下一个结果对象之前,将并行计算一个结果对象中所有估计参数的置信区间。
对于Bootstrap置信区间:
该功能转发了使用指α.
旗帜到bootci
.结果对象的输入向量没有并行化。
请注意
如果你有一个用于生成随机数的全局流,其中有几个子流以可复制的方式并行计算,sbioparameterci
首先检查worker的数量是否与子流的数量相同。如果是这样,sbioparameterci
集UseSubstreams
来真的
在statset
选项,并将其传递给bootci
(统计学和机器学习工具箱).否则,默认忽略子流。
例子:'使用指定',真实
NumSamples
- - - - - -用于引导的样本数量用于引导的样本数量,指定为逗号分隔对,由以下组成'numsamples'
一个正整数。这个数字定义了在置信区间计算期间生成bootstrap样本所执行的拟合次数。数字越小,置信区间的计算速度就越快,代价是精确度降低。
例子:'numsamples',500
宽容
- - - - - -轮廓似然和bootstrap置信区间计算的公差1 e-5
(默认)|积极的标量轮廓似然公差和bootstrap置信区间计算,指定为逗号分隔对组成'宽容'
和一个正标量。
轮廓似然法使用这个值作为终止公差。有关详细信息,请参阅轮廓似然置信区间计算.
引导方法使用该值来确定是否通过原始拟合中指定的界限来限制置信区间。有关详细信息,请参阅Bootstrap置信区间计算.
例子:“宽容”,1 e-6
参数
- - - - - -计算轮廓似然曲线的参数名称计算轮廓似然曲线的参数名称,指定为字符向量,字符串,字符串向量或字符向量的单元数组。默认情况下,该函数计算列出的所有参数的置信区间产权总结财产的财产fitResults
对象。如果需要,还可以指定这些参数的子集。
请注意
此名称值参数仅在您指定时适用类型
作为“profileLikelihood”
.
例子:'参数',{'ka'}
maxstepsize.
- - - - - -用于计算轮廓似然曲线的最大步长[]
|细胞阵列用于计算轮廓似然曲线的最大步长,指定为由…组成的逗号分隔对'maxstepsize'
和一个正标量,[]
,或单元格数组。
对于基于优化的方法,默认值是0.1
.如果你设置'maxstepsize'
来[]
,则将最大步长设置为置信区间高斯近似宽度的10%(如果存在的话)。您可以指定最大步长(或)[]
)使用单元阵列的每个估计参数。
对于基于集成的方法,默认值是正
.在内部,该功能使用ode15s
解算器。
例子:'maxstepsize',0.5
umering integration.
- - - - - -标志使用基于集成的配置文件似的置信区间方法错误的
(默认)|真的
标记,使用基于积分的轮廓似然置信区间方法,指定为真的
或者错误的
.基于积分的方法对由拉格朗日方程导出的微分方程进行积分。默认情况下,该函数使用基于优化的方法。有关这两种方法的详细信息,请参阅轮廓似然置信区间计算.
例子:“UseIntegration”,真的
IntegrationOptions
- - - - - -基于集成的配置文件的选项似然置信区间方法基于集成的轮廓似然置信区间方法的选项,指定为一个结构。如下所示指定选项作为结构的字段。
字段名 | 字段价值描述 |
---|---|
黑森 |
|
纠正因子 |
负的标量。默认值为0。 |
AbsoluteTolerance |
用于阶梯尺寸控制的正标量ode15s .默认值为1)依照 . |
RelativeTolerance |
正标量小于1 中的步长控制ode15s .默认值为1)依照 . |
InitialStepSize |
正标量作为解微分方程的初始步长。如果参数是有界的,则函数使用默认的初始步长ode15s .如果没有,它使用1的军医 . |
ci
- 置信区间结果ParameterConfidenceInterval
对象置信区间结果,作为ParameterConfidenceInterval
对象。为了一个未被剥削的合适,ci
可以是向量ParameterConfidenceInterval
对象。
该函数使用Wald测试统计量[1]计算置信区间。假设有足够的数据,参数估计,P美东时间,近似为学生的t分布与协方差矩阵年代(coviarcematrix.
属性)sbiofit
.
第i个参数估计的置信区间P美国东部时间,我计算如下:
,在那里T挪威是学生的T逆累积分配功能(tinv
(统计学和机器学习工具箱))的概率1 -(α/ 2)
, 和年代我,我是协方差矩阵的对角元素(方差)吗年代.
在由原始拟合中定义的参数界限约束的情况下,根据吴,H.和Neale,M的方法调整置信区间边界。[2].
对于每个参数估计,该功能首先决定参数估计的置信区间是否无限制。如果是,则该函数将相应的参数估计的估计状态设置为不是估计
.
否则,如果参数估计的置信区间受到原始拟合中定义的参数绑定的约束,则该函数将估计状态设置为限制
.参数变换(例如日志
,probit
,或Logit.
)对估计参数施加隐式边界,例如,正性约束。这样的界限会导致置信值的高估,即置信区间可能会小于预期。
如果没有置信区间具有估计状态不是估计
或者限制
,然后该功能将所有参数估计的估计状态设置为成功
.否则,将剩余参数估计的估计状态设置为可尊敬的
.
定义l是可能性,LH.,参数估计值(存储在ParameterySimates.
属性)sbiofit
,
,在那里P美东时间是一个参数估计向量,P美国东部时间1,P美国东部时间2,......,P美国东部时间,n.
轮廓似然函数pl为一个参数P我被定义为 ,在那里n是参数总数。
per wilks的定理[3],似然比检验统计量, ,是分布在1个自由度上的卡方。
因此,找到所有P我这样: .
同等, ,在那里 是计算日志简档似然曲线的目标值。该函数提供了两种计算这些曲线的方法。
开始P美国东部时间,我评估可能性l.
计算测井剖面的可能性P美国东部时间,我+k* maxstepsize.
对于置信区间的每一边(或方向),即:k= 1, 2, 3,…
和k= -1,-2,-3,...
.
如果每边满足一个停止条件,就停止。
这个方法[4]求解约束优化问题 通过对由拉格朗日方程导出的微分方程进行积分
这里,
是个我th规范单元向量,拉格朗日乘数是
, 和c=P我
.
换句话说,该方法不是逐点优化,而是求解定义轮廓似然曲线的微分方程,如下所示。
这里, 为对数似然函数的Hessian。
建议使用Hessian矩阵的有限差分近似。然而,使用有限差异的Hessian矩阵的数值计算可以计算得昂贵。减少计算成本,陈和珍妮琴[4]基于假设的假设,即在附录中的假设2中概述的轮廓似然曲线的各个点处的每一点处必须保持严格的不等式的近似版本。[4].换句话说,在轮廓似然曲线上的各个点,剩余参数必须是可估计的。
如果这个假设成立,那么Hessian可以用单位矩阵代替我如下:
这里, 是对数似然和梯度吗γ是保证微分方程解保持在轮廓似然曲线路径上的校正因子。
如果γ,则轮廓似然曲线的近似可能变得不准确,导致对轮廓似然置信区间的低估。设置γ大量的值确保准确的结果,但可能需要ode15s
采取更小的步骤,这增加了计算成本。
提示
您可以使用该方法指定Hessian近似和校正因子IntegrationOptions
名称-值参数。
当下列条件之一为真时,算法的停止准则为:
轮廓似然曲线的梯度近似大于).
轮廓的可能性低于目标值。
到达参数界限。
如果置信区间的两侧都不成功,即具有状态不是估计
,该函数设置评估状态(ci
.results.status.) 到不是估计
.
如果没有方面的状态不是估计
一方有地位限制
,该函数设置评估状态(ci
.results.status.) 到限制
.
如果置信区间两侧的所有参数的计算成功,则设置估计状态(ci
.results.status.) 到成功
.
否则,函数将其余参数估计的估计状态设置为可尊敬的
.
的bootci
(统计学和机器学习工具箱)来自统计信息的功能和机器学习工具箱™用于计算引导置信间隔。第一个输入nboot是样品的数量(NumSamples
)和第二个输入bootfun是一个执行这些操作的函数:
如果有多个组可用),则重新确定数据(在每个组内独立地,如果有多个组)。
使用重采样数据运行参数拟合。
返回估计的参数。
如果置信区间比较靠近宽容
到一个参数绑定,如原始拟合所定义的,该函数将估计状态设置为限制
.如果所有置信区间离参数界限的距离大于宽容
,将状态设置为成功
.否则,设置为可尊敬的
.
[1]瓦尔德,一个。当观测数据量很大时,关于几个参数的统计假设检验美国数学学会的交易.54(3),1943,PP。426-482。
[2]吴,H.和M.C.涤念。“有界参数的调整置信区间。”行为遗传学.42 (6), 2012, pp. 886-898。
[3] Wilks,S。“测试复合假设的似然比的大样本分布。”数理统计年鉴.9(1),1938,PP。60-62。
Chen, Jian-Shen和Robert I. jenrich。"简单准确的似然轮廓近似"中国计算与图形统计学报11,不。3(2002年9月):714-32。
并行运行,设置“UseParallel”
来真的
.
有关更多信息,请参见“UseParallel”
名称-值对的论点。
Hai fatto clic su un collegamento che corto comando MATLAB:
Esegui il comando inserendolo nella finestra di comando MATLAB。我浏览器web非supportano金宝app I命令MATLAB。
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。