我有一维信号,我希望使用seq2seq从整数电流转换为DNA序列(4字母字母)。
我的输入数据的形状为>>> from sort import sortexample
>>> sample = [2,7,6,5,4,3,1]
>>> sortexample.selectionsort(sample)
,我的输出数据为[batch_size, 1000, 1]
,其中我将基本字母表中的每个单词编码为固定长度的浮点数向量(介于4到64之间,似乎更长)会更好)。我通过一个2层,64单元的LSTM编码器发送它,然后将Bahdanau Attention应用于一个2层,64单元的LSTM解码器。不幸的是,我的大多数输出似乎长约5个字。
我已经读过seq2seq可以处理“长”句子(Sutskever et al., page 7)但是到目前为止我无法在一个非常小的输出词汇表上复制这个成功。理想情况下,如果可能的话,我希望将输入长度增加10倍或100倍。
我担心编码的“思想向量”可能根本就没有为长序列存储足够的信息。有没有人有关于如何使Seq2Seq模型使用长句的经验/想法?