Wordnet介绍和使用
来源:互联网 发布:php源码详细安装步骤 编辑:程序博客网 时间:2024/05/21 10:37
Wordnet是一个词典。每个词语(word)可能有多个不同的语义,对应不同的sense。而每个不同的语义(sense)又可能对应多个词,如topic和subject在某些情况下是同义的,一个sense中的多个消除了多义性的词语叫做lemma。例如,“publish”是一个word,它可能有多个sense:
1. (39) print, publish -- (put into print; "The newspaper published the news of the royal couple's divorce"; "These news should not be printed")
2. (14) publish, bring out, put out, issue, release -- (prepare and issue for public distribution or sale; "publish a magazine or newspaper")
3. (4) publish, write -- (have (one's written work) issued for publication; "How many books did Georges Simenon write?"; "She published 25 books during her long career")
在第一个sense中,print和publish都是lemma。Sense 1括号内的数字39表示publish以sense 1在某外部语料中出现的次数。显然,publish大多数时候以sense 1出现,很少以sense 3出现。
WordNet的具体用法
NLTK是python的一个自然语言处理工具,其中提供了访问wordnet各种功能的函数。下面简单列举一些常用功能:
得到wordnet本身:
from nltk.corpus import wordnet
获得一个词的所有sense,包括词语的各种变形的sense:
wordnet.synsets('published')
[Synset('print.v.01'),
Synset('publish.v.02'),
Synset('publish.v.03'),
Synset('published.a.01'),
Synset('promulgated.s.01')]
得到synset的词性:
>>> related.pos
's'
得到一个sense的所有lemma:
>>> wordnet.synsets('publish')[0].lemmas
[Lemma('print.v.01.print'), Lemma('print.v.01.publish')]
得到Lemma出现的次数:
>>> wordnet.synsets('publish')[0].lemmas[1].count()
39
在wordnet中,名词和动词被组织成了完整的层次式分类体系,因此可以通过计算两个sense在分类树中的距离,这个距离反应了它们的语义相似度:
>>> x = wordnet.synsets('recommended')[-1]
>>> y = wordnet.synsets('suggested')[-1]
>>> x.shortest_path_distance(y)
0
形容词和副词的相似度计算方法:
形容词和副词没有被组织成分类体系,所以不能用path_distance。
>>> a = wordnet.synsets('beautiful')[0]
>>> b = wordnet.synsets('good')[0]
>>> a.shortest_path_distance(b)
-1
形容词和副词最有用的关系是similar to。
>>> a = wordnet.synsets('glorious')[0]
>>> a.similar_tos()
[Synset('incandescent.s.02'),
Synset('divine.s.06'),
……]
- WordNet介绍和使用
- WordNet介绍和使用
- WordNet介绍和使用
- WordNet介绍和使用
- Wordnet介绍和使用
- WordNet介绍
- linux版wordnet安装和使用[fc13]
- 词语相似度计算:1、安装NLTK和下载WordNet语料库;WordNet的使用
- 使用JWNL读取WordNet
- Java中使用Wordnet
- WordNet 介绍(ICL-PKU)
- WordNet 介绍(ICL-PKU)
- WordNet
- Wordnet
- WordNet
- wordnet
- WordNet
- WordNet
- 【Android界面实现】PhotoView——支持单点/多点触摸的放缩图片的实现
- 生物脑控武器的受害者,是早己被选定成为活体实验的目标
- Linux SVN服务器搭建和使用
- 第九周项目六—三色球
- 老生常谈,正确使用memset
- Wordnet介绍和使用
- Apache与Nginx的优缺点比较
- 冒泡排序
- Android的IPC机制-Binder
- 最值得阅读学习的 10 个 C 语言开源项目代码
- DbVisualizer Personal 中文乱码问题的通用解决方法
- 获取django model 中得fields
- iOS根视图切换,释放内存,以及推送界面跳转(iOS多语言切换语言处理,也请看此处)
- Mac OS访问Windows共享文件夹