在R中使用Keras搭建RNN时遭遇ValueError错误求助
问题解决:Keras R版添加层时的ValueError错误
问题原因
你安装的是rstudio/keras的开发版(对应Keras 3.x),该版本API与旧版(Keras 2.x)存在兼容性差异——旧版中model %>% layer_xxx()的管道写法已不再适用,层函数不再接受模型作为位置参数,因此触发报错。
解决方案
方案1:使用add_layer()配合管道
将原有代码修改为:
# 输入层 model %>% add_layer(layer_dense(input_shape = dim(X_train)[2:3], units = max_len))
方案2:初始化模型时直接堆叠层
如果是刚创建Sequential模型,可直接在初始化时串联层:
model <- keras_model_sequential() %>% layer_dense(input_shape = dim(X_train)[2:3], units = max_len)
方案3:回退到稳定版Keras(匹配Kaggle教程)
若希望和Kaggle教程的代码完全兼容,可卸载开发版并安装稳定版:
# 卸载开发版keras remove.packages("keras") # 安装CRAN稳定版 install.packages("keras") # 安装对应Python依赖 keras::install_keras()
内容的提问来源于stack exchange,提问作者Pericles Carvalho
相关产品推荐
相关产品推荐

