[人工智能-深度学习-49]:循环神经网络RNN与NLP的关系以及RNN在人工神经网络中的位置

Posted 文火冰糖的硅基工坊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[人工智能-深度学习-49]:循环神经网络RNN与NLP的关系以及RNN在人工神经网络中的位置相关的知识,希望对你有一定的参考价值。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/121433651


目录

前言:

第1章 NLP自然语言处理概述

1.1 什么是NLP

1.2 自然语言处理的主要功能

1.3 自然语言发展阶段

1.3 自然语言处理的基础框架

第2章 NLP的处理流程

2.1 NLP的一般处理流程

2.2 结构化机器学习模型

2.3 学习模型

第3章 NLP的语言模型与RNN

3.1 什么是语言模型

3.2 NLP语言模型在NLP中的位置

3.3 RNN/LSTM与NLP

3.4 RNN与CNN在深度学习中的位置


前言:

本文的目的:是在深入学习RNN之前,弄清楚RNN与NLP到底是什么关系,RNN与CNN到底什么关系。也就是说,弄清楚RNN分别在自然语言处理和人工神经网络中的位置!

第1章 NLP自然语言处理概述

1.1 什么是NLP

自然语言处理_百度百科

自然语言处理( Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。

自然语言处理是一门融语言学、计算机科学数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。因而它是计算机科学的一部分。

自然语言处理( Natural Language Processing, NLP)是以语言为对象,利用计算机技术来分析理解处理自然语言的一门学科,即把计算机作为语言研究的强大工具,在计算机的支持下对语言信息进行定量化的研究,并提供可供人与计算机之间能共同使用的语言描写。

包括自然语言理解( NaturalLanguage Understanding, NLU)和自然语言生成( Natural LanguageGeneration, NLG)两部分。

它是典型边缘交叉学科,涉及到语言科学、计算机科学、数学、认知学、逻辑学等,关注计算机和人类(自然)语言之间的相互作用的领域。人们把用计算机处理自然语言的过程在不同时期或侧重点不同时又称为自然语言理解( Natural Language Understanding, NLU)、人类语言技术( Human Language Technology, HLT)、计算语言学Hl(Computational Linguistics)、计量语言学( QuantitativeLinguistics)、数理语言学( Mathematical Linguistics)。

1.2 自然语言处理的主要功能

NLP是人工智能的一个分支,用于分析、理解和生成自然语言,以方便人和计算机设备进行交流,以及人与人之间的交流。

通过自然语言处理可以进行:知识分析、自动分类、文本聚类、统计推理、数据挖掘、自动提取摘要、中文分词等功能。

1.3 自然语言发展阶段

第一阶段(60~80年代): 早期自然语言处理

基于规则来建立词汇、句法语义分析、问答、聊天和机器翻译系统。

好处是规则可以利用人类的内省知识,不依赖数据,可以快速起步;

问题是覆盖面不足,像个玩具系统,规则管理和可扩展一直没有解决。 

第二阶段(90年代开始):统计自然语言处理

基于统计的机器学习(ML)开始流行,很多NLP开始用基于统计的方法来做。

主要思路是利用带标注的数据,基于人工定义的特征建立机器学习系统,并利用数据经过学习确定机器学习系统的参数。运行时利用这些学习得到的参数,对输入数据进行解码,得到输出。机器翻译、搜索引擎都是利用统计方法获得了成功。 [5]

第三阶段(2008年之后):神经网络自然语言处理

深度学习开始在语音和图像发挥威力。

随之,NLP研究者开始把目光转向深度学习。

先是把深度学习用于特征计算(提取)或者建立(生成)一个新的特征,

然后在原有的统计学习框架下体验效果(也就是说,深度学习在自然语言处理中,仅仅是其中的一个环节,整体框架还是传统的、基于统计的自然语言处理框架)

比如,搜索引擎加入了深度学习的检索词和文档的相似度计算(通过特征找相似度),以提升搜索的相关度。

2014年以来,人们尝试直接通过深度学习建模,进行端对端的训练。目前已在机器翻译、问答、阅读理解等领域取得了进展,出现了深度学习的热潮。 [5]

1.3 自然语言处理的基础框架

基于统计的机器学习算法和基于人工神经网络的深度学习,都是对自然语言的理解生成模型算法框架。他们都只是整个NLP其中一个核心环节 ,而不是全部。

第2章 NLP的处理流程

2.1 NLP的一般处理流程

 

其中,第5步,可供NLP的模型有传统的机器学习模型,也有深度学习模型。 

无论是深度学习,还是传统的机器学习,都是对于向量化的数据数据,进行处理,然后给出期望的数据输出。而输入与输出之间的映射关系,不是确定不变的,而是可以通过训练和学习获得。

2.2 结构化机器学习模型

上述图形,虽然已结构化学习为例,实际上深度学习的模型与之相似。

深度学习通过“人工神经网络”的数学模型,替代“基于统计”的数学模型而已。

2.3 学习模型

第3章 NLP的语言模型与RNN

3.1 什么是语言模型

3.2 NLP语言模型在NLP中的位置

3.3 RNN/LSTM与NLP

在上述描述,中,无论是NLP的处理流程还是语言模型,关于神经网络部分的实现,基本上都是通过RNN/LSTM来完成的

3.4 RNN与CNN在深度学习中的位置

全连接网络、卷积神经网络、循环神经网络是人工神经网络的“三大基石”。

CNN和全连接都属于前馈神经网络,而RNN属于反馈神经网络。

RNN是继全连接网络FCC和卷积神经网络CNN之后,另一个重要的神经网络形态!!


作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/121433651

以上是关于[人工智能-深度学习-49]:循环神经网络RNN与NLP的关系以及RNN在人工神经网络中的位置的主要内容,如果未能解决你的问题,请参考以下文章

原创 [人工智能-深度学习-48]:RNN是循环神经网络还是递归神经网络?

[人工智能-深度学习-51]:循环神经网络RNN基本原理详解

收藏 | 图解循环神经网络RNN

Keras深度学习实战(27)——循环神经详解与实现

Keras深度学习实战(27)——循环神经详解与实现

循环神经网络 RNN