gpt4 book ai didi

python - 训练自定义瑞典 spacy 模型

转载 作者:行者123 更新时间:2023-12-05 07:21:29 27 4
gpt4 key购买 nike

我的目的是在 spaCy 中为瑞典语训练自定义词性标注器和依赖解析器。我按照 https://spacy.io/usage/training 上的说明进行操作并在 Swedish-Talbanken treebank conllu 文件上训练模型。这些步骤进行得很顺利,我最终得到了一个自定义模型。然后我加载了模型并尝试了一个小例子:

nlp = spacy.load(name=os.path.join(spacy_path, 'models/model-best'))
doc = nlp(u'Jag heter Alex Nilsson. Hon heter Lina')
# My name is Alex Nilsson. Her name is Lina

for token in doc:
print(token.text, token.pos_, token.dep_)

# OUTPUT:

#Jag PRON nsubj
#heter VERB ROOT
#Alex PROPN obj
#Nilsson PROPN flat:name
#. PUNCT punct
#Hon PRON nsubj
#heter VERB parataxis
#Lina PROPN obj

POS-Tagger 和 Dependency Parser 似乎都可以工作。没有用的是句子分割和名词 block 。

for sent in doc.sents:
print(sent.text)

# OUTPUT:

#Jag heter Alex. Hon heter Lina

for chunk in doc.noun_chunks:
print(chunk.text, chunk.root.text, chunk.root.dep_,
chunk.root.head.text)

# OUTPUT:

#

因此,句子没有拆分,名词 block 也没有输出。据我了解,spaCy 将 Dependency Parser 用于这两种功能。但如上所示,依赖解析器应该可以正常工作。这两个工作还需要更多的东西吗?也许我错过了一些明显的东西?

感谢您的帮助!

最佳答案

对此不太确定,但我认为量刑有效,因为 doc.sents 不是空的。它似乎工作得很糟糕。我会尝试解析更大的文本(但仍然很小)并且可能使用更长的句子。由于 sentencizer 通过查找相关标记来构建句子,因此较长的句子不太可能合并为一个句子。

至于 noun_chunks,我的理解(来自 documentation)是该语言必须在语言数据的 syntax_iterators.py 文件中定义一个 noun_chunks 方法。它似乎没有被自动训练。

关于python - 训练自定义瑞典 spacy 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56899733/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com