jjzjj

python - 将 Spacy 文档的一部分提取为新文档

我有一个相当长的文本被Spacy解析成一个Doc实例:importspacynlp=spacy.load('en_core_web_lg')doc=nlp(content)doc这里变成了Docclassinstance.现在,由于文本很大,我想在Jupyternotebook中仅使用文档的一部分进行处理、实验和可视化——例如,前100个句子。如何从现有文档的一部分切片并创建新的Doc实例? 最佳答案 在Span对象(https://spacy.io/api/span#as_doc)上使用as_doc()有一个更好的解决方案:nlp

python - 是否可以将 spacy 与已经标记化的输入一起使用?

我有一个已经被标记化为单词的句子。我想获取句子中每个单词的词性标记。当我查看SpaCy中的文档时,我意识到它是从原始句子开始的。我不想这样做,因为在那种情况下,spacy可能会以不同的标记化结束。因此,我想知道是否可以将spaCy与单词列表(而不是字符串)一起使用?这是关于我的问题的一个例子:#Iknowthatitdoesthefollowingsucessfully:importspacynlp=spacy.load('en_core_web_sm')raw_text='Hello,world.'doc=nlp(raw_text)fortokenindoc:print(token.

python - 在 SpaCy 中使用 PhraseMatcher 查找多种匹配类型

SpaCy文档和示例表明PhraseMatcher类可用于匹配文档中的标记序列。必须提供将要匹配的序列词汇表。在我的应用程序中,我的文档是标记和短语的集合。有不同类型的实体。数据是远程自然语言(文档是一组具有半随机顺序的关键字)。我正在尝试查找多种类型的匹配项。例如:yellowbootsforkids如何使用SpaCy的PhraseMatches找到颜色(例如黄色)、产品类型(例如Boot)和年龄(例如child)的匹配项?这是一个很好的用例吗?如果不同的实体匹配重叠(例如颜色在颜色列表和Material列表中匹配),是否可以产生所有独特的情况?我不能真正使用序列标注器,因为数据结构

python - 在 Spacy NER 模型中的评估

我正在尝试评估使用spacylib创建的训练有素的NER模型.通常对于这类问题,您可以使用f1分数(精度与召回率之间的比率)。我在文档中找不到经过训练的NER模型的准确度函数。我不确定它是否正确,但我正在尝试通过以下方式(示例)并使用sklearn中的f1_score来做到这一点:fromsklearn.metricsimportf1_scoreimportspacyfromspacy.goldimportGoldParsenlp=spacy.load("en")#loadNERmodeltest_text="mynameisJohn"#texttotestaccuracydoc_to

python - spacy 如何使用词嵌入进行命名实体识别 (NER)?

我正在尝试使用spaCy训练NER模型来识别位置、(人)名和组织。我试图了解spaCy如何识别文本中的实体,但我一直无法找到答案。来自thisissue在Github上和thisexample,看来spaCy使用文本中存在的许多特征(例如POS标记、前缀、后缀以及文本中的其他基于字符和单词的特征)来训练平均感知器。但是,代码中没有任何地方显示spaCy使用GLoVe嵌入(尽管句子/文档中的每个单词似乎都有它们,如果存在于GLoVe语料库中的话)。我的问题是-这些现在在NER系统中使用了吗?如果我将词向量切换到不同的集合,我是否应该期望性能以有意义的方式发生变化?我可以在代码的哪个位置找

python - 我在尝试安装 spaCy 英语语言模型时收到 CERTIFICATE_VERIFY_FAILED

我通过Anaconda在Python3.5.2上运行OSXElCapitan,并且有spaCy0.101.0。我正在尝试使用python-mspacy.en.download安装spaCy英语语言模型.但是,当我这样做时,我收到一条错误消息urllib.error.URLError:.完整的Traceback如下:Traceback(mostrecentcalllast):File"/Users/bsherman/anaconda/lib/python3.5/urllib/request.py",line1254,indo_openh.request(req.get_method(),

python - 如何使用 spacy 找到最常用的单词?

我将spacy与python一起使用,它可以很好地标记每个单词,但我想知道是否有可能在字符串中找到最常见的单词。也可以得到最常用的名词、动词、副词等吗?包含一个count_by函数,但我似乎无法让它以任何有意义的方式运行。 最佳答案 我最近不得不计算文本文件中所有标记的频率。您可以使用pos_属性过滤掉单词以获得您喜欢的POStoken。这是一个简单的例子:importspacyfromcollectionsimportCounternlp=spacy.load('en')doc=nlp(u'Yourtexthere')#allto

python - 如何验证安装的 spaCy 版本?

我已经为我的NLP项目安装了带有python的spaCy。我已经使用pip安装了它。如何验证安装的spaCy版本?使用pipinstall-Uspacy验证安装的spaCy版本的命令是什么? 最佳答案 您还可以执行python-mspacyinfo。如果您要更新现有安装,您可能需要运行python-mspacyvalidate,以检查您已有的模型是否与刚安装的版本兼容。 关于python-如何验证安装的spaCy版本?,我们在StackOverflow上找到一个类似的问题:

python - 使用 Spacy 提取动词短语

我一直在使用Spacy使用Spacy提供的Doc.noun_chunks属性来提取名词block。我如何使用Spacy库(形式为'VERB?ADV*VERB+')从输入文本中提取动词短语? 最佳答案 这可能对你有帮助。from__future__importunicode_literalsimportspacy,en_core_web_smimporttextacynlp=en_core_web_sm.load()sentence='Theauthoriswritinganewbook.'pattern=r'?*+'doc=text

python - [ orth , pos , tag , lema 和 text ] 的 spaCy 文档

我是spaCy的新手。我添加了这篇文章作为文档,并使它对像我这样的新手来说很简单。importspacynlp=spacy.load('en')doc=nlp(u'KEEPCALMbecauseTOGETHERWeRock!')forwordindoc:print(word.text,word.lemma,word.lemma_,word.tag,word.tag_,word.pos,word.pos_)print(word.orth_)我想了解orth、lemma、tag和pos的含义?此代码还打印出值print(word)与print(word.orth_)之间的区别