shivanandmn commited on
Commit
f1cd615
·
verified ·
1 Parent(s): c35ba4f

Training in progress, step 500

Browse files
all_results.json ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "epoch": 4.998736842105263,
3
+ "eval_accuracy": 0.42753137093133137,
4
+ "eval_bleu": 0.14672943718286596,
5
+ "eval_loss": 3.099884033203125,
6
+ "eval_perplexity": 22.195377205390898,
7
+ "eval_runtime": 10.965,
8
+ "eval_samples": 1141,
9
+ "eval_samples_per_second": 104.059,
10
+ "eval_steps_per_second": 6.566,
11
+ "perplexity": 22.195377205390898,
12
+ "total_flos": 1.0584067483285586e+18,
13
+ "train_loss": 3.584141966119902,
14
+ "train_runtime": 28526.973,
15
+ "train_samples_per_second": 19.98,
16
+ "train_steps_per_second": 0.624
17
+ }
config.json CHANGED
@@ -4,7 +4,12 @@
4
  "ParallelGPT2LMHeadModel"
5
  ],
6
  "attn_pdrop": 0.1,
 
 
 
 
7
  "bos_token_id": 50256,
 
8
  "embd_pdrop": 0.1,
9
  "eos_token_id": 50256,
10
  "initializer_range": 0.02,
 
4
  "ParallelGPT2LMHeadModel"
5
  ],
6
  "attn_pdrop": 0.1,
7
+ "auto_map": {
8
+ "AutoConfig": "modeling_parallel_gpt2.ParallelGPT2Config",
9
+ "AutoModel": "modeling_parallel_gpt2.ParallelGPT2LMHeadModel"
10
+ },
11
  "bos_token_id": 50256,
12
+ "bottleneck_method": "concat",
13
  "embd_pdrop": 0.1,
14
  "eos_token_id": 50256,
15
  "initializer_range": 0.02,
eval_results.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "epoch": 4.998736842105263,
3
+ "eval_accuracy": 0.42753137093133137,
4
+ "eval_bleu": 0.14672943718286596,
5
+ "eval_loss": 3.099884033203125,
6
+ "eval_perplexity": 22.195377205390898,
7
+ "eval_runtime": 10.965,
8
+ "eval_samples": 1141,
9
+ "eval_samples_per_second": 104.059,
10
+ "eval_steps_per_second": 6.566,
11
+ "perplexity": 22.195377205390898
12
+ }
model.safetensors CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:5a821777bb11dfd632198f14ae0c0ce726eaececac5fb4323a5dffe1c426a28e
3
- size 1419322880
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4d42579b7903b46b75f5aecc1f943832ad871b6383666ceb81c3a200b23dcd3f
3
+ size 1427715776
modeling_parallel_gpt2.py ADDED
@@ -0,0 +1,496 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ """PyTorch OpenAI GPT-2 model modified to support parallel-gpt2, code copied from Huggingface"""
3
+
4
+
5
+ import warnings
6
+ from typing import Optional, Tuple, Union
7
+
8
+ import torch
9
+ import torch.utils.checkpoint
10
+ from torch import nn
11
+
12
+ from transformers.modeling_outputs import (
13
+ BaseModelOutputWithPastAndCrossAttentions,
14
+ CausalLMOutputWithCrossAttentions
15
+ )
16
+ from transformers.generation import GenerationMixin
17
+ from transformers.utils.model_parallel_utils import assert_device_map, get_device_map
18
+ from src.models.modeling_gpt2 import GPT2PreTrainedModel, GPT2Block
19
+ from transformers.models.gpt2.configuration_gpt2 import GPT2Config
20
+ from transformers.modeling_attn_mask_utils import _prepare_4d_attention_mask_for_sdpa, _prepare_4d_causal_attention_mask_for_sdpa
21
+
22
+ class ParallelGPT2Config(GPT2Config):
23
+ model_type = "parallel-gpt2"
24
+ architectures = ["ParallelGPT2LMHeadModel"]
25
+
26
+ class ParallelGPT2PretrainedModel(GPT2PreTrainedModel):
27
+ config_class = ParallelGPT2Config
28
+
29
+ class ParallelGPT2Model(ParallelGPT2PretrainedModel):
30
+ _supports_param_buffer_assignment = False
31
+
32
+ def __init__(self, config):
33
+ super().__init__(config)
34
+
35
+ self.embed_dim = config.hidden_size
36
+
37
+ self.wte = nn.Embedding(config.vocab_size, self.embed_dim)
38
+ self.wpe = nn.Embedding(config.max_position_embeddings, self.embed_dim)
39
+
40
+ self.drop = nn.Dropout(config.embd_pdrop)
41
+ if config.num_hidden_layers % 2 != 0:
42
+ raise ValueError("Number of hidden layers must be even")
43
+ self.h = nn.ModuleList([GPT2Block(config, layer_idx=i) for i in range(config.num_hidden_layers)])
44
+ self.ln_f = nn.LayerNorm(self.embed_dim, eps=config.layer_norm_epsilon)
45
+ self.config.bottleneck_method = getattr(config, "bottleneck_method", "mean")
46
+ if self.config.bottleneck_method=="concate":
47
+ self.bottleneck = nn.Linear(2*self.embed_dim, self.embed_dim)
48
+
49
+ # Model parallel
50
+ self.model_parallel = False
51
+ self.device_map = None
52
+ self.gradient_checkpointing = False
53
+ self._attn_implementation = config._attn_implementation
54
+
55
+ # Initialize weights and apply final processing
56
+ self.post_init()
57
+
58
+
59
+ def parallelize(self, device_map=None):
60
+ # Check validity of device_map
61
+ warnings.warn(
62
+ "`GPT2Model.parallelize` is deprecated and will be removed in v5 of Transformers, you should load your"
63
+ " model with `device_map='balanced'` in the call to `from_pretrained`. You can also provide your own"
64
+ " `device_map` but it needs to be a dictionary module_name to device, so for instance {'h.0': 0, 'h.1': 1,"
65
+ " ...}",
66
+ FutureWarning,
67
+ )
68
+ self.device_map = (
69
+ get_device_map(len(self.h), range(torch.cuda.device_count())) if device_map is None else device_map
70
+ )
71
+ assert_device_map(self.device_map, len(self.h))
72
+ self.model_parallel = True
73
+ self.first_device = "cpu" if "cpu" in self.device_map.keys() else "cuda:" + str(min(self.device_map.keys()))
74
+ self.last_device = "cuda:" + str(max(self.device_map.keys()))
75
+ self.wte = self.wte.to(self.first_device)
76
+ self.wpe = self.wpe.to(self.first_device)
77
+ # Load onto devices
78
+ for k, v in self.device_map.items():
79
+ for block in v:
80
+ cuda_device = "cuda:" + str(k)
81
+ self.h[block] = self.h[block].to(cuda_device)
82
+ # ln_f to last
83
+ self.ln_f = self.ln_f.to(self.last_device)
84
+
85
+ def deparallelize(self):
86
+ self.model_parallel = False
87
+ self.device_map = None
88
+ self.first_device = "cpu"
89
+ self.last_device = "cpu"
90
+ self.wte = self.wte.to("cpu")
91
+ self.wpe = self.wpe.to("cpu")
92
+ for index in range(len(self.h)):
93
+ self.h[index] = self.h[index].to("cpu")
94
+ self.ln_f = self.ln_f.to("cpu")
95
+ torch.cuda.empty_cache()
96
+
97
+ def get_input_embeddings(self):
98
+ return self.wte
99
+
100
+ def set_input_embeddings(self, new_embeddings):
101
+ self.wte = new_embeddings
102
+
103
+ def _prune_heads(self, heads_to_prune):
104
+ """
105
+ Prunes heads of the model. heads_to_prune: dict of {layer_num: list of heads to prune in this layer}
106
+ """
107
+ for layer, heads in heads_to_prune.items():
108
+ self.h[layer].attn.prune_heads(heads)
109
+
110
+
111
+ def forward(
112
+ self,
113
+ input_ids: Optional[torch.LongTensor] = None,
114
+ past_key_values: Optional[Tuple[Tuple[torch.Tensor]]] = None,
115
+ attention_mask: Optional[torch.FloatTensor] = None,
116
+ token_type_ids: Optional[torch.LongTensor] = None,
117
+ position_ids: Optional[torch.LongTensor] = None,
118
+ head_mask: Optional[torch.FloatTensor] = None,
119
+ inputs_embeds: Optional[torch.FloatTensor] = None,
120
+ encoder_hidden_states: Optional[torch.Tensor] = None,
121
+ encoder_attention_mask: Optional[torch.FloatTensor] = None,
122
+ use_cache: Optional[bool] = None,
123
+ output_attentions: Optional[bool] = None,
124
+ output_hidden_states: Optional[bool] = None,
125
+ return_dict: Optional[bool] = None,
126
+ ) -> Union[Tuple, BaseModelOutputWithPastAndCrossAttentions]:
127
+ output_attentions = output_attentions if output_attentions is not None else self.config.output_attentions
128
+ output_hidden_states = (
129
+ output_hidden_states if output_hidden_states is not None else self.config.output_hidden_states
130
+ )
131
+ use_cache = use_cache if use_cache is not None else self.config.use_cache
132
+ return_dict = return_dict if return_dict is not None else self.config.use_return_dict
133
+
134
+ if input_ids is not None and inputs_embeds is not None:
135
+ raise ValueError("You cannot specify both input_ids and inputs_embeds at the same time")
136
+ elif input_ids is not None:
137
+ self.warn_if_padding_and_no_attention_mask(input_ids, attention_mask)
138
+ input_shape = input_ids.size()
139
+ input_ids = input_ids.view(-1, input_shape[-1])
140
+ batch_size = input_ids.shape[0]
141
+ elif inputs_embeds is not None:
142
+ input_shape = inputs_embeds.size()[:-1]
143
+ batch_size = inputs_embeds.shape[0]
144
+ else:
145
+ raise ValueError("You have to specify either input_ids or inputs_embeds")
146
+
147
+ device = input_ids.device if input_ids is not None else inputs_embeds.device
148
+
149
+ if token_type_ids is not None:
150
+ token_type_ids = token_type_ids.view(-1, input_shape[-1])
151
+
152
+ if past_key_values is None:
153
+ past_length = 0
154
+ past_key_values = tuple([None] * len(self.h))
155
+ else:
156
+ past_length = past_key_values[0][0].size(-2)
157
+ if position_ids is None:
158
+ position_ids = torch.arange(past_length, input_shape[-1] + past_length, dtype=torch.long, device=device)
159
+ position_ids = position_ids.unsqueeze(0)
160
+
161
+ if inputs_embeds is None:
162
+ inputs_embeds = self.wte(input_ids)
163
+ position_embeds = self.wpe(position_ids)
164
+ hidden_states = inputs_embeds + position_embeds.to(inputs_embeds.device)
165
+
166
+ # Attention mask.
167
+ _use_sdpa = self._attn_implementation == "sdpa" and output_attentions is False and head_mask is None
168
+ attention_mask = attention_mask.view(batch_size, -1) if attention_mask is not None else None
169
+ if self._attn_implementation == "flash_attention_2":
170
+ attention_mask = attention_mask if (attention_mask is not None and 0 in attention_mask) else None
171
+ elif _use_sdpa:
172
+ attention_mask = _prepare_4d_causal_attention_mask_for_sdpa(
173
+ attention_mask=attention_mask,
174
+ input_shape=(batch_size, input_shape[-1]),
175
+ inputs_embeds=inputs_embeds,
176
+ past_key_values_length=past_length,
177
+ )
178
+ else:
179
+ if attention_mask is not None:
180
+ # We create a 3D attention mask from a 2D tensor mask.
181
+ # Sizes are [batch_size, 1, 1, to_seq_length]
182
+ # So we can broadcast to [batch_size, num_heads, from_seq_length, to_seq_length]
183
+ # this attention mask is more simple than the triangular masking of causal attention
184
+ # used in OpenAI GPT, we just need to prepare the broadcast dimension here.
185
+ attention_mask = attention_mask[:, None, None, :]
186
+
187
+ # Since attention_mask is 1.0 for positions we want to attend and 0.0 for
188
+ # masked positions, this operation will create a tensor which is 0.0 for
189
+ # positions we want to attend and the dtype's smallest value for masked positions.
190
+ # Since we are adding it to the raw scores before the softmax, this is
191
+ # effectively the same as removing these entirely.
192
+ attention_mask = attention_mask.to(dtype=self.dtype) # fp16 compatibility
193
+ attention_mask = (1.0 - attention_mask) * torch.finfo(self.dtype).min
194
+
195
+ # If a 2D or 3D attention mask is provided for the cross-attention
196
+ # we need to make broadcastable to [batch_size, num_heads, seq_length, seq_length]
197
+ if self.config.add_cross_attention and encoder_hidden_states is not None:
198
+ encoder_batch_size, encoder_sequence_length, _ = encoder_hidden_states.size()
199
+ encoder_hidden_shape = (encoder_batch_size, encoder_sequence_length)
200
+ if encoder_attention_mask is None:
201
+ encoder_attention_mask = torch.ones(encoder_hidden_shape, device=device)
202
+ if _use_sdpa:
203
+ encoder_attention_mask = _prepare_4d_attention_mask_for_sdpa(
204
+ mask=encoder_attention_mask, dtype=inputs_embeds.dtype, tgt_len=input_shape[-1]
205
+ )
206
+ elif not self._attn_implementation == "flash_attention_2":
207
+ encoder_attention_mask = self.invert_attention_mask(encoder_attention_mask)
208
+ else:
209
+ encoder_attention_mask = None
210
+
211
+ # Prepare head mask if needed
212
+ # 1.0 in head_mask indicate we keep the head
213
+ # attention_probs has shape bsz x n_heads x N x N
214
+ # head_mask has shape n_layer x batch x n_heads x N x N
215
+ head_mask = self.get_head_mask(head_mask, self.config.n_layer)
216
+
217
+ if token_type_ids is not None:
218
+ token_type_embeds = self.wte(token_type_ids)
219
+ hidden_states = hidden_states + token_type_embeds
220
+
221
+ hidden_states = self.drop(hidden_states)
222
+
223
+ output_shape = (-1,) + input_shape[1:] + (hidden_states.size(-1),)
224
+
225
+ if self.gradient_checkpointing and self.training:
226
+ if use_cache:
227
+ logger.warning_once(
228
+ "`use_cache=True` is incompatible with gradient checkpointing. Setting `use_cache=False`..."
229
+ )
230
+ use_cache = False
231
+
232
+ presents = () if use_cache else None
233
+ all_self_attentions_left = () if output_attentions else None
234
+ all_self_attentions_right = () if output_attentions else None
235
+ all_cross_attentions = () if output_attentions and self.config.add_cross_attention else None
236
+ all_hidden_states = () if output_hidden_states else None
237
+ for i in range(0, len(self.h), 2):
238
+ block_left, layer_past_left = self.h[i], past_key_values[i]
239
+ block_right, layer_past_right = self.h[i+1], past_key_values[i+1]
240
+ # Model parallel
241
+ if self.model_parallel:
242
+ torch.cuda.set_device(hidden_states.device)
243
+ # Ensure layer_past is on same device as hidden_states (might not be correct)
244
+ if layer_past is not None:
245
+ layer_past = tuple(past_state.to(hidden_states.device) for past_state in layer_past)
246
+ # Ensure that attention_mask is always on the same device as hidden_states
247
+ if attention_mask is not None:
248
+ attention_mask = attention_mask.to(hidden_states.device)
249
+ if isinstance(head_mask, torch.Tensor):
250
+ head_mask = head_mask.to(hidden_states.device)
251
+ if output_hidden_states:
252
+ all_hidden_states = all_hidden_states + (hidden_states,)
253
+
254
+ if self.gradient_checkpointing and self.training:
255
+ outputs_left = self._gradient_checkpointing_func(
256
+ block_left.__call__,
257
+ hidden_states,
258
+ None,
259
+ attention_mask,
260
+ head_mask[i],
261
+ encoder_hidden_states,
262
+ encoder_attention_mask,
263
+ use_cache,
264
+ output_attentions,
265
+ )
266
+ outputs_right = self._gradient_checkpointing_func(
267
+ block_right.__call__,
268
+ hidden_states,
269
+ None,
270
+ attention_mask,
271
+ head_mask[i+1],
272
+ encoder_hidden_states,
273
+ encoder_attention_mask,
274
+ use_cache,
275
+ output_attentions,
276
+ )
277
+ else:
278
+ outputs_left = block_left(
279
+ hidden_states,
280
+ layer_past=layer_past_left,
281
+ attention_mask=attention_mask,
282
+ head_mask=head_mask[i],
283
+ encoder_hidden_states=encoder_hidden_states,
284
+ encoder_attention_mask=encoder_attention_mask,
285
+ use_cache=use_cache,
286
+ output_attentions=output_attentions,
287
+ )
288
+ outputs_right = block_right(
289
+ hidden_states,
290
+ layer_past=layer_past_right,
291
+ attention_mask=attention_mask,
292
+ head_mask=head_mask[i+1],
293
+ encoder_hidden_states=encoder_hidden_states,
294
+ encoder_attention_mask=encoder_attention_mask,
295
+ use_cache=use_cache,
296
+ output_attentions=output_attentions,
297
+ )
298
+ if self.config.bottleneck_method=="concate":
299
+ hidden_states = torch.cat((outputs_left[0], outputs_right[0]), dim=-1)
300
+ hidden_states = self.bottleneck(hidden_states)
301
+ elif self.config.bottleneck_method=="add":
302
+ hidden_states = (outputs_left[0] + outputs_right[0]) ## taking add
303
+ elif self.config.bottleneck_method=="mean":
304
+ hidden_states = (outputs_left[0] + outputs_right[0]) / 2 ## taking mean
305
+ if use_cache is True:
306
+ presents = presents + (outputs_left[1], outputs_right[1])
307
+
308
+ if output_attentions:
309
+ all_self_attentions_left = all_self_attentions_left + (outputs_left[2 if use_cache else 1],)
310
+ all_self_attentions_right = all_self_attentions_right + (outputs_right[2 if use_cache else 1],)
311
+ if self.config.add_cross_attention:
312
+ all_cross_attentions_left = all_cross_attentions_left + (outputs_left[3 if use_cache else 2],)
313
+ all_cross_attentions_right = all_cross_attentions_right + (outputs_right[3 if use_cache else 2],)
314
+
315
+ # Model Parallel: If it's the last layer for that device, put things on the next device
316
+ if self.model_parallel:
317
+ for k, v in self.device_map.items():
318
+ if i == v[-1] and "cuda:" + str(k) != self.last_device:
319
+ hidden_states = hidden_states.to("cuda:" + str(k + 1))
320
+
321
+ hidden_states = self.ln_f(hidden_states)
322
+
323
+ hidden_states = hidden_states.view(output_shape)
324
+ # Add last hidden state
325
+ if output_hidden_states:
326
+ all_hidden_states = all_hidden_states + (hidden_states,)
327
+
328
+ if not return_dict:
329
+ return tuple(
330
+ v
331
+ for v in [hidden_states, presents, all_hidden_states, all_self_attentions_left, all_cross_attentions]
332
+ if v is not None
333
+ )
334
+
335
+ return BaseModelOutputWithPastAndCrossAttentions(
336
+ last_hidden_state=hidden_states,
337
+ past_key_values=presents,
338
+ hidden_states=all_hidden_states,
339
+ attentions=all_self_attentions_left,
340
+ cross_attentions=all_cross_attentions,
341
+ )
342
+
343
+
344
+ class ParallelGPT2LMHeadModel(ParallelGPT2PretrainedModel, GenerationMixin):
345
+ _tied_weights_keys = ["lm_head.weight"]
346
+
347
+ def __init__(self, config):
348
+ super().__init__(config)
349
+ self.transformer = ParallelGPT2Model(config)
350
+ self.lm_head = nn.Linear(config.n_embd, config.vocab_size, bias=False)
351
+
352
+ # Model parallel
353
+ self.model_parallel = False
354
+ self.device_map = None
355
+
356
+ # Initialize weights and apply final processing
357
+ self.post_init()
358
+
359
+ def parallelize(self, device_map=None):
360
+ warnings.warn(
361
+ "`GPT2LMHeadModel.parallelize` is deprecated and will be removed in v5 of Transformers, you should load"
362
+ " your model with `device_map='balanced'` in the call to `from_pretrained`. You can also provide your own"
363
+ " `device_map` but it needs to be a dictionary module_name to device, so for instance {'transformer.h.0':"
364
+ " 0, 'transformer.h.1': 1, ...}",
365
+ FutureWarning,
366
+ )
367
+ self.device_map = (
368
+ get_device_map(len(self.transformer.h), range(torch.cuda.device_count()))
369
+ if device_map is None
370
+ else device_map
371
+ )
372
+ assert_device_map(self.device_map, len(self.transformer.h))
373
+ self.transformer.parallelize(self.device_map)
374
+ self.lm_head = self.lm_head.to(self.transformer.first_device)
375
+ self.model_parallel = True
376
+
377
+ def deparallelize(self):
378
+ self.transformer.deparallelize()
379
+ self.transformer = self.transformer.to("cpu")
380
+ self.lm_head = self.lm_head.to("cpu")
381
+ self.model_parallel = False
382
+ torch.cuda.empty_cache()
383
+
384
+ def get_output_embeddings(self):
385
+ return self.lm_head
386
+
387
+ def set_output_embeddings(self, new_embeddings):
388
+ self.lm_head = new_embeddings
389
+
390
+ def forward(
391
+ self,
392
+ input_ids: Optional[torch.LongTensor] = None,
393
+ past_key_values: Optional[Tuple[Tuple[torch.Tensor]]] = None,
394
+ attention_mask: Optional[torch.FloatTensor] = None,
395
+ token_type_ids: Optional[torch.LongTensor] = None,
396
+ position_ids: Optional[torch.LongTensor] = None,
397
+ head_mask: Optional[torch.FloatTensor] = None,
398
+ inputs_embeds: Optional[torch.FloatTensor] = None,
399
+ encoder_hidden_states: Optional[torch.Tensor] = None,
400
+ encoder_attention_mask: Optional[torch.FloatTensor] = None,
401
+ labels: Optional[torch.LongTensor] = None,
402
+ use_cache: Optional[bool] = None,
403
+ output_attentions: Optional[bool] = None,
404
+ output_hidden_states: Optional[bool] = None,
405
+ return_dict: Optional[bool] = None,
406
+ **kwargs,
407
+ ) -> Union[Tuple, CausalLMOutputWithCrossAttentions]:
408
+ r"""
409
+ labels (`torch.LongTensor` of shape `(batch_size, sequence_length)`, *optional*):
410
+ Labels for language modeling. Note that the labels **are shifted** inside the model, i.e. you can set
411
+ `labels = input_ids` Indices are selected in `[-100, 0, ..., config.vocab_size]` All labels set to `-100`
412
+ are ignored (masked), the loss is only computed for labels in `[0, ..., config.vocab_size]`
413
+ """
414
+ return_dict = return_dict if return_dict is not None else self.config.use_return_dict
415
+
416
+ transformer_outputs = self.transformer(
417
+ input_ids,
418
+ past_key_values=past_key_values,
419
+ attention_mask=attention_mask,
420
+ token_type_ids=token_type_ids,
421
+ position_ids=position_ids,
422
+ head_mask=head_mask,
423
+ inputs_embeds=inputs_embeds,
424
+ encoder_hidden_states=encoder_hidden_states,
425
+ encoder_attention_mask=encoder_attention_mask,
426
+ use_cache=use_cache,
427
+ output_attentions=output_attentions,
428
+ output_hidden_states=output_hidden_states,
429
+ return_dict=return_dict,
430
+ )
431
+ hidden_states = transformer_outputs[0]
432
+
433
+ # Set device for model parallelism
434
+ if self.model_parallel:
435
+ torch.cuda.set_device(self.transformer.first_device)
436
+ hidden_states = hidden_states.to(self.lm_head.weight.device)
437
+
438
+ lm_logits = self.lm_head(hidden_states)
439
+
440
+ loss = None
441
+ if labels is not None:
442
+ # Flatten the tokens
443
+ loss = self.loss_function(
444
+ lm_logits,
445
+ labels,
446
+ vocab_size=self.config.vocab_size,
447
+ **kwargs,
448
+ )
449
+
450
+ if not return_dict:
451
+ output = (lm_logits,) + transformer_outputs[1:]
452
+ return ((loss,) + output) if loss is not None else output
453
+
454
+ return CausalLMOutputWithCrossAttentions(
455
+ loss=loss,
456
+ logits=lm_logits,
457
+ past_key_values=transformer_outputs.past_key_values,
458
+ hidden_states=transformer_outputs.hidden_states,
459
+ attentions=transformer_outputs.attentions,
460
+ cross_attentions=transformer_outputs.cross_attentions,
461
+ )
462
+
463
+ @staticmethod
464
+ def _reorder_cache(
465
+ past_key_values: Tuple[Tuple[torch.Tensor]], beam_idx: torch.Tensor
466
+ ) -> Tuple[Tuple[torch.Tensor]]:
467
+ """
468
+ This function is used to re-order the `past_key_values` cache if [`~PreTrainedModel.beam_search`] or
469
+ [`~PreTrainedModel.beam_sample`] is called. This is required to match `past_key_values` with the correct
470
+ beam_idx at every generation step.
471
+ """
472
+ return tuple(
473
+ tuple(past_state.index_select(0, beam_idx.to(past_state.device)) for past_state in layer_past)
474
+ for layer_past in past_key_values
475
+ )
476
+
477
+
478
+
479
+ from transformers import AutoConfig, AutoModel
480
+ AutoConfig.register("parallel-gpt2", ParallelGPT2Config)
481
+ AutoModel.register(ParallelGPT2Config, ParallelGPT2LMHeadModel)
482
+
483
+ __all__ = [
484
+ "ParallelGPT2LMHeadModel",
485
+ "ParallelGPT2Model",
486
+ "ParallelGPT2Config",
487
+ ]
488
+
489
+
490
+ if __name__ == "__main__":
491
+ cg = ParallelGPT2Config.from_pretrained("gpt2-medium", architectures=["ParallelGPT2LMHeadModel"])
492
+ model = ParallelGPT2LMHeadModel(cg)
493
+ from src.utils.model_utlis import print_trainable_parameters
494
+ print_trainable_parameters(model)
495
+ model(torch.randint(0, 10000, (1, 100)))
496
+ print()
train_results.json ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "epoch": 4.998736842105263,
3
+ "total_flos": 1.0584067483285586e+18,
4
+ "train_loss": 3.584141966119902,
5
+ "train_runtime": 28526.973,
6
+ "train_samples_per_second": 19.98,
7
+ "train_steps_per_second": 0.624
8
+ }
trainer_state.json ADDED
@@ -0,0 +1,1682 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": 3.101016044616699,
3
+ "best_model_checkpoint": "./output/models/parallel-gpt2-medium-wikitext/checkpoint-17500",
4
+ "epoch": 4.998736842105263,
5
+ "eval_steps": 500,
6
+ "global_step": 17810,
7
+ "is_hyper_param_search": false,
8
+ "is_local_process_zero": true,
9
+ "is_world_process_zero": true,
10
+ "log_history": [
11
+ {
12
+ "epoch": 0.028070175438596492,
13
+ "grad_norm": 2.028989553451538,
14
+ "learning_rate": 5.614823133071308e-06,
15
+ "loss": 9.2256,
16
+ "step": 100
17
+ },
18
+ {
19
+ "epoch": 0.056140350877192984,
20
+ "grad_norm": 1.8919556140899658,
21
+ "learning_rate": 1.1229646266142617e-05,
22
+ "loss": 7.8733,
23
+ "step": 200
24
+ },
25
+ {
26
+ "epoch": 0.08421052631578947,
27
+ "grad_norm": 1.433174967765808,
28
+ "learning_rate": 1.6844469399213926e-05,
29
+ "loss": 7.0853,
30
+ "step": 300
31
+ },
32
+ {
33
+ "epoch": 0.11228070175438597,
34
+ "grad_norm": 1.4522157907485962,
35
+ "learning_rate": 2.2459292532285233e-05,
36
+ "loss": 6.6702,
37
+ "step": 400
38
+ },
39
+ {
40
+ "epoch": 0.14035087719298245,
41
+ "grad_norm": 1.322840929031372,
42
+ "learning_rate": 2.8074115665356544e-05,
43
+ "loss": 6.4455,
44
+ "step": 500
45
+ },
46
+ {
47
+ "epoch": 0.14035087719298245,
48
+ "eval_accuracy": 0.17660504282313108,
49
+ "eval_bleu": 0.02573169351336114,
50
+ "eval_loss": 6.331261157989502,
51
+ "eval_perplexity": 561.8647474275982,
52
+ "eval_runtime": 20.1474,
53
+ "eval_samples_per_second": 56.633,
54
+ "eval_steps_per_second": 3.574,
55
+ "step": 500
56
+ },
57
+ {
58
+ "epoch": 0.16842105263157894,
59
+ "grad_norm": 1.5128698348999023,
60
+ "learning_rate": 3.368893879842785e-05,
61
+ "loss": 6.2694,
62
+ "step": 600
63
+ },
64
+ {
65
+ "epoch": 0.19649122807017544,
66
+ "grad_norm": 1.4778157472610474,
67
+ "learning_rate": 3.930376193149916e-05,
68
+ "loss": 6.1217,
69
+ "step": 700
70
+ },
71
+ {
72
+ "epoch": 0.22456140350877193,
73
+ "grad_norm": 1.1647950410842896,
74
+ "learning_rate": 4.4918585064570466e-05,
75
+ "loss": 5.9897,
76
+ "step": 800
77
+ },
78
+ {
79
+ "epoch": 0.25263157894736843,
80
+ "grad_norm": 1.3264423608779907,
81
+ "learning_rate": 5.053340819764178e-05,
82
+ "loss": 5.8659,
83
+ "step": 900
84
+ },
85
+ {
86
+ "epoch": 0.2807017543859649,
87
+ "grad_norm": 1.521269679069519,
88
+ "learning_rate": 5.614823133071309e-05,
89
+ "loss": 5.7254,
90
+ "step": 1000
91
+ },
92
+ {
93
+ "epoch": 0.2807017543859649,
94
+ "eval_accuracy": 0.2136290386834618,
95
+ "eval_bleu": 0.045427591918014404,
96
+ "eval_loss": 5.623491287231445,
97
+ "eval_perplexity": 276.85427569402634,
98
+ "eval_runtime": 20.1737,
99
+ "eval_samples_per_second": 56.559,
100
+ "eval_steps_per_second": 3.569,
101
+ "step": 1000
102
+ },
103
+ {
104
+ "epoch": 0.3087719298245614,
105
+ "grad_norm": 1.1612671613693237,
106
+ "learning_rate": 6.176305446378439e-05,
107
+ "loss": 5.5759,
108
+ "step": 1100
109
+ },
110
+ {
111
+ "epoch": 0.3368421052631579,
112
+ "grad_norm": 1.1074801683425903,
113
+ "learning_rate": 6.73778775968557e-05,
114
+ "loss": 5.4609,
115
+ "step": 1200
116
+ },
117
+ {
118
+ "epoch": 0.3649122807017544,
119
+ "grad_norm": 1.0632935762405396,
120
+ "learning_rate": 7.299270072992701e-05,
121
+ "loss": 5.3257,
122
+ "step": 1300
123
+ },
124
+ {
125
+ "epoch": 0.3929824561403509,
126
+ "grad_norm": 1.1046158075332642,
127
+ "learning_rate": 7.860752386299832e-05,
128
+ "loss": 5.1946,
129
+ "step": 1400
130
+ },
131
+ {
132
+ "epoch": 0.42105263157894735,
133
+ "grad_norm": 1.1495596170425415,
134
+ "learning_rate": 8.422234699606962e-05,
135
+ "loss": 5.1084,
136
+ "step": 1500
137
+ },
138
+ {
139
+ "epoch": 0.42105263157894735,
140
+ "eval_accuracy": 0.2575530545053601,
141
+ "eval_bleu": 0.06490299322624599,
142
+ "eval_loss": 4.982165813446045,
143
+ "eval_perplexity": 145.78979346372705,
144
+ "eval_runtime": 20.1855,
145
+ "eval_samples_per_second": 56.526,
146
+ "eval_steps_per_second": 3.567,
147
+ "step": 1500
148
+ },
149
+ {
150
+ "epoch": 0.44912280701754387,
151
+ "grad_norm": 0.9580332040786743,
152
+ "learning_rate": 8.983717012914093e-05,
153
+ "loss": 4.9932,
154
+ "step": 1600
155
+ },
156
+ {
157
+ "epoch": 0.47719298245614034,
158
+ "grad_norm": 0.9515564441680908,
159
+ "learning_rate": 9.545199326221224e-05,
160
+ "loss": 4.8819,
161
+ "step": 1700
162
+ },
163
+ {
164
+ "epoch": 0.5052631578947369,
165
+ "grad_norm": 0.9855053424835205,
166
+ "learning_rate": 9.98814648449685e-05,
167
+ "loss": 4.7868,
168
+ "step": 1800
169
+ },
170
+ {
171
+ "epoch": 0.5333333333333333,
172
+ "grad_norm": 1.0349925756454468,
173
+ "learning_rate": 9.925759560796058e-05,
174
+ "loss": 4.6832,
175
+ "step": 1900
176
+ },
177
+ {
178
+ "epoch": 0.5614035087719298,
179
+ "grad_norm": 1.0200501680374146,
180
+ "learning_rate": 9.863372637095265e-05,
181
+ "loss": 4.5994,
182
+ "step": 2000
183
+ },
184
+ {
185
+ "epoch": 0.5614035087719298,
186
+ "eval_accuracy": 0.29288759924026103,
187
+ "eval_bleu": 0.07406906637840037,
188
+ "eval_loss": 4.5052409172058105,
189
+ "eval_perplexity": 90.49014205518364,
190
+ "eval_runtime": 19.5875,
191
+ "eval_samples_per_second": 58.251,
192
+ "eval_steps_per_second": 3.676,
193
+ "step": 2000
194
+ },
195
+ {
196
+ "epoch": 0.5894736842105263,
197
+ "grad_norm": 0.9353361129760742,
198
+ "learning_rate": 9.800985713394473e-05,
199
+ "loss": 4.5176,
200
+ "step": 2100
201
+ },
202
+ {
203
+ "epoch": 0.6175438596491228,
204
+ "grad_norm": 0.9589385390281677,
205
+ "learning_rate": 9.73859878969368e-05,
206
+ "loss": 4.4355,
207
+ "step": 2200
208
+ },
209
+ {
210
+ "epoch": 0.6456140350877193,
211
+ "grad_norm": 1.0331965684890747,
212
+ "learning_rate": 9.676211865992888e-05,
213
+ "loss": 4.3647,
214
+ "step": 2300
215
+ },
216
+ {
217
+ "epoch": 0.6736842105263158,
218
+ "grad_norm": 0.9204744100570679,
219
+ "learning_rate": 9.613824942292095e-05,
220
+ "loss": 4.2935,
221
+ "step": 2400
222
+ },
223
+ {
224
+ "epoch": 0.7017543859649122,
225
+ "grad_norm": 0.9139348268508911,
226
+ "learning_rate": 9.551438018591303e-05,
227
+ "loss": 4.2338,
228
+ "step": 2500
229
+ },
230
+ {
231
+ "epoch": 0.7017543859649122,
232
+ "eval_accuracy": 0.32728917628977,
233
+ "eval_bleu": 0.09369678160356684,
234
+ "eval_loss": 4.137840747833252,
235
+ "eval_perplexity": 62.66736062058415,
236
+ "eval_runtime": 20.1595,
237
+ "eval_samples_per_second": 56.598,
238
+ "eval_steps_per_second": 3.572,
239
+ "step": 2500
240
+ },
241
+ {
242
+ "epoch": 0.7298245614035088,
243
+ "grad_norm": 0.9106621146202087,
244
+ "learning_rate": 9.489051094890511e-05,
245
+ "loss": 4.1694,
246
+ "step": 2600
247
+ },
248
+ {
249
+ "epoch": 0.7578947368421053,
250
+ "grad_norm": 0.9036598801612854,
251
+ "learning_rate": 9.426664171189718e-05,
252
+ "loss": 4.1386,
253
+ "step": 2700
254
+ },
255
+ {
256
+ "epoch": 0.7859649122807018,
257
+ "grad_norm": 0.8367689847946167,
258
+ "learning_rate": 9.364277247488927e-05,
259
+ "loss": 4.0731,
260
+ "step": 2800
261
+ },
262
+ {
263
+ "epoch": 0.8140350877192982,
264
+ "grad_norm": 0.9330971837043762,
265
+ "learning_rate": 9.301890323788135e-05,
266
+ "loss": 4.0342,
267
+ "step": 2900
268
+ },
269
+ {
270
+ "epoch": 0.8421052631578947,
271
+ "grad_norm": 0.847179114818573,
272
+ "learning_rate": 9.239503400087343e-05,
273
+ "loss": 3.9975,
274
+ "step": 3000
275
+ },
276
+ {
277
+ "epoch": 0.8421052631578947,
278
+ "eval_accuracy": 0.3465208187155545,
279
+ "eval_bleu": 0.10305263495616372,
280
+ "eval_loss": 3.928612470626831,
281
+ "eval_perplexity": 50.83639172374704,
282
+ "eval_runtime": 20.1917,
283
+ "eval_samples_per_second": 56.508,
284
+ "eval_steps_per_second": 3.566,
285
+ "step": 3000
286
+ },
287
+ {
288
+ "epoch": 0.8701754385964913,
289
+ "grad_norm": 0.8944078087806702,
290
+ "learning_rate": 9.17711647638655e-05,
291
+ "loss": 3.9805,
292
+ "step": 3100
293
+ },
294
+ {
295
+ "epoch": 0.8982456140350877,
296
+ "grad_norm": 0.8461546301841736,
297
+ "learning_rate": 9.114729552685758e-05,
298
+ "loss": 3.9468,
299
+ "step": 3200
300
+ },
301
+ {
302
+ "epoch": 0.9263157894736842,
303
+ "grad_norm": 0.8034185767173767,
304
+ "learning_rate": 9.052342628984965e-05,
305
+ "loss": 3.9049,
306
+ "step": 3300
307
+ },
308
+ {
309
+ "epoch": 0.9543859649122807,
310
+ "grad_norm": 0.8450652360916138,
311
+ "learning_rate": 8.989955705284174e-05,
312
+ "loss": 3.8727,
313
+ "step": 3400
314
+ },
315
+ {
316
+ "epoch": 0.9824561403508771,
317
+ "grad_norm": 0.7972449064254761,
318
+ "learning_rate": 8.92756878158338e-05,
319
+ "loss": 3.8648,
320
+ "step": 3500
321
+ },
322
+ {
323
+ "epoch": 0.9824561403508771,
324
+ "eval_accuracy": 0.35825016727450926,
325
+ "eval_bleu": 0.11656022916295831,
326
+ "eval_loss": 3.7925570011138916,
327
+ "eval_perplexity": 44.36970874398872,
328
+ "eval_runtime": 20.1635,
329
+ "eval_samples_per_second": 56.587,
330
+ "eval_steps_per_second": 3.571,
331
+ "step": 3500
332
+ },
333
+ {
334
+ "epoch": 1.0103859649122806,
335
+ "grad_norm": 0.766300618648529,
336
+ "learning_rate": 8.865181857882589e-05,
337
+ "loss": 3.8193,
338
+ "step": 3600
339
+ },
340
+ {
341
+ "epoch": 1.0384561403508772,
342
+ "grad_norm": 0.8034301996231079,
343
+ "learning_rate": 8.802794934181796e-05,
344
+ "loss": 3.7801,
345
+ "step": 3700
346
+ },
347
+ {
348
+ "epoch": 1.0665263157894738,
349
+ "grad_norm": 0.8166210651397705,
350
+ "learning_rate": 8.740408010481004e-05,
351
+ "loss": 3.7505,
352
+ "step": 3800
353
+ },
354
+ {
355
+ "epoch": 1.0945964912280701,
356
+ "grad_norm": 0.7962071895599365,
357
+ "learning_rate": 8.678021086780212e-05,
358
+ "loss": 3.7398,
359
+ "step": 3900
360
+ },
361
+ {
362
+ "epoch": 1.1226666666666667,
363
+ "grad_norm": 0.7868255972862244,
364
+ "learning_rate": 8.615634163079419e-05,
365
+ "loss": 3.7164,
366
+ "step": 4000
367
+ },
368
+ {
369
+ "epoch": 1.1226666666666667,
370
+ "eval_accuracy": 0.3667368320049895,
371
+ "eval_bleu": 0.1225879386890452,
372
+ "eval_loss": 3.6986546516418457,
373
+ "eval_perplexity": 40.39292523319135,
374
+ "eval_runtime": 20.1969,
375
+ "eval_samples_per_second": 56.494,
376
+ "eval_steps_per_second": 3.565,
377
+ "step": 4000
378
+ },
379
+ {
380
+ "epoch": 1.150736842105263,
381
+ "grad_norm": 0.7974035739898682,
382
+ "learning_rate": 8.553247239378627e-05,
383
+ "loss": 3.7099,
384
+ "step": 4100
385
+ },
386
+ {
387
+ "epoch": 1.1788070175438596,
388
+ "grad_norm": 0.7970170974731445,
389
+ "learning_rate": 8.490860315677834e-05,
390
+ "loss": 3.6871,
391
+ "step": 4200
392
+ },
393
+ {
394
+ "epoch": 1.2068771929824562,
395
+ "grad_norm": 0.7822019457817078,
396
+ "learning_rate": 8.428473391977042e-05,
397
+ "loss": 3.6628,
398
+ "step": 4300
399
+ },
400
+ {
401
+ "epoch": 1.2349473684210526,
402
+ "grad_norm": 0.7597511410713196,
403
+ "learning_rate": 8.36608646827625e-05,
404
+ "loss": 3.6631,
405
+ "step": 4400
406
+ },
407
+ {
408
+ "epoch": 1.2630175438596491,
409
+ "grad_norm": 0.7736372947692871,
410
+ "learning_rate": 8.303699544575458e-05,
411
+ "loss": 3.6639,
412
+ "step": 4500
413
+ },
414
+ {
415
+ "epoch": 1.2630175438596491,
416
+ "eval_accuracy": 0.37342095861787133,
417
+ "eval_bleu": 0.12824268044271067,
418
+ "eval_loss": 3.622089147567749,
419
+ "eval_perplexity": 37.415653048434656,
420
+ "eval_runtime": 20.1594,
421
+ "eval_samples_per_second": 56.599,
422
+ "eval_steps_per_second": 3.572,
423
+ "step": 4500
424
+ },
425
+ {
426
+ "epoch": 1.2910877192982455,
427
+ "grad_norm": 0.7472370266914368,
428
+ "learning_rate": 8.241312620874664e-05,
429
+ "loss": 3.6404,
430
+ "step": 4600
431
+ },
432
+ {
433
+ "epoch": 1.319157894736842,
434
+ "grad_norm": 0.771800696849823,
435
+ "learning_rate": 8.178925697173873e-05,
436
+ "loss": 3.6235,
437
+ "step": 4700
438
+ },
439
+ {
440
+ "epoch": 1.3472280701754387,
441
+ "grad_norm": 0.7624268531799316,
442
+ "learning_rate": 8.11653877347308e-05,
443
+ "loss": 3.6123,
444
+ "step": 4800
445
+ },
446
+ {
447
+ "epoch": 1.375298245614035,
448
+ "grad_norm": 0.7671138644218445,
449
+ "learning_rate": 8.054151849772288e-05,
450
+ "loss": 3.592,
451
+ "step": 4900
452
+ },
453
+ {
454
+ "epoch": 1.4033684210526316,
455
+ "grad_norm": 0.7753613591194153,
456
+ "learning_rate": 7.991764926071496e-05,
457
+ "loss": 3.582,
458
+ "step": 5000
459
+ },
460
+ {
461
+ "epoch": 1.4033684210526316,
462
+ "eval_accuracy": 0.3795687787375893,
463
+ "eval_bleu": 0.1276585909940598,
464
+ "eval_loss": 3.5575244426727295,
465
+ "eval_perplexity": 35.07625629269647,
466
+ "eval_runtime": 20.1451,
467
+ "eval_samples_per_second": 56.639,
468
+ "eval_steps_per_second": 3.574,
469
+ "step": 5000
470
+ },
471
+ {
472
+ "epoch": 1.431438596491228,
473
+ "grad_norm": 0.7279810309410095,
474
+ "learning_rate": 7.929378002370703e-05,
475
+ "loss": 3.5846,
476
+ "step": 5100
477
+ },
478
+ {
479
+ "epoch": 1.4595087719298245,
480
+ "grad_norm": 0.728085458278656,
481
+ "learning_rate": 7.866991078669911e-05,
482
+ "loss": 3.5677,
483
+ "step": 5200
484
+ },
485
+ {
486
+ "epoch": 1.4875789473684211,
487
+ "grad_norm": 0.7683869004249573,
488
+ "learning_rate": 7.804604154969118e-05,
489
+ "loss": 3.5452,
490
+ "step": 5300
491
+ },
492
+ {
493
+ "epoch": 1.5156491228070177,
494
+ "grad_norm": 0.7563459277153015,
495
+ "learning_rate": 7.742217231268327e-05,
496
+ "loss": 3.5557,
497
+ "step": 5400
498
+ },
499
+ {
500
+ "epoch": 1.543719298245614,
501
+ "grad_norm": 0.7477959394454956,
502
+ "learning_rate": 7.679830307567533e-05,
503
+ "loss": 3.5315,
504
+ "step": 5500
505
+ },
506
+ {
507
+ "epoch": 1.543719298245614,
508
+ "eval_accuracy": 0.38395261312340273,
509
+ "eval_bleu": 0.13124123866011556,
510
+ "eval_loss": 3.5063869953155518,
511
+ "eval_perplexity": 33.32763708661619,
512
+ "eval_runtime": 20.2862,
513
+ "eval_samples_per_second": 56.245,
514
+ "eval_steps_per_second": 3.549,
515
+ "step": 5500
516
+ },
517
+ {
518
+ "epoch": 1.5717894736842104,
519
+ "grad_norm": 0.732016921043396,
520
+ "learning_rate": 7.617443383866742e-05,
521
+ "loss": 3.5185,
522
+ "step": 5600
523
+ },
524
+ {
525
+ "epoch": 1.599859649122807,
526
+ "grad_norm": 0.7203788757324219,
527
+ "learning_rate": 7.555056460165949e-05,
528
+ "loss": 3.5216,
529
+ "step": 5700
530
+ },
531
+ {
532
+ "epoch": 1.6279298245614036,
533
+ "grad_norm": 0.7561742663383484,
534
+ "learning_rate": 7.492669536465158e-05,
535
+ "loss": 3.5057,
536
+ "step": 5800
537
+ },
538
+ {
539
+ "epoch": 1.6560000000000001,
540
+ "grad_norm": 0.7377160787582397,
541
+ "learning_rate": 7.430282612764365e-05,
542
+ "loss": 3.5058,
543
+ "step": 5900
544
+ },
545
+ {
546
+ "epoch": 1.6840701754385965,
547
+ "grad_norm": 0.8002681136131287,
548
+ "learning_rate": 7.367895689063573e-05,
549
+ "loss": 3.5025,
550
+ "step": 6000
551
+ },
552
+ {
553
+ "epoch": 1.6840701754385965,
554
+ "eval_accuracy": 0.3880588703466202,
555
+ "eval_bleu": 0.13662311841214886,
556
+ "eval_loss": 3.4594311714172363,
557
+ "eval_perplexity": 31.798883255478383,
558
+ "eval_runtime": 20.2931,
559
+ "eval_samples_per_second": 56.226,
560
+ "eval_steps_per_second": 3.548,
561
+ "step": 6000
562
+ },
563
+ {
564
+ "epoch": 1.7121403508771929,
565
+ "grad_norm": 0.7451775074005127,
566
+ "learning_rate": 7.30550876536278e-05,
567
+ "loss": 3.4714,
568
+ "step": 6100
569
+ },
570
+ {
571
+ "epoch": 1.7402105263157894,
572
+ "grad_norm": 0.7121933102607727,
573
+ "learning_rate": 7.243121841661989e-05,
574
+ "loss": 3.474,
575
+ "step": 6200
576
+ },
577
+ {
578
+ "epoch": 1.768280701754386,
579
+ "grad_norm": 0.7507015466690063,
580
+ "learning_rate": 7.180734917961195e-05,
581
+ "loss": 3.4577,
582
+ "step": 6300
583
+ },
584
+ {
585
+ "epoch": 1.7963508771929826,
586
+ "grad_norm": 0.7061077356338501,
587
+ "learning_rate": 7.118347994260404e-05,
588
+ "loss": 3.463,
589
+ "step": 6400
590
+ },
591
+ {
592
+ "epoch": 1.824421052631579,
593
+ "grad_norm": 0.7301498055458069,
594
+ "learning_rate": 7.055961070559612e-05,
595
+ "loss": 3.4462,
596
+ "step": 6500
597
+ },
598
+ {
599
+ "epoch": 1.824421052631579,
600
+ "eval_accuracy": 0.3919063982392698,
601
+ "eval_bleu": 0.13096345408557636,
602
+ "eval_loss": 3.420844554901123,
603
+ "eval_perplexity": 30.5952434755694,
604
+ "eval_runtime": 20.2154,
605
+ "eval_samples_per_second": 56.442,
606
+ "eval_steps_per_second": 3.562,
607
+ "step": 6500
608
+ },
609
+ {
610
+ "epoch": 1.8524912280701753,
611
+ "grad_norm": 0.713631272315979,
612
+ "learning_rate": 6.993574146858819e-05,
613
+ "loss": 3.4245,
614
+ "step": 6600
615
+ },
616
+ {
617
+ "epoch": 1.8805614035087719,
618
+ "grad_norm": 0.7331680059432983,
619
+ "learning_rate": 6.931187223158027e-05,
620
+ "loss": 3.4289,
621
+ "step": 6700
622
+ },
623
+ {
624
+ "epoch": 1.9086315789473685,
625
+ "grad_norm": 0.7402526140213013,
626
+ "learning_rate": 6.868800299457234e-05,
627
+ "loss": 3.434,
628
+ "step": 6800
629
+ },
630
+ {
631
+ "epoch": 1.936701754385965,
632
+ "grad_norm": 0.7350389361381531,
633
+ "learning_rate": 6.806413375756442e-05,
634
+ "loss": 3.413,
635
+ "step": 6900
636
+ },
637
+ {
638
+ "epoch": 1.9647719298245614,
639
+ "grad_norm": 0.7257172465324402,
640
+ "learning_rate": 6.744026452055649e-05,
641
+ "loss": 3.4167,
642
+ "step": 7000
643
+ },
644
+ {
645
+ "epoch": 1.9647719298245614,
646
+ "eval_accuracy": 0.39561171067207085,
647
+ "eval_bleu": 0.1355256129038967,
648
+ "eval_loss": 3.3863015174865723,
649
+ "eval_perplexity": 29.556435911658944,
650
+ "eval_runtime": 20.2056,
651
+ "eval_samples_per_second": 56.469,
652
+ "eval_steps_per_second": 3.563,
653
+ "step": 7000
654
+ },
655
+ {
656
+ "epoch": 1.9928421052631577,
657
+ "grad_norm": 0.7187970876693726,
658
+ "learning_rate": 6.681639528354857e-05,
659
+ "loss": 3.4086,
660
+ "step": 7100
661
+ },
662
+ {
663
+ "epoch": 2.020771929824561,
664
+ "grad_norm": 0.7202402353286743,
665
+ "learning_rate": 6.619252604654064e-05,
666
+ "loss": 3.3372,
667
+ "step": 7200
668
+ },
669
+ {
670
+ "epoch": 2.048842105263158,
671
+ "grad_norm": 0.7403327822685242,
672
+ "learning_rate": 6.556865680953273e-05,
673
+ "loss": 3.3079,
674
+ "step": 7300
675
+ },
676
+ {
677
+ "epoch": 2.0769122807017544,
678
+ "grad_norm": 0.7321439385414124,
679
+ "learning_rate": 6.49447875725248e-05,
680
+ "loss": 3.3128,
681
+ "step": 7400
682
+ },
683
+ {
684
+ "epoch": 2.104982456140351,
685
+ "grad_norm": 0.7240020632743835,
686
+ "learning_rate": 6.432091833551688e-05,
687
+ "loss": 3.2967,
688
+ "step": 7500
689
+ },
690
+ {
691
+ "epoch": 2.104982456140351,
692
+ "eval_accuracy": 0.39890408423952856,
693
+ "eval_bleu": 0.1316612565684532,
694
+ "eval_loss": 3.3547873497009277,
695
+ "eval_perplexity": 28.639513342041703,
696
+ "eval_runtime": 20.2147,
697
+ "eval_samples_per_second": 56.444,
698
+ "eval_steps_per_second": 3.562,
699
+ "step": 7500
700
+ },
701
+ {
702
+ "epoch": 2.1330526315789475,
703
+ "grad_norm": 0.7483673095703125,
704
+ "learning_rate": 6.369704909850896e-05,
705
+ "loss": 3.2857,
706
+ "step": 7600
707
+ },
708
+ {
709
+ "epoch": 2.1611228070175437,
710
+ "grad_norm": 0.7482850551605225,
711
+ "learning_rate": 6.307317986150103e-05,
712
+ "loss": 3.3038,
713
+ "step": 7700
714
+ },
715
+ {
716
+ "epoch": 2.1891929824561402,
717
+ "grad_norm": 0.7295832633972168,
718
+ "learning_rate": 6.244931062449311e-05,
719
+ "loss": 3.284,
720
+ "step": 7800
721
+ },
722
+ {
723
+ "epoch": 2.217263157894737,
724
+ "grad_norm": 0.7610414028167725,
725
+ "learning_rate": 6.182544138748518e-05,
726
+ "loss": 3.2862,
727
+ "step": 7900
728
+ },
729
+ {
730
+ "epoch": 2.2453333333333334,
731
+ "grad_norm": 0.7399555444717407,
732
+ "learning_rate": 6.120157215047726e-05,
733
+ "loss": 3.2909,
734
+ "step": 8000
735
+ },
736
+ {
737
+ "epoch": 2.2453333333333334,
738
+ "eval_accuracy": 0.4014682461149906,
739
+ "eval_bleu": 0.13811168690281525,
740
+ "eval_loss": 3.329040050506592,
741
+ "eval_perplexity": 27.911535174787044,
742
+ "eval_runtime": 20.1568,
743
+ "eval_samples_per_second": 56.606,
744
+ "eval_steps_per_second": 3.572,
745
+ "step": 8000
746
+ },
747
+ {
748
+ "epoch": 2.27340350877193,
749
+ "grad_norm": 0.7306208610534668,
750
+ "learning_rate": 6.057770291346934e-05,
751
+ "loss": 3.2853,
752
+ "step": 8100
753
+ },
754
+ {
755
+ "epoch": 2.301473684210526,
756
+ "grad_norm": 0.7453253269195557,
757
+ "learning_rate": 5.9953833676461415e-05,
758
+ "loss": 3.2744,
759
+ "step": 8200
760
+ },
761
+ {
762
+ "epoch": 2.3295438596491227,
763
+ "grad_norm": 0.7369946837425232,
764
+ "learning_rate": 5.932996443945349e-05,
765
+ "loss": 3.2604,
766
+ "step": 8300
767
+ },
768
+ {
769
+ "epoch": 2.3576140350877193,
770
+ "grad_norm": 0.7455064654350281,
771
+ "learning_rate": 5.870609520244557e-05,
772
+ "loss": 3.2622,
773
+ "step": 8400
774
+ },
775
+ {
776
+ "epoch": 2.385684210526316,
777
+ "grad_norm": 0.7593878507614136,
778
+ "learning_rate": 5.808222596543764e-05,
779
+ "loss": 3.2593,
780
+ "step": 8500
781
+ },
782
+ {
783
+ "epoch": 2.385684210526316,
784
+ "eval_accuracy": 0.40385506702546087,
785
+ "eval_bleu": 0.14220030200690656,
786
+ "eval_loss": 3.3044025897979736,
787
+ "eval_perplexity": 27.232267893585384,
788
+ "eval_runtime": 20.1746,
789
+ "eval_samples_per_second": 56.556,
790
+ "eval_steps_per_second": 3.569,
791
+ "step": 8500
792
+ },
793
+ {
794
+ "epoch": 2.4137543859649124,
795
+ "grad_norm": 0.7376691102981567,
796
+ "learning_rate": 5.745835672842972e-05,
797
+ "loss": 3.2582,
798
+ "step": 8600
799
+ },
800
+ {
801
+ "epoch": 2.441824561403509,
802
+ "grad_norm": 0.7452288269996643,
803
+ "learning_rate": 5.683448749142181e-05,
804
+ "loss": 3.2491,
805
+ "step": 8700
806
+ },
807
+ {
808
+ "epoch": 2.469894736842105,
809
+ "grad_norm": 0.749320924282074,
810
+ "learning_rate": 5.6210618254413884e-05,
811
+ "loss": 3.24,
812
+ "step": 8800
813
+ },
814
+ {
815
+ "epoch": 2.4979649122807017,
816
+ "grad_norm": 0.7482838034629822,
817
+ "learning_rate": 5.558674901740596e-05,
818
+ "loss": 3.2374,
819
+ "step": 8900
820
+ },
821
+ {
822
+ "epoch": 2.5260350877192983,
823
+ "grad_norm": 0.7401648163795471,
824
+ "learning_rate": 5.4962879780398035e-05,
825
+ "loss": 3.2408,
826
+ "step": 9000
827
+ },
828
+ {
829
+ "epoch": 2.5260350877192983,
830
+ "eval_accuracy": 0.4061330845419506,
831
+ "eval_bleu": 0.14119139857697727,
832
+ "eval_loss": 3.282592296600342,
833
+ "eval_perplexity": 26.644754356923094,
834
+ "eval_runtime": 20.1938,
835
+ "eval_samples_per_second": 56.503,
836
+ "eval_steps_per_second": 3.565,
837
+ "step": 9000
838
+ },
839
+ {
840
+ "epoch": 2.554105263157895,
841
+ "grad_norm": 0.7236805558204651,
842
+ "learning_rate": 5.433901054339011e-05,
843
+ "loss": 3.2434,
844
+ "step": 9100
845
+ },
846
+ {
847
+ "epoch": 2.582175438596491,
848
+ "grad_norm": 0.7386437058448792,
849
+ "learning_rate": 5.371514130638219e-05,
850
+ "loss": 3.2445,
851
+ "step": 9200
852
+ },
853
+ {
854
+ "epoch": 2.6102456140350876,
855
+ "grad_norm": 0.7296267747879028,
856
+ "learning_rate": 5.309127206937426e-05,
857
+ "loss": 3.2257,
858
+ "step": 9300
859
+ },
860
+ {
861
+ "epoch": 2.638315789473684,
862
+ "grad_norm": 0.7237492203712463,
863
+ "learning_rate": 5.246740283236634e-05,
864
+ "loss": 3.2336,
865
+ "step": 9400
866
+ },
867
+ {
868
+ "epoch": 2.6663859649122807,
869
+ "grad_norm": 0.7474483847618103,
870
+ "learning_rate": 5.1843533595358414e-05,
871
+ "loss": 3.2278,
872
+ "step": 9500
873
+ },
874
+ {
875
+ "epoch": 2.6663859649122807,
876
+ "eval_accuracy": 0.40903479395464354,
877
+ "eval_bleu": 0.14356756322892422,
878
+ "eval_loss": 3.2591938972473145,
879
+ "eval_perplexity": 26.028547000163957,
880
+ "eval_runtime": 20.1915,
881
+ "eval_samples_per_second": 56.509,
882
+ "eval_steps_per_second": 3.566,
883
+ "step": 9500
884
+ },
885
+ {
886
+ "epoch": 2.6944561403508773,
887
+ "grad_norm": 0.7365037798881531,
888
+ "learning_rate": 5.12196643583505e-05,
889
+ "loss": 3.2235,
890
+ "step": 9600
891
+ },
892
+ {
893
+ "epoch": 2.722526315789474,
894
+ "grad_norm": 0.7330195307731628,
895
+ "learning_rate": 5.059579512134257e-05,
896
+ "loss": 3.2179,
897
+ "step": 9700
898
+ },
899
+ {
900
+ "epoch": 2.75059649122807,
901
+ "grad_norm": 0.7449477314949036,
902
+ "learning_rate": 4.997192588433465e-05,
903
+ "loss": 3.2178,
904
+ "step": 9800
905
+ },
906
+ {
907
+ "epoch": 2.7786666666666666,
908
+ "grad_norm": 0.7243569493293762,
909
+ "learning_rate": 4.9348056647326725e-05,
910
+ "loss": 3.2126,
911
+ "step": 9900
912
+ },
913
+ {
914
+ "epoch": 2.806736842105263,
915
+ "grad_norm": 0.7603092789649963,
916
+ "learning_rate": 4.87241874103188e-05,
917
+ "loss": 3.2172,
918
+ "step": 10000
919
+ },
920
+ {
921
+ "epoch": 2.806736842105263,
922
+ "eval_accuracy": 0.4104792232637077,
923
+ "eval_bleu": 0.1411554473599086,
924
+ "eval_loss": 3.2415478229522705,
925
+ "eval_perplexity": 25.573274029997943,
926
+ "eval_runtime": 19.9283,
927
+ "eval_samples_per_second": 57.255,
928
+ "eval_steps_per_second": 3.613,
929
+ "step": 10000
930
+ },
931
+ {
932
+ "epoch": 2.8348070175438598,
933
+ "grad_norm": 0.7319552302360535,
934
+ "learning_rate": 4.8100318173310876e-05,
935
+ "loss": 3.2138,
936
+ "step": 10100
937
+ },
938
+ {
939
+ "epoch": 2.862877192982456,
940
+ "grad_norm": 0.7321156859397888,
941
+ "learning_rate": 4.747644893630295e-05,
942
+ "loss": 3.2114,
943
+ "step": 10200
944
+ },
945
+ {
946
+ "epoch": 2.8909473684210525,
947
+ "grad_norm": 0.7428148984909058,
948
+ "learning_rate": 4.685257969929503e-05,
949
+ "loss": 3.1985,
950
+ "step": 10300
951
+ },
952
+ {
953
+ "epoch": 2.919017543859649,
954
+ "grad_norm": 0.7498809099197388,
955
+ "learning_rate": 4.6228710462287104e-05,
956
+ "loss": 3.1861,
957
+ "step": 10400
958
+ },
959
+ {
960
+ "epoch": 2.9470877192982456,
961
+ "grad_norm": 0.7468050718307495,
962
+ "learning_rate": 4.560484122527918e-05,
963
+ "loss": 3.2145,
964
+ "step": 10500
965
+ },
966
+ {
967
+ "epoch": 2.9470877192982456,
968
+ "eval_accuracy": 0.41254477431006226,
969
+ "eval_bleu": 0.14022835224132563,
970
+ "eval_loss": 3.222651243209839,
971
+ "eval_perplexity": 25.094563855273414,
972
+ "eval_runtime": 20.1985,
973
+ "eval_samples_per_second": 56.489,
974
+ "eval_steps_per_second": 3.565,
975
+ "step": 10500
976
+ },
977
+ {
978
+ "epoch": 2.9751578947368422,
979
+ "grad_norm": 0.7379462122917175,
980
+ "learning_rate": 4.498097198827126e-05,
981
+ "loss": 3.1799,
982
+ "step": 10600
983
+ },
984
+ {
985
+ "epoch": 3.0030877192982457,
986
+ "grad_norm": 0.7374199032783508,
987
+ "learning_rate": 4.435710275126334e-05,
988
+ "loss": 3.1681,
989
+ "step": 10700
990
+ },
991
+ {
992
+ "epoch": 3.0311578947368423,
993
+ "grad_norm": 0.7500795722007751,
994
+ "learning_rate": 4.3733233514255414e-05,
995
+ "loss": 3.096,
996
+ "step": 10800
997
+ },
998
+ {
999
+ "epoch": 3.0592280701754384,
1000
+ "grad_norm": 0.7644433975219727,
1001
+ "learning_rate": 4.3109364277247496e-05,
1002
+ "loss": 3.0842,
1003
+ "step": 10900
1004
+ },
1005
+ {
1006
+ "epoch": 3.087298245614035,
1007
+ "grad_norm": 0.7695332169532776,
1008
+ "learning_rate": 4.248549504023957e-05,
1009
+ "loss": 3.0749,
1010
+ "step": 11000
1011
+ },
1012
+ {
1013
+ "epoch": 3.087298245614035,
1014
+ "eval_accuracy": 0.41432503771708207,
1015
+ "eval_bleu": 0.1413248900872156,
1016
+ "eval_loss": 3.209906578063965,
1017
+ "eval_perplexity": 24.776771422507743,
1018
+ "eval_runtime": 20.1941,
1019
+ "eval_samples_per_second": 56.502,
1020
+ "eval_steps_per_second": 3.565,
1021
+ "step": 11000
1022
+ },
1023
+ {
1024
+ "epoch": 3.1153684210526316,
1025
+ "grad_norm": 0.7983810901641846,
1026
+ "learning_rate": 4.186162580323165e-05,
1027
+ "loss": 3.0886,
1028
+ "step": 11100
1029
+ },
1030
+ {
1031
+ "epoch": 3.143438596491228,
1032
+ "grad_norm": 0.7757524847984314,
1033
+ "learning_rate": 4.1237756566223724e-05,
1034
+ "loss": 3.0873,
1035
+ "step": 11200
1036
+ },
1037
+ {
1038
+ "epoch": 3.1715087719298247,
1039
+ "grad_norm": 0.8084014654159546,
1040
+ "learning_rate": 4.06138873292158e-05,
1041
+ "loss": 3.0882,
1042
+ "step": 11300
1043
+ },
1044
+ {
1045
+ "epoch": 3.199578947368421,
1046
+ "grad_norm": 0.7784711718559265,
1047
+ "learning_rate": 3.9990018092207875e-05,
1048
+ "loss": 3.0807,
1049
+ "step": 11400
1050
+ },
1051
+ {
1052
+ "epoch": 3.2276491228070174,
1053
+ "grad_norm": 0.7808659076690674,
1054
+ "learning_rate": 3.936614885519995e-05,
1055
+ "loss": 3.0777,
1056
+ "step": 11500
1057
+ },
1058
+ {
1059
+ "epoch": 3.2276491228070174,
1060
+ "eval_accuracy": 0.4159836469355567,
1061
+ "eval_bleu": 0.14196972146127593,
1062
+ "eval_loss": 3.1977927684783936,
1063
+ "eval_perplexity": 24.478440938871064,
1064
+ "eval_runtime": 20.2549,
1065
+ "eval_samples_per_second": 56.332,
1066
+ "eval_steps_per_second": 3.555,
1067
+ "step": 11500
1068
+ },
1069
+ {
1070
+ "epoch": 3.255719298245614,
1071
+ "grad_norm": 0.7880111336708069,
1072
+ "learning_rate": 3.874227961819203e-05,
1073
+ "loss": 3.0907,
1074
+ "step": 11600
1075
+ },
1076
+ {
1077
+ "epoch": 3.2837894736842106,
1078
+ "grad_norm": 0.7764289975166321,
1079
+ "learning_rate": 3.81184103811841e-05,
1080
+ "loss": 3.0829,
1081
+ "step": 11700
1082
+ },
1083
+ {
1084
+ "epoch": 3.311859649122807,
1085
+ "grad_norm": 0.7774072885513306,
1086
+ "learning_rate": 3.749454114417618e-05,
1087
+ "loss": 3.084,
1088
+ "step": 11800
1089
+ },
1090
+ {
1091
+ "epoch": 3.3399298245614037,
1092
+ "grad_norm": 0.7633748650550842,
1093
+ "learning_rate": 3.687067190716826e-05,
1094
+ "loss": 3.0832,
1095
+ "step": 11900
1096
+ },
1097
+ {
1098
+ "epoch": 3.368,
1099
+ "grad_norm": 0.7821294069290161,
1100
+ "learning_rate": 3.624680267016034e-05,
1101
+ "loss": 3.0743,
1102
+ "step": 12000
1103
+ },
1104
+ {
1105
+ "epoch": 3.368,
1106
+ "eval_accuracy": 0.41744863751592426,
1107
+ "eval_bleu": 0.1437616042304935,
1108
+ "eval_loss": 3.185511589050293,
1109
+ "eval_perplexity": 24.1796552890801,
1110
+ "eval_runtime": 20.1722,
1111
+ "eval_samples_per_second": 56.563,
1112
+ "eval_steps_per_second": 3.569,
1113
+ "step": 12000
1114
+ },
1115
+ {
1116
+ "epoch": 3.3960701754385965,
1117
+ "grad_norm": 0.7699295878410339,
1118
+ "learning_rate": 3.562293343315241e-05,
1119
+ "loss": 3.0603,
1120
+ "step": 12100
1121
+ },
1122
+ {
1123
+ "epoch": 3.424140350877193,
1124
+ "grad_norm": 0.7893390655517578,
1125
+ "learning_rate": 3.499906419614449e-05,
1126
+ "loss": 3.064,
1127
+ "step": 12200
1128
+ },
1129
+ {
1130
+ "epoch": 3.4522105263157896,
1131
+ "grad_norm": 0.7758604884147644,
1132
+ "learning_rate": 3.4375194959136565e-05,
1133
+ "loss": 3.0791,
1134
+ "step": 12300
1135
+ },
1136
+ {
1137
+ "epoch": 3.4802807017543858,
1138
+ "grad_norm": 0.7830843925476074,
1139
+ "learning_rate": 3.375132572212865e-05,
1140
+ "loss": 3.0691,
1141
+ "step": 12400
1142
+ },
1143
+ {
1144
+ "epoch": 3.5083508771929823,
1145
+ "grad_norm": 0.7860715389251709,
1146
+ "learning_rate": 3.312745648512072e-05,
1147
+ "loss": 3.0679,
1148
+ "step": 12500
1149
+ },
1150
+ {
1151
+ "epoch": 3.5083508771929823,
1152
+ "eval_accuracy": 0.4182539539753076,
1153
+ "eval_bleu": 0.13973142885022957,
1154
+ "eval_loss": 3.1735119819641113,
1155
+ "eval_perplexity": 23.891242805090002,
1156
+ "eval_runtime": 20.2985,
1157
+ "eval_samples_per_second": 56.211,
1158
+ "eval_steps_per_second": 3.547,
1159
+ "step": 12500
1160
+ },
1161
+ {
1162
+ "epoch": 3.536421052631579,
1163
+ "grad_norm": 0.7781902551651001,
1164
+ "learning_rate": 3.25035872481128e-05,
1165
+ "loss": 3.0577,
1166
+ "step": 12600
1167
+ },
1168
+ {
1169
+ "epoch": 3.5644912280701755,
1170
+ "grad_norm": 0.7784900665283203,
1171
+ "learning_rate": 3.1879718011104875e-05,
1172
+ "loss": 3.0775,
1173
+ "step": 12700
1174
+ },
1175
+ {
1176
+ "epoch": 3.592561403508772,
1177
+ "grad_norm": 0.8009820580482483,
1178
+ "learning_rate": 3.125584877409695e-05,
1179
+ "loss": 3.0532,
1180
+ "step": 12800
1181
+ },
1182
+ {
1183
+ "epoch": 3.6206315789473686,
1184
+ "grad_norm": 0.7675787210464478,
1185
+ "learning_rate": 3.0631979537089026e-05,
1186
+ "loss": 3.0597,
1187
+ "step": 12900
1188
+ },
1189
+ {
1190
+ "epoch": 3.648701754385965,
1191
+ "grad_norm": 0.7848743796348572,
1192
+ "learning_rate": 3.0008110300081106e-05,
1193
+ "loss": 3.0635,
1194
+ "step": 13000
1195
+ },
1196
+ {
1197
+ "epoch": 3.648701754385965,
1198
+ "eval_accuracy": 0.4199536857363891,
1199
+ "eval_bleu": 0.14234657853553717,
1200
+ "eval_loss": 3.1599371433258057,
1201
+ "eval_perplexity": 23.56911440636153,
1202
+ "eval_runtime": 20.1704,
1203
+ "eval_samples_per_second": 56.568,
1204
+ "eval_steps_per_second": 3.57,
1205
+ "step": 13000
1206
+ },
1207
+ {
1208
+ "epoch": 3.6767719298245614,
1209
+ "grad_norm": 0.7748121023178101,
1210
+ "learning_rate": 2.938424106307318e-05,
1211
+ "loss": 3.0489,
1212
+ "step": 13100
1213
+ },
1214
+ {
1215
+ "epoch": 3.704842105263158,
1216
+ "grad_norm": 0.7777696251869202,
1217
+ "learning_rate": 2.8760371826065257e-05,
1218
+ "loss": 3.0603,
1219
+ "step": 13200
1220
+ },
1221
+ {
1222
+ "epoch": 3.7329122807017545,
1223
+ "grad_norm": 0.7850595116615295,
1224
+ "learning_rate": 2.8136502589057333e-05,
1225
+ "loss": 3.0361,
1226
+ "step": 13300
1227
+ },
1228
+ {
1229
+ "epoch": 3.7609824561403506,
1230
+ "grad_norm": 0.7980267405509949,
1231
+ "learning_rate": 2.7512633352049412e-05,
1232
+ "loss": 3.0565,
1233
+ "step": 13400
1234
+ },
1235
+ {
1236
+ "epoch": 3.7890526315789472,
1237
+ "grad_norm": 0.8132106065750122,
1238
+ "learning_rate": 2.6888764115041488e-05,
1239
+ "loss": 3.0262,
1240
+ "step": 13500
1241
+ },
1242
+ {
1243
+ "epoch": 3.7890526315789472,
1244
+ "eval_accuracy": 0.4210717048635117,
1245
+ "eval_bleu": 0.14320922241168227,
1246
+ "eval_loss": 3.148859977722168,
1247
+ "eval_perplexity": 23.309476106050013,
1248
+ "eval_runtime": 20.2248,
1249
+ "eval_samples_per_second": 56.416,
1250
+ "eval_steps_per_second": 3.56,
1251
+ "step": 13500
1252
+ },
1253
+ {
1254
+ "epoch": 3.817122807017544,
1255
+ "grad_norm": 0.8002068400382996,
1256
+ "learning_rate": 2.6264894878033564e-05,
1257
+ "loss": 3.0504,
1258
+ "step": 13600
1259
+ },
1260
+ {
1261
+ "epoch": 3.8451929824561404,
1262
+ "grad_norm": 0.7945306301116943,
1263
+ "learning_rate": 2.564102564102564e-05,
1264
+ "loss": 3.0412,
1265
+ "step": 13700
1266
+ },
1267
+ {
1268
+ "epoch": 3.873263157894737,
1269
+ "grad_norm": 0.7735077738761902,
1270
+ "learning_rate": 2.5017156404017715e-05,
1271
+ "loss": 3.0193,
1272
+ "step": 13800
1273
+ },
1274
+ {
1275
+ "epoch": 3.9013333333333335,
1276
+ "grad_norm": 0.7823268175125122,
1277
+ "learning_rate": 2.4393287167009795e-05,
1278
+ "loss": 3.0408,
1279
+ "step": 13900
1280
+ },
1281
+ {
1282
+ "epoch": 3.9294035087719297,
1283
+ "grad_norm": 0.7943819165229797,
1284
+ "learning_rate": 2.376941793000187e-05,
1285
+ "loss": 3.0382,
1286
+ "step": 14000
1287
+ },
1288
+ {
1289
+ "epoch": 3.9294035087719297,
1290
+ "eval_accuracy": 0.4223199453755559,
1291
+ "eval_bleu": 0.1460635167412373,
1292
+ "eval_loss": 3.139704465866089,
1293
+ "eval_perplexity": 23.097039886291473,
1294
+ "eval_runtime": 20.2485,
1295
+ "eval_samples_per_second": 56.35,
1296
+ "eval_steps_per_second": 3.556,
1297
+ "step": 14000
1298
+ },
1299
+ {
1300
+ "epoch": 3.9574736842105263,
1301
+ "grad_norm": 0.7909451723098755,
1302
+ "learning_rate": 2.314554869299395e-05,
1303
+ "loss": 3.032,
1304
+ "step": 14100
1305
+ },
1306
+ {
1307
+ "epoch": 3.985543859649123,
1308
+ "grad_norm": 0.7830550670623779,
1309
+ "learning_rate": 2.2521679455986026e-05,
1310
+ "loss": 3.0383,
1311
+ "step": 14200
1312
+ },
1313
+ {
1314
+ "epoch": 4.013473684210527,
1315
+ "grad_norm": 0.7939472794532776,
1316
+ "learning_rate": 2.1897810218978105e-05,
1317
+ "loss": 2.9744,
1318
+ "step": 14300
1319
+ },
1320
+ {
1321
+ "epoch": 4.041543859649122,
1322
+ "grad_norm": 0.8031191229820251,
1323
+ "learning_rate": 2.127394098197018e-05,
1324
+ "loss": 2.9426,
1325
+ "step": 14400
1326
+ },
1327
+ {
1328
+ "epoch": 4.069614035087719,
1329
+ "grad_norm": 0.8071146607398987,
1330
+ "learning_rate": 2.0650071744962256e-05,
1331
+ "loss": 2.9525,
1332
+ "step": 14500
1333
+ },
1334
+ {
1335
+ "epoch": 4.069614035087719,
1336
+ "eval_accuracy": 0.4232880385660912,
1337
+ "eval_bleu": 0.1457336973656826,
1338
+ "eval_loss": 3.1334879398345947,
1339
+ "eval_perplexity": 22.95390190803781,
1340
+ "eval_runtime": 20.1672,
1341
+ "eval_samples_per_second": 56.577,
1342
+ "eval_steps_per_second": 3.57,
1343
+ "step": 14500
1344
+ },
1345
+ {
1346
+ "epoch": 4.097684210526316,
1347
+ "grad_norm": 0.8192425966262817,
1348
+ "learning_rate": 2.0026202507954332e-05,
1349
+ "loss": 2.9449,
1350
+ "step": 14600
1351
+ },
1352
+ {
1353
+ "epoch": 4.125754385964912,
1354
+ "grad_norm": 0.8179590702056885,
1355
+ "learning_rate": 1.940233327094641e-05,
1356
+ "loss": 2.9534,
1357
+ "step": 14700
1358
+ },
1359
+ {
1360
+ "epoch": 4.153824561403509,
1361
+ "grad_norm": 0.8264966607093811,
1362
+ "learning_rate": 1.8778464033938487e-05,
1363
+ "loss": 2.957,
1364
+ "step": 14800
1365
+ },
1366
+ {
1367
+ "epoch": 4.181894736842105,
1368
+ "grad_norm": 0.8411971926689148,
1369
+ "learning_rate": 1.8154594796930563e-05,
1370
+ "loss": 2.9503,
1371
+ "step": 14900
1372
+ },
1373
+ {
1374
+ "epoch": 4.209964912280702,
1375
+ "grad_norm": 0.818305253982544,
1376
+ "learning_rate": 1.7530725559922642e-05,
1377
+ "loss": 2.9621,
1378
+ "step": 15000
1379
+ },
1380
+ {
1381
+ "epoch": 4.209964912280702,
1382
+ "eval_accuracy": 0.4239245812568591,
1383
+ "eval_bleu": 0.14536464175084168,
1384
+ "eval_loss": 3.1270124912261963,
1385
+ "eval_perplexity": 22.805745303809648,
1386
+ "eval_runtime": 12.3884,
1387
+ "eval_samples_per_second": 92.102,
1388
+ "eval_steps_per_second": 5.812,
1389
+ "step": 15000
1390
+ },
1391
+ {
1392
+ "epoch": 4.2380350877192985,
1393
+ "grad_norm": 0.8167079091072083,
1394
+ "learning_rate": 1.6906856322914718e-05,
1395
+ "loss": 2.944,
1396
+ "step": 15100
1397
+ },
1398
+ {
1399
+ "epoch": 4.266105263157895,
1400
+ "grad_norm": 0.837181031703949,
1401
+ "learning_rate": 1.6282987085906794e-05,
1402
+ "loss": 2.9407,
1403
+ "step": 15200
1404
+ },
1405
+ {
1406
+ "epoch": 4.294175438596492,
1407
+ "grad_norm": 0.8356810808181763,
1408
+ "learning_rate": 1.5659117848898873e-05,
1409
+ "loss": 2.9364,
1410
+ "step": 15300
1411
+ },
1412
+ {
1413
+ "epoch": 4.322245614035087,
1414
+ "grad_norm": 0.8358649015426636,
1415
+ "learning_rate": 1.5035248611890947e-05,
1416
+ "loss": 2.9307,
1417
+ "step": 15400
1418
+ },
1419
+ {
1420
+ "epoch": 4.350315789473684,
1421
+ "grad_norm": 0.842452347278595,
1422
+ "learning_rate": 1.4411379374883025e-05,
1423
+ "loss": 2.9422,
1424
+ "step": 15500
1425
+ },
1426
+ {
1427
+ "epoch": 4.350315789473684,
1428
+ "eval_accuracy": 0.42498777032717266,
1429
+ "eval_bleu": 0.1467649753048137,
1430
+ "eval_loss": 3.1211211681365967,
1431
+ "eval_perplexity": 22.671784281214766,
1432
+ "eval_runtime": 20.2024,
1433
+ "eval_samples_per_second": 56.479,
1434
+ "eval_steps_per_second": 3.564,
1435
+ "step": 15500
1436
+ },
1437
+ {
1438
+ "epoch": 4.3783859649122805,
1439
+ "grad_norm": 0.8464500904083252,
1440
+ "learning_rate": 1.37875101378751e-05,
1441
+ "loss": 2.9435,
1442
+ "step": 15600
1443
+ },
1444
+ {
1445
+ "epoch": 4.406456140350877,
1446
+ "grad_norm": 0.8314975500106812,
1447
+ "learning_rate": 1.316364090086718e-05,
1448
+ "loss": 2.9405,
1449
+ "step": 15700
1450
+ },
1451
+ {
1452
+ "epoch": 4.434526315789474,
1453
+ "grad_norm": 0.8358827829360962,
1454
+ "learning_rate": 1.2539771663859257e-05,
1455
+ "loss": 2.9438,
1456
+ "step": 15800
1457
+ },
1458
+ {
1459
+ "epoch": 4.46259649122807,
1460
+ "grad_norm": 0.8394728899002075,
1461
+ "learning_rate": 1.1915902426851333e-05,
1462
+ "loss": 2.9233,
1463
+ "step": 15900
1464
+ },
1465
+ {
1466
+ "epoch": 4.490666666666667,
1467
+ "grad_norm": 0.839545488357544,
1468
+ "learning_rate": 1.1292033189843409e-05,
1469
+ "loss": 2.9224,
1470
+ "step": 16000
1471
+ },
1472
+ {
1473
+ "epoch": 4.490666666666667,
1474
+ "eval_accuracy": 0.4256748594765614,
1475
+ "eval_bleu": 0.1454115201862865,
1476
+ "eval_loss": 3.1149473190307617,
1477
+ "eval_perplexity": 22.53224330181115,
1478
+ "eval_runtime": 20.2018,
1479
+ "eval_samples_per_second": 56.48,
1480
+ "eval_steps_per_second": 3.564,
1481
+ "step": 16000
1482
+ },
1483
+ {
1484
+ "epoch": 4.518736842105263,
1485
+ "grad_norm": 0.847416341304779,
1486
+ "learning_rate": 1.0668163952835486e-05,
1487
+ "loss": 2.9372,
1488
+ "step": 16100
1489
+ },
1490
+ {
1491
+ "epoch": 4.54680701754386,
1492
+ "grad_norm": 0.8180661201477051,
1493
+ "learning_rate": 1.0044294715827562e-05,
1494
+ "loss": 2.9422,
1495
+ "step": 16200
1496
+ },
1497
+ {
1498
+ "epoch": 4.574877192982456,
1499
+ "grad_norm": 0.8318551182746887,
1500
+ "learning_rate": 9.42042547881964e-06,
1501
+ "loss": 2.9373,
1502
+ "step": 16300
1503
+ },
1504
+ {
1505
+ "epoch": 4.602947368421052,
1506
+ "grad_norm": 0.8445524573326111,
1507
+ "learning_rate": 8.796556241811717e-06,
1508
+ "loss": 2.9212,
1509
+ "step": 16400
1510
+ },
1511
+ {
1512
+ "epoch": 4.631017543859649,
1513
+ "grad_norm": 0.8220964670181274,
1514
+ "learning_rate": 8.172687004803793e-06,
1515
+ "loss": 2.9475,
1516
+ "step": 16500
1517
+ },
1518
+ {
1519
+ "epoch": 4.631017543859649,
1520
+ "eval_accuracy": 0.4264193488416722,
1521
+ "eval_bleu": 0.149677834207122,
1522
+ "eval_loss": 3.1084439754486084,
1523
+ "eval_perplexity": 22.38618383417341,
1524
+ "eval_runtime": 20.2407,
1525
+ "eval_samples_per_second": 56.372,
1526
+ "eval_steps_per_second": 3.557,
1527
+ "step": 16500
1528
+ },
1529
+ {
1530
+ "epoch": 4.659087719298245,
1531
+ "grad_norm": 0.8326128721237183,
1532
+ "learning_rate": 7.548817767795871e-06,
1533
+ "loss": 2.9335,
1534
+ "step": 16600
1535
+ },
1536
+ {
1537
+ "epoch": 4.687157894736842,
1538
+ "grad_norm": 0.822635293006897,
1539
+ "learning_rate": 6.924948530787947e-06,
1540
+ "loss": 2.9389,
1541
+ "step": 16700
1542
+ },
1543
+ {
1544
+ "epoch": 4.7152280701754385,
1545
+ "grad_norm": 0.8398991227149963,
1546
+ "learning_rate": 6.301079293780024e-06,
1547
+ "loss": 2.9219,
1548
+ "step": 16800
1549
+ },
1550
+ {
1551
+ "epoch": 4.743298245614035,
1552
+ "grad_norm": 0.8308337330818176,
1553
+ "learning_rate": 5.677210056772101e-06,
1554
+ "loss": 2.9374,
1555
+ "step": 16900
1556
+ },
1557
+ {
1558
+ "epoch": 4.771368421052632,
1559
+ "grad_norm": 0.8378835320472717,
1560
+ "learning_rate": 5.053340819764177e-06,
1561
+ "loss": 2.9318,
1562
+ "step": 17000
1563
+ },
1564
+ {
1565
+ "epoch": 4.771368421052632,
1566
+ "eval_accuracy": 0.4270327601022238,
1567
+ "eval_bleu": 0.14678838838741357,
1568
+ "eval_loss": 3.104135036468506,
1569
+ "eval_perplexity": 22.289930657494395,
1570
+ "eval_runtime": 10.9973,
1571
+ "eval_samples_per_second": 103.753,
1572
+ "eval_steps_per_second": 6.547,
1573
+ "step": 17000
1574
+ },
1575
+ {
1576
+ "epoch": 4.799438596491228,
1577
+ "grad_norm": 0.8561663031578064,
1578
+ "learning_rate": 4.429471582756255e-06,
1579
+ "loss": 2.9288,
1580
+ "step": 17100
1581
+ },
1582
+ {
1583
+ "epoch": 4.827508771929825,
1584
+ "grad_norm": 0.8296898007392883,
1585
+ "learning_rate": 3.805602345748331e-06,
1586
+ "loss": 2.9205,
1587
+ "step": 17200
1588
+ },
1589
+ {
1590
+ "epoch": 4.855578947368421,
1591
+ "grad_norm": 0.8513033390045166,
1592
+ "learning_rate": 3.1817331087404082e-06,
1593
+ "loss": 2.9328,
1594
+ "step": 17300
1595
+ },
1596
+ {
1597
+ "epoch": 4.883649122807018,
1598
+ "grad_norm": 0.8511661887168884,
1599
+ "learning_rate": 2.557863871732485e-06,
1600
+ "loss": 2.9392,
1601
+ "step": 17400
1602
+ },
1603
+ {
1604
+ "epoch": 4.911719298245614,
1605
+ "grad_norm": 0.8221142292022705,
1606
+ "learning_rate": 1.933994634724562e-06,
1607
+ "loss": 2.9268,
1608
+ "step": 17500
1609
+ },
1610
+ {
1611
+ "epoch": 4.911719298245614,
1612
+ "eval_accuracy": 0.4273857285929322,
1613
+ "eval_bleu": 0.1460515137764717,
1614
+ "eval_loss": 3.101016044616699,
1615
+ "eval_perplexity": 22.220516852214956,
1616
+ "eval_runtime": 10.9797,
1617
+ "eval_samples_per_second": 103.919,
1618
+ "eval_steps_per_second": 6.558,
1619
+ "step": 17500
1620
+ },
1621
+ {
1622
+ "epoch": 4.93978947368421,
1623
+ "grad_norm": 0.8456584811210632,
1624
+ "learning_rate": 1.3101253977166387e-06,
1625
+ "loss": 2.9326,
1626
+ "step": 17600
1627
+ },
1628
+ {
1629
+ "epoch": 4.967859649122807,
1630
+ "grad_norm": 0.8384252786636353,
1631
+ "learning_rate": 6.862561607087155e-07,
1632
+ "loss": 2.9198,
1633
+ "step": 17700
1634
+ },
1635
+ {
1636
+ "epoch": 4.995929824561403,
1637
+ "grad_norm": 0.8392898440361023,
1638
+ "learning_rate": 6.238692370079231e-08,
1639
+ "loss": 2.9187,
1640
+ "step": 17800
1641
+ },
1642
+ {
1643
+ "epoch": 4.998736842105263,
1644
+ "step": 17810,
1645
+ "total_flos": 1.0584067483285586e+18,
1646
+ "train_loss": 3.584141966119902,
1647
+ "train_runtime": 28526.973,
1648
+ "train_samples_per_second": 19.98,
1649
+ "train_steps_per_second": 0.624
1650
+ }
1651
+ ],
1652
+ "logging_steps": 100,
1653
+ "max_steps": 17810,
1654
+ "num_input_tokens_seen": 0,
1655
+ "num_train_epochs": 5,
1656
+ "save_steps": 500,
1657
+ "stateful_callbacks": {
1658
+ "EarlyStoppingCallback": {
1659
+ "args": {
1660
+ "early_stopping_patience": 2,
1661
+ "early_stopping_threshold": 0.0
1662
+ },
1663
+ "attributes": {
1664
+ "early_stopping_patience_counter": 0
1665
+ }
1666
+ },
1667
+ "TrainerControl": {
1668
+ "args": {
1669
+ "should_epoch_stop": false,
1670
+ "should_evaluate": false,
1671
+ "should_log": false,
1672
+ "should_save": true,
1673
+ "should_training_stop": true
1674
+ },
1675
+ "attributes": {}
1676
+ }
1677
+ },
1678
+ "total_flos": 1.0584067483285586e+18,
1679
+ "train_batch_size": 16,
1680
+ "trial_name": null,
1681
+ "trial_params": null
1682
+ }
training_args.bin CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c9021a79bea00a9b7aa26bd30327d128bc45e546b43d31b5f5131014fecd8912
3
  size 5496
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a22d41e9776c70f9fbe14b433cb94d3c8f4c35c67d89a20c84239b589a50ea0d
3
  size 5496