在我的计算机上查找TensorFlow版本的命令是什么?我不久前在我的电脑上安装了TensorFlow,并希望确保我有最新版本.
我无法使用Keras微调Inception模型.
我已设法使用教程和文档生成完全连接的顶层模型,使用Inception的瓶颈功能将我的数据集分类为正确的类别,准确率超过99%.
import numpy as np
from keras.preprocessing.image import ImageDataGenerator
from keras.models import Sequential
from keras.layers import Dropout, Flatten, Dense
from keras import applications
# dimensions of our images.
img_width, img_height = 150, 150
#paths for saving weights and finding datasets
top_model_weights_path = 'Inception_fc_model_v0.h5'
train_data_dir = '../data/train2'
validation_data_dir = '../data/train2'
#training related parameters?
inclusive_images = 1424
nb_train_samples = 1424
nb_validation_samples = 1424
epochs = 50
batch_size = 16
def save_bottlebeck_features():
datagen = ImageDataGenerator(rescale=1. / 255)
# build bottleneck features
model …Run Code Online (Sandbox Code Playgroud) 我在我的模型中使用 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) 我的计算机安装了以下软件:Anaconda (3)、TensorFlow (GPU) 和 Keras。Anaconda 虚拟环境有两种,一种是 TensorFlow for Python 2.7,一种是 3.5,都是 GPU 版本,按照 TF 指令安装。(我之前在单独的环境中安装了 CPU 版本的 TensorFlow,但我已将其删除。)
当我运行以下命令时:
source activate tensorflow-gpu-3.5
python code.py
Run Code Online (Sandbox Code Playgroud)
并检查nvidia-smi它仅显示 Python 的 GPU 内存使用量为 3MiB,因此看起来 GPU 并未用于计算。(code.py是一个用 Keras 实现的简单深度 Q 学习算法)
有什么想法可能会出问题吗?