【发布时间】:2017-12-27 01:54:53
【问题描述】:
每次我在 jupyter notebook 中使用 Keras 运行 LSTM 网络时,我都会得到不同的结果,并且我在 google 上搜索了很多,我尝试了一些不同的解决方案,但它们都不起作用,以下是我尝试的一些解决方案:
-
设置 numpy 随机种子
random_seed=2017 from numpy.random import seed seed(random_seed) -
设置张量流随机种子
from tensorflow import set_random_seed set_random_seed(random_seed) -
设置内置随机种子
import random random.seed(random_seed) -
设置 PYTHONHASHSEED
import os os.environ['PYTHONHASHSEED'] = '0' -
在 jupyter notebook kernel.json 中添加 PYTHONHASHSEED
{ "language": "python", "display_name": "Python 3", "env": {"PYTHONHASHSEED": "0"}, "argv": [ "python", "-m", "ipykernel_launcher", "-f", "{connection_file}" ] }
我的环境版本是:
Keras: 2.0.6
Tensorflow: 1.2.1
CPU or GPU: CPU
这是我的代码:
model = Sequential()
model.add(LSTM(16, input_shape=(time_steps,nb_features), return_sequences=True))
model.add(LSTM(16, input_shape=(time_steps,nb_features), return_sequences=False))
model.add(Dense(8,activation='relu'))
model.add(Dense(1,activation='linear'))
model.compile(loss='mse',optimizer='adam')
【问题讨论】:
-
结果可能因不同的原因而有所不同(例如随机启动变量)。所以除非你提供一些模型代码,否则我们只能提供这么多帮助
-
请在此处查看我的回复 (stackoverflow.com/a/52897216/9024698),了解使用 CPU 时的情况。
-
您尚未接受任何答案。以下哪项对您有用或您找到了更好的解决方案?
标签: tensorflow deep-learning keras lstm