Ourren

关注技术,记录生活.

NLTK笔记:简介与环境搭建

| 留言

NLP与NLTK

在详细介绍nltk之前,我感觉有必要区分下NLP与NLTK的关系:

NLP是指自然语言处理,英文(Natural Language Processing),该技术主要解决计算机自动识别和处理人类语言,如何让计算机能够理解我们的语言,从而减少人类的工作量。个人认为其应用场景有如下几点:

  1. 个性推荐,需要计算两类物品的相识度和相关度;
  2. 情感分析,用户对商品的评价,网民对帖子或者文章的态度;
  3. 关键字提取,对网络商品的标题提取并分类,自动摘要;
  4. 其它,待补充;

并且该相关技术最近几年热度非常高,计算机行业内研究的人也越来越多,但是不同语言的处理差异很大,比如英文的各种语言处理库基本上已经成熟,而中文的语言处理则发展缓慢;

而NLTK是斯坦福大学开发的处理自然语言的python库,(斯坦福大学自然语言处理组是世界知名的NLP研究小组,目前course上他们的课程暂时还没看开放),因此我们可以借助NLTK库的一些功能来处理各种事情。事实上NLTK提供的功能相当全,主要包含如下功能:

  1. 语料库:提供了经典书籍,词典,演讲,网络语言,论坛等各种语料库;
  2. 断句与分词:可以方便地对文章,段落进行分词;
  3. 词频统计:计算句子或者文章中每个单词的频率;
  4. 同义词与词态:单词的同义词「WordNet」和单词词态「过去式,进行时等」的还原;
  5. 词性的标注:动词,名词,形容词和副词等的标注;
  6. 分类算法:例如常见的信息熵,朴素贝叶斯算法,最大信息熵模型等;
  7. 情感分析:当然这个其实是利用语料库和分类算法的一种应用场景;
  8. 其它:待补充;

说了这么多,NLTK其实主要是针对英语进行处理,对中文支持不行,其它博客也有改造NLTK支持中文的博文,NLP和NLTK的简介基本上就扯这么多。

环境搭建

NLTK的安装步骤非常简单,具体参照官网

#Mac/Unix
Install Setuptools: http://pypi.python.org/pypi/setuptools
Install Pip: run sudo easy_install pip
Install Numpy (optional): run sudo pip install -U numpy
Install NLTK: run sudo pip install -U nltk
Test installation: run python then type import nltk

需要注意的是上面只安装了nltk的主库,语料库这些都没有安装,可以通过如下的命令安装语料库,当然这些语料库也可以在需要的时候再进行安装,在python命令行中运行如下命令:

import nltk  
nltk.download()  

然后会弹出下载对话框,需要你选择语料库进行下载。在这里补充说明下什么是语料库:所谓语料库就是别人或者官方收集的测试数据,而这些数据一般已经进行了特殊处理,方便你在处理各种数据的时候可以参照这些语料库进行分析,当然你也可以加入自己的语料库。