python常用单词有多少_python – NLTK每个单词最常见的同义词(Wordnet)

同义词很棘手,但是如果你开始使用Wordnet的synset并且你只想选择集合中最常见的成员,那么它非常简单:只需从语料库中构建自己的频率列表,然后查找每个成员. synset选择最大值.

nltk将让您只需几行代码即可构建频率表.这是基于布朗语料库的一个:

from nltk.corpus import brown

freqs = nltk.FreqDist(w.lower() for w in brown.words())

然后,您可以查找单词的频率,如下所示:

>>> print(freqs["valued"])

14

当然你需要做更多的工作:我会分别为每个主要的词性计算单词(wordnet提供n,v,a和r,resp.名词,动词,形容词和副词),以及使用这些特定于POS的频率(在调整不同的标记集符号后)选择正确的替代品.

>>> freq2 = nltk.ConditionalFreqDist((tag, wrd.lower()) for wrd, tag in

brown.tagged_words(tagset="universal"))

>>> print(freq2["ADJ"]["valued"])

0

>>> print(freq2["ADJ"]["dear"])

45

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值