matlab 下用libsvm 数据导入之后,导致准确率很低。但是在python下运行准确率很高。谢谢!
数据是txt的,直接读入显示是后面的图示。是个课程作业,研究了很久还是搞不懂,请大神指导下,谢谢!...
数据是txt的,直接读入显示是后面的图示。是个课程作业,研究了很久还是搞不懂,请大神指导下,谢谢!
展开
1个回答
展开全部
这个问题挺复杂的。 表面上看是libsvm导入出错了。
但是还有另外一个原因,就是数据的格式不太对。 解析出错了。
第三个原因就是python里计算的精度比较高。 而借助了libsvm后数据的精度变低了。
你说的准确率应该是算法结果的准确率。 按理,数据导入时精度变低应该影响不大。
所以很大可能是数据导入错误,或者是算法错误。
但是还有另外一个原因,就是数据的格式不太对。 解析出错了。
第三个原因就是python里计算的精度比较高。 而借助了libsvm后数据的精度变低了。
你说的准确率应该是算法结果的准确率。 按理,数据导入时精度变低应该影响不大。
所以很大可能是数据导入错误,或者是算法错误。
追问
不知道是什么原因造成的,同样的数据经过处理后在cmd下用python函数处理,准确率有88%,但是这个matlab准确率就很低,应该是数据导入的问题,原始数据不管是txt还是exl的直接读入都不行。不知道怎么修改,请大神指导!
追答
这个得用排除法一点点的测试。比如导入的时候,是否有行与列颠倒的问题。
算法虽然名子相同,其实是不同的算法。
算法的参数是否相同。
看着很神秘的异常,往往是由于很简单的错误造成的。
仔细对着教程看。问一问同学。如果都搞不定,就直接把这个结果交上去吧。
也很有可能是某个算法错误。比如python脚本里的算法错了。
如果51%是精确度,感觉并不高啊。从你这个数据来看,应该准确率在90%以上才算准。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询