类型错误:tf__normalize_img() 缺少 1 个必需的位置参数:'label'

Posted

技术标签:

【中文标题】类型错误:tf__normalize_img() 缺少 1 个必需的位置参数:\'label\'【英文标题】:TypeError: tf__normalize_img() missing 1 required positional argument: 'label'类型错误:tf__normalize_img() 缺少 1 个必需的位置参数:'label' 【发布时间】:2022-01-20 20:10:42 【问题描述】:

我是深度学习的新手,我在使用 Tensorflow Oxford Flowers 数据集时在对图像进行规范化时遇到了错误。我按照 Tensorflow 网站上有关如何规范化图像的指南进行操作,但错误仍然存​​在。

    TypeError                                 Traceback (most recent call last)
<ipython-input-31-784175b58712> in <module>
      2     return tf.cast(image, tf.float32) / 255., label
      3 
----> 4 ds_train = ds_train.map(
      5     normalize_img, num_parallel_calls=tf.data.AUTOTUNE)
      6 

紧随其后

TypeError: in user code:


TypeError: tf__normalize_img() missing 1 required positional argument: 'label'

我提到了https://www.tensorflow.org/datasets/keras_example。

我的代码:

 #Normalizing the images

def normalize_img(image, label):
    return tf.cast(image, tf.float32) / 255.0, label

AUTOTUNE = tf.data.experimental.AUTOTUNE
BATCH_SIZE = 128

# Setup for train dataset
ds_train = ds_train.map(normalize_img, num_parallel_calls=AUTOTUNE)
ds_train = ds_train.cache()
ds_train = ds_train.shuffle(ds_info.splits["train"].num_examples)
ds_train = ds_train.batch(BATCH_SIZE)
ds_train = ds_train.prefetch(AUTOTUNE)

# Setup for test Dataset
ds_test = ds_train.map(normalize_img, num_parallel_calls=AUTOTUNE)
ds_test = ds_train.batch(128)
ds_test = ds_train.prefetch(AUTOTUNE)        

【问题讨论】:

【参考方案1】:

定义normalize_func 函数时,定义了两个参数,即imagelabel。因此,当您调用该函数时,您需要指定这些参数是什么。但是当你在这一行调用函数时没有指定这些参数:-

ds_train = ds_train.map(normalize_img, num_parallel_calls=AUTOTUNE)

这是您收到错误 TypeError: tf__normalize_img() missing 1 required positional argument: 'label' 的原因,因为您在调用函数时没有指定 label 参数。

【讨论】:

以上是关于类型错误:tf__normalize_img() 缺少 1 个必需的位置参数:'label'的主要内容,如果未能解决你的问题,请参考以下文章

『TensorFlow』函数查询列表_张量属性调整

TF/keras 子类在 Eager Execution 中完美运行,没有它会引发大量无法追踪的错误?

[我只是简单地输入了tf.Tensor Tensorflow 2.2.0中给出的代码,这是我的代码:请为错误提供解决方案

C错误从流式套接字读取数据包

Tensorflow 错误:The flag 'xxx' is defined twice

Tensorflow 1.x 的 feature_columns 项必须是 _FeatureColumn。给定类型是列表