Skip to content
Snippets Groups Projects
Commit 2e2525de authored by Mateusz Klimaszewski's avatar Mateusz Klimaszewski
Browse files

Enable weighted average of LM embeddings.

parent 1982161f
Branches
No related merge requests found
...@@ -49,7 +49,7 @@ local lemma_char_dim = 64; ...@@ -49,7 +49,7 @@ local lemma_char_dim = 64;
# Character embedding dim, int # Character embedding dim, int
local char_dim = 64; local char_dim = 64;
# Word embedding projection dim, int # Word embedding projection dim, int
local projected_embedding_dim = 100; local projected_embedding_dim = 768;
# Loss weights, dict[str, int] # Loss weights, dict[str, int]
local loss_weights = { local loss_weights = {
xpostag: 0.05, xpostag: 0.05,
...@@ -202,6 +202,7 @@ assert pretrained_tokens == null || pretrained_transformer_name == null: "Can't ...@@ -202,6 +202,7 @@ assert pretrained_tokens == null || pretrained_transformer_name == null: "Can't
}, },
token: if use_transformer then { token: if use_transformer then {
type: "transformers_word_embeddings", type: "transformers_word_embeddings",
last_layer_only: false,
model_name: pretrained_transformer_name, model_name: pretrained_transformer_name,
projection_dim: projected_embedding_dim, projection_dim: projected_embedding_dim,
tokenizer_kwargs: if std.startsWith(pretrained_transformer_name, "allegro/herbert") tokenizer_kwargs: if std.startsWith(pretrained_transformer_name, "allegro/herbert")
......
...@@ -111,10 +111,12 @@ class TransformersWordEmbedder(token_embedders.PretrainedTransformerMismatchedEm ...@@ -111,10 +111,12 @@ class TransformersWordEmbedder(token_embedders.PretrainedTransformerMismatchedEm
projection_activation: Optional[allen_nn.Activation] = lambda x: x, projection_activation: Optional[allen_nn.Activation] = lambda x: x,
projection_dropout_rate: Optional[float] = 0.0, projection_dropout_rate: Optional[float] = 0.0,
freeze_transformer: bool = True, freeze_transformer: bool = True,
last_layer_only: bool = True,
tokenizer_kwargs: Optional[Dict[str, Any]] = None, tokenizer_kwargs: Optional[Dict[str, Any]] = None,
transformer_kwargs: Optional[Dict[str, Any]] = None): transformer_kwargs: Optional[Dict[str, Any]] = None):
super().__init__(model_name, super().__init__(model_name,
train_parameters=not freeze_transformer, train_parameters=not freeze_transformer,
last_layer_only=last_layer_only,
tokenizer_kwargs=tokenizer_kwargs, tokenizer_kwargs=tokenizer_kwargs,
transformer_kwargs=transformer_kwargs) transformer_kwargs=transformer_kwargs)
if projection_dim: if projection_dim:
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment