#python #image #keras
#python #изображение #keras
Вопрос:
Я пытаюсь использовать изображения MNIST со многими классификаторами, но по какой-то причине теперь он выдает эту ошибку. (раньше было правильно, но я изменил источники InceptionV3). Это предоставленная ошибка:
InvalidArgumentError Traceback (most recent call last)
~AppDataRoamingPythonPython36site-packagestensorflowpythonframeworkops.py in _create_c_op(graph, node_def, inputs, control_inputs)
1627 try:
-> 1628 c_op = c_api.TF_FinishOperation(op_desc)
1629 except errors.InvalidArgumentError as e:
InvalidArgumentError: Negative dimension size caused by subtracting 3 from 1 for 'InceptionV3/InceptionV3/Mixed_6a/Branch_0/Conv2d_1a_1x1/Conv2D' (op: 'Conv2D') with input shapes: [?,1,1,288], [3,3,288,384].
Во время обработки вышеупомянутого исключения возникло другое исключение:
ValueError Traceback (most recent call last)
<ipython-input-6-db92b294fe8d> in <module>
----> 1 fileImg1.play("Saliency")
~OneDriveDocumentiGitHubcexplainersrcXlib.py in play(self, ex)
193 if (ex not in self.dictImgModel):
194 explainer = self.dictImgExplainer[ex]
--> 195 img = prepareImage(self.name,self.PATH,self.SHAPE_1,self.SHAPE_2,self.dataset,self.X_vec,self.y_vec,explainer,label)
196 self.dictImgModel[ex] = img
197
~OneDriveDocumentiGitHubcexplainersrcalgorithmsKDD.py in prepareImage(name, PATH, SHAPE_1, SHAPE_2, dataset, X_vec, y_vec, explainer, label)
438 with slim.arg_scope(inception.inception_v3_arg_scope()):
439 _, end_points = inception.inception_v3(processed_images, is_training=False,
--> 440 num_classes=10)
441 # Restore the checkpoint
442 sess = tf.Session(graph=graph)
~AppDataRoamingPythonPython36site-packagestensorflowcontribslimpythonslimnetsinception_v3.py in inception_v3(inputs, num_classes, is_training, dropout_keep_prob, min_depth, depth_multiplier, prediction_fn, spatial_squeeze, reuse, scope)
578 scope=scope,
579 min_depth=min_depth,
--> 580 depth_multiplier=depth_multiplier)
581
582 # Auxiliary Head logits
Какой совет?
Комментарии:
1. Определенно что-то не так с формами:
input shapes: [?,1,1,288], [3,3,288,384]
. Исправьте форму ввода, и все должно быть в порядке. В противном случае, если вы используете обученную модель, вам может потребоваться переопределитьInput
слой . Должна быть одна из этих 2 проблем.2. Вероятно, вам также нужно перетасовать размеры, поскольку размеры канала расположены по-разному в 2 формах. Кроме того, похоже, вам нужно 3 канала. Скопируйте свои каналы.
Ответ №1:
MNIST представляет собой набор изображений с 1 каналом. Все предварительно обученные модели используют 3-канальные (rgb) изображения. Вы можете обойти этот конфликт, повторив 3 раза ваши одноканальные изображения.