RuntimeError: as_numpy_iterator () не поддерживается при трассировке функций - PullRequest
3 голосов
/ 03 февраля 2020

пока я использовал функцию as_numpy_iterator() получил ошибку

---------------------------- ----------------------------------------------- RuntimeError Traceback ( последний вызов последним) в () ----> 1 image = get_image_data (image_paths)

1 кадров /tensorflow-2.1.0/python3.6/tensorflow_core/python/data/ops/dataset_ops .py в as_numpy_iterator (self) 488 "" "489, если не context.executing_eagerly (): -> 490 повышение RuntimeError (" as_numpy_iterator () не поддерживается при отслеживании "491" функций ") 492 для component_spe c в гнезде .flatten (self.element_spe c):

RuntimeError: as_numpy_iterator () не поддерживается при трассировке функций

мой код

    # creating a function called get_dataset, which creates a dataset of image data from file paths.
def get_dataset(image_paths):
  filename_tensor = tf.constant(image_paths)
  dataset = tf.data.Dataset.from_tensor_slices(filename_tensor)
  def _map_fn(filename):
    return decode_image(filename=filename)
  return dataset.map(_map_fn)
#
def get_image_data(image_paths):
  dataset = get_dataset(image_paths)
  return list(dataset.as_numpy_iterator())
image = get_image_data(image_paths)

it выдает ошибку при использовании dataset.as_numpy_iterator(). Я использовал пути к изображениям двух массивов имени файла

1 Ответ

0 голосов
/ 11 апреля 2020

Сообщение об ошибке здесь немного сбивает с толку, поскольку в нем говорится о функциях трассировки, но я столкнулся с этим и понял, что это функция набора данных, которая поддерживается только тогда, когда включено активное выполнение. Он включен по умолчанию в TensorFlow 2.x, но вы также можете включить его вручную в более поздних версиях 1.x. Если вы включите его, это сообщение об ошибке должно исчезнуть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...