You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Keras SimpleRNN搭建模型时出现NotImplementedError问题求助

问题根因

该报错为TensorFlow与Numpy版本不兼容导致。你使用的低版本TensorFlow的RNN层生成初始零状态时,会调用Numpy的prod方法计算张量形状乘积,此时传入的batch_size为动态计算的符号张量,高版本Numpy不支持直接将TensorFlow符号张量转为Numpy数组,因此触发报错。你之前尝试的1.18.5、1.20.1版本的Numpy均和当前环境的TensorFlow版本不适配。

解决方案
  • 方案1:降级Numpy到适配版本
    执行如下命令安装适配的1.19.5版本Numpy:
    pip install numpy==1.19.5
    安装完成后重启Jupyter内核重新运行代码即可。
  • 方案2:升级TensorFlow与Keras到兼容新版本
    升级到2.8以上的匹配版本即可从框架层面修复该兼容问题,执行命令:
    pip install tensorflow==2.10 keras==2.10
    升级后无需修改代码即可正常运行。
  • 方案3:修正代码导入逻辑
    不要混用独立Keras包和TensorFlow内置的Keras包,统一从TensorFlow下导入依赖,同时补全Dense层的导入,修正后代码如下:
from tensorflow.keras import models
from tensorflow.keras.layers import SimpleRNN, Dense

model = models.Sequential()
model.add(SimpleRNN(units=32, input_shape=(1,4), activation="relu"))
model.add(Dense(1))
model.summary()

内容的提问来源于stack exchange,提问作者Srinivas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 06:45:04