输入输出都是向量,或者说是矩阵。LSTM用于分类的话,后面一般会接softmax层。个人浅薄理解,拿动作识别分类举例,每个动作帧放入LSTM中训练,还是根据task来训练每个LSTM单元的Weights。所以LSTM的单元数量跟输入和输出都没有关系,甚至还可以几层LSTM叠加起来用。分类的话,一般用最后一个单元接上softmax层。LSTM结构是传统的RNN结构扩展,解决了传统RNN梯度消失/爆炸的问题,从而使得深层次的网络更容易训练。从这个角度理解,可能会容易很多。今年的ResNet也是使传统的CNN更容易训练weights。看来deeplearning越来越深是趋势啊。如果说训练,就一个关键,所谓LSTMUnroll,将RNN展开成一个静态的“并行”网络,内部有“侧向连接”,实现长的短时记忆功能(状态“记忆”在LSTMCell里)。如果说预测,也就一个关键,要将Cell的h和C弄出来,作为当前状态(也就是所谓“记忆”)作为init参数输入,这样,携带了当前记忆状态的网络,预测得到的就是下一个输入了,所谓的recurrent了。那份代码里还包含了一个使用cudnn的实现(built-inRNNoperator),这是一个高性能的版本,可以真正干活的。原来我也尝试搞懂一些天书般的公式,很快发现从那里入手是个错误。强烈推荐:理解LSTM网络(翻译自UnderstandingLSTMNetworks)只要有一点点CNN基础+半个小时,就可以通过这篇文章理解LSTM的基础原理。回答你的问题:和神经元个数无关,不知道你是如何理解“神经元”这个概念的,输入输出层保证tensor的维数和输入输出一致就可以了。
本文主要用于记录IBM发表于2017年的一篇论文(引用量超过300)。该论文主要是提出了一种句向量的自注意力模型(self-attention)。本笔记主要为方便初学者快速入门,以及自我回顾。
论文链接: https://arxivorg/pdf/170303130pdf
Github: https://githubcom/ExplorerFreda/Structured-Self-Attentive-Sentence-Embedding
基本目录如下:
------------------第一菇 - 摘要------------------
本文提出了一种新的基于“自注意力”机制的句向量表达方式。传统句向量表达通常是一个1维向量,而本文提出的句向量模型是一个2维矩阵,其中每一行都有各自不同的权重来构成该句子的向量表达。基于此种句向量模型,论文还同时提出了一种“自注意力”机制和一种特殊的模型正则化的方法。利用该种模型的好处就是句子的向量表达变得可视化,让我们清晰看到哪一部分最构成句子的向量。利用该种句向量表达,论文作者在3个公开数据集任务上均取得了优异的效果。
------------------第二菇 - 核心思想------------------
在word2vec刚流行的那个年代,大家都致力去寻找更好的词向量的表达,但是却没怎么重视过句向量的表达(因为句子本身由词组成,都有了词的向量,那句向量岂不是理所当然就出来了
欢迎分享,转载请注明来源:浪漫分享网
评论列表(0条)