自然语言处理学习记录

1.利用 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade --ignore-installed nltk安装nltk语言包,随后利用nltk.download()下载文本信息。
2.text.concordance(“a”):在文本text中查找单词“a”出现的位置
text.similiar(“a”):查找文本中出现在与“a”相似的上下文中的词
common_contexts([“monstrous”],[“very”]):研究共用monstrous和very的上下文
set(text3):获取text3中的词汇表
sorted(set(text3)):对text3词汇表进行排序
text3.count(“smote”):计算text3中单词“smote”出现的次数
3.单词频率分布:
利用FreqDist函数来计算得文本当中每个单词所被使用的频率,并以字典的形式存放。
利用特性来选择出单词长度大于一定长度的词,python表达形式为:

V=set(text1)
long_words=[w for w in V if len(w)>15]

找出长度大于7并且出现频率大于7的单词:

fdisi5=FreqDist(text5)
sorted([w for w in set(text5) if len(w)>7 and fdist5[w]>7])

查看文本中词长的分布:

[len(w) for w in text1]
fdist=FreqDist([len(w) for w in text1])
fdist.key()
fdist.items()  //查看fdist中存放的字典信息
fdist.max()   //查看数量最多的单词长度
fdist[3]  //查看单词长度为3的单词数量
fdist.freq(3) //查看单词长度为3 的单词占总单词数的比例

自然语言处理1——语言处理与Python(内含纠错)

获得文本语料和词汇资源

欲解决问题:

  1. 什么是有用的文本语料库和词汇资源,如何使用python获取他们
  2. 哪些Python结构最适合这项工作
  3. 编写Python代码时如何避免重复工作

获取文本语料库:

NLTK中主要有古腾堡项目(gutenberg),网络和聊天文本(webtext),布朗语料库(brown),路透社语料库(reuters),就职演说语料库(inaugural),标注文本语料库.

from nltk.corpus import gutenberg
gutenberg.fileids()

载入自己的语料库
可以利用PlaintextCorpusReader/BracketParseCorpusReader函数:

from nltk.corpus import PlaintextCorpusReader
corpus_root='文件存放路径'
wordlists=PlaintextCorpusReader(corpus_root,'.*')//第二个参数可以输文件链表或匹配所有标识的模式,所有以test开头,.txt结尾的文件都可以用"test.*\.txt”来访问所有的文件
wordlist.fileids()
from nltk.corpus import BracketParseCorpusReader
corpus_root=r"文件所在路径"
file_pattern=r".*/wsj_.*\.mrg"//该参数为在文件夹中所包含的文件匹配,匹配处为wsj_
ptb=BracketParseCorpusReader(corpus_root,file_pattern)
ptb.fileids()

条件频率分布(ConditionalFreqDist)

以一个配对链表作为输入,前一个参数作为条件,输出的是与第一个条件参数所配对的第二个参数所出现的频率

你可能感兴趣的:(学习,NLP学习)