ãµã³ãã«ããªãã®ã§ã¡ãã£ãšãããã«ããããšæããŸãããç°¡åã«èª¬æããŸãïŒä»ãäžå
·åã§ææ°ã®ããã¥ã¡ã³ããå
¬éãããŠããªãããšã«æ°ã¥ããŸããïŒã
ä»ãŸã§LSTMã¯åãããããµã€ãºã®å
¥åãã¯ãã«ïŒxãšããŸãïŒãå
¥ããŠããŸããããå¯å€é·ã®å
¥åãæ±ããšãã¯å調æžå°ããå
¥åãæ±ããŸãã
çãããããµã€ãºã®å
¥åããã£ãå ŽåãLSTMã®å
éšç¶æ
ã®hãcã¯ããã®åã ãæŽæ°ãããŸãã
äŸãã°len(x1) = 3, len(x2) = 2ã®ãšããlstm(x1)ã§ãããããæ°3ã®å
éšç¶æ
ãã§ãããã®ããšlstm(x2)ãåŒã¶ãšh[0:2]ãšc[0:2]ã®é åã ãæŽæ°ãããŸãã
以äžã®issueãåèã«ããŠãã ããã
ãããå©çšããã«ã¯ããŸãå
¥åã·ãŒã±ã³ã¹ãé·ãã®é·ãé ã«äžŠã¹æ¿ããŠãã ããã
ãã®ããšè»¢çœ®ããšã£ãŠããããããã®åèªã·ãŒã±ã³ã¹ã«ããŠãã ããã
転眮ã®ããã®é¢æ°ãšããŠãfunctions.transpose_sequenceãå©çšããŠãã ããã
hãcã®æ¬¡å
ã®é çªãå€ããããã«ãfunctions.permutate颿°ãå©çšããŠãã ããã
ã¡ãããšåäœç¢ºèªããšã£ãŠãŸãããã以äžã®æ§ãªæãã§äœ¿ããŸãã
sequences = [
 [w1, w2, w3, w4],  # "w1w2w3w4" ãšããç³»åã以äžåã
 [w5, w6, w7],
 [w8, w9]
]
words = transpose_sequnce(sequences)  # wordsã¯[[w1, w5, w8], [w2, w6, w9], [w3, w7], [w4]]ã«ãªã
for w in words:
  lstm(w)
h = lstm.h   # h.data.shape == (3,)
> åºåç³»åãäžã€ã®Variableã«ãŸãšãããã圢ã«ãªãããšãã颚ã«ãªã£ãã®ã§ããããã
ãã¡ãã¯å¥PRã§é²è¡äžã§ãè¿ã
ããŒãžããããšæããŸãã
ç¹ã«cuDNNã®RNNãå©çšããã®ã§ãé床ãä»ãŸã§ã®Chainerã®æ°åã«ãªããšæããŸãã