testcholdout年代p一个n>
比较两种分类模型的预测精度
语法
描述
testcholdout
统计评估两种分类模型的精度。这个函数首先对比他们的预测对真正的标签,标签,然后检测误分类率之间的差异是否显著。
你可以评估是否分类模型的精度是不同的,还是一个分类模型执行比另一个。testcholdout
可以进行一些<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">McNemar检验法检验一个>变化,包括渐近测试,exact-conditional测试和中期
返回测试决定,进行中期h
= testcholdout (<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat1" class="intrnllnk">YHat1
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat2" class="intrnllnk">YHat2
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
)YHat1
和YHat2
有同等精度预测真正的类标签吗Y
。另一种假说是,标签有不平等的准确性。
h
=1
表示拒绝零假设在5%的显著性水平。h
=0
表明不拒绝零假设在5%的水平。
返回结果的假设检验与指定的一个或多个额外的选项h
= testcholdout (<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat1" class="intrnllnk">YHat1
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat2" class="intrnllnk">YHat2
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
,<一个href="//www.tatmou.com/au/help/stats/#namevaluepairarguments" class="intrnllnk">名称,值
)名称,值
对参数。例如,您可以指定类型的备择假设,指定测试的类型,或提供一个成本矩阵。
(<一个href="//www.tatmou.com/au/help/stats/#bupt6wj_sep_shared-h" class="intrnllnk">
返回h
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj_sep_shared-p" class="intrnllnk">p
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-e1" class="intrnllnk">e1
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-e2" class="intrnllnk">e2
)= testcholdout (<年代p一个nclass="argument_placeholder">___年代p一个n>)p
)和各自的<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">分类损失一个>每组的预测类标签(e1
和e2
)使用任何输入参数在前面的语法。
例子
比较两种不同的分类模型的精度
火车两种分类模式使用不同的算法。进行统计检验比较两个模型的误分类率在一套了。
加载电离层
数据集。
负载<年代p一个n年代tyle="color:#A020F0">电离层年代p一个n>
创建一个分区,均匀地将数据分为训练集和测试集。
rng (1);<年代p一个n年代tyle="color:#228B22">%的再现性年代p一个n>本量利= cvpartition (Y,<年代p一个n年代tyle="color:#A020F0">“坚持”年代p一个n>,0.5);idxTrain =培训(CVP);<年代p一个n年代tyle="color:#228B22">%训练集指数年代p一个n>idxTest =测试(CVP);<年代p一个n年代tyle="color:#228B22">%测试集指数年代p一个n>
本量利
是一个交叉验证分区对象,它指定了训练集和测试集。
训练支持向量机模型和一个100袋装分类树。对于支持向量机模型,指定使用径向基函数内核和启发式程序来确定内核规模。
MdlSVM = fitcsvm (X (idxTrain:), Y (idxTrain),<年代p一个n年代tyle="color:#A020F0">“标准化”年代p一个n>,真的,<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“KernelFunction”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“RBF”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“KernelScale”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“汽车”年代p一个n>);t = templateTree (<年代p一个n年代tyle="color:#A020F0">“复制”年代p一个n>,真正的);<年代p一个n年代tyle="color:#228B22">%的再现性随机预测的选择年代p一个n>MdlBag = fitcensemble (X (idxTrain:), Y (idxTrain),<年代p一个n年代tyle="color:#A020F0">“方法”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“包”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“学习者”年代p一个n>t);
MdlSVM
是一个培训ClassificationSVM
模型。MdlBag
是一个培训ClassificationBaggedEnsemble
模型。
标签使用训练的测试集观测模型。
YhatSVM =预测(MdlSVM X (idxTest:));YhatBag =预测(MdlBag X (idxTest:));
YhatSVM
和YhatBag
是向量继续各自的模型的预测类标签。
测试是否两个模型的预测精度。
h = testcholdout (YhatSVM YhatBag Y (idxTest))
h =<年代p一个nclass="emphasis">逻辑0
h = 0
表明不拒绝零假设,这两个模型的预测精度。
评估一个分类模型分类是否比另一个好
火车两种分类模式使用相同的算法,但是调整hyperparameter使算法更加复杂。进行统计检验来评估是否伸出的简单的模型具有更好的精度比更复杂的数据模型。
加载电离层
数据集。
负载<年代p一个n年代tyle="color:#A020F0">电离层年代p一个n>;
创建一个分区,均匀地将数据分为训练集和测试集。
rng (1);<年代p一个n年代tyle="color:#228B22">%的再现性年代p一个n>本量利= cvpartition (Y,<年代p一个n年代tyle="color:#A020F0">“坚持”年代p一个n>,0.5);idxTrain =培训(CVP);<年代p一个n年代tyle="color:#228B22">%训练集指数年代p一个n>idxTest =测试(CVP);<年代p一个n年代tyle="color:#228B22">%测试集指数年代p一个n>
本量利
是一个交叉验证分区对象,它指定了训练集和测试集。
火车两种SVM模型:一个使用一个线性内核二进制分类(默认),另一个使用径向基函数内核。使用默认的内核规模为1。
MdlLinear = fitcsvm (X (idxTrain:), Y (idxTrain),<年代p一个n年代tyle="color:#A020F0">“标准化”年代p一个n>,真正的);MdlRBF = fitcsvm (X (idxTrain:), Y (idxTrain),<年代p一个n年代tyle="color:#A020F0">“标准化”年代p一个n>,真的,<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“KernelFunction”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“RBF”年代p一个n>);
MdlLinear
和MdlRBF
被训练ClassificationSVM
模型。
标签使用训练的测试集观测模型。
YhatLinear =预测(MdlLinear X (idxTest:));YhatRBF =预测(MdlRBF X (idxTest:));
YhatLinear
和YhatRBF
是向量继续各自的模型的预测类标签。
测试简单的零假设模型(MdlLinear
)是最准确的更复杂的模型(MdlRBF
)。因为测试集的规模很大,渐近McNemar检验法进行测试和比较结果中期<年代p一个nclass="emphasis">p值测试(cost-insensitive测试默认)。请求返回<年代p一个nclass="emphasis">p值和错误分类率。
Asymp = 0 (4,1);<年代p一个n年代tyle="color:#228B22">%预先配置年代p一个n>MidP = 0 (4,1);[Asymp (1) Asymp (2), Asymp (3), Asymp (4)] = testcholdout (YhatLinear YhatRBF Y (idxTest),<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“替代”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“更大的”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“测试”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">渐近的年代p一个n>);(MidP MidP (1), (2), MidP (3), MidP (4)] = testcholdout (YhatLinear YhatRBF Y (idxTest),<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“替代”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“更大的”年代p一个n>);表(MidP Asymp,<年代p一个n年代tyle="color:#A020F0">“RowNames”年代p一个n>,{<年代p一个n年代tyle="color:#A020F0">“h”年代p一个n>“p”年代p一个n>“e1”年代p一个n>“e2”年代p一个n>})
ans =<年代p一个nclass="emphasis">4×2表Asymp MidP __________ __________ h 1 1 p 7.2801 e-09 2.7649平台以及e1 0.13714 - 0.13714 e2 0.33143 - 0.33143
的<年代p一个nclass="emphasis">p对测试值接近于零,这表明强有力的证据拒绝零假设,更简单的模型比更复杂的模型不准确。无论什么测试您指定,testcholdout
返回的相同类型的错误分类测量模型。
两种分类模型的厂商进行比较
对不平衡数据集类表示,或者假阳性和假阴性的成本不平衡,你可以统计比较两种分类模型的预测性能包括成本矩阵的分析。
加载心律失常
数据集,确定数据的类表示。
负载<年代p一个n年代tyle="color:#A020F0">心律失常年代p一个n>;Y =分类(Y);汇总(Y);
值计算百分比1 245 2 54.20% 44 9.73% 3 15 3.32% 4 15 3.32% 5 13 2.88% 6 25 5.53% 7 3 9 9 8 2 0.44% 0.66% 1.99% 10 50 11.06% 14 4 0.88% 15 5 1.11% 16 4.87%
有16个班,然而一些并不代表数据集(例如,类13)。大多数观察被归类为没有心律失常(1级)。不平衡的数据集是高度离散类。
把所有的观察与心律失常(类2到15)成一个类。删除这些观察与未知的心律失常状态(类16)的数据集。
idx = (Y ~ =<年代p一个n年代tyle="color:#A020F0">“16”年代p一个n>);Y = Y (idx);X = X (idx:);Y (Y ~ =<年代p一个n年代tyle="color:#A020F0">' 1 '年代p一个n>)=<年代p一个n年代tyle="color:#A020F0">“WithArrhythmia”年代p一个n>;Y (Y = =<年代p一个n年代tyle="color:#A020F0">' 1 '年代p一个n>)=<年代p一个n年代tyle="color:#A020F0">“NoArrhythmia”年代p一个n>;Y = removecats (Y);
创建一个分区,均匀地将数据分为训练集和测试集。
rng (1);<年代p一个n年代tyle="color:#228B22">%的再现性年代p一个n>本量利= cvpartition (Y,<年代p一个n年代tyle="color:#A020F0">“坚持”年代p一个n>,0.5);idxTrain =培训(CVP);<年代p一个n年代tyle="color:#228B22">%训练集指数年代p一个n>idxTest =测试(CVP);<年代p一个n年代tyle="color:#228B22">%测试集指数年代p一个n>
本量利
是一个交叉验证分区对象,它指定了训练集和测试集。
创建一个成本矩阵,这样患者心律失常分类到“无心律失常”类是五倍比分类没有心律失常的病人心律失常类。分类正确不得因其成本。行显示真正的阶级和列表明预测类。厂商进行分析时,一个良好的实践是指定的类。
成本= (0 0 1;5);一会= {<年代p一个n年代tyle="color:#A020F0">“NoArrhythmia”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“WithArrhythmia”年代p一个n>};
火车两个提高50分类树的集合体,一个使用使用LogitBoost AdaBoostM1和另一个。因为有缺失值的数据集,指定使用代理分裂。火车模型使用成本矩阵。
t = templateTree (<年代p一个n年代tyle="color:#A020F0">“代孕”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“上”年代p一个n>);numTrees = 50;MdlAda = fitcensemble (X (idxTrain:), Y (idxTrain),<年代p一个n年代tyle="color:#A020F0">“方法”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“AdaBoostM1”年代p一个n>,<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“NumLearningCycles”年代p一个n>numTrees,<年代p一个n年代tyle="color:#A020F0">“学习者”年代p一个n>t<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“成本”年代p一个n>、成本、<年代p一个n年代tyle="color:#A020F0">“类名”年代p一个n>类名);MdlLogit = fitcensemble (X (idxTrain:), Y (idxTrain),<年代p一个n年代tyle="color:#A020F0">“方法”年代p一个n>,<年代p一个n年代tyle="color:#A020F0">“LogitBoost”年代p一个n>,<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“NumLearningCycles”年代p一个n>numTrees,<年代p一个n年代tyle="color:#A020F0">“学习者”年代p一个n>t<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“成本”年代p一个n>、成本、<年代p一个n年代tyle="color:#A020F0">“类名”年代p一个n>类名);
MdlAda
和MdlLogit
被训练ClassificationEnsemble
模型。
标签使用训练的测试集观测模型。
YhatAda =预测(MdlAda X (idxTest:));YhatLogit =预测(MdlLogit X (idxTest:));
YhatLinear
和YhatRBF
是向量包含各自的模型的预测类标签。
测试是否AdaBoostM1合奏(MdlAda
)和LogitBoost合奏(MdlLogit
)相同的预测精度。供应成本矩阵。厂商进行渐近,似然比,测试(默认当你传入一个成本矩阵)。请求返回<年代p一个nclass="emphasis">p值和错误分类的成本。
(h p e1, e2) = testcholdout (YhatAda YhatLogit Y (idxTest),<年代p一个n年代tyle="color:#0000FF">…年代p一个n>“成本”年代p一个n>、成本、<年代p一个n年代tyle="color:#A020F0">“类名”年代p一个n>类名)
h =<年代p一个nclass="emphasis">逻辑0
p = 0.1180
e1 = 0.6698
e2 = 0.8093
h = 0
表明不拒绝零假设,这两个模型的预测精度。
输入参数
YHat1
- - - - - -<年代p一个n我te米prop="purpose">预测类标签年代p一个n>
分类数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符串数组年代p一个n>|<年代p一个n我te米prop="inputvalue">逻辑向量年代p一个n>|<年代p一个n我te米prop="inputvalue">数值向量年代p一个n>|<年代p一个n我te米prop="inputvalue">单元阵列的特征向量年代p一个n>
指定的第一个分类模型,预测类标签分类,字符,或字符串数组,逻辑或数值向量,或单元阵列的特征向量。
如果YHat1
每个元素是一个字符数组,那么必须对应一个数组的行。
YHat1
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat2" class="intrnllnk">YHat2
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
必须有平等的长度。
这是一个最佳实践YHat1
,YHat2
,Y
共享相同的数据类型。
数据类型:年代trong>分类
|字符
|字符串
|逻辑
|单
|双
|细胞
YHat2
- - - - - -<年代p一个n我te米prop="purpose">预测类标签年代p一个n>
分类数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符串数组年代p一个n>|<年代p一个n我te米prop="inputvalue">逻辑向量年代p一个n>|<年代p一个n我te米prop="inputvalue">数值向量年代p一个n>|<年代p一个n我te米prop="inputvalue">单元阵列的特征向量年代p一个n>
指定的第二个分类模型,预测类标签分类,字符,或字符串数组,逻辑或数值向量,或单元阵列的特征向量。
如果YHat2
每个元素是一个字符数组,那么必须对应一个数组的行。
YHat1
,YHat2
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
必须有平等的长度。
这是一个最佳实践YHat1
,YHat2
,Y
共享相同的数据类型。
数据类型:年代trong>分类
|字符
|字符串
|逻辑
|单
|双
|细胞
Y
- - - - - -<年代p一个n我te米prop="purpose">真正的类标签年代p一个n>
分类数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符串数组年代p一个n>|<年代p一个n我te米prop="inputvalue">逻辑向量年代p一个n>|<年代p一个n我te米prop="inputvalue">数值向量年代p一个n>|<年代p一个n我te米prop="inputvalue">单元阵列的特征向量年代p一个n>
指定正确的类标签,分类,特点,或字符串数组,逻辑或数值向量,或单元阵列的特征向量。
如果Y
每个元素是一个字符数组,那么必须对应一个数组的行。
YHat1
,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat2" class="intrnllnk">YHat2
,Y
必须有平等的长度。
这是一个最佳实践YHat1
,YHat2
,Y
共享相同的数据类型。
数据类型:年代trong>分类
|字符
|字符串
|逻辑
|单
|双
|细胞
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:年代trong>“替代”、“大”、“测试”、“渐近”,“成本”,[0 2;1 0]
指定测试是否第一组第一个比第二个更准确预测类标签集,进行渐近McNemar检验法测试和惩罚分类观察与真正的标签一会{1}
两倍的分类观察真正的标签一会{2}
。年代p一个n>
α
- - - - - -<年代p一个n我te米prop="purpose">假设检验显著性水平年代p一个n>
0.05
(默认)|<年代p一个n我te米prop="inputvalue">标量值的时间间隔(0,1)年代p一个n>
假设检验显著性水平,指定为逗号分隔组成的“α”
和一个标量值的区间(0,1)。
例子:年代trong>“阿尔法”,0.1
数据类型:年代trong>单
|双
替代
- - - - - -<年代p一个n我te米prop="purpose">备择假设评估年代p一个n>
“不平等”
(默认)|<年代p一个n我te米prop="inputvalue">“更大的”
|<年代p一个n我te米prop="inputvalue">“少”
备择假设评估,指定为逗号分隔组成的“替代”
表中列出的值。
价值 | 备择假设 |
---|---|
“不平等” (默认) |
预测<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y ,<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat1" class="intrnllnk">YHat1 和<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat2" class="intrnllnk">YHat2 不平等的精度。 |
“更大的” |
预测Y ,YHat1 更精确的比YHat2 。 |
“少” |
预测Y ,YHat1 不太准确的比YHat2 。 |
例子:年代trong>“替代”、“大”
一会
- - - - - -<年代p一个n我te米prop="purpose">类名年代p一个n>
分类数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符数组年代p一个n>|<年代p一个n我te米prop="inputvalue">字符串数组年代p一个n>|<年代p一个n我te米prop="inputvalue">逻辑向量年代p一个n>|<年代p一个n我te米prop="inputvalue">数值向量年代p一个n>|<年代p一个n我te米prop="inputvalue">单元阵列的特征向量年代p一个n>
类名称,指定为逗号分隔组成的“类名”
和分类、字符或字符串数组,逻辑或数值向量,或单元阵列的特征向量。必须设置一会
使用的数据类型<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
。
如果一会
每个元素是一个字符数组,那么必须对应一个数组的行。
使用一会
:
指定的任何输入参数维度对应于类订单。例如,使用
一会
指定的尺寸<一个href="//www.tatmou.com/au/help/stats/#bupt6wj_sep_shared-Cost" class="intrnllnk">成本
。选择一个子集的类进行测试。例如,假设所有不同的类名称的集合
Y
是{' a ', ' b ', ' c '}
。训练和测试模型利用类的观察“一个”
和“c”
只是,指定“类名”,{' a ', ' c '}
。
默认是所有不同的类名称的集合Y
。
例子:年代trong>“类名”,{' b ', ' g '}
数据类型:年代trong>单
|双
|逻辑
|字符
|字符串
|细胞
|分类
成本
- - - - - -<年代p一个n我te米prop="purpose">误分类代价年代p一个n>
方阵年代p一个n>|<年代p一个n我te米prop="inputvalue">结构数组年代p一个n>
误分类代价,指定为逗号分隔组成的“成本”
和一个方阵或结构数组。
如果你指定方阵
成本
,然后成本(i, j)
是一个指向类分类的成本j
如果它真正的类我
。即行对应于真正的阶级和列对应于预测类。指定的类订单相应的行和列成本
,另外指定<一个href="//www.tatmou.com/au/help/stats/#d123e902394" class="intrnllnk">一会
名称-值对的论点。如果你指定的结构
年代
,然后年代
必须有两个字段:S.ClassNames
,其中包含类名相同的数据类型的一个变量<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
。你可以用这个字段来指定类的顺序。S.ClassificationCosts
,其中包含成本矩阵,行和列命令一样S.ClassNames
。
如果您指定成本
,然后testcholdout
不能进行片面的,确切的,或中期“替代”、“不平等”,“测试”、“渐近”
。厂商在为测试选项,请参阅<一个href="//www.tatmou.com/au/help/stats/#shared-CostTest" class="intrnllnk">成本
名称-值对的论点。
最佳实践是供应相同的成本矩阵用于训练分类模型。
默认值是成本(i, j) = 1
如果我~ = j
,成本(i, j) = 0
如果我=我
。
例子:年代trong>“成本”,[0 1 2;1 0 2;2 2 0)
数据类型:年代trong>单
|双
|结构体
成本
- - - - - -<年代p一个n我te米prop="purpose">敏感的测试类型年代p一个n>
“可能性”
(默认)|<年代p一个n我te米prop="inputvalue">“chisquare”
敏感的测试类型,指定为逗号分隔组成的“成本”
和“chisquare”
或“可能性”
。除非你指定一个矩阵使用成本<一个href="//www.tatmou.com/au/help/stats/#bupt6wj_sep_shared-Cost" class="intrnllnk">成本
名称-值对的论点,testcholdout
忽略了成本
。
这个表总结了厂商测试的可用选项。
价值 | 渐近测试类型 | 需求 |
---|---|---|
“chisquare” |
卡方检验 | 优化工具箱许可来实现<一个href="//www.tatmou.com/au/au/help/optim/ug/quadprog.html">quadprog (优化工具箱)年代p一个n> |
“可能性” |
似然比检验 | 没有一个 |
更多细节,请参阅<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">降低成本的测试方案一个>。
例子:年代trong>“成本”、“chisquare”
测试
- - - - - -<年代p一个n我te米prop="purpose">测试进行年代p一个n>
渐近的
|<年代p一个n我te米prop="inputvalue">“准确”
|<年代p一个n我te米prop="inputvalue">midp的
测试进行,指定为逗号分隔组成的“测试”
和渐近的
,“准确”
,midp的
。这个表总结了cost-insensitive测试的可用选项。
价值 | 描述 |
---|---|
渐近的 |
渐近McNemar检验法检验 |
“准确” |
Exact-conditional McNemar检验法检验 |
midp的 (默认) |
中期 |
更多细节,请参阅<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">McNemar检验法测试一个>。
厂商在为测试,测试
必须渐近的
。当你指定<一个href="//www.tatmou.com/au/help/stats/#bupt6wj_sep_shared-Cost" class="intrnllnk">成本
厂商名称-值对的观点,选择一个测试使用<一个href="//www.tatmou.com/au/help/stats/#shared-CostTest" class="intrnllnk">成本
名称-值对的论点,渐近的
是默认的。
例子:年代trong>“测试”、“渐近的
请注意年代trong>
南
年代,<定义>
值、空特征向量(”
),空字符串(”“
),<失踪>
值显示缺失的数据值。testcholdout
:
处理缺失值
YHat1
和YHat2
更进一步的观察。删除缺失值
Y
和相应的值YHat1
和YHat2
输出参数
h
——假设检验结果
1
|0
假设检验的结果,作为一个逻辑值返回。
h = 1
表示拒绝零假设的<一个href="//www.tatmou.com/au/help/stats/#bupt6wj_sep_shared-Alpha" class="intrnllnk">α
显著性水平。
h = 0
指出失败的拒绝零假设α
显著性水平。
数据类型:年代trong>逻辑
p
- - - - - -p 价值
标量的区间[0,1]年代p一个n>
p测试的价值,作为一个标量返回在区间[0,1]。p
的概率是随机检验统计量至少是极端观察到的检验统计量,考虑到零假设是正确的。
testcholdout
估计p
使用检验统计量的分布,随测试的类型。细节测试统计数据来源于McNemar检验法的可用变异测试,看看<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">McNemar检验法测试一个>。细节测试统计数据来自厂商测试,看看<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">降低成本的测试方案一个>。
e1
——分类损失
标量年代p一个n>
分类损失一个>总结第一组类标签的准确性(<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat1" class="intrnllnk">YHat1
)预测真正的类标签(<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
),作为一个标量返回。
对于cost-insensitive测试,e1
是误分类率。也就是说,e1
更进一步观察的比例,这是一个标量在区间[0,1]。
厂商在为测试,e1
是误分类代价。也就是说,e1
误分类代价的加权平均,权重的各自的比例估计分类错误的观察。
e2
——分类损失
标量年代p一个n>
分类损失一个>总结第二组类标签的准确性(<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-YHat2" class="intrnllnk">YHat2
)预测真正的类标签(<一个href="//www.tatmou.com/au/help/stats/#bupt6wj-Y" class="intrnllnk">Y
),作为一个标量返回。
对于cost-insensitive测试,e2
是误分类率。也就是说,e2
更进一步观察的比例,这是一个标量在区间[0,1]。
厂商在为测试,e2
是误分类代价。也就是说,e2
是误分类的成本的加权平均,权重的各自的比例估计更进一步的观察。
更多关于
降低成本的测试方案
行为
如果误分类的成本是不平衡,误分类率往往是一个业绩不佳的分类损失。使用误分类代价比较分类模型。
误分类代价往往是不平衡的应用。例如,考虑分类主题基于一组预测分为两类:健康和生病。将生病的主题划分健康构成危险的生活。然而,将一个健康主题划分为生病通常造成一些不便,但不构成重大危险。在这种情况下,你分配错误分类成本等,将生病的主题划分健康比将一个健康主题划分为更昂贵的生病。
厂商的定义,总结了测试。的定义:
n<年代ub>ijk年代ub>和<年代p一个nclass="inlineequation"> 是测试样本的数量和比例估计观测具有以下特点。
k 是真正的类,我 标签指定的第一个分类模型,然后呢j 由第二个分类标签分配模型。未知的真实价值<年代p一个nclass="inlineequation"> 是π<年代ub>ijk年代ub>。测试集样本大小<年代p一个nclass="inlineequation"> 此外,<年代p一个nclass="inlineequation"> c<年代ub>ij年代ub>相对成本分配标签吗
j 观察与真正的类我 。c<年代ub>二世年代ub>= 0, c<年代ub>ij年代ub>≥0,至少一个( 我 ,j ),c<年代ub>ij年代ub>> 0。 所有下标从1到取整数值
K 类的数量。预期的不同误分类代价的两种分类模型
假设检验是
厂商提供测试适合双尾检验。
渐近的测试地址不平衡成本可用
卡方检验-皮尔逊卡方检验统计量是基于和Neyman卡方检验统计数据,但拉普拉斯校正因子为任何帐户
n<年代ub>ijk年代ub>= 0。测试数据 如果<年代p一个nclass="inlineequation"> ,然后拒绝
H 0年代ub>。估计通过最小化<年代p一个nclass="inlineequation"> 的约束下
δ = 0。是
χ 2年代up>提供与一个自由度的评估x 。
似然比检验,测试是基于似然比
N<年代ub>ijk年代ub>二项随机变量的样本大小 n<年代ub>测试年代ub>和成功概率 π<年代ub>ijk年代ub>。随机变量代表了随机数的观察:真正的类 k 、标签我 由第一个分类模型,和标签j 由第二个分类模型。共同,多项分布的随机变量。测试数据
如果<年代p一个nclass="inlineequation"> 然后拒绝
H 0年代ub>。是不受限制的大中型企业的
π<年代ub>ijk年代ub>。 企业的零假设下吗
δ = 0。λ 的解决方案是是
χ 2年代up>提供与一个自由度的评估x 。
McNemar检验法测试
McNemar检验法测试假设测试,比较两个人口比例,同时解决问题造成两个依赖,匹配配对样本。
一个方法比较两种分类模型的预测精度是:
分区数据分为训练集和测试集。
使用训练集训练分类模型。
使用测试集预测类标签。
总结2乘2表中的结果类似于这个数字。
n<年代ub>二世年代ub>整合对的数量,也就是说,两种模型的观测数量分类(正确或不正确)。
n<年代ub>ij年代ub>, 我 ≠j 不和谐的双的数量,也就是说,观察的数量模型分类不同(正确或不正确)。
1和2的误分类率模型<年代p一个nclass="inlineequation"> 和<年代p一个nclass="inlineequation"> ,分别。一个双边测试比较两个模型的准确性
零假设表明人口展品边际同质性,这减少了零假设<年代p一个nclass="inlineequation">
此外,在零假设下,
这些事实是可用McNemar检验法的基础测试变异:
渐近,渐近McNemar检验法检验统计和排斥地区(显著性水平
α ):对于单边测试,检验统计量
如果<年代p一个nclass="inlineequation"> 在哪里
Φ 是标准的高斯提供,那么拒绝H 0年代ub>。对于双向测试,检验统计量
如果<年代p一个nclass="inlineequation"> ,在那里<年代p一个nclass="inlineequation"> 是
χ<年代ub>米年代ub>2年代up>提供评估在 x ,然后拒绝H 0年代ub>。
渐近的测试需要大样本理论,具体地说,二项分布的高斯近似。
的总数不一致的对,<年代p一个nclass="inlineequation"> ,必须大于10 (<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[1]一个>,Ch。10.1.4)。
一般来说,渐近的测试并不能保证名义覆盖率。观察到的错误拒绝零假设的概率可以超过
α 书中建议的那样,仿真研究<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[18]一个>。然而,渐近McNemar检验法测试表现良好的统计力量。
Exact-Conditional——Exact-Conditional McNemar检验法检验统计和排斥地区(显著性水平
α )(<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[36]一个>,<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[38]一个>):对于单边测试,检验统计量
如果<年代p一个nclass="inlineequation"> ,在那里<年代p一个nclass="inlineequation"> 是二项cdf样本大小
n 和成功概率p 评估在x ,然后拒绝H 0年代ub>。对于双向测试,检验统计量
如果<年代p一个nclass="inlineequation"> ,然后拒绝
H 0年代ub>。
exact-conditional测试总是达到名义覆盖率。仿真研究<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[18]一个>建议测试是保守的,然后显示测试缺乏统计力量相对于其他变体。对于小或高度离散的测试样品,考虑使用中期
p 值测试(<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[1]一个>,Ch。3.6.3)。中期
p 值测试——中期p 价值McNemar检验法检验统计和排斥地区(显著性水平α )(<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[32]一个>):对于单边测试,检验统计量
如果<年代p一个nclass="inlineequation"> ,在那里<年代p一个nclass="inlineequation"> 和<年代p一个nclass="inlineequation"> 分别二项式cdf和pdf,样本大小
n 和成功概率p 评估在x ,然后拒绝H 0年代ub>。对于双向测试,检验统计量
如果<年代p一个nclass="inlineequation"> ,然后拒绝
H 0年代ub>。
年代中期
p 值测试地址的保守派的行为exact-conditional测试。仿真研究<一个href="//www.tatmou.com/au/au/help/stats/bibliography.html" class="a">[18]一个>证明这个测试达到名义覆盖率,和具有良好的统计力量。
分类损失
分类损失显示一个分类模型或一组预测的准确性标签。两个分类损失是误分类率和成本。
testcholdout
返回分类损失(见e1
和e2
)在备择假设下(即无限制的分类损失)。
的
误分类率 ,或分类错误,是一个标量在区间[0,1]代表的比例更进一步的观察。也就是说,第一个分类模型的误分类率第二个分类模型的误分类率(
e 2年代ub>),切换指标我 和j 的公式。分类精度降低的误分类率增加1。
的
误分类代价 是一个非负标量测量的分类质量相对于指定的值成本矩阵。它的解释取决于指定的错误分类的成本。误分类代价是误分类的加权平均成本(中指定一个成本矩阵,C )的权重分别是估计比例更进一步的观察。第一个分类模型的误分类代价在哪里
c<年代ub>kj年代ub>分类的成本是一个观察到班呢 j 如果它真正的类k 。第二个分类模型(误分类代价的e 2年代ub>),切换指标我 和j 的公式。一般来说,对于一个固定成本矩阵,分类精度降低误分类成本上升。
提示
这是一个很好的练习来获得预测类标签通过任何训练分类模型和新的预测数据
预测
方法。例如,对于标签的支持向量机预测模型,明白了<一个href="//www.tatmou.com/au/au/help/stats/classreg.learning.classif.compactclassificationsvm.predict.html">预测
。敏感的测试执行数值优化,这就需要更多的计算资源。似然比检验进行数值优化间接通过拉格朗日乘子的根在一个时间间隔。对于一些数据集,如果根是接近区间的边界,那么方法可以失败。因此,如果你有一个优化工具箱许可,考虑厂商进行卡方检验。更多细节,请参阅<一个href="//www.tatmou.com/au/help/stats/#shared-CostTest" class="intrnllnk">
成本
和<一个href="//www.tatmou.com/au/au/help/stats/testcholdout.html" class="intrnllnk">降低成本的测试方案一个>。
引用
[1]Agresti,。
[2]Fagerlan,分子量,年代。lydersen, and P. Laake. “The McNemar Test for Binary Matched-Pairs Data: Mid-p and Asymptotic Are Better Than Exact Conditional.”
兰开斯特,[3]H.O.“意义测试在离散分布。”
[4]McNemar检验法,问:“注意抽样误差的相关比例或百分比之间的区别。”
[5]Mosteller, f”一些统计测量主观对药物反应的问题。”
版本历史
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
选择一个网站
选择一个网站翻译内容,看到当地事件和提供。根据你的位置,我们建议您选择:<年代trong class="recommended-country">。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。