我找到了spacy lib,它允许我将词法化应用于单词(blacks -> black, EN)(bianchi -> bianco, IT)。我的工作是分析实体,而不是动词或形容词。
我正在寻找一种可以让我拥有所有可能的词从caninical形式开始的东西。
比如从 "black "到 "blacks",在英语中,或者从 "bianco"(意大利语)得到 "bianca","bianchi","bianche "等等。有没有什么库可以做到这一点?
我不清楚你要找的到底是什么,但如果你需要的只是一个英语词汇列表,你可以很容易地从我的GitHub库中提取出来。 请看一下 外延. 最初,这采用字典的方式来进行词法化,并且有一个 .csv
文件中包含了所有不同的词素和它们的转折词。 这个文件是 LemmInflect/lemminflect/resources/infl_lu.csv.gz
. 你必须从中提取出词素。 就像...
with gzip.open('LemmInflect/lemminflect/resources/infl_lu.csv.gz)` as f:
for line in f.readlines():
parts = lines.split(',')
lemma = parts[0]
pos = parts[1]
print(lemma, pos)
另外,如果你需要一个系统来进行词缀,这就是Lemminflect的作用。 你可以把它作为一个独立的库或者SpaCy的扩展来使用。 在README.md中或在 阅读文件 文件。
我应该注意到,这只是针对英语的。 我还没有看到很多关于词缀的代码,你可能很难找到其他语言的代码。