transformer
transformer¶
- class hanlp.layers.embeddings.contextual_word_embedding.ContextualWordEmbedding(field: str, transformer: str, average_subwords=False, scalar_mix: Optional[Union[hanlp.layers.scalar_mix.ScalarMixWithDropoutBuilder, int]] = None, word_dropout: Optional[Union[float, Tuple[float, str]]] = None, max_sequence_length=None, truncate_long_sequences=False, cls_is_bos=False, sep_is_eos=False, ret_token_span=True, ret_subtokens=False, ret_subtokens_group=False, ret_prefix_mask=False, ret_raw_hidden_states=False, transformer_args: Optional[Dict[str, Any]] = None, use_fast=True, do_basic_tokenize=True, trainable=True)[source]¶
- A contextual word embedding builder which builds a - ContextualWordEmbeddingModuleand a- TransformerSequenceTokenizer.- Parameters
- field – The field to work on. Usually some token fields. 
- transformer – An identifier of a - PreTrainedModel.
- average_subwords – - Trueto average subword representations.
- scalar_mix – Layer attention. 
- word_dropout – Dropout rate of randomly replacing a subword with MASK. 
- max_sequence_length – The maximum sequence length. Sequence longer than this will be handled by sliding window. 
- truncate_long_sequences – - Trueto return hidden states of each layer.
- cls_is_bos – - Truemeans the first token of input is treated as [CLS] no matter what its surface form is.- False(default) means the first token is not [CLS], it will have its own embedding other than the embedding of [CLS].
- sep_is_eos – - Truemeans the last token of input is [SEP].- Falsemeans it’s not but [SEP] will be appended,- Nonemeans it dependents on input[-1] == [EOS].
- ret_token_span – - Trueto return span of each token measured by subtoken offsets.
- ret_subtokens – - Trueto return list of subtokens belonging to each token.
- ret_subtokens_group – - Trueto return list of offsets of subtokens belonging to each token.
- ret_prefix_mask – - Trueto generate a mask where each non-zero element corresponds to a prefix of a token.
- ret_raw_hidden_states – - Trueto return hidden states of each layer.
- transformer_args – Extra arguments passed to the transformer. 
- use_fast – Whether or not to try to load the fast version of the tokenizer. 
- do_basic_tokenize – Whether to do basic tokenization before wordpiece. 
- trainable – - Falseto use static embeddings.
 
 - module(training=True, **kwargs) Optional[torch.nn.modules.module.Module][source]¶
- Build a module for this embedding. - Parameters
- **kwargs – Containing vocabs, training etc. Not finalized for now. 
- Returns
- A module. 
 
 - transform(**kwargs) hanlp.transform.transformer_tokenizer.TransformerSequenceTokenizer[source]¶
- Build a transform function for this embedding. - Parameters
- **kwargs – Containing vocabs, training etc. Not finalized for now. 
- Returns
- A transform function. 
 
 
- class hanlp.layers.embeddings.contextual_word_embedding.ContextualWordEmbeddingModule(field: str, transformer: str, transformer_tokenizer: transformers.tokenization_utils.PreTrainedTokenizer, average_subwords=False, scalar_mix: Optional[Union[hanlp.layers.scalar_mix.ScalarMixWithDropoutBuilder, int]] = None, word_dropout=None, max_sequence_length=None, ret_raw_hidden_states=False, transformer_args: Optional[Dict[str, Any]] = None, trainable=True, training=True)[source]¶
- A contextualized word embedding module. - Parameters
- field – The field to work on. Usually some token fields. 
- transformer – An identifier of a - PreTrainedModel.
- transformer_tokenizer – 
- average_subwords – - Trueto average subword representations.
- scalar_mix – Layer attention. 
- word_dropout – Dropout rate of randomly replacing a subword with MASK. 
- max_sequence_length – The maximum sequence length. Sequence longer than this will be handled by sliding window. 
- ret_raw_hidden_states – - Trueto return hidden states of each layer.
- transformer_args – Extra arguments passed to the transformer. 
- trainable – - Falseto use static embeddings.
- training – - Falseto skip loading weights from pre-trained transformers.
 
 - forward(batch: dict, mask=None, **kwargs)[source]¶
- Defines the computation performed at every call. - Should be overridden by all subclasses. - Note - Although the recipe for forward pass needs to be defined within this function, one should call the - Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
 
