通过 Keras 使用张量流 - ValueError:只有输入张量可以作为位置参数传递

问题描述 投票:0回答:1

我正在尝试让

keras_model_sequential
在 R 中工作:

library(tidyverse)
library(keras)

model <- keras_model_sequential(input_shape = c(8)) 
model %>% 
  layer_dense(units = 32) %>% 
  layer_activation('softmax') 

定义模型进展顺利。但是,运行最后一行会出现以下错误。

Error in py_call_impl(callable, call_args$unnamed, call_args$named) : 
  ValueError: Only input tensors may be passed as positional arguments. The following argument value should be passed as a keyword argument: <Sequential name=sequential_5, built=False> (of type <class 'keras.src.models.sequential.Sequential'>)
Run `reticulate::py_last_error()` for details.

遵循我得到的最后一行的建议

── R Traceback ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
    ▆
 1. ├─model %>% layer_dense(units = 32) %>% ...
 2. ├─keras::layer_activation(., "softmax")
 3. │ └─keras::create_layer(...)
 4. └─keras::layer_dense(., units = 32)
 5.   └─keras::create_layer(...)
 6.     ├─keras:::compose_layer(object, layer)
 7.     └─keras:::compose_layer.default(object, layer)
 8.       └─reticulate (local) layer(object, ...)
 9.         └─reticulate:::py_call_impl(callable, call_args$unnamed, call_args$named)
See `reticulate::py_last_error()$r_trace$full_call` for more details.

我不知道该怎么办。我试图在网上查看该错误的含义,但我没有遇到看起来相似的问题,主要是一堆 Python 代码。

为了解决这个问题,我已将 RStudio 更新到 2024.09.0,Keras 更新到 2.15.0,R 更新到 4.4.1 但是,我仍然收到完全相同的错误。

如何解决这个错误并成功运行

keras_model_sequential

r tensorflow keras lstm
1个回答
0
投票

该错误似乎是当前版本的

keras
包的错误。请删除它并按照建议尝试
keras3
,而不是这里

© www.soinside.com 2019 - 2024. All rights reserved.