TensorFlow 标签号与轴上的形状不匹配

Posted

技术标签:

【中文标题】TensorFlow 标签号与轴上的形状不匹配【英文标题】:TensorFlow label number is a mismatch with the shape on the axis 【发布时间】:2020-05-18 02:00:03 【问题描述】:

尝试运行代码实验室: https://codelabs.developers.google.com/codelabs/recognize-flowers-with-tensorflow-on-android/#6

我已经开发了自己的文件和列表文件,尽管当我开始通过 Android 运行它时似乎遇到了这个错误:

java.lang.IllegalArgumentException: Label number 6 mismatch the shape on axis 1

然后它将我链接到这部分代码:

Map<String, Float> labeledProbability =
        new TensorLabel(labels, probabilityProcessor.process(outputProbabilityBuffer))
            .getMapWithFloatValue();
    Trace.endSection();

这是在分类结果部分

public List<Recognition> recognizeImage(final Bitmap bitmap, int sensorOrientation) 
    // Logs this method so that it can be analyzed with systrace.
    Trace.beginSection("recognizeImage");

    Trace.beginSection("loadImage");
    long startTimeForLoadImage = SystemClock.uptimeMillis();
    inputImageBuffer = loadImage(bitmap, sensorOrientation);
    long endTimeForLoadImage = SystemClock.uptimeMillis();
    Trace.endSection();
    LOGGER.v("Timecost to load the image: " + (endTimeForLoadImage - startTimeForLoadImage));

    // Runs the inference call.
    Trace.beginSection("runInference");
    long startTimeForReference = SystemClock.uptimeMillis();
    tflite.run(inputImageBuffer.getBuffer(), outputProbabilityBuffer.getBuffer().rewind());
    long endTimeForReference = SystemClock.uptimeMillis();
    Trace.endSection();
    LOGGER.v("Timecost to run model inference: " + (endTimeForReference - startTimeForReference));

    // Gets the map of label and probability.
    Map<String, Float> labeledProbability =
        new TensorLabel(labels, probabilityProcessor.process(outputProbabilityBuffer))
            .getMapWithFloatValue();
    Trace.endSection();

    // Gets top-k results.
    return getTopKProbability(labeledProbability);
   

不知道为什么这是有效的任何人都可以帮忙吗??

【问题讨论】:

【参考方案1】:

抱歉迟到了。 您的 labels.txt 文件中可能有一些空行,或者您的 labels.txt 文件中可能有一些额外的标签。一定要检查一下。

【讨论】:

以上是关于TensorFlow 标签号与轴上的形状不匹配的主要内容,如果未能解决你的问题,请参考以下文章

3D 绘图刻度标签与轴值不匹配(R 格)

TensorFlow ValueError:logits 和标签必须具有相同的形状 ((25, 1) vs (1, 1))

Tensorflow 密集标签形状

TensorFlow CNN 形状不匹配

Python TensorFlow 形状不匹配(WaveNet)

如何使用 TensorFlow 连接两个具有不同形状的张量?