如何扩充词头(将各种单词变形加入索引)

我说一下我的思路,如果词条内已经存在变体是最方便的,直接设置LINK指向就行。如果没有,需要有一个对照表或者转换规则,这种推测单词原形的叫lemmatize。个人测试WordNetLemmatizer的转换结果比较好。
下面是我写的一个简单的示例。
安装nltk
pip install nltk
运行test.py
python test.py
显示:
apples
单词: apples 原形推测: apple 词性: n.
buses
单词: buses 原形推测: bus 词性: n.
单词: buses 原形推测: bus 词性: v.
quizzes
单词: quizzes 原形推测: quiz 词性: n.
单词: quizzes 原形推测: quiz 词性: v.
candies
单词: candies 原形推测: candy 词性: n.
单词: candies 原形推测: candy 词性: v.
abaci
单词: abaci 原形推测: abacus 词性: n.
gone
单词: gone 原形推测: go 词性: v.
better
单词: better 原形推测: good 词性: adj.
单词: better 原形推测: well 词性: adv.
wanted
单词: wanted 原形推测: want 词性: v.
would
doing
单词: doing 原形推测: do 词性: v.
具体的使用就是调用lemmatize_word.py中的lemmatize_word函数,获得推测的原形,然后自己再进行其他处理。
lemmatize_word.zip (10.3 MB)

1 个赞