【发布时间】:2019-04-11 04:47:06
【问题描述】:
我可以使用keras.datasets.fashion_mnist 数据集训练具有Dense 层的 Keras 网络。但是,当我尝试训练卷积网络时,出现错误。
以下是部分代码:
from tensorflow.keras.layers import *
model = keras.Sequential([
Convolution2D(16, (3,3), activation='relu', input_shape=(28,28,1)),
MaxPooling2D(pool_size=(2,2)),
Flatten(),
Dense(16, activation='relu'),
Dense(10, activation='softmax')
])
model.compile(optimizer=tf.train.AdamOptimizer(),
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(train_images, train_labels, epochs=5)
当我尝试适应时它的错误。
UnknownError:获取卷积算法失败。这大概是 因为cuDNN初始化失败,所以试试看是否有警告 上面打印了日志消息。 [[{{节点 conv2d/Conv2D}} = Conv2D[T=DT_FLOAT, data_format="NCHW", dilations=[1, 1, 1, 1], padding="VALID", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true, _device="/job:localhost/replica:0/task:0/device:GPU:0"](training/TFOptimizer/gradients/conv2d/Conv2D_grad/Conv2DBackpropFilter-0-TransposeNHWCToNCHW-LayoutOptimizer, conv2d/Conv2D/ReadVariableOp)]] [[{{节点 loss/dense_1_loss/broadcast_weights/assert_broadcastable/AssertGuard/Assert/Switch_2/_69}} = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_112_l...t/Switch_2", tensor_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"]]
我在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin 中有cudnn64_7.dll,而PATH 已经包含该文件夹。
【问题讨论】:
标签: tensorflow keras