主要内容gydF4y2Ba

kfoldLossgydF4y2Ba

训练中未使用的观察值的分类损失gydF4y2Ba

描述gydF4y2Ba

例子gydF4y2Ba

lgydF4y2Ba= kfoldLoss (gydF4y2Bacvmdl.gydF4y2Ba)gydF4y2Ba返回交叉验证的gydF4y2Ba分类错误gydF4y2Ba由线性分类模型组成的交叉验证、纠错输出码(ECOC)模型估计的速率gydF4y2Bacvmdl.gydF4y2Ba.也就是说,对于每一个折叠,gydF4y2BakfoldLossgydF4y2Ba当它使用所有其他的观察来训练时,估计观察结果的分类错误率。gydF4y2BakfoldLossgydF4y2Ba应用创建时使用的相同数据gydF4y2Bacvmdl.gydF4y2Ba(见gydF4y2BafitcecocgydF4y2Ba).gydF4y2Ba

lgydF4y2Ba包含组成的线性分类模型中的每个正则化强度的分类损耗gydF4y2Bacvmdl.gydF4y2Ba.gydF4y2Ba

例子gydF4y2Ba

lgydF4y2Ba= kfoldLoss (gydF4y2Bacvmdl.gydF4y2Ba,gydF4y2Ba名称,值gydF4y2Ba)gydF4y2Ba使用一个或多个指定的附加选项gydF4y2Ba名称,值gydF4y2Ba对参数。例如,指定一个解码方案,它折叠用于损失计算,或详细级别。gydF4y2Ba

输入参数gydF4y2Ba

全部展开gydF4y2Ba

经交叉验证,ECOC模型由线性分类模型组成,指定为gydF4y2BaClassificationPartitionedLinearECOCgydF4y2Ba模型对象。你可以创建一个gydF4y2BaClassificationPartitionedLinearECOCgydF4y2Ba模型使用gydF4y2BafitcecocgydF4y2Ba和:gydF4y2Ba

  1. 例如,指定任意一个交叉验证的名称-值对参数,gydF4y2BaCrossValgydF4y2Ba

  2. 设置名称-值对参数gydF4y2Ba学习者gydF4y2Ba来gydF4y2Ba“线性”gydF4y2Ba或返回的线性分类模型模板gydF4y2BatemplateLineargydF4y2Ba

为了获得估计,kfoldLoss应用了用于交叉验证ECOC模型的相同数据(gydF4y2BaXgydF4y2Ba和gydF4y2BaYgydF4y2Ba).gydF4y2Ba

名称-值参数gydF4y2Ba

指定可选的逗号分隔的对gydF4y2Ba名称,值gydF4y2Ba论点。gydF4y2Ba的名字gydF4y2Ba参数名和gydF4y2Ba价值gydF4y2Ba为对应值。gydF4y2Ba的名字gydF4y2Ba必须出现在引号内。可以以任意顺序指定多个名称和值对参数gydF4y2Baname1,value1,...,namen,valuengydF4y2Ba.gydF4y2Ba

二元学习器损失函数,指定为逗号分隔对,由gydF4y2Ba'binaryloss'gydF4y2Ba以及一个内置的丢失函数名或函数句柄。gydF4y2Ba

  • 此表包含内置功能的名称和描述,其中gydF4y2BaygydF4y2BajgydF4y2Ba是一个特定二元学习者的类标签(在集合{-1,1,0}中),gydF4y2Ba年代gydF4y2BajgydF4y2Ba分数是否供观察gydF4y2BajgydF4y2Ba,gydF4y2BaggydF4y2Ba(gydF4y2BaygydF4y2BajgydF4y2Ba,gydF4y2Ba年代gydF4y2BajgydF4y2Ba)是二进制损失公式。gydF4y2Ba

    价值gydF4y2Ba 描述gydF4y2Ba 分数域gydF4y2Ba ggydF4y2Ba(gydF4y2BaygydF4y2BajgydF4y2Ba,gydF4y2Ba年代gydF4y2BajgydF4y2Ba)gydF4y2Ba
    “binodeviance”gydF4y2Ba 二项异常gydF4y2Ba (-∞∞)gydF4y2Ba 日志(1 + exp (2gydF4y2BaygydF4y2BajgydF4y2Ba年代gydF4y2BajgydF4y2Ba日志(2)])]/ [2gydF4y2Ba
    “指数”gydF4y2Ba 指数gydF4y2Ba (-∞∞)gydF4y2Ba exp (-gydF4y2BaygydF4y2BajgydF4y2Ba年代gydF4y2BajgydF4y2Ba/ 2gydF4y2Ba
    “汉明”gydF4y2Ba 汉明gydF4y2Ba [0, 1]或(-∞,∞)gydF4y2Ba [1 -符号(gydF4y2BaygydF4y2BajgydF4y2Ba年代gydF4y2BajgydF4y2Ba) / 2gydF4y2Ba
    “枢纽”gydF4y2Ba 铰链gydF4y2Ba (-∞∞)gydF4y2Ba 最大(0,1 -gydF4y2BaygydF4y2BajgydF4y2Ba年代gydF4y2BajgydF4y2Ba/ 2gydF4y2Ba
    “线性”gydF4y2Ba 线性gydF4y2Ba (-∞∞)gydF4y2Ba (1 -gydF4y2BaygydF4y2BajgydF4y2Ba年代gydF4y2BajgydF4y2Ba/ 2gydF4y2Ba
    分对数的gydF4y2Ba 物流gydF4y2Ba (-∞∞)gydF4y2Ba 日志[1 + exp (-gydF4y2BaygydF4y2BajgydF4y2Ba年代gydF4y2BajgydF4y2Ba日志(2)])]/ [2gydF4y2Ba
    '二次'gydF4y2Ba 二次gydF4y2Ba [0, 1]gydF4y2Ba (1 -gydF4y2BaygydF4y2BajgydF4y2Ba(2gydF4y2Ba年代gydF4y2BajgydF4y2Ba- 1)]gydF4y2Ba2gydF4y2Ba/2gydF4y2Ba

    该软件使二进制损失正常化,当损失是0.5gydF4y2BaygydF4y2BajgydF4y2Ba= 0。此外,软件计算每个类的平均二进制损失。gydF4y2Ba

  • 对于自定义二进制损耗函数,例如:gydF4y2BacustomFunctiongydF4y2Ba,指定其函数句柄gydF4y2BaBinaryLoss, @customFunctiongydF4y2Ba.gydF4y2Ba

    customFunctiongydF4y2Ba应该有这个表格gydF4y2Ba

    布劳斯= customFunction (M s)gydF4y2Ba
    地点:gydF4y2Ba

    • 米gydF4y2Ba是gydF4y2BaKgydF4y2Ba-经过-gydF4y2BalgydF4y2Ba存储在编码矩阵gydF4y2BaMdl。CodingMatrix.gydF4y2Ba

    • 年代gydF4y2Ba是1 -gydF4y2BalgydF4y2Ba分类得分的行矢量。gydF4y2Ba

    • 布劳斯gydF4y2Ba是分类损失。这个标量集合了特定班级中每个学习者的二进制损失。例如,您可以使用平均二进制损失来汇总每个类的学习者的损失。gydF4y2Ba

    • KgydF4y2Ba为类数。gydF4y2Ba

    • lgydF4y2Ba是二元学习者的数量。gydF4y2Ba

    有关传递自定义二进制损耗函数的示例,请参见gydF4y2Ba用自定义二元损耗函数预测ECOC模型的试样标签gydF4y2Ba.gydF4y2Ba

默认情况下,如果所有二进制学习者都是线性分类模型,使用:gydF4y2Ba

  • 支持向量机,然后gydF4y2BaBinaryLossgydF4y2Ba是gydF4y2Ba“枢纽”gydF4y2Ba

  • Logistic回归,然后gydF4y2BaBinaryLossgydF4y2Ba是gydF4y2Ba'二次'gydF4y2Ba

例子:gydF4y2Ba“BinaryLoss”、“binodeviance”gydF4y2Ba

数据类型:gydF4y2BachargydF4y2Ba|gydF4y2Ba字符串gydF4y2Ba|gydF4y2Bafunction_handlegydF4y2Ba

聚合二进制损失的解码方案,指定为由。组成的逗号分隔对gydF4y2Ba“解码”gydF4y2Ba和gydF4y2Ba“lossweighted”gydF4y2Ba或gydF4y2Ba“lossbased”gydF4y2Ba.有关更多信息,请参见gydF4y2Ba二元损失gydF4y2Ba.gydF4y2Ba

例子:gydF4y2Ba“解码”、“lossbased”gydF4y2Ba

用于分类评分预测的折叠索引,指定为逗号分隔对,由gydF4y2Ba“折叠”gydF4y2Ba和一个正整数的数字向量。的元素gydF4y2Ba折叠gydF4y2Ba必须从gydF4y2Ba1gydF4y2Ba通过gydF4y2BaCVMdl。KFoldgydF4y2Ba.gydF4y2Ba

例子:gydF4y2Ba“折叠”,[1 4 10]gydF4y2Ba

数据类型:gydF4y2Ba单gydF4y2Ba|gydF4y2Ba双gydF4y2Ba

损失函数,指定为逗号分隔对组成gydF4y2Ba“LossFun”gydF4y2Ba和函数句柄或gydF4y2Ba'classiferror'gydF4y2Ba.gydF4y2Ba

你可以:gydF4y2Ba

  • 指定内置功能gydF4y2Ba'classiferror'gydF4y2Ba,则损失函数为gydF4y2Ba分类错误gydF4y2Ba.gydF4y2Ba

  • 使用函数句柄表示法指定你自己的函数。gydF4y2Ba

    接下来,gydF4y2BangydF4y2Ba为训练数据中的观测次数(gydF4y2BaCVMdl。NumObservationsgydF4y2Ba),gydF4y2BaKgydF4y2Ba为班级数(gydF4y2Ba元素个数(CVMdl.ClassNames)gydF4y2Ba).您的函数需要签名gydF4y2Balockvalue =gydF4y2BalossfungydF4y2Ba(C、S、W、成本)gydF4y2Ba,地点:gydF4y2Ba

    • 输出参数gydF4y2BalossvaluegydF4y2Ba是一个标量。gydF4y2Ba

    • 选择函数名(gydF4y2BalossfungydF4y2Ba).gydF4y2Ba

    • CgydF4y2Ba是一个gydF4y2BangydF4y2Ba-经过-gydF4y2BaKgydF4y2Ba逻辑矩阵,其行表示相应的观测属于哪一类。中的列顺序对应于类的顺序gydF4y2BaCVMdl。ClassNames.gydF4y2Ba

      构造gydF4y2BaCgydF4y2Ba通过设置gydF4y2BaC (p, q) = 1gydF4y2Ba如果观察gydF4y2BapgydF4y2Ba是在课堂上gydF4y2Ba问gydF4y2Ba,每一行。设置行中的每个元素gydF4y2BapgydF4y2Ba来gydF4y2Ba0gydF4y2Ba.gydF4y2Ba

    • 年代gydF4y2Ba是一个gydF4y2BangydF4y2Ba-经过-gydF4y2BaKgydF4y2Ba类的负损失值的数值矩阵。每一行对应一个观察值。中的列顺序对应于类的顺序gydF4y2BaCVMdl。ClassNames.gydF4y2Ba年代gydF4y2Ba类似于输出参数gydF4y2BaNegLossgydF4y2Ba的gydF4y2BakfoldPredictgydF4y2Ba.gydF4y2Ba

    • WgydF4y2Ba是一个gydF4y2BangydF4y2Ba-乘1数值向量的观测权值。如果你通过gydF4y2BaWgydF4y2Ba,软件将其元素的总和标准化为gydF4y2Ba1gydF4y2Ba.gydF4y2Ba

    • 成本gydF4y2Ba是一个gydF4y2BaKgydF4y2Ba-经过-gydF4y2BaKgydF4y2Ba错误分类成本的数字矩阵。例如,gydF4y2Ba成本gydF4y2Ba=gydF4y2Ba(k)-eye(k)gydF4y2Ba指定正确分类的代价为0,错误分类的代价为1。gydF4y2Ba

    使用以下命令指定函数gydF4y2Ba'lockfun',@ lockfungydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Bafunction_handlegydF4y2Ba|gydF4y2BachargydF4y2Ba|gydF4y2Ba字符串gydF4y2Ba

损失聚合级别,指定为逗号分隔对组成gydF4y2Ba“模式”gydF4y2Ba和gydF4y2Ba“平均”gydF4y2Ba或gydF4y2Ba“个人”gydF4y2Ba.gydF4y2Ba

价值gydF4y2Ba 描述gydF4y2Ba
“平均”gydF4y2Ba 回报率损失在所有折线上平均gydF4y2Ba
“个人”gydF4y2Ba 返回每个折叠的损失gydF4y2Ba

例子:gydF4y2Ba“模式”,“个人”gydF4y2Ba

估计选项,指定为逗号分隔的对,由gydF4y2Ba“选项”gydF4y2Ba和返回的结构数组gydF4y2Ba实例化gydF4y2Ba.gydF4y2Ba

要调用并行计算:gydF4y2Ba

  • 您需要一个并行计算工具箱™许可证。gydF4y2Ba

  • 指定gydF4y2Ba'选项',statset('deverpareliall',true)gydF4y2Ba.gydF4y2Ba

详细程度,指定为逗号分隔对,由gydF4y2Ba“详细”gydF4y2Ba和gydF4y2Ba0gydF4y2Ba或gydF4y2Ba1gydF4y2Ba.gydF4y2Ba详细的gydF4y2Ba控制软件在命令窗口中显示的诊断消息的数量。gydF4y2Ba

如果gydF4y2Ba详细的gydF4y2Ba是gydF4y2Ba0gydF4y2Ba,则该软件不会显示诊断消息。否则,软件将显示诊断消息。gydF4y2Ba

例子:gydF4y2Ba“详细”,1gydF4y2Ba

数据类型:gydF4y2Ba单gydF4y2Ba|gydF4y2Ba双gydF4y2Ba

输出参数gydF4y2Ba

全部展开gydF4y2Ba

旨在gydF4y2Ba分类损失gydF4y2Ba,以数字标量、向量或矩阵的形式返回。的解释gydF4y2BalgydF4y2Ba取决于gydF4y2Ba亏本义务gydF4y2Ba.gydF4y2Ba

让gydF4y2BaRgydF4y2Ba正则化强度的数量是交叉验证的模型(gydF4y2Bacvmdl.trined {1} .binarylearners {1} .lambdagydF4y2Ba),gydF4y2BaFgydF4y2Ba为存储的折叠数gydF4y2BaCVMdl。KFoldgydF4y2Ba).gydF4y2Ba

  • 如果gydF4y2Ba模式gydF4y2Ba是gydF4y2Ba“平均”gydF4y2Ba,然后gydF4y2BalgydF4y2Ba是1 -gydF4y2BaRgydF4y2Ba向量。gydF4y2BaL (gydF4y2BajgydF4y2Ba)gydF4y2Ba是否使用正规化强度的交叉验证模型的所有折线上的平均分类损失gydF4y2BajgydF4y2Ba.gydF4y2Ba

  • 否则,gydF4y2BalgydF4y2Ba是一个gydF4y2BaFgydF4y2Ba-经过-gydF4y2BaRgydF4y2Ba矩阵。gydF4y2BaL (gydF4y2Ba我gydF4y2Ba,gydF4y2BajgydF4y2Ba)gydF4y2Ba是折页的分类损失吗gydF4y2Ba我gydF4y2Ba使用正规化强度的交叉验证模型gydF4y2BajgydF4y2Ba.gydF4y2Ba

例子gydF4y2Ba

全部展开gydF4y2Ba

加载NLP数据集。gydF4y2Ba

负载gydF4y2BanlpdatagydF4y2Ba

XgydF4y2Ba是预测数据的稀疏矩阵,和gydF4y2BaYgydF4y2Ba是类标签的分类向量。gydF4y2Ba

交叉验证线性分类模型的ECOC模型。gydF4y2Ba

RNG(1);gydF4y2Ba再现性的百分比gydF4y2BaCVMdl = fitcecoc (X, Y,gydF4y2Ba“学习者”gydF4y2Ba,gydF4y2Ba“线性”gydF4y2Ba,gydF4y2Ba“CrossVal”gydF4y2Ba,gydF4y2Ba“上”gydF4y2Ba);gydF4y2Ba

cvmdl.gydF4y2Ba是一个gydF4y2BaClassificationPartitionedLinearECOCgydF4y2Ba模型。默认情况下,该软件实现10倍交叉验证。gydF4y2Ba

估计倍倍分类错误率的平均值。gydF4y2Ba

ce = kfoldLoss (CVMdl)gydF4y2Ba
CE = 0.0958.gydF4y2Ba

或者,您可以通过指定名称-值对来获得每倍分类错误率gydF4y2Ba“模式”,“个人”gydF4y2Ba在gydF4y2BakfoldLossgydF4y2Ba.gydF4y2Ba

加载NLP数据集。交换预测数据。gydF4y2Ba

负载gydF4y2BanlpdatagydF4y2BaX = X ';gydF4y2Ba

为简单起见,在所有的观察中使用“其他”标签gydF4y2BaYgydF4y2Ba不gydF4y2Ba“金宝app模型”gydF4y2Ba,gydF4y2Ba“dsp”gydF4y2Ba,或gydF4y2Ba“通讯”gydF4y2Ba.gydF4y2Ba

Y (~ (ismember (Y, {gydF4y2Ba“金宝app模型”gydF4y2Ba,gydF4y2Ba“dsp”gydF4y2Ba,gydF4y2Ba“通讯”gydF4y2Ba}))) =gydF4y2Ba“别人”gydF4y2Ba;gydF4y2Ba

创建一个线性分类模型模板,指定使用sparsa优化目标函数。gydF4y2Ba

t = templatelinear(gydF4y2Ba“规划求解”gydF4y2Ba,gydF4y2Ba“sparsa”gydF4y2Ba);gydF4y2Ba

用5倍交叉验证交叉验证线性分类模型的ECOC模型。利用SpaRSA优化目标函数。指定预测器观察值对应于列。gydF4y2Ba

RNG(1);gydF4y2Ba再现性的百分比gydF4y2BaCVMdl = fitcecoc (X, Y,gydF4y2Ba“学习者”gydF4y2Ba,t,gydF4y2Ba“KFold”gydF4y2Ba,5,gydF4y2Ba'观察'gydF4y2Ba,gydF4y2Ba“列”gydF4y2Ba);CMdl1 = CVMdl。训练有素的{1}gydF4y2Ba
CMdl1 = CompactClassificationECOC ResponseName: 'Y' ClassNames: [comm dsp 金宝appsimulink others] ScoreTransform: 'none' BinaryLearners: {6x1 cell} CodingMatrix: [4x6 double]属性,方法gydF4y2Ba

cvmdl.gydF4y2Ba是一个gydF4y2BaClassificationPartitionedLinearECOCgydF4y2Ba模型。它包含属性gydF4y2Ba训练有素的gydF4y2Ba,这是一个5×1个单元阵列,持有agydF4y2BaCompactClassificationECOCgydF4y2Ba软件使用每个折叠的训练集训练的模型。gydF4y2Ba

创建一个函数,取每个观测的最小损失,然后对所有观测的最小损失进行平均。因为函数不使用类标识符矩阵(gydF4y2BaCgydF4y2Ba),观察权重(gydF4y2BaWgydF4y2Ba)及分类费用(gydF4y2Ba成本gydF4y2Ba),使用gydF4y2Ba~gydF4y2Ba有gydF4y2BakfoldLossgydF4y2Ba忽略他们的位置。gydF4y2Ba

lossfun = @ (~ S ~ ~)意味着(最低(- S, [], 2));gydF4y2Ba

使用每个观测函数的最小损失估计平均交叉验证的分类损失。同时,获得每一折的损失。gydF4y2Ba

ce = kfoldLoss (CVMdl,gydF4y2Ba“LossFun”gydF4y2Balossfun)gydF4y2Ba
ce = 0.0243gydF4y2Ba
ceFold = kfoldLoss (CVMdl,gydF4y2Ba“LossFun”gydF4y2Balossfun,gydF4y2Ba“模式”gydF4y2Ba,gydF4y2Ba“个人”gydF4y2Ba)gydF4y2Ba
ceFold =gydF4y2Ba5×1gydF4y2Ba0.0244 0.0255 0.0248 0.0240 0.0226gydF4y2Ba

为了确定ECOC模型的良好的套索惩罚强度,使用logistic回归学习者的线性分类模型,实现5倍交叉验证。gydF4y2Ba

加载NLP数据集。gydF4y2Ba

负载gydF4y2BanlpdatagydF4y2Ba

XgydF4y2Ba是预测数据的稀疏矩阵,和gydF4y2BaYgydF4y2Ba是类标签的分类向量。gydF4y2Ba

为简单起见,在所有的观察中使用“其他”标签gydF4y2BaYgydF4y2Ba不gydF4y2Ba“金宝app模型”gydF4y2Ba,gydF4y2Ba“dsp”gydF4y2Ba,或gydF4y2Ba“通讯”gydF4y2Ba.gydF4y2Ba

Y (~ (ismember (Y, {gydF4y2Ba“金宝app模型”gydF4y2Ba,gydF4y2Ba“dsp”gydF4y2Ba,gydF4y2Ba“通讯”gydF4y2Ba}))) =gydF4y2Ba“别人”gydF4y2Ba;gydF4y2Ba

创建一组11个对数间隔的正则化强度gydF4y2Ba 1gydF4y2Ba 0gydF4y2Ba -gydF4y2Ba 7gydF4y2Ba 通过gydF4y2Ba 1gydF4y2Ba 0gydF4y2Ba -gydF4y2Ba 2gydF4y2Ba .gydF4y2Ba

λ= logspace (7 2 11);gydF4y2Ba

创建一个线性分类模型模板,指定使用Logistic回归学习者,使用套索惩罚与优势gydF4y2BaλgydF4y2Ba,使用Sparsa训练,并降低目标函数梯度的容差gydF4y2Ba1 e-8gydF4y2Ba.gydF4y2Ba

t = templatelinear(gydF4y2Ba“学习者”gydF4y2Ba,gydF4y2Ba“物流”gydF4y2Ba,gydF4y2Ba“规划求解”gydF4y2Ba,gydF4y2Ba“sparsa”gydF4y2Ba,gydF4y2Ba...gydF4y2Ba“正规化”gydF4y2Ba,gydF4y2Ba“套索”gydF4y2Ba,gydF4y2Ba“λ”gydF4y2Baλ,gydF4y2Ba'gradienttolerance'gydF4y2Ba1 e-8);gydF4y2Ba

旨在模型。要提高执行速度,可以调换预测器数据并指定观察结果在列中。gydF4y2Ba

X = X ';RNG(10);gydF4y2Ba再现性的百分比gydF4y2BaCVMdl = fitcecoc (X, Y,gydF4y2Ba“学习者”gydF4y2Ba,t,gydF4y2Ba'观察'gydF4y2Ba,gydF4y2Ba“列”gydF4y2Ba,gydF4y2Ba“KFold”gydF4y2Ba5);gydF4y2Ba

cvmdl.gydF4y2Ba是一个gydF4y2BaClassificationPartitionedLinearECOCgydF4y2Ba模型。gydF4y2Ba

解剖gydF4y2Bacvmdl.gydF4y2Ba,以及其中的每个模型。gydF4y2Ba

numECOCModels =元素个数(CVMdl.Trained)gydF4y2Ba
numECOCModels = 5gydF4y2Ba
ECOCMdl1 = CVMdl。训练有素的{1}gydF4y2Ba
ECOCMdl1 = CompactClassificationECOC ResponseName: 'Y' ClassNames: [comm dsp 金宝appsimulink others] ScoreTransform: 'none' BinaryLearners: {6×1 cell} CodingMatrix: [4×6 double]属性,方法gydF4y2Ba
numclmodels = numel(ecocmdl1.binarylearners)gydF4y2Ba
numCLModels = 6gydF4y2Ba
CLMdl1 = ECOCMdl1。BinaryLearners {1}gydF4y2Ba
CLMdl1 = ClassificationLinear response: 'Y' ClassNames: [-1 1] ScoreTransform: 'logit' Beta: [34023×11 double] Bias: [-0.3169 -0.3169 -0.3168 -0.3168 -0.3167 -0.1725 -0.0805 -0.1762 -0.3450 -0.5174] Lambda: [1.0000e-07 3.1623e-07 1.1623e -05 1.0000e-04 3.1623e-04 1.0000e-03 0.0032 0.0100]“物流”属性,方法gydF4y2Ba

因为gydF4y2BafitcecocgydF4y2Ba实现5倍交叉验证,gydF4y2Bacvmdl.gydF4y2Ba包含一个5 × 1单元数组gydF4y2BaCompactClassificationECOCgydF4y2Ba软件在每次折叠时训练的模型。的gydF4y2BaBinaryLearnersgydF4y2Ba每个人的财产gydF4y2BaCompactClassificationECOCgydF4y2Ba模型包含了gydF4y2BaClassificationLineargydF4y2Ba模型。的数量gydF4y2BaClassificationLineargydF4y2Ba每个紧凑ECOC型号内的型号取决于不同的标签和编码设计的数量。因为gydF4y2BaλgydF4y2Ba是一系列正则化优势,可以想到gydF4y2Baclmdl1.gydF4y2Ba作为11个型号,一个用于每个正则化强度gydF4y2BaλgydF4y2Ba.gydF4y2Ba

通过绘制每个正则化强度的5倍分类误差的平均值,确定模型的泛化程度。确定正则化强度,使网格上的泛化误差最小化。gydF4y2Ba

ce = kfoldLoss (CVMdl);图;plot(log10(Lambda),log10(ce)) [~,minCEIdx] = min(ce);minLambda =λ(minCEIdx);持有gydF4y2Ba在gydF4y2Ba情节(log10 (minLambda) log10 (ce (minCEIdx)),gydF4y2Ba“罗”gydF4y2Ba);ylabel (gydF4y2Ba'log_{10} 5倍分类错误'gydF4y2Ba)包含(gydF4y2Ba“log_{10}λ的gydF4y2Ba)传说(gydF4y2BaMSE的gydF4y2Ba,gydF4y2Ba“最小分类错误”gydF4y2Ba)举行gydF4y2Ba从gydF4y2Ba

利用整个数据集训练由线性分类模型组成的ECOC模型,并指定最小正则化强度。gydF4y2Ba

t = templatelinear(gydF4y2Ba“学习者”gydF4y2Ba,gydF4y2Ba“物流”gydF4y2Ba,gydF4y2Ba“规划求解”gydF4y2Ba,gydF4y2Ba“sparsa”gydF4y2Ba,gydF4y2Ba...gydF4y2Ba“正规化”gydF4y2Ba,gydF4y2Ba“套索”gydF4y2Ba,gydF4y2Ba“λ”gydF4y2BaminLambda,gydF4y2Ba'gradienttolerance'gydF4y2Ba1 e-8);MdlFinal = fitcecoc (X, Y,gydF4y2Ba“学习者”gydF4y2Ba,t,gydF4y2Ba'观察'gydF4y2Ba,gydF4y2Ba“列”gydF4y2Ba);gydF4y2Ba

要估计新观测值的标签,请通过gydF4y2BaMdlFinalgydF4y2Ba和新的数据gydF4y2Ba预测gydF4y2Ba.gydF4y2Ba

更多关于gydF4y2Ba

全部展开gydF4y2Ba

参考gydF4y2Ba

艾尔温,E.夏皮尔,Y.辛格。《将多类减少为二进制:一种统一的保证金分类方法》。gydF4y2Ba机器学习研究杂志gydF4y2Ba.2000年第1卷,113-141页。gydF4y2Ba

[2]埃斯卡拉,S.,O. pujol和P. Radeva。“在三元纠错输出代码中解码过程。”gydF4y2Ba模式分析与机器智能学报gydF4y2Ba.2010年第32卷第7期120-134页。gydF4y2Ba

Pujol, S. Escalera, S. O. Pujol, P. Radeva。用于纠错输出码稀疏设计的三元码的可分性。gydF4y2Ba模式RecogngydF4y2Ba.卷。30,第3,2009,第285-297页。gydF4y2Ba

扩展功能gydF4y2Ba

介绍了R2016agydF4y2Ba