Неверный аргумент: Вы должны передать значение для тензора-заполнителя 'vgg16_input_4' с помощью dtype float и shape [?, 32,32,3] - PullRequest
0 голосов
/ 11 ноября 2019

Я получил следующую ошибку

InvalidArgumentError: 2 корневых ошибки найдены. (0) Недопустимый аргумент: необходимо указать значение для тензора-заполнителя 'vgg16_input_4' с плавающей точкой dtype и формой [?, 32,32,3] [[{{node vgg16_input_4}}]]
[[dens_6 / Softmax /_1775]] (1) Недопустимый аргумент: необходимо указать значение для тензора-заполнителя 'vgg16_input_4' с плавающей запятой dtype и shape [?, 32,32,3] [[{{node vgg16_input_4}}]] 0 успешных операций. 0 полученных ошибок игнорируется.

и следующий код

def show_result(n):

    samples = []
    for i in range(n):
        original_img = x_test[i]
        print('original_img->',original_img.shape)

        img_array = np.expand_dims(original_img, 0)
        #img_array = original_img


        print('img_arrray->', img_array.shape)
        #tf.image.convert_image_dtype(img_array, dtype=tf.float16, saturate=False)

        get_output = K.function([model.layers[0].input], [model.layers[-3].output, model.layers[-1].output])
        [conv_outputs, predictions] = get_output([img_array])

        conv_outputs = conv_outputs[0, :, :, :]
        class_weights = model.layers[-1].get_weights()[0]

        cam = np.zeros(dtype = np.float32, shape = conv_outputs.shape[0:2])

форма изображения

original_img-> (32, 32, 3) img_arrray-> (1, 32, 32, 3)

model = models.Sequential()

base_model = VGG16(include_top = False, input_shape=(32, 32, 3))
base_model.layers.pop()
model.add(base_model)
model.add(layers.ZeroPadding2D(padding=(1,1)))
model.add(layers.Conv2D(filters=1024, kernel_size=(3,3),activation='relu'))
model.add(layers.GlobalAveragePooling2D())
model.add(layers.Dense(10,activation='softmax'))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...