前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学了又忘又学的 RNN(一)

学了又忘又学的 RNN(一)

作者头像
木野归郎
发布2022-02-25 10:13:30
2030
发布2022-02-25 10:13:30
举报
文章被收录于专栏:share ai happinessshare ai happiness

大家好,我是小轩

这两天在忙着完成手头上的任务,没来得及更新

任务也涉及到NLP领域方面的知识,关于这个领域我就不做过多的介绍了,我也是个小白,现在连脚趾头都还没有迈过门槛

我要完成的就是用模型训练数据,之前的数据格式和前几天的数据格式不太一样,数据里边的实体类型和个数也不一样,所以我就得先对数据格式进行处理

另外,输入到模型的那部分代码也不一样,由于我论文的算法和代码实现不是很熟,所以就看了好几天代码...

由于之前的知识基本已经忘了,所以我准备再看一遍,也做做笔记,仅供大家参考和学习

废话不多说了,开始今天的正题

  • 什么是循环神经网络RNN?
  • RNN是用来干什么的呢?
  • 和普通的神经网络有什么不同呢?

先看这段文字

那边窗子里亮起来的是什么光?那就是东方,朱丽叶就是太阳!起来吧,美丽的太阳!那是我的意中人

如果现在让你先背下来,然后让你倒着背一遍,可能就很难了

这就说明对于预测顺序排列很重要

按照文字顺序读,我们知道这段文字是什么意思,但是如果顺序打乱,就很难理解是什么意思了

看这张图片

对输入的四个数据进行预测最终的结果,这四个数据都是使用同一个神经网络NN

如果上面四个数据之间有关系,上面使用的神经网络并没有把这四个输入数据关联起来,只是对每个数据单独进行预测

所以普通的神经网络不能满足其需求

如何可以进行关联呢?

就是记住之前发生的事情

如何具有记住发生之前事情的能力呢?

在对第一个输入数据进行预测时,可以把分析的结果存入记忆,当分析下一个数据时候,会产生新的记忆,可以把上一个记忆调用过来对下一个数据进行预测,以此类推

看下面的图,画的比较粗糙,下面把神经网路换成RNN了, 每次RNN运算完之后,都会产生一个对于当前状态的描述state,简写成S(t),表示在t时刻的结果

然后RNN在t+1时刻,会根据X(t+1)产生S(t+1),此时的Y(t+1)是由S(t)和S(t+1)共同创造的

上面两张图可以用下面这张表示,就是在t时刻计算的S(t)然后再到下一层和S(t+1)同时计算t+1时刻的结果

其实RNN的结构形式有很多种

比如一句话,判断这句话的感情色彩是积极的还是消极的,可以使用下面这个,只需要在最后输出结果就可以了

如果是对一张图片进行分析,可以使用一个输入X

现在RNN有很多应用,所以有很多形式

比如让RNN描述照片、写论文等等

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OnlyCoding 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档