https://blog.csdn.net/liuchonge/article/details/73610734

https://blog.csdn.net/triplemeng/article/details/78269127

--

https://github.com/triplemeng/hierarchical-attention-model学习如何根据论文、参考别人的代码来实现

如果没有图中的uwuw(词语级别的context vector)和usus(句子级别的context vector),这个模型也没有什么特殊的地方。它无非是由word sequence layer和sentence sequence layer组成的一个简单的层级的sequence模型而已。而有了这两个context vector, 我们就可以利用它们产生attention layer, 求出每个词语和每个句子的任务相关程度。

具体做法如下,针对每一个句子,用sequence model, 就是双向的rnn给表达出来,在这里用的是GRU cell。每个词语对应的hidden vector的输出经过变换(affine+tanh)之后和uwuw相互作用(点积),结果就是每个词语的权重。加权以后就可以产生整个sentence的表示。从高一级的层面来看(hierarchical的由来),每个document有L个句子组成,那么这L个句子就可以连接成另一个sequence model, 同样是双向GRU cell的双向rnn,同样的对输出层进行变换后和usus相互作用,产生每个句子的权重,加权以后我们就产生了对整个document的表示。最后用softmax就可以产生对分类的预测。

每次的“提问”,都是由uwuw和usus来实现的,它们用来找到高权重的词语和句子。

代码部分 --------

Hierarchical RNN的更多相关文章

  1. lecture7-序列模型及递归神经网络RNN

    Hinton 第七课 .这里先说下RNN有recurrent neural network 和 recursive neural network两种,是不一样的,前者指的是一种人工神经网络,后者指的是 ...

  2. lecture7-序列模型及递归神经网络RNN(转载)

    Hinton 第七课 .这里先说下RNN有recurrent neural network 和 recursive neural network两种,是不一样的,前者指的是一种人工神经网络,后者指的是 ...

  3. [Hinton] Neural Networks for Machine Learning - RNN

    Link: Neural Networks for Machine Learning - 多伦多大学 Link: Hinton的CSC321课程笔记 补充: 参见cs231n 2017版本,ppt写得 ...

  4. Estimating Linguistic Complexity for Science Texts--paper

    http://aclweb.org/anthology/W18-0505 https://sites.google.com/site/nadeemf0755/research/linguistic-c ...

  5. 官网实例详解-目录和实例简介-keras学习笔记四

    官网实例详解-目录和实例简介-keras学习笔记四 2018-06-11 10:36:18 wyx100 阅读数 4193更多 分类专栏: 人工智能 python 深度学习 keras   版权声明: ...

  6. RNN 入门教程 Part 2 – 使用 numpy 和 theano 分别实现RNN模型

    转载 - Recurrent Neural Networks Tutorial, Part 2 – Implementing a RNN with Python, Numpy and Theano 本 ...

  7. RNN and LSTM saliency Predection Scene Label

    http://handong1587.github.io/deep_learning/2015/10/09/rnn-and-lstm.html  //RNN and LSTM http://hando ...

  8. 【RNN】资源汇总

    wesome Recurrent Neural Networks A curated list of resources dedicated to recurrent neural networks ...

  9. CNN(卷积神经网络)、RNN(循环神经网络)、DNN,LSTM

    http://cs231n.github.io/neural-networks-1 https://arxiv.org/pdf/1603.07285.pdf https://adeshpande3.g ...

随机推荐

  1. Linux查看某个命令属于哪个包

    有时修我们需要某个命令但其没有安装,提供该命令的包名也与命令名相差很大直接查找命令名找不到包,如rexec. 此时我们就非常需要这样一个工具:可以根据最终的命令查找提供该命令的软件包. 类型 命令 说 ...

  2. api资源

    转:https://blog.csdn.net/qq_37187976/article/details/79160050

  3. mac+php+nginx+laravel配置启动

    首先保证mac安装php,nginx,composer 根据laravel中文文档进行安装 http://laravelacademy.org/post/6665.html 直接指向 composer ...

  4. php把数据转换为json格式

    public function demos(){ $data=[ 'state'=>1, 'msg'=>'更新成功' ]; return json_encode($data); }

  5. Python 自然语言处理笔记(一)

    一. NLTK的几个常用函数 1. Concordance 实例如下: >>> text1.concordance("monstrous") Displaying ...

  6. Win10系列:VC++媒体播放控制2

    (3)停止视频播放 接下来添加对视频文件播放的停止控制,打开MainPage.xaml文件,并在Grid元素中添加一个"停止"按钮,用于停止视频的播放,代码如下所示: <Bu ...

  7. day06字典类型

    基本使用: 1.用途:用来存多个(不同种类的)值 2定义方式:在{}内用逗号分隔开多个key:value的元素,其中value可以是任意数据类型,而key的功能通常是用来描述value的,所以key通 ...

  8. 利用FFMPEG命令进行文件分割

    ffmpeg -ss 00:00:00 -i input.mp4 -c copy -t 60 output.mp4 -ss 表示视频分割的起始时间,-t 表示分割时长,同时也可以用 00:01:00表 ...

  9. Java遍历集合的几种方法分析(实现原理、算法性能、适用场合)

    概述 Java语言中,提供了一套数据集合框架,其中定义了一些诸如List.Set等抽象数据类型,每个抽象数据类型的各个具体实现,底层又采用了不同的实现方式,比如ArrayList和LinkedList ...

  10. 打开和写入word文档

    一. 使用win32读取word内容 # -*- coding: utf-8 -*- from win32com import client as wc def readDocx2(): word = ...