基本信息

  • 出版社 : 人民邮电出版社; 第1版 (2017年8月1日)
  • 出版日期 : 2017年8月1日
  • 品牌 : 异步社区
  • 语言 : 简体中文
  • 文件大小 : 9539 KB
  • 纸书页数 : 208页
  • Deepti Chopra (作者), Nisheeth Joshi (作者), Iti Mathur (作者), 王威 (译者)
  • 下载格式:azw3、epub、mobi 

内容简介

  自然语言处理是计算语言学和人工智能之中与人机交互相关的领域之一。
  本书是学习自然语言处理的一本综合学习指南,介绍了如何用Python实现各种NLP任务,以帮助读者创建基于真实生活应用的项目。全书共10章,分别涉及字符串操作、统计语言建模、形态学、词性标注、语法解析、语义分析、情感分析、信息检索、语篇分析和NLP系统评估等主题。
  本书适合熟悉Python语言并对自然语言处理开发有一定了解和兴趣的读者阅读参考。

作者简介

  对自然语言处理理论和算法感兴趣的读者,Python程序员对自然语言处理理论和算法感兴趣的读者,Python程序员对自然语言处理理论和算法感兴趣的读者,Python程序员

前言

  前言
  在本书中,我们将学习如何使用Python实现各种有关自然语言处理的任务,并了解一些有关自然语言处理的当下和新进的研究主题。本书是一本综合的进阶指南,以期帮助学生和研究人员创建属于他们自己的基于真实生活应用的项目。
  本书涵盖内容
  第1章,字符串操作,介绍如何执行文本上的预处理任务,例如切分和标准化,此外还介绍了各种字符串匹配方法。
  第2章,统计语言建模,包含如何计算单词的频率以及如何执行各种语言建模的技术。
  第3章,形态学:在实践中学习,讨论如何开发词干提取器、形态分析器以及形态生成器。
  第4章,词性标注:单词识别,解释词性标注以及有关n-gram方法的统计建模。
  第5章,语法解析:分析训练资料,提供关于Tree bank建设、CFG建设、CYK算法、线图分析算法以及音译等概念的相关信息。
  第6章,语义分析:意义很重要,介绍浅层语义分析(即NER)的概念和应用以及使用Wordnet执行WSD。
  第7章,情感分析:我很快乐,提供可以帮助你理解和应用情感分析相关概念的信息。
  第8章,信息检索:访问信息,将帮助你理解和应用信息检索及文本摘要的概念。
  第9章,语篇分析:理解才是可信的,探讨语篇分析系统和基于指代消解的系统。
  第10章,NLP系统评估:性能分析,谈论NLP系统评估相关概念的理解与应用。
  本书的阅读前提
  本书中所有的代码示例均使用Python 2.7或Python 3.2以上的版本编写。不管是32位机还是64位机,都必须安装NLTK(Natural Language Toolkit,NLTK)3.0包。操作系统要求为Windows、Mac或UNIX。
  本书的目标读者
  本书主要面向对Python语言有一定认知水平的自然语言处理的中级开发人员。
  排版约定
  本书中用不同的文本样式来区分不同种类的信息。下面给出了这些文本样式的示例及其含义。
  文本中的代码单词、数据库表名、文件夹名称、文件名、文件扩展名、路径名、虚拟URL、用户输入以及推特用户定位表示如下:
  “对于法语文本的切分,我们将使用french.pickle文件。”
  代码块的样式如下所示:
  >>> import nltk
  >>> text=” Welcome readers.I hope you find it interesting.Please do
  reply.”
  >>> from nltk.tokenize import sent_tokenize
  此图标表示警告或需要特别注意的内容。
  此图标表示提示或者技巧。
  读者反馈
  我们始终欢迎来自读者的反馈。请告诉我们你对本书的看法——喜欢或者不喜欢的部分。你的意见对我们来说非常重要,这将有助于我们开发出读者真正感兴趣的东西。
  一般的反馈,你只需发送邮件至feedback@packtpub.com,并在邮件主题中写清楚书名。
  如果你擅长某个主题,并有兴趣编写一本书或者想为一本书做贡献,请参考我们的作者指南,网址www.packtpub.com/authors。
  客户支持
  既然你已经是Packt引以为傲的读者了,为了能让你的购买物超所值,我们还为你准备了以下内容。
  下载示例代码
  你可以用你的//www.packtpub.com 账户在上面下载本书配套的示例代码。如果你是在别的地方购买的本书,你可以访问//www.packtpub.com/support 并注册,我们会用邮件把代码文件直接发给你。
  你可以按照以下步骤下载代码文件。
  1.使用你的邮箱地址和密码登录或注册我们的网站。
  2.将鼠标指针移至顶端的SUPPORT选项卡上。
  3.单击Code Downloads & Errata。
  4.在搜索框中输入书名。
  5.选择你需要下载代码文件的图书。
  6.在下拉菜单里选择你从哪里购买的这本书。
  7.单击Code Download。
  你也可以通过单击Packt出版社官网上关于本书的网页中的“Code Files”按钮来下载代码文件。你可以通过在搜索框中输入书名进入到这个页面。请注意你需要登录你的Packt账户。
  一旦下载示例代码文件后,请确保使用以下最新版本的工具解压文件夹:
  ·WinRAR / 7-Zip for Windows。
  ·Zipeg / iZip / UnRarX for Mac。
  ·7-Zip / PeaZip for Linux。
  本书的代码包也托管在Github上,网址是https://github.com/PacktPublishing/ Mastering-Natural-Language-Processing-with-Python。我们也有来自于我们丰富的图书和视频目录的其他代码包,地址是https://github.com/PacktPublishing/。欢迎访问!
  勘误
  虽然我们竭尽全力保证图书内容的准确性,但错误仍在所难免。如果你在我们的任何一本书里发现错误,可能是文字的或者代码中的错误,都烦请报告给我们,我们将不胜感激。这样不仅使其他读者免于困惑,也能帮助我们不断改进后续版本。如果你发现任何错误,请访问//www.packtpub.com/submit-errata报告给我们,选择相应图书,单击“Errata Submission Form”链接,并输入勘误详情。一旦你提出的错误被证实,你的勘误将被接收并上传至我们的网站,或加入到已有的勘误列表中。
  若要查看之前提交的勘误,请访问https://www.packtpub.com/books/content/support 并在搜索框中输入书名,所需的信息将会展现在“Errata”部分的下面。
  反盗版
  在互联网上,所有媒体都会遭遇盗版问题。对Packt来说,我们严格保护版权和许可证。如果你在互联网上发现我们出版物的任何非法副本,请立即向我们提供侵权网站的地址和名称,以便我们采取补救措施。
  请通过copyright@packtpub.com联系我们,同时请提供涉嫌侵权内容的链接。
  非常感激你帮助保护我们的作者,让我们尽力提供更有价值的内容。
  问题
  如果你对本书有任何疑问,都可以通过questions@packtpub.com 邮箱联系我们,我们将尽最大努力为你答疑解惑。

精彩书摘

  自然语言处理(Natural Language Processing,NLP)关注的是自然语言与计算机之间的交互。它是人工智能(Artificial Intelligence,AI)和计算语言学的主要分支之一。它提供了计算机和人类之间的无缝交互并使得计算机能够在机器学习的帮助下理解人类语言。在编程语言(例如C、C++、Java、Python等)里用于表示一个文件或文档内容的基础数据类型被称为字符串。在本章中,我们将探索各种可以在字符串上执行的操作,这些操作将有助于完成各种NLP任务。
  本章将包含以下主题:
  ·文本切分。
  ·文本标准化。
  ·替换和校正标识符。
  ·在文本上应用Zipf定律。
  ·使用编辑距离算法执行相似性度量。
  ·使用Jaccard系数执行相似性度量。
  ·使用Smith Waterman算法执行相似性度量。
  切分可以认为是将文本分割成更小的并被称作标识符的模块的过程,它被认为是NLP的一个重要步骤。
  当安装好NLTK包并且Python的交互式开发环境(IDLE)也运行起来时,我们就可以将文本或者段落切分成独立的语句。为了实现切分,我们可以导入语句切分函数,该函数的参数即为需要被切分的文本。sent_tokenize函数使用了NLTK包的一个叫作PunktSentenceTokenizer类的实例。基于那些可以标记句子开始和结束的字母和标点符号,NLTK中的这个实例已经被训练用于对不同的欧洲语言执行切分。
  现在,让我们来看看一段给定的文本是如何被切分为独立的句子的:
  >>> import nltk
  >>> text=” Welcome readers.I hope you find it interesting.Please do
  reply.”
  >>> from nltk.tokenize import sent_tokenize
  >>> sent_tokenize(text)
  [’ Welcome readers.’,’I hope you find it interesting.’,’Please do
  reply.’]
  这样,一段给定的文本就被分割成了独立的句子。我们还可以进一步对这些独立的句子进行处理。
  要切分大批量的句子,我们可以加载PunktSentenceTokenizer并使用其tokenize()函数来进行切分。下面的代码展示了该过程:
  >>> import nltk
  >>> tokenizer=nltk.data.load(’tokenizers/punkt/english.pickle’)
  >>> text=” Hello everyone.Hope all are fine and doing well.Hope you
  find the book interesting”
  >>> tokenizer.tokenize(text)
  [’ Hello everyone.’,’Hope all are fine and doing well.’,’Hope you
  find the book interesting’]
  为了对除英文之外的其他语言执行切分,我们可以加载它们各自的pickle文件(可以在tokenizers/punkt里边找到),然后用该语言对文本进行切分,这些文本是tokenize()函数的参数。对于法语文本的切分,我们将使用如下的french.pickle文件:
  >>> import nltk
  >>> french_tokenizer=nltk.data.load(’tokenizers/punkt/french.pickle’)
  >>> french_tokenizer.tokenize(’Deux agressions en quelques jours,
  voilà ce qui a motivé hier matin le débrayage collège franco-
  britanniquede Levallois-Perret.Deux agressions en quelques jours,
  voilà ce qui a motivé hier matin le débrayage Levallois.L’équipe
  pédagogique de ce collège de 750 élèves avait déjà été choquée
  par l’agression,janvier,d’un professeur d’histoire.L’équipe
  pédagogique de ce collège de 750 élèves avait déjà été choquée par
  l’agression,mercredi,d’un professeur d’histoire’)
  [’Deux agressions en quelques jours,voilà ce qui a motivé hier
  matin le débrayage collège franco-britanniquedeLevallois-Perret.’,
  ’Deux agressions en quelques jours,voilà ce qui a motivé hier matin
  le débrayage Levallois.’,’L’équipe pédagogique de ce collège de
  750 élèves avait déjà été choquée par l’agression,janvier,d’un
  professeur d’histoire.’,’L’équipe pédagogique de ce collège de
  750 élèves avait déjà été choquée par l’agression,mercredi,d’un


资源下载付费资源价格2立即支付
支付后请复制提取码进入网盘下载,电子书格式请参考“基本信息”说明, 如未显示下载按钮,请刷新网页或扫码关注公众号联系客服处理。