все
Я пытаюсь сериализовать данные в файл tfrecords в тензорном потоке.Я следую приведенной ниже инструкции: https://github.com/tensorlayer/tensorlayer/blob/master/example/tutorial_tfrecord.py
Как показано в этой инструкции, мне нужно построить example
для каждой записи, и каждая example
содержит несколько feature
.
* 1010.* Однако у меня возникают проблемы при инициализации функции.Вот мой тестовый код:
import tensorflow as tf
import numpy as np
feature_str=tf.train.Feature(bytes_list=tf.train.BytesList(value = np.array(["a" , "b"])))
feature_int=tf.train.Feature(bytes_list=tf.train.Int64List(value = np.array([32 , 24])))
feature_flo=tf.train.Feature(bytes_list=tf.train.FloatList(value = np.array([32.1 , 24.1 ])))
Однако, я получил следующую ошибку, которая является интуитивно понятной:
usr / local / lib / python2.7 / dist-packages / h5py / init .py: 36: FutureWarning: Преобразование второго аргумента issubdtype из float
в np.floating
устарело.В дальнейшем это будет рассматриваться как np.float64 == np.dtype(float).type
.из ._conv импортировать register_converters как _register_converters Traceback (последний вызов был последним): файл "test.py", строка 7, в feature_int = tf.train.Feature (bytes_list = tf.train.Int64List (value = np.array ([32, 24]))) TypeError: Параметр для MergeFrom () должен быть экземпляром того же класса: ожидаемый тензор потока. Байтский список получил тензор потока.Инт64Лист.
Далее я пытаюсь использовать tf.train.BytesList
для np.array([32,24])
и получаюошибка ниже:
feature_int = tf.train.Feature (bytes_list = tf.train.BytesList (value = np.array ([32, 24]))) TypeError: 32 имеет тип numpy.int64, но ожидаетсяодин из: байтов
Может кто-нибудь помочь мне в этом вопросе?Я действительно запутался.
Спасибо!