Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def __init__(
self,
vocab: Vocabulary,
text_field_embedder: TextFieldEmbedder,
matcher_word: BiMpmMatching,
encoder1: Seq2SeqEncoder,
matcher_forward1: BiMpmMatching,
matcher_backward1: BiMpmMatching,
encoder2: Seq2SeqEncoder,
matcher_forward2: BiMpmMatching,
matcher_backward2: BiMpmMatching,
aggregator: Seq2VecEncoder,
classifier_feedforward: FeedForward,
dropout: float = 0.1,
initializer: InitializerApplicator = InitializerApplicator(),
regularizer: Optional[RegularizerApplicator] = None,
) -> None:
super().__init__(vocab, regularizer)
self.text_field_embedder = text_field_embedder
self.matcher_word = matcher_word
self.encoder1 = encoder1
self.matcher_forward1 = matcher_forward1
self.matcher_backward1 = matcher_backward1
self.encoder2 = encoder2
self.matcher_forward2 = matcher_forward2
self.matcher_backward2 = matcher_backward2
# Encoder
encoder_coref_params = coref_params.pop("encoder")
encoder_coref = Seq2SeqEncoder.from_params(encoder_coref_params)
self._encoder_coref = encoder_coref
shortcut_text_field_embedder_coref = ShortcutConnectTextFieldEmbedder(
base_text_field_embedder=self._text_field_embedder, previous_encoders=[self._encoder_emd]
)
self._shortcut_text_field_embedder_coref = shortcut_text_field_embedder_coref
# Tagger: Coreference
tagger_coref_params = coref_params.pop("tagger")
eval_on_gold_mentions = tagger_coref_params.pop_bool("eval_on_gold_mentions", False)
init_params = tagger_coref_params.pop("initializer", None)
initializer = (
InitializerApplicator.from_params(init_params) if init_params is not None else InitializerApplicator()
)
tagger_coref = CoreferenceCustom(
vocab=vocab,
text_field_embedder=self._shortcut_text_field_embedder_coref,
context_layer=self._encoder_coref,
mention_feedforward=FeedForward.from_params(tagger_coref_params.pop("mention_feedforward")),
antecedent_feedforward=FeedForward.from_params(tagger_coref_params.pop("antecedent_feedforward")),
feature_size=tagger_coref_params.pop_int("feature_size"),
max_span_width=tagger_coref_params.pop_int("max_span_width"),
spans_per_word=tagger_coref_params.pop_float("spans_per_word"),
max_antecedents=tagger_coref_params.pop_int("max_antecedents"),
lexical_dropout=tagger_coref_params.pop_float("lexical_dropout", 0.2),
initializer=initializer,
regularizer=regularizer,
eval_on_gold_mentions=eval_on_gold_mentions,
def from_params(cls, vocab: Vocabulary, params: Params) -> 'DocumentQa':
embedder_params = params.pop("text_field_embedder")
text_field_embedder = TextFieldEmbedder.from_params(vocab, embedder_params)
phrase_layer = Seq2SeqEncoder.from_params(params.pop("phrase_layer"))
residual_encoder = Seq2SeqEncoder.from_params(params.pop("residual_encoder"))
span_start_encoder = Seq2SeqEncoder.from_params(params.pop("span_start_encoder"))
span_end_encoder = Seq2SeqEncoder.from_params(params.pop("span_end_encoder"))
no_answer_scorer = FeedForward.from_params(params.pop("no_answer_scorer"))
initializer = InitializerApplicator.from_params(params.pop("initializer", []))
dropout = params.pop('dropout', 0.2)
rnn_input_dropout = params.pop('rnn_input_dropout', 0.5)
# TODO: Remove the following when fully deprecated
evaluation_json_file = params.pop('evaluation_json_file', None)
if evaluation_json_file is not None:
logger.warning("the 'evaluation_json_file' model parameter is deprecated, please remove")
mask_lstms = params.pop('mask_lstms', True)
params.assert_empty(cls.__name__)
return cls(vocab=vocab,
text_field_embedder=text_field_embedder,
phrase_layer=phrase_layer,
residual_encoder=residual_encoder,
span_start_encoder=span_start_encoder,
span_end_encoder=span_end_encoder,
def __init__(self, vocab: Vocabulary,
text_field_embedder: TextFieldEmbedder,
text_encoder: Seq2SeqEncoder,
variational_autoencoder: FeedForward = None,
sentiment_classifier: FeedForward = None,
topic_dim: int = 20,
freeze_feature_extraction: bool = False,
classification_mode: bool = False,
pretrained_file: str = None,
initializer: InitializerApplicator = InitializerApplicator(),
regularizer: Optional[RegularizerApplicator] = None) -> None:
super(TopicRNN, self).__init__(vocab, regularizer)
self.metrics = {
'cross_entropy': Average(),
'negative_kl_divergence': Average(),
'stopword_loss': Average()
}
self.classification_mode = classification_mode
if classification_mode:
self.metrics['sentiment'] = CategoricalAccuracy()
if pretrained_file:
archive = load_archive(pretrained_file)
pretrained_model = archive.model
def __init__(self, vocab: Vocabulary,
text_field_embedder: TextFieldEmbedder,
stacked_encoder: Seq2SeqEncoder,
predicate_feature_dim: int,
dim_hidden: int = 100,
embedding_dropout: float = 0.0,
initializer: InitializerApplicator = InitializerApplicator(),
regularizer: Optional[RegularizerApplicator] = None):
super(SpanDetector, self).__init__(vocab, regularizer)
self.dim_hidden = dim_hidden
self.text_field_embedder = text_field_embedder
self.predicate_feature_embedding = Embedding(2, predicate_feature_dim)
self.embedding_dropout = Dropout(p=embedding_dropout)
self.threshold_metric = ThresholdMetric()
self.stacked_encoder = stacked_encoder
self.span_hidden = SpanRepAssembly(self.stacked_encoder.get_output_dim(), self.stacked_encoder.get_output_dim(), self.dim_hidden)
self.pred = TimeDistributed(Linear(self.dim_hidden, 1))
def __init__(self,
vocab: Vocabulary,
embedding_size: int,
hidden_size: int,
num_layers: int,
splits: List[int] = [],
dropout: float = 0.4,
dropouth: float = 0.3,
dropouti: float = 0.65,
dropoute: float = 0.1,
wdrop: float = 0.5,
alpha: float = 2.0,
beta: float = 1.0,
tie_weights: bool = False,
initializer: InitializerApplicator = InitializerApplicator()) -> None:
super(AwdLstmLanguageModel, self).__init__(vocab)
# Model architecture
self.embedding_size = embedding_size
self.hidden_size = hidden_size
self.num_layers = num_layers
self.tie_weights = tie_weights
self.splits = splits
self.alpha = alpha
self.beta = beta
# Dropout stuff
self.locked_dropout = LockedDropout()
self.dropouti = dropouti
self.dropouth = dropouth
self.dropoute = dropoute
def __init__(self, vocab, nb_hidden, at_path='data/dialog-babi-task5-full-dialogs-trn.txt',
initializer: InitializerApplicator = InitializerApplicator()):
super(HybridCodeLSTM, self).__init__(vocab)
self.et = HCNEntityTracker()
self.at = HCNActionTracker(self.et, at_path)
self.bow_enc = BoW_encoder(at_path)
self.emb = UtteranceEmbed()
self.action_size = self.at.action_size
self.obs_size = self.emb.dim + self.bow_enc.vocab_size + self.et.num_features
self.nb_hidden = nb_hidden
self.init_state_c = Variable(torch.zeros(1, self.nb_hidden))
self.init_state_h = Variable(torch.zeros(1, self.nb_hidden))
self.net = torch.nn.LSTMCell(input_size=self.nb_hidden, hidden_size=self.nb_hidden)
self._loss = torch.nn.CrossEntropyLoss()
initializer(self)
question_encoder = None
if share_encoders:
choice_encoder = question_encoder
else:
# choice encoder
choice_encoder_params = params.pop("choice_encoder", None)
if choice_encoder_params is not None:
choice_encoder = Seq2SeqEncoder.from_params(choice_encoder_params)
else:
choice_encoder = None
init_params = params.pop('initializer', None)
initializer = (InitializerApplicator.from_params(init_params)
if init_params is not None
else InitializerApplicator())
similarity_function = SimilarityFunction.from_params(params.pop("similarity_function"))
projection_feedforward = FeedForward.from_params(params.pop('projection_feedforward'))
inference_encoder = Seq2SeqEncoder.from_params(params.pop("inference_encoder"))
output_feedforward = FeedForward.from_params(params.pop('output_feedforward'))
output_logit = FeedForward.from_params(params.pop('output_logit'))
initializer = InitializerApplicator.from_params(params.pop('initializer', []))
regularizer = RegularizerApplicator.from_params(params.pop('regularizer', []))
return cls(vocab=vocab,
text_field_embedder=text_field_embedder,
question_encoder=question_encoder,
choice_encoder=choice_encoder,
embeddings_dropout_value=embeddings_dropout_value,
encoder_dropout_value=encoder_dropout_value,
similarity_function=similarity_function,
softdict_feedforward: FeedForward,
softdict_pretrained_path: str,
encoder: Seq2SeqEncoder,
feature_size: int,
max_span_width: int,
span_label_namespace: str = "span_tags",
token_label_namespace: str = "token_tags",
feedforward: Optional[FeedForward] = None,
token_label_encoding: Optional[str] = None,
constraint_type: Optional[str] = None,
include_start_end_transitions: bool = True,
constrain_crf_decoding: bool = None,
calculate_span_f1: bool = None,
dropout: Optional[float] = None,
verbose_metrics: bool = True,
initializer: InitializerApplicator = InitializerApplicator(),
regularizer: Optional[RegularizerApplicator] = None) -> None:
super().__init__(vocab, regularizer)
self.span_label_namespace = span_label_namespace
self.token_label_namespace = token_label_namespace
self.num_span_tags = self.vocab.get_vocab_size(span_label_namespace)
self.num_token_tags = self.vocab.get_vocab_size(token_label_namespace)
self.text_field_embedder = text_field_embedder
self.max_span_width = max_span_width
self.encoder = encoder
self._verbose_metrics = verbose_metrics
self.end_token_embedding = torch.nn.Parameter(torch.zeros(text_field_embedder.get_output_dim()))
def __init__(self,
vocab: Vocabulary,
bert_pretrained_model: str,
dropout_prob: float = 0.1,
max_count: int = 10,
initializer: InitializerApplicator = InitializerApplicator(),
regularizer: Optional[RegularizerApplicator] = None,
answering_abilities: List[str] = None,
number_rep: str = 'first',
arithmetic: str = 'base',
special_numbers : List[int] = None) -> None:
super().__init__(vocab, regularizer)
if answering_abilities is None:
self.answering_abilities = ["passage_span_extraction", "question_span_extraction",
"arithmetic", "counting"]
else:
self.answering_abilities = answering_abilities
self.number_rep = number_rep
self.BERT = BertModel.from_pretrained(bert_pretrained_model)
self.tokenizer = BertTokenizer.from_pretrained(bert_pretrained_model)