我收到此错误,但不知道为什么会出现。有人帮我。
import warnings
warnings.filterwarnings('ignore',category=FutureWarning)
import tensorflow as tf
import keras
from keras.layers.convolutional import Conv2D, AtrousConvolution2D
from keras.layers import Activation, Dense, Input, Conv2DTranspose, Dense, Flatten
from keras.layers import Dropout, Concatenate, BatchNormalization, Reshape
from keras.layers.advanced_activations import LeakyReLU
from keras.models import Model, model_from_json
from keras.optimizers import Adam
from keras.layers.convolutional import UpSampling2D
import keras.backend as K
from keras.activations import relu
def g_build_conv(layer_input, filter_size, kernel_size=4, strides=2, activation='leakyrelu',
dropout_rate=g_dropout, norm='inst', dilation=1):
c = AtrousConvolution2D(filter_size, kernel_size=kernel_size, strides=strides,atrous_rate=
(dilation,dilation), padding='same')(layer_input)
if activation == 'leakyrelu':
c = relu()(c)
if dropout_rate:
c = Dropout(dropout_rate)(c)
if norm == 'inst':
c = InstanceNormalization()(c)
return c
警告(来自警告模块):文件“ C:\ Users \ xyz \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ keras \ legacy \ layers.py”,762行warnings.warn('
AtrousConvolution2D
层'UserWarning:AtrousConvolution2D
层已被弃用。请改用Conv2D
层和dilation_rate
自变量。追溯(最最近一次通话):文件“ D:\ Image Outpaining \ outpaint.py”,第146行,在GEN = build_generator()在build_generator中的第120行,文件“ D:\ Image Outpaining \ outpaint.py”g1 = g_build_conv(g_input,64,5,strides = 1)文件“ D:\ Image Outpaining \ outpaint.py”,第102行,在g_build_conv中c = relu()(c)TypeError:relu()缺少1个必需的位置参数:'x'
keras.activations.relu
是一个函数,而不是一个层,因此您在错误地调用它。要将ReLu添加为图层,请执行以下操作:
from keras.layers import Activation
if activation == 'leakyrelu':
c = Activation("relu")(c)