Tensorflow 为什么我在使用keras和tf.keras时得到了不同的训练结果?

Tensorflow 为什么我在使用keras和tf.keras时得到了不同的训练结果?,tensorflow,keras,neural-network,deep-learning,Tensorflow,Keras,Neural Network,Deep Learning,我在研究项目中使用了TensorFlow 1.13和Keras。现在,由于一些未来的警告,我安装了TensorFlow 2.0并尝试使用它 我没有像以前那样使用Keras,而是使用tf.Keras并构建了相同的RNN模型。i、 e 从keras.layers导入稠密(我以前使用过) v、 美国 从tf.keras.layers导入稠密(我现在尝试了) 所有其他代码都是相同的。但是,使用从tf.keras.layers.one导入会得到一些更糟糕的结果。我很确定这不是巧合,我试过多次交叉验证并运行

我在研究项目中使用了TensorFlow 1.13和Keras。现在,由于一些未来的警告,我安装了TensorFlow 2.0并尝试使用它

我没有像以前那样使用Keras,而是使用tf.Keras并构建了相同的RNN模型。i、 e

从keras.layers导入稠密(我以前使用过)

v、 美国

从tf.keras.layers导入稠密(我现在尝试了)

所有其他代码都是相同的。但是,使用从tf.keras.layers.one导入会得到一些更糟糕的结果。我很确定这不是巧合,我试过多次交叉验证并运行模型


有人知道为什么会这样吗?与tf.keras.layers和keras.layers有什么区别吗?如果是这样的话,如果我们得到了一些“错误”的结果,我们该如何小心呢?

tf.keras是tensorflow对KerasAPI的实现。理想情况下,使用tf.keras不会给您带来更糟糕的结果。然而,两种KERA的版本可能不匹配,这可能/可能不会给您带来不同的结果。您可以使用tf.keras.version函数检查版本,并查看该版本是否与您以前使用的keras版本相同。 有关更多详细信息,请参阅:

获得更大的损失值听起来像是巧合,因为
tf.keras
keras
具有相同的结构。即使是
keras
也使用TensorFlow作为后端(如果已安装)或Theano(这里不是这种情况)。