我在我的模型中使用 LeakyReLU 激活。我可以训练它。但是当我训练保存模型时,
discriminator_model.save(os.path.join(output_folder_path, 'discriminator_model_{0}.h5'.format(iteration_no)))
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
AttributeError: 'LeakyReLU' object has no attribute '__name__'
Run Code Online (Sandbox Code Playgroud)
我将 keras-gpu 2.2.4 与 tensorflow-gpu 1.12.0 后端一起使用。这是我的模型:
discriminator_model = Sequential()
discriminator_model.add(Conv2D(64, 5, strides=2, input_shape=(28, 28, 1), padding='same', activation=LeakyReLU(alpha=0.2)))
discriminator_model.add(Dropout(0.4))
discriminator_model.add(Conv2D(128, 5, strides=2, padding='same'))
discriminator_model.add(LeakyReLU(alpha=0.2))
discriminator_model.add(Dropout(0.4))
discriminator_model.add(Conv2D(256, 5, strides=2, padding='same'))
discriminator_model.add(LeakyReLU(alpha=0.2))
discriminator_model.add(Dropout(0.4))
discriminator_model.add(Conv2D(512, 5, strides=2, padding='same'))
discriminator_model.add(LeakyReLU(alpha=0.2))
discriminator_model.add(Dropout(0.4))
discriminator_model.add(Flatten())
discriminator_model.add(Dense(1))
discriminator_model.add(Activation('sigmoid'))
discriminator_model.summary()
Run Code Online (Sandbox Code Playgroud)
最初,我正在使用
discriminator_model.add(Conv2D(128, 5, strides=2, padding='same', activation=LeakyReLU(alpha=0.2)))
Run Code Online (Sandbox Code Playgroud)
但是这里和这里都建议添加 LeakyReLU 作为单独的激活层。即使在尝试之后也没有运气。
完整的堆栈跟踪:
Traceback (most recent call last):
File "/opt/PyCharm/pycharm-community-2018.3.3/helpers/pydev/pydevd.py", line 1741, in <module>
main() …Run Code Online (Sandbox Code Playgroud) 我Tensorflow 0.5.0通过git clone从源代码安装了最新的.并希望更新到Tensorflow 0.6.0
git pull
./configure
bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
Run Code Online (Sandbox Code Playgroud)
但目录中的Tensorflow库/usr/lib/python2.7/site-packages仍然具有0.5.0版本
结果中的版本"pip show tensorflow"也是0.5.0