数据分析与机器学习学习笔记--循环神经网络(通俗理解)

本文介绍了循环神经网络(RNN)在语言处理中的作用,对比了RNN与CNN的区别,并详细阐述了RNN如何通过保留‘记忆’处理时序问题。文中列举了RNN在模仿写作、看图说话和音乐生成等场景的应用,并回顾了作者的学习历程。
摘要由CSDN通过智能技术生成

1.引言

        接着上文的CNN来说,CNN通常用于计算机视觉领域那么这个循环神经网络(RNN)是什么的干活?相比于计算机视觉RNN通常作用于语言处理,目前最为常见的自然语言处理就是通过RNN的‘同胞’实现的。或许你会疑问既然CNN已经如此强大了为什么对语言的处理不延续使用CNN模型呢?由于语言的数据量十分庞大使用CNN进行训练需要的参数存在几何倍增加,同时我们没说一句话都是存在一定的时序的,时序的不同表达的意思也不同(这也是我认为自然语言处理最难的地方)。。。。接下来就对RNN网络进行一个解剖从根本上理解他是如何在语言处理方向上大放光彩的。

2.循环神经网络

        首先我们解释一下处理语言问题为何不能使用人工神经网络和卷积神经网络,首先以上两种网络层与层之间的输入和输出都是独立的,处理非时序的问题时有强大的解决能力,但是当我们遇到一个句子时这种解决能力就派不上用场,比如说这个句子‘我喜欢勒布朗詹姆斯,我平常爱和朋友打____。’当我们把这个句子输入到以上两种网络可能会得到其他结果,比如和朋友打架、和朋友打年糕。。。。忽略了之前文字带来的影响,但是输入到RNN中就不一样了,RNN会‘记忆’之前的内容,他记下了‘勒布朗詹姆斯’发现他是一个篮球巨星,因此RNN会推断输出和朋友打篮球。

        那么RNN是如何保留这种‘记忆’呢,观察下部左侧图,RNN神经网络结构图,x为输入的数据,同时右侧的圆圈也是RNN的输入,这部分输入的就是之前的记忆,有两个输入共同决定最后的输出。对于左侧图不是特别容易理解,我们将其展开进行进一步解释。看右侧图片中间的‘神经元’,该神经元的输入源自两个方面,一个是下方的x,x代表的是当前时刻输入的外部数据也就是上文举例的句子中的汉字

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值