【问题标题】:[Keras]Some goes wrong when i create my Model[Keras]创建模型时出现了一些问题
【发布时间】:2019-03-24 23:57:25
【问题描述】:

当我使用 kears 创建我的模型时,出现此错误。 Scale3 Scale2 Scale1 操作相同。 代码是:

Scale3 = myconv2d(Scale3,255,1,1,'valid')
model = Model(inputs = X_input, outputs = [Scale3,Scale2,Scale1], name='YOLOV3')

错误是:error_image

myconv2d 函数是这样的

def myconv2d(X,f,size,s,stage,p = 'same'):
    X = Conv2D(f,kernel_size = (size,size),strides = (s,s),padding = 'same',name = 'conv2d_'+ str(stage))(X)
    X = BatchNormalization(axis=3,name ='bn_' + str(stage))(X)
    X = K.relu(X,0.1)
    return X

我该如何解决?

【问题讨论】:

  • 不要将错误包含在图像中。只需将文本复制到您的问题中即可。

标签: python keras


【解决方案1】:

您不能直接在 Keras 张量上应用后端函数,您需要为此使用 Lambda 层:

def myconv2d(X,f,size,s,stage,p = 'same'):
    X = Conv2D(f,kernel_size = (size,size),strides = (s,s),padding = 'same',name = 'conv2d_'+ str(stage))(X)
    X = BatchNormalization(axis=3,name ='bn_' + str(stage))(X)
    X = Lambda(lambda x: K.relu(x,0.1)(X)
    return X

【讨论】:

    【解决方案2】:

    您可以使用layers.advanced_activations.LeakyReLU(0.1)(X)替换代码:K.relu(X,0.1)

    Matias Valdenegro 也是正确的

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-06
      • 1970-01-01
      • 1970-01-01
      • 2019-11-15
      • 2021-04-10
      • 2022-06-28
      • 2021-04-17
      • 1970-01-01
      相关资源
      最近更新 更多