Python自然语言处理(3):更多词汇关系:部分、整体、集合、蕴含等
2.5 WordNet(III)——更多词汇关系:部分、整体、集合、蕴含等
0. 本节内容
从条目到部分(部件、实质)
part_holonyms()
substance_holonyms()
或从条目到包含它们的东西(整体)
part_meronyms( )
substance_meronyms( )
或从条目到集合
member_meronyms( )
特别注意:本文提到的部分方法在书中并没有括号,但是笔者在加了方法名后加了括号( )后才输出预期的结果,否则会输出类似<bound method Synset.name of Synset('car.n.01')>
这样的结果
还有记得导入:from nltk.corpus import wordnet as wn
1. 首先如何理解“部分(部件、实质)”,“整体”,“集合”呢?
书上的例子是这样的:
条目–部件(树–树干、树冠、等部件)——part_meronyms( )
条目-实质(芯材和边材)——substance_meronyms( )
条目–集合(森林)——member_holonyms( )
而对于树干、树冠,或者芯材与边材等等,其“整体”便是树本身。
如果一时理解的还不到位,可以考虑用 人 来做类似的解释:
部件:人——头、手、足、臂、心脏等等
实质:人——细胞、骨、皮肉、血等
集合:人——人群
整体便是一个人本身。
(不是医学的、可能分的不太准确,但是大致上可以这么理解的,这和上述的对 tree的分析逻辑是类似的,这些概念都是相对的)
关于部分,一个是从结构、部件这个角度,一个是从本质上、实质上去分析,这是理解的关键。
2. 那么如何理解这两组方法的关系呢(条目-部件,条目-整体)?
- holo有全息的含义,part_holonyms( ) 、substance_holonyms( )是指从部分到整体的方向;meronyms有部分名词的含义,part_meronyms( )、substance_meronyms( )是指从整体到部分的方向;
- part_holonyms( ) 、substance_holonyms( )与part_meronyms( )、substance_meronyms( )可以理解为两组逆方向的方法,可以看下图的分析;
3. 围绕词集 tree.n.01应的练习及对应关系如下
>>> wn.synset('tree.n.01').part_meronyms()#tree的部件(条目-部件)
[Synset('burl.n.02'), Synset('crown.n.07'), Synset('limb.n.02'), Synset('stump.n.01'), Synset('trunk.n.01')]
>>> wn.synset('tree.n.01').substance_meronyms()#tree的实质(条目-实质)
[Synset('heartwood.n.01'), Synset('sapwood.n.01')]
>>> wn.synset('tree.n.01').member_holonyms()#tree集合是森林
[Synset('forest.n.01')]
>>> wn.synset('burl.n.02').part_holonyms()#由上边第一行代码的输出结果可知'burl.n.02'是'tree.n.01'的一个部件,因此burl的整体是tree无疑
[Synset('tree.n.01')]
>>> wn.synset('heartwood.n.01').substance_holonyms()#同理,heartwood是tree的一个实质,其整体也是tree无疑
[Synset('tree.n.01')]
>>>
4. 其他词汇关系:蕴含、反义词
蕴含:entailments()
以上的分析多是针对名词,对于动词,也存在关系。这里只有列出了一种蕴含的关系:
entailments()方法,同样由一个词集调用:
>>> wn.synset('walk.v.01').entailments()#走路蕴含着抬脚
[Synset('step.v.01')]
反义词:antonyms()
由一个词条调用:wn.lemma(‘supply.n.02.supply’)
>>> wn.lemma('supply.n.02.supply').antonyms()
[Lemma('demand.n.02.demand')]
>>>
注意所用词语的词性,笔者试着对形容词取反义词:
>>> wn.lemma('hot.a.01.hot').antonyms()#hot对cold,中间的词性标记为a,而不是n或v
[Lemma('cold.a.01.cold')]
>>>
也可以试着测试更多的词汇,但是由于不清楚具体的词汇结构,可能有的测试不是你想的那样,多测测总是好玩的
PS:如有错误,欢迎大家指正,一起学习,还在摸索学习中,持续更新~
Python自然语言处理(3):更多词汇关系:部分、整体、集合、蕴含等相关推荐
- 【Python自然语言处理】读书笔记:第五章:分类和标注词汇
jupyter 版请见我的github:https://github.com/JackKuo666/Python_nlp_notes [Python自然语言处理]读书笔记:第五章:分类和标注词汇 本章 ...
- 《Python自然语言处理(第二版)-Steven Bird等》学习笔记:第02章 获得文本语料和词汇资源
第02章 获得文本语料和词汇资源 2.1 获取文本语料库 古腾堡语料库 网络和聊天文本 布朗语料库 路透社语料库 就职演说语料库 标注文本语料库 在其他语言的语料库 文本语料库的结构 载入你自己的语料 ...
- Python自然语言处理 | 获得文本语料与词汇资源
本章解决问题- 什么是有用的文本语料和词汇资源,我们如何使用Python获取它们? 哪些Python结构最适合这项工作? 编写Python代码时我们如何避免重复的工作? 这里写目录标题 1获取文本语料 ...
- 【Python 自然语言处理 第二版】读书笔记2:获得文本语料和词汇资源
文章目录 一.获取文本语料库 1.古腾堡语料库 (1)输出语料库中的文件标识符 (2)词的统计与索引 (3)文本统计 2.网络和聊天文本 3.布朗语料库 (1)初识 (2)比较不同文体中的情态动词的用 ...
- 《Python自然语言处理》——1.1 语言计算:文本和词汇
本节书摘来异步社区<Python自然语言处理>一书中的第1章,第1.1节,作者:[美]Steven Bird , Ewan Klein , Edward Loper,更多章节内容可以访问云 ...
- 《Python自然语言处理》——第1章 语言处理与Python 1.1 语言计算:文本和词汇...
本节书摘来自异步社区<Python自然语言处理>一书中的第1章,第1.1节,作者[美]Steven Bird,Ewan Klein,Edward Loper, 陈涛,张旭,崔杨,刘海平 译 ...
- 《Python自然语言处理(第二版)-Steven Bird等》学习笔记:第05章 分类和标注词汇
第05章 分类和标注词汇 5.1 使用词性标注器 5.2 标注语料库 表示已标注的标识 读取已标注的语料库 简化的词性标记集 名词 动词 形容词和副词 未简化的标记 探索已标注的语料库 5.3 使用P ...
- python自然语言处理书籍推荐-python自然语言处理
自然语言处理理论书籍很多,讲实际操作的不多,能讲的这么系统的更少.Python语言在做NLP方面有较明显的优势.之前国外有<Natural Language Process with Pytho ...
- 《Python自然语言处理》——1.8 练习
本节书摘来自异步社区<Python自然语言处理>一书中的第1章,第1.8节,作者[美]Steven Bird,Ewan Klein,Edward Loper, 陈涛,张旭,崔杨,刘海平 译 ...
最新文章
- Microsoft Anti-Cross Site Scripting Library V1.5 发布了
- java 中的 Enumeration 在Vector,Hashtable和web中的应用
- NSURLSession使用说明及后台工作流程分析
- IntelliJ IDEA2018配置SVN及常见问题解决
- union(联合)合并查询结果
- 四十一、Android Notification通知详解
- 海华·垃圾分类AI挑战赛baseline分享,评测得分最高至0.85
- 鸿蒙2.0beta报名,鸿蒙OS 2.0 Beta版系统在哪报名-报名方法介绍
- 开源软件软件著作权执照详细研究和实例分析
- 【dp】POJ-2817
- [转] js中的钩子机制(hook)
- python有几种容器_Python中几种内置的容器(Containers)类型:列表、字典、集合和元组的比较和该注意的点...
- Android 9.0 Framwork Wifi源码学习目录
- 智伴机器人wifi键在哪里_智伴机器人介绍和按键功能
- 【滤波器】基于matlab时变维纳滤波器设计【含Matlab源码 1870期】
- Python学习笔记——python基础之python中for......else......的使用
- laravel入门教程(一)
- java do po dto_彻底搞懂DAO,PO,BO,DTO,VO,DO
- Python深度学习-快速指南
- LaTex支持中文的三种方式
热门文章
- mmdetection报错 TypeError: vars() argument must have __dict__ attribute
- 怎看传智播客学员如此吃香
- 转载:廖雪峰经典:史上最浅显易懂的Git教程!
- IIS 7.5 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。
- 如何理解服务注册和服务发现
- p51 thinkpad 拆解_ThinkPad P51硬盘更换指南(图解)
- 51单片机堆栈深入剖析
- Could not set property 'xxxxxx' of 'xxxxxx' with value 'xxxxx'
- 李善友:中国可以活3年以上的企业不到10%
- 给OneNote2016安装NoteHighlight2016, 插件无法加载问题【已解决】