Как прогнозировать из сохраненной модели без заполнителя в качестве входных данных в Tensorflow? - PullRequest
0 голосов
/ 12 мая 2019

Я обучил свой VGG13, используя tf.Dataset и tf.Data.Iterator, вместо заполнителей, в качестве входных данных, как я могу сделать собственный прогноз при загрузке модели?

Обычно, если моя модель обучается с использованием заполнителя, я мог бы использовать graph.get_operation_by_name(), чтобы получить заполнитель и передать в него входные данные прогноза. Однако, когда нет местозаполнителя, я понятия не имею, как передать данные в модель.

Так я определяю свой набор данных. Файл .csv содержит имена файлов и метки данных. И все изображения находятся в папке.

def read_image(*row):
    image = tf.read_file('data/' + feature.TRAIN_CURATED_IMAGE_DIR + '/' + row[0])
    image = tf.reshape(tf.image.decode_jpeg(image), [self.img_height, self.img_width, self.input_x_dim])
    image = tf.cast(image, tf.float32)
    label = tf.cast(row[1:], tf.float32)
    return image, label

    path = 'data/' + feature.TRAIN_CURATED_IMAGE_LABEL_PATH
    print('Using image input.')
    print('Loading data from {}'.format(path))
    dataset = tf.data.experimental.CsvDataset(path,
                                              record_defaults=[tf.string]+[tf.int32 for _ in range(self.class_num)],
                                              header=True)
    dataset = dataset.map(read_image).shuffle(int(total_size*0.5))

# ... 
self.next_element = iterator.get_next()

И вот как я устанавливаю свой ввод.

self.input_x = self.next_element[0]
self.input_y = self.next_element[1]
# Following conv layers...

Поскольку self.input_x и self.input_y не являются местозаполнителями, как я могу подать данные в следующие слои извещений и получить прогноз, если я хочу загрузить модель после тренировки?

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