如何使用wordnet

介绍

WordNet是包含语义信息的英语词典。

  1. wordnet根据单词的语义分组,相同语义的单词组合在一起称为synset(同义词集),一个一词多义的单词将出现在它的每个语义对应的同义词集中
  2. wordnet为每一个synset提供了简短,概要的定义,并记录不同synset之间的语义关系
  3. 在 wordnet中,名词,动词,形容词和副词各自组织成一个同义词的网络,四种不同词性的网络之间没有连接

python调用wordnet

可通过nltk工具包来导入wordnet

from nltk.corpus import wordnet

如果导入错误,尝试重新下载wordnet

  import nltk
  nltk.download('wordnet')

获得单词对应的同义词集

print(wordnet.sysnets('room'))
[Synset('room.n.01'), Synset('room.n.02'), Synset('room.n.03'), Synset('room.n.04'), Synset('board.v.02')]

每个同义词集都有自己的名称,词性,以及编号。这里room有5个同义词集,其中四个叫room,是名词,最后一个叫board,是动词。

也可以指定词性,获取不同词性对应的同义词集

print(wordnet.synsets("room", pos=wordnet.NOUN))
# NOUN, ADJ and ADV,VERB
[Synset('room.n.01'), Synset('room.n.02'), Synset('room.n.03'), Synset('room.n.04')]

获得同义词集的定义

对于上面获得的5个同义词集,可以通过以下两种方式来获得第一个同义词集Synset('room.n.01')的定义

(1) 通过返回同义词集列表获得

syn_arr = wordnet.synsets('room')
print(syn_arr[0].definition())
an area within a building enclosed by walls and floor and ceiling
# 楼板建筑物内由墙壁、地板和天花板围起来的区域

(2)直接指定同义词集的名字

print(wordnet.synset('room.n.01').definition())
an area within a building enclosed by walls and floor and ceiling
# 楼板建筑物内由墙壁、地板和天花板围起来的区域

获取同义词集对应的例子

对于单词room的五个不同的语义,给出相应的例句或短语

for syn in wordnet.synsets("room"):
    print(syn.name())
    print(syn.examples())
room.n.01
['the rooms were very small but they had a nice view']
room.n.02
['room to pass', 'make way for', 'hardly enough elbow room to turn around']
room.n.03
['room for improvement']
room.n.04
['the whole room was cheering']
board.v.02
['she rooms in an old boarding house']

获得同义词集包含的lemma

同义词集包含的单词一般是词根(lemma)的形式,比如说love这个单词,同义词集中只会包含love而不会包含loves,loved这些变形。

syn_arr = wordnet.synsets("room")
print(syn_arr[1].lemmas())
print(syn_arr[1].lemma_names())
[Lemma('room.n.02.room'), Lemma('room.n.02.way'), Lemma('room.n.02.elbow_room')]
['room', 'way', 'elbow_room']

同样的,也可以反向获取lemma所在的同义词集

print(syn_arr[1].lemmas()[0].synset())
Synset('room.n.02')

获取单词对应的lemma

当使用wordnet查询单词时,需要知道单词的词根形式

print(wordnet.morphy('denied'))
deny
bike对应的同义集合

获取下位同义词集

不同synset之间的语义关系存在上下位关系,例如日历这个单词对应下位词:阳历,阴历

print(wordnet.synset('calendar.n.01').hyponyms())
[Synset('lunar_calendar.n.01'), Synset('lunisolar_calendar.n.01'), Synset('solar_calendar.n.01')]

获取上位同义词集

同样的,可以通过下位同义词集获得上位同义词集

print(wordnet.synset('solar_calendar.n.01').hypernyms())
[Synset('calendar.n.01')]

上述的结果,除了使用python nltk获得以外,还可以直接进入官网,在线输入,查询

在线查询例子

还有一个重点就是如何使用wordnet计算单词之间的语义相似度,更多的方法可见WordNet Interface

参考

wordnet官网

https://pythonprogramming.net/wordnet-nltk-tutorial/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 225,271评论 6 524
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 96,533评论 3 405
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 172,580评论 0 370
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 61,203评论 1 303
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 70,204评论 6 401
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 53,664评论 1 316
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,014评论 3 431
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 40,991评论 0 280
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 47,536评论 1 326
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 39,558评论 3 347
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 41,678评论 1 355
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 37,267评论 5 351
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 42,997评论 3 341
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 33,429评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 34,580评论 1 277
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 50,259评论 3 382
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 46,744评论 2 366

推荐阅读更多精彩内容

  • 算法技术解构 1、Python基础知识 (1)IPythonIPython的开发者吸收了标准解释器的基本概念,在此...
    shenciyou阅读 5,338评论 0 10
  • 1. 说明  今天讨论的是自然语言中的知识抽取和知识表示,换言之,就是如何从大量的书籍文献中剥离出我们关心的...
    xieyan0811阅读 4,307评论 0 0
  • 最近在coursera上学习Princeton大学的Algorithm PartII,这个系列的两门课是我见过最好...
    lyy0905阅读 1,376评论 1 0
  • 概述 nltk是一个自然语言处理工具包,在NLP领域中,最常使用的一个Python库。https://yiyibo...
    HyRer阅读 4,325评论 0 1
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 125,527评论 2 7