GPU打印机器学习层无



我正在运行以下代码,对GPU 使用tensorflow

import numpy as np
import keras
from keras.models import Model, Sequential
from keras import layers
from keras.layers import BatchNormalization, Dropout, Activation, Flatten, Dense, Reshape, Conv2DTranspose, Conv2D
input_img = keras.Input(shape=(144, 48, 1))
x = layers.Conv2D(64, 3, activation="relu", strides=2,padding='same')(input_img)
print(x.shape)
x = layers.Conv2D(256, 3, activation="relu", strides=2, padding='same')(x)
print(x.shape)
x = layers.Conv2D(128, 2, activation="relu", strides=2,padding='same')(x)
print(x.shape)
encoded = layers.Conv2D(64, 2, activation="relu", strides=2,padding='same')(x)
print(encoded.shape)
encoder = Model(input_img, encoded)

encoded_input= keras.Input(shape=(9,3,64))
x = Conv2DTranspose(64, 3, activation="relu", strides=2,padding='same')(encoded_input)
print('transpose', x.shape)
x = Conv2DTranspose(32, 3, activation="relu", strides=2,padding='same')(x)
print('transpose',x.shape)
x = Conv2DTranspose(16, 3, activation="relu", strides=2,padding='same')(x)
print('transpose',x.shape)
decoded = Conv2DTranspose(1, 3, activation="relu", strides=2,padding='same')(x)
print('transpose',decoded.shape)
decoder = Model(encoded_input, decoded)

但当我打印每一层的形状时,我得到了以下输出。conv2d转置层显示"无"。

(None, 72, 24, 64)
(None, 36, 12, 256)
(None, 18, 6, 128)
(None, 9, 3, 64)
(transpose, None, None, None, 64)
(transpose, None, None, None, 32)
(transpose, None, None, None, 16)
(transpose, None, None, None, 1)

反过来,我从运行模型中得到了错误的结果。在CPU上,我没有无问题

我已经解决了这个问题。基本上,我改变了

layers.Conv2D

Conv2D

最新更新