WEB开发网
开发学院软件开发Python 可爱的 Python: 自然语言工具包入门 阅读

可爱的 Python: 自然语言工具包入门

 2007-03-29 12:38:25 来源:WEB开发网   
核心提示: 清单 3. 条件频率分布:对应每个首字母的单词长度>>> cf = ConditionalFreqDist()>>> for word in article['SUBTOKENS']:... cf[word['TEXT']

清单 3. 条件频率分布:对应每个首字母的单词长度

>>> cf = ConditionalFreqDist()
>>> for word in article['SUBTOKENS']:
...   cf[word['TEXT'][0]].inc(len(word['TEXT']))
...
>>> init_letters = cf.conditions()
>>> init_letters.sort()
>>> for c in init_letters[44:50]:
...   print "Init %s:" % c,
...   for length in range(1,6):
...     print "len %d/%.2f," % (length,cf[c].freq(n)),
...   print
...
Init a: len 1/0.03, len 2/0.03, len 3/0.03, len 4/0.03, len 5/0.03,
Init b: len 1/0.12, len 2/0.12, len 3/0.12, len 4/0.12, len 5/0.12,
Init c: len 1/0.06, len 2/0.06, len 3/0.06, len 4/0.06, len 5/0.06,
Init d: len 1/0.06, len 2/0.06, len 3/0.06, len 4/0.06, len 5/0.06,
Init e: len 1/0.18, len 2/0.18, len 3/0.18, len 4/0.18, len 5/0.18,
Init f: len 1/0.25, len 2/0.25, len 3/0.25, len 4/0.25, len 5/0.25,

条件频率分布在语言方面的一个极好应用是分析全集中的语段分布 —— 例如,给出一个特定的词,接下来最可能出现哪个词。当然,语法会带来一些限制;不过,对句法选项的选择的研究属于语义学、语用论和术语范畴。

词干提取(Stemming)

nltk.stemmer.porter.PorterStemmer 类是一个用于从英文单词中获得符合语法的(前缀)词干的极其便利的工具。这一能力尤其让我心动,因为我以前曾经用 Python 创建了一个公用的、全文本索引的搜索工具/库(见 Developing a full-text indexer in Python 中的描述,它已经用于相当多的其他项目中)。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:可爱 Python 自然语言

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接