十折交叉验证 matlab,Matlab 十折交叉验证

十折交叉验证 matlab,Matlab 十折交叉验证十折交叉验证(1)英文名叫做10-foldcross-validation,用来测试算法准确性,是常用的测试方法。(2)将数据集分成十份,轮流将其中9份作为训练数据,1份作为测试数据,进行试验。每次试验都会得出相应的正确率(或差错率)。(3)10次的结果的正确率(或差错率)的平均值作为对算法精度的估计,一般还需要进行多次10折交叉验证(例如10次10折交叉验证),再求其均值,作为对算法准确性的估…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

十折交叉验证

(1)英文名叫做10-fold cross-validation,用来测试算法准确性,是常用的测试方法。

(2)将数据集分成十份,轮流将其中9份作为训练数据,1份作为测试数据,进行试验。每次试验都会得出相应的正确率(或差错率)。

(3)10次的结果的正确率(或差错率)的平均值作为对算法精度的估计,一般还需要进行多次10折交叉验证(例如10次10折交叉验证),再求其均值,作为对算法准确性的估计。

例子:利用十折交叉验证计算错误分类率

(Matlab内置了由Fisher在1936年发布的关于iris的数据集,鸠尾花的分类,详见UCI链接;载入该数据集,包括means和species,分别是四维的150个样本和对应的类别)

load fisheriris

indices = crossvalind(‘Kfold’,species,10);

cp = classperf(species);

for i = 1:10

test = (indices == i); train = ~test;

%分别取第1、2、…、10份为测试集,其余为训练集

class = classify(meas(test,:),meas(train,:),species(train,:));

classperf(cp,class,test);

end

cp.ErrorRate

%查询错误分类率

相关函数解释:

Indices = crossvalind(‘Kfold’, N, K)

1)参数’Kfold’表明为了K折十字交叉验证,把数据集N随机分成平均的(或近似评价的)K份,Indices中为每个样本所属部分的索引(从1到K)

2)因为是随机分,因此重复调用会产生不同分法。

3)在K折十字交叉验证中,K-1份被用做训练,剩下的1份用来测试,这个过程被重复K次。

cp = classperf(truelabels)

1)classperf是评估分类器性能(Evaluate performance of classifie)函数。

2)truelabels中为每个样本对应的真实类别,创建并初始化一个空的分类器性能对象CP。

3)classperf provides an interface to keep track of the performance during the validation of classifiers. classperf creates and, optionally, updates a classifier performance object, CP, which accumulates the results of the classifier.

class = classify(sample,training,group)

1)classify是判别分析(Discriminant Analysis)函数。

2)若事先已经建立类别,则使用判别分析;若事先没有建立类别,则使用聚类分析。一般地,若已有给定的若干总体的(即若干类别)的观测资料,希望构造一个或多个判别函数,能由此函数对新的位置其所属总体的样品作出判断,从而决定其应属于哪个总体,这就是判别分析问题。

3)判别分析是利用原有的分类信息,得到判别函数(判别函数关系式,一般是与分类相关的若干个指标的线性关系式),然后利用 该函数去判断未知样品属于哪一类。因此,这是一个学习与预测的过程。常用的判别分析法有距离判别法、费歇尔判别法、贝叶斯判别法等。

4)matlab中语法:class = classify(sample,training,group) ,默认线性判别分析,将sample的每个样本进行判别,分到trainning指定的类中,返回该类表作为分类结果。还可以用参数type指定判别分析法。

classperf(cp, classout, testidx)

1)根据分类结果,更新分类器性能对象CP。

2)在十折交叉验证法中,就是重复10次,可累积得到总的错误分类率。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203677.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql中not exists用法_not exists用法

    mysql中not exists用法_not exists用法notexists是sql中的一个语法,常用在子查询和主查询之间,用于条件判断,根据一个条件返回一个布尔值,从而来确定下一步操作如何进行,notexists也是exists或in的对立面。notexists是exists的对立面,所以要了解notexists的用法,我们首先了解下exists、in的区别和特点:exists:强调的是是否返回结果集,不要求知道返回什么,比如:sele…

    2022年7月15日
  • Hadoop之——又一次格式化hdfs系统的方法

    Hadoop之——又一次格式化hdfs系统的方法

    2022年1月26日
  • PEST分析顺丰服务需求_快递行业宏观环境PEST分析[通俗易懂]

    PEST分析顺丰服务需求_快递行业宏观环境PEST分析[通俗易懂]精品welcome宏观环境PEST分析PEST分析又称大环境分析,是研究宏观环境的有效工具。通过Pest分析法,公司能够剖析出自身所处的外部大环境究竟对自己的发展是有利还是有害,以及据此作出战略规划,趋利避害。其中每一个字母各代表一个因素,分别为:P(political—政治)、E(economic—经济)、S(social—社会)、T(technological—技术),接下来将通过pest分析…

    2022年6月11日
  • 什么是黑盒测试?它的常用方法有哪些?[通俗易懂]

    什么是黑盒测试?它的常用方法有哪些?[通俗易懂]什么是黑盒测试?它的常用方法有哪些?一:什么是黑盒测试?黑盒测试(Black-boxTesting),黑盒测试又称为“功能测试”,是将测试对象看做一个黑盒,在并不考虑软件产品的内部结构和处理过程的基础上对软件产品进行功能测试。黑盒测试注重软件产品的“功能性需求”。二:黑盒测试常用的方法有哪些?运用黑盒技术设计测试用例常用的方法有:①等价类划分②边界值分析③因果图分析法④错误推断法等详细分析:(一)等价类划分:等价类的划分无非就两种情况:有效等价类、无效等价类1.有效等

    2022年10月3日
  • 用拉普拉斯变换求零状态响应_什么是UPS?为什么用UPS?关于UPS电源的知识都在这里!…[通俗易懂]

    用拉普拉斯变换求零状态响应_什么是UPS?为什么用UPS?关于UPS电源的知识都在这里!…[通俗易懂]来源:电气设计圈如有侵权,请联系删除UPS种类、功能、原理1什么是UPSUPS-UninterruptedPowerSystem;利用电池化学能作为后备能量,在市电断电等电网故障时,不间断地为用户设备提供(交流)电能的一种能量转换装置。2为什么用UPSUPS的四大功能:1不停电功能,解决电网停电问题;2交流稳压功能,解决网压剧烈波动问题;3净化功能,解决电网与电源污染问题;4管理功能…

    2022年5月10日
  • Python安装教程:

    Python安装教程:Python安装教程:原文链接:www.dushunchang.topPython简介:菜鸟教程官方解释。Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python是一种解释型语言:这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python是交互式语言:这意味着,您可以在一个Python提示符

    2022年6月11日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号