问题标签 [spacy-3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
132 浏览

python - ImportError:[E048] 无法从 spacy.lang 导入语言 custom_en:没有名为“spacy.lang.custom_en”的模块

spacy 3.0我已经像这样注册了我的自定义语言:

我已经尝试了代码行nlp = spacy.blank("custom_en"),它工作正常。但是当我lang="custom-en"config.cfg文件中使用并使用命令时:

我收到以下错误:

我该如何解决这个问题?

0 投票
1 回答
58 浏览

nlp - Spacy nl 没有正确大写句子

我正在使用 Spacy 模型,并且只想用起始句和专有名词大写纯文本。

我正在使用下面的代码

现在,如果 index == 0 或 token.pos in (PROPN),错误如下所示:

是否可以仅将其用于专有名词?

0 投票
1 回答
147 浏览

python - spacy 默认英语标记器在重新分配时更改

当您在 spacy 的(v3.0.5)英语语言模型中分配分词器时,en_core_web_sm它自己的默认分词器会改变其行为。

您会期望没有任何变化,但它会默默地失败。为什么是这样?

重现代码:

0 投票
1 回答
388 浏览

python - 使用 unicode 撇号正确标记英语缩写

如果使用unicode 撇号(not ) ,您如何修改默认 spacy (v3.0.5) 标记器以正确拆分英文缩写'

所有示例的期望输出是[do, n't]

我最好的猜测是使用所有可能的撇号变体来扩展默认的 tokenizer_exceptions。但这不起作用,因为 Tokenizer 特殊情况不允许修改文本。

0 投票
1 回答
447 浏览

python - spacy 3 NER Scorer() 抛出 TypeError: score() 接受 2 个位置参数,但给出了 3 个

尝试使用我的测试集获得分数时遇到以下错误Scorer

TypeError: score() 接受 2 个位置参数,但给出了 3 个

在哪里 testing_tagged:

预期输出是 where pr并且f不是 0:

我最初使用该GoldParse功能而不是Example.from_dict- 但我升级到 Spacy 3.0.5,我不明白为什么会发生此错误。

0 投票
1 回答
106 浏览

python - 在 Spacy 中训练两个连续的 NER 管道

我正在做一个项目来训练分类器来识别文本中的引用。我们正在处理的引文往往非常杂乱无章。以下是一些示例引用:

  • 见 A 册第 3 章第 7 段
  • 见 A 册第 3 章第 7 段
  • 见 A 卷第 7 段“某章标题”一章

我们已经确定了少数倾向于出现在这些引用中的实体。例如“书名”、“章号”、“章名”、“段号”。

该项目分为两个阶段:

  1. 文本中引文的二进制分类
  2. 引文内引文实体的分类

Spacy(我们正在使用 v3)是否有可能拥有两个连续的 NER 管道?我希望分类器首先标记引文,然后再标记每个引文中的实体。

我能够使用以下代码实例化具有两个 NER 管道的模型:

我的问题是如何分别训练每个 NER 管道。通常,Spacy 需要以下形状的数据来训练 NER:

如何区分训练数据中每个管道的数据?

0 投票
1 回答
238 浏览

python - 无法使用 CLI 在 spacy 3.0 中评估自定义 ner

我正在尝试使用磁盘中的自定义管道加载自定义预训练模型作为 spacy 3.0 中的管道:

工厂的代码是这样的:

然后我将“ner-crf”添加到我的语言类中,如下所示:

我认为有一件事可能是相关的:当我使用to_disk以保存对象时,保存的nlp对象中没有ner-crf包(我刚刚添加的管道)。

然后我运行这个 CLI 命令来评估 NER 管道:

但我得到这个错误:

我使用的自定义 NER 类属于spacy-crfsuite库,该库在 spacy 2 中运行良好,但它们还没有用于 Spacy 3 的示例代码,所以我自己试图让它在 spacy 3.0 中运行。

0 投票
0 回答
76 浏览

python-3.x - 如何使用 SpacyTextBlob 计算数据帧的情绪分数?

我正在使用 SpacyTextblob 查找评论的情绪分数。我可以计算单个文本的极性和主观性分数,但无法计算列

我的数据框名为“数据”,其中包含名为 reviews.text 列的评论

上面的代码分别适用于每个评论,我可以计算极性和主观性。但是,我无法计算整个列

上面的代码不起作用,谁能告诉我如何计算它?

0 投票
1 回答
52 浏览

python - 文本中的线路连接

使用 spaCy displaCy ( https://github.com/explosion/spaCy/blob/master/website/UNIVERSE.md ) 中的以下修改代码,我试图在顶部和文本中添加箭头以强调我想要显示的关系.

在我的这部分代码中,我调用了“箭头渲染函数”:

我给它 b = 4。

运行以下代码:

现在的输出是文本行上方的图像(作为 html,在代码的其他位置创建)。但是我无法与较低文本行中的单词建立联系。查看 y_end / y_star + 50。看起来图像好像被文本行剪切了

我怎样才能做到这一点?我需要在 svg 中添加文本吗?还是这种方法不适合我想要实现的目标,我是否需要另一种方法?

示例图像

这里是 HTML svg 部分:

0 投票
1 回答
135 浏览

python-3.x - 使用 Pyinstaller 打包 SpaCy 模型:E050 找不到模型

我正在使用 Pyinstaller 打包我的 python spacy 代码。我正在使用 de_core_news_sm 并通过 pip 安装它。正常脚本按预期执行,但一旦它与 pyinstaller 打包,它就找不到[E050] Can't find model 'de_core_news_sm'. It doesn't seem to be a Python package or a valid path to a data directory. 我为每个挂钩文件获得的模型:

我使用以下 pyinstaller 命令:

在这篇文章 [1] 中:使用 PyInstaller 打包时找不到 SpaCy 模型

这是从模块中添加数据文件的解决方案。那么我必须如何更改我的 script.py 运行时文件中的代码以及我必须如何更改挂钩文件?

顺便说一句,我在我的虚拟环境中使用:spacy 3.0.6、pyinstaller 4.3 和 python 3.8.0。

谢谢 !