我有一个句子已经被标记成文字了。我想得到句子中每个单词的词性标记部分。当我检查SpaCy中的文档时,我意识到它从原始句子开始。我不想这样做,因为在这种情况下,spacy可能会以不同的标记结束。因此,我想知道是否可以在单词列表(而不是字符串)中使用spaCy?
下面是我的问题的一个例子:
# I know that it does the following sucessfully :
import spacy
nlp = spacy.load('en_core_web_sm')
raw_text = 'Hello, world.'
doc = nlp(raw_t
我试图找出最佳的方法(快速)来提取实体,例如一个月。我已经提出了5种使用的不同方法。
初始设置
对于每个解决方案,我从初始设置开始。
import spacy.lang.en
nlp = spacy.lang.en.English()
text = 'I am trying to extract January as efficient as possible. But what is the best solution?'
解决方案:使用 (仅限于单个令牌匹配)
import spacy.tokens
NORM_EXCEPTIONS = {
'jan&
以下代码运行时没有错误
import spacy
from spacy.matcher import PhraseMatcher
nlp = spacy.load('en_core_web_lg')
test = nlp(' FWCA rate of pay')
phrase_pattern = [r'Rate of Pay']
pattern_name = 'RATES'
patterns = [nlp.make_doc(name) for name in phrase_pattern]
matcher = PhraseM
当我使用SpaCy来识别停止词时,如果我使用en_core_web_lg语料库,它就不起作用了,但是当我使用en_core_web_sm时,它就起作用了。这是个窃听器,还是我做错了什么?
import spacy
nlp = spacy.load('en_core_web_lg')
doc = nlp(u'The cat ran over the hill and to my lap')
for word in doc:
print(f' {word} | {word.is_stop}')
结果:
The | False
cat
我安装了spacy_stanza并下载了拉丁文模型,但是我得到了以下错误:
ImportError: [E048] Can't import language la or any matching language from spacy.lang: No module named 'spacy.lang.la'
下面是我使用的代码:
import spacy
import stanza
import spacy_stanza
stanza.download("la")
nlp = spacy_stanza.load_pipeline("la&
代码如下:
import spacy
nlp = spacy.load('en_core_web_sm')
def listtostring(s): #Start the function to covert the content of the list into a string
str1 = ''
return str1.join(s)
new = ""
responese = []
reply = nlp(str(input("Input your queries:")))
for word in
我试图使用pathos来触发函数中的多进程。然而,我注意到一种奇怪的行为,不知道为什么:
import spacy
from pathos.multiprocessing import ProcessPool as Pool
nlp = spacy.load("es_core_news_sm")
def preworker(text, nlp):
return [w.lemma_ for w in nlp(text)]
worker = lambda text: preworker(text, nlp)
texts = ["Este es un tex
我加载了常规的spacy语言,并尝试了以下代码:
import spacy
nlp = spacy.load("en_core_web_md")
text = "xxasdfdsfsdzz is the first U.S. public company"
if 'xxasdfdsfsdzz' in nlp.vocab:
print("in")
else:
print("not")
if 'Apple' in nlp.vocab:
print("in&
当我使用SpaCy NER时,SpaCy会将'TodoA‘识别为PERSON。这显然是不合理的。有没有办法验证SpaCy提取的实体是否合理?谢谢!
这些不合理的实体大多是通过空间波束搜索来提取的。波束搜索代码为:
import spacy
import sys
from collections import defaultdict
nlp = spacy.load('en')
text = u'Will Japan join the European Union? If yes, we should \
move to United States. Fast
我最近在使用spacy时遇到了一个奇怪的行为,那就是当我处理字符串时, 在字符串是单个字符串对象的情况下,我必须使用nlp( string ), 而对于由字符串元素组成的列表,我必须使用nlp.pipe(一个列表)。 示例如下。 string='this is a string to be process by nlp'
doc =['this','is','a','string','list','to','be','processed','
玩spaCy,数书中的单词。这主要是一次快速而干净的小练习。我先这样运行代码:
import spacy
nlp = spacy.load('en_core_web_sm')
with open("sherlock.txt", encoding='utf8') as sherlock:
sherlock = str(sherlock.readlines())
text = nlp(sherlock)
count = text.count_by(spacy.attrs.POS)
for k, v in count
我正在尝试安装neuralcoref,并按照的说明进行安装。
我创建了一个jupyter笔记本,并尝试运行以下代码。
# Load your usual SpaCy model (one of SpaCy English models)
import spacy
nlp = spacy.load('en')
# Add neural coref to SpaCy's pipe
import neuralcoref
neuralcoref.add_to_pipe(nlp)
# You're done. You can now use NeuralCoref a
我正试图用德语句子来确定主语。对于英语,我曾经这样做过:
import spacy
nlp = spacy.load('en')
sent = "I shot an elephant"
doc=nlp(sent)
sub_toks = [tok for tok in doc if (tok.dep_ == "nsubj") ]
print(sub_toks)
但它不适用于nlp = spacy.load('de_core_news_sm')和使用德语句子。它返回一个空列表。
我试着看,即使它们有词类而不是主语、宾语等,但它也
我已经用以下步骤定制了NER管道
doc = nlp("I am going to Vallila. I am going to Sörnäinen.")
for ent in doc.ents:
print(ent.text, ent.label_)
LABEL = 'DISTRICT'
TRAIN_DATA = [
(
'We need to deliver it to Vallila', {
'entities': [(25, 32, 'DISTRICT')]
import spacy
nlp = spacy.load('en')
doc = nlp('An example sentence in the city of london')
str1 = 'in the city'
str2 = 'example sentence'
我希望找到文档中所有str (从列表中)的开始和结束字符索引。如何使用spacy来完成这个任务?
到目前为止,我所做的是:复杂的循环匹配每个字符,显然不是很好。
我使用从文本中提取一些与我的问题相关的命名实体,例如日期、时间、GPE等等。
例如,我需要识别以下句子中的时区:
"Australian Central Time"
使用Spacy模型en_core_web_lg,我得到了以下结果:
doc = nlp("Australian Central Time")
print([(ent.label_, ent.text) for ent in doc.ents])
>> [('NORP', 'Australian')]
,我的问题是:我对实体NORP的确切含义不太清
我这里有这个代码。
import spacy
nlp = spacy.load('en')
a = set(nlp('This is a test'))
b = nlp('is')
if b in a:
print("Success")
else:
print("Failed")
由于某种原因,此输出输出为"Failed“。我希望它能成功。我是使用spacy框架的新手,所以我不太确定如何正确地使用它。我该怎么做才是对的呢?
我正在做NLP项目,所以我正在使用spacy,问题是当我使用import nlp=spacy.load('fr_core_news_md')时,它对我不起作用,我得到了这个错误:
OSError: [E050] Can't find model 'fr_core_news_md'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory."
尽管使用了python -m spacy download fr_cor
我目前正在构建一个带有自定义NER、实体链接器和Textcat组件的spacy管道。对于我的实体链接器组件,我已经修改了candidate_generator()以适应我的用例。我借鉴了的演示项目。下面是我的custom_functions代码。
import spacy
from functools import partial
from pathlib import Path
from typing import Iterable, Callable
from spacy.training import Example
from spacy.tokens import DocBin
fro