一、nltk的文体分析及统计应用
Searching Text
from nltk.book import * text1.concordance("monstrous")
text4.dispersion_plot(["citizens", "democracy", "freedom", "duties", "America"])
2. Counting Vocabulary
len(text3) sorted(set(text3)) #构建词典
3. 词频统计 frequency distribution
fdist1 = FreqDist(text1) print(fdist1) print(fdist1("whale") fdist1.plot(50, cumulative=True) |
4. Collocations and Bigrams
text4.collocations() text8.collocations() |
二、NLP集成平台
三、NLP工具软件 Antconc
http://www.laurenceanthony.net/software/antconc/
Antconc
练习1:导入nltk的gutenberg,同时查找begin, bigan, bibun, beginning,bigins
练习2:查找一下单词: off
练习3:检索“the * of”这种结构
练习4:查找数字
练习5:查找15个字母以上的单词
练习6:检索“ed结尾的动词与ly结尾的副词的搭配”
例:提取语料库中所有的名词,只需键入*_NN(NN为名词标码)
练习7:导入brown语料库,检索love这个词的动词用法
练习8:找“介词+名词”这种结构
练习9:使用通配符检索
符号 | 意义 | 检索项 | 检索结果 |
* | 零个或多个字符 | book* | 提取所有以book打头的词,如book、books、booking、bookshop等 |
*book | 提取所有以book结尾的词,如book、notebook等 | ||
*book* | 可以同时提取包括以上两类词 | ||
+ | 零个或一个字符 | book+ | 提取所有以book打头的词,但之后有零个或一个字母,如book、books |
? | 任意一个字符 | ?ough | 提取所有以字母组合ough结尾的,但之前有一个字母的词,如cough、rough等 |
@ | 零个或一个词 | think@of
| 提取所有含有的词组,如think of、think highly of等 |
# | 任意一个词 | look# | 提取所有与look的搭配,如look after、look at等 |
练习10:提取搭配词表collocate。
look
make
get
ask
catch
turn
keep
练习11:提取搭配短语Clusters。练习词同上。
练习12:提取词频表wordlist。
练习13:
N字语词频表是指目标语料库的多字语频数表。例如,检索句子“This is a pen”的2字语词频表结果为:“this is”、“is a”、“a pen”。
N字语词频表的提取方法:a)进入clusters界面,b)选中 N-gram;c)设置N字语词频表的长度
练习14:词项重组---词簇化(lemmatizing)
词簇化是将同一词性的某个词的所有曲折变化形式作削尾处理,并归为一个词簇来计算频数。其好处是可以简约词频表并且引起对构词法的关注。对词频表进行词簇化的方法如下:在 界面生成词频表之后,拉下Tool Preference菜单,选择Lemma list options, 点击open 和load,上传lemma文档(点这里下载),最后点击Apply 。
练习15:提取关键词表
关键词表是指两个语料库的词频表相比,其中一个明显地高频于另一个的那部分词项表。
前一个称目标语料库,就是要分析keywords的文档;例如之前分析过的“中国蜜蜂养殖”。
后一个称参照语语料库,通常规模要大一些,以此来凸现目标语料库的一些特别高频词以浮现该语料库的主题或内容特色。例如google搜索出来的结果。