k-最近邻分类器模板
创建一个默认的k-最近的邻居模板使用fitcensemble
.
载入费雪的虹膜数据集。
负载fisheriris
为5个最近邻搜索创建一个模板,并指定标准化预测器。
t = templateKNN (“NumNeighbors”,5,“标准化”, 1)
t =适合分类KNN的模板。NumNeighbors: 5 NSMethod: " Distance: " BucketSize: " IncludeTies: [] DistanceWeight: [] BreakTies: [] Exponent: [] Cov: [] Scale: [] standarzedata: 1 Version: 1 Method: 'KNN' Type: 'classification'
模板对象的所有属性都为空,除了NumNeighbors
,方法
,StandardizeData
,类型
.当你指定t
作为初学者,软件用它们各自的默认值填充空属性。
指定t
作为分类集成的弱学习器。
Mdl = fitcensemble(量、种类、“方法”,“子”,“学习者”t);
显示样本内(再替换)误分类错误。
L = resubLoss (Mdl)
L = 0.0600
创建一个默认的k-最近的邻居模板使用fitcecoc
.
载入费雪的虹膜数据集。
负载fisheriris
为5个最近邻搜索创建一个模板,并指定标准化预测器。
t = templateKNN (“NumNeighbors”,5,“标准化”, 1)
t =适合分类KNN的模板。NumNeighbors: 5 NSMethod: " Distance: " BucketSize: " IncludeTies: [] DistanceWeight: [] BreakTies: [] Exponent: [] Cov: [] Scale: [] standarzedata: 1 Version: 1 Method: 'KNN' Type: 'classification'
模板对象的所有属性都为空,除了NumNeighbors
,方法
,StandardizeData
,类型
.当你指定t
作为初学者,软件用它们各自的默认值填充空属性。
指定t
作为ECOC多类模型的二元学习者。
Mdl = fitcecoc(量、种类、“学习者”t);
默认情况下,软件会进行训练Mdl
使用一对一编码设计。
显示样本内(再替换)误分类错误。
L = resubLoss (Mdl,“LossFun”,“classiferror”)
L = 0.0467
指定可选的逗号分隔的对名称,值
参数。的名字
参数名和价值
为对应值。的名字
必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“NumNeighbors”4“距离”,“闵可夫斯基”
使用Minkowski距离度量指定4个最近邻分类器模板。
“BreakTies”
- - - - - -打破僵局的算法“最小”
(默认)|“最近的”
|“随机”
决胜算法所使用的预测
如果多个类具有相同的最小开销,则指定为逗号分隔的对“BreakTies”
以及以下其中之一:
“最小”
—在绑定组之间使用最小的索引。
“最近的”
—在绑定组中使用最近邻居的类。
“随机”
-在平局组中使用随机的平局决胜局。
在默认情况下,当多个类之间有相同数量的最近点时,就会发生平局K
最近的邻居。
例子:“BreakTies”,“最近”
“BucketSize”
- - - - - -节点中的最大数据点50
(默认)|正整数的值的叶节点中的最大数据点数kD-tree,指定为逗号分隔的对,由“BucketSize”
和一个正整数。这个参数只有在NSMethod
是“kdtree”
.
例子:“BucketSize”,40岁
数据类型:单
|双
“浸”
- - - - - -协方差矩阵X (X, omitrows)
(默认)|标量值的正定矩阵协方差矩阵,指定为逗号分隔对,由“浸”
以及计算马氏距离时表示协方差矩阵的标量值的正定矩阵。此参数仅在以下情况下有效“距离”
是“mahalanobis”
.
你不能同时指定“标准化”
的,要么“规模”
或“浸”
.
数据类型:单
|双
“距离”
- - - - - -距离度量“cityblock”
|“chebychev”
|“相关”
|的余弦
|“欧几里得”
|“汉明”
|函数处理|……距离度量,指定为逗号分隔对,由“距离”
和一个有效的距离度量名称或函数句柄。允许的距离度量名称取决于你选择的邻居搜索方法(见NSMethod
).
NSMethod |
距离指标名称 |
---|---|
详尽的 |
任意距离度量ExhaustiveSearcher |
kdtree |
“cityblock” ,“chebychev” ,“欧几里得” ,或闵可夫斯基的 |
此表包括的有效距离度量ExhaustiveSearcher
.
距离指标名称 | 描述 |
---|---|
“cityblock” |
城市街区的距离。 |
“chebychev” |
切比切夫距离(最大坐标差)。 |
“相关” |
一减去观察值之间的样本线性相关性(作为值的序列处理)。 |
的余弦 |
1减去观测值之间夹角的余弦值(作为向量处理)。 |
“欧几里得” |
欧氏距离。 |
“汉明” |
汉明距离,坐标差的百分比。 |
“jaccard” |
1减去雅卡尔系数,非零坐标差的百分比。 |
“mahalanobis” |
马氏距离,用正定协方差矩阵计算C .的默认值C 样本协方差矩阵是X ,由X (X, omitrows) .指定一个不同的值C ,可以使用“浸” 名称-值对的论点。 |
闵可夫斯基的 |
闵可夫斯基距离。默认指数为2 .要指定不同的指数,请使用“指数” 名称-值对的论点。 |
“seuclidean” |
标准化的欧氏距离。每个坐标差X 查询点被缩放,也就是除以一个缩放值年代 .的默认值年代 标准偏差是从X ,S =性病(X, omitnan) .为指定另一个值年代 ,可以使用规模 名称-值对的论点。 |
“枪兵” |
1减去观察值之间的样本斯皮尔曼等级相关性(作为值的序列处理)。 |
@ |
距离函数处理。 函数ZJ D2 = distfun(子)距离计算%...
|
如果您指定CategoricalPredictors
作为“所有”
,则默认距离度量为“汉明”
.否则,默认距离度量为“欧几里得”
.
定义,请参阅距离度量.
例子:“距离”,“闵可夫斯基”
数据类型:字符
|字符串
|function_handle
“DistanceWeight”
- - - - - -距离加权函数“平等”
(默认)|“逆”
|“squaredinverse”
|函数处理距离加权函数,指定为逗号分隔对组成“DistanceWeight”
或者是函数句柄,或者是表中的一个值。
价值 | 描述 |
---|---|
“平等” |
没有权重 |
“逆” |
重量是1 /距离 |
“squaredinverse” |
重量是1 /距离2 |
@ |
fcn 是一个函数,它接受非负距离的矩阵,并返回包含非负距离权值的相同大小的矩阵。例如,“squaredinverse” 相当于@ (d) d。^ (2) . |
例子:“DistanceWeight”、“逆”
数据类型:字符
|字符串
|function_handle
“指数”
- - - - - -闵可夫斯基距离指数2
(默认)|积极的标量值闵可夫斯基距离指数,指定为逗号分隔对,由“指数”
和一个正标量值。此参数仅在以下情况下有效“距离”
是闵可夫斯基的
.
例子:“指数”,3
数据类型:单
|双
“IncludeTies”
- - - - - -系包含国旗假
(默认)|真正的
连接包含标志,指定为由逗号分隔的对组成“IncludeTies”
以及指示是否预测
包括距离值等于的所有邻居K
最小距离。如果IncludeTies
是真正的
,预测
包括所有这些邻居。否则,预测
使用完全K
邻居。
例子:“IncludeTies”,真的
数据类型:逻辑
“NSMethod”
- - - - - -最近邻搜索法“kdtree”
|“详尽”
最近邻搜索方法,指定为逗号分隔对组成“NSMethod”
和“kdtree”
或“详尽”
.
“kdtree”
-创建和使用kd树来寻找最近的邻居。“kdtree”
当距离度量为以下情况之一时,为有效:
“欧几里得”
“cityblock”
闵可夫斯基的
“chebychev”
“详尽”
—采用穷举搜索算法。当预测一个新点的等级时xnew
,软件计算所有点的距离值X
来xnew
寻找最近的邻居。
默认值是“kdtree”
当X
有10
或更少的列,X
是不是稀疏还是一种gpuArray
,距离度规是a“kdtree”
类型;否则,“详尽”
.
例子:“NSMethod”、“详尽”
“NumNeighbors”
- - - - - -要查找的最近邻居的数目1
(默认)|正整数的值最近的邻居的数量X
要查找以便在预测时对每个点进行分类,指定为逗号分隔对,由“NumNeighbors”
和一个正整数。
例子:“NumNeighbors”,3
数据类型:单
|双
“规模”
- - - - - -距离范围内性病(X, omitnan)
(默认)|非负标量值的向量距离比例尺,指定为逗号分隔对,由“规模”
以及包含非负标量值的向量,其长度等于列数X
.每个坐标差X
而一个查询点是由对应的元素缩放的规模
.此参数仅在以下情况下有效“距离”
是“seuclidean”
.
你不能同时指定“标准化”
的,要么“规模”
或“浸”
.
数据类型:单
|双
“标准化”
- - - - - -标志标准化预测器假
(默认)|真正的
标记来标准化预测器,指定为逗号分隔对,由“标准化”
和真正的
(1
)或假
(0)
.
如果你设置“标准化”,真的
,然后软件中心和缩放预测数据的每一列(X
)的列均值和标准偏差。
该软件没有标准化分类预测器,如果所有预测器都是分类的,则会抛出错误。
你不能同时指定“标准化”,1
的,要么“规模”
或“浸”
.
将预测数据标准化是一个很好的实践。
例子:“标准化”,真的
数据类型:逻辑
t
- - - - - -k神经网络分类模板k神经网络分类模板适合训练集合或纠错输出代码(ECOC)多类模型,作为模板对象返回。通过t
来fitcensemble
或fitcecoc
,分别指定如何为集成或ECOC模型创建KNN分类器。
如果你显示t
,则所有未指定的选项显示为空([]
).但是,在训练期间,软件会用相应的默认值替换空选项。
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。