python自然语言处理入门教程(一)

原创 2015年07月06日 16:30:19

1、NLTK自然语言处理工具包

1.1 NLTK简介

NLTK是构建Python程序与人类语言数据工作的主要平台。它提供了易于使用的界面,以超过50语料库和词汇资源,如WordNet的,连同一套文字处理库进行分类,标记化,词干,标记,分析和语义推理,和活跃的论坛。

得益于动手指南介绍编程基础在旁边计算语言学课题,NLTK适合语言学家,工程师,学生,教育工作者,研究人员和行业用户的一致好评。 NLTK可用于Windows,Mac OS X和Linux。最重要的是,NLTK是一个免费,开源,社区驱动的项目。


1.2 windows下NLTK环境搭建

1.2.1 python安装

官网:https://www.python.org/

选择 2.7x版本进行下载,不建议下载3.X版本,因为现在很多python代码库还是基于旧的版本编写的,所以不建议使用3.X版本。安装完成后,使用打开自带的IDLE,结果如下:


Note:

推荐编写python代码好用的IDE:pycharm,上手比较简单,文档较齐全

下载地址:http://www.jetbrains.com/pycharm/

附几个PyCharm4注册码:

name :newasp

=====LICENSE BEGIN =====

09086-12042010

00001EBwqd8wkmP2FM34Z05iXch1Ak

KI0bAod8jkIffywp2WalWZejIQ6AAu

AVVPbzHZpOvqvdJFHEBbvbXW2t1jQI

=====LICENSE END =====

 

name :newasp

=====LICENSE BEGIN =====

58877-12042010

00002h9ii68IdWfbdJz2UraWcsVxFY

!w1WD9cwRDMoW2pOUeC0WBqLAMo5PX

lQ7cE8qMukEYuWY6!EnjYWn!2EDTio

=====LICENSE END =====

 

name :newasp

=====LICENSE BEGIN =====

46753-12042010

000013xjAPHl95oQRCb"KnLsrXfWYa

L3aYClCOtBVysdtzBBPU5XCB3QUjLC

T1yMRB7YNC0d15A2cbwXTwXCwCjJEP

=====LICENSE END =====

 

name :newasp

=====LICENSE BEGIN =====

62458-12042010

00002r53OfrSCVqjsI0zdG5E4pMM5Z

dBAGbxVOX!OPwIkBqunfKf2zQDgECf

XrLosbjBEp!2JfFuydkblmqWPevvB0

===== LICENSE END =====

1.2.2 NLTK 安装

  • 下载NLTK及安装

官方网站:http://www.nltk.org/ 下载网址:https://pypi.python.org/pypi/nltk

由于是在windows环境下安装nltk,选择:

下载完成后,正常安装,在python安装目录下的能找到相应的NLTK库,作者机器路径如下:

C:\Python27\Lib\site-packages\nltk

  • 测试

安装完成后,进行测试:


  • 下载NLTK数据源

输入import nltk如果没有出现异常,则表明nltk已经安装正确,但还需要下载相应的训练数据源,使用nltk.download()进行下载:


得到结果如图:


选择all,等待下载结束即可。

Note:

  • 可能出现的问题:ImportError:No module named yaml

该问题是由于没有安装pyyaml,下载地址:http://pyyaml.org/download/pyyaml/PyYAML-3.10.win32-py2.7.exe

下载安装即可。

1.3  NLTK自带方法进行自然语言处理

1.3.1   NLTK进行分句

函数:

sent_tokenize(text,language='english')

参数:

text : 将要被分割的语句文本

         language:Punkt分句程序指定模型名字,可忽略

返回值:

list类型:使用NTLK推荐分句程序得到的结果

示例:


1.3.2   NLTK进行分词

函数:

         word_tokenize(text,language='english')

参数:

         text:将要进行分词的句子文本

         language:Punkt分词程序指定模型名字,可忽略

返回值:

         list类型,使用NTLK推荐分词程序得到的结果

示例:

1.3.3   NLTK词性标注

词性标注的结果含义可参照作者的另一篇博文:(自然语言处理文档系列)Penn Treebank词性标记集

函数:

         pos_tag(tokens,tagset=None)

参数:

         tokens:list(str)类型,将要被标注单词的序列

         tagset:可忽略

返回值:

         list(tuple(str,str)),进行词性标注后的结果

示例:


1.3.4   NLTK命名实体识别(NER)

函数:

         ne_chunk(tagged_tokens,binary=False)

         使用推荐的NER工具包进行处理,处理之前需要利用词性标注的结果

参数:

         tagged_tokens:list(tuple(str,str)),NLTK进行词性标注的结果

         binary:

返回值:

示例:


1.3.5   句法分析

nltk没有好的parser,推荐使用stanfordparser,但是nltk有很好的树类,该类用list实现。可以利用stanfordparser的输出构建一棵python的句法树。关于stanfordparser在第3章中有详细介绍。

 

Note:



python自然语言处理入门教程(二)将详细介绍使用python调用Stanford NLP工具包以及如何使用该工具包进行自然语言处理任务,请继续关注~


相关文章推荐

自然语言处理环境搭建,就是这么简单–(手把手教程)

最近看了一些关于自然语言处理方面的书,对其很感兴趣,在昨天晚上搞到了深夜,总算功夫不负有心人,现在基础环境已经搭建完成,闲言少叙,现将搭建的具体过程和遇到的问题分享给大家。 基础环境:windo...

Python与自然语言处理(一)搭建环境

已经有Python环境,并安装了NumPy, Matplotlib 安装SnowNLP 下载地址 :https://pypi.python.org/pypi/snownlp/0.12.2...

教程 | 理解和实现自然语言处理终极指南(附Python代码)

 教程 | 理解和实现自然语言处理终极指南(附Python代码) 时间 2017-02-16 14:41:39 机器之心 原文  http://www.jiqizhixin....

《使用Python进行自然语言处理》学习笔记五

第三章 加工原料文本 3.1 从网络和硬盘访问文本 1 电子书 古腾堡项目的其它文本可以在线获得, 整个过程大概需要几十秒(实验室网络不行是硬伤) 使用raw()可以得到原始的字符串。但是raw得到...

利用NLTK在Python下进行自然语言处理

自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。自然语言工具箱(NLTK,Natural Language Toolkit)是一个基于Python语言的类库,它也是当前最为流行的自然语言编...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

《使用Python进行自然语言处理》学习笔记三

第二章 获得文本语料和词汇资源 2.1 获取文本语料库 1 古腾堡语料库 Project Gutenberg的语料库包含 >>>import nltk >>>from n...

python自然语言处理-学习笔记(一)

打算用python写点东西,机箱正好看到

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Python与自然语言处理(三):Tensorflow基础学习

TensorFlow实现简单神经网络,并对iris花的种类进行预测
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python自然语言处理入门教程(一)
举报原因:
原因补充:

(最多只允许输入30个字)