SPACYR:在模型'en_core_web_sm'

时间:2020-03-04 22:40:44

标签: r spacy

我不确定为什么收到此警告:

在模型'en_core_web_sm'中,词条随机化可能无法正常工作

我按照Install Spacy网页上的说明自定义安装了Spacy:

conda install -c conda-forge spacy
conda install -c conda-forge spacy-lookups-data
python -m spacy download en_core_web_sm

并在R中初始化如下:

spacy_initialize(condaenv = "C:/Users/.../AppData/Local/Continuum/anaconda3/envs/r-tensorflow/", model = 'en_core_web_sm') #refresh_settings = TRUE to switch python environment

合法化似乎正在奏效,我知道这是一个警告,而不是一个错误,但我不介意理解我的理解。

1 个答案:

答案 0 :(得分:0)

spacyr的作者似乎希望针对每种非英语模型打印此警告,请参见this comment

@param引理逻辑;在输出中包括词形化标记 (非英语化模型无法进行词法归类)

和代码here

 if (lemma) {
        model <- spacyr_pyget("model")
        dt[, "lemma" := get_attrs(spacy_out, "lemma_", TRUE)]
        if (substr(model, 0, 2) != "en"){
            warning("lemmatization may not work properly in model '", model, "'")
        }
    }

因此,如果我正确理解的话,实际上它不应该打en_core_web_sm。该警告代码段可能是一个错误。

从spaCy的角度来看-我们知道,去词义化(显然)并不总是完美的,并且肯定有改进的方法。但总的来说,我认为en_core_web_sm会产生合理的结果。