第11章 自然语言处理
自然语言处理[1]是计算机科学领域与人工智能领域中的另一个重要方向,其中很重要的一点就是语音识别(speech recognition)。语音识别要解决的问题是让计算机能够“听懂”人类的语音,将语音中包含的文字信息“提取”出来。
与语言相关的技术可以应用在很多地方。例如,日本的富国生命保险公司花费170万美元安装人工智能系统,把客户的语言转换为文本,并分析这些词是正面的还是负面的。这些自动化工作将帮助人类更快地处理保险业务。除此之外,现在的人工智能公司也在把智能客服作为重点的研究方向。
与图像识别不同,在自然语言处理中输入的往往是一段语音或者一段文字,输入数据的长短是不确定的,并且它与上下文有很密切的关系,所以常用的是循环神经网络(recurrent neural network,RNN)模型。
11.1 模型的选择
下面我们就来介绍使用不同输入和不同数据时,分别适用哪种模型以及如何应用。
在图11-1中,每一个矩形是一个向量,箭头则表示函数(如矩阵相乘)。最下面一行为输入向量,最上面一行为输出向量,中间一行是RNN的状态。
图11-1中从左到右分别表示以下几种情况。
(1)一对一:没有使用RNN,如Vanilla模型,从固定大小的输入得到固定大小输出(应用在图像分类)。
(2)一对多:以序列输出(应用在图片描述,输入一张图片输出一段文字序列,这种往往需要CNN和RNN相结合,也就是图像和语言相结合,详见第12章)。<
本文介绍了TensorFlow在自然语言处理的应用,包括英文数字语音识别和智能聊天机器人。通过使用LSTM模型,实现了语音识别的训练和预测。此外,还探讨了智能聊天机器人的seq2seq+Attention模型原理和最佳实践,展示了从数据预处理到模型训练的过程。
订阅专栏 解锁全文
793

被折叠的 条评论
为什么被折叠?



