动态记忆网络

原文
Ask Me Anything: Dynamic Memory Networks for Natural Language Processing

简介

Question answering 是自然语言处理领域的一个复杂问题. 它需要对文本的理解力和推理能力. 大部分 NLP 问题都可以转化为一个 QA 问题. DMN 网络可以用来处理 QA 问题. DMN 的输入包含事实输入,问题输入,经过内部处理形成片段记忆,最终产生问题的答案.

DMN 可进行端到端的训练,并在多种任务上取得了 state-of-the-art 的效果:包括 QA(Facebook 的 bAbI 数据集),情感分析文本分类(Stanford Sentiment Treebank)和词性标注(WSJ-PTB).

动态记忆网络

DMN 由4个模块组成:

这里写图片描述
- 输入模块: 将原生文本输入编码成分布式向量表示. NLP 问题中,输入可以是一个句子,一个故事,电影评论,新闻文章或者维基百科文章等.
- 问题模块: 同输入模块类似,但输入是问题. 输出喂给片段记忆模块.
- 片段记忆模块: 片段记忆模块通过关注机制决定关注输入数据的那些部分,并根据之前的记忆和问题产生新的记忆.
- 回答模块: 根据最终记忆,产生问题的回答.

输入模块
  • 输入模块是一个 RNN 网络. 它的输入是 Work embedding(如通过 word2vec 或 GloVe 编码). 输入是 TI 个单词 w1,...,wTI .
  • 在每个时间点 t,RNN 更新其隐藏状态 ht=RNN(L[wt],ht1) . L 是 word embedding matrix.
  • 在输入只有一个句子的情况下,输入模块输出 RNN 的所有隐藏状态.
  • 在输入是多个句子的情况下,我们将所有句子拼接,并在每个句子末尾插入句末 token. RNN 每个句末 token 位置的隐藏状态作为输出.
  • 输入模块的输出序列为 Tc 个 fact representation c. 其中 ct 是输出序列的第 t 个元素. 输入只有一个句子的情况下,
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【强烈推荐,非常好的论文】如今人们生活在一个网络无处不在的时代,例如,交通运输网、移动通信网、互联网、在线社交网等,这些网络结构复杂,人们无法直接从中提取有用信息。社区发现作为一种重要的网络分析技术,能够挖掘出网络中具有某些共性的节点集合,有助于人们更加清楚的认识网络,吸引了很多专家的注意。随着现实网络和人们需求的变化,社区发现研究的侧重点也在不断变化。最初研究静态小规模网络的社区发现算法,随后由于网络规模的增大,算法的可伸缩性受到限制,人们开始研究如何提高算法效率。鉴于网络动态变化的本质特征以及人们对社区结构准确性和实时性的要求,动态网络社区发现开始受到关注。 本文首先介绍了社区发现相关技术,分析了经典的静态和动态社区发现算法及其优缺点,例如,GN算法、KL算法、CMP算法、GraphScope算法、FaceNet算法等。然后深入分析了基于贪婪思想的SHRINK-G算法,该算法不需要用户提供参数并且对每个节点只访问一次,算法效率较高,但存在的问题是对社区边界点的处理并不合理,容易使其成为无社区归属的节点,为此我们改进SHRINK-G算法,提出了 MSHRINK-G算法。随后基于MSHRINK-G算法研究了动态网络中的社区发现问题,并提出了基于增量处理的DMSHRINK-G算法。通过在LFR合成数据集和不同规模的真实数据集上的实验结果表明,MSHRINK-G算法准确性得到较大提高,DMSHRINK-G算法能够准确处理网络变化且算法效率较高。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值