Python allennlp.modules.Embedding() Examples
The following are 23
code examples of allennlp.modules.Embedding().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
allennlp.modules
, or try the search function
.
Example #1
Source File: mesim_wn_v1_0.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #2
Source File: simple_nnmodel_refactor.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #3
Source File: simple_nnmodel.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #4
Source File: nn_doc_model.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #5
Source File: nn_doc_model.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #6
Source File: mesim_wn_simi_v1_3.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #7
Source File: base_nsmn_vcss_v14_4l_doeval_scheduled.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #8
Source File: base_nsmn_cvss_v18_4cl_fdoeval_scheduled.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #9
Source File: nsmn_sent_wise_v1_1.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, max_span_l=50, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu', use_extra_lex_feature=True): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM_SENT_WISE(rnn_size_in, rnn_size_out, max_l, max_span_l, mlp_d, num_of_class, drop_r, activation_type) self.use_extra_lex_feature = use_extra_lex_feature
Example #10
Source File: base_nsmn_vcss_v16_4cl_fdoeval_scheduled.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #11
Source File: modified_esim_v1_0.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #12
Source File: base_nsmn_cvss_v19_4cl_fdoeval_scheduled.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #13
Source File: base_nsmn_vcss_v17_4cl_fdoeval_scheduled.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #14
Source File: esim.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #15
Source File: mesim_wn_simi_v1_2.py From combine-FEVER-NSMN with MIT License | 6 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_options.json" weight_file = "https://s3-us-west-2.amazonaws.com/allennlp/models/elmo/2x4096_512_2048cnn_2xhighway/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5" num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #16
Source File: model.py From combine-FEVER-NSMN with MIT License | 5 votes |
def __init__(self, weight, vocab_size, embedding_dim, rnn_size_in=(1024 + 300, 1024 + 300), rnn_size_out=(300, 300), max_l=150, mlp_d=300, num_of_class=3, drop_r=0.5, activation_type='relu'): super(Model, self).__init__() self.glove_embd_layer = Embedding(vocab_size, embedding_dim, weight=weight, padding_index=0) options_file = 'https://s3-us-west-2.amazonaws.com/allennlp/models/'\ 'elmo/2x4096_512_2048cnn_2xhighway/'\ 'elmo_2x4096_512_2048cnn_2xhighway_options.json' weight_file = 'https://s3-us-west-2.amazonaws.com/allennlp/models/'\ 'elmo/2x4096_512_2048cnn_2xhighway/'\ 'elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5' num_of_elmo = 1 self.max_l = max_l self.elmo_embd_layer = Elmo(options_file, weight_file, num_of_elmo, dropout=0) self.esim_layer = ESIM(rnn_size_in, rnn_size_out, max_l, mlp_d, num_of_class, drop_r, activation_type)
Example #17
Source File: list_field_test.py From allennlp with Apache License 2.0 | 5 votes |
def __init__(self, vocab: Vocabulary) -> None: super().__init__(vocab) weight = torch.ones(vocab.get_vocab_size(), 10) token_embedding = Embedding( num_embeddings=vocab.get_vocab_size(), embedding_dim=10, weight=weight, trainable=False ) self.embedder = BasicTextFieldEmbedder({"words": token_embedding})
Example #18
Source File: nlvr_semantic_parser.py From magnitude with MIT License | 5 votes |
def __init__(self, vocab , sentence_embedder , action_embedding_dim , encoder , dropout = 0.0, rule_namespace = u'rule_labels') : super(NlvrSemanticParser, self).__init__(vocab=vocab) self._sentence_embedder = sentence_embedder self._denotation_accuracy = Average() self._consistency = Average() self._encoder = encoder if dropout > 0: self._dropout = torch.nn.Dropout(p=dropout) else: self._dropout = lambda x: x self._rule_namespace = rule_namespace self._action_embedder = Embedding(num_embeddings=vocab.get_vocab_size(self._rule_namespace), embedding_dim=action_embedding_dim) # This is what we pass as input in the first step of decoding, when we don't have a # previous action. self._first_action_embedding = torch.nn.Parameter(torch.FloatTensor(action_embedding_dim)) torch.nn.init.normal_(self._first_action_embedding) #overrides
Example #19
Source File: nlvr_semantic_parser.py From allennlp-semparse with Apache License 2.0 | 5 votes |
def __init__( self, vocab: Vocabulary, sentence_embedder: TextFieldEmbedder, action_embedding_dim: int, encoder: Seq2SeqEncoder, dropout: float = 0.0, rule_namespace: str = "rule_labels", ) -> None: super(NlvrSemanticParser, self).__init__(vocab=vocab) self._sentence_embedder = sentence_embedder self._denotation_accuracy = Average() self._consistency = Average() self._encoder = encoder if dropout > 0: self._dropout = torch.nn.Dropout(p=dropout) else: self._dropout = lambda x: x self._rule_namespace = rule_namespace self._action_embedder = Embedding( num_embeddings=vocab.get_vocab_size(self._rule_namespace), embedding_dim=action_embedding_dim, ) # This is what we pass as input in the first step of decoding, when we don't have a # previous action. self._first_action_embedding = torch.nn.Parameter(torch.FloatTensor(action_embedding_dim)) torch.nn.init.normal_(self._first_action_embedding)
Example #20
Source File: custom_composed_seq2seq.py From summarus with Apache License 2.0 | 5 votes |
def __init__(self, vocab: Vocabulary, source_text_embedder: TextFieldEmbedder, encoder: Seq2SeqEncoder, decoder: SeqDecoder, tied_source_embedder_key: Optional[str] = None, initializer: InitializerApplicator = InitializerApplicator(), regularizer: Optional[RegularizerApplicator] = None) -> None: super(CustomComposedSeq2Seq, self).__init__(vocab, regularizer) self._source_text_embedder = source_text_embedder self._encoder = encoder self._decoder = decoder if self._encoder.get_output_dim() != self._decoder.get_output_dim(): raise ConfigurationError(f"Encoder output dimension {self._encoder.get_output_dim()} should be" f" equal to decoder dimension {self._decoder.get_output_dim()}.") if tied_source_embedder_key: if not isinstance(self._source_text_embedder, BasicTextFieldEmbedder): raise ConfigurationError("Unable to tie embeddings," "Source text embedder is not an instance of `BasicTextFieldEmbedder`.") source_embedder = self._source_text_embedder._token_embedders[tied_source_embedder_key] if not isinstance(source_embedder, Embedding): raise ConfigurationError("Unable to tie embeddings," "Selected source embedder is not an instance of `Embedding`.") if source_embedder.get_output_dim() != self._decoder.target_embedder.get_output_dim(): raise ConfigurationError(f"Output Dimensions mismatch between" f"source embedder and target embedder.") self._source_text_embedder._token_embedders[tied_source_embedder_key] = self._decoder.target_embedder initializer(self)
Example #21
Source File: wikitables_semantic_parser.py From magnitude with MIT License | 4 votes |
def __init__(self, vocab , question_embedder , action_embedding_dim , encoder , entity_encoder , max_decoding_steps , use_neighbor_similarity_for_linking = False, dropout = 0.0, num_linking_features = 10, rule_namespace = u'rule_labels', tables_directory = u'/wikitables/') : super(WikiTablesSemanticParser, self).__init__(vocab) self._question_embedder = question_embedder self._encoder = encoder self._entity_encoder = TimeDistributed(entity_encoder) self._max_decoding_steps = max_decoding_steps self._use_neighbor_similarity_for_linking = use_neighbor_similarity_for_linking if dropout > 0: self._dropout = torch.nn.Dropout(p=dropout) else: self._dropout = lambda x: x self._rule_namespace = rule_namespace self._denotation_accuracy = WikiTablesAccuracy(tables_directory) self._action_sequence_accuracy = Average() self._has_logical_form = Average() self._action_padding_index = -1 # the padding value used by IndexField num_actions = vocab.get_vocab_size(self._rule_namespace) self._action_embedder = Embedding(num_embeddings=num_actions, embedding_dim=action_embedding_dim) self._output_action_embedder = Embedding(num_embeddings=num_actions, embedding_dim=action_embedding_dim) self._action_biases = Embedding(num_embeddings=num_actions, embedding_dim=1) # This is what we pass as input in the first step of decoding, when we don't have a # previous action, or a previous question attention. self._first_action_embedding = torch.nn.Parameter(torch.FloatTensor(action_embedding_dim)) self._first_attended_question = torch.nn.Parameter(torch.FloatTensor(encoder.get_output_dim())) torch.nn.init.normal_(self._first_action_embedding) torch.nn.init.normal_(self._first_attended_question) check_dimensions_match(entity_encoder.get_output_dim(), question_embedder.get_output_dim(), u"entity word average embedding dim", u"question embedding dim") self._num_entity_types = 4 # TODO(mattg): get this in a more principled way somehow? self._num_start_types = 5 # TODO(mattg): get this in a more principled way somehow? self._embedding_dim = question_embedder.get_output_dim() self._type_params = torch.nn.Linear(self._num_entity_types, self._embedding_dim) self._neighbor_params = torch.nn.Linear(self._embedding_dim, self._embedding_dim) if num_linking_features > 0: self._linking_params = torch.nn.Linear(num_linking_features, 1) else: self._linking_params = None if self._use_neighbor_similarity_for_linking: self._question_entity_params = torch.nn.Linear(1, 1) self._question_neighbor_params = torch.nn.Linear(1, 1) else: self._question_entity_params = None self._question_neighbor_params = None
Example #22
Source File: text2sql_parser.py From allennlp-semparse with Apache License 2.0 | 4 votes |
def __init__( self, vocab: Vocabulary, utterance_embedder: TextFieldEmbedder, action_embedding_dim: int, encoder: Seq2SeqEncoder, decoder_beam_search: BeamSearch, max_decoding_steps: int, input_attention: Attention, add_action_bias: bool = True, dropout: float = 0.0, initializer: InitializerApplicator = InitializerApplicator(), regularizer: Optional[RegularizerApplicator] = None, ) -> None: super().__init__(vocab, regularizer) self._utterance_embedder = utterance_embedder self._encoder = encoder self._max_decoding_steps = max_decoding_steps self._add_action_bias = add_action_bias self._dropout = torch.nn.Dropout(p=dropout) self._exact_match = Average() self._valid_sql_query = Average() self._action_similarity = Average() self._denotation_accuracy = Average() # the padding value used by IndexField self._action_padding_index = -1 num_actions = vocab.get_vocab_size("rule_labels") input_action_dim = action_embedding_dim if self._add_action_bias: input_action_dim += 1 self._action_embedder = Embedding( num_embeddings=num_actions, embedding_dim=input_action_dim ) self._output_action_embedder = Embedding( num_embeddings=num_actions, embedding_dim=action_embedding_dim ) # This is what we pass as input in the first step of decoding, when we don't have a # previous action, or a previous utterance attention. self._first_action_embedding = torch.nn.Parameter(torch.FloatTensor(action_embedding_dim)) self._first_attended_utterance = torch.nn.Parameter( torch.FloatTensor(encoder.get_output_dim()) ) torch.nn.init.normal_(self._first_action_embedding) torch.nn.init.normal_(self._first_attended_utterance) self._beam_search = decoder_beam_search self._decoder_trainer = MaximumMarginalLikelihood(beam_size=1) self._transition_function = BasicTransitionFunction( encoder_output_dim=self._encoder.get_output_dim(), action_embedding_dim=action_embedding_dim, input_attention=input_attention, add_action_bias=self._add_action_bias, dropout=dropout, ) initializer(self)
Example #23
Source File: custom_autoregressive_seq2seq_decoder.py From summarus with Apache License 2.0 | 4 votes |
def __init__( self, vocab: Vocabulary, decoder_net: DecoderNet, max_decoding_steps: int, target_embedder: Embedding, target_namespace: str = "tokens", tie_output_embedding: bool = False, scheduled_sampling_ratio: float = 0, label_smoothing_ratio: Optional[float] = None, beam_size: int = 4, tensor_based_metric: Metric = None, token_based_metric: Metric = None, ) -> None: super().__init__(target_embedder) self._vocab = vocab self._decoder_net = decoder_net self._max_decoding_steps = max_decoding_steps self._target_namespace = target_namespace self._label_smoothing_ratio = label_smoothing_ratio self._start_index = self._vocab.get_token_index(START_SYMBOL, self._target_namespace) self._end_index = self._vocab.get_token_index(END_SYMBOL, self._target_namespace) self._beam_search = BeamSearch(self._end_index, max_steps=max_decoding_steps, beam_size=beam_size) target_vocab_size = self._vocab.get_vocab_size(self._target_namespace) if self.target_embedder.get_output_dim() != self._decoder_net.target_embedding_dim: raise ConfigurationError("Target Embedder output_dim doesn't match decoder module's input.") self._output_projection_layer = Linear(self._decoder_net.get_output_dim(), target_vocab_size) if tie_output_embedding: if self._output_projection_layer.weight.shape != self.target_embedder.weight.shape: raise ConfigurationError("Can't tie embeddings with output linear layer, due to shape mismatch") self._output_projection_layer.weight = self.target_embedder.weight self._tensor_based_metric = tensor_based_metric self._token_based_metric = token_based_metric self._scheduled_sampling_ratio = scheduled_sampling_ratio