主要内容gydF4y2Ba

损失gydF4y2Ba

多种误差输出代码(ECOC)模型的分类损失gydF4y2Ba

描述gydF4y2Ba

lgydF4y2Ba=损失(gydF4y2BaMdlgydF4y2Ba,gydF4y2BaTBL.gydF4y2Ba,gydF4y2Baresponsevarname.gydF4y2Ba)gydF4y2Ba退还分类损失(gydF4y2BalgydF4y2Ba),这是一个标量,表示经过训练的多类纠错输出代码(ECOC)模型的良好程度gydF4y2BaMdlgydF4y2Ba分类预测数据gydF4y2BaTBL.gydF4y2Ba与真正的课程标签相比gydF4y2Batbl.responsevarname.gydF4y2Ba.默认情况下,gydF4y2Ba损失gydF4y2Ba使用gydF4y2Ba分类错误gydF4y2Ba来计算gydF4y2BalgydF4y2Ba.gydF4y2Ba

lgydF4y2Ba=损失(gydF4y2BaMdlgydF4y2Ba,gydF4y2BaTBL.gydF4y2Ba,gydF4y2BaYgydF4y2Ba)gydF4y2Ba返回表中预测器数据的分类损失gydF4y2BaTBL.gydF4y2Ba和真正的类标签gydF4y2BaYgydF4y2Ba.gydF4y2Ba

例子gydF4y2Ba

lgydF4y2Ba=损失(gydF4y2BaMdlgydF4y2Ba,gydF4y2BaXgydF4y2Ba,gydF4y2BaYgydF4y2Ba)gydF4y2Ba返回矩阵中预测器数据的分类损失gydF4y2BaXgydF4y2Ba和真正的类标签gydF4y2BaYgydF4y2Ba.gydF4y2Ba

例子gydF4y2Ba

lgydF4y2Ba=损失(gydF4y2Ba___gydF4y2Ba,gydF4y2Ba名称,值gydF4y2Ba)gydF4y2Ba除了前面语法中的任何输入参数组合外,还使用一个或多个名称-值对参数指定选项。例如,您可以指定解码方案、分类丢失函数和详细级别。gydF4y2Ba

例子gydF4y2Ba

全部折叠gydF4y2Ba

载入费雪的虹膜数据集。指定预测器数据gydF4y2BaXgydF4y2Ba,响应数据gydF4y2BaYgydF4y2Ba,以及课程的顺序gydF4y2BaYgydF4y2Ba.gydF4y2Ba

负载gydF4y2BafisheririsgydF4y2Bax = meas;Y =分类(物种);classOrder =唯一(y);gydF4y2Ba%课堂秩序gydF4y2BaRNG(1);gydF4y2Ba重复性的%gydF4y2Ba

使用SVM二进制分类器列车ecoc模型。指定15%HoldOut示例,使用SVM模板标准化预测器,并指定类顺序。gydF4y2Ba

t = templatesvm(gydF4y2Ba'标准化'gydF4y2Ba,真的);pmdl = fitcecoc(x,y,gydF4y2Ba'坚持'gydF4y2Ba,0.15,gydF4y2Ba“学习者”gydF4y2Ba,t,gydF4y2Ba'classnames'gydF4y2Ba,classorder);mdl = pmdl.tromed {1};gydF4y2Ba%提取训练过的紧凑分类器gydF4y2Ba

PMDL.gydF4y2Ba是A.gydF4y2BaClassificationedecoc.gydF4y2Ba模型。它有物业gydF4y2Ba训练有素gydF4y2Ba,一个1 × 1单元数组,其中包含gydF4y2BaCompactClassificationECOCgydF4y2Ba使用培训集培训的软件的模型。gydF4y2Ba

估计测试样本分类错误,这是默认分类损失。gydF4y2Ba

testInds =测试(PMdl.Partition);gydF4y2Ba%提取测试指标gydF4y2BaXTest = X (testInds:);欧美= Y (testInds:);l =损耗(MDL,XTEST,YTEST)gydF4y2Ba
l = 0.gydF4y2Ba

ECOC模型正确对测试样本中的所有虹膜进行了正确。gydF4y2Ba

通过使用定制丢失功能来确定ecop模型的质量,该丢失函数考虑每个观察的最小二进制损耗。gydF4y2Ba

载入费雪的虹膜数据集。指定预测器数据gydF4y2BaXgydF4y2Ba,响应数据gydF4y2BaYgydF4y2Ba,以及课程的顺序gydF4y2BaYgydF4y2Ba.gydF4y2Ba

负载gydF4y2BafisheririsgydF4y2Bax = meas;Y =分类(物种);classOrder =唯一(y);gydF4y2Ba%课堂秩序gydF4y2BaRNG(1)gydF4y2Ba重复性的%gydF4y2Ba

使用SVM二进制分类器列车ecoc模型。指定15%HoldOut示例,使用SVM模板标准化预测器,并定义类顺序。gydF4y2Ba

t = templatesvm(gydF4y2Ba'标准化'gydF4y2Ba,真的);pmdl = fitcecoc(x,y,gydF4y2Ba'坚持'gydF4y2Ba,0.15,gydF4y2Ba“学习者”gydF4y2Ba,t,gydF4y2Ba'classnames'gydF4y2Ba,classorder);mdl = pmdl.tromed {1};gydF4y2Ba%提取训练过的紧凑分类器gydF4y2Ba

PMDL.gydF4y2Ba是A.gydF4y2BaClassificationedecoc.gydF4y2Ba模型。它有物业gydF4y2Ba训练有素gydF4y2Ba,一个1 × 1单元数组,其中包含gydF4y2BaCompactClassificationECOCgydF4y2Ba使用培训集培训的软件的模型。gydF4y2Ba

创建一个函数,取每个观测的最小损失,然后取所有观测的最小损失的平均值。gydF4y2Ba年代gydF4y2Ba对应于gydF4y2BaNegLossgydF4y2Ba的输出gydF4y2Ba预测gydF4y2Ba.gydF4y2Ba

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

计算测试样例自定义损失。gydF4y2Ba

testInds =测试(PMdl.Partition);gydF4y2Ba%提取测试指标gydF4y2BaXTest = X (testInds:);欧美= Y (testInds:);损失(Mdl XTest,欧美,gydF4y2Ba'lockfun'gydF4y2Balossfun)gydF4y2Ba
ans = 0.0033gydF4y2Ba

测试样本观测值的最小二进制平均损失为gydF4y2Ba0.0033gydF4y2Ba.gydF4y2Ba

输入参数gydF4y2Ba

全部折叠gydF4y2Ba

全或紧凑的多级ECOC模型,指定为gydF4y2BaClassificationECOCgydF4y2Ba或gydF4y2BaCompactClassificationECOCgydF4y2Ba模型对象。gydF4y2Ba

创建完整或紧凑的Ecoc模型,请参阅gydF4y2BaClassificationECOCgydF4y2Ba或gydF4y2BaCompactClassificationECOCgydF4y2Ba.gydF4y2Ba

示例数据,指定为表。每一行的gydF4y2BaTBL.gydF4y2Ba对应于一个观察,并且每列对应于一个预测变量。可选地,gydF4y2BaTBL.gydF4y2Ba可以包含响应变量和观察权值的附加列。gydF4y2BaTBL.gydF4y2Ba必须包含用于训练的所有预测因子gydF4y2BaMdlgydF4y2Ba.除了字符向量的单元格数组之外,不允许使用多列变量和单元格数组。gydF4y2Ba

如果你训练gydF4y2BaMdlgydF4y2Ba示例数据包含在gydF4y2Ba表格gydF4y2Ba,然后输入数据gydF4y2Ba损失gydF4y2Ba也必须在表中。gydF4y2Ba

训练时gydF4y2BaMdlgydF4y2Ba,假设你设置gydF4y2Ba“标准化”,真的gydF4y2Ba对于指定的模板对象gydF4y2Ba“学习者”gydF4y2Ba的名称-值对参数gydF4y2BafitcecocgydF4y2Ba.在这种情况下,对于相应的二进制学习者gydF4y2BajgydF4y2Ba,软件使用相应的手段标准化新的预测器数据的列gydF4y2BaMdl.BinaryLearner {j} .MugydF4y2Ba的标准差gydF4y2Bamdl.binarylearner {j} .sigmagydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba表格gydF4y2Ba

中的响应变量名,指定为变量名gydF4y2BaTBL.gydF4y2Ba.如果gydF4y2BaTBL.gydF4y2Ba包含用于训练的响应变量gydF4y2BaMdlgydF4y2Ba,则不需要指定gydF4y2Baresponsevarname.gydF4y2Ba.gydF4y2Ba

如果您指定gydF4y2Baresponsevarname.gydF4y2Ba,那么你必须这样做作为字符向量或字符串标量。例如,如果存储为响应变量gydF4y2Batbl.ygydF4y2Ba然后指定gydF4y2Baresponsevarname.gydF4y2Ba作为gydF4y2Ba“y”gydF4y2Ba.否则,该软件将处理所有列gydF4y2BaTBL.gydF4y2Ba, 包含gydF4y2Batbl.ygydF4y2Ba预测因子。gydF4y2Ba

响应变量必须是分类,字符或字符串阵列,逻辑或数字矢量,或字符向量的小区数组。如果响应变量是字符数组,则每个元素必须对应于数组的一行。gydF4y2Ba

数据类型:gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba

预测数据,指定为数字矩阵。gydF4y2Ba

每一行的gydF4y2BaXgydF4y2Ba对应一个观察值,每一列对应一个变量。列中的变量gydF4y2BaXgydF4y2Ba必须与训练分类器的变量相同吗gydF4y2BaMdlgydF4y2Ba.gydF4y2Ba

行的数量gydF4y2BaXgydF4y2Ba必须等于行数gydF4y2BaYgydF4y2Ba.gydF4y2Ba

训练时gydF4y2BaMdlgydF4y2Ba,假设你设置gydF4y2Ba“标准化”,真的gydF4y2Ba对于指定的模板对象gydF4y2Ba“学习者”gydF4y2Ba的名称-值对参数gydF4y2BafitcecocgydF4y2Ba.在这种情况下,对于相应的二进制学习者gydF4y2BajgydF4y2Ba,软件使用相应的手段标准化新的预测器数据的列gydF4y2BaMdl.BinaryLearner {j} .MugydF4y2Ba的标准差gydF4y2Bamdl.binarylearner {j} .sigmagydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba双倍的gydF4y2Ba|gydF4y2Ba单身的gydF4y2Ba

类标签,指定为类别、字符或字符串数组、逻辑或数字向量或字符向量的单元格数组。gydF4y2BaYgydF4y2Ba必须具有相同的数据类型gydF4y2BaMdl。ClassNames.gydF4y2Ba(该软件将字符串数组视为字符向量的单元格数组。)gydF4y2Ba

行的数量gydF4y2BaYgydF4y2Ba必须等于行数gydF4y2BaTBL.gydF4y2Ba或gydF4y2BaXgydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba分类gydF4y2Ba|gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba|gydF4y2Ba逻辑gydF4y2Ba|gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba|gydF4y2Ba细胞gydF4y2Ba

名称-值对的观点gydF4y2Ba

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

例子:gydF4y2Ba损失(Mdl, X, Y, BinaryLoss,铰链,LossFun, @lossfun)gydF4y2Ba指定gydF4y2Ba“枢纽”gydF4y2Ba作为二进制学习者的损失函数和自定义函数的处理gydF4y2Ba@lossfun.gydF4y2Ba作为整体损失函数。gydF4y2Ba

二进制学习者丢失功能,指定为逗号分隔对组成gydF4y2Ba'二元乐'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 max(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.5时gydF4y2BaygydF4y2BajgydF4y2Ba= 0.此外,软件计算每个类的平均二进制损耗。gydF4y2Ba

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

    customFunctiongydF4y2Ba有这个形式:gydF4y2Ba

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

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

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

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

    • KgydF4y2Ba为类数。gydF4y2Ba

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

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

默认的gydF4y2BaBinaryLossgydF4y2Ba值取决于二进制学习者返回的分数范围。此表介绍了一些默认值gydF4y2BaBinaryLossgydF4y2Ba基于给定假设的值。gydF4y2Ba

假设gydF4y2Ba 默认值gydF4y2Ba
所有二进制学习者都是SVM学习者的SVM或线性或内核分类模型。gydF4y2Ba “枢纽”gydF4y2Ba
所有的二元学习者都是由gydF4y2Baadaboostm1.gydF4y2Ba或gydF4y2BaGentleBoostgydF4y2Ba.gydF4y2Ba '指数'gydF4y2Ba
所有的二元学习者都是由gydF4y2BaLogitboost.gydF4y2Ba.gydF4y2Ba “binodeviance”gydF4y2Ba
所有二进制学习者都是Logistic回归学习者的线性或内核分类模型。或者,您指定通过设置来预测类后验概率gydF4y2Ba'fitposterior',真实gydF4y2Ba在gydF4y2BafitcecocgydF4y2Ba.gydF4y2Ba '二次'gydF4y2Ba

若要检查默认值,请使用点符号来显示gydF4y2BaBinaryLossgydF4y2Ba属性的训练模型在命令行。gydF4y2Ba

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

数据类型:gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba|gydF4y2Bafunction_handlegydF4y2Ba

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

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

损失函数,指定为逗号分隔对组成gydF4y2Ba'lockfun'gydF4y2Ba和gydF4y2Ba'classiferror'gydF4y2Ba或功能手柄。gydF4y2Ba

  • 指定内置函数gydF4y2Ba'classiferror'gydF4y2Ba.在这种情况下,损失函数是gydF4y2Ba分类错误gydF4y2Ba,这是错误分类观察的比例。gydF4y2Ba

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

    假使,假设gydF4y2Ban =大小(x,1)gydF4y2Ba是样本大小和gydF4y2BaKgydF4y2Ba为类数。您的功能必须具有签名gydF4y2Balossvalue = lossfun (C、S、W、成本)gydF4y2Ba, 在哪里:gydF4y2Ba

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

    • 指定函数名(gydF4y2Ba损失义务gydF4y2Ba).gydF4y2Ba

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

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

    • 年代gydF4y2Ba是一个gydF4y2BangydF4y2Ba-经过-gydF4y2BaKgydF4y2Ba类否定损失值的数字矩阵。每行对应于观察。中的列顺序对应于类的顺序gydF4y2BaMdl。ClassNames.输入gydF4y2Ba年代gydF4y2Ba类似于输出参数gydF4y2BaNegLossgydF4y2Ba的gydF4y2Ba预测gydF4y2Ba.gydF4y2Ba

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

    • 成本gydF4y2Ba是A.gydF4y2BaKgydF4y2Ba-经过-gydF4y2BaKgydF4y2Ba错误分类成本的数字矩阵。例如,gydF4y2Ba成本=(k) - 眼睛(k)gydF4y2Ba指定正确分类的成本和1用于错误分类。gydF4y2Ba

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

数据类型:gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba|gydF4y2Bafunction_handlegydF4y2Ba

预测器数据观测维数,由指定的逗号分隔对组成gydF4y2Ba'观察'gydF4y2Ba和gydF4y2Ba“列”gydF4y2Ba或gydF4y2Ba“行”gydF4y2Ba.gydF4y2Bamdl.binarylearners.gydF4y2Ba必须包含gydF4y2BaClassificationLineargydF4y2Ba模型。gydF4y2Ba

请注意gydF4y2Ba

如果您对预测器矩阵进行定位,使观察结果与列对应并指定gydF4y2Ba'观察','列'gydF4y2Ba,可以显著减少执行时间。你不能指定gydF4y2Ba'观察','列'gydF4y2Ba用于表中的预测器数据。gydF4y2Ba

估算选项,指定为逗号分隔对组成gydF4y2Ba'选项'gydF4y2Ba和返回的结构数组gydF4y2Ba实例化gydF4y2Ba.gydF4y2Ba

要调用并行计算:gydF4y2Ba

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

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

详细级别,指定为逗号分隔对组成gydF4y2Ba'verbose'gydF4y2Ba和gydF4y2Ba0gydF4y2Ba或gydF4y2Ba1gydF4y2Ba.gydF4y2Ba详细的gydF4y2Ba控制软件在命令窗口中显示的诊断消息的数量。gydF4y2Ba

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

例子:gydF4y2Ba'verbose',1gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

观察权重,指定为逗号分隔的配对组成gydF4y2Ba“重量”gydF4y2Ba和一个数字向量或变量的名称gydF4y2BaTBL.gydF4y2Ba.如果你提供重量,那么gydF4y2Ba损失gydF4y2Ba计算加权损失。gydF4y2Ba

如果您指定gydF4y2Ba权重gydF4y2Ba作为一个数字向量,然后是gydF4y2Ba权重gydF4y2Ba必须等于行数gydF4y2BaXgydF4y2Ba或gydF4y2BaTBL.gydF4y2Ba.gydF4y2Ba

如果您指定gydF4y2Ba权重gydF4y2Ba中的变量名gydF4y2BaTBL.gydF4y2Ba,您必须这样做作为字符向量或字符串标量。例如,如果重量被存储为gydF4y2Batbl.wgydF4y2Ba然后指定gydF4y2Ba权重gydF4y2Ba作为gydF4y2Ba' w 'gydF4y2Ba.否则,该软件将处理所有列gydF4y2BaTBL.gydF4y2Ba, 包含gydF4y2Batbl.wgydF4y2Ba预测因子。gydF4y2Ba

如果您没有指定自己的损失函数(使用gydF4y2Ba损失义务gydF4y2Ba),然后软件正常化gydF4y2Ba权重gydF4y2Ba求和为各类的先验概率值。gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba|gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba

输出参数gydF4y2Ba

全部折叠gydF4y2Ba

分类丢失,作为数字标量或行向量返回。gydF4y2BalgydF4y2Ba是泛化或重新提出质量措施。其解释取决于损失函数和加权方案,但通常,更好的分类器产生较小的分类损失值。gydF4y2Ba

如果gydF4y2Bamdl.binarylearners.gydF4y2Ba包含gydF4y2BaClassificationLineargydF4y2Ba模型,然后gydF4y2BalgydF4y2Ba是1 -gydF4y2BaℓgydF4y2Ba向量,gydF4y2BaℓgydF4y2Ba是线性分类模型中的正则化强度的数量(gydF4y2Banumel(mdl.binarylearners {1} .Lambda)gydF4y2Ba).的值gydF4y2BaL(j)gydF4y2Ba模型的损失是用正规化强度训练的吗gydF4y2BaMdl.BinaryLearners {1} .Lambda (j)gydF4y2Ba.gydF4y2Ba

除此以外,gydF4y2BalgydF4y2Ba为标量值。gydF4y2Ba

更多关于gydF4y2Ba

全部折叠gydF4y2Ba

分类错误gydF4y2Ba

的gydF4y2Ba分类错误gydF4y2Ba是具有表单的二进制分类错误测量gydF4y2Ba

lgydF4y2Ba =gydF4y2Ba ∑gydF4y2Ba jgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba ngydF4y2Ba wgydF4y2Ba jgydF4y2Ba egydF4y2Ba jgydF4y2Ba ∑gydF4y2Ba jgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba ngydF4y2Ba wgydF4y2Ba jgydF4y2Ba ,gydF4y2Ba

地点:gydF4y2Ba

  • wgydF4y2BajgydF4y2Ba重量是用于观察的吗gydF4y2BajgydF4y2Ba.软件将权重重归一。gydF4y2Ba

  • egydF4y2BajgydF4y2Ba= 1如果预测的观察类gydF4y2BajgydF4y2Ba与真实类别不同,否则为0。gydF4y2Ba

也就是说,分类误差是分类器误分类观测值的比例。gydF4y2Ba

二进制损失gydF4y2Ba

一个gydF4y2Ba二元损失gydF4y2Ba是类和分类分数的函数,它决定二元学习者如何将观察结果分类到类中。gydF4y2Ba

假设如下:gydF4y2Ba

  • 米gydF4y2BakjgydF4y2Ba是元素(gydF4y2BakgydF4y2Ba,gydF4y2BajgydF4y2Ba)的编码设计矩阵gydF4y2Ba米gydF4y2Ba(即与类对应的代码gydF4y2BakgydF4y2Ba二进制学习者gydF4y2BajgydF4y2Ba).gydF4y2Ba

  • 年代gydF4y2BajgydF4y2Ba二元学习者的分数是多少gydF4y2BajgydF4y2Ba为了观察。gydF4y2Ba

  • ggydF4y2Ba是二进制损失功能。gydF4y2Ba

  • kgydF4y2Ba ^gydF4y2Ba 是观测的预测类。gydF4y2Ba

在gydF4y2Ba通过解码gydF4y2Ba(Escalera等。)gydF4y2Ba,对二进制学习者产生最小二进制损失和的类决定了观测的预测类,即,gydF4y2Ba

kgydF4y2Ba ^gydF4y2Ba =gydF4y2Ba argmin.gydF4y2Ba kgydF4y2Ba ∑gydF4y2Ba jgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba lgydF4y2Ba |gydF4y2Ba 米gydF4y2Ba kgydF4y2Ba jgydF4y2Ba |gydF4y2Ba ggydF4y2Ba (gydF4y2Ba 米gydF4y2Ba kgydF4y2Ba jgydF4y2Ba ,gydF4y2Ba 年代gydF4y2Ba jgydF4y2Ba )gydF4y2Ba .gydF4y2Ba

在gydF4y2Ba损失加权解码gydF4y2Ba(Escalera等。)gydF4y2Ba,制作二进制学习者二进制损失的最小平均值的阶级决定了预测的观察类,即gydF4y2Ba

kgydF4y2Ba ^gydF4y2Ba =gydF4y2Ba argmin.gydF4y2Ba kgydF4y2Ba ∑gydF4y2Ba jgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba lgydF4y2Ba |gydF4y2Ba 米gydF4y2Ba kgydF4y2Ba jgydF4y2Ba |gydF4y2Ba ggydF4y2Ba (gydF4y2Ba 米gydF4y2Ba kgydF4y2Ba jgydF4y2Ba ,gydF4y2Ba 年代gydF4y2Ba jgydF4y2Ba )gydF4y2Ba ∑gydF4y2Ba jgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba lgydF4y2Ba |gydF4y2Ba 米gydF4y2Ba kgydF4y2Ba jgydF4y2Ba |gydF4y2Ba .gydF4y2Ba

allwein等。gydF4y2Ba建议丢失加权解码通过在相同动态范围内保持所有类的损耗值来提高分类准确性。gydF4y2Ba

该表总结了支持的损耗函数,其中金宝appgydF4y2BaygydF4y2BajgydF4y2Ba是特定二进制学习者的类标签(集合{-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 max(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[Allwein等]gydF4y2Ba.gydF4y2Ba

不要将二进制丢失与整体分类损失混淆(由此指定)gydF4y2Ba'lockfun'gydF4y2Ba名称 - 值对参数gydF4y2Ba损失gydF4y2Ba和gydF4y2Ba预测gydF4y2Ba对象函数),测量Ecoc分类器整体执行的良好。gydF4y2Ba

参考gydF4y2Ba

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

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

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

扩展能力gydF4y2Ba

介绍了R2014bgydF4y2Ba