当前位置:主页 > 书籍配套资源 > Python配套资源
《Python自然语言处理》源码

《Python自然语言处理》源码

  • 更新:2022-02-09
  • 大小:95.11 MB
  • 类别:Python
  • 作者:雅兰·萨纳卡
  • 出版:机械工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

本书旨在回答三个问题:第一个,什么是自然语言处理;第二个,为什么大多数人会使用Python来开发自然语言处理应用程序;最后一个也很重要的问题,在学习自然语言处理的时候,有哪些Python相关资源可用。读完本书,读者便会对此了然于胸。

数据科学正极速地改变着这个世界和我们的商业领域,例如零售业、银行和金融服务业、出版业、制药业、制造业等。各种不同格式的数据以指数级别的速度在产生,包括定量的数据、定性的数据、有结构的数据、无结构的数据、语音数据、视频数据等。可以利用这些数据来避免风险和诈骗、改善用户体验、增加营收、精简作业等。
许多机构正在快速地拥抱数据科学并投资了很多高端的数据科学团队。在银行和金融保险领域从业12年多,我见证了该领域接受把数据分析当作生意来做,而不再仅仅是用来支持服务。这一点在金融科技和数字贷款领域尤其明显。

在Jalaj上大学时,我就已经认识她了,她的活力四射和强大的自我驱动力让我印象深刻。她的研究能力、毅力、投入程度、纪律性和快速掌握复杂概念的能力,让她在短短4年的企业工作中,取得了极大的成就。

Jalaj在数学和统计方面有很好的天赋,并且在面对学习工业界新出现的复杂数据统计分析方法时,表现出了持续的热情。她有丰富的数据科学领域的工作经验,我目睹她完成了很多令人瞩目的项目,这些项目围绕着自然语言处理、机器学习、基础语言学分析、神经网络和深度学习展开。她的工作节奏高效快速,并有很高的工作热情,这些给其所在的组织带来了明确可量化的成果。

Jalaj最特别的品质之一是,她时刻准备着解决商业中的各种问题,不论是最基本的问题还是最复杂的问题。她是一个很好的团队合作者,能够保证所在机构从她的出色才能中获得最大收益。

封面图

目录

  • 译者序
  • 推荐序
  • 作者介绍
  • 关于审校人员
  • 前言
  • 第1章引言 1
  • 1.1自然语言处理 1
  • 1.2基础应用 5
  • 1.3高级应用 6
  • 1.4NLP和Python相结合的优势 7
  • 1.5nltk环境搭建 7
  • 1.6读者提示 8
  • 1.7总结 9
  • 第2章实践理解语料库和数据集 10
  • 2.1语料库 10
  • 2.2语料库的作用 11
  • 2.3语料分析 13
  • 2.4数据属性的类型 16
  • 2.4.1分类或定性数据属性 16
  • 2.4.2数值或定量数据属性 17
  • 2.5不同文件格式的语料 18
  • 2.6免费语料库资源 19
  • 2.7为NLP应用准备数据集 20
  • 2.7.1挑选数据 20
  • 2.7.2预处理数据集 20
  • 2.8网页爬取 21
  • 2.9总结 23
  • 第3章理解句子的结构 24
  • 3.1理解NLP的组成 24
  • 3.1.1自然语言理解 24
  • 3.1.2自然语言生成 25
  • 3.1.3NLU和NLG的区别 25
  • 3.1.4NLP的分支 26
  • 3.2上下文无关文法 26
  • 3.3形态分析 28
  • 3.3.1形态学 28
  • 3.3.2词素 28
  • 3.3.3词干 28
  • 3.3.4形态分析 28
  • 3.3.5词 29
  • 3.3.6词素的分类 29
  • 3.3.7词干和词根的区别 32
  • 3.4词法分析 32
  • 3.4.1词条 33
  • 3.4.2词性标注 33
  • 3.4.3导出词条的过程 33
  • 3.4.4词干提取和词形还原的区别 34
  • 3.4.5应用 34
  • 3.5句法分析 34
  • 3.6语义分析 36
  • 3.6.1语义分析概念 36
  • 3.6.2词级别的语义 37
  • 3.6.3上下位关系和多义词 37
  • 3.6.4语义分析的应用 38
  • 3.7消歧 38
  • 3.7.1词法歧义 38
  • 3.7.2句法歧义 39
  • 3.7.3语义歧义 39
  • 3.7.4语用歧义 39
  • 3.8篇章整合 40
  • 3.9语用分析 40
  • 3.10总结 40
  • 第4章预处理 42
  • 4.1处理原始语料库文本 42
  • 4.1.1获取原始文本 42
  • 4.1.2小写化转换 44
  • 4.1.3分句 44
  • 4.1.4原始文本词干提取 46
  • 4.1.5原始文本词形还原 46
  • 4.1.6停用词去除 48
  • 4.2处理原始语料库句子 50
  • 4.2.1词条化 50
  • 4.2.2单词词形还原 51
  • 4.3基础预处理 52
  • 4.4实践和个性化预处理 57
  • 4.4.1由你自己决定 57
  • 4.4.2预处理流程 57
  • 4.4.3预处理的类型 57
  • 4.4.4理解预处理的案例 57
  • 4.5总结 62
  • 第5章特征工程和NLP算法 63
  • 5.1理解特征工程 64
  • 5.1.1特征工程的定义 64
  • 5.1.2特征工程的目的 64
  • 5.1.3一些挑战 65
  • 5.2NLP中的基础特征 65
  • 5.2.1句法分析和句法分析器 65
  • 5.2.2词性标注和词性标注器 81
  • 5.2.3命名实体识别 85
  • 5.2.4n元语法 88
  • 5.2.5词袋 89
  • 5.2.6语义工具及资源 91
  • 5.3NLP中的基础统计特征 91
  • 5.3.1数学基础 92
  • 5.3.2TF-IDF 96
  • 5.3.3向量化 99
  • 5.3.4规范化 100
  • 5.3.5概率模型 101
  • 5.3.6索引 103
  • 5.3.7排序 103
  • 5.4特征工程的优点 104
  • 5.5特征工程面临的挑战 104
  • 5.6总结 104
  • 第6章高级特征工程和NLP算法 106
  • 6.1词嵌入 106
  • 6.2word2vec基础 106
  • 6.2.1分布语义 107
  • 6.2.2定义word2vec 108
  • 6.2.3无监督分布语义模型中的必需品 108
  • 6.3word2vec模型从黑盒到白盒 109
  • 6.4基于表示的分布相似度 110
  • 6.5word2vec模型的组成部分 111
  • 6.5.1word2vec的输入 111
  • 6.5.2word2vec的输出 111
  • 6.5.3word2vec模型的构建模块 111
  • 6.6word2vec模型的逻辑 113
  • 6.6.1词汇表构建器 114
  • 6.6.2上下文环境构建器 114
  • 6.6.3两层的神经网络 116
  • 6.6.4算法的主要流程 119
  • 6.7word2vec模型背后的算法和数学理论 120
  • 6.7.1word2vec算法中的基本数学理论 120
  • 6.7.2词汇表构建阶段用到的技术 121
  • 6.7.3上下文环境构建过程中使用的技术 122
  • 6.8神经网络算法 123
  • 6.8.1基本神经元结构 123
  • 6.8.2训练一个简单的神经元 124
  • 6.8.3单个神经元的应用 126
  • 6.8.4多层神经网络 127
  • 6.8.5反向传播算法 127
  • 6.8.6word2vec背后的数学理论 128
  • 6.9生成最终词向量和概率预测结果的技术 130
  • 6.10word2vec相关的一些事情 131
  • 6.11word2vec的应用 131
  • 6.11.1实现一些简单例子 132
  • 6.11.2word2vec的优势 133
  • 6.11.3word2vec的挑战 133
  • 6.11.4在实际应用中使用word2vec 134
  • 6.11.5何时使用word2vec 135
  • 6.11.6开发一些有意思的东西 135
  • 6.11.7练习 138
  • 6.12word2vec概念的扩展 138
  • 6.12.1para2vec 139
  • 6.12.2doc2vec 139
  • 6.12.3doc2vec的应用 140
  • 6.12.4GloVe 140
  • 6.12.5练习 141
  • 6.13深度学习中向量化的重要性 141
  • 6.14总结 142
  • 第7章规则式自然语言处理系统 143
  • 7.1规则式系统 144
  • 7.2规则式系统的目的 146
  • 7.2.1为何需要规则式系统 146
  • 7.2.2使用规则式系统的应用 147
  • 7.2.3练习 147
  • 7.2.4开发规则式系统需要的资源 147
  • 7.3规则式系统的架构 148
  • 7.3.1从专家系统的角度来看规则式系统的通用架构 149
  • 7.3.2NLP应用中的规则式系统的实用架构 150
  • 7.3.3NLP应用中的规则式系统的定制架构 152
  • 7.3.4练习 155
  • 7.3.5Apache UIMA架构 155
  • 7.4规则式系统的开发周期 156
  • 7.5规则式系统的应用 156
  • 7.5.1使用规则式系统的NLP应用 156
  • 7.5.2使用规则式系统的通用AI应用 157
  • 7.6使用规则式系统来开发NLP应用 157
  • 7.6.1编写规则的思维过程 158
  • 7.6.2基于模板的聊天机器人应用 165
  • 7.7规则式系统与其他方法的对比 168
  • 7.8规则式系统的优点 169
  • 7.9规则式系统的缺点 169
  • 7.10规则式系统面临的挑战 170
  • 7.11词义消歧的基础 170
  • 7.12规则式系统近期发展的趋势 171
  • 7.13总结 171
  • 第8章自然语言处理中的机器学习方法 172
  • 8.1机器学习的基本概念 172
  • 8.2自然语言处理应用的开发步骤 176
  • 8.2.1第一次迭代时的开发步骤 177
  • 8.2.2从第二次到第N次迭代的开发步骤 177
  • 8.3机器学习算法和其他概念 179
  • 8.3.1有监督机器学习方法 179
  • 8.3.2无监督机器学习方法 206
  • 8.3.3半监督机器学习算法 210
  • 8.3.4一些重要概念 211
  • 8.3.5特征选择 215
  • 8.3.6维度约减 219
  • 8.4自然语言处理中的混合方法 221
  • 8.5总结 221
  • 第9章NLU和NLG问题中的深度学习 223
  • 9.1人工智能概览 223
  • 9.1.1人工智能的基础 223
  • 9.1.2人工智能的阶段 225
  • 9.1.3人工智能的种类 227
  • 9.1.4人工智能的目标和应用 227
  • 9.2NLU和NLG之间的区别 232
  • 9.2.1自然语言理解 232
  • 9.2.2自然语言生成 232
  • 9.3深度学习概览 233
  • 9.4神经网络基础 234
  • 9.4.1神经元的第一个计算模型 235
  • 9.4.2感知机 236
  • 9.4.3理解人工神经网络中的数学概念 236
  • 9.5实现神经网络 249
  • 9.5.1单层反向传播神经网络 249
  • 9.5.2练习 251
  • 9.6深度学习和深度神经网络 251
  • 9.6.1回顾深度学习 251
  • 9.6.2深度神经网络的基本架构 251
  • 9.6.3NLP中的深度学习 252
  • 9.6.4传统NLP和深度学习NLP技术的区别 253
  • 9.7深度学习技术和NLU 255
  • 9.8深度学习技术和NLG 262
  • 9.8.1练习 262
  • 9.8.2菜谱摘要和标题生成 262
  • 9.9基于梯度下降的优化 265
  • 9.10人工智能与人类智能 269
  • 9.11总结 269
  • 第10章高级工具 270
  • 10.1使用Apache Hadoop作为存储框架 270
  • 10.2使用Apache Spark作为数据处理框架 272
  • 10.3使用Apache Flink作为数据实时处理框架 274
  • 10.4Python中的可视化类库 274
  • 10.5总结 275
  • 第11章如何提高你的NLP技能 276
  • 11.1开始新的NLP职业生涯 276
  • 11.2备忘列表 277
  • 11.3确定你的领域 277
  • 11.4通过敏捷的工作来实现成功 278
  • 11.5NLP和数据科学方面一些有用的博客 278
  • 11.6使用公开的数据集 278
  • 11.7数据科学领域需要的数学知识 278
  • 11.8总结 279
  • 第12章安装指导 280
  • 12.1安装Python、pip和NLTK 280
  • 12.2安装PyCharm开发环境 280
  • 12.3安装依赖库 280
  • 12.4框架安装指导 281
  • 12.5解决你的疑问 281
  • 12.6总结 281

资源下载

资源下载地址1:https://pan.baidu.com/s/11tksyoL-Qp2E94ko5TF_2g

相关资源

网友留言