Python自然语言处理
书籍作者:雅兰·萨纳卡 |
ISBN:9787111606703 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:3333 |
创建日期:2021-02-14 |
发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
人工智能研究中一个重要的部分就是实现机器设备和人的无障碍交互,而人类自然常用和精确的交互方式便是使用语言和文字。因此,从一定程度上说,计算设备对自然语言处理的能力,决定了其人工智能的智力。
《Python自然语言处理》致力于总体介绍自然语言处理领域中的一些概念、术语、应用任务、算法和技术、系统搭建方法等,非常适合作为对自然语言处理任务感兴趣的初学者进入该领域的入门书籍。
你能学习到:
自然语言处理应用开发中的Python编程方法,理解自然语言数据属性和语料分析处理的方法。
使用Python类库处理自然语言,像NLTK、Polyglot、SpaCy、Standford CoreNLP等。
特征工程中特征抽取和特征选择的方法。
深度学习中向量化方法的优势。
更好地理解规则式系统的架构。
使用自然语言处理中的有监督和无监督机器学习方法进行训练与调优。
为自然语言处理和自然语言生成问题找到合适的深度学习方法。
作者简介
雅兰·萨纳卡,是一名数据科学领域的研究者和科学家。她喜欢解决和数据科学相关的问题。她希望能够使用数据科学和人工智能技术,让这个世界变得更美好。她的研究兴趣包括自然语言处理、机器学习、深度学习和大数据分析。除了是一名数据科学家之外,Jalaj也是一位社会活动家、旅行家和大自然爱好者。
前言
本书的名字会给你带来广阔的联想。作为读者,你会从头学习关于自然语言处理的方方面面。本书用了非常简单的语言来具体阐述NLP中的概念,许多真实有趣的实用样例会加深你对该领域的理解。通过实现这些样例,能提升你的NLP技能。
现在,我来回答一些经常会被问起的NLP领域的问题。这些问题启发了我来写这样一本书。对我来说,让所有读者能够理解我写这本书的初衷,是一件非常重要的事情。
第一个经常被问起的问题是:什么是自然语言处理?第二个是:为什么在开发自然语言处理程序时主要会用Python呢?最后一个重要的问题是:在学习自然语言处理的时候,有哪些资源可用?现在,让我们来看一下答案!
第一个问题的答案是,自然语言,简单来说,就是你所说的、写的、读的或理解的人类自然的语言,同时是交流的媒介。我们使用计算机算法、数学概念、统计技术来处理这些语言,使得机器能够像人一样理解。
现在来回答第二个问题。最简单和直接的原因是Python有大量的库,这些库在你开发自然语言处理应用程序的时候,会让事情变得简单。第二个原因是,如果你有C或是C++的编程经验,你不用再担心会遇到内存泄漏的问题。Python的解释器会为你解决这个问题,你要做的仅仅是关注主要的编程过程。除此之外,Python是一个程序员友好的语言,与其他面向对象的语言比起来,你只需要写少量的代码就可以做更多的事情。因此,所有的这些事实都驱动着人们使用Python来开发自然语言处理应用程序以及其他数据科学相关的应用,以进行更快的建模。
最后一个问题对我来说很重要,因为我经常向朋友解释上面的答案,他们听完后会想学Python,但是有哪些可用的资源呢?我通常会推荐一些书籍、博客、YouTube上的视频,还有Udacity、Coursera等教育平台。但是几天以后,他们还会来问我有没有一个单一的学习资源——书籍或博客。不幸的是,答案是否定的。在那个时刻,我意识到兼顾所有这些资源对他们来说是比较困难的事情。这种痛苦的领悟成了我写作这本书的动力。
所以在这本书里,我尝试着覆盖大多数自然语言处理中的必要知识,这些对每个人来说都是有用的。一个好消息是我提供了很多实用的Python样例,这样读者便既能从理论角度,也能从应用角度出发理解这些概念。阅读、理解、编码是这本书的三个主要部分,会帮助读者轻松学习。本书内容
第1章提供了对自然语言处理和自然语言处理领域其他分支的介绍。我们会看到构建自然语言处理应用程序的各个阶段,并讨论nltk安装的问题。
第2章展示了语料分析的各个方面。我们将会看到不同类型的语料和语料中展现的数据属性,会接触到各种语料格式,像CSV、JSON、XML、LibSVM等。还会看到关于网页爬取的样例。
第3章会帮助你理解自然语言里面最基本的东西,也就是语言学。我们会看到词法分析、句法分析、语义分析、消歧等诸多概念。也会使用nltk来实际地理解这些概念。
第4章会帮助你弄懂各种不同类型的预处理技术以及该怎样定制它们。我们将会看到预处理的各个阶段,像数据准备、数据处理、数据转换。除了这些,你还会从实际应用的角度来理解预处理。
第5章是自然语言处理应用程序里最核心的部分。我们会看到不同的算法和工具是怎样用于生成机器学习算法的输入的,它们会被用来开发自然语言处理应用程序。我们也会理解特征工程里的统计概念,然后会对这些工具和算法进行定制化开发。
第6章会让你理解处理语义问题时遇到的自然语言处理概念。我们会看到word2vec、doc2vec、GIoVe等,以及从《权力的游戏》数据集中获得向量的一些word2vec的实际应用。
第7章会给出很多构建一个规则式系统的细节,以及开发类似自然语言处理系统时,需要牢记的方方面面。我们会看到制定规则的过程和编码规则的过程,也会看到怎样开发一个基于模板的聊天机器人。
第8章会提供给你一些新的机器学习技术。我们会看到用于开发自然语言处理应用程序的各种机器学习算法,也会使用机器学习方法实现一些强大的自然语言处理应用程序。
目录
译者序
推荐序
作者介绍
关于审校人员
前言
第1章 引言
1.1 自然语言处理
1.2 基础应用
1.3 高级应用
1.4 NLP和Python相结合的优势
1.5 nltk环境搭建
1.6 读者提示
1.7 总结
第2章 实践理解语料库和数据集
2.1 语料库
2.2 语料库的作用
2.3 语料分析
2.4 数据属性的类型
2.4.1 分类或定性数据属性
2.4.2 数值或定量数据属性
2.5 不同文件格式的语料
2.6 免费语料库资源
2.7 为NLP应用准备数据集
2.7.1 挑选数据
2.7.2 预处理数据集
2.8 网页爬取
2.9 总结
第3章 理解句子的结构
3.1 理解NLP的组成
3.1.1 自然语言理解
3.1.2 自然语言生成
3.1.3 NLU和NLG的区别
3.1.4 NLP的分支
3.2 上下文无关文法
3.3 形态分析
3.3.1 形态学
3.3.2 词素
3.3.3 词干
3.3.4 形态分析
3.3.5 词
3.3.6 词素的分类
……
第4章 预处理
第5章 特征工程和NLP算法
第6章 高级特征工程和NLP算法
第7章 规则式自然语言处理系统
第8章 自然语言处理中的机器学习方法
第9章 NLU和NLG问题中的深度学习
第10章 高级工具
第11章 如何提高你的NLP技能
第12章 安装指导