View source on GitHub
|
Reuse encoder configuration.
Inherits From: Config, ParamsDict
tfm.nlp.encoders.ReuseEncoderConfig(
default_params: dataclasses.InitVar[Optional[Mapping[str, Any]]] = None,
restrictions: dataclasses.InitVar[Optional[List[str]]] = None,
vocab_size: int = 30522,
hidden_size: int = 768,
num_layers: int = 12,
num_attention_heads: int = 12,
hidden_activation: str = 'gelu',
intermediate_size: int = 3072,
dropout_rate: float = 0.1,
attention_dropout_rate: float = 0.1,
max_position_embeddings: int = 512,
type_vocab_size: int = 2,
initializer_range: float = 0.02,
embedding_size: Optional[int] = None,
output_range: Optional[int] = None,
return_all_encoder_outputs: bool = False,
norm_first: bool = False,
reuse_attention: int = -1,
use_relative_pe: bool = False,
pe_max_seq_length: int = 512,
max_reuse_layer_idx: int = 6
)
Attributes |
|---|
BUILDER
default_params
restrictions
vocab_size
hidden_size
num_layers
num_attention_heads
hidden_activation
intermediate_size
dropout_rate
attention_dropout_rate
max_position_embeddings
type_vocab_size
initializer_range
embedding_size
output_range
return_all_encoder_outputs
norm_first
reuse_attention
use_relative_pe
pe_max_seq_length
max_reuse_layer_idx
Methods
as_dict
as_dict()
Returns a dict representation of params_dict.ParamsDict.
For the nested params_dict.ParamsDict, a nested dict will be returned.
from_args
@classmethodfrom_args( *args, **kwargs )
Builds a config from the given list of arguments.
from_json
@classmethodfrom_json( file_path: str )
Wrapper for from_yaml.
from_yaml
@classmethodfrom_yaml( file_path: str )
get
get(
key, value=None
)
Accesses through built-in dictionary get method.
lock
lock()
Makes the ParamsDict immutable.
override
override(
override_params, is_strict=True
)
Override the ParamsDict with a set of given params.
| Args |
|---|
override_params
is_strict
override_params must be present in the ParamsDict. If
False, keys in override_params can be different from what is currently
defined in the ParamsDict. In this case, the ParamsDict will be extended
to include the new keys.
replace
replace(
**kwargs
)
Overrides/returns a unlocked copy with the current config unchanged.
validate
validate()
Validate the parameters consistency based on the restrictions.
This method validates the internal consistency using the pre-defined list of restrictions. A restriction is defined as a string which specifies a binary operation. The supported binary operations are {'==', '!=', '<', '<=', '>', '>='}. Note that the meaning of these operators are consistent with the underlying Python immplementation. Users should make sure the define restrictions on their type make sense.
For example, for a ParamsDict like the following
a:
a1: 1
a2: 2
b:
bb:
bb1: 10
bb2: 20
ccc:
a1: 1
a3: 3
one can define two restrictions like this ['a.a1 == b.ccc.a1', 'a.a2 <= b.bb.bb2']
| What it enforces are | |
|---|---|
- a.a1 = 1 == b.ccc.a1 = 1
- a.a2 = 2 <= b.bb.bb2 = 20
| Raises |
|---|
KeyError
ValueError
__contains__
__contains__(
key
)
Implements the membership test operator.
__eq__
__eq__(
other
)
Class Variables |
|---|
(<class 'str'>,
<class 'int'>,
<class 'float'>,
<class 'bool'>,
<class 'NoneType'>)
['_locked', '_restrictions']
(<class 'list'>, <class 'tuple'>)
0.1
None
0.1
None
'gelu'
768
0.02
3072
512
6
False
12
12
None
512
None
False
-1
2
False
30522
View source on GitHub