Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用带有LSTM层的Tensorboard回调(cuDNN实现)-Tensorflow 2.3时,模型训练将永远挂起_Python_Tensorflow_Tensorflow2.0_Tensorboard - Fatal编程技术网

Python 使用带有LSTM层的Tensorboard回调(cuDNN实现)-Tensorflow 2.3时,模型训练将永远挂起

Python 使用带有LSTM层的Tensorboard回调(cuDNN实现)-Tensorflow 2.3时,模型训练将永远挂起,python,tensorflow,tensorflow2.0,tensorboard,Python,Tensorflow,Tensorflow2.0,Tensorboard,我们决定将代码库从Tensorflow 1.13.1迁移到Tensorflow 2.3 除了训练带有Tensorboard回调的LSTM模型外,其他一切似乎都正常工作。培训过程在第一批之后永远挂起(也许Tensorboard会等待永远不会到来的摘要ops?) 经过一些调查,问题似乎来自依赖cuDNN实现的LSTM层。事实上,当迫使Tensorflow退回到普通的LSTM层实现时,一切都按预期运行(给出与cuDNN实现c.f.不兼容的参数) 有什么建议可以解决这个问题吗?有人知道为什么Tensor

我们决定将代码库从Tensorflow 1.13.1迁移到Tensorflow 2.3

除了训练带有Tensorboard回调的LSTM模型外,其他一切似乎都正常工作。培训过程在第一批之后永远挂起(也许Tensorboard会等待永远不会到来的摘要ops?)

经过一些调查,问题似乎来自依赖cuDNN实现的LSTM层。事实上,当迫使Tensorflow退回到普通的LSTM层实现时,一切都按预期运行(给出与cuDNN实现c.f.不兼容的参数)

有什么建议可以解决这个问题吗?有人知道为什么Tensorboard不能与LSTM层的cuDNN实现一起工作吗

#回调
log_dir='./日志'
回调=[TensorBoard(log_dir=log_dir)]#没有此回调的培训工作
#模型
单词=输入(形状=(最大序列长度)
x=嵌入(输入尺寸,嵌入尺寸,权重=[嵌入矩阵],可训练=假)(单词)
x=双向(LSTM(40,返回序列=真))(x)#设置重复性_辍学=0.1使培训有效(使用普通LSTM实现)
隐藏=连接([
globalMapooling1d()(x),
GlobalAveragePoolg1d()(x),
])
隐藏=添加([隐藏,密集(40,激活='relu')(隐藏)])
out=density(3,activation='softmax',kernel\u initializer='glorot\u uniform')(隐藏)
模型=模型(输入=字,输出=输出)
compile(优化器=Adam(lr=0.01),loss='classifical\u crossentropy')
#合身
fit_history=model.fit(
x_火车,
你的火车,
批次大小=批次大小,
时代,
验证数据=验证数据,
回调=回调
)
更新: 在另一台计算机(Windows 10)上试用,似乎一切正常…
然而,工作中的计算机大多在Windows 7上(问题发生在两台单独的PC上),我们使用的是虚拟环境。

另一个提示:python和我们的库安装在不同的硬盘驱动器上这一事实会导致这个问题吗?(这是出现问题的设置的相似之处之一)

使用tensorflow 1.4.0和python 3.6x…tensorflow.contrib等许多功能已从tensorflow 1.4.0以上的版本中删除,因此尝试使用1.4.0和3.6x python,这可能会起作用,如果您的代码太慢,请转到google Colaboratory,这是完全免费的,你可以使用谷歌的硬件运行你的高端代码。你好@ROG_SHAKHYAR,谢谢你的回复。但是,我们确实希望将tensorflow版本升级到最新版本(至少2.X)。我们正在开发一个代码库,它将被许多工作人员重用,并且需要尽可能地更新。还有其他建议吗?如果您使用的是安装程序,可能会尝试在启用所有功能的情况下重新安装cudnn,并且始终将python和其他与python相关的内容存储在同一个磁盘中,因为更改目录可能会很混乱,特别是对于不同的驱动器,无论如何,如果没有任何效果,然后使用tensorflow的二进制安装,并按照tensorflow网站安装其他依赖项。我也面临同样的问题。这与Windows10上的conda env完全相同,代码运行良好。但当它在Windows7上运行时,tensorboard回调补充道,它将永远挂起。您是否有任何线索/已解决此问题?不幸的是,我们没有找到解决此问题的方法。。。。因此,我们放弃了在Windows7计算机上使用Tensorboard(我们在添加回调时只添加了一个检查)。这似乎是一个非常具体的错误(windows 7/Tensorflow 2.x/LSTM/cudNN),而且似乎不太可能找到一个简单的解决方法…使用Tensorflow 1.4.0和python 3.6x…Tensorflow.contrib等许多功能已从大于1.4.0的Tensorflow版本中删除,因此尝试使用1.4.0和3.6x python,这应该是可行的,如果你的代码太慢,去谷歌Colaboratory,它是完全免费的,你可以用谷歌的硬件运行你的高端代码。你好@ROG_SHAKHYAR,谢谢你的回复。但是,我们确实希望将tensorflow版本升级到最新版本(至少2.X)。我们正在开发一个代码库,它将被许多工作人员重用,并且需要尽可能地更新。还有其他建议吗?如果您使用的是安装程序,可能会尝试在启用所有功能的情况下重新安装cudnn,并且始终将python和其他与python相关的内容存储在同一个磁盘中,因为更改目录可能会很混乱,特别是对于不同的驱动器,无论如何,如果没有任何效果,然后使用tensorflow的二进制安装,并按照tensorflow网站安装其他依赖项。我也面临同样的问题。这与Windows10上的conda env完全相同,代码运行良好。但当它在Windows7上运行时,tensorboard回调补充道,它将永远挂起。您是否有任何线索/已解决此问题?不幸的是,我们没有找到解决此问题的方法。。。。因此,我们放弃了在Windows7计算机上使用Tensorboard(我们在添加回调时只添加了一个检查)。这似乎是一个非常特殊的错误(windows 7/Tensorflow 2.x/LSTM/cudNN),而且似乎很难找到一个简单的解决方法。。。