gpt4 book ai didi

python - Tensorflow机器之间损失的主要差异

转载 作者:行者123 更新时间:2023-11-30 08:49:20 25 4
gpt4 key购买 nike

我使用 Tensorflow 作为后端在 Keras 中编写了一个变分自动编码器。作为优化器,我使用 Adam,学习率为 1e-4,批处理大小为 16。当我在 Macbook 的 CPU(Intel Core i7)上训练网络时,一个 epoch(约 5000 个小批量)后的损失值小了 2 倍与在运行 Ubuntu 的另一台机器上的第一个纪元之后相比。对于另一台机器,我在 CPU 和 GPU(Intel Xeon E5-1630 和 Nvidia GeForce GTX 1080)上得到相同的结果。 Python 和我使用的库具有相同的版本号。两台机器都使用 32 位浮点。如果我使用不同的优化器(例如 rmsprop),机器之间的显着差异仍然存在。我设置 np.random.seed 来消除随机性。

我的网络输出logits(我在输出层有线性激活),损失函数是tf.nn.sigmoid_cross_entropy_with_logits。最重要的是,一层有一个正则化器(其激活之间的 KL 散度,即高斯分布的参数和零均值高斯)。

造成损失值重大差异的原因是什么?

最佳答案

我使用的数据集是一个 .mat 文件,使用 scipysavemat 创建并使用 loadmat< 加载。它是在我的 Macbook 上创建的,并通过 scp 分发到其他计算机。事实证明,问题出在这个 .mat 文件上(但我不知道到底是什么)。我已经放弃了 .mat 文件,现在一切都很好。

关于python - Tensorflow机器之间损失的主要差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44500526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com