tensorflow - 在 tf2.3 上训练的模型在 tf2.6 上表现不佳
问题描述
我已经在 tensorflow 2.3 上训练了一个模型,现在正在尝试对 tf2.6 进行推理。该模型最初是在 AWS 上训练的,因此 CUDA 和 CUDNN 版本以及环境的其余部分(python 3.7.11 和 3.8.12、numpy 1.18.5 和 numpy 1.19.5)是不同的。
模型完全相同,权重也相同。然而,对相同输入数据的推断会产生两个不同的向量。它们不一样,差别很大。
是什么导致了这个问题,我如何使结果相同?
解决方案
不是解决方案,但找到了解决方法。似乎是 keras 2.6.0 有问题。从 tf2.6 降级到 tf2.5 就可以了,因为结果是一样的。
推荐阅读
- gradle - Gradle 中依赖项的版本范围并锁定 CI 构建的特定版本
- flutter - 使用 Flutter 在扬声器模式下在后台播放音频
- rest - 主服务器和冗余服务器之间的数据同步
- parsing - 解析列中的字符串
- javascript - 从 JavaScript 中的 Object Array 中删除引号以作为参数传递给 RRule.js
- gitlab - 使用 Gitlab API 在项目上创建变量
- c# - 从 asp.net 返回 401 响应,其中 iis 托管启用了 Windows 身份验证
- spring-boot - 来自抽象类的@Transactional 没有发生回滚操作
- flutter - Flutter 通过 Firestore 参考
- liferay-7 - 我们如何在 portletmvc4spring 中添加多个控制器并显示 JSP