一、背景
解释RNN为什么那么困难:
1. hidden state多,更新hidden state所用的参数更多。
2.使用RNN处理的文本等序列数据,本身语义信息繁多,难以解释。
3.输入一个单词会导致很多hidden state产生变化,而一个hidden state又受很多单词影响,多对多的关系难以分析。
ok,RNNVis[1]自称是解决第3点的,源代码为:https://github.com/myaooo/RNNVi
二、RNNvis做了什么
1. 用期望反应值表示这种多对多的关系:每个hidden state对每个word有一个期望反应值。
2. 这样子就可以搞一个二分图了对吧表示多个word和多个hidden state的多对多关系,但是这么多条边咋细看研究呀,谱聚类了解一下。
3. 当一个句子在预测的过程中,每一个time step,遗忘了多少信息,新增了多少信息,这些信息又和哪些hidden state cluster有关,而这些hidden state cluster,又和哪些word cluster有关,这不就能分析特征了吗!听起来特别美好!
三、RNNVis怎么做的
1. 期望反应值计算:
时刻的hidden state vector
受
和
影响,所以
受
和
影响,因此
可以反应一个单词想知道一个hidden state的影响只能针对不同的,但因为
的影响,只能针对
求期望了。