迁移到TensorFlow 2.1时图形断开连接错误

时间:2020-10-05 00:11:33

标签: python tensorflow keras graph deep-residual-networks

以下代码摘自Keras中的DenseNet实现。该代码在以TensorFlow 1.12.0为后端的Keras 2.2.4上可以正常工作。当我在TensorFlow 2.1上运行相同的代码时,出现图断开连接错误:

ValueError:图已断开连接:无法在层“ concatenate_27”处获得张量Tensor(“ conv2d_53 / Identity:0”,shape =(None,28、28、8),dtype = float32)的值。可以正确访问以下先前的图层:['input_5','conv2d_51','batch_normalization_48','activation_48','conv2d_52']

def build_dense_block(x,dense_block_size,growth_rate):
    x_list = [x]
    for i in range(dense_block_size):
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
        x = Conv2D(growth_rate, (3, 3), padding='same', kernel_initializer='he_normal')(x)
        x_list.append(x)
        x = Concatenate()(x_list)
    return x

def build_densenet_model(input_dims, output_dim, growth_rate):
    inputs = Input(shape=(input_dims))

    x = Conv2D(2 * growth_rate, (3,3), padding="same")(inputs)
    x = build_dense_block(x,4,growth_rate)

    model = Model(inputs=inputs, outputs=x)
    return model

model = build_densenet_model((28,28,1), 10, 8)
print(model.summary())



Layer (type)                    Output Shape         Param #     Connected to                     
==================================================================================================
input_3 (InputLayer)            (None, 28, 28, 1)    0                                            
__________________________________________________________________________________________________
conv2d_10 (Conv2D)              (None, 28, 28, 16)   160         input_3[0][0]                    
__________________________________________________________________________________________________
batch_normalization_8 (BatchNor (None, 28, 28, 16)   64          conv2d_10[0][0]                  
__________________________________________________________________________________________________
activation_8 (Activation)       (None, 28, 28, 16)   0           batch_normalization_8[0][0]      
__________________________________________________________________________________________________
conv2d_11 (Conv2D)              (None, 28, 28, 8)    1160        activation_8[0][0]               
__________________________________________________________________________________________________
concatenate_8 (Concatenate)     (None, 28, 28, 24)   0           conv2d_10[0][0]                  
                                                                 conv2d_11[0][0]                  
__________________________________________________________________________________________________
batch_normalization_9 (BatchNor (None, 28, 28, 24)   96          concatenate_8[0][0]              
__________________________________________________________________________________________________
activation_9 (Activation)       (None, 28, 28, 24)   0           batch_normalization_9[0][0]      
__________________________________________________________________________________________________
conv2d_12 (Conv2D)              (None, 28, 28, 8)    1736        activation_9[0][0]               
__________________________________________________________________________________________________
concatenate_9 (Concatenate)     (None, 28, 28, 32)   0           conv2d_10[0][0]                  
                                                                 conv2d_11[0][0]                  
                                                                 conv2d_12[0][0]                  
__________________________________________________________________________________________________
batch_normalization_10 (BatchNo (None, 28, 28, 32)   128         concatenate_9[0][0]              
__________________________________________________________________________________________________
activation_10 (Activation)      (None, 28, 28, 32)   0           batch_normalization_10[0][0]     
__________________________________________________________________________________________________
conv2d_13 (Conv2D)              (None, 28, 28, 8)    2312        activation_10[0][0]              
__________________________________________________________________________________________________
concatenate_10 (Concatenate)    (None, 28, 28, 40)   0           conv2d_10[0][0]                  
                                                                 conv2d_11[0][0]                  
                                                                 conv2d_12[0][0]                  
                                                                 conv2d_13[0][0]                  
__________________________________________________________________________________________________
batch_normalization_11 (BatchNo (None, 28, 28, 40)   160         concatenate_10[0][0]             
__________________________________________________________________________________________________
activation_11 (Activation)      (None, 28, 28, 40)   0           batch_normalization_11[0][0]     
__________________________________________________________________________________________________
conv2d_14 (Conv2D)              (None, 28, 28, 8)    2888        activation_11[0][0]              
__________________________________________________________________________________________________
concatenate_11 (Concatenate)    (None, 28, 28, 48)   0           conv2d_10[0][0]                  
                                                                 conv2d_11[0][0]                  
                                                                 conv2d_12[0][0]                  
                                                                 conv2d_13[0][0]                  
                                                                 conv2d_14[0][0]                  
==================================================================================================
Total params: 8,704
Trainable params: 8,480
Non-trainable params: 224
__________________________________________________________________________________________________

0 个答案:

没有答案