NLP seq2seq代码编写技巧
数据
- tokenization,离散符号,翻译,划分token
- token2idx,将token变成idx
- add SoS&EoS,开头和结尾添加标识符,start of sentence,end of sentence
collate_fn
:pad_sequence
、label=target[:,1:]
、decoder_input=target[:, :-1]
- 每一句话的长度都不一样,对于batch进行后处理,填充到最长句子的长度
torch.nn.utils.rnn.pad_sequence
collate_fn
输入是多个训练对,batch_size
个- label获取从第1个位置