| 作者 |
| 刘宇 崔燕红 郭师光 党习歌涂铭 刘祥 刘树春 |
| 丛书名 |
| 智能系统与技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9781911041741 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------聊天机器人:入门、进阶与实战--------------------------- 本书是一本建立在零基础的,以介绍对话机器人领域为目的,通过书中的内容介绍让更多对对话机器人感兴趣的初级读者,可以由浅入深,了解和学习对话机器人的发展现状,用途,原理和技术。 主要内容: 第一部分 数学与统计学基础 数学与统计学是现代机器学习理论的基础,本书会对机器学习中重点涉及的数学与统计学知识做一下整理,方便读者了解和掌握,以便可以顺利的过渡到后面专业知识的理解。 第二部分 自然语言处理模型与技术 对话机器人是以自然语言处理为发展的一个专业领域,基础的自然语言处理模型与技术对于学习后面的专业知识是必要的。本书通过先介绍自然语言处理模型,然后对依赖这个模型所扩展出的自然语言处理技术做详细介绍。使得初学者可以从数学理论到模型,从模型到技术的理论结合实际的方式,学好本书的内容 第三部分 对话机器人的核心技术 在对话机器人的核心技术章节,我们先介绍 1.对话机器人的发展综述。 2.自然语言理解NLU的部分,让读者可以更加清晰的认识到Intent (目的)识别和 Entities (命名实体)识别的重要性。为了更加了解一句话中各个实体间的形容和被形容关系,我们引入句法树和依存句法分析的概念。这样机器人就可以简单的弄清一句话说的是什么,和各个实体间的关系。 3.为了让机器像人类一样可以有更多的知识积累和进行简单的逻辑推理,我们接下来要介绍知识图谱。这里我们重点介绍知识图谱的模型,知识抽取,知识图谱数据库的搭建和存储,以及在简单的了解到Intent和各个实体间关系后,如何根据知识图谱进行推理计算和理解 4.在对句子有了一定的深入理解后,我们需要介绍预测会话和答复生成。在机器理解了问题的内容后,如何给出精确的答复。这里会介绍用于客服机器人的Question to Question 的匹配来得到预先准备好的标准答案。也会介绍通话自然语言理解利用知识图谱得到生成答案,以及通过互联网检索的方式,得到置信度较高的问题答案。最后还会了解如何存储我们学到的问题和答案的配对。 5.在机器学会了一问一答后,我们需要介绍 1.根据上下文理解的对话生成。 . 2.多轮对话的控制和生成。 3.多主题多轮对话的切换。 6.人机对话过程中的情感计算 1.设计情感计算的对话场景 2.情感计算的建模与识别 3.根据情感计算生成带情感色彩的回复 第四部分 对话机器人实战 本书的第四个部分会详细分以下三个方面阐述 1.实战对话机器人的架构 2.对话机器人的开发流程和方案 3.对话机器人的开发案例 在对话机器人的开发案例里面,我们会介绍: 1.垂直领域的客服机器人 2.开放领域的知识问答类型机器人 3.闲聊型的情感机器人 第五部分 附录 附录里会有我们总结的机器学习的模型列表,自然语言模型列表,深度学习的模型列表以及每一章的实战代码 ---------------------------Python自然语言处理实战:核心技术与算法--------------------------- 自然语言处理是一门融语言学、计算机科学、数学于一体的学科,比较复杂,学习门槛高,但本书巧妙地避开了晦涩难懂的数学公式和证明,即便没有数学基础,也能零基础入门。 本书专注于中文的自然语言处理,以Python及其相关框架为工具,以实战为导向,详细讲解了自然语言处理的各种核心技术、方法论和经典算法。三位作者在人工智能、大数据和算法领域有丰富的积累和经验,是阿里巴巴、前明略数据和七牛云的资深专家。同时,本书也得到了阿里巴巴达摩院高级算法专家、七牛云AI实验室Leader等专家的高度评价和鼎力推荐。 全书一共11章,在逻辑上分为2个部分: 第一部分(第1、2、11章) 主要介绍了自然语言处理所需要了解的基础知识、前置技术、Python科学包、正则表达式以及Solr检索等。 第二部分(第5-10章) 第3~5章讲解了词法分析相关的技术,包括中文分词技术、词性标注与命名实体识别、关键词提取算法等。 第6章讲解了句法分析技术,该部分目前理论研究较多,工程实践中使用门槛相对较高,且效果多是依赖结合业务知识进行规则扩展,因此本书未做深入探讨。 第7章讲解了常用的向量化方法,这些方法常用于各种NLP任务的输入。 第8章讲解了情感分析相关的概念、场景以及一般做情感分析的流程,情感分析在很多行业都有应用。 第9章介绍了机器学习的重要概念,同时重点突出NLP常用的分类算法、聚类算法,还介绍了几个案例。 第10章节介绍了NLP中常用的一些深度学习算法,这些方法比较复杂,但是非常实用,需要读者耐心学习。 |
| 目录 |
---------------------------聊天机器人:入门、进阶与实战--------------------------- 推荐序一 推荐序二 前言 第1章概率统计与应用数学的基础知识 1.1概率的定义 1.2条件概率与贝叶斯公式 1.3随机变量与分布函数 1.4概率分布与参数估计 1.5随机过程与马尔可夫模型 1.6信息熵 1.7本章小结 第2章语言模型与多元文法 2.1词袋模型 2.2N-Gram模型 2.2.1N-Gram简介 2.2.2N-Gram算法 2.2.3N-Gram用途 2.3数据平滑 2.3.1加法平滑方法 2.3.2Good-Turing估计法 2.3.3组合平滑方法 第3章序列标注模型 3.1中文分词 3.1.1条件随机场 3.1.2条件随机场进行中文分词 3.2词性标注 3.2.1词性标注的标准 3.2.2利用隐马尔可夫进行词性标注 3.3命名实体识别 3.3.1利用条件随机场模型进行命名实体识别 3.3.2命名实体识别在对话系统中的作用 3.4序列标注模型 3.5本章小结 第4章文本分析 4.1关键词抽取 4.1.1词频-逆文档频次算法 4.1.2Text Rank 4.2文本分类 4.2.1贝叶斯文本分类模型 4.2.2决策树文本分类模型 4.2.3SVM文本分类模型 4.3主题模型 4.3.1基础知识回顾 4.3.2吉布斯采样 4.3.3隐狄利克雷分配模型 4.4本章小结 第5章深度学习模型 5.1基于深度学习的自然语言模型 5.1.1神经网络自然语言模型与词向量 5.1.2A Neural Probabilistic Language Model 5.1.3CBOW和Skip-Gram 5.1.4Huffman编码与Huffman tree 5.1.5CBOW-Hierarchical Softmax 5.1.6Skip-Gram-Hierarchical Softmax 5.1.7FastText 5.1.8词的全局向量表示 5.2卷积网络CNN 5.2.1卷积网络CNN理论 5.2.2利用CNN进行文本分类 5.3循环网络RNN 5.3.1循环网络RNN(LSTM,GRU)理论 5.3.2利用RNN 进行情感分析 5.3.3Sequence-to-Sequence with Attention Model 5.4Transformer 5.4.1ResNet(Residual Network)残差网络模型 5.4.2Attention is all you need(Transformer) 5.5预训练模型 5.5.1Embeddings from Language Models(ELMo) 5.5.2BERT 第6章对话机器人的发展综述 6.1对话机器人发展史 6.1.1对话机器人的近况 6.1.2开放域 6.1.3垂直领域 6.1.4对话机器人的未来发展趋势 6.2人工智能在对话机器人中的应用 6.2.1深度学习在机器人方面的应用 6.2.2强化学习在机器人方面的应用 6.2.3知识图谱在机器人方面的应用 第7章自然语言理解与知识图谱 7.1知识图谱的表示:三元组模型 7.2知识抽取 7.2.1知识抽取-命名实体识别 7.2.2利用CRF模型识别 NER 7.2.3利用BiLSTM+CRF模型进行命名实体识别 7.3知识抽取-实体关系抽取:Relation Extraction 7.4知识图谱的构建 第8章答案生成与多轮对话 8.1预测会话与答案生成 8.1.1信息检索:利用搜索来预测答案 8.1.2句型模板匹配标准问题生成答案 8.1.3根据知识图谱推理得到答案 8.2多轮对话 8.2.1多轮对话概述 8.2.2任务型多轮对话的控制和生成 8.2.3多主题多轮对话 第9章对话系统的工程架构 9.1对话系统的工程技术 9.1.1常用技术 9.1.2对话系统的分类 9.1.3主要系统软件介绍 9.1.4系统运维相关 9.2对话系统的架构实现 9.2.1阿里小蜜 9.2.2百度对话系统 9.2.3垂直领域对话系统的架构 9.2.4开放领域对话系统的架构 9.3本章小结 第10章实战场景之一——客服机器人 10.1客服机器人架构 10.1.1功能需求 10.1.2系统逻辑架构图 10.2客服机器人设计 10.2.1FAQ的设计 10.2.2导购机器人的设计 10.2.3实例分析 10.3本章小结 第11章实战场景之二——开放域的QA问答 11.1开放领域问答机器人的架构 11.2开放领域问答机器人的开发流程和方案 11.3开放领域问答机器人的开发案例 第12章实战场景之三——聊天机器人 12.1Seq2Seq以及Attention机制 12.2Beam Search 12.3基于Seq2Seq的聊天机器人开发流程 12.3.1语料准备 12.3.2定义Encoder和Decoder 12.3.3模型训练和评估模块 12.3.4模型预测和Beam Search模块 12.4本章小结 ---------------------------Python自然语言处理实战:核心技术与算法--------------------------- 序一 序二 前言 第1章 NLP基础 1 1.1 什么是NLP 1 1.1.1 NLP的概念 1 1.1.2 NLP的研究任务 3 1.2 NLP的发展历程 5 1.3 NLP相关知识的构成 7 1.3.1 基本术语 7 1.3.2 知识结构 9 1.4 语料库 10 1.5 探讨NLP的几个层面 11 1.6 NLP与人工智能 13 1.7 本章小结 15 第2章 NLP前置技术解析 16 2.1 搭建Python开发环境 16 2.1.1 Python的科学计算发行版Anaconda 17 2.1.2 Anaconda的下载与安装 19 2.2 正则表达式在NLP的基本应用 21 2.2.1 匹配字符串 22 2.2.2 使用转义符 26 2.2.3 抽取文本中的数字 26 2.3 Numpy使用详解 27 2.3.1 创建数组 28 2.3.2 获取Numpy中数组的维度 30 2.3.3 获取本地数据 31 2.3.4 正确读取数据 32 2.3.5 Numpy数组索引 32 2.3.6 切片 33 2.3.7 数组比较 33 2.3.8 替代值 34 2.3.9 数据类型转换 36 2.3.10 Numpy的统计计算方法 36 2.4 本章小结 37 第3章 中文分词技术 38 3.1 中文分词简介 38 3.2 规则分词 39 3.2.1 正向最大匹配法 39 3.2.2 逆向最大匹配法 40 3.2.3 双向最大匹配法 41 3.3 统计分词 42 3.3.1 语言模型 43 3.3.2 HMM模型 44 3.3.3 其他统计分词算法 52 3.4 混合分词 52 3.5 中文分词工具Jieba 53 3.5.1 Jieba的三种分词模式 54 3.5.2 实战之高频词提取 55 3.6 本章小结 58 第4章 词性标注与命名实体识别 59 4.1 词性标注 59 4.1.1 词性标注简介 59 4.1.2 词性标注规范 60 4.1.3 Jieba分词中的词性标注 61 4.2 命名实体识别 63 4.2.1 命名实体识别简介 63 4.2.2 基于条件随机场的命名实体识别 65 4.2.3 实战一:日期识别 69 4.2.4 实战二:地名识别 75 4.3 总结 84 第5章 关键词提取算法 85 5.1 关键词提取技术概述 85 5.2 关键词提取算法TF/IDF算法 86 5.3 TextRank算法 88 5.4 LSA/LSI/LDA算法 91 5.4.1 LSA/LSI算法 93 5.4.2 LDA算法 94 5.5 实战提取文本关键词 95 5.6 本章小结 105 第6章 句法分析 106 6.1 句法分析概述 106 6.2 句法分析的数据集与评测方法 107 6.2.1 句法分析的数据集 108 6.2.2 句法分析的评测方法 109 6.3 句法分析的常用方法 109 6.3.1 基于PCFG的句法分析 110 6.3.2 基于最大间隔马尔可夫网络的句法分析 112 6.3.3 基于CRF的句法分析 113 6.3.4 基于移进–归约的句法分析模型 113 6.4 使用Stanford Parser的PCFG算法进行句法分析 115 6.4.1 Stanford Parser 115 6.4.2 基于PCFG的中文句法分析实战 116 6.5 本章小结 119 第7章 文本向量化 120 7.1 文本向量化概述 120 7.2 向量化算法word2vec 121 7.2.1 神经网络语言模型 122 7.2.2 C&W模型 124 7.2.3 CBOW模型和Skip-gram模型 125 7.3 向量化算法doc2vec/str2vec 127 7.4 案例:将网页文本向量化 129 7.4.1 词向量的训练 129 7.4.2 段落向量的训练 133 7.4.3 利用word2vec和doc2vec计算网页相似度 134 7.5 本章小结 139 第8章 情感分析技术 140 8.1 情感分析的应用 141 8.2 情感分析的基本方法 142 8.2.1 词法分析 143 8.2.2 机器学习方法 144 8.2.3 混合分析 144 8.3 实战电影评论情感分析 145 8.3.1 卷积神经网络 146 8.3.2 循环神经网络 147 8.3.3 长短时记忆网络 148 8.3.4 载入数据 150 8.3.5 辅助函数 154 8.3.6 模型设置 155 8.3.7 调参配置 158 8.3.8 训练过程 159 8.4 本章小结 159 第9章 NLP中用到的机器学习算法 160 9.1 简介 160 9.1.1 机器学习训练的要素 161 9.1.2 机器学习的组成部分 162 9.2 几种常用的机器学习方法 166 9.2.1 文本分类 166 9.2.2 特征提取 168 9.2.3 标注 169 9.2.4 搜索与排序 170 9.2.5 推荐系统 170 9.2.6 序列学习 172 9.3 分类器方法 173 9.3.1 朴素贝叶斯Naive Bayesian 173 9.3.2 逻辑回归 174 9.3.3 支持向量机 175 9.4 无监督学习的文本聚类 177 9.5 文本分类实战:中文垃圾邮件分类 180 9.5.1 实现代码 180 9.5.2 评价指标 187 9.6 文本聚类实战:用K-means对豆瓣读书数据聚类 190 9.7 本章小结 194 第10章 基于深度学习的NLP算法 195 10.1 深度学习概述 195 10.1.1 神经元模型 196 10.1.2 激活函数 197 10.1.3 感知机与多层网络 198 10.2 神经网络模型 201 10.3 多输出层模型 203 10.4 反向传播算法 204 10.5 最优化算法 208 10.5.1 梯度下降 208 10.5.2 随机梯度下降 209 10.5.3 批量梯度下降 210 10.6 丢弃法 211 10.7 激活函数 211 10.7.1 tanh函数 212 10.7.2 ReLU函数 212 10.8 实现BP算法 213 10.9 词嵌入算法 216 10.9.1 词向量 217 10.9.2 word2vec简介 217 10.9.3 词向量模型 220 10.9.4 CBOW和Skip-gram模型 222 10.1 |