shpotes commited on
Commit
3f58cee
1 Parent(s): e0913c1

:seedling: add baseline script

Browse files
added_tokens.json DELETED
@@ -1 +0,0 @@
1
- {"<s>": 47, "</s>": 48}
 
 
all_results.json DELETED
@@ -1,14 +0,0 @@
1
- {
2
- "epoch": 0.01,
3
- "eval_loss": 5.129676342010498,
4
- "eval_runtime": 137.0925,
5
- "eval_samples": 2609,
6
- "eval_samples_per_second": 19.031,
7
- "eval_steps_per_second": 1.196,
8
- "eval_wer": 1.0,
9
- "train_loss": 6.290350723266601,
10
- "train_runtime": 127.1004,
11
- "train_samples": 5705,
12
- "train_samples_per_second": 0.315,
13
- "train_steps_per_second": 0.079
14
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
config.json DELETED
@@ -1,107 +0,0 @@
1
- {
2
- "_name_or_path": "facebook/wav2vec2-xls-r-300m",
3
- "activation_dropout": 0.0,
4
- "adapter_kernel_size": 3,
5
- "adapter_stride": 2,
6
- "add_adapter": false,
7
- "apply_spec_augment": true,
8
- "architectures": [
9
- "Wav2Vec2ForCTC"
10
- ],
11
- "attention_dropout": 0.0,
12
- "bos_token_id": 1,
13
- "classifier_proj_size": 256,
14
- "codevector_dim": 768,
15
- "contrastive_logits_temperature": 0.1,
16
- "conv_bias": true,
17
- "conv_dim": [
18
- 512,
19
- 512,
20
- 512,
21
- 512,
22
- 512,
23
- 512,
24
- 512
25
- ],
26
- "conv_kernel": [
27
- 10,
28
- 3,
29
- 3,
30
- 3,
31
- 3,
32
- 2,
33
- 2
34
- ],
35
- "conv_stride": [
36
- 5,
37
- 2,
38
- 2,
39
- 2,
40
- 2,
41
- 2,
42
- 2
43
- ],
44
- "ctc_loss_reduction": "mean",
45
- "ctc_zero_infinity": false,
46
- "diversity_loss_weight": 0.1,
47
- "do_stable_layer_norm": true,
48
- "eos_token_id": 2,
49
- "feat_extract_activation": "gelu",
50
- "feat_extract_dropout": 0.0,
51
- "feat_extract_norm": "layer",
52
- "feat_proj_dropout": 0.0,
53
- "feat_quantizer_dropout": 0.0,
54
- "final_dropout": 0.0,
55
- "hidden_act": "gelu",
56
- "hidden_dropout": 0.0,
57
- "hidden_size": 1024,
58
- "initializer_range": 0.02,
59
- "intermediate_size": 4096,
60
- "layer_norm_eps": 1e-05,
61
- "layerdrop": 0.0,
62
- "mask_feature_length": 10,
63
- "mask_feature_min_masks": 0,
64
- "mask_feature_prob": 0.0,
65
- "mask_time_length": 10,
66
- "mask_time_min_masks": 2,
67
- "mask_time_prob": 0.05,
68
- "model_type": "wav2vec2",
69
- "num_adapter_layers": 3,
70
- "num_attention_heads": 16,
71
- "num_codevector_groups": 2,
72
- "num_codevectors_per_group": 320,
73
- "num_conv_pos_embedding_groups": 16,
74
- "num_conv_pos_embeddings": 128,
75
- "num_feat_extract_layers": 7,
76
- "num_hidden_layers": 24,
77
- "num_negatives": 100,
78
- "output_hidden_size": 1024,
79
- "pad_token_id": 46,
80
- "proj_codevector_dim": 768,
81
- "tdnn_dilation": [
82
- 1,
83
- 2,
84
- 3,
85
- 1,
86
- 1
87
- ],
88
- "tdnn_dim": [
89
- 512,
90
- 512,
91
- 512,
92
- 512,
93
- 1500
94
- ],
95
- "tdnn_kernel": [
96
- 5,
97
- 3,
98
- 3,
99
- 1,
100
- 1
101
- ],
102
- "torch_dtype": "float32",
103
- "transformers_version": "4.16.0.dev0",
104
- "use_weighted_layer_sum": false,
105
- "vocab_size": 49,
106
- "xvector_output_dim": 512
107
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
eval_results.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "epoch": 0.01,
3
- "eval_loss": 5.129676342010498,
4
- "eval_runtime": 137.0925,
5
- "eval_samples": 2609,
6
- "eval_samples_per_second": 19.031,
7
- "eval_steps_per_second": 1.196,
8
- "eval_wer": 1.0
9
- }
 
 
 
 
 
 
 
 
 
 
preprocessor_config.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "do_normalize": true,
3
- "feature_extractor_type": "Wav2Vec2FeatureExtractor",
4
- "feature_size": 1,
5
- "padding_side": "right",
6
- "padding_value": 0,
7
- "return_attention_mask": true,
8
- "sampling_rate": 16000
9
- }
 
 
 
 
 
 
 
 
 
 
pytorch_model.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:c79d9bfd900ed445b471b21027361e204c7b99e85ed9307a769eb70452db5048
3
- size 1262124593
 
 
 
 
run_speech_recognition_ctc.py → run_speech_recognition_ctc_bnb.py RENAMED
@@ -30,6 +30,7 @@ import numpy as np
30
  import torch
31
  from datasets import DatasetDict, load_dataset, load_metric
32
 
 
33
  import transformers
34
  from transformers import (
35
  AutoConfig,
@@ -43,6 +44,7 @@ from transformers import (
43
  Wav2Vec2Processor,
44
  set_seed,
45
  )
 
46
  from transformers.trainer_utils import get_last_checkpoint, is_main_process
47
  from transformers.utils import check_min_version
48
  from transformers.utils.versions import require_version
@@ -661,6 +663,26 @@ def main():
661
  # Instantiate custom data collator
662
  data_collator = DataCollatorCTCWithPadding(processor=processor)
663
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
664
  # Initialize Trainer
665
  trainer = Trainer(
666
  model=model,
@@ -670,6 +692,7 @@ def main():
670
  train_dataset=vectorized_datasets["train"] if training_args.do_train else None,
671
  eval_dataset=vectorized_datasets["eval"] if training_args.do_eval else None,
672
  tokenizer=feature_extractor,
 
673
  )
674
 
675
  # 8. Finally, we can start training
 
30
  import torch
31
  from datasets import DatasetDict, load_dataset, load_metric
32
 
33
+ import bitsandbytes as bnb
34
  import transformers
35
  from transformers import (
36
  AutoConfig,
 
44
  Wav2Vec2Processor,
45
  set_seed,
46
  )
47
+ from transformers.trainer_pt_utils import get_parameter_names
48
  from transformers.trainer_utils import get_last_checkpoint, is_main_process
49
  from transformers.utils import check_min_version
50
  from transformers.utils.versions import require_version
 
663
  # Instantiate custom data collator
664
  data_collator = DataCollatorCTCWithPadding(processor=processor)
665
 
666
+ decay_parameters = get_parameter_names(model, [torch.nn.LayerNorm])
667
+ decay_parameters = [name for name in decay_parameters if "bias" not in name]
668
+ optimizer_grouped_parameters = [
669
+ {
670
+ "params": [p for n, p in model.named_parameters() if n in decay_parameters],
671
+ "weight_decay": training_args.weight_decay,
672
+ },
673
+ {
674
+ "params": [p for n, p in model.named_parameters() if n not in decay_parameters],
675
+ "weight_decay": 0.0,
676
+ },
677
+ ]
678
+ optimizer = bnb.optim.Adam8bit(
679
+ params=optimizer_grouped_parameters,
680
+ betas=(training_args.adam_beta1, training_args.adam_beta2),
681
+ eps=training_args.adam_epsilon,
682
+ )
683
+
684
+ optimizers = (optimizer, None)
685
+
686
  # Initialize Trainer
687
  trainer = Trainer(
688
  model=model,
 
692
  train_dataset=vectorized_datasets["train"] if training_args.do_train else None,
693
  eval_dataset=vectorized_datasets["eval"] if training_args.do_eval else None,
694
  tokenizer=feature_extractor,
695
+ optimizers=optimizers,
696
  )
697
 
698
  # 8. Finally, we can start training
special_tokens_map.json DELETED
@@ -1 +0,0 @@
1
- {"bos_token": "<s>", "eos_token": "</s>", "unk_token": "[UNK]", "pad_token": "[PAD]", "additional_special_tokens": [{"content": "<s>", "single_word": false, "lstrip": false, "rstrip": false, "normalized": true}, {"content": "</s>", "single_word": false, "lstrip": false, "rstrip": false, "normalized": true}]}
 
 
tokenizer_config.json DELETED
@@ -1 +0,0 @@
1
- {"unk_token": "[UNK]", "bos_token": "<s>", "eos_token": "</s>", "pad_token": "[PAD]", "do_lower_case": false, "word_delimiter_token": "|", "special_tokens_map_file": null, "tokenizer_file": null, "name_or_path": "./", "tokenizer_class": "Wav2Vec2CTCTokenizer"}
 
 
train_results.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "epoch": 0.01,
3
- "train_loss": 6.290350723266601,
4
- "train_runtime": 127.1004,
5
- "train_samples": 5705,
6
- "train_samples_per_second": 0.315,
7
- "train_steps_per_second": 0.079
8
- }
 
 
 
 
 
 
 
 
 
trainer_state.json DELETED
@@ -1,25 +0,0 @@
1
- {
2
- "best_metric": null,
3
- "best_model_checkpoint": null,
4
- "epoch": 0.00700770847932726,
5
- "global_step": 10,
6
- "is_hyper_param_search": false,
7
- "is_local_process_zero": true,
8
- "is_world_process_zero": true,
9
- "log_history": [
10
- {
11
- "epoch": 0.01,
12
- "step": 10,
13
- "total_flos": 1.12376657426688e+16,
14
- "train_loss": 6.290350723266601,
15
- "train_runtime": 127.1004,
16
- "train_samples_per_second": 0.315,
17
- "train_steps_per_second": 0.079
18
- }
19
- ],
20
- "max_steps": 10,
21
- "num_train_epochs": 1,
22
- "total_flos": 1.12376657426688e+16,
23
- "trial_name": null,
24
- "trial_params": null
25
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
training_args.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:c65283301b8c8bb1ae36123e130388a1d7315758fdd0ecf252815e5209075192
3
- size 2991
 
 
 
 
vocab.json DELETED
@@ -1 +0,0 @@
1
- {"!": 1, "\"": 2, "'": 3, ",": 4, "-": 5, ".": 6, ";": 7, "?": 8, "a": 9, "b": 10, "c": 11, "d": 12, "e": 13, "f": 14, "g": 15, "h": 16, "i": 17, "j": 18, "k": 19, "l": 20, "m": 21, "n": 22, "o": 23, "p": 24, "q": 25, "r": 26, "s": 27, "t": 28, "u": 29, "v": 30, "w": 31, "x": 32, "y": 33, "z": 34, "ä": 35, "õ": 36, "ö": 37, "ü": 38, "š": 39, "ž": 40, "̇": 41, "’": 42, "“": 43, "„": 44, "|": 0, "[UNK]": 45, "[PAD]": 46}