【问题标题】:Saving a model, which utilizes external pointers to C++ in R保存模型,该模型在 R 中利用指向 C++ 的外部指针
【发布时间】:2019-02-20 23:49:00
【问题描述】:

在这种情况下,save 或 saveRD 命令不起作用。它保存了一个不再起作用的空指针模型。例如,如果我们运行以下代码,我们如何保存模型以便我可以在新的 Rstadio 中重新生成它?如果使用 save 或 saveRD,在加载保存的模型时会面临外部指针为 null。

library(fastrtext)
data("train_sentences")
data("test_sentences")
texts <- tolower(train_sentences[,"text"])
tmp_file_txt <- tempfile()
tmp_file_model <- tempfile()
writeLines(text = texts, con = tmp_file_txt)
execute(commands = c("skipgram", "-input", tmp_file_txt, "-output", tmp_file_model, "-verbose", 1))
model <- load_model(tmp_file_model)

【问题讨论】:

  • 我看到你已经在那里发表了评论,但是对于其他任何查看问题 here's an issue link on github 的人来说,创建者说一个 "可以使用命令行通过 R 保存它(-输出选项)”,但不提供额外的细节。

标签: r


【解决方案1】:

我认为这对于 Rcpp 公开的类是不可能的。请参阅 this other stackoverflow question,其中包含来自 @DirkEdelbuettel 的 cmets。但是,您已经将模型保存在磁盘上,所以您不能只使用永久路径(不是tempfile())然后每次调用load_model 吗?

【讨论】:

  • 感谢您的回答。这个对我有用。我编辑了 github 问题并将其链接到此处。
猜你喜欢
  • 2021-10-19
  • 2014-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-20
相关资源
最近更新 更多