《Python自然语言处理》

基本信息

作者: (美)Steven Bird    Ewan Klein    Edward Loper

出版社:人民邮电出版社

ISBN:9787115333681

上架时间:2014-6-13

出版日期:2014 年6月

开本:16开

页码:508

版次:1-1

所属分类:计算机 > 软件与程序设计 > Python

更多关于》》》《Python自然语言处理》

内容简介

书籍

计算机书籍

自然语言处理(natural language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能够实现人与计算机之间用自然语言进行有效通信的各种理论和方法,涉及所有用计算机对自然语言进行的操作。

《python自然语言处理》是自然语言处理领域的一本实用入门指南,旨在帮助读者学习如何编写程序来分析书面语言。本书基于python编程语言以及一个名为nltk的自然语言工具包的开源库;但并不要求读者有python编程的经验。全书共11章,按照难易程度顺序编排。第1章到3章介绍了语言处理的基础,讲述如何使用小的python程序分析感兴趣的文本信息。第4章讨论结构化程序设计,以巩固前面几章中介绍的编程要点。第5章到第7章介绍语言处理的基本原理,包括标注、分类和信息提取等。第8章到第10章介绍了句子解析、句法结构识别和句意表达方法。第11章介绍了如何有效管理语言数据。后记部分简要讨论了nlp领域的过去和未来。

《python自然语言处理》的实践性很强,包括上百个实际可用的例子和分级练习。本书可供读者用于自学,也可以作为自然语言处理或计算语言学课程的教科书,或是人工智能、文本挖掘、语料库语言学等课程的补充读物。

作译者

Steven Bird是墨尔本大学计算机科学和软件工程系副教授,宾夕法尼亚大学语言学数据联盟高级研究助理。

Ewan Klein是爱丁堡大学信息学院语言技术教授。

Edward Loper是毕业于宾夕法尼亚大学专注于机器学习的自然语言处理方向的博士,现在在波士顿的BBN Technologies担任研究员。

目录

《python自然语言处理》

第1章 语言处理与python 1

1.1 语言计算:文本和词汇 1

1.2 近观python:将文本当做词链表 10

1.3 计算语言:简单的统计 17

1.4 回到python:决策与控制 24

1.5 自动理解自然语言 29

1.6 小结 35

1.7 深入阅读 36

1.8 练习 37

第2章 获得文本语料和词汇资源 41

2.1 获取文本语料库 41

2.2 条件频率分布 55

2.3 更多关于python:代码重用 60

2.4 词典资源 63

2.5 wordnet 72

2.6 小结 78

2.7 深入阅读 79

2.8 练习 80

第3章 处理原始文本 84

3.1 从网络和硬盘访问文本 84

3.2 字符串:最底层的文本处理 93

3.3 使用unicode进行文字处理 100

3.4 使用正则表达式检测词组搭配 105

3.5 正则表达式的有益应用 109

3.6 规范化文本 115

3.7 用正则表达式为文本分词 118

3.8 分割 121

3.9 格式化:从链表到字符串 126

3.10 小结 132

3.11 深入阅读 133

3.12 练习 134

第4章 编写结构化程序 142

4.1 回到基础 142

4.2 序列 147

4.3 风格的问题 152

4.4 函数:结构化编程的基础 156

4.5 更多关于函数 164

4.6 程序开发 169

4.7 算法设计 175

4.8 python库的样例 183

4.9 小结 188

4.10 深入阅读 189

4.11 练习 189

第5章 分类和标注词汇 195

5.1 使用词性标注器 195

5.2 标注语料库 197

5.3 使用python字典映射词及其属性 206

5.4 自动标注 216

5.5 n-gram标注 221

5.6 基于转换的标注 228

5.7 如何确定一个词的分类 230

5.8 小结 233

5.9 深入阅读 234

5.10 练习 235

第6章 学习分类文本 241

6.1 监督式分类 241

6.2 监督式分类的举例 254

6.3 评估 258

6.4 决策树 263

6.5 朴素贝叶斯分类器 266

6.6 最大熵分类器 271

6.7 为语言模式建模 275

6.8 小结 276

6.9 深入阅读 277

6.10 练习 278

第7章 从文本提取信息 281

7.1 信息提取 281

7.2 分块 284

7.3 开发和评估分块器 291

7.4 语言结构中的递归 299

7.5 命名实体识别 302

7.6 关系抽取 306

7.7 小结 307

7.8 深入阅读 308

7.9 练习 308

第8章 分析句子结构 312

8.1 一些语法困境 312

8.2 文法的用途 316

8.3 上下文无关文法 319

8.4 上下文无关文法分析 323

8.5 依存关系和依存文法 332

8.6 文法开发 336

8.7 小结 343

8.8 深入阅读 344

8.9 练习 344

第9章 建立基于特征的文法 349

9.1 文法特征 349

9.2 处理特征结构 359

9.3 扩展基于特征的文法 367

9.4 小结 379

9.5 深入阅读 380

9.6 练习 381

第10章 分析语句的含义 384

10.1 自然语言理解 384

10.2 命题逻辑 391

10.3 一阶逻辑 395

10.4 英语语句的语义 409

10.5 段落语义层 422

10.6 小结 428

10.7 深入阅读 429

10.8 练习 430

第11章 语言数据管理 434

11.1 语料库结构:案例研究 434

11.2 语料库生命周期 439

11.3 数据采集 443

11.4 使用xml 452

11.5 使用toolbox数据 459

11.6 使用olac元数据描述语言资源 463

11.7 小结 466

11.8 深入阅读 466

11.9 练习 467

后记 470

参考文献 476

本图书信息来源:互动出版网

《Python自然语言处理》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. 图学ES6-3.变量的解构赋值

  2. php 导出excel文件

    out_excel.php <?phperror_reporting(E_ALL);date_default_timezone_set('Asia/Shanghai');require_once ...

  3. 洛谷P3398 仓鼠找sugar [LCA]

    题目传送门 仓鼠找sugar 题目描述 小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n.地下洞穴是一个树形结构.这一天小仓鼠打算从从他的卧室(a)到餐厅(b),而 ...

  4. Javascript数组Array的方法总结!

    1.join() 将数组的元素组成一个字符串,以分隔符连接,如果省略则默认逗号为分隔符,该方法只接收一个参数:分隔符.此方法不会改变原数组. let arr = [1,2,3,4] let arr1 ...

  5. MIT-6.828-JOS-lab4:Preemptive Multitasking

    Lab 4: Preemptive Multitasking tags: mit-6.828, os 概述 本文是lab4的实验报告,主要围绕进程相关概念进行介绍.主要将四个知识点: 开启多处理器.现 ...

  6. Android-序列化-Serializable/Parcelable

    Android-序列化-Serializable/Parcelable 学习自 <Android开发艺术探索> 序列化漫谈 IPC的首要目的是传输数据,当然不能仅仅是传输一些基础数据了,毕 ...

  7. JavaScript中的Map、Set及其遍历

    Map Map是一组键值对的结构,具有极快的查找速度. Map的定义. //空map设值key-value var m = new Map(); m.set("XiaoMing", ...

  8. zk节点扩充

    zk节点扩充,从3个节点扩充为7个节点,需要先安装4个节点,在将4个节点的配置进行修改,然后在修改 原有的3个节点.至此完成对zk的扩充实现,在此做个记录. zk节点的顺序,与对应zk与所在序列保持一 ...

  9. java 获取当前方法名

    String _thisMethodName = new Exception().getStackTrace()[0].getMethodName();// 获得当前的方法名

  10. UOJ.41.[清华集训2014]矩阵变换(稳定婚姻)

    题目链接 稳定婚姻问题:有n个男生n个女生,每个男/女生对每个女/男生有一个不同的喜爱程度.给每个人选择配偶. 若不存在 x,y未匹配,且x喜欢y胜过喜欢x当前的配偶,y喜欢x也胜过y当前的配偶 的完 ...