欢迎来到天天文库
浏览记录
ID:12061833
大小:163.34 KB
页数:4页
时间:2018-07-15
《用python进行自然语言处理——图文教程(三)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、用Python进行自然语言处理(三)2014.7.302.2条件分布概率在教程(一)中介绍了频率分布,给定某个词汇或其他项目的链表变量mylist,FreqDist(mylist)会计算链表中每个项目出现的次数。而条件频率分布是频率分布的集合,每个频率分布有一个不同的“条件”,这个条件通常是文本的类别。在上一节中,我们使用NLTK的ConditionalFreqDist数据类型实现的,FreqDist()是以一个简单的链表作为输入,ConditionalFreqDist是以一个配对的链表作为输入。上面的例子只看两个文体:新闻和言情,对于每个文体,遍历文体中的每个词以产生文体与词的配对
2、,通过genre_word[]显示出来。使用此配对链表创建一个ConditionalFreqDist,并将它保存在一个变量cfd中,通过cfd[]来访问这两个条件,每一个都只是一个频率分布。使用双连词生成随机文本可以使用条件频率分布创建一个双连词表,bigrams()函数接受一个词汇链表,并建立一个连续的词对链表。2.3使用文本编辑器创建程序在Python交互式解释器中输入一条命令就执行,如果要组织多条程序,然后一次运行,,可以使用文本编辑器执行。通过“文件”菜单打开一个新的窗口,或者使用快捷键“Ctrl+N”。使用.py后缀名保存文件。函数Python语言的函数同其他语言一样,参数
3、,返回值,局部变量等。模块随着你创建自定义的函数越多越多,有以下代码可以重复使用,定义过的函数不必重新复制,可以将它们收集在一个单独的地方,形成一个函数模块,使用的时候导入即可。Frompython.py(模块名)importfunction(函数名)2.4词典资源词典或词典资源是一个词和或短语以及一些相关信息的几个,如词性和词意定义等相关信息,复杂的词典资源包括字词汇项内和跨词项的复杂的结构。看一下NLTK中的一些词汇资源:词汇列表语料库NLTK包括一些仅仅包含词汇列表的语料库,被一些拼写检查程序使用,可以用它来寻找文本预料中不寻常的或拼写错误的词汇。还有一些停用词语料库,就是那些
4、高频词汇,停用词通常没设么词汇内容,反而会使区分文本变得困难。另一个词汇列表是名字语料库,下面的例子找出同时出现在两个文件中的名字即性别暧昧的名字:如下图所示,此图显示男性和女性名字的结尾字母,大多数以a,e或i结尾的名字是女性,以h和l结尾的男性和女性同样多,以K,o,r,s和t结尾的更可能是男性。发音的词典比较词汇表格词典的另一个例子是比较词表,NLTK中包含了所谓的斯瓦迪士核心词列表,通过在entries()方法中指定一个语言链表来访问多语言中的同源词,更进一步,我们可以用函数dict()把它转换成一个简单的词典。通过添加其他源语言,我们可以让我们这个简单的翻译器更为有用,让我
5、们使用dict()函数把德语—英语和西班牙语—英语对相互转换成一个词典,然后用这些添加的映射更新我们原来的翻译词典:词汇工具:Toolbox和Shoebox一个Toolbox文件由一个大量条目的几个组成,其中每个条目由一个或多个字段组成,大多数字段都是可选的或重复的,这意味着这个词汇资源不能作为一个表格或电子表格来处理。2.5WordNetWordNet是面向语义的英语词典,类似于传统词典,但具有更丰富的结构,NLTK中包括英语WordNet。意义与同义词WordNe的层次结构WordNet的同义词集对应于抽象的概念,它们并不总是有对应的英语词汇,这些概念在层次结构中相互联系在一起,
6、一些概念也很一般,如实体,状态,事件。这些被称为独一无二的根同义词集。WordNet概念层次片段,每个阶段对应一个同义词集,边表示上位词和下位词关系,即上级概念和从属概念的关系。更多的词汇关系上位词和下位词被称为词汇关系。语义相似度
此文档下载收益归作者所有