[英]How do I implement CNN using Functional API model and resolve '_keras_shape' error in keras layers
I am implementing a neural network using Functional API Model and the code is as shown below:我正在使用功能 API模型实现一个神经网络,代码如下所示:
inputTensor = Input(shape=(32, 32,1))
stride = 1
c1 = Conv2D(6, kernel_size=[5,5], strides=(stride,stride), padding="valid", input_shape=(32,32,1),
activation = 'tanh')(inputTensor)
s2 = AveragePooling2D(pool_size=(2, 2), strides=(2, 2))(c1)
c3 = Conv2D(16, kernel_size=[5,5], strides=(stride,stride), padding="valid", activation = 'tanh')(s2)
s4 = AveragePooling2D(pool_size=2, strides=2, padding='valid')(c3)
c5 = Conv2D(120, kernel_size=[5,5], strides=(stride,stride), padding="valid", activation = 'tanh')(s4)
flat_image = Flatten()(c5)
f1 = Dense(84, activation='tanh')(flat_image)
output_layer = Dense(units = 10, activation = 'softmax')(f1)
model = Model(inputTensor,output_layer)
model.compile(loss=tf.losses.softmax_cross_entropy, optimizer='adam', metrics=['accuracy'])
model.fit(train_data, train_labels, epochs= 10 , batch_size=200,
validation_split=0.2)
score = model.evaluate(padding_test_data,test_labels, verbose=0)
print ('Test loss:', score[0])
print('Test accuracy:', score[1])
And I get error as shown below: AttributeError: 'Tensor' object has no attribute '_keras_shape'
我得到如下所示的错误: AttributeError: 'Tensor' object has no attribute '_keras_shape'
1) Update your tensorflow to latest version. 1) 将您的 tensorflow 更新到最新版本。
2) Change your import packages
the o following will probably fix the issue: 2) 更改您的import packages
,以下 o 可能会解决问题:
from tensorflow.python.keras import Input, Model
from tensorflow.python.keras.layers import Conv2D, AveragePooling2D, Dense, Flatten
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.