f-score:ValueError:分类指标无法处理多标签指标和连续多输出目标的混合

2024-04-23

我正在尝试计算模型所做的预测的微 F 测量。我使用带有 Keras 和 Tensorflow 的 word2vec 矢量来训练模型。我使用 scikit 库来计算 mirco F 度量。

但该函数会抛出此消息:

ValueError: Classification metrics can't handle a mix of multilabel-indicator and continuous-multioutput targets

另外,我的预测对吗?我训练模型x_train(wordVectors) and y_train(resultVectors)并通过验证x_test and y_test.

现在我做了一个预测x_test并想使用评估预测y_test。到目前为止我做得对吗?

预测数组如下所示:

[[ 1.7533608e-02  5.8055294e+01  2.2185498e-03 ... -1.2394511e-03
   1.0454212e+00 -1.6698670e-03]
 [ 1.7539740e-02  5.8173992e+01  2.1747553e-03 ... -1.2764656e-03
   1.0475068e+00 -1.6941782e-03]
 [ 1.7591618e-02  5.8222389e+01  2.2053251e-03 ... -1.2856000e-03
   1.0484750e+00 -1.6668942e-03] ...

真实值如下所示:

[[0 0 0 ... 0 0 0]
 [0 0 0 ... 0 0 0]
 [0 0 0 ... 0 0 0]...

我已经尝试将两个数组转换为二进制值(使用np.argmax(..., axis=1))。然后就没有错误了,我得到的微 F 值约为 0.59……这太高了,所以我认为我犯了一个错误。 我的问题是是否有另一种方法来转换数据?我可以将预测转换为多标签指标值吗?

model = load_model('model.h5')
prediction = model.predict(x_test)

prediction_binary = np.argmax(prediction, axis=1)
y_test_binary = np.argmax(y_test, axis=1)

print(f1_score(y_test_binary, prediction_binary, average='micro'))

我期望输出


问题在于,您仅在由输出向量的最高值预测的标签上计算度量,而测试向量只有一个值。

Indeed, np.argmax即使向量有多个最小值,也仅返回一个值。 例如np.argmax([0,0,1,0,1,1])将仅返回 2。

由于您的问题包括多标签分类问题,您希望您的输入可能被分为几个类别。为此,您必须将分类器的输出向量转换为与测试向量相同的形状。

您可以按以下方式执行此操作:

prediction_int = np.zeroes_like(prediction)
prediction_int[prediction > 0.5] = 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

f-score:ValueError:分类指标无法处理多标签指标和连续多输出目标的混合 的相关文章

  • 如何以 HDF5 格式提供 caffe 多标签数据?

    我想将 caffe 与矢量标签一起使用 而不是整数 我检查了一些答案 似乎 HDF5 是更好的方法 但后来我陷入了这样的错误 precision layer cpp 34 检查失败 outer num inner num bottom 1
  • 为什么 urllib2 出现 urllib2.HTTPError 而 urllib 没有错误?

    我有以下简单的代码 import urllib2 import sys sys path append BeautifulSoup BeautifulSoup 3 1 0 1 from BeautifulSoup import page h
  • 理解Python中的元类和继承[重复]

    这个问题在这里已经有答案了 我对元类有一些困惑 具有继承性 class AttributeInitType object def init self kwargs for name value in kwargs items setattr
  • 数据操作 startdate enddate python pandas

    我有一个促销描述数据集 其中包含有关正在运行的各种促销活动及其开始日期 结束日期的信息 promo item start date end date Buy1 get 1 A 2015 01 08 2015 01 12 Buy1 get 1
  • 箱线图与箱线图有何不同?

    我想知道当我们在海生图书馆中有箱线图时为什么会有箱线图 我知道一件事是箱线图优化了表示数据的方式 特别是对于大型数据集 但我不知道为什么 除此之外 我没有任何充分的理由使用箱线图 箱线图将中位数显示为中心线 第 50 个百分位数 然后将第
  • 使用 Pandas 滚动差异

    您好 我正在尝试使用 Pandas 滚动函数来计算下表中的滚动差异 我正在尝试生成 每月可用项目 列中的值 但没有得到任何结果 请帮忙 Item Adds Subtracts Month Monthly Available items A
  • 通过 Python 在 PostgreSQL 中的 unicode 字符串中是否允许空字节?

    unicode 字符串中是否允许空字节 我不问 utf8 我的意思是 unicode 字符串的高级对象表示 背景 我们通过 Python 在 PostgreSQL 中存储包含空字节的 unicode 字符串 如果我们再次读取字符串 字符串会
  • python中的语音识别持续时间设置问题

    我有一个 Wav 格式的音频文件 我想转录 我的代码是 import speech recognition as sr harvard sr AudioFile speech file wav with harvard as source
  • 将图像转换为二进制流

    我的应用程序有两个方面 一方面我使用 C 来使用 Pleora 的 EBUS SDK 从相机读取帧 当第一次接收到该流时 在将缓冲区转换为图像之前 我能够一次读取 16 位流 以便对每个像素执行一些计算 即每个像素都存在一个 16 位数据块
  • 可重用的 Tensorflow 卷积网络

    我想重用来自Tensorflow 专业人士的 MNIST CNN 示例 http www tensorflow org tutorials mnist pros index md 我的图像尺寸为 388px X 191px 只有 2 个输出
  • python中remove方法的安全使用

    我从列表继承了一个 UserList 类并实现了以下方法来删除标记为已删除的条目 def purge deleted self for element in list iter self if ele mark deleted lt 1 s
  • Emacs:调试Python的方法

    我把这个贴在程序员 stackexchange com https softwareengineering stackexchange com questions 29844 emacs methods for debugging pyth
  • captureWarnings 设置为 True 不会捕获警告

    我想记录所有警告 我以为这样的设定captureWarnings to True应该可以解决问题 但事实并非如此 代码 import logging import warnings from logging handlers import
  • 如何从列表中删除“\xe2”

    我是 python 新手 正在使用它在我的项目中使用 nltk 对从网页获得的原始数据进行单词标记后 我得到了一个包含 xe2 xe3 x98 等的列表 但是我不需要这些并想删除它们 我只是尝试过 if x in a and if a st
  • pip:证书失败,但curl 有效

    我们在客户端安装了根证书 https 连接适用于curl 但如果我们尝试使用pip 它失败 Could not fetch URL https installserver 40443 pypi simple pep8 There was a
  • 带回溯的 Dijkstra 算法?

    In a 相关主题 https stackoverflow com questions 28333756 finding most efficient path between two nodes in an interval graph
  • 在Python中计算矩阵乘以其转置(AA^T)的最快方法

    在Python中将矩阵与其转置 AA T 相乘的最快方法是什么 我认为 NumPy SciPy 没有考虑使用例如时涉及的对称性 np dot or np matmul 得到的矩阵总是对称的 所以我可以想象有一个更快的解决方案 None
  • 使用 boto3 将 csv 文件保存到 s3

    我正在尝试写入 CSV 文件并将其保存到 s3 中的特定文件夹 存在 这是我的代码 from io import BytesIO import pandas as pd import boto3 s3 boto3 resource s3 d
  • 使用 PuLP 进行线性优化,变量附加条件

    我必须用 Pull 解决 Python 中的整数线性优化问题 我解决了基本问题 现在我必须添加额外的约束 有人可以帮助我用逻辑指示器添加条件吗 逻辑限制是 如果 A gt 20 则 B gt 5 这是我的代码 from pulp impor
  • 继承自 NumPy 数组的类如何更改其自身的值?

    我有一个继承自 NumPy n 维数组的简单类 我想要该类的两个方法可以更改该类实例的数组值 其中一种方法应将类实例的数组设置为类实例的列表数据属性的值 另一种方法应将一些列表值附加到类实例的数组中 我不确定如何实现这一点 但我的尝试如下

随机推荐