【问题标题】:Problem Using Keras Sequential Model for "reinforcelearn" Package in R在 R 中将 Keras 顺序模型用于“reinforcelearn”包的问题
【发布时间】:2020-07-13 06:06:39
【问题描述】:

我正在尝试使用keras(版本 2.2.50)神经网络/顺序模型根据此小插图使用reinforcelearn 包(版本 0.2.1)在强化学习设置中创建一个简单的代理: https://cran.r-project.org/web/packages/reinforcelearn/vignettes/agents.html 。这是我使用的代码:

library('reinforcelearn')
library('keras')

model = keras_model_sequential() %>% 
  layer_dense(units = 10, input_shape = 4, activation = "linear") %>%
  compile(optimizer = optimizer_sgd(lr = 0.1), loss = "mae")

agent = makeAgent(policy = "softmax", val.fun = "neural.network", algorithm = "qlearning",
                  val.fun.args = list(model= model))

但是,当我尝试运行 makeAgent 函数时,我收到以下错误消息:

Error in .subset2(public_bind_env, "initialize")(...) : 
  Assertion on 'model' failed: Must inherit from class 'keras.models.Sequential', but has classes 'keras.engine.sequential.Sequential','keras.engine.training.Model','keras.engine.network.Network','keras.engine.base_layer.Layer','tensorflow.python.module.module.Module','tensorflow.python.training.tracking.tracking.AutoTrackable','tensorflow.python.training.tracking.base.Trackable','python.builtin.object'.

问题似乎是模型的错误类,但我能做些什么来解决这个问题?

【问题讨论】:

  • 问题出在R绑定,你应该向绑定作者投诉,或者直接在python中使用Keras。
  • 非常感谢您的回复@MatiasValdenegro!所以你认为我自己无法改变任何东西来使它在 R 中工作,例如'makeAgent' 函数?

标签: r tensorflow keras deep-learning reinforcement-learning


【解决方案1】:

我能够通过从 CRAN (https://cran.r-project.org/src/contrib/reinforcelearn_0.2.1.tar.gz) 下载源代码并注释掉 ValueNetwork R6 类/initialise 函数定义中的相应行来解决问题:

ValueNetwork = R6::R6Class("ValueNetwork",
  public = list(
    model = NULL,

    # keras model # fixme: add support for mxnet
    initialize = function(model) {
      # checkmate::assertClass(model, "keras.models.Sequential")
      self$model = model
    },
...

然后我只是通过以下方式从源重新安装了软件包: install.packages([file path], repos = NULL, type="source")

【讨论】:

    猜你喜欢
    • 2019-12-23
    • 2021-08-20
    • 2022-12-29
    • 2021-03-14
    • 2019-05-27
    • 1970-01-01
    • 2019-11-08
    • 2017-10-01
    • 2020-05-10
    相关资源
    最近更新 更多