繁体   English   中英

在没有 model 的情况下使用 spacy 的匹配器

Using spacy's Matcher without a model

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我想在 spaCy 还没有可用的 model 的新语言(希伯来语)上使用 spaCy 的 Matcher class。

我找到了一个工作标记器 + POS 标记器(来自斯坦福 NLP),但我更喜欢 spaCy,因为它的 Matcher 可以帮助我做一些基于规则的 NER。

基于规则的匹配器是否可以输入带有 POS 标记的文本,而不是标准的 NLP 管道?

3 个回复

您可以手动为其他来源的 spacy 文档设置单词和标签,然后使用 Matcher。 这是一个使用英文单词/标签的示例,只是为了演示:

from spacy.lang.he import Hebrew
from spacy.tokens import Doc
from spacy.matcher import Matcher

words = ["my", "words"]
tags = ["PRP$", "NNS"]

nlp = Hebrew()
doc = Doc(nlp.vocab, words=words)
for i in range(len(doc)):
    doc[i].tag_ = tags[i]

# This is normally set by the tagger. The Matcher validates that
# the Doc has been tagged when you use the `"TAG"` attribute.
doc.is_tagged = True

matcher = Matcher(nlp.vocab)
pattern = [{"TAG": "PRP$"}]
matcher.add("poss", None, pattern)
print(matcher(doc))
# [(440, 0, 1)]

如果你想用 spaCy 训练一个新的统计 model,你应该阅读关于训练 spaCy 的统计模型的文档。

据我所知,spaCy 还没有训练有素的希伯来语 model。 为了您使用没有模型的语言,

from spacy.lang.he import Hebrew
nlp = Hebrew()
#or
nlp = spacy.blank("he")

很确定您可以从这里构建基于规则的匹配器。

2 是否可以在没有管理员权限的情况下使用spacy?

我试图在我无法拥有管理员权限的计算机上使用spacyr,这就是它的现实。 我发现我可以使用anaconda下载并安装spacy和en模型到我的conda环境(spacy_condaenv),但由于缺少管理员访问权限,我无法创建链接。 这是完整的错误: 错误:无法将模型链接到'en'在s ...

5 我应该在这种情况下使用Spacy命名实体识别吗? [关闭]

我有一组名称,一组固定的名称,最多可以扩展到50,000个名称。 “约翰”,“迈克”,“乔什”,“彼得”,“卡尔”。 我有一个文件,这个文件是动态的。 我需要查找此文档是否具有预定义的名称? 在spacy nlp中将所有内容都定义为实体是正确的方法吗? ...

8 在没有模型的情况下使用权限

我有一个没有模型的django设置,但是我想使用身份验证/权限系统来限制对某些视图的访问。 为此,我创建了一个空模型: 并将该权限添加到我的视图中: 登录staff用户后,它可以工作,以普通用户身份登录时,我会看到登录屏幕。 但是,在我的管理面板中,我看不到该权限,因此无法授 ...

10 在没有模型的情况下使用 django

是否可以使用 Django 但没有模型? 我想在 mysql 游标的帮助下使用原始 sql 查询,而不是模型。 我想实施汽车租赁网站来租车。 将有三个表:Cars、Users、Orders。 任何人都可以在网页上注册、登录和下订单。 唯一的限制是必须使用原始 sql 查询来执行此操作,因此我认为 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM