作者tmacfly (幼女狂想曲)
看板Python
标题[问题] Sequence to Sequench LSTM echo numbers
时间Thu Jan 4 13:57:56 2018
大家好 本版首po
最近在学习Encoder-Decoder LSTM,看到一个范例是使用这个model去echo一个序列中前
几个数字
举例:
Xtrain ytrain
[4, 1, 12, 5, 3, 9] [4, 1, 0, 0, 0, 0]
[3, 8, 4, 1, 0, 10] [3, 8, 0, 0, 0, 0]
[7, 11, 9, 5, 1, 8] [7, 11, 0, 0, 0, 0]
之後加上Bidirectional和Attention,效能有比原本的大幅提升,但现在我想把这个问题
做一点修改,想要echo的部分是某个指定连续的两个数字,但这指定的连续两个数字在每
一个序列中的位置不一样
举例:
假设想要的partial sequence是[16, Z],Z是任意数字,但就是接在16後面,所以Xtrain
和ytrain可能长这样
Xtrain ytrain
[4, 1, 12, 5, 3, 9, 16, 7, 0, 11] [16, 7, 0, 0, 0, 0, 0, 0, 0, 0]
[5, 16, 12, 3, 9, 10, 2, 1, 8, 7] [16, 12, 0, 0, 0, 0, 0, 0, 0, 0]
[6, 3, 10, 17, 16, 2, 5, 9, 11, 4] [16, 2, 0, 0, 0, 0, 0, 0, 0, 0]
Xtrain和ytrain会先做one-hot encode,但如果这样会train不起来
我想说会不会是ytrain的样子要做修改,但用位置做标记也不合理
把ytrain改成[0, 0, 0, 0, 0, 0, 16, 7, 0, 0]再去做one-hot encode,也train不起来
我目前想的是ytrain的样子要做修改,然後才fit到model里,但目前就是卡住了,不知道
该怎麽修改
希望有人能提供任何意见
附上范例连结:
https://machinelearningmastery.com/encoder-decoder-attention-sequence-to-sequence-prediction-keras/
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.9.226.170
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1515045482.A.494.html
1F:→ bibo9901: 世界上有这麽多真实的时序资料 为什麽要做这麽怪的题目 01/04 14:19
2F:→ bibo9901: 语言模型、语音辨识、甚至MNIST都能用RNN做 做这干嘛? 01/04 14:19
3F:→ bibo9901: 就算硬做, 这个教学从建模到实作技巧都....有进步空间 01/04 14:22
4F:→ Kazimir: 我有点怀疑seq2seq是不是真的能做到你想要的.. 01/04 19:22
5F:→ liang1230: 用pointer network试试 只是你要给的变成头尾的位置 01/04 23:40
6F:推 aszx4510: 请教一下dataset大小? 01/05 01:55
7F:推 wilson85771: 如果每次都是找16的话,就直接用16去做attention 01/06 00:09