尝试在文本分析中提取实体时openNLPmodels.en错误

时间:2015-05-08 07:34:47

标签: opennlp

我使用R3.1.2进行文本分析以提取实体(kind = person)。我从http://datacube.wu.ac.at加载了openNLP和openNLPmodels.en。但我得到以下错误。

Maxent_Simple_Entity_Detector(语言,种类,问题,模型)出错:   找不到语言的模型文件' en'和善良的人#39; 显然,打包' openNLPmodels.en'已安装 但不提供此模型。

决议是什么?

由于 诗丽黛玮·阿雅潘

4 个答案:

答案 0 :(得分:1)

http://datacube.wu.ac.at/src/contrib/安装openNLPmodels.en。 CRAN上不再提供此软件包。因此,下载处于脱机状态并将其安装在R / Rstudio上。它对我有用。 !华友世纪!

答案 1 :(得分:0)

我遇到了同样的问题,并且能够解决它安装附加软件包“RWeka”和“qdap”。另外,确保安装了“rJava”。简而言之,运行以下命令,看看在需要包之后,您是否能够运行代码。

install.packages(c("NLP", "openNLP", "RWeka", "qdap", "rJava"))

答案 2 :(得分:0)

因为你可能已经安装了openNLPmodels.en并正确加载了它。我进入了openNLP的parse.R的源代码,发现了类似的东西

package <- "openNLPmodels.en"
model <- system.file("models/en-parser-chunking.bin",
                     package = package) .

需要注意的要点..

1)我在一台R版本为3.3.2的Linux机器上。和 2)已经安装了openNLPmodels.en表单的版本 https://cran.r-project.org/src/contrib/Archive/openNLPmodels.en/。令我惊讶的是我没有在其路径中找到“models / en-parser-chunking.bin”。所以我已经下载了相应的解析器文件。来自http://opennlp.sourceforge.net/models-1.5/并将其放在名为models的文件夹中。并能够使它工作。

parse_annotator <- Parse_Annotator()
## Compute the parse annotations only.
p <- parse_annotator(s, a2)

现在这段代码对我有用了。 在此之前,我有类似的错误。

annotate(s, Maxent_Chunk_Annotator(), a3)
#Error in Maxent_Simple_Chunker(language, probs, model) : 
Could not find model file for language 'en'.

显然,安装了包'openNLPmodels.en' 现在猜猜看,我已经在Maxent_Simple_Chunker中给出了模型(chunker.bin文件)的路径,并且能够使它工作。

为我糟糕的格式化技巧道歉

我使用的所有解析和chunker代码都可以在文档中找到。如果要重现示例

答案 3 :(得分:0)

让我提供适合我的确切步骤。这些步骤假设您已经有OpenNLP,rJava库正在运行。

  1. 安装openNLPmodels.en
  2. install.packages("openNLPmodels.en", dependencies=TRUE, repos = "http://datacube.wu.ac.at/")

    1. 导航到openNLPmodels.en库文件夹。对我来说,这是\ filesrv \ users \ MYNAME \ My Documents \ R \ win-library \ 3.4 \ openNLPmodels.en

    2. 在openNLPmodels.en中创建一个名为models

    3. 的新文件夹

      models folder creation

      1. 访问sourceforge上的openNLP模型页面并下载 两个文件:en-chunker.bin和en-ner-person.bin

      2. 将这些文件放在模特文件夹中