コード例 #1
0
 def get_encoded(self, sentences):
   s_bert_sentence_embs = t.stack([data.sentence_to_embedding(s) for s in sentences])
   inpts = self.minify_layer(s_bert_sentence_embs).view(-1, self.batch_size, self.input_size)
   outs, (encoder_hn, _) = self.encoder(inpts, (self.EOF(), self.encoder_c0()))
   # for_select = t.cat((self.EOF(), outs)) # No detach
   for_select = outs # No detach
   return for_select, encoder_hn
コード例 #2
0
 def get_encoded(self, sentences):
   s_bert_sentence_embs = t.stack([data.sentence_to_embedding(s) for s in sentences]) # (seq_len, s_bert_out_size)
   inpts = self.minify_layer(s_bert_sentence_embs).view(-1, self.batch_size, self.input_size) # (seq_len, batch_size, input_size)
   # encode
   outs, (encoder_hn, _) = self.encoder(inpts, (self.EOF(), self.encoder_c0()))
   # prepare for_select
   for_select = t.cat((self.EOF(), outs)).detach()
   return for_select, encoder_hn
コード例 #3
0
ファイル: log.py プロジェクト: zhuobinggang/research
def log():
    ss = ['SOF', 'hello world!', 'EOF']
    embs = t.stack([data.sentence_to_embedding(s)
                    for s in ss])  # (seq_len, s_bert_out_size)
    minify_layer = t.nn.Linear(s_bert_out_size, input_size)
    minified_embs = minify_layer(embs).view(
        -1, batch_size, input_size)  # (seq_len, batch_size, input_size)
    encoder = t.nn.LSTM(input_size, hidden_size)
コード例 #4
0
 def decoder_c0(self):
   if self.decoder_c0_cached is None:
     self.decoder_c0_cached = data.sentence_to_embedding('decoder_c0')
   return  self.minify_layer(self.decoder_c0_cached).view(1, self.batch_size, -1) 
コード例 #5
0
 def SOF(self):
   if self.SOF_cached is None:
     self.SOF_cached = data.sentence_to_embedding('SOF') 
   return self.minify_layer(self.SOF_cached).view(1, self.batch_size, -1)