python - 凯拉斯错误 : "BatchNormalization Shape must be rank 1 but is rank 4 for batch_normalization"

标签 python tensorflow keras version batch-normalization

我有一个 Keras 函数模型(具有卷积层的神经网络),它可以很好地与 tensorflow 配合使用。我可以运行它,我可以适应它。

但是,使用tensorflow gpu时无法建立模型。

这是构建模型时抛出错误的代码行。

x = BatchNormalization(axis=1)(x)

错误信息是“BatchNormalization Shape must be rank 1 but is rank 4 for batch_normalization”。

在我看来,这是 Keras 中的一个错误。如果是这样,如果有修复程序,我如何将这个特定的修复程序安装到 Windows/Anaconda 环境中?

Keras 版本为 2.2.0 和 tensorflow gpu 1.8.0

有什么想法吗?

在此先感谢大家。

最佳答案

在我看来,您的机器中存在 tensorflow-gpu - keras 版本不兼容问题。

试试keras 2.1.6

pip uninstall keras
pip install -I keras==2.1.6

关于python - 凯拉斯错误 : "BatchNormalization Shape must be rank 1 but is rank 4 for batch_normalization",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51017373/

相关文章:

python - tensorflow.python.framework.errors_impl.NotFoundError : Failed to create a directory: training/export\Servo\temp-b'1576742954'

python - 在 Keras 维度不匹配的情况下堆叠两个 LSTM 层

tensorflow - 从预训练的 NASnet 网络迁移学习。如何知道要卡住的层数?

python - 单个 Excel 中 Pandas Dataframe 的 Excel 样式和图表

python - 获取自定义搜索的 cx ID,Google API - Python

python - 将每个列表元素添加到 numpy 矩阵中每行的开头

python - 如何在 scikit-learn 中有效地编码数字目标变量?

python - 如何根据图像中的蛇纹石对坐标进行排序?

python - 不支持将字符串转换为 int64

python - 使用 custom_metrics 和自定义损失加载 keras 模型