当前位置: 首页 > 知识库问答 >
问题:

获取SMO分类的准确输出值,然后将它们明确划分为类

赵俊远
2023-03-14

在weka中运行SMO分类器时,如果我将我的训练标签输入为0和5(二进制集),那么在测试数据上运行分类器模型时,输出是0到5之间的一些十进制值,这些值在后一步明显地分类为两个二进制标签,还是没有中间十进制值?

如果它们存在,如何获得这些中间十进制值?

(例如,在上述模型中,smo/svm分类器是否在给定范围内分配1、2、3和4等值,或其他一些十进制/浮点值,然后将这些值适当分组到0和5值类下)。

共有1个答案

阴焱
2023-03-14

分类中没有“标签值”的概念。标签只是一个标识符,而不是可比较的对象,分配给问题中的特定实例。“0”和“5”也可以是“狮子”和“大象”。

特别是对于SVM(WEKA让人们称SVM为SMO,这对科学界来说是一件可怕的事情,只是因为这是内部使用的求解算法……)每个标签都转换为“-1”和“1”。在内部,SVM确实有一个支持度的概念,因为它将线性投影数据点,从而从整个R中获得一个值(-inf,inf),并根据符号分配标签。从非常粗略的意义上讲,这是一种模型的确定性(但没有在任何概率意义上进行校准,因此“0.01”并不意味着“小于0.02”之外的任何东西,但人们甚至不能说0.01的不确定性是0.02点的不确定性的倍,因为这些值没有合理的比例。

在“纯”weka中有classifier.distributionForInstance()返回这些值。在weka资源管理器的分类选项卡中,单击更多选项...并勾选输出预测以获取它们。

 类似资料:
  • 我是weka的新手。我有一个csv数据集,有5000个样本。这里有20个样本;当我将这个数据集上传到weka时,它看起来还可以,但是当我运行knn算法时,它会给出一个不应该给出的结果。这是样本数据。 a, b, c, d 74,85,123,1 73,84,122,1 72,83,121,1 70,81,119,1 70,81,119,1 69,80,118,1 70,81,119,1 70,81

  • 问题内容: 我以前从未做过,也找不到答案。这可能不是用于此目的的正确数据类型,但是我只想分配一个int,然后将另一个没有in循环的int分配到2D数组中,值实际上是从另一个函数返回的,但是为了简单起见,只是使用in i和k,这就是我以为您会这样做的方式,但事实并非如此: TIA-如果我误选了错误的树,请随时向我指出一个更好的数据结构的方向。 问题答案: 最好的方法可能是一次声明并分配所有值。如图所

  • 编者按:此代码示例来自1.0之前的Rust版本,在语法上无效的Rust 1.0代码。此代码的更新版本会产生不同的错误,但答案仍然包含有价值的信息。 我实现了以下方法来从2维数据结构中的文件中返回单词: 这是正确的、惯用的、有效的防锈方法吗?我想知道是否需要经常调用,是否需要调用

  • 问题内容: 我需要带明天,再增加60天,并逐日遍历。只是想知道这样做的适当方法是什么? 这就是我尝试过的。不知何故,它开始了我的循环月份,并在2015年1月将月份显示为0。 问题答案: 您的代码没问题。关于疯狂的API,您需要了解的是0表示一月,10表示十一月。 https://docs.oracle.com/javase/7/docs/api/constant- values.html#java

  • 问题内容: 我是MySQL的新手,我想提出一个基本上可以做到的查询: 除以… 我一直在寻找解决方案,但只找到了对两个表或行之间的实际值求平均值的方法,但没有对行项进行计数的方法。任何帮助将不胜感激! 问题答案: 这应该工作:

  • 问题内容: 我在Python中遇到一个奇怪的问题:除法未正确执行: 结果如下: 谢谢 问题答案: 上面的行为对于Python 2是正确的。Python 3中的行为已得到修复。在Python 2中,您可以使用: 然后用来获得您想要的结果。 由于要除以两个整数,因此得到的结果是整数。 或者,将数字之一更改为。