主要内容

ClassificationPartitionedKernel

旨在,二进制内核分类模型

自从R2018b

描述

ClassificationPartitionedKernel是一个二进制内核分类模型,训练旨在折叠。你可以估计的质量分类、概括或内核如何分类模型,使用一个或多个“kfold”功能:kfoldPredict,kfoldLoss,kfoldMargin,kfoldEdge

每一个“kfold”方法使用模型训练training-fold(的)观察预测响应validation-fold (out-of-fold)观察。例如,假设您旨在使用5折。在这种情况下,软件随机分配每个观测分成五组同等大小的(大概)。的培训褶皱包含四个组的(也就是说,约4/5的数据)和验证褶皱包含另一组(即约1/5的数据)。在这种情况下,交叉验证收益如下:

  1. 软件培训(存储在第一个模型CVMdl.Trained {1})通过观察在最后四组和外汇储备第一组的观测验证。

  2. 软件培训(存储在第二个模型CVMdl.Trained {2})使用观察第一组最后三组。软件保留在第二组观察验证。

  3. 软件收入用在类似的方式是第三,第四,第五模型。

如果验证通过kfoldPredict对观察组,软件计算预测通过使用模型。简而言之,软件估计响应每个观察通过模型训练没有观察。

请注意

ClassificationPartitionedKernel模型对象不存储预测数据集。

创建

您可以创建一个ClassificationPartitionedKernel模型通过训练一个分类使用内核模式fitckernel并指定一个名称-值对参数:“Crossval”,“CVPartition”,“坚持”,“KFold”,或“Leaveout”

属性

全部展开

交叉验证的属性

这个属性是只读的。

旨在模型名称,指定为一个特征向量。

例如,“内核”指定了一个旨在内核模式。

数据类型:字符

这个属性是只读的。

旨在折叠,指定为一个正整数标量。

数据类型:

这个属性是只读的。

交叉验证参数值,指定为一个对象。参数值对应于旨在内核使用名称-值对参数值分类器。ModelParameters不包含估计参数。

您可以访问的属性ModelParameters使用点符号。

这个属性是只读的。

在训练数据的观察,指定为一个积极的数字标量。

数据类型:

这个属性是只读的。

数据分区显示软件将数据分为交叉验证折叠,如何指定为一个cvpartition模型。

这个属性是只读的。

内核在交叉验证分类器训练折叠,指定的单元阵列ClassificationKernel模型。训练有素的k细胞,k是折叠的数量。

数据类型:细胞

这个属性是只读的。

观察权重模型,旨在使用指定为一个数值向量。WNumObservations元素。

软件可实现重量以便用于培训sum (W, omitnan)1

数据类型:|

这个属性是只读的。

指定的模型,观察类标签用于旨在作为一个类别或字符数组,逻辑或数值向量,或单元阵列的特征向量。YNumObservations元素和具有相同的数据类型作为输入参数Y你通过fitckernel该模型旨在。(软件对字符串数组作为细胞阵列特征向量)。

每一行的Y代表观察到的分类对应的行X

数据类型:分类|字符|逻辑|||细胞

其他分类属性

这个属性是只读的。

分类预测指标,指定为一个向量的正整数。CategoricalPredictors包含索引值表明相应的预测分类。索引值介于1和p,在那里p预测的数量被用来训练模型。如果所有的预测都直言,那么这个属性是空的([])。

数据类型:|

这个属性是只读的。

独特的类标签用于培训,指定为一个类别或字符数组,逻辑或数值向量,或单元阵列的特征向量。一会具有相同的数据类型是观察到的类标签属性Y并确定类订单。

数据类型:分类|字符|逻辑|||细胞

这个属性是只读的。

误分类代价,指定为一个正方形数字矩阵。成本K行和列,K类的数量。

成本(i, j)是一个指向类分类的成本j如果它真正的类。的行和列的顺序成本对应于类的顺序一会

数据类型:

这个属性是只读的。

预测出他们名字的顺序出现在预测数据,指定为一个单元阵列的特征向量。的长度PredictorNames等于列数作为训练数据中预测变量X资源描述

数据类型:细胞

这个属性是只读的。

类概率之前,指定为一个数值向量。之前尽可能多的元素有课程吗一会和元素的顺序对应的元素一会

数据类型:

这个属性是只读的。

响应变量名称,指定为一个特征向量。

数据类型:字符

分数转换函数适用于预测分数,指定为一个函数名或函数处理。

内核的分类模型Mdl,得分转换之前,预测分类得分的观察x(行向量) f ( x ) = T ( x ) β + b

  • T ( · ) 是一个转换的观察特性的扩张。

  • β是估计的列向量的系数。

  • b估计是标量的偏见。

改变CVMdl分数转换函数函数例如,使用点符号。

  • 对于一个内置的函数,输入这个代码和替换函数从表中值。

    CVMdl。ScoreTransform = '函数”;

    价值 描述
    “doublelogit” 1 / (1 +e2x)
    “invlogit” 日志(x/ (1 -x))
    “ismax” 集类的分数最大的分数为1,并设置所有其他类的分数为0
    “分对数” 1 / (1 +e- - - - - -x)
    “没有”“身份” x(转换)
    “标志” 1x< 0
    为0x= 0
    1x> 0
    “对称” 2x- 1
    “symmetricismax” 集合类的分数最大的分数为1,和所有其他类的分数设置为1
    “symmetriclogit” 2 / (1 +e- - - - - -x)- 1

  • 对于一个MATLAB®函数或你定义一个函数,输入它的功能处理。

    CVMdl。ScoreTransform = @函数;

    函数必须接受一个矩阵的原始分数为每个类,然后返回一个相同大小的矩阵表示为每一个类转换后的分数。

数据类型:字符|function_handle

对象的功能

kfoldEdge 分类边缘旨在内核分类模型
kfoldLoss 分类损失旨在内核分类模型
kfoldMargin 分类利润率旨在内核分类模型
kfoldPredict 分类观察旨在内核分类模型

例子

全部折叠

加载电离层数据集。这个数据集有34个预测因子和351二进制响应雷达回报,要么坏(“b”)或好(‘g’)。

负载电离层rng (“默认”)%的再现性

旨在一个二进制内核分类模型。默认情况下,软件使用10倍交叉验证。

CVMdl = fitckernel (X, Y,“CrossVal”,“上”)
CVMdl = ClassificationPartitionedKernel CrossValidatedModel:“内核”ResponseName:“Y”NumObservations: 351 KFold: 10个分区:[1 x1 cvpartition]类名:{b ' g '} ScoreTransform:“没有一个”属性,方法
元素个数(CVMdl.Trained)
ans = 10

CVMdl是一个ClassificationPartitionedKernel模型。因为fitckernel实现了10倍交叉验证,CVMdl包含10ClassificationKernel模型软件列车training-fold(的)观察。

估计旨在分类错误。

kfoldLoss (CVMdl)
ans = 0.0940

分类错误率为9%左右。

版本历史

介绍了R2018b

全部展开