aa3ycswy: saving weights and logs of step 3k
Browse files- .gitattributes +1 -1
- .run.sh.swp +0 -0
- events.out.tfevents.1659269009.t1v-n-eedfb410-w-0.1520908.0.v2 +3 -0
- events.out.tfevents.1659270085.t1v-n-eedfb410-w-0.532896.0.v2 +3 -0
- events.out.tfevents.1659271924.t1v-n-eedfb410-w-0.3751729.0.v2 +3 -0
- flax_model.msgpack +1 -1
- run.sh +5 -5
- special_tokens_map.json +42 -0
- wandb/debug-internal.log +1 -1
- wandb/debug.log +1 -1
- wandb/latest-run +1 -1
- wandb/run-20220730_174606-j2u4n7h4/files/config.yaml +6 -0
- wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json +1 -0
- wandb/run-20220730_174606-j2u4n7h4/files/output.log +265 -0
- wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json +0 -0
- wandb/run-20220730_174606-j2u4n7h4/logs/debug-internal.log +592 -0
- wandb/run-20220730_174606-j2u4n7h4/logs/debug.log +164 -0
- wandb/run-20220730_174606-j2u4n7h4/run-j2u4n7h4.wandb +2 -2
- wandb/run-20220731_115136-a9kwr28f/files/code/run_flax_speech_recognition_ctc.py +1604 -0
- wandb/run-20220731_115136-a9kwr28f/files/config.yaml +33 -0
- wandb/run-20220731_115136-a9kwr28f/files/diff.patch +0 -0
- wandb/run-20220731_115136-a9kwr28f/files/output.log +0 -0
- wandb/run-20220731_115136-a9kwr28f/files/requirements.txt +158 -0
- wandb/run-20220731_115136-a9kwr28f/files/wandb-metadata.json +68 -0
- wandb/run-20220731_115136-a9kwr28f/files/wandb-summary.json +1 -0
- wandb/run-20220731_115136-a9kwr28f/logs/debug-internal.log +532 -0
- wandb/run-20220731_115136-a9kwr28f/logs/debug.log +148 -0
- wandb/run-20220731_115136-a9kwr28f/run-a9kwr28f.wandb +3 -0
- wandb/run-20220731_120912-3m2amvk9/files/code/run_flax_speech_recognition_ctc.py +1604 -0
- wandb/run-20220731_120912-3m2amvk9/files/config.yaml +27 -0
- wandb/run-20220731_120912-3m2amvk9/files/diff.patch +0 -0
- wandb/run-20220731_120912-3m2amvk9/files/output.log +0 -0
- wandb/run-20220731_120912-3m2amvk9/files/requirements.txt +158 -0
- wandb/run-20220731_120912-3m2amvk9/files/wandb-metadata.json +68 -0
- wandb/run-20220731_120912-3m2amvk9/files/wandb-summary.json +1 -0
- wandb/run-20220731_120912-3m2amvk9/logs/debug-internal.log +600 -0
- wandb/run-20220731_120912-3m2amvk9/logs/debug.log +26 -0
- wandb/run-20220731_120912-3m2amvk9/run-3m2amvk9.wandb +3 -0
- wandb/run-20220731_124004-aa3ycswy/files/code/run_flax_speech_recognition_ctc.py +1604 -0
- wandb/run-20220731_124004-aa3ycswy/files/config.yaml +27 -0
- wandb/run-20220731_124004-aa3ycswy/files/diff.patch +0 -0
- wandb/run-20220731_124004-aa3ycswy/files/output.log +0 -0
- wandb/run-20220731_124004-aa3ycswy/files/requirements.txt +158 -0
- wandb/run-20220731_124004-aa3ycswy/files/wandb-metadata.json +68 -0
- wandb/run-20220731_124004-aa3ycswy/files/wandb-summary.json +1 -0
- wandb/run-20220731_124004-aa3ycswy/logs/debug-internal.log +0 -0
- wandb/run-20220731_124004-aa3ycswy/logs/debug.log +23 -0
- wandb/run-20220731_124004-aa3ycswy/run-aa3ycswy.wandb +3 -0
.gitattributes
CHANGED
@@ -29,4 +29,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
29 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
30 |
*.zstandard filter=lfs diff=lfs merge=lfs -text
|
31 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
32 |
-
*.wandb filter=lfs diff=lfs merge=lfs -text
|
|
|
29 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
30 |
*.zstandard filter=lfs diff=lfs merge=lfs -text
|
31 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
32 |
+
*.wandb filter=lfs diff=lfs merge=lfs -text
|
.run.sh.swp
DELETED
Binary file (1.02 kB)
|
|
events.out.tfevents.1659269009.t1v-n-eedfb410-w-0.1520908.0.v2
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:8386bdf800d5d6ab92071e7b241c2cb0264dd33040069778562eb58e771dc4cf
|
3 |
+
size 40
|
events.out.tfevents.1659270085.t1v-n-eedfb410-w-0.532896.0.v2
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:32b0aa01501a5340822a4d6d0da6ea295c1bc0d29ee685c1780cc179dec75d76
|
3 |
+
size 40
|
events.out.tfevents.1659271924.t1v-n-eedfb410-w-0.3751729.0.v2
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:ffd6029010d74ffc8e1f738202126cd851d0ba4e915f93679ae50784a032c433
|
3 |
+
size 40
|
flax_model.msgpack
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
size 3850218852
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:1dd8c8bb12c7c6c6e5bdb02dde56ea8c284c6daa9aa61c6a3470e3eb8b4aadcf
|
3 |
size 3850218852
|
run.sh
CHANGED
@@ -5,18 +5,18 @@ WANDB_ENTITY=NbAiLab WANDB_PROJECT=wav2vec2 python run_flax_speech_recognition_c
|
|
5 |
--output_dir="./" \
|
6 |
--overwrite_output_dir \
|
7 |
--num_train_epochs="40" \
|
8 |
-
--per_device_train_batch_size="
|
9 |
-
--per_device_eval_batch_size="
|
10 |
--gradient_accumulation_steps="1" \
|
11 |
--precision="full_mixed" \
|
12 |
--matmul_precision="bfloat16" \
|
13 |
-
--learning_rate="
|
14 |
--warmup_steps="4000" \
|
15 |
--length_column_name="input_length" \
|
16 |
--evaluation_strategy="steps" \
|
17 |
--text_column_name="text" \
|
18 |
-
--save_steps="
|
19 |
-
--eval_steps="
|
20 |
--logging_steps="100" \
|
21 |
--layerdrop="0.041" \
|
22 |
--attention_dropout="0.094" \
|
|
|
5 |
--output_dir="./" \
|
6 |
--overwrite_output_dir \
|
7 |
--num_train_epochs="40" \
|
8 |
+
--per_device_train_batch_size="10" \
|
9 |
+
--per_device_eval_batch_size="10" \
|
10 |
--gradient_accumulation_steps="1" \
|
11 |
--precision="full_mixed" \
|
12 |
--matmul_precision="bfloat16" \
|
13 |
+
--learning_rate="8e-4" \
|
14 |
--warmup_steps="4000" \
|
15 |
--length_column_name="input_length" \
|
16 |
--evaluation_strategy="steps" \
|
17 |
--text_column_name="text" \
|
18 |
+
--save_steps="3783" \
|
19 |
+
--eval_steps="3783" \
|
20 |
--logging_steps="100" \
|
21 |
--layerdrop="0.041" \
|
22 |
--attention_dropout="0.094" \
|
special_tokens_map.json
CHANGED
@@ -175,6 +175,48 @@
|
|
175 |
"rstrip": false,
|
176 |
"single_word": false
|
177 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
178 |
{
|
179 |
"content": "</s>",
|
180 |
"lstrip": false,
|
|
|
175 |
"rstrip": false,
|
176 |
"single_word": false
|
177 |
},
|
178 |
+
{
|
179 |
+
"content": "</s>",
|
180 |
+
"lstrip": false,
|
181 |
+
"normalized": true,
|
182 |
+
"rstrip": false,
|
183 |
+
"single_word": false
|
184 |
+
},
|
185 |
+
{
|
186 |
+
"content": "<s>",
|
187 |
+
"lstrip": false,
|
188 |
+
"normalized": true,
|
189 |
+
"rstrip": false,
|
190 |
+
"single_word": false
|
191 |
+
},
|
192 |
+
{
|
193 |
+
"content": "</s>",
|
194 |
+
"lstrip": false,
|
195 |
+
"normalized": true,
|
196 |
+
"rstrip": false,
|
197 |
+
"single_word": false
|
198 |
+
},
|
199 |
+
{
|
200 |
+
"content": "<s>",
|
201 |
+
"lstrip": false,
|
202 |
+
"normalized": true,
|
203 |
+
"rstrip": false,
|
204 |
+
"single_word": false
|
205 |
+
},
|
206 |
+
{
|
207 |
+
"content": "</s>",
|
208 |
+
"lstrip": false,
|
209 |
+
"normalized": true,
|
210 |
+
"rstrip": false,
|
211 |
+
"single_word": false
|
212 |
+
},
|
213 |
+
{
|
214 |
+
"content": "<s>",
|
215 |
+
"lstrip": false,
|
216 |
+
"normalized": true,
|
217 |
+
"rstrip": false,
|
218 |
+
"single_word": false
|
219 |
+
},
|
220 |
{
|
221 |
"content": "</s>",
|
222 |
"lstrip": false,
|
wandb/debug-internal.log
CHANGED
@@ -1 +1 @@
|
|
1 |
-
run-
|
|
|
1 |
+
run-20220731_124004-aa3ycswy/logs/debug-internal.log
|
wandb/debug.log
CHANGED
@@ -1 +1 @@
|
|
1 |
-
run-
|
|
|
1 |
+
run-20220731_124004-aa3ycswy/logs/debug.log
|
wandb/latest-run
CHANGED
@@ -1 +1 @@
|
|
1 |
-
run-
|
|
|
1 |
+
run-20220731_124004-aa3ycswy
|
wandb/run-20220730_174606-j2u4n7h4/files/config.yaml
CHANGED
@@ -18,6 +18,12 @@ _wandb:
|
|
18 |
- 3
|
19 |
- 11
|
20 |
- 12
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
3:
|
22 |
- 13
|
23 |
4: 3.8.10
|
|
|
18 |
- 3
|
19 |
- 11
|
20 |
- 12
|
21 |
+
2:
|
22 |
+
- 1
|
23 |
+
- 2
|
24 |
+
- 3
|
25 |
+
- 11
|
26 |
+
- 12
|
27 |
3:
|
28 |
- 13
|
29 |
4: 3.8.10
|
wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
{"columns": ["label_str", "pred_str"], "data": [["men n\u00e5r n\u00e5r senterpartiet \u00f8nsker \u00e5 bruke denne anledningen til \u00e5 svekke e\u00f8s[UNK]avtalen s\u00e5 s\u00e5 er det det er lov \u00e5 fors\u00f8ke det men jeg er veldig glad for at det fors\u00f8ket ikke lykkes og at det fortsatt er trygt og godt flertall denne salen for \u00e5 slutte opp om e\u00f8s[UNK]avtalen eee og at denne utredningen n\u00e5 ikke blir noe av", "men n\u00e5r n\u00e5senterpartiet \u00f8nsker \u00e5 bruke ennan ledninger til \u00e5 svekke i vesavtalen s\u00e5 s\u00e5 er det det er ov o fors\u00f8ke de men etg er veldig glad for at det fors\u00f8ket ikke lykkes og at de fortsatt er tryktav godt flertall dn saven for \u00e5 o slutte opp p\u00e5 mevesavtalen ee og at denne utredningen \u00e5g ikke bli gva"], ["i samme \u00e5nd vil jeg ogs\u00e5 nevne forslaget fra kristelig folkeparti og arbeiderpartiet som stortinget voterte over tidligere i \u00e5r om \u00e5 starte prosessen med \u00e5 trekke fondet ut av spillselskaper med begrunnelsen at eierskapet i disse selskapene truer norsk tippings spillmonopol i norge", "i samme ognn vil det alts\u00e5 nevne forslaget fra krisi folkepartiet og arbaderpartiet som stortinget voterte over tidligere \u00e5r om \u00e5 state prosesen med \u00e5 trekke i fonden utav spilseskaper vi begrunnsnt eikapet i disse selskapene truer norsk typpingsspilmonipol i norge"], ["vi har konkurransedyktige b\u00e5de l\u00f8nninger men og vi har god kompetanse i norge som og kunne ha v\u00e6rt videreutvikla gjennom at en hadde flytta en st\u00f8rre del av forvaltninga til norge og derfor s\u00e5 fremmer vi og forslag om \u00e5 utrede det", "vi har konkurranse dyktige b\u00e5de l\u00f8ndninger men og vi ha god kompetanse i norge s\u00e5 \u00e5 kunna v\u00e6re vierutvikla i\u00f8naten hadde flytta enn st\u00f8rre del av forvaltninga tilnorge og derfor s\u00e5 fremmer vi og forslag om o utrede det"], ["president i mmm november s\u00e5 stilte jeg skriftlig sp\u00f8rsm\u00e5l til finansministeren om narvik kommune som har gruveselskapet lkab eee som jo har bidratt vesentlig til mmm kommune\u00f8konomien for narvik kommune gjennom inntektene eee i eiendomsskatten for verk og bruk", "president i november s\u00e5 stilteet skriftit sp\u00f8rsm\u00e5let il finansministeren om narvik kommune som har gruveselskapet elkag e som jo har bidrat vesentlig tilgnn kommune \u00f8konomiene for narvik kommune igjennom intekta iagjendomskatten forverkebruk"], ["oppl\u00e6ringslovens paragraf ni a fem om aktivitetsplikt ved krenking har v\u00e6rt tema for debatt og fagbladet eee nei om unnskyld og forbundsleder i skoleforbundet stig johannessen uttrykker en forventning om at lovgivende myndighet rydder til side all tvil knytta til paragrafen", "opplaingsloven paragra ni av fem om aktivitetsplikt ved kenking har v\u00e6rt tema for debatt og fagblae og unog forbundsleder i skoleforbundetestig i johannesen uttrykker enn for ventning rm atil lovivne myndighet rydder til side alt vil knytta til paragrafen"], ["jeg tror svaret ligger nettopp i dette at vi i den eee driftshverdagen og innenfor det vedtatte budsjett \u00e5rlig blir tvunget til \u00e5 skape rom for qqq for eee det vedlikeholdet som m\u00e5 gj\u00f8res for at det ikke skal bli tillatt \u00e5 bygge opp et s\u00e5 stort etterslep", "jeg tror svaret ligger nettopp i dette attt vi iden driftsverdagen og innenfor det vedtatte budsjett \u00e5rlig blir tvunge til \u00e5 skape rom for for det vi likeholds\u00e5 m\u00e5 gj\u00f8res for at det ikke skal blie tillatt \u00e5 bygge opp et s\u00e5storteteslip"], ["eee og s\u00e5 er det jo s\u00e5nt at eee det likestilling det at en skal ha mulighet for \u00e5 f\u00e5 hjelp til assistert befruktning eee i i like stor grad n\u00e5r det er kvinnen som har eee et problem som n\u00e5r det er mannen er selvf\u00f8lgelig et argument for eggdonasjon som jeg og eee erkjenner og anerkjenner", "ogs\u00e5 er det s\u00e5nnt at det er likestiling i det at en skal ha mulighet for \u00e5 f\u00e5 hjelpt asistert p\u00e5 fruktning i liketor grad n\u00e5r det er kvinnen som har ett problem som n\u00e5r dt mannen ee selvf\u00f8lgelig et argument for egdnasjon som eog akenne og anda knne"], ["samtidig s\u00e5 var jeg jo byr\u00e5d i oslo p\u00e5 den tiden da dette ble innf\u00f8rt og da h\u00f8rte jeg egentlig det motsatte ogs\u00e5 av det som representanten b\u00f8hler tar opp nemlig en bekymring for at utsatte ungdom ogs\u00e5 ble trukket ut av skolen fordi de fire tusen kronene eller tiltakspengene at det ble ogs\u00e5 en viktig del av b\u00e5de ungdommen og til og med ogs\u00e5 kanskje til og med familienes \u00f8konomi", "samtidig s\u00e5 var jeg jo byr\u00e5dt olo p\u00e5 den tiden da dette ble innf\u00f8rt g det a h\u00f8rte egenti et motsette ogs\u00e5 a deta som representanten b\u00f8tar opp nemlig bekymring for at utsatte ungdome ogs\u00e5 bli trukket ut av skolen fordi de firetusen i kronen eller tiltakspengene at det ble ogs\u00e5 nviktig del av b\u00e5de ungdomen og tilvose kanske til med familienes \u00f8konomi"], ["eee n\u00e5r storbritannia skal ut av av eu s\u00e5 ser de ikke p\u00e5 e\u00f8s som et aktuelt alternativ eee men for norge \u00e5 skulle eee f\u00f8lge etter storbritannia og og velge \u00e5 g\u00e5 ut av eus indre marked det er ikke et alternativ jeg vil anbefale denne salen", "e n\u00e5 storbritania ska ut av av eu s\u00e5 ser det ikke p\u00e5 euesom et aktuelt alternativ ee men for norge og sklle f\u00f8lghetil storbritania og og velge \u00e5 g\u00e5 ut av eus indtremarked det er ikkeet alternativavil ambefalle denne saom"], ["at vi er eee ansvarlige b\u00e5de vi som politikere men og sj\u00f8lsagt at de som har f\u00e5tt det store ansvar som det inneb\u00e6rer \u00e5 forvalte de store milliardrikdommene som eee den norske sa p\u00e5 vegne av det norske fellesskapet at de og er sitt ansvar bevisst", "at vi er e ansvarlige b\u00e5de visom politikera men og k\u00f8lsagt at dte som hari f\u00e5tt det store ansvar som det inneb\u00e6re og forvalt de store miladerikdommene som ee det norske somer p\u00e5 vegnen av det norske fellesskapet at ete ogesitt ansvar bevisst"], ["og det ser jo ut som eee de som har forskanset seg i en motstand mot eu og e\u00f8s ikke er klar over den levende debatten og den regelutviklingen som skjer nettopp for \u00e5 sette gode rammer ogs\u00e5 innenfor eee det som gjelder arbeidslivet", "og det ser jo utsom de som har forstanset seg i motstanden mot eu og us ikke re klare vordt en levende debatten og den reglutviklinge som sker nettopp for o sette gode rammer ogs\u00e5 innenfor detsom ele arbeidslivet"], ["jeg vil vektlegge at det er viktig at en fortsatt utreder det som g\u00e5r p\u00e5 en eee eee moms p\u00e5 finansielle tjenester i kombinasjon med en skatt p\u00e5 margininntekt eee men og det \u00e5 sj\u00e5 p\u00e5 \u00f8kt eee s eee skatt p\u00e5 overskudd i n\u00e6ringa", "et vir vektleggatet er viktig at et ener fortsatt utredav det som g\u00e5r p\u00e5 enn e mons p\u00e5\u00e5 finansielle teneste i komminasjonmenn skatt p\u00e5 marginintekt e men og det ogs\u00e5 p\u00e5 \u00f8kt skatt p\u00e5 overskudd i n\u00e6ringar"], ["forslaget fikk st\u00f8tte fra blant anna integrerings[UNK] og mangfoldsdirektoratet som uttalte at det ikke b\u00f8r v\u00e6re ordninger med kontantytelser de f\u00f8rste \u00e5ra i norge som gj\u00f8r det \u00f8konomisk gunstig \u00e5 v\u00e6re borte fra introduksjonsprogrammet", "forslaget fikk st\u00f8tte fra blant annal integiering som hanf\u00e5lds direktoratet som uttalt at det ikke buer hver ordninga meed kontantytilsa de f\u00f8rste \u00e5rane i norge som gj\u00f8r\u00f8r det \u00f8konomisk gunstig og et e borte fra introduksjonsprogrammer"], ["eee d d de store budsjettprosessene handler jo om \u00e5 definere omr\u00e5der som krever en s\u00e6rskilt satsing fra det ene \u00e5ret til det andre men det fratar oss jo ikke eee for ansvaret for \u00e5 stille et generelt krav til alle statlige bedrifter om \u00e5 effektivisere driften sin", "e dde store bedsj\u00f8ttpl\u00e5selseme hanger jo om \u00e5 definere omr\u00e5der som krever en s\u00e6rskilt satsing fra det ene \u00e5ret til det andre men det fratar jose ikke e for ansvaret for og stillet semierelt krav til alle statilige bedrifter om \u00e5 effektivisere driften si"], ["det er innf\u00f8rt rentetak p\u00e5 l\u00e5n og kreditt i mange land i verden og rentetit e re rentetak vil inneb\u00e6re at det ikke lenger vil v\u00e6re l\u00f8nnsomt for bankene \u00e5 gi l\u00e5n til de personene som har h\u00f8yest kredittrisiko det vil si den gruppa som st\u00e5r i kj eee st\u00f8rst fare for \u00e5 f\u00e5 betalingsvansker", "det e innf\u00f8rt rente tak p\u00e5 l\u00e5m og kreditt i mange land i verden g rente tit r\u00f8nte tak vil innerbere at det ki lenge l v\u00e6re l\u00f8nsomt for banken og gir l\u00e5n til de personene som har h\u00f8yest kredittrisiko det il si det en gruppa som st\u00e5r i i st\u00f8rstfare for \u00e5 ff\u00e5 betalingsvansker"], ["og derfor president s\u00e5 vil jeg egentlig bare utfordre au eee finansministeren fordi at jeg regner ikke med at finansdepartementet bare sitter og ser p\u00e5 det som skjer i eu og og er likegyldig til det men men tar vel stilling til au det regelverket og \u00e5ssen en en \u00f8nsker \u00e5 m\u00f8te det n\u00e5r n\u00e5r de endringene kjem", "og derfor president s\u00e5 vil eienklig bare utfordrau e finansministreren fordi at e reide ikke med finansdebartementet bare side \u00e5 ser p\u00e5 det som skjer i eu o og el likylig til det men men det e vel stilling til au det er regelverket og ogs\u00e5m e en en \u00f8nsker m\u00f8te det n\u00e5r n\u00e5r de i endringane kjermer"], ["kvinesdal kommune er varsla av kommunerevisjonen vest vest[UNK]agder iks om at de ikke vil attestere krav om momskompensasjon for sjette termin tjuesytten til sv\u00f8mmehall uten \u00e5 ta forbehold knytta til at dette er \u00e5 anse som konkurranse med private akt\u00f8rer", "finsi a kommune er varslar av kommun revisjonen vest hver s trag d\u00e5t i k s om at det ikke vil adtestere krav og moms kompensasjonfor sjette t\u00f8rmin tjuesytten til sv\u00f8medhal uden \u00e5 ta forbehold knyttar til at dette er \u00e5 anse som konkurranse med private akt\u00f8rer"], ["president eg registrerer i at i den behandlinga av stortingsmeldinga som representanten lundteigen refererer til s\u00e5 gjekk eee senterpartiet vekk fr\u00e5 dei resultatm\u00e5la for sj\u00f8lvforsyningsgrad som dei sj\u00f8l f\u00f8reslo fr\u00e5 stortinget sist dei sat i regjering", "president jeg registrera i ate denne behandlingav stortings meldinga som representanten lund te en refererar til s\u00e5 gikk senterpartiet vekk fora dei resultat m\u00e5la for sj\u00f8lforsyningsgrad som dei sj\u00f8lforo slo fra stortinget sist det satte i regjering"], ["vi bygger ut psykologkompetanse i kommunene eee med \u00f8remerka midler og et lovfesta krav og vi ser n\u00e5 at der er en kraftig \u00f8kning i antall kommuner som ansetter psykologer det samme og med \u00e5 gi et tidlig hjelp gjennom helsestasjonen og skolehelsetjenesten som og bygges eee eee bygges ut", "ed \u00e5 beggudt sykologkompetanse i kommunene e med \u00f8remarkar midtel og et l\u00e5festa krav og mei ser n\u00e5 at de e en kraftig \u00f8kning i antal kommuner som ansetter psykologar det samme og med \u00e5 gi e tidlig hjelp gjennom helsesitasjon og skolehelsetjenstem som og byggese bygges ut"], ["nederlands utviklingsminister mobiliserte til en stor konferanse i brussel for \u00e5 kompensere for amerikanernes kutt og der takket hun medarrang\u00f8rene belgia danmark og sverige og de landene som hadde meldt sin st\u00f8tte til det initiativet canada kapp verde estland finland og luxemburg", "nederlands utvykingsministrer m\u00e5 bli selte til en stor konfuranse i bruslu for \u00e5 kompensere for amerikanernes skutt og de takker hun medarang\u00f8rerne belgia danmark og svare og de landene som hadde melt sin st\u00f8tte til let initiativet kam \u00e5 erk ap verde eslam finland og luksemburg"], ["eee vil ogs\u00e5 p\u00e5 vegne av h\u00f8yre slutte meg til de merknadene hvor komiteen st\u00e5r samlet eee men jeg har allikevel behov for \u00e5 bruke eee min taletid til \u00e5 gj\u00f8re noen generelle refleksjoner rundt d eee s\u00e6rlig debatten knyttet til oljefondsmeldingen president", "il ogs\u00e5 p\u00e5 vaeine \u00e5 h\u00f8re skutter meg til de marknaden i ordkomitene st\u00e5r samlett e men jeg har alikel beho for \u00e5 bruke e min tale tid til \u00e5 gj\u00f8re noen generele refleksjoner rundt d s\u00e6rlig debatten knyttet til olerfondsmellingen president"], ["det som er faren er jo at utviklinga som har skjedd under eee siv jensen som finansminister vil fortsette nemlig at det vil bli \u00f8kt eiendomsskatt ute i kommunene at det vil bli \u00f8kt eiendomsskatt p\u00e5 bolig at det vil bli \u00f8kt eiendomsskatt p\u00e5 anna n\u00e6ringsliv fordi at kommunene ikke har noe oljefond \u00e5 hente ifra", "det som er faren er jo at det utviklingar s\u00e5 sedd under e si jensten som finansministr ved fortsette nemlig at det er blir \u00f8kte eiendomsskatt ute i kommunmanmet at det vil blir \u00f8kt eiendomskatt p\u00e5 bolig gat det ver bi \u00f8kt eiendomsskatt p\u00e5 anla m\u00e6ringsliv fordi at kommunmanme ikke har nok olje fom e hent ir fra"], ["nevne at tidligere fiskeriminister helga pedersen kommer st\u00e5 i til \u00e5 st\u00e5 igjen i norsk historie som en av de som virkelig gjorde store framskritt i forhold til internasjonal registrering av s\u00e5kalt u u[UNK]fiske og eee jobba tungt internasjonalt med det", "mende at ti ligere fiskeriministrer helga peder som kmmer st\u00e5 it \u00e5 s\u00e5 igjen i norsk historie som en av de som viriklig gjorder store framskrift i forholt ti internasjonal registrering a s\u00e5kalt uufiske og e jobber tunkt internasjonaltmed det"], ["viss vi g\u00e5r tilbake igjen til det som var omstridt i nittennittito om innhaldet i e\u00f8s[UNK]avtalen s\u00e5 er det jo slik at i e\u00f8s[UNK]tilhengjarane har tatt feil p\u00e5 alle punkt og avtalen har hatt den verknaden som e\u00f8s[UNK]motstandarane sa", "det ve g\u00e5r tilbake ig en tires s\u00e5 omstrit i nitt nitti to om inhalde i \u00f8savtalen s\u00e5 e r det jo slik at de ei\u00f8es tilhengarene har tatt feil p\u00e5 alle punkt ogog avtalen hatt den verknaden som i \u00f8es motstandardene sa"], ["det er merkme verdig n\u00e5r en seier at en vil men beskriver alle de problem som er i dag knytta til riktig skattlegging som er til kontroll eee knytta til utenlandske arbeidstakere og s\u00e5 etablerer en ei ordning som er valgfri for den enkelte arbeidstaker", "det emerkm\u00e6 v\u00e6rdne see at en vil n\u00e5en beskrive all de problem som ei i dag knyttar til riktig skattel\u00f8ging som et til kontroll knyttartil utennaska arbeidstake og s\u00e5g etablere ene i ordning som er valgfrif en enkelte arbeidstaker"], ["jeg eller xxx milj\u00f8partiet de gr\u00f8nne f\u00e5r ikke stemt fordi vi ikke faller inn under utbytteordningen men vi er alts\u00e5 en del av det eee enstemmige flertallet som st\u00e5r bak denne eee innstillingen og den forrige innstillingen", "ja ve milj\u00f8parte mil\u00f8parti igr\u00f8nne f\u00e5r ike stemt fordi vi ikke faller inn under utbyteordningen men vi er alts\u00e5 en del av de ensemige flertallet som st\u00e5r bak denne innstillingen oen f\u00e5r instiring"], ["jeg tror politikken er et viktig eee kan bidra med noe viktig nemlig i selvstendiggj\u00f8ringa av kvinner eee det med \u00e5 eee skape forst\u00e5else for at deres stemme er viktig at dem skal bli h\u00f8rt at i norge har du en rett til \u00e5 bli h\u00f8rt", "eg trur politikken er et viktig kan bidra med n\u00e5 viktig nemlig i selvstendigj\u00f8ringa av kvinner de med \u00e5 skape forst\u00e5else for at de med sstemme er viktig at dem skal bli h\u00f8rt at i norge har ven retti\u00e5g bli h\u00f8rt"], ["president jeg mener det er veldig bra at flertallet her sl\u00e5r fast at klimaendringene vil kunne p\u00e5virke verdiene av finansforetakenes investeringer og klimarisikoutvalget skal fram til desember totusenogatten vurdere betydningen av klimarisiko for norsk \u00f8konomi", "president jeg mener de veldig bra at flertallet her sl\u00e5 fast at klimaendringan vil kunne p\u00e5virke verdian av finansforetakens investeringer og klimarisiko utvalget skal a fram til desember totusenatten vurdere betydningen av klimarisiko for norsk \u00f8konomi"], ["eee men det vi egentlig sp\u00f8r om her og og det som jeg syns g\u00e5r igjen i riksrevisjonens rapport er v vil en ogs\u00e5 \u00f8ke den relative andelen av oppmerksomhet i form av kontroll og i form av eee forskning til det omr\u00e5det som det n\u00e5 er pekt p\u00e5 har en for liten andel av det", "men vevge til sp\u00f8rom her o og det som \u00e5susg\u00e5r igjen riksevisjonsrapport\u00e6r vil den alts\u00e5 \u00f8ke den relative andelen av oppm\u00e6rksomhet yvform av kontroll og i form av forskning til det omr\u00e5de som e m\u00e5 ar pep\u00e5 har en for liten andel av det"], ["det betyr at \u00f8velser m\u00e5 gjennomf\u00f8res regelmessig b\u00e5de for \u00e5 avdekke utfordringer ved den enkelte tunnel og for \u00e5 sikre at den enkelte n\u00f8detat er ordentlig kjent med forholdene i de tunellene de har ansvaret for og det utstyret de skal bruke der", "det betyr at \u00f8velser m\u00e5 gjennomf\u00f8res regelmessig b\u00e5de for \u00e5 avvikke utfordringe v\u00e6renenkeltunell og for \u00e5 sikre at en enkelte n\u00f8detat er ordentlig kjent med forholdene i de tunelne d ar ansvare for og der utstyre de skalbrukel\u00e6r"], ["president qqq jeg vil ber\u00f8mme statsr\u00e5den for at han har tatt skikkelig tak i problemstillingene vedr\u00f8rende manglende vedlikehold p\u00e5 jernbanen og at regjeringen fra tjuefemten har f\u00e5tt stortinget med p\u00e5 \u00e5 bevilge nok midler til \u00e5 redusere vedlikeholdsetterslepet", "president jeg vil bra med statsr\u00e5den for at ha har tatt skikkelig tak i problemstillingene bedrodende mangglunder vid likeh\u00e5ld p\u00e5 gj\u00e6rnban og at reg\u00e6ringen fra tjuefemta fa stortingt med p\u00e5 \u00e5 bvilge nok midler til \u00e5 redusere vilikeholdsettersleper"], ["dette mener vi fremdeles er eee hensyn som er viktig \u00e5 ha med seg i debatten og vi mener at det er ingenting i dag eee som er nytt som eee viser til at situasjonen her har eee har eee endret seg", "dette mener vi framdigeles er e hensyn som er viktig \u00e5 ha med seg i debatten og vi mener at det ingen ting i d\u00e5g er s\u00e5 minytt som viser til at situasjonn her har har endret seg"], ["men bestillinger fra flertallet p\u00e5 eller fra et samla storting si side ifra en samla komite er at den ekstra arbeidsgiveravgifta skal fjernes og det er utrolig viktig at det ikke blir skapt uklarhet rundt det slik at bransjen veit hva en har \u00e5 forholde seg til", "men bestillinge fr\u00e5 fl\u00e6rtaler p\u00e5 eller foret samla storting s\u00e5 i sie ifor en smlag komite ir at en ekstra arbeidsgiveravgiftar skall fjenast og det utrulig viktig at ikke bli skapte uklarhetrundte slik at bransjen veit kan h\u00e5r og forholde seg til"], ["poenget er jo at vi \u00f8nsker en handelsavtale som er klart definert og der endringer skal avtales og forhandles mellom partene og ikke v\u00e6re slik som i dag under e\u00f8s[UNK]avtalen at den ene parten som bestemmer reglene og den andre part som m\u00e5 eee m\u00e5 godta dem", "men p\u00e5enger jo at vi \u00f8nsker en handelsavtale som er klart definert og der endringa skal avtalesog forhandlas m\u00f8llapartane og ike v\u00e6r slik som i dag gunnar i eusavtalen at en egne part som bestemmer reglane og den andre part som m\u00e5 m\u00e5 godta degi"], ["den sjokkarta \u00f8kninga som var i sukker[UNK] og sjokoladevareavgifta og avgift p\u00e5 ikke[UNK]alkoholholdige drikkevarer i budsjettet i h\u00f8st som kom i en sein nattetime uten utredning uten at bransjen var informert", "der en sjokkart og \u00f8kningar som var i sukkar og sjokolade varavgifte og avgift p\u00e5 vitalkol\u00e5ldedrekvare i budsjettet i haust som komm i en segnn at etimeuten utredning uten at et bransjen var informert"], ["eee takk president jeg hadde egentlig ikke tenkt til \u00e5 ta ordet noe mer i den her debatten men eee men eee f\u00f8lte at det xxx meg kalt n\u00e5 n\u00e5r det ser ut til at det er en litt s\u00e5nn hva man skal si kreativ historieskrivning p\u00e5 gang ifra eee representanter fra regjeringas partier fordi", "takk president eg hadde iggen klikke tankt \u00e5 ta \u00e5rden og med i den h\u00e6r dibatten men men f\u00f8lktata vma kall andud \u00e5r de se util at er liksom kan vi ska si kreativ historieskrivning p\u00e5 gang i fra representanter fra regjeringaspartierflyr"], ["i den nye modellen m\u00e5 avdelingsoversykepleier og avdelingsoverlege drive et utstrakt samarbeide for \u00e5 ivareta pasienters interesser og behov[UNK]", "i den nye modellen m\u00e5 avdelingsoversykepleier og avdelingsoverlege drive et utstrakt samarbeide for \u00e5 ivareta pasienters interesser og behov[UNK]"], ["for det f\u00f8rste er den stinn av vel tilrettelagt kunnskap[UNK] uhyre poengtert[UNK] klart og oversiktlig fremf\u00f8rt[UNK]", "for det f\u00f8rste er mstin avel til rettelagt kunnskap[UNK] uhyre poengthet[UNK] klart og oversiktig fremf\u00f8rt[UNK]"], ["h\u00f8yres h\u00f8 \u00f8nske var prim\u00e6rt ikke \u00e5 \u00f8ke avgiftene men som en del av budsjettforliket fant man en litt bedre l\u00f8sning for \u00e5 finansiere viktige satsinger for mere kunnskap i skolen tryggere veier et styrka forsvar og fjerning av maskinskatten", "h\u00f8yre \u00f8nske var prem\u00e6rt ikkje \u00f8keavgiftenemen som en del av budsjett forlike fant man en litt berre l\u00f8sning for \u00e5 finansiere viktige sattinger for mere kunnskap i skolen tryggroveier et styrk av forsvar og fjerning av maskinskaten"], ["n\u00e5r le leger og forskere advarer mot et \u00f8kende antall elever med stressrelaterte sykto sykdommer p\u00e5 grunn av prestasjonskravene eee og all testinga i skolen", "n\u00e5 la\u00e6ga \u00e5 forskere advara mot et \u00f8kanes antall er leva med stressreloterte siktsykdomer p\u00e5grunn av presasjonskraven e og all testingar i skolen"], ["jeg syns det er heilt tydelig at regjeringen her f\u00f8ler seg pressa med v\u00e5rt forslag som er fremma men det er synd at n\u00e5r en erkjenner at en trenger \u00e5 gj\u00f8re endringer i kvalitetsvurderingssystemet s\u00e5 lander en ned p\u00e5 feil side og avviser det viktige forslaget om en heilhetlig diskusjon og gjennomgang", "jeg sus et r helt thyrlig at regjeringen her f\u00f8ler seg preser me v\u00e5rt forslag som e fremar men det er s\u00f8nmer at n\u00e5r hen erskjenne at han trenger \u00e5 gjr endringer i kvalitetsvedringsystemet s\u00e5 lander mer p\u00e5 feilside \u00e5o avise et viktige forslage og min h\u00f8llet ti diskusjon \u00e5 gjennomganger"], ["og eee jeg vil starte med \u00e5 gi min fulle tilslutning til eee keshvaris framstilling eee av den enstemmige innstillinga ifra komiteen og si at jeg er veldig glad for at riksrevisjonen har g\u00e5tt s\u00e5 grundig inn i dehenne saken", "\u00e5 arvi starte med \u00e5ifulletierslting til tsvareframstilling av en enstemmig innstillingar i fra komiteen \u00e5 si at e er velig glar for atriksrevisjonen har g\u00e5tt s\u00e5 grundig inn i den heme saken"], ["president i meldingen la regjeringen opp til \u00e5 vurdere investeringer i unotert infrastruktur for fornybar energi innen milj\u00f8mandatene med s\u00e6 med med krav til \u00e5penhet avkastning og risiko som for \u00f8 \u00f8vrige investeringer i spu", "presidet i meldingen lar regjringen opp til \u00e5 vurdere investeringer i unotert infrastruktur for fornybar energi innenen milj\u00f8mandatene med s\u00e6me me krav til \u00e5pnhet avkosstning og risiko som for \u00f8\u00f8vrge investeringer i spu"], ["inneb\u00e6rer det at man i brevet til komiteen eee har eee lagt seg p\u00e5 en linje hvor man egentlig advarer mot det vedtaket vi n\u00e5 skal gj\u00f8re eller kan vi forvente at det ligger en god utredning i statsbudsjettet", "innev\u00e6rer det at man i reve til komitee har lagt sa p\u00e5 en line hvor man megentlig avarer mot det vedtake vi n\u00e5 skal gj\u00f8re eller kan vi forvemte atdet ligger en god utredning i statsbudsjette"], ["s\u00e5 det er da \u00e5 \u00e5pne opp for investeringer i fornybar infrastruktur innenfor milj\u00f8mandatet via et f\u00f8rste musesteg for \u00e5 la pensjonsfondet v\u00e5rt f\u00e5 investere i fremtidens energisystem ogs\u00e5", "s\u00e5 det er a \u00e5 \u00e5pne opp for investeringar i fornybar infrastruktur innenfor milj\u00f8mandate vi et f\u00f8rste musstegforhola pensjonsfonne\u00e5rt for investere i fremtidens enrgisystem ogs\u00e5"], ["derfor meiner fremskrittspartiet at me skal vera eee forsiktig med \u00e5 legga inn for mange eee ulike eee b\u00e5de utanrikspolitiske og ideologiske og andre \u00f8nske inn i i denne debatten eee fordi at det er ting som kan eee l\u00f8ysast i andre saker", "derfor meinr av fremskittspartiat mi skal v\u00e6ra forsiktig me leiga inn for mange ulike b\u00e5de utenr\u00f8gspolitiske og ideologiske og andre \u00f8nske inn i denne debatten fordei at daer ting som kan l\u00f8sa i andre saker"], ["r\u00f8dt foresl\u00e5r derfor at stortinget ber regjeringen i forbindelse med forslaget til statsbudsjett for totusenognitten fastsette skattesatsen for kildeskatt for utenlandske arbeidere p\u00e5 midlertito midlertidig opphold til tjueseks prosent", "r\u00f8dt foresl\u00e5r derfor at stortinget ber regjeringen i forbindese med forslaget ti statsbusjett for totusnognitten fatsette kattesatsen for sileskatt for utenanske arbeidere p\u00e5 midmilrti ppholl til tjueseksprosent"], ["i tillegg s\u00e5 kommer jo det elementet med at hvis man g\u00e5r en turnus som tilsier at du kanskje har et morgenskift eee og veksler til skift inn forbi kort tid kveld morgen og kanskje p\u00e5 igjen neste morgen og s\u00e5 videre at hviletida ikke er lang nok s\u00e5 er det en stor belastning", "i tillegg s\u00e5 kommer jo detemente med at hvis man g\u00e5r en t\u00f8rno som tilse t kansje har et moranskift og vekslanseskift innfor bkorti kvel morran o kansje p\u00e5ien neste moran og s\u00e5videreat pintier ike lang no s\u00e5 er det en storbelasing"], ["og for oss i vestfold og jeg vil tru andre fylker langs eee skagerrak s\u00e5 har det lenge v\u00e6rt eee en f\u00f8lelse av at forvaltninga av de som vi oppfatter som veldig viktig bestander eee har v\u00e6rt stemoderlig behandla av fiskeriforvaltninga", "og for oss i vestfold jeg vi tru andre fylkelandsskagerks\u00e5 har de lengere v\u00e6rt en f\u00f8lelse av at forvaltninga av de som viopfater som veldig viktig bestandadr ehar v\u00e6rt stemodelig behandler av fiskerieeeforvaltningan"], ["jeg viste til i forrige replikkordskifte at elevene er mer p\u00e5 skolen de l\u00e6rer mer og flere fullf\u00f8rer videreg\u00e5ende skole og vi ser n\u00e5 og det tror jeg kanskje er f\u00f8rste gang at vi klarer \u00e5 l\u00f8fte en del av de elevene som har blitt hengende etter", "jeg viser til den forrige replikkorsifter aat eleven er mer p\u00e5 skolen de l\u00e6rer mer og flere fullf\u00f8rer videreg\u00e5endo skole og vi ser n\u00e5 og det trur jeg kansje je f\u00f8rste gan at vi klarer l\u00f8fte endel av de elevene som \u00e5 har blitt tengende etter"]]}
|
wandb/run-20220730_174606-j2u4n7h4/files/output.log
CHANGED
@@ -5290,3 +5290,268 @@ tcmalloc: large alloc 3850223616 bytes == 0x9413e6000 @ 0x7f975ff0f680 0x7f975f
|
|
5290 |
Model weights saved in /data/wav2vec2-1b-npsc-nst/flax_model.msgpack
|
5291 |
tokenizer config file saved in ./tokenizer_config.json
|
5292 |
Special tokens file saved in ./special_tokens_map.json
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5290 |
Model weights saved in /data/wav2vec2-1b-npsc-nst/flax_model.msgpack
|
5291 |
tokenizer config file saved in ./tokenizer_config.json
|
5292 |
Special tokens file saved in ./special_tokens_map.json
|
5293 |
+
added tokens file saved in ./added_tokens.json
|
5294 |
+
|
5295 |
+
|
5296 |
+
|
5297 |
+
|
5298 |
+
|
5299 |
+
|
5300 |
+
|
5301 |
+
|
5302 |
+
|
5303 |
+
|
5304 |
+
|
5305 |
+
|
5306 |
+
|
5307 |
+
|
5308 |
+
|
5309 |
+
|
5310 |
+
|
5311 |
+
|
5312 |
+
|
5313 |
+
|
5314 |
+
|
5315 |
+
|
5316 |
+
|
5317 |
+
|
5318 |
+
|
5319 |
+
|
5320 |
+
|
5321 |
+
|
5322 |
+
|
5323 |
+
|
5324 |
+
|
5325 |
+
|
5326 |
+
|
5327 |
+
|
5328 |
+
|
5329 |
+
|
5330 |
+
|
5331 |
+
|
5332 |
+
|
5333 |
+
|
5334 |
+
|
5335 |
+
|
5336 |
+
|
5337 |
+
|
5338 |
+
|
5339 |
+
|
5340 |
+
|
5341 |
+
|
5342 |
+
|
5343 |
+
|
5344 |
+
|
5345 |
+
|
5346 |
+
|
5347 |
+
|
5348 |
+
|
5349 |
+
|
5350 |
+
|
5351 |
+
|
5352 |
+
|
5353 |
+
|
5354 |
+
|
5355 |
+
|
5356 |
+
|
5357 |
+
|
5358 |
+
|
5359 |
+
|
5360 |
+
|
5361 |
+
|
5362 |
+
|
5363 |
+
|
5364 |
+
|
5365 |
+
|
5366 |
+
|
5367 |
+
|
5368 |
+
|
5369 |
+
|
5370 |
+
|
5371 |
+
|
5372 |
+
|
5373 |
+
|
5374 |
+
|
5375 |
+
|
5376 |
+
|
5377 |
+
|
5378 |
+
|
5379 |
+
|
5380 |
+
|
5381 |
+
|
5382 |
+
|
5383 |
+
|
5384 |
+
|
5385 |
+
|
5386 |
+
|
5387 |
+
|
5388 |
+
return jax.tree_map(lambda x: x.astype(jnp.float32) if x.dtype == jnp.bfloat16 else x, t)█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ | 3099/3153 [5:02:47<01:12, 1.35s/it]
|
5389 |
+
Step... (3000/126120 | Eval Loss: 0.4165652394294739 | Eval wer: 0.3462994456013605 | Eval cer: 0.0990741924291949 |): 0%| | 0/40 [5:02:57<?, ?it/s]
|
5390 |
+
Training...: 98%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ | 3100/3153 [5:02:49<01:23, 1.58s/it]
|
5391 |
+
|
5392 |
+
|
5393 |
+
|
5394 |
+
|
5395 |
+
|
5396 |
+
|
5397 |
+
|
5398 |
+
|
5399 |
+
|
5400 |
+
|
5401 |
+
|
5402 |
+
|
5403 |
+
|
5404 |
+
|
5405 |
+
|
5406 |
+
|
5407 |
+
|
5408 |
+
|
5409 |
+
|
5410 |
+
|
5411 |
+
|
5412 |
+
|
5413 |
+
|
5414 |
+
|
5415 |
+
|
5416 |
+
|
5417 |
+
|
5418 |
+
|
5419 |
+
|
5420 |
+
|
5421 |
+
|
5422 |
+
|
5423 |
+
|
5424 |
+
|
5425 |
+
|
5426 |
+
|
5427 |
+
|
5428 |
+
|
5429 |
+
|
5430 |
+
|
5431 |
+
|
5432 |
+
|
5433 |
+
|
5434 |
+
|
5435 |
+
|
5436 |
+
|
5437 |
+
|
5438 |
+
|
5439 |
+
return jax.tree_map(lambda x: x.astype(jnp.bfloat16) if x.dtype == jnp.float32 else x, t)████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊| 3150/3153 [5:05:44<00:03, 1.22s/it]
|
5440 |
+
run_flax_speech_recognition_ctc.py:397: FutureWarning: jax.tree_map is deprecated, and will be removed in a future release. Use jax.tree_util.tree_map instead.
|
5441 |
+
grads = jax.tree_map(lambda t: (t / g_norm) * casted_max_grad_norm, grads)
|
5442 |
+
run_flax_speech_recognition_ctc.py:1391: FutureWarning: jax.tree_map is deprecated, and will be removed in a future release. Use jax.tree_util.tree_map instead.
|
5443 |
+
layer_grad_norm = jax.tree_map(jnp.linalg.norm, grad)
|
5444 |
+
run_flax_speech_recognition_ctc.py:1398: FutureWarning: jax.tree_map is deprecated, and will be removed in a future release. Use jax.tree_util.tree_map instead.
|
5445 |
+
layer_param_norm = jax.tree_map(jnp.linalg.norm, new_state.params)
|
5446 |
+
|
5447 |
+
|
5448 |
+
Step... (3000/126120 | Eval Loss: 0.4165652394294739 | Eval wer: 0.3462994456013605 | Eval cer: 0.0990741924291949 |): 2%|██▉ | 1/40 [5:10:52<202:04:15, 18652.71s/it]
|
5449 |
+
|
5450 |
+
|
5451 |
+
|
5452 |
+
|
5453 |
+
|
5454 |
+
|
5455 |
+
|
5456 |
+
|
5457 |
+
|
5458 |
+
|
5459 |
+
|
5460 |
+
|
5461 |
+
|
5462 |
+
|
5463 |
+
|
5464 |
+
|
5465 |
+
|
5466 |
+
|
5467 |
+
|
5468 |
+
|
5469 |
+
|
5470 |
+
|
5471 |
+
|
5472 |
+
|
5473 |
+
|
5474 |
+
|
5475 |
+
|
5476 |
+
|
5477 |
+
|
5478 |
+
|
5479 |
+
|
5480 |
+
|
5481 |
+
|
5482 |
+
|
5483 |
+
|
5484 |
+
|
5485 |
+
|
5486 |
+
|
5487 |
+
|
5488 |
+
|
5489 |
+
|
5490 |
+
|
5491 |
+
|
5492 |
+
|
5493 |
+
|
5494 |
+
Training...: 1%|███▎ | 46/3153 [02:57<1:52:18, 2.17s/it]
|
5495 |
+
|
5496 |
+
|
5497 |
+
|
5498 |
+
|
5499 |
+
|
5500 |
+
|
5501 |
+
|
5502 |
+
|
5503 |
+
|
5504 |
+
|
5505 |
+
|
5506 |
+
|
5507 |
+
|
5508 |
+
|
5509 |
+
|
5510 |
+
|
5511 |
+
|
5512 |
+
|
5513 |
+
|
5514 |
+
|
5515 |
+
|
5516 |
+
|
5517 |
+
|
5518 |
+
|
5519 |
+
|
5520 |
+
|
5521 |
+
|
5522 |
+
|
5523 |
+
|
5524 |
+
|
5525 |
+
|
5526 |
+
|
5527 |
+
|
5528 |
+
|
5529 |
+
|
5530 |
+
|
5531 |
+
|
5532 |
+
|
5533 |
+
|
5534 |
+
|
5535 |
+
|
5536 |
+
|
5537 |
+
|
5538 |
+
|
5539 |
+
|
5540 |
+
|
5541 |
+
|
5542 |
+
|
5543 |
+
|
5544 |
+
2022-07-30 23:15:12.979850: E external/org_tensorflow/tensorflow/compiler/xla/pjrt/pjrt_stream_executor_client.cc:2130] Execution of replica 4 failed: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.
|
5545 |
+
2022-07-30 23:15:12.983255: E external/org_tensorflow/tensorflow/compiler/xla/pjrt/pjrt_stream_executor_client.cc:2130] Execution of replica 7 failed: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.
|
5546 |
+
2022-07-30 23:15:12.983306: E external/org_tensorflow/tensorflow/compiler/xla/pjrt/pjrt_stream_executor_client.cc:2130] Execution of replica 1 failed: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.
|
5547 |
+
2022-07-30 23:15:12.983553: E external/org_tensorflow/tensorflow/compiler/xla/pjrt/pjrt_stream_executor_client.cc:2130] Execution of replica 6 failed: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.
|
5548 |
+
2022-07-30 23:15:12.983746: E external/org_tensorflow/tensorflow/compiler/xla/pjrt/pjrt_stream_executor_client.cc:2130] Execution of replica 2 failed: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.
|
5549 |
+
2022-07-30 23:15:12.985075: E external/org_tensorflow/tensorflow/compiler/xla/pjrt/pjrt_stream_executor_client.cc:2130] Execution of replica 3 failed: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.
|
5550 |
+
Training...: 3%|███████▏ | 100/3153 [06:18<3:12:49, 3.79s/it]
|
5551 |
+
Step... (3000/126120 | Eval Loss: 0.4165652394294739 | Eval wer: 0.3462994456013605 | Eval cer: 0.0990741924291949 |): 2%|██▉ | 1/40 [5:17:15<206:13:01, 19035.42s/it]
|
5552 |
+
Traceback (most recent call last):
|
5553 |
+
File "run_flax_speech_recognition_ctc.py", line 1604, in <module>
|
5554 |
+
main()
|
5555 |
+
File "run_flax_speech_recognition_ctc.py", line 1516, in main
|
5556 |
+
state, train_metric = p_train_step(state, batch)
|
5557 |
+
ValueError: RESOURCE_EXHAUSTED: Attempting to reserve 4.94G at the bottom of memory. That was not possible. There are 8.21G free, 0B reserved, and 3.64G reservable. If fragmentation is eliminated, the maximum reservable bytes would be 8.21G, so compaction will enable this reservation. The nearest obstacle is at 3.64G from the bottom with size 19.53M.: while running replica 1 and partition 0 of a replicated computation (other replicas may have failed as well).
|
wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220730_174606-j2u4n7h4/logs/debug-internal.log
CHANGED
@@ -7492,3 +7492,595 @@
|
|
7492 |
2022-07-30 22:54:20,900 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7493 |
2022-07-30 22:54:20,901 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7494 |
2022-07-30 22:54:23,251 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7492 |
2022-07-30 22:54:20,900 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7493 |
2022-07-30 22:54:20,901 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7494 |
2022-07-30 22:54:23,251 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7495 |
+
2022-07-30 22:54:36,214 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7496 |
+
2022-07-30 22:54:36,214 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7497 |
+
2022-07-30 22:54:45,113 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7498 |
+
2022-07-30 22:54:51,531 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7499 |
+
2022-07-30 22:54:51,532 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7500 |
+
2022-07-30 22:54:53,330 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7501 |
+
2022-07-30 22:54:59,120 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7502 |
+
2022-07-30 22:55:07,063 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7503 |
+
2022-07-30 22:55:07,063 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7504 |
+
2022-07-30 22:55:07,124 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7505 |
+
2022-07-30 22:55:17,129 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7506 |
+
2022-07-30 22:55:22,365 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7507 |
+
2022-07-30 22:55:22,366 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7508 |
+
2022-07-30 22:55:23,400 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7509 |
+
2022-07-30 22:55:24,133 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7510 |
+
2022-07-30 22:55:32,137 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7511 |
+
2022-07-30 22:55:36,139 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7512 |
+
2022-07-30 22:55:37,680 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7513 |
+
2022-07-30 22:55:37,680 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7514 |
+
2022-07-30 22:55:42,142 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7515 |
+
2022-07-30 22:55:48,145 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7516 |
+
2022-07-30 22:55:52,860 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7517 |
+
2022-07-30 22:55:52,861 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7518 |
+
2022-07-30 22:55:53,473 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7519 |
+
2022-07-30 22:55:56,149 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7520 |
+
2022-07-30 22:56:00,151 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7521 |
+
2022-07-30 22:56:05,154 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7522 |
+
2022-07-30 22:56:08,017 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7523 |
+
2022-07-30 22:56:08,017 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7524 |
+
2022-07-30 22:56:11,157 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7525 |
+
2022-07-30 22:56:15,159 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7526 |
+
2022-07-30 22:56:19,161 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7527 |
+
2022-07-30 22:56:23,163 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7528 |
+
2022-07-30 22:56:23,315 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7529 |
+
2022-07-30 22:56:23,316 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7530 |
+
2022-07-30 22:56:23,552 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7531 |
+
2022-07-30 22:56:30,167 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7532 |
+
2022-07-30 22:56:34,169 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7533 |
+
2022-07-30 22:56:38,171 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7534 |
+
2022-07-30 22:56:38,637 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7535 |
+
2022-07-30 22:56:38,638 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7536 |
+
2022-07-30 22:56:44,174 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7537 |
+
2022-07-30 22:56:48,176 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7538 |
+
2022-07-30 22:56:52,179 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7539 |
+
2022-07-30 22:56:53,629 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7540 |
+
2022-07-30 22:56:53,847 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7541 |
+
2022-07-30 22:56:53,847 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7542 |
+
2022-07-30 22:56:54,180 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7543 |
+
2022-07-30 22:56:59,183 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7544 |
+
2022-07-30 22:57:03,185 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7545 |
+
2022-07-30 22:57:05,186 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7546 |
+
2022-07-30 22:57:09,067 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7547 |
+
2022-07-30 22:57:09,067 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7548 |
+
2022-07-30 22:57:09,188 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7549 |
+
2022-07-30 22:57:11,189 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7550 |
+
2022-07-30 22:57:15,191 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7551 |
+
2022-07-30 22:57:17,192 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7552 |
+
2022-07-30 22:57:21,194 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7553 |
+
2022-07-30 22:57:23,195 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7554 |
+
2022-07-30 22:57:23,706 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7555 |
+
2022-07-30 22:57:24,278 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7556 |
+
2022-07-30 22:57:24,278 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7557 |
+
2022-07-30 22:57:25,197 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7558 |
+
2022-07-30 22:57:31,199 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7559 |
+
2022-07-30 22:57:33,200 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7560 |
+
2022-07-30 22:57:35,201 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7561 |
+
2022-07-30 22:57:37,203 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7562 |
+
2022-07-30 22:57:39,204 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7563 |
+
2022-07-30 22:57:39,499 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7564 |
+
2022-07-30 22:57:39,499 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7565 |
+
2022-07-30 22:57:41,205 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7566 |
+
2022-07-30 22:57:43,206 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7567 |
+
2022-07-30 22:57:45,207 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7568 |
+
2022-07-30 22:57:48,208 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7569 |
+
2022-07-30 22:57:50,209 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7570 |
+
2022-07-30 22:57:52,210 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7571 |
+
2022-07-30 22:57:53,781 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7572 |
+
2022-07-30 22:57:54,211 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7573 |
+
2022-07-30 22:57:54,666 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7574 |
+
2022-07-30 22:57:54,666 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7575 |
+
2022-07-30 22:57:56,213 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7576 |
+
2022-07-30 22:57:58,214 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7577 |
+
2022-07-30 22:58:00,215 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7578 |
+
2022-07-30 22:58:02,216 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7579 |
+
2022-07-30 22:58:09,912 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7580 |
+
2022-07-30 22:58:09,912 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7581 |
+
2022-07-30 22:58:12,221 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7582 |
+
2022-07-30 22:58:21,225 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7583 |
+
2022-07-30 22:58:23,856 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7584 |
+
2022-07-30 22:58:25,274 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7585 |
+
2022-07-30 22:58:25,274 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7586 |
+
2022-07-30 22:58:27,228 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7587 |
+
2022-07-30 22:58:33,231 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7588 |
+
2022-07-30 22:58:39,234 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7589 |
+
2022-07-30 22:58:40,589 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7590 |
+
2022-07-30 22:58:40,590 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7591 |
+
2022-07-30 22:58:45,237 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7592 |
+
2022-07-30 22:58:52,240 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7593 |
+
2022-07-30 22:58:53,933 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7594 |
+
2022-07-30 22:58:55,866 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7595 |
+
2022-07-30 22:58:55,867 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7596 |
+
2022-07-30 22:58:56,242 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7597 |
+
2022-07-30 22:59:02,245 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7598 |
+
2022-07-30 22:59:06,247 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7599 |
+
2022-07-30 22:59:10,249 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7600 |
+
2022-07-30 22:59:11,177 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7601 |
+
2022-07-30 22:59:11,177 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7602 |
+
2022-07-30 22:59:14,251 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7603 |
+
2022-07-30 22:59:20,254 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7604 |
+
2022-07-30 22:59:24,010 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7605 |
+
2022-07-30 22:59:24,256 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7606 |
+
2022-07-30 22:59:26,434 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7607 |
+
2022-07-30 22:59:26,434 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7608 |
+
2022-07-30 22:59:28,258 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7609 |
+
2022-07-30 22:59:33,261 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7610 |
+
2022-07-30 22:59:37,263 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7611 |
+
2022-07-30 22:59:41,265 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7612 |
+
2022-07-30 22:59:41,656 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7613 |
+
2022-07-30 22:59:41,656 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7614 |
+
2022-07-30 22:59:45,267 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7615 |
+
2022-07-30 22:59:47,268 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7616 |
+
2022-07-30 22:59:51,270 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7617 |
+
2022-07-30 22:59:54,088 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7618 |
+
2022-07-30 22:59:55,272 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7619 |
+
2022-07-30 22:59:56,931 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7620 |
+
2022-07-30 22:59:56,931 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7621 |
+
2022-07-30 22:59:59,274 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7622 |
+
2022-07-30 23:00:01,275 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7623 |
+
2022-07-30 23:00:05,277 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7624 |
+
2022-07-30 23:00:07,278 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7625 |
+
2022-07-30 23:00:11,281 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7626 |
+
2022-07-30 23:00:12,195 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7627 |
+
2022-07-30 23:00:12,195 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7628 |
+
2022-07-30 23:00:13,282 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7629 |
+
2022-07-30 23:00:16,283 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7630 |
+
2022-07-30 23:00:20,285 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7631 |
+
2022-07-30 23:00:22,286 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7632 |
+
2022-07-30 23:00:24,166 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7633 |
+
2022-07-30 23:00:26,288 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7634 |
+
2022-07-30 23:00:27,432 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7635 |
+
2022-07-30 23:00:27,432 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7636 |
+
2022-07-30 23:00:28,290 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7637 |
+
2022-07-30 23:00:30,291 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7638 |
+
2022-07-30 23:00:32,292 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7639 |
+
2022-07-30 23:00:34,293 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7640 |
+
2022-07-30 23:00:36,294 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7641 |
+
2022-07-30 23:00:38,295 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7642 |
+
2022-07-30 23:00:40,296 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7643 |
+
2022-07-30 23:00:42,297 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7644 |
+
2022-07-30 23:00:42,636 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7645 |
+
2022-07-30 23:00:42,637 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7646 |
+
2022-07-30 23:00:44,298 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7647 |
+
2022-07-30 23:00:46,299 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7648 |
+
2022-07-30 23:00:48,300 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7649 |
+
2022-07-30 23:00:50,302 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7650 |
+
2022-07-30 23:00:52,303 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7651 |
+
2022-07-30 23:00:54,243 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7652 |
+
2022-07-30 23:00:54,304 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7653 |
+
2022-07-30 23:00:54,472 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: log_artifact
|
7654 |
+
2022-07-30 23:00:54,473 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: log_artifact
|
7655 |
+
2022-07-30 23:00:55,304 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json
|
7656 |
+
2022-07-30 23:00:55,305 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval
|
7657 |
+
2022-07-30 23:00:55,577 INFO Thread-21 :1494437 [upload_job.py:push():95] Uploaded file /home/javierr/.cache/wandb/artifacts/obj/md5/f4/e476c2358c11b27374055cdb2dabb4
|
7658 |
+
2022-07-30 23:00:56,305 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7659 |
+
2022-07-30 23:00:56,923 INFO SenderThread:1494437 [sender.py:send_request_log_artifact():968] logged artifact run-j2u4n7h4-evalstep_3k - {'id': 'QXJ0aWZhY3Q6MTY1MzExNzk5', 'digest': '6e81d706760bd2586ca91fa1c4f42dc1', 'state': 'PENDING', 'aliases': [], 'artifactSequence': {'id': 'QXJ0aWZhY3RDb2xsZWN0aW9uOjI1MDEzMTQ4', 'latestArtifact': None}, 'version': 'latest'}
|
7660 |
+
2022-07-30 23:00:56,923 DEBUG SenderThread:1494437 [sender.py:send():234] send: files
|
7661 |
+
2022-07-30 23:00:56,923 INFO SenderThread:1494437 [sender.py:_save_file():939] saving file media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json with policy now
|
7662 |
+
2022-07-30 23:00:56,923 DEBUG SenderThread:1494437 [sender.py:send():234] send: history
|
7663 |
+
2022-07-30 23:00:56,927 DEBUG SenderThread:1494437 [sender.py:send():234] send: summary
|
7664 |
+
2022-07-30 23:00:56,930 INFO SenderThread:1494437 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
7665 |
+
2022-07-30 23:00:57,305 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7666 |
+
2022-07-30 23:00:57,306 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json
|
7667 |
+
2022-07-30 23:00:57,412 INFO Thread-22 :1494437 [upload_job.py:push():137] Uploaded file /tmp/tmp29wrl920wandb/2wi7wirr-media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json
|
7668 |
+
2022-07-30 23:00:57,900 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7669 |
+
2022-07-30 23:00:57,900 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7670 |
+
2022-07-30 23:01:06,310 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7671 |
+
2022-07-30 23:01:13,248 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7672 |
+
2022-07-30 23:01:13,248 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7673 |
+
2022-07-30 23:01:15,314 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7674 |
+
2022-07-30 23:01:21,317 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7675 |
+
2022-07-30 23:01:24,320 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7676 |
+
2022-07-30 23:01:27,324 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7677 |
+
2022-07-30 23:01:28,648 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7678 |
+
2022-07-30 23:01:28,649 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7679 |
+
2022-07-30 23:01:33,327 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7680 |
+
2022-07-30 23:01:40,331 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7681 |
+
2022-07-30 23:01:43,954 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7682 |
+
2022-07-30 23:01:43,954 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7683 |
+
2022-07-30 23:01:46,334 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7684 |
+
2022-07-30 23:01:50,336 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7685 |
+
2022-07-30 23:01:54,338 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7686 |
+
2022-07-30 23:01:54,393 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7687 |
+
2022-07-30 23:01:59,307 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7688 |
+
2022-07-30 23:01:59,308 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7689 |
+
2022-07-30 23:02:00,341 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7690 |
+
2022-07-30 23:02:04,343 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7691 |
+
2022-07-30 23:02:10,346 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7692 |
+
2022-07-30 23:02:14,348 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7693 |
+
2022-07-30 23:02:14,586 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7694 |
+
2022-07-30 23:02:14,586 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7695 |
+
2022-07-30 23:02:18,350 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7696 |
+
2022-07-30 23:02:23,353 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7697 |
+
2022-07-30 23:02:24,465 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7698 |
+
2022-07-30 23:02:27,355 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7699 |
+
2022-07-30 23:02:29,884 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7700 |
+
2022-07-30 23:02:29,884 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7701 |
+
2022-07-30 23:02:31,357 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7702 |
+
2022-07-30 23:02:35,359 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7703 |
+
2022-07-30 23:02:39,361 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7704 |
+
2022-07-30 23:02:41,362 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7705 |
+
2022-07-30 23:02:45,176 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7706 |
+
2022-07-30 23:02:45,176 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7707 |
+
2022-07-30 23:02:45,364 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7708 |
+
2022-07-30 23:02:49,366 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7709 |
+
2022-07-30 23:02:53,368 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7710 |
+
2022-07-30 23:02:54,539 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7711 |
+
2022-07-30 23:02:55,369 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7712 |
+
2022-07-30 23:02:59,372 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7713 |
+
2022-07-30 23:03:00,393 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7714 |
+
2022-07-30 23:03:00,394 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7715 |
+
2022-07-30 23:03:01,373 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7716 |
+
2022-07-30 23:03:06,375 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7717 |
+
2022-07-30 23:03:08,376 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7718 |
+
2022-07-30 23:03:12,378 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7719 |
+
2022-07-30 23:03:14,379 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7720 |
+
2022-07-30 23:03:15,568 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7721 |
+
2022-07-30 23:03:15,569 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7722 |
+
2022-07-30 23:03:16,380 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7723 |
+
2022-07-30 23:03:20,383 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7724 |
+
2022-07-30 23:03:22,384 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7725 |
+
2022-07-30 23:03:24,385 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7726 |
+
2022-07-30 23:03:24,610 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7727 |
+
2022-07-30 23:03:26,386 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7728 |
+
2022-07-30 23:03:28,387 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7729 |
+
2022-07-30 23:03:30,388 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7730 |
+
2022-07-30 23:03:30,786 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7731 |
+
2022-07-30 23:03:30,787 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7732 |
+
2022-07-30 23:03:32,389 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7733 |
+
2022-07-30 23:03:34,391 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7734 |
+
2022-07-30 23:03:36,392 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7735 |
+
2022-07-30 23:03:38,393 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7736 |
+
2022-07-30 23:03:40,394 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7737 |
+
2022-07-30 23:03:42,395 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7738 |
+
2022-07-30 23:03:44,396 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7739 |
+
2022-07-30 23:03:45,997 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7740 |
+
2022-07-30 23:03:45,998 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7741 |
+
2022-07-30 23:03:46,397 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7742 |
+
2022-07-30 23:03:48,398 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7743 |
+
2022-07-30 23:03:51,400 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7744 |
+
2022-07-30 23:03:54,679 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7745 |
+
2022-07-30 23:03:58,404 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7746 |
+
2022-07-30 23:04:01,157 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7747 |
+
2022-07-30 23:04:01,157 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7748 |
+
2022-07-30 23:04:16,311 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7749 |
+
2022-07-30 23:04:16,311 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7750 |
+
2022-07-30 23:04:18,413 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7751 |
+
2022-07-30 23:04:24,752 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7752 |
+
2022-07-30 23:04:26,417 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7753 |
+
2022-07-30 23:04:28,418 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7754 |
+
2022-07-30 23:04:31,476 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7755 |
+
2022-07-30 23:04:31,477 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7756 |
+
2022-07-30 23:04:46,640 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7757 |
+
2022-07-30 23:04:46,641 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7758 |
+
2022-07-30 23:04:54,822 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7759 |
+
2022-07-30 23:05:01,790 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7760 |
+
2022-07-30 23:05:01,790 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7761 |
+
2022-07-30 23:05:16,923 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7762 |
+
2022-07-30 23:05:16,923 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7763 |
+
2022-07-30 23:05:24,895 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7764 |
+
2022-07-30 23:05:32,060 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7765 |
+
2022-07-30 23:05:32,060 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7766 |
+
2022-07-30 23:05:47,197 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7767 |
+
2022-07-30 23:05:47,198 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7768 |
+
2022-07-30 23:05:54,969 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7769 |
+
2022-07-30 23:06:02,369 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7770 |
+
2022-07-30 23:06:02,370 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7771 |
+
2022-07-30 23:06:17,528 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7772 |
+
2022-07-30 23:06:17,528 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7773 |
+
2022-07-30 23:06:25,046 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7774 |
+
2022-07-30 23:06:32,667 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7775 |
+
2022-07-30 23:06:32,667 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7776 |
+
2022-07-30 23:06:47,829 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7777 |
+
2022-07-30 23:06:47,830 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7778 |
+
2022-07-30 23:06:55,123 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7779 |
+
2022-07-30 23:07:02,971 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7780 |
+
2022-07-30 23:07:02,972 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7781 |
+
2022-07-30 23:07:18,157 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7782 |
+
2022-07-30 23:07:18,157 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7783 |
+
2022-07-30 23:07:25,198 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7784 |
+
2022-07-30 23:07:33,322 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7785 |
+
2022-07-30 23:07:33,323 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7786 |
+
2022-07-30 23:07:48,463 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7787 |
+
2022-07-30 23:07:48,463 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7788 |
+
2022-07-30 23:07:55,270 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7789 |
+
2022-07-30 23:08:03,599 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7790 |
+
2022-07-30 23:08:03,600 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7791 |
+
2022-07-30 23:08:18,735 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7792 |
+
2022-07-30 23:08:18,735 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7793 |
+
2022-07-30 23:08:25,375 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7794 |
+
2022-07-30 23:08:33,866 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7795 |
+
2022-07-30 23:08:33,866 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7796 |
+
2022-07-30 23:08:41,550 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7797 |
+
2022-07-30 23:08:49,000 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7798 |
+
2022-07-30 23:08:49,001 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7799 |
+
2022-07-30 23:08:49,554 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7800 |
+
2022-07-30 23:08:53,556 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7801 |
+
2022-07-30 23:08:55,448 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7802 |
+
2022-07-30 23:08:55,557 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7803 |
+
2022-07-30 23:09:04,140 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7804 |
+
2022-07-30 23:09:04,141 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7805 |
+
2022-07-30 23:09:08,565 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7806 |
+
2022-07-30 23:09:16,569 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7807 |
+
2022-07-30 23:09:19,336 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7808 |
+
2022-07-30 23:09:19,337 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7809 |
+
2022-07-30 23:09:25,525 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7810 |
+
2022-07-30 23:09:26,574 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7811 |
+
2022-07-30 23:09:34,578 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7812 |
+
2022-07-30 23:09:34,649 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7813 |
+
2022-07-30 23:09:34,650 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7814 |
+
2022-07-30 23:09:38,580 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7815 |
+
2022-07-30 23:09:45,584 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7816 |
+
2022-07-30 23:09:49,963 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7817 |
+
2022-07-30 23:09:49,964 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7818 |
+
2022-07-30 23:09:51,588 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7819 |
+
2022-07-30 23:09:55,590 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7820 |
+
2022-07-30 23:09:55,601 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7821 |
+
2022-07-30 23:10:01,593 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7822 |
+
2022-07-30 23:10:05,209 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7823 |
+
2022-07-30 23:10:05,210 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7824 |
+
2022-07-30 23:10:05,595 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7825 |
+
2022-07-30 23:10:09,597 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7826 |
+
2022-07-30 23:10:13,600 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7827 |
+
2022-07-30 23:10:18,602 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7828 |
+
2022-07-30 23:10:20,408 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7829 |
+
2022-07-30 23:10:20,409 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7830 |
+
2022-07-30 23:10:22,605 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7831 |
+
2022-07-30 23:10:25,678 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7832 |
+
2022-07-30 23:10:26,607 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7833 |
+
2022-07-30 23:10:30,609 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7834 |
+
2022-07-30 23:10:34,611 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7835 |
+
2022-07-30 23:10:35,637 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7836 |
+
2022-07-30 23:10:35,638 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7837 |
+
2022-07-30 23:10:38,614 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7838 |
+
2022-07-30 23:10:44,617 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7839 |
+
2022-07-30 23:10:48,619 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7840 |
+
2022-07-30 23:10:50,971 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7841 |
+
2022-07-30 23:10:50,971 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7842 |
+
2022-07-30 23:10:52,621 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7843 |
+
2022-07-30 23:10:54,622 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7844 |
+
2022-07-30 23:10:55,754 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7845 |
+
2022-07-30 23:10:59,625 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7846 |
+
2022-07-30 23:11:01,626 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7847 |
+
2022-07-30 23:11:05,628 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7848 |
+
2022-07-30 23:11:06,211 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7849 |
+
2022-07-30 23:11:06,212 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7850 |
+
2022-07-30 23:11:07,630 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7851 |
+
2022-07-30 23:11:11,632 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7852 |
+
2022-07-30 23:11:13,633 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7853 |
+
2022-07-30 23:11:17,635 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7854 |
+
2022-07-30 23:11:19,636 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7855 |
+
2022-07-30 23:11:21,382 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7856 |
+
2022-07-30 23:11:21,382 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7857 |
+
2022-07-30 23:11:21,637 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7858 |
+
2022-07-30 23:11:25,640 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7859 |
+
2022-07-30 23:11:25,833 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7860 |
+
2022-07-30 23:11:27,641 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7861 |
+
2022-07-30 23:11:29,642 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7862 |
+
2022-07-30 23:11:31,643 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7863 |
+
2022-07-30 23:11:33,644 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7864 |
+
2022-07-30 23:11:35,645 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7865 |
+
2022-07-30 23:11:36,536 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7866 |
+
2022-07-30 23:11:36,536 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7867 |
+
2022-07-30 23:11:37,647 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7868 |
+
2022-07-30 23:11:39,648 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7869 |
+
2022-07-30 23:11:42,649 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7870 |
+
2022-07-30 23:11:44,650 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7871 |
+
2022-07-30 23:11:46,652 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7872 |
+
2022-07-30 23:11:48,653 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7873 |
+
2022-07-30 23:11:50,654 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7874 |
+
2022-07-30 23:11:51,709 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7875 |
+
2022-07-30 23:11:51,710 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7876 |
+
2022-07-30 23:11:54,002 DEBUG SenderThread:1494437 [sender.py:send():234] send: history
|
7877 |
+
2022-07-30 23:11:54,005 DEBUG SenderThread:1494437 [sender.py:send():234] send: summary
|
7878 |
+
2022-07-30 23:11:54,009 INFO SenderThread:1494437 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
7879 |
+
2022-07-30 23:11:54,656 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7880 |
+
2022-07-30 23:11:54,657 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json
|
7881 |
+
2022-07-30 23:11:55,657 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7882 |
+
2022-07-30 23:11:55,914 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7883 |
+
2022-07-30 23:11:56,657 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7884 |
+
2022-07-30 23:11:58,659 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7885 |
+
2022-07-30 23:12:07,030 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7886 |
+
2022-07-30 23:12:07,030 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7887 |
+
2022-07-30 23:12:08,664 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7888 |
+
2022-07-30 23:12:18,669 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7889 |
+
2022-07-30 23:12:22,359 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7890 |
+
2022-07-30 23:12:22,360 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7891 |
+
2022-07-30 23:12:25,990 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7892 |
+
2022-07-30 23:12:26,673 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7893 |
+
2022-07-30 23:12:37,611 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7894 |
+
2022-07-30 23:12:37,611 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7895 |
+
2022-07-30 23:12:37,679 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7896 |
+
2022-07-30 23:12:43,682 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7897 |
+
2022-07-30 23:12:49,686 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7898 |
+
2022-07-30 23:12:53,052 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7899 |
+
2022-07-30 23:12:53,052 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7900 |
+
2022-07-30 23:12:53,688 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7901 |
+
2022-07-30 23:12:56,058 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7902 |
+
2022-07-30 23:12:59,691 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7903 |
+
2022-07-30 23:13:05,695 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7904 |
+
2022-07-30 23:13:08,353 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7905 |
+
2022-07-30 23:13:08,354 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7906 |
+
2022-07-30 23:13:12,698 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7907 |
+
2022-07-30 23:13:16,701 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7908 |
+
2022-07-30 23:13:20,703 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7909 |
+
2022-07-30 23:13:23,563 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7910 |
+
2022-07-30 23:13:23,564 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7911 |
+
2022-07-30 23:13:24,705 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7912 |
+
2022-07-30 23:13:26,128 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7913 |
+
2022-07-30 23:13:28,708 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7914 |
+
2022-07-30 23:13:32,710 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7915 |
+
2022-07-30 23:13:36,712 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7916 |
+
2022-07-30 23:13:38,799 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7917 |
+
2022-07-30 23:13:38,799 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7918 |
+
2022-07-30 23:13:40,715 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7919 |
+
2022-07-30 23:13:46,718 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7920 |
+
2022-07-30 23:13:49,720 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7921 |
+
2022-07-30 23:13:53,722 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7922 |
+
2022-07-30 23:13:54,037 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7923 |
+
2022-07-30 23:13:54,038 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7924 |
+
2022-07-30 23:13:56,199 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7925 |
+
2022-07-30 23:13:57,725 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7926 |
+
2022-07-30 23:14:01,727 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7927 |
+
2022-07-30 23:14:03,728 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7928 |
+
2022-07-30 23:14:07,730 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7929 |
+
2022-07-30 23:14:09,390 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7930 |
+
2022-07-30 23:14:09,391 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7931 |
+
2022-07-30 23:14:09,731 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7932 |
+
2022-07-30 23:14:13,734 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7933 |
+
2022-07-30 23:14:15,735 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7934 |
+
2022-07-30 23:14:17,736 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7935 |
+
2022-07-30 23:14:21,738 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7936 |
+
2022-07-30 23:14:23,740 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7937 |
+
2022-07-30 23:14:24,602 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7938 |
+
2022-07-30 23:14:24,602 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7939 |
+
2022-07-30 23:14:26,268 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7940 |
+
2022-07-30 23:14:27,742 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7941 |
+
2022-07-30 23:14:32,745 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7942 |
+
2022-07-30 23:14:34,746 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7943 |
+
2022-07-30 23:14:36,747 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7944 |
+
2022-07-30 23:14:38,748 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7945 |
+
2022-07-30 23:14:39,827 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7946 |
+
2022-07-30 23:14:39,827 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7947 |
+
2022-07-30 23:14:40,749 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7948 |
+
2022-07-30 23:14:42,751 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7949 |
+
2022-07-30 23:14:44,752 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7950 |
+
2022-07-30 23:14:46,753 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7951 |
+
2022-07-30 23:14:48,754 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7952 |
+
2022-07-30 23:14:50,755 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7953 |
+
2022-07-30 23:14:52,757 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7954 |
+
2022-07-30 23:14:54,758 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7955 |
+
2022-07-30 23:14:55,006 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7956 |
+
2022-07-30 23:14:55,007 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7957 |
+
2022-07-30 23:14:56,339 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7958 |
+
2022-07-30 23:14:56,759 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7959 |
+
2022-07-30 23:15:00,761 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7960 |
+
2022-07-30 23:15:02,763 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7961 |
+
2022-07-30 23:15:04,764 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7962 |
+
2022-07-30 23:15:10,337 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: stop_status
|
7963 |
+
2022-07-30 23:15:10,337 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: stop_status
|
7964 |
+
2022-07-30 23:15:13,635 DEBUG SenderThread:1494437 [sender.py:send():234] send: history
|
7965 |
+
2022-07-30 23:15:13,639 DEBUG SenderThread:1494437 [sender.py:send():234] send: summary
|
7966 |
+
2022-07-30 23:15:13,642 INFO SenderThread:1494437 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
7967 |
+
2022-07-30 23:15:13,769 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json
|
7968 |
+
2022-07-30 23:15:15,770 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
7969 |
+
2022-07-30 23:15:16,325 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
7970 |
+
2022-07-30 23:15:16,325 DEBUG SenderThread:1494437 [sender.py:send():234] send: telemetry
|
7971 |
+
2022-07-30 23:15:16,325 DEBUG SenderThread:1494437 [sender.py:send():234] send: exit
|
7972 |
+
2022-07-30 23:15:16,325 INFO SenderThread:1494437 [sender.py:send_exit():366] handling exit code: 1
|
7973 |
+
2022-07-30 23:15:16,327 INFO SenderThread:1494437 [sender.py:send_exit():368] handling runtime: 19748
|
7974 |
+
2022-07-30 23:15:16,330 INFO SenderThread:1494437 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
7975 |
+
2022-07-30 23:15:16,330 INFO SenderThread:1494437 [sender.py:send_exit():374] send defer
|
7976 |
+
2022-07-30 23:15:16,330 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
7977 |
+
2022-07-30 23:15:16,331 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
7978 |
+
2022-07-30 23:15:16,331 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 0
|
7979 |
+
2022-07-30 23:15:16,331 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
7980 |
+
2022-07-30 23:15:16,331 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 0
|
7981 |
+
2022-07-30 23:15:16,331 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 1
|
7982 |
+
2022-07-30 23:15:16,332 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
7983 |
+
2022-07-30 23:15:16,332 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 1
|
7984 |
+
2022-07-30 23:15:16,383 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
7985 |
+
2022-07-30 23:15:16,383 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 1
|
7986 |
+
2022-07-30 23:15:16,383 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 2
|
7987 |
+
2022-07-30 23:15:16,383 DEBUG SenderThread:1494437 [sender.py:send():234] send: stats
|
7988 |
+
2022-07-30 23:15:16,383 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
7989 |
+
2022-07-30 23:15:16,383 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 2
|
7990 |
+
2022-07-30 23:15:16,384 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
7991 |
+
2022-07-30 23:15:16,384 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 2
|
7992 |
+
2022-07-30 23:15:16,384 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 3
|
7993 |
+
2022-07-30 23:15:16,384 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
7994 |
+
2022-07-30 23:15:16,384 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 3
|
7995 |
+
2022-07-30 23:15:16,386 DEBUG SenderThread:1494437 [sender.py:send():234] send: summary
|
7996 |
+
2022-07-30 23:15:16,390 INFO SenderThread:1494437 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
7997 |
+
2022-07-30 23:15:16,390 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
7998 |
+
2022-07-30 23:15:16,390 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 3
|
7999 |
+
2022-07-30 23:15:16,390 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 4
|
8000 |
+
2022-07-30 23:15:16,390 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
8001 |
+
2022-07-30 23:15:16,390 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 4
|
8002 |
+
2022-07-30 23:15:16,391 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
8003 |
+
2022-07-30 23:15:16,391 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 4
|
8004 |
+
2022-07-30 23:15:16,433 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8005 |
+
2022-07-30 23:15:16,694 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 5
|
8006 |
+
2022-07-30 23:15:16,694 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8007 |
+
2022-07-30 23:15:16,695 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
8008 |
+
2022-07-30 23:15:16,695 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 5
|
8009 |
+
2022-07-30 23:15:16,695 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
8010 |
+
2022-07-30 23:15:16,695 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 5
|
8011 |
+
2022-07-30 23:15:16,695 INFO SenderThread:1494437 [dir_watcher.py:finish():283] shutting down directory watcher
|
8012 |
+
2022-07-30 23:15:16,770 INFO Thread-8 :1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/config.yaml
|
8013 |
+
2022-07-30 23:15:16,771 INFO SenderThread:1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
8014 |
+
2022-07-30 23:15:16,771 INFO SenderThread:1494437 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json
|
8015 |
+
2022-07-30 23:15:16,771 INFO SenderThread:1494437 [dir_watcher.py:finish():313] scan: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files
|
8016 |
+
2022-07-30 23:15:16,771 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/config.yaml config.yaml
|
8017 |
+
2022-07-30 23:15:16,772 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/diff.patch diff.patch
|
8018 |
+
2022-07-30 23:15:16,772 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/requirements.txt requirements.txt
|
8019 |
+
2022-07-30 23:15:16,772 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log output.log
|
8020 |
+
2022-07-30 23:15:16,772 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json wandb-summary.json
|
8021 |
+
2022-07-30 23:15:16,772 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-metadata.json wandb-metadata.json
|
8022 |
+
2022-07-30 23:15:16,776 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval/step_1k_1000_ce5fff7a5f93dcf0e7ad.table.json media/table/eval/step_1k_1000_ce5fff7a5f93dcf0e7ad.table.json
|
8023 |
+
2022-07-30 23:15:16,776 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval/step_2k_2000_a82fd645d93af68dc377.table.json media/table/eval/step_2k_2000_a82fd645d93af68dc377.table.json
|
8024 |
+
2022-07-30 23:15:16,776 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json media/table/eval/step_3k_3000_7f6d2aff7a45425d179c.table.json
|
8025 |
+
2022-07-30 23:15:16,779 INFO SenderThread:1494437 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/code/run_flax_speech_recognition_ctc.py code/run_flax_speech_recognition_ctc.py
|
8026 |
+
2022-07-30 23:15:16,779 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 6
|
8027 |
+
2022-07-30 23:15:16,784 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
8028 |
+
2022-07-30 23:15:16,784 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 6
|
8029 |
+
2022-07-30 23:15:16,785 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
8030 |
+
2022-07-30 23:15:16,785 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 6
|
8031 |
+
2022-07-30 23:15:16,785 INFO SenderThread:1494437 [file_pusher.py:finish():177] shutting down file pusher
|
8032 |
+
2022-07-30 23:15:16,796 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8033 |
+
2022-07-30 23:15:16,796 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8034 |
+
2022-07-30 23:15:16,898 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8035 |
+
2022-07-30 23:15:16,898 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8036 |
+
2022-07-30 23:15:17,000 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8037 |
+
2022-07-30 23:15:17,001 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8038 |
+
2022-07-30 23:15:17,103 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8039 |
+
2022-07-30 23:15:17,103 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8040 |
+
2022-07-30 23:15:17,205 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8041 |
+
2022-07-30 23:15:17,205 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8042 |
+
2022-07-30 23:15:17,307 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8043 |
+
2022-07-30 23:15:17,307 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8044 |
+
2022-07-30 23:15:17,314 INFO Thread-23 :1494437 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/config.yaml
|
8045 |
+
2022-07-30 23:15:17,324 INFO Thread-24 :1494437 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/requirements.txt
|
8046 |
+
2022-07-30 23:15:17,352 INFO Thread-26 :1494437 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/wandb-summary.json
|
8047 |
+
2022-07-30 23:15:17,409 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8048 |
+
2022-07-30 23:15:17,409 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8049 |
+
2022-07-30 23:15:17,510 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8050 |
+
2022-07-30 23:15:17,511 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8051 |
+
2022-07-30 23:15:17,537 INFO Thread-25 :1494437 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/files/output.log
|
8052 |
+
2022-07-30 23:15:17,612 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8053 |
+
2022-07-30 23:15:17,612 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8054 |
+
2022-07-30 23:15:17,714 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8055 |
+
2022-07-30 23:15:17,714 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8056 |
+
2022-07-30 23:15:17,737 INFO Thread-7 :1494437 [sender.py:transition_state():387] send defer: 7
|
8057 |
+
2022-07-30 23:15:17,738 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
8058 |
+
2022-07-30 23:15:17,738 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 7
|
8059 |
+
2022-07-30 23:15:17,738 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
8060 |
+
2022-07-30 23:15:17,738 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 7
|
8061 |
+
2022-07-30 23:15:17,816 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8062 |
+
2022-07-30 23:15:19,126 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 8
|
8063 |
+
2022-07-30 23:15:19,127 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8064 |
+
2022-07-30 23:15:19,127 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
8065 |
+
2022-07-30 23:15:19,127 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 8
|
8066 |
+
2022-07-30 23:15:19,128 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
8067 |
+
2022-07-30 23:15:19,128 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 8
|
8068 |
+
2022-07-30 23:15:19,128 INFO SenderThread:1494437 [sender.py:transition_state():387] send defer: 9
|
8069 |
+
2022-07-30 23:15:19,128 DEBUG SenderThread:1494437 [sender.py:send():234] send: final
|
8070 |
+
2022-07-30 23:15:19,128 DEBUG SenderThread:1494437 [sender.py:send():234] send: footer
|
8071 |
+
2022-07-30 23:15:19,128 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: defer
|
8072 |
+
2022-07-30 23:15:19,129 INFO HandlerThread:1494437 [handler.py:handle_request_defer():147] handle defer: 9
|
8073 |
+
2022-07-30 23:15:19,129 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: defer
|
8074 |
+
2022-07-30 23:15:19,129 INFO SenderThread:1494437 [sender.py:send_request_defer():383] handle sender defer: 9
|
8075 |
+
2022-07-30 23:15:19,229 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: poll_exit
|
8076 |
+
2022-07-30 23:15:19,229 DEBUG SenderThread:1494437 [sender.py:send_request():248] send_request: poll_exit
|
8077 |
+
2022-07-30 23:15:19,230 INFO SenderThread:1494437 [file_pusher.py:join():182] waiting for file pusher
|
8078 |
+
2022-07-30 23:15:19,397 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: get_summary
|
8079 |
+
2022-07-30 23:15:19,402 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: sampled_history
|
8080 |
+
2022-07-30 23:15:19,404 DEBUG HandlerThread:1494437 [handler.py:handle_request():130] handle_request: shutdown
|
8081 |
+
2022-07-30 23:15:19,404 INFO HandlerThread:1494437 [handler.py:finish():731] shutting down handler
|
8082 |
+
2022-07-30 23:15:20,129 INFO WriterThread:1494437 [datastore.py:close():281] close: /data/wav2vec2-1b-npsc-nst/wandb/run-20220730_174606-j2u4n7h4/run-j2u4n7h4.wandb
|
8083 |
+
2022-07-30 23:15:20,396 INFO SenderThread:1494437 [sender.py:finish():1070] shutting down sender
|
8084 |
+
2022-07-30 23:15:20,396 INFO SenderThread:1494437 [file_pusher.py:finish():177] shutting down file pusher
|
8085 |
+
2022-07-30 23:15:20,396 INFO SenderThread:1494437 [file_pusher.py:join():182] waiting for file pusher
|
8086 |
+
2022-07-30 23:15:20,397 INFO MainThread:1494437 [internal.py:handle_exit():77] Internal process exited
|
wandb/run-20220730_174606-j2u4n7h4/logs/debug.log
CHANGED
@@ -21,3 +21,167 @@ config: {}
|
|
21 |
2022-07-30 17:46:10,085 INFO MainThread:1493173 [wandb_run.py:_redirect():1689] Redirecting console.
|
22 |
2022-07-30 17:46:10,087 INFO MainThread:1493173 [wandb_run.py:_redirect():1745] Redirects installed.
|
23 |
2022-07-30 17:46:10,087 INFO MainThread:1493173 [wandb_init.py:init():633] run started, returning control to user process
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
2022-07-30 17:46:10,085 INFO MainThread:1493173 [wandb_run.py:_redirect():1689] Redirecting console.
|
22 |
2022-07-30 17:46:10,087 INFO MainThread:1493173 [wandb_run.py:_redirect():1745] Redirects installed.
|
23 |
2022-07-30 17:46:10,087 INFO MainThread:1493173 [wandb_init.py:init():633] run started, returning control to user process
|
24 |
+
2022-07-30 23:15:13,316 INFO MainThread:1493173 [wandb_run.py:_atexit_cleanup():1780] got exitcode: 1
|
25 |
+
2022-07-30 23:15:13,627 INFO MainThread:1493173 [wandb_run.py:_restore():1752] restore
|
26 |
+
2022-07-30 23:15:16,331 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
27 |
+
wandb_count: 2
|
28 |
+
media_count: 3
|
29 |
+
artifact_count: 3
|
30 |
+
other_count: 1
|
31 |
+
}
|
32 |
+
pusher_stats {
|
33 |
+
uploaded_bytes: 240845
|
34 |
+
total_bytes: 240845
|
35 |
+
}
|
36 |
+
|
37 |
+
2022-07-30 23:15:16,695 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
38 |
+
wandb_count: 2
|
39 |
+
media_count: 3
|
40 |
+
artifact_count: 3
|
41 |
+
other_count: 1
|
42 |
+
}
|
43 |
+
pusher_stats {
|
44 |
+
uploaded_bytes: 240845
|
45 |
+
total_bytes: 240845
|
46 |
+
}
|
47 |
+
|
48 |
+
2022-07-30 23:15:16,797 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
49 |
+
wandb_count: 6
|
50 |
+
media_count: 3
|
51 |
+
artifact_count: 3
|
52 |
+
other_count: 1
|
53 |
+
}
|
54 |
+
pusher_stats {
|
55 |
+
uploaded_bytes: 240845
|
56 |
+
total_bytes: 613221
|
57 |
+
}
|
58 |
+
|
59 |
+
2022-07-30 23:15:16,899 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
60 |
+
wandb_count: 6
|
61 |
+
media_count: 3
|
62 |
+
artifact_count: 3
|
63 |
+
other_count: 1
|
64 |
+
}
|
65 |
+
pusher_stats {
|
66 |
+
uploaded_bytes: 240845
|
67 |
+
total_bytes: 613221
|
68 |
+
}
|
69 |
+
|
70 |
+
2022-07-30 23:15:17,002 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
71 |
+
wandb_count: 6
|
72 |
+
media_count: 3
|
73 |
+
artifact_count: 3
|
74 |
+
other_count: 1
|
75 |
+
}
|
76 |
+
pusher_stats {
|
77 |
+
uploaded_bytes: 240845
|
78 |
+
total_bytes: 613221
|
79 |
+
}
|
80 |
+
|
81 |
+
2022-07-30 23:15:17,104 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
82 |
+
wandb_count: 6
|
83 |
+
media_count: 3
|
84 |
+
artifact_count: 3
|
85 |
+
other_count: 1
|
86 |
+
}
|
87 |
+
pusher_stats {
|
88 |
+
uploaded_bytes: 613221
|
89 |
+
total_bytes: 613221
|
90 |
+
}
|
91 |
+
|
92 |
+
2022-07-30 23:15:17,206 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
93 |
+
wandb_count: 6
|
94 |
+
media_count: 3
|
95 |
+
artifact_count: 3
|
96 |
+
other_count: 1
|
97 |
+
}
|
98 |
+
pusher_stats {
|
99 |
+
uploaded_bytes: 613221
|
100 |
+
total_bytes: 613221
|
101 |
+
}
|
102 |
+
|
103 |
+
2022-07-30 23:15:17,308 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
104 |
+
wandb_count: 6
|
105 |
+
media_count: 3
|
106 |
+
artifact_count: 3
|
107 |
+
other_count: 1
|
108 |
+
}
|
109 |
+
pusher_stats {
|
110 |
+
uploaded_bytes: 613221
|
111 |
+
total_bytes: 613221
|
112 |
+
}
|
113 |
+
|
114 |
+
2022-07-30 23:15:17,410 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
115 |
+
wandb_count: 6
|
116 |
+
media_count: 3
|
117 |
+
artifact_count: 3
|
118 |
+
other_count: 1
|
119 |
+
}
|
120 |
+
pusher_stats {
|
121 |
+
uploaded_bytes: 613221
|
122 |
+
total_bytes: 613221
|
123 |
+
}
|
124 |
+
|
125 |
+
2022-07-30 23:15:17,511 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
126 |
+
wandb_count: 6
|
127 |
+
media_count: 3
|
128 |
+
artifact_count: 3
|
129 |
+
other_count: 1
|
130 |
+
}
|
131 |
+
pusher_stats {
|
132 |
+
uploaded_bytes: 613221
|
133 |
+
total_bytes: 613221
|
134 |
+
}
|
135 |
+
|
136 |
+
2022-07-30 23:15:17,613 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
137 |
+
wandb_count: 6
|
138 |
+
media_count: 3
|
139 |
+
artifact_count: 3
|
140 |
+
other_count: 1
|
141 |
+
}
|
142 |
+
pusher_stats {
|
143 |
+
uploaded_bytes: 613221
|
144 |
+
total_bytes: 613221
|
145 |
+
}
|
146 |
+
|
147 |
+
2022-07-30 23:15:17,715 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
148 |
+
wandb_count: 6
|
149 |
+
media_count: 3
|
150 |
+
artifact_count: 3
|
151 |
+
other_count: 1
|
152 |
+
}
|
153 |
+
pusher_stats {
|
154 |
+
uploaded_bytes: 613221
|
155 |
+
total_bytes: 613221
|
156 |
+
}
|
157 |
+
|
158 |
+
2022-07-30 23:15:19,128 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
159 |
+
wandb_count: 6
|
160 |
+
media_count: 3
|
161 |
+
artifact_count: 3
|
162 |
+
other_count: 1
|
163 |
+
}
|
164 |
+
pusher_stats {
|
165 |
+
uploaded_bytes: 613221
|
166 |
+
total_bytes: 613221
|
167 |
+
}
|
168 |
+
|
169 |
+
2022-07-30 23:15:19,396 INFO MainThread:1493173 [wandb_run.py:_wait_for_finish():1912] got exit ret: done: true
|
170 |
+
exit_result {
|
171 |
+
}
|
172 |
+
file_counts {
|
173 |
+
wandb_count: 6
|
174 |
+
media_count: 3
|
175 |
+
artifact_count: 3
|
176 |
+
other_count: 1
|
177 |
+
}
|
178 |
+
pusher_stats {
|
179 |
+
uploaded_bytes: 613221
|
180 |
+
total_bytes: 613221
|
181 |
+
}
|
182 |
+
local_info {
|
183 |
+
}
|
184 |
+
|
185 |
+
2022-07-30 23:15:20,998 INFO MainThread:1493173 [wandb_run.py:_append_history():2130] rendering history
|
186 |
+
2022-07-30 23:15:20,999 INFO MainThread:1493173 [wandb_run.py:_append_summary():2085] rendering summary
|
187 |
+
2022-07-30 23:15:20,999 INFO MainThread:1493173 [wandb_run.py:_append_files():2180] logging synced files
|
wandb/run-20220730_174606-j2u4n7h4/run-j2u4n7h4.wandb
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:72a755224cb1e0c3572d3b42c525289cca5718623023f850e3030bbc61b5e4ac
|
3 |
+
size 4776456
|
wandb/run-20220731_115136-a9kwr28f/files/code/run_flax_speech_recognition_ctc.py
ADDED
@@ -0,0 +1,1604 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/usr/bin/env python
|
2 |
+
# coding=utf-8
|
3 |
+
# Copyright 2022 The HuggingFace Team All rights reserved.
|
4 |
+
#
|
5 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6 |
+
# you may not use this file except in compliance with the License.
|
7 |
+
# You may obtain a copy of the License at
|
8 |
+
#
|
9 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10 |
+
#
|
11 |
+
# Unless required by applicable law or agreed to in writing, software
|
12 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14 |
+
# See the License for the specific language governing permissions and
|
15 |
+
# limitations under the License.
|
16 |
+
"""
|
17 |
+
Fine-tuning the Flax library models for connectionist temporal classification (CTC) speech recognition.
|
18 |
+
"""
|
19 |
+
# You can also adapt this script on your own sequence to sequence task. Pointers for this are left as comments.
|
20 |
+
|
21 |
+
import logging
|
22 |
+
import math
|
23 |
+
import os
|
24 |
+
import re
|
25 |
+
import sys
|
26 |
+
import time
|
27 |
+
from dataclasses import dataclass, field
|
28 |
+
from pathlib import Path
|
29 |
+
from typing import Any, Callable, Dict, List, Optional, Union
|
30 |
+
|
31 |
+
import datasets
|
32 |
+
import numpy as np
|
33 |
+
from datasets import DatasetDict, load_dataset, load_metric
|
34 |
+
from tqdm import tqdm
|
35 |
+
|
36 |
+
import flax
|
37 |
+
import jax
|
38 |
+
import jax.numpy as jnp
|
39 |
+
import optax
|
40 |
+
import transformers
|
41 |
+
import wandb as wandb
|
42 |
+
from flax import core, jax_utils, struct, traverse_util
|
43 |
+
from flax.jax_utils import unreplicate, pad_shard_unpad
|
44 |
+
from flax.training.common_utils import get_metrics, shard, shard_prng_key
|
45 |
+
from huggingface_hub import Repository
|
46 |
+
from models import Wav2Vec2Config, FlaxWav2Vec2ForCTC
|
47 |
+
from optax._src import linear_algebra
|
48 |
+
from transformers import (
|
49 |
+
AutoFeatureExtractor,
|
50 |
+
AutoProcessor,
|
51 |
+
AutoTokenizer,
|
52 |
+
HfArgumentParser,
|
53 |
+
TrainingArguments,
|
54 |
+
is_tensorboard_available,
|
55 |
+
set_seed,
|
56 |
+
)
|
57 |
+
from transformers.file_utils import get_full_repo_name
|
58 |
+
from transformers.utils import check_min_version
|
59 |
+
from transformers.utils.versions import require_version
|
60 |
+
|
61 |
+
|
62 |
+
# Will error if the minimal version of Transformers is not installed. Remove at your own risks.
|
63 |
+
check_min_version("4.17.0.dev0")
|
64 |
+
|
65 |
+
require_version("datasets>=1.18.0", "To fix: pip install -r examples/pytorch/speech-recognition/requirements.txt")
|
66 |
+
|
67 |
+
logger = logging.getLogger(__name__)
|
68 |
+
|
69 |
+
|
70 |
+
@flax.struct.dataclass
|
71 |
+
class ModelArguments:
|
72 |
+
"""
|
73 |
+
Arguments pertaining to which model/config/tokenizer we are going to fine-tune from.
|
74 |
+
"""
|
75 |
+
|
76 |
+
model_name_or_path: str = field(
|
77 |
+
metadata={"help": "Path to pretrained model or model identifier from huggingface.co/models"}
|
78 |
+
)
|
79 |
+
config_name: Optional[str] = field(
|
80 |
+
default=None, metadata={"help": "Pretrained config name or path if not the same as model_name"}
|
81 |
+
)
|
82 |
+
tokenizer_name: Optional[str] = field(
|
83 |
+
default=None, metadata={"help": "Pretrained tokenizer name or path if not the same as model_name"}
|
84 |
+
)
|
85 |
+
feature_extractor_name: Optional[str] = field(
|
86 |
+
default=None, metadata={"help": "feature extractor name or path if not the same as model_name"}
|
87 |
+
)
|
88 |
+
cache_dir: Optional[str] = field(
|
89 |
+
default=None,
|
90 |
+
metadata={"help": "Where to store the pretrained models downloaded from huggingface.co"},
|
91 |
+
)
|
92 |
+
use_fast_tokenizer: bool = field(
|
93 |
+
default=True,
|
94 |
+
metadata={"help": "Whether to use one of the fast tokenizer (backed by the tokenizers library) or not."},
|
95 |
+
)
|
96 |
+
model_revision: str = field(
|
97 |
+
default="main",
|
98 |
+
metadata={"help": "The specific model version to use (can be a branch name, tag name or commit id)."},
|
99 |
+
)
|
100 |
+
use_auth_token: bool = field(
|
101 |
+
default=False,
|
102 |
+
metadata={
|
103 |
+
"help": "Will use the token generated when running `transformers-cli login` (necessary to use this script "
|
104 |
+
"with private models)."
|
105 |
+
},
|
106 |
+
)
|
107 |
+
freeze_feature_encoder: bool = field(
|
108 |
+
default=True, metadata={"help": "Whether to freeze the feature encoder layers of the model."}
|
109 |
+
)
|
110 |
+
attention_dropout: float = field(
|
111 |
+
default=0.0, metadata={"help": "The dropout ratio for the attention probabilities."}
|
112 |
+
)
|
113 |
+
activation_dropout: float = field(
|
114 |
+
default=0.1,
|
115 |
+
metadata={
|
116 |
+
"help": "The hidden activation dropout probability in the embeddings, encoder, and pooler."
|
117 |
+
},
|
118 |
+
)
|
119 |
+
hidden_dropout: float = field(
|
120 |
+
default=0.1,
|
121 |
+
metadata={
|
122 |
+
"help": "The dropout probability for all fully connected layers in the embeddings, encoder, and pooler."
|
123 |
+
},
|
124 |
+
)
|
125 |
+
feat_proj_dropout: float = field(
|
126 |
+
default=0.0,
|
127 |
+
metadata={
|
128 |
+
"help": "The feat proj dropout probability for feature encoder representations."
|
129 |
+
},
|
130 |
+
)
|
131 |
+
final_dropout: float = field(
|
132 |
+
default=0.0,
|
133 |
+
metadata={"help": "The dropout probability for the final projection layer."},
|
134 |
+
)
|
135 |
+
mask_time_prob: float = field(
|
136 |
+
default=0.1,
|
137 |
+
metadata={
|
138 |
+
"help": "The spec aug dropout probability for feature encoder representations."
|
139 |
+
},
|
140 |
+
)
|
141 |
+
mask_time_length: int = field(
|
142 |
+
default=10,
|
143 |
+
metadata={"help": "Length of vector span to mask along the time axis."},
|
144 |
+
)
|
145 |
+
mask_feature_prob: float = field(
|
146 |
+
default=0.0,
|
147 |
+
metadata={
|
148 |
+
"help": "Probability of each feature vector along the feature axis to be chosen as the start of the vector"
|
149 |
+
"span to be masked. Approximately ``mask_feature_prob * sequence_length // mask_feature_length`` feature bins will be masked along the time axis."
|
150 |
+
},
|
151 |
+
)
|
152 |
+
mask_feature_length: int = field(
|
153 |
+
default=10,
|
154 |
+
metadata={"help": "Length of vector span to mask along the feature axis."},
|
155 |
+
)
|
156 |
+
layerdrop: float = field(default=0.0, metadata={"help": "The LayerDrop probability."})
|
157 |
+
ctc_loss_reduction: Optional[str] = field(
|
158 |
+
default="mean", metadata={"help": "The way the ctc loss should be reduced. Should be one of 'mean' or 'sum'."}
|
159 |
+
)
|
160 |
+
ctc_zero_infinity: Optional[bool] = field(
|
161 |
+
default=False, metadata={"help": "If True, will try yo aboud the CTC loss goinf to infinity."}
|
162 |
+
)
|
163 |
+
|
164 |
+
|
165 |
+
@flax.struct.dataclass
|
166 |
+
class DataTrainingArguments:
|
167 |
+
"""
|
168 |
+
Arguments pertaining to what data we are going to input our model for training and eval.
|
169 |
+
"""
|
170 |
+
|
171 |
+
dataset_name: str = field(
|
172 |
+
default=None, metadata={"help": "The name of the dataset to use (via the datasets library)."}
|
173 |
+
)
|
174 |
+
dataset_config_name: Optional[str] = field(
|
175 |
+
default=None, metadata={"help": "The configuration name of the dataset to use (via the datasets library)."}
|
176 |
+
)
|
177 |
+
text_column: Optional[str] = field(
|
178 |
+
default=None,
|
179 |
+
metadata={"help": "The name of the column in the datasets containing the full texts (for summarization)."},
|
180 |
+
)
|
181 |
+
dataset_cache_dir: Optional[str] = field(
|
182 |
+
default=None, metadata={"help": "Path to cache directory for saving and loading datasets"}
|
183 |
+
)
|
184 |
+
overwrite_cache: bool = field(
|
185 |
+
default=False, metadata={"help": "Overwrite the cached training and evaluation sets"}
|
186 |
+
)
|
187 |
+
preprocessing_num_workers: Optional[int] = field(
|
188 |
+
default=None,
|
189 |
+
metadata={"help": "The number of processes to use for the preprocessing."},
|
190 |
+
)
|
191 |
+
max_train_samples: Optional[int] = field(
|
192 |
+
default=None,
|
193 |
+
metadata={
|
194 |
+
"help": "For debugging purposes or quicker training, truncate the number of training examples to this "
|
195 |
+
"value if set."
|
196 |
+
},
|
197 |
+
)
|
198 |
+
max_eval_samples: Optional[int] = field(
|
199 |
+
default=None,
|
200 |
+
metadata={
|
201 |
+
"help": "For debugging purposes or quicker training, truncate the number of evaluation examples to this "
|
202 |
+
"value if set."
|
203 |
+
},
|
204 |
+
)
|
205 |
+
max_test_samples: Optional[int] = field(
|
206 |
+
default=None,
|
207 |
+
metadata={
|
208 |
+
"help": "For debugging purposes or quicker training, truncate the number of test examples to this "
|
209 |
+
"value if set."
|
210 |
+
},
|
211 |
+
)
|
212 |
+
audio_column_name: str = field(
|
213 |
+
default="audio",
|
214 |
+
metadata={"help": "The name of the dataset column containing the audio data. Defaults to 'audio'"},
|
215 |
+
)
|
216 |
+
text_column_name: str = field(
|
217 |
+
default="text",
|
218 |
+
metadata={"help": "The name of the dataset column containing the text data. Defaults to 'text'"},
|
219 |
+
)
|
220 |
+
max_duration_in_seconds: float = field(
|
221 |
+
default=20.0,
|
222 |
+
metadata={
|
223 |
+
"help": "Truncate audio files that are longer than `max_duration_in_seconds` seconds to 'max_duration_in_seconds`"
|
224 |
+
},
|
225 |
+
)
|
226 |
+
min_duration_in_seconds: float = field(
|
227 |
+
default=0.0, metadata={"help": "Filter audio files that are shorter than `min_duration_in_seconds` seconds"}
|
228 |
+
)
|
229 |
+
max_label_length: Optional[int] = field(
|
230 |
+
default=512,
|
231 |
+
metadata={
|
232 |
+
"help": "The minimum total sequence length for target text after tokenization. Sequences shorter "
|
233 |
+
"than this will be filtered."
|
234 |
+
},
|
235 |
+
)
|
236 |
+
min_label_length: Optional[int] = field(
|
237 |
+
default=2,
|
238 |
+
metadata={
|
239 |
+
"help": "The minimum total sequence length for target text after tokenization. Sequences shorter "
|
240 |
+
"than this will be filtered."
|
241 |
+
},
|
242 |
+
)
|
243 |
+
pad_input_to_multiple_of: Optional[int] = field(
|
244 |
+
default=32000,
|
245 |
+
metadata={
|
246 |
+
"help": "If set will pad the input sequence to a multiple of the provided value. "
|
247 |
+
"This is important to avoid triggering recompilations on TPU."
|
248 |
+
},
|
249 |
+
)
|
250 |
+
pad_target_to_multiple_of: Optional[int] = field(
|
251 |
+
default=None,
|
252 |
+
metadata={
|
253 |
+
"help": "If set will pad the target sequence to a multiple of the provided value. "
|
254 |
+
"This is important to avoid triggering recompilations on TPU."
|
255 |
+
},
|
256 |
+
)
|
257 |
+
preprocessing_only: bool = field(
|
258 |
+
default=False,
|
259 |
+
metadata={
|
260 |
+
"help": "Whether to only do data preprocessing and skip training. "
|
261 |
+
"This is especially useful when data preprocessing errors out in distributed training due to timeout. "
|
262 |
+
"In this case, one should run the preprocessing in a non-distributed setup with `preprocessing_only=True` "
|
263 |
+
"so that the cached datasets can consequently be loaded in distributed training"
|
264 |
+
},
|
265 |
+
)
|
266 |
+
train_split_name: str = field(
|
267 |
+
default="train",
|
268 |
+
metadata={
|
269 |
+
"help": "The name of the training data set split to use (via the datasets library). Defaults to 'train'"
|
270 |
+
},
|
271 |
+
)
|
272 |
+
eval_split_name: str = field(
|
273 |
+
default="validation",
|
274 |
+
metadata={
|
275 |
+
"help": "The name of the training data set split to use (via the datasets library). Defaults to 'train'"
|
276 |
+
},
|
277 |
+
)
|
278 |
+
do_lower_case: bool = field(
|
279 |
+
default=True,
|
280 |
+
metadata={"help": "Whether the target text should be lower cased."},
|
281 |
+
)
|
282 |
+
wandb_project: str = field(
|
283 |
+
default="flax-speech-recognition-ctc",
|
284 |
+
metadata={"help": "The name of the wandb project."},
|
285 |
+
)
|
286 |
+
wandb_name: str = field(
|
287 |
+
default=None,
|
288 |
+
metadata={"help": "The name of the wandb run."},
|
289 |
+
)
|
290 |
+
wandb_job_type: str = field(
|
291 |
+
default="CTC",
|
292 |
+
metadata={"help": "The name of the wandb job type."},
|
293 |
+
)
|
294 |
+
test_split_name: str = field(
|
295 |
+
default="test",
|
296 |
+
metadata={"help": "The name of the test data set split to use (via the datasets library). Defaults to 'test'"},
|
297 |
+
)
|
298 |
+
remove_punctuation: bool = field(
|
299 |
+
default=False, metadata={"help": "Whether or not to remove punctuation during training."}
|
300 |
+
)
|
301 |
+
|
302 |
+
|
303 |
+
# @flax.struct.dataclass
|
304 |
+
@dataclass
|
305 |
+
class FlaxTrainingArguments(TrainingArguments):
|
306 |
+
precision: str = field(
|
307 |
+
default="full",
|
308 |
+
metadata={
|
309 |
+
"help": "Whether to enable mixed-precision training. If true, the optimizer is stored in half-precision (bfloat16) and computations are executed in half-precision"
|
310 |
+
"**Note that this only specifies the dtype of the computation and optimizer state. It does not influence the dtype of model parameters.**"
|
311 |
+
},
|
312 |
+
)
|
313 |
+
matmul_precision: str = field(
|
314 |
+
default="default",
|
315 |
+
metadata={
|
316 |
+
"help": "Default floating-point precision of internal computations used in TPU matrix multiplications and convolutions. "
|
317 |
+
"This configuration option controls the default precision for JAX operations that take an optional precision argument (e.g. `lax.conv_general_dilated` and `lax.dot`). "
|
318 |
+
"This configuration option does not change the behaviours of such calls with explicit precision arguments; "
|
319 |
+
"it only changes the behaviors of calls with no such argument provided. "
|
320 |
+
"One of `['highest', 'float32', 'high', 'bfloat16_3x', 'default', 'bfloat16', 'fastest', None]`."
|
321 |
+
},
|
322 |
+
)
|
323 |
+
multisteps: bool = field(
|
324 |
+
default=False,
|
325 |
+
metadata={
|
326 |
+
"help": "Whether to use Optax MultiSteps for gradient accumulation. If `False` (default) and `gradient_accumulation_steps > 1`, "
|
327 |
+
"a custom gradient accumulation implementation will be employed."
|
328 |
+
},
|
329 |
+
)
|
330 |
+
|
331 |
+
|
332 |
+
def to_fp32(t):
|
333 |
+
return jax.tree_map(lambda x: x.astype(jnp.float32) if x.dtype == jnp.bfloat16 else x, t)
|
334 |
+
|
335 |
+
|
336 |
+
def to_bf16(t):
|
337 |
+
return jax.tree_map(lambda x: x.astype(jnp.bfloat16) if x.dtype == jnp.float32 else x, t)
|
338 |
+
|
339 |
+
|
340 |
+
class MixedPrecisionTrainState(struct.PyTreeNode):
|
341 |
+
"""Train state for use with a single Optax optimizer.
|
342 |
+
Adapted from flax train_state https://github.com/google/flax/blob/main/flax/training/train_state.py
|
343 |
+
|
344 |
+
Synopsis::
|
345 |
+
|
346 |
+
state = TrainState.create(
|
347 |
+
apply_fn=model.apply,
|
348 |
+
params=variables['params'],
|
349 |
+
tx=tx)
|
350 |
+
grad_fn = jax.grad(make_loss_fn(state.apply_fn))
|
351 |
+
for batch in data:
|
352 |
+
grads = grad_fn(state.params, batch)
|
353 |
+
state = state.apply_gradients(grads=grads)
|
354 |
+
|
355 |
+
Args:
|
356 |
+
step: Counter starts at 0 and is incremented by every call to
|
357 |
+
`.apply_gradients()`.
|
358 |
+
apply_fn: Usually set to `model.apply()`. Kept in this dataclass for
|
359 |
+
convenience to have a shorter params list for the `train_step()` function
|
360 |
+
in your training loop.
|
361 |
+
params: The parameters to be updated by `tx` and used by `apply_fn`.
|
362 |
+
tx: An Optax gradient transformation.
|
363 |
+
opt_state: The state for `tx`.
|
364 |
+
dropout_rng: PRNG key for stochastic operations.
|
365 |
+
bf16: Whether to use bf16 16-bit (mixed) precision training instead of 32-bit training.
|
366 |
+
"""
|
367 |
+
|
368 |
+
step: int
|
369 |
+
apply_fn: Callable = struct.field(pytree_node=False)
|
370 |
+
get_attention_mask_fn: Callable = struct.field(pytree_node=False)
|
371 |
+
params: core.FrozenDict[str, Any]
|
372 |
+
tx: optax.GradientTransformation = struct.field(pytree_node=False)
|
373 |
+
opt_state: optax.OptState
|
374 |
+
dropout_rng: jnp.ndarray
|
375 |
+
max_grad_norm: Optional[float] = 1.0
|
376 |
+
|
377 |
+
def apply_gradients(self, *, grads, to_dtype, **kwargs):
|
378 |
+
"""Updates `step`, `params`, `opt_state` and `**kwargs` in return value.
|
379 |
+
|
380 |
+
Note that internally this function calls `.tx.update()` followed by a call
|
381 |
+
to `optax.apply_updates()` to update `params` and `opt_state`.
|
382 |
+
|
383 |
+
Args:
|
384 |
+
grads: Gradients that have the same pytree structure as `.params`.
|
385 |
+
**kwargs: Additional dataclass attributes that should be `.replace()`-ed.
|
386 |
+
|
387 |
+
Returns:
|
388 |
+
An updated instance of `self` with `step` incremented by one, `params`
|
389 |
+
and `opt_state` updated by applying `grads`, and additional attributes
|
390 |
+
replaced as specified by `kwargs`.
|
391 |
+
"""
|
392 |
+
|
393 |
+
# clip gradients by global l2 norm
|
394 |
+
casted_max_grad_norm = to_dtype(self.max_grad_norm)
|
395 |
+
g_norm = linear_algebra.global_norm(grads)
|
396 |
+
g_norm = jnp.maximum(casted_max_grad_norm, g_norm)
|
397 |
+
grads = jax.tree_map(lambda t: (t / g_norm) * casted_max_grad_norm, grads)
|
398 |
+
|
399 |
+
# perform update step in fp32 and subsequently downcast optimizer states if mixed precision training
|
400 |
+
# grads and opt_state in bf16 (need to upcast), params in fp32 (leave as is)
|
401 |
+
updates, new_opt_state = self.tx.update(to_fp32(grads), to_fp32(self.opt_state), self.params)
|
402 |
+
|
403 |
+
new_params = optax.apply_updates(self.params, updates)
|
404 |
+
return self.replace(
|
405 |
+
step=self.step + 1,
|
406 |
+
params=new_params,
|
407 |
+
opt_state=to_dtype(new_opt_state),
|
408 |
+
**kwargs,
|
409 |
+
)
|
410 |
+
|
411 |
+
@classmethod
|
412 |
+
def create(cls, *, apply_fn, params, tx, to_dtype, **kwargs):
|
413 |
+
"""Creates a new instance with `step=0` and initialized `opt_state`."""
|
414 |
+
# downcast optimizer state to bf16 if mixed-precision training
|
415 |
+
opt_state = tx.init(to_dtype(params)) if tx is not None else None
|
416 |
+
return cls(
|
417 |
+
step=0,
|
418 |
+
apply_fn=apply_fn,
|
419 |
+
params=params,
|
420 |
+
tx=tx,
|
421 |
+
opt_state=opt_state,
|
422 |
+
**kwargs,
|
423 |
+
)
|
424 |
+
|
425 |
+
def replicate(self):
|
426 |
+
return jax_utils.replicate(self).replace(dropout_rng=shard_prng_key(self.dropout_rng))
|
427 |
+
|
428 |
+
|
429 |
+
@flax.struct.dataclass
|
430 |
+
class FlaxDataCollatorSpeechSeq2SeqWithPadding:
|
431 |
+
"""
|
432 |
+
Data collator that will dynamically pad the inputs received.
|
433 |
+
Args:
|
434 |
+
processor ([`Wav2Vec2Processor`])
|
435 |
+
The processor used for proccessing the data.
|
436 |
+
decoder_start_token_id (:obj: `int`)
|
437 |
+
The begin-of-sentence of the decoder.
|
438 |
+
input_padding (:obj:`bool`, :obj:`str` or :class:`~transformers.tokenization_utils_base.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
439 |
+
Select a strategy to pad the returned input sequences (according to the model's padding side and padding index)
|
440 |
+
among:
|
441 |
+
* :obj:`True` or :obj:`'longest'`: Pad to the longest sequence in the batch (or no padding if only a single
|
442 |
+
sequence if provided).
|
443 |
+
* :obj:`'max_length'`: Pad to a maximum length specified with the argument :obj:`max_length` or to the
|
444 |
+
maximum acceptable input length for the model if that argument is not provided.
|
445 |
+
* :obj:`False` or :obj:`'do_not_pad'` (default): No padding (i.e., can output a batch with sequences of
|
446 |
+
different lengths).
|
447 |
+
target_padding (:obj:`bool`, :obj:`str` or :class:`~transformers.tokenization_utils_base.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
448 |
+
Select a strategy to pad the returned target sequences (according to the model's padding side and padding index).
|
449 |
+
See above for details.
|
450 |
+
max_input_length (:obj:`float`, `optional`):
|
451 |
+
Maximum length of the ``input_values`` of the returned list and optionally padding length (see above).
|
452 |
+
pad_input_to_multiple_of (:obj:`int`, `optional`):
|
453 |
+
If set will pad the input sequence to a multiple of the provided value.
|
454 |
+
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
455 |
+
7.5 (Volta).
|
456 |
+
pad_target_to_multiple_of (:obj:`int`, `optional`):
|
457 |
+
If set will pad the target sequence to a multiple of the provided value.
|
458 |
+
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
459 |
+
7.5 (Volta).
|
460 |
+
"""
|
461 |
+
|
462 |
+
processor: Any
|
463 |
+
input_padding: Union[bool, str] = "longest"
|
464 |
+
label_padding: Union[bool, str] = "max_length"
|
465 |
+
pad_input_to_multiple_of: Optional[int] = None
|
466 |
+
pad_to_multiple_of_label: Optional[int] = None
|
467 |
+
max_input_length: Optional[float] = None
|
468 |
+
max_label_length: Optional[float] = None
|
469 |
+
|
470 |
+
def __call__(self, features: List[Dict[str, Union[List[int], np.ndarray]]]) -> Dict[str, np.ndarray]:
|
471 |
+
# split inputs and labels since they have to be of different lengths and need
|
472 |
+
# different padding methods
|
473 |
+
input_features = [{"input_values": feature["input_values"]} for feature in features]
|
474 |
+
label_features = [{"input_ids": feature["labels"]} for feature in features]
|
475 |
+
|
476 |
+
# reformat list to dict and set to pytorch format
|
477 |
+
batch = self.processor.feature_extractor.pad(
|
478 |
+
input_features,
|
479 |
+
max_length=self.max_input_length,
|
480 |
+
padding=self.input_padding,
|
481 |
+
pad_to_multiple_of=self.pad_input_to_multiple_of,
|
482 |
+
return_tensors="np",
|
483 |
+
)
|
484 |
+
|
485 |
+
labels_batch = self.processor.tokenizer.pad(
|
486 |
+
label_features,
|
487 |
+
max_length=self.max_label_length,
|
488 |
+
padding=self.label_padding,
|
489 |
+
pad_to_multiple_of=self.pad_to_multiple_of_label,
|
490 |
+
return_tensors="np",
|
491 |
+
)
|
492 |
+
|
493 |
+
labels = labels_batch["input_ids"]
|
494 |
+
labels = np.ma.array(labels, mask=np.not_equal(labels_batch.attention_mask, 1))
|
495 |
+
labels = labels.filled(fill_value=-100)
|
496 |
+
|
497 |
+
batch["labels"] = labels
|
498 |
+
|
499 |
+
return batch
|
500 |
+
|
501 |
+
|
502 |
+
def get_grouped_indices(
|
503 |
+
dataset, batch_size: int, rng: Optional[List[int]] = None, mega_batch_mult: Optional[int] = None
|
504 |
+
) -> np.array:
|
505 |
+
"""
|
506 |
+
Adapted from the `get_length_grouped_indices` function in the PyTorch Trainer utils file (https://github.com/huggingface/transformers/blob/main/src/transformers/trainer_pt_utils.py#L486)
|
507 |
+
Function that returns a list of indices in which each slice of `batch_size` consecutive indices correspond to elements of similar
|
508 |
+
lengths. To do this, the indices are:
|
509 |
+
|
510 |
+
- randomly permuted (if a JAX rng is specified)
|
511 |
+
- grouped in mega-batches of size `mega_batch_mult * batch_size`
|
512 |
+
- sorted by length in each mega-batch
|
513 |
+
|
514 |
+
The result is the concatenation of all mega-batches, with the batch of `batch_size` containing the element of
|
515 |
+
maximum length placed first, so that an OOM happens sooner rather than later.
|
516 |
+
"""
|
517 |
+
lengths = dataset["input_length"]
|
518 |
+
|
519 |
+
# Default for mega_batch_mult: 50 or the number to get 4 megabatches, whichever is smaller.
|
520 |
+
if mega_batch_mult is None:
|
521 |
+
mega_batch_mult = min(len(lengths) // (batch_size * 4), 50)
|
522 |
+
# Just in case, for tiny datasets
|
523 |
+
if mega_batch_mult == 0:
|
524 |
+
mega_batch_mult = 1
|
525 |
+
|
526 |
+
# We need to use JAX for the random permutation as the PRNG key will be set based on the seed outside of the sampler.
|
527 |
+
num_samples = len(lengths)
|
528 |
+
indices = jax.random.permutation(rng, np.arange(num_samples)) if rng is not None else np.arange(num_samples)
|
529 |
+
|
530 |
+
megabatch_size = mega_batch_mult * batch_size
|
531 |
+
megabatches = [indices[i : i + megabatch_size].tolist() for i in range(0, len(lengths), megabatch_size)]
|
532 |
+
megabatches = [list(sorted(megabatch, key=lambda i: lengths[i], reverse=True)) for megabatch in megabatches]
|
533 |
+
|
534 |
+
# The rest is to get the biggest batch first.
|
535 |
+
# Since each megabatch is sorted by descending length, the longest element is the first
|
536 |
+
megabatch_maximums = [lengths[megabatch[0]] for megabatch in megabatches]
|
537 |
+
max_idx = np.argmax(megabatch_maximums).item()
|
538 |
+
# Switch to put the longest batch in first position
|
539 |
+
# (note that this is different to the PT grouped sampler in which we only put the longest element in the first position, and not its batch)
|
540 |
+
megabatches[0], megabatches[max_idx] = megabatches[max_idx], megabatches[0]
|
541 |
+
|
542 |
+
megabatches = np.array([i for megabatch in megabatches for i in megabatch])
|
543 |
+
|
544 |
+
return megabatches
|
545 |
+
|
546 |
+
|
547 |
+
def generate_batch_splits(samples_idx: np.ndarray, batch_size: int, drop_last=True) -> np.ndarray:
|
548 |
+
"""Generate batches of data for a specified batch size from sample indices. If the dataset size is not divisible by
|
549 |
+
the batch size and `drop_last` is `True`, the last incomplete batch is dropped. Else, it is returned."""
|
550 |
+
num_samples = len(samples_idx)
|
551 |
+
if drop_last:
|
552 |
+
samples_to_remove = num_samples % batch_size
|
553 |
+
if samples_to_remove != 0:
|
554 |
+
samples_idx = samples_idx[:-samples_to_remove]
|
555 |
+
sections_split = num_samples // batch_size
|
556 |
+
samples_idx = samples_idx.reshape((sections_split, batch_size))
|
557 |
+
else:
|
558 |
+
sections_split = math.ceil(num_samples / batch_size)
|
559 |
+
samples_idx = np.array_split(samples_idx, sections_split)
|
560 |
+
return samples_idx
|
561 |
+
|
562 |
+
|
563 |
+
def write_train_metric(summary_writer, train_metrics, train_time, step):
|
564 |
+
summary_writer.scalar("train_time", train_time, step)
|
565 |
+
|
566 |
+
train_metrics = get_metrics(train_metrics)
|
567 |
+
for key, vals in train_metrics.items():
|
568 |
+
tag = f"train_{key}"
|
569 |
+
for i, val in enumerate(vals):
|
570 |
+
summary_writer.scalar(tag, val, step - len(vals) + i + 1)
|
571 |
+
|
572 |
+
|
573 |
+
def write_eval_metric(summary_writer, eval_metrics, step, pred_str=None):
|
574 |
+
for metric_name, value in eval_metrics.items():
|
575 |
+
summary_writer.scalar(f"eval_{metric_name}", value, step)
|
576 |
+
|
577 |
+
if pred_str is not None:
|
578 |
+
# write output actual predictions for debugging
|
579 |
+
summary_writer.text("eval_predictions", "\n".join(pred_str), step)
|
580 |
+
|
581 |
+
|
582 |
+
def write_wandb_log(metrics, step, prefix=None):
|
583 |
+
if jax.process_index() == 0:
|
584 |
+
log_metrics = {}
|
585 |
+
for k, v in metrics.items():
|
586 |
+
if "layer" in k:
|
587 |
+
log_metrics[f"{k}/"] = v
|
588 |
+
elif prefix is not None:
|
589 |
+
log_metrics[f"{prefix}/{k}"] = v
|
590 |
+
else:
|
591 |
+
log_metrics[k] = v
|
592 |
+
wandb.log(log_metrics, step)
|
593 |
+
|
594 |
+
|
595 |
+
def write_wandb_pred(pred_str, label_str, step, num_log=50, prefix="eval"):
|
596 |
+
if jax.process_index() == 0:
|
597 |
+
# convert str data to a wandb compatible format
|
598 |
+
str_data = [[label_str[i], pred_str[i]] for i in range(len(pred_str))]
|
599 |
+
# we'll log the first 50 predictions for each epoch
|
600 |
+
wandb.log(
|
601 |
+
{
|
602 |
+
f"{prefix}/step_{int(step / 1000)}k": wandb.Table(
|
603 |
+
columns=["label_str", "pred_str"], data=str_data[:num_log]
|
604 |
+
)
|
605 |
+
},
|
606 |
+
step,
|
607 |
+
)
|
608 |
+
|
609 |
+
|
610 |
+
def create_learning_rate_fn(
|
611 |
+
num_train_steps: int, num_warmup_steps: int, learning_rate: float
|
612 |
+
) -> Callable[[int], jnp.array]:
|
613 |
+
"""Returns a linear warmup, linear_decay learning rate function."""
|
614 |
+
warmup_fn = optax.linear_schedule(init_value=0.0, end_value=learning_rate, transition_steps=num_warmup_steps)
|
615 |
+
decay_fn = optax.linear_schedule(
|
616 |
+
init_value=learning_rate, end_value=0, transition_steps=num_train_steps - num_warmup_steps
|
617 |
+
)
|
618 |
+
schedule_fn = optax.join_schedules(schedules=[warmup_fn, decay_fn], boundaries=[num_warmup_steps])
|
619 |
+
return schedule_fn
|
620 |
+
|
621 |
+
|
622 |
+
def ctc_loss(
|
623 |
+
logits,
|
624 |
+
logits_attention_mask,
|
625 |
+
labels,
|
626 |
+
blank_id,
|
627 |
+
loss_reduction="mean",
|
628 |
+
output_emission_dict=False,
|
629 |
+
log_epsilon=-100000.0,
|
630 |
+
):
|
631 |
+
"""Computes CTC loss.
|
632 |
+
This function performs forward computation over an FSA with `N * 2` states
|
633 |
+
where `N` is the max number of labels. The states are split into two groups:
|
634 |
+
Phi states and emission states. a phi-state accepts repetition of
|
635 |
+
phi (blank)-symbols and transits to emission state when the correct label is
|
636 |
+
observed. An emission state accepts repetition of the label and transits to
|
637 |
+
the next phi states at any time (so called epsilon-transition).
|
638 |
+
Below, `B` denotes the batch size, `T` denotes the time steps in `logits`,
|
639 |
+
and `N` denotes the time steps in `labels`.
|
640 |
+
Args:
|
641 |
+
logits: (B, T, K)-array containing log-probabilities of each class.
|
642 |
+
logitpaddings: (B, T)-array. Padding indicators for `logits`.
|
643 |
+
labels: (B, N)-array containing reference integer labels.
|
644 |
+
labelpaddings: (B, N)-array. Padding indicators for `labels`. Currently,
|
645 |
+
`labels` must be right-padded, i.e. each row of `labelpaddings` must be
|
646 |
+
repetition of zeroes, followed by repetition of ones.
|
647 |
+
blank_id: Id for blank token.
|
648 |
+
loss_reduction: one of "mean", "sum", "default"
|
649 |
+
- "none": no reduction is applied.
|
650 |
+
- "mean": output loss will be divided by target lengths and then the
|
651 |
+
mean over the batch is taken.
|
652 |
+
- "sum": output loss are summed over batch
|
653 |
+
output_emission_dict: whether to output additional information about the emission probs
|
654 |
+
Returns:
|
655 |
+
A pair of `(per_seq_loss, aux)`.
|
656 |
+
per_seq_loss:
|
657 |
+
(B,)-array containing loss values for each sequence in the batch.
|
658 |
+
aux: Dictionary containing interim variables used for computing losses.
|
659 |
+
aux['logalpha_phi']: (T, B, N+1)-array. Log-forward-probabilities of each
|
660 |
+
phi-state corresponding to the n-th label.
|
661 |
+
aux['logalpha_emit']: (T, B, N)-array. Log-forward-probabilities of each
|
662 |
+
emission-state corresponding to the n-th label.
|
663 |
+
aux['logprobs_phi']: (T, B, 1)-array. Probability of the phi-symbol
|
664 |
+
corresponding to each time frame.
|
665 |
+
aux['logprobs_emit']: (T, B, N)-array. Probability of the n-th label
|
666 |
+
corresponding to each time frame.
|
667 |
+
"""
|
668 |
+
# label paddings are indicated by -100
|
669 |
+
labelpaddings = labels < 0
|
670 |
+
# logit paddings are the inverse of attention_mask
|
671 |
+
logitpaddings = ~logits_attention_mask
|
672 |
+
|
673 |
+
# Copied from https://github.com/tensorflow/lingvo/blob/master/lingvo/jax/layers/ctc_objectives.py
|
674 |
+
batchsize, unused_maxinputlen, num_classes = logits.shape
|
675 |
+
batchsize_, maxlabellen = labels.shape
|
676 |
+
|
677 |
+
logprobs = jax.nn.log_softmax(logits)
|
678 |
+
labellens = maxlabellen - jnp.sum(labelpaddings, axis=1).astype(jnp.int32)
|
679 |
+
|
680 |
+
# repeat[b, n] == 1.0 when label[b, n] == label[b, n+1].
|
681 |
+
repeat = (labels[:, :-1] == labels[:, 1:]).astype(jnp.float32)
|
682 |
+
repeat = jnp.pad(repeat, ((0, 0), (0, 1)))
|
683 |
+
|
684 |
+
logprobs_phi = logprobs[:, :, blank_id : blank_id + 1] # [B, T, 1]
|
685 |
+
logprobs_phi = jnp.transpose(logprobs_phi, (1, 0, 2)) # [T, B, 1]
|
686 |
+
|
687 |
+
one_hot = jax.nn.one_hot(labels, num_classes=num_classes) # [B, N, K]
|
688 |
+
logprobs_emit = jnp.einsum("btk,bnk->btn", logprobs, one_hot)
|
689 |
+
logprobs_emit = jnp.transpose(logprobs_emit, (1, 0, 2)) # [T, B, N]
|
690 |
+
|
691 |
+
logalpha_phi_init = jnp.ones((batchsize, maxlabellen + 1)) * log_epsilon # [B, N]
|
692 |
+
logalpha_phi_init = logalpha_phi_init.at[:, 0].set(0.0)
|
693 |
+
logalpha_emit_init = jnp.ones((batchsize, maxlabellen)) * log_epsilon # [B, N]
|
694 |
+
|
695 |
+
def loop_body(prev, x):
|
696 |
+
prev_phi, prev_emit = prev
|
697 |
+
# emit-to-phi epsilon transition, except if the next label is repetition
|
698 |
+
prev_phi_orig = prev_phi
|
699 |
+
prev_phi = prev_phi.at[:, 1:].set(jnp.logaddexp(prev_phi[:, 1:], prev_emit + log_epsilon * repeat))
|
700 |
+
|
701 |
+
logprob_emit, logprob_phi, pad = x
|
702 |
+
|
703 |
+
# phi-to-emit transition
|
704 |
+
next_emit = jnp.logaddexp(prev_phi[:, :-1] + logprob_emit, prev_emit + logprob_emit)
|
705 |
+
# self-loop transition
|
706 |
+
next_phi = prev_phi + logprob_phi
|
707 |
+
# emit-to-phi blank transition only when the next label is repetition
|
708 |
+
next_phi = next_phi.at[:, 1:].set(
|
709 |
+
jnp.logaddexp(next_phi[:, 1:], prev_emit + logprob_phi + log_epsilon * (1.0 - repeat))
|
710 |
+
)
|
711 |
+
|
712 |
+
pad = pad.reshape((batchsize, 1))
|
713 |
+
next_emit = pad * prev_emit + (1.0 - pad) * next_emit
|
714 |
+
next_phi = pad * prev_phi_orig + (1.0 - pad) * next_phi
|
715 |
+
|
716 |
+
return (next_phi, next_emit), (next_phi, next_emit)
|
717 |
+
|
718 |
+
xs = (logprobs_emit, logprobs_phi, logitpaddings.transpose((1, 0)))
|
719 |
+
_, (logalpha_phi, logalpha_emit) = jax.lax.scan(loop_body, (logalpha_phi_init, logalpha_emit_init), xs)
|
720 |
+
|
721 |
+
# last row needs to be updated with the last epsilon transition
|
722 |
+
logalpha_phi_last = logalpha_phi[-1].at[:, 1:].set(jnp.logaddexp(logalpha_phi[-1, :, 1:], logalpha_emit[-1]))
|
723 |
+
logalpha_phi = logalpha_phi.at[-1].set(logalpha_phi_last)
|
724 |
+
|
725 |
+
# extract per_seq_loss
|
726 |
+
one_hot = jax.nn.one_hot(labellens, num_classes=maxlabellen + 1) # [B, N+1]
|
727 |
+
per_seq_loss = -jnp.einsum("bn,bn->b", logalpha_phi_last, one_hot)
|
728 |
+
|
729 |
+
if loss_reduction == "mean":
|
730 |
+
target_lengths = labelpaddings.shape[-1] - labelpaddings.sum(axis=-1)
|
731 |
+
loss = (per_seq_loss / target_lengths).mean()
|
732 |
+
elif loss_reduction == "sum":
|
733 |
+
loss = per_seq_loss.sum()
|
734 |
+
else:
|
735 |
+
loss = per_seq_loss
|
736 |
+
|
737 |
+
if not output_emission_dict:
|
738 |
+
return loss
|
739 |
+
|
740 |
+
return loss, {
|
741 |
+
"logalpha_phi": logalpha_phi,
|
742 |
+
"logalpha_emit": logalpha_emit,
|
743 |
+
"logprobs_phi": logprobs_phi,
|
744 |
+
"logprobs_emit": logprobs_emit,
|
745 |
+
}
|
746 |
+
|
747 |
+
|
748 |
+
def make_dataset(data_args, seed=42):
|
749 |
+
# Pre-processing dataset
|
750 |
+
import re
|
751 |
+
|
752 |
+
def map_nst(entry):
|
753 |
+
text = entry["text"].lower()
|
754 |
+
text = text.replace("(...vær stille under dette opptaket...)", "")
|
755 |
+
text = re.sub('[áàâ]', 'a', text)
|
756 |
+
text = re.sub('[ä]', 'æ', text)
|
757 |
+
text = re.sub('[éèëê]', 'e', text)
|
758 |
+
text = re.sub('[íìïî]', 'i', text)
|
759 |
+
text = re.sub('[óòöô]', 'o', text)
|
760 |
+
text = re.sub('[ö]', 'ø', text)
|
761 |
+
text = re.sub('[ç]', 'c', text)
|
762 |
+
text = re.sub('[úùüû]', 'u', text)
|
763 |
+
# text = re.sub('\\(?=(Punktum|Komma|Utropstegn|Spørsmålstegn))', ' ', text)
|
764 |
+
text = re.sub('\s+', ' ', text)
|
765 |
+
return {"text": text}
|
766 |
+
|
767 |
+
def filter_nst(entry):
|
768 |
+
if not ((len(entry["text"]) <= len(entry["audio"]["array"]) // 320) and (len(entry["text"].strip()) >= 3)):
|
769 |
+
return False # Too short
|
770 |
+
if re.match(entry["type"], "pIW|CA"):
|
771 |
+
return False # Spelling out words
|
772 |
+
return True
|
773 |
+
|
774 |
+
def filter_npsc(entry):
|
775 |
+
# False if there are digits in the text
|
776 |
+
if not ((len(entry["text"]) <= len(entry["audio"]["array"]) // 320) and (len(entry["text"].strip()) >= 3)):
|
777 |
+
return False # Too short
|
778 |
+
if re.search("\d", entry["text"]):
|
779 |
+
return False
|
780 |
+
return True
|
781 |
+
|
782 |
+
def map_npsc(entry):
|
783 |
+
batch = {"text": entry["text"].lower()}
|
784 |
+
batch["text"] = re.sub('[áàâ]', 'a', batch["text"])
|
785 |
+
batch["text"] = re.sub('[ä]', 'æ', batch["text"])
|
786 |
+
batch["text"] = re.sub('[éèëê]', 'e', batch["text"])
|
787 |
+
batch["text"] = re.sub('[íìïî]', 'i', batch["text"])
|
788 |
+
batch["text"] = re.sub('[óòöô]', 'o', batch["text"])
|
789 |
+
batch["text"] = re.sub('[ö]', 'ø', batch["text"])
|
790 |
+
batch["text"] = re.sub('[ç]', 'c', batch["text"])
|
791 |
+
batch["text"] = re.sub('[úùüû]', 'u', batch["text"])
|
792 |
+
batch["text"] = re.sub('\s', ' ', batch["text"])
|
793 |
+
batch["text"] = re.sub('<ee>', 'eee', batch["text"])
|
794 |
+
batch["text"] = re.sub('<qq>', 'qqq', batch["text"])
|
795 |
+
batch["text"] = re.sub('<mm>', 'mmm', batch["text"])
|
796 |
+
batch["text"] = re.sub('<inaudible>', 'xxx', batch["text"])
|
797 |
+
# batch["text"] = re.sub('<inaudible>', '?', batch["text"])
|
798 |
+
if "<" in batch["text"]:
|
799 |
+
raise ValueError(batch["text"])
|
800 |
+
return batch
|
801 |
+
|
802 |
+
nst = datasets.load_dataset("NbAiLab/NST", "no-close")
|
803 |
+
npsc = datasets.load_dataset("NbAiLab/NPSC", "16K_mp3")
|
804 |
+
# TODO NST_hesitate
|
805 |
+
|
806 |
+
split = len(npsc[data_args.train_split_name]) / (len(npsc[data_args.train_split_name]) + len(npsc[data_args.eval_split_name])) # Use same train/val ratio as NPSC
|
807 |
+
nst_train = nst[data_args.train_split_name].train_test_split(train_size=split, seed=seed)
|
808 |
+
nst[data_args.train_split_name] = nst_train["train"]
|
809 |
+
nst[data_args.eval_split_name] = nst_train["test"]
|
810 |
+
|
811 |
+
nst = nst.filter(filter_nst).map(
|
812 |
+
map_nst,
|
813 |
+
num_proc=data_args.preprocessing_num_workers,
|
814 |
+
desc="filtering NST",
|
815 |
+
).shuffle(seed=seed)
|
816 |
+
npsc = npsc.filter(filter_npsc).map(
|
817 |
+
map_npsc,
|
818 |
+
num_proc=data_args.preprocessing_num_workers,
|
819 |
+
desc="filtering NPSC",
|
820 |
+
).shuffle(seed=seed)
|
821 |
+
|
822 |
+
npsc_base = npsc.remove_columns([col for col in npsc[data_args.train_split_name].column_names if col not in ["text", "audio"]])
|
823 |
+
nst_base = nst.remove_columns([col for col in nst[data_args.train_split_name].column_names if col not in ["text", "audio"]])
|
824 |
+
|
825 |
+
combined = {}
|
826 |
+
for split in data_args.train_split_name, data_args.eval_split_name, data_args.test_split_name:
|
827 |
+
probs = np.array([len(nst_base[split]), len(npsc_base[split])]) # Weight by number of examples
|
828 |
+
probs = (probs / probs.sum()).tolist()
|
829 |
+
comb = datasets.interleave_datasets([nst_base[split], npsc_base[split]], probabilities=probs, seed=seed)
|
830 |
+
combined[split] = comb
|
831 |
+
|
832 |
+
return datasets.DatasetDict(**combined)
|
833 |
+
|
834 |
+
def main():
|
835 |
+
# 1. Parse input arguments
|
836 |
+
# See all possible arguments in src/transformers/training_args.py
|
837 |
+
# or by passing the --help flag to this script.
|
838 |
+
# We now keep distinct sets of args, for a cleaner separation of concerns.
|
839 |
+
parser = HfArgumentParser((ModelArguments, DataTrainingArguments, FlaxTrainingArguments))
|
840 |
+
|
841 |
+
if len(sys.argv) == 2 and sys.argv[1].endswith(".json"):
|
842 |
+
# If we pass only one argument to the script and it's the path to a json file,
|
843 |
+
# let's parse it to get our arguments.
|
844 |
+
model_args, data_args, training_args = parser.parse_json_file(json_file=os.path.abspath(sys.argv[1]))
|
845 |
+
else:
|
846 |
+
model_args, data_args, training_args = parser.parse_args_into_dataclasses()
|
847 |
+
|
848 |
+
# 2. Setup logging
|
849 |
+
# Make one log on every process with the configuration for debugging.
|
850 |
+
logging.basicConfig(
|
851 |
+
format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
|
852 |
+
datefmt="%m/%d/%Y %H:%M:%S",
|
853 |
+
handlers=[logging.StreamHandler(sys.stdout)],
|
854 |
+
)
|
855 |
+
# Set the verbosity to info of the Transformers logger.
|
856 |
+
# We only want one process per machine to log things on the screen.
|
857 |
+
logger.setLevel(logging.INFO if jax.process_index() == 0 else logging.ERROR)
|
858 |
+
if jax.process_index() == 0:
|
859 |
+
datasets.utils.logging.set_verbosity_warning()
|
860 |
+
transformers.utils.logging.set_verbosity_info()
|
861 |
+
else:
|
862 |
+
datasets.utils.logging.set_verbosity_error()
|
863 |
+
transformers.utils.logging.set_verbosity_error()
|
864 |
+
|
865 |
+
# Set up wandb run
|
866 |
+
if jax.process_index() == 0:
|
867 |
+
wandb.init(project=data_args.wandb_project, name=data_args.wandb_name, job_type=data_args.wandb_job_type)
|
868 |
+
|
869 |
+
logger.info("Training/evaluation parameters %s", training_args)
|
870 |
+
|
871 |
+
# Set the default TPU matmul precision and display the number of devices
|
872 |
+
jax.config.update("jax_default_matmul_precision", training_args.matmul_precision)
|
873 |
+
logger.info(f"JAX devices: {jax.device_count()}, matmul precision: {training_args.matmul_precision}")
|
874 |
+
|
875 |
+
# 4. Load dataset
|
876 |
+
|
877 |
+
set_seed(training_args.seed)
|
878 |
+
raw_datasets = make_dataset(data_args, seed=training_args.seed)
|
879 |
+
|
880 |
+
# raw_datasets = DatasetDict()
|
881 |
+
|
882 |
+
# if training_args.do_train:
|
883 |
+
# raw_datasets[data_args.train_split_name] = load_dataset(
|
884 |
+
# data_args.dataset_name,
|
885 |
+
# data_args.dataset_config_name,
|
886 |
+
# split=data_args.train_split_name,
|
887 |
+
# cache_dir=data_args.dataset_cache_dir,
|
888 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
889 |
+
# )
|
890 |
+
|
891 |
+
# if training_args.do_eval:
|
892 |
+
# raw_datasets[data_args.eval_split_name] = load_dataset(
|
893 |
+
# data_args.dataset_name,
|
894 |
+
# data_args.dataset_config_name,
|
895 |
+
# split=data_args.eval_split_name,
|
896 |
+
# cache_dir=data_args.dataset_cache_dir,
|
897 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
898 |
+
# )
|
899 |
+
|
900 |
+
# if training_args.do_predict:
|
901 |
+
# test_split = data_args.test_split_name.split("+")
|
902 |
+
# for split in test_split:
|
903 |
+
# raw_datasets[split] = load_dataset(
|
904 |
+
# data_args.dataset_name,
|
905 |
+
# data_args.dataset_config_name,
|
906 |
+
# split=split,
|
907 |
+
# cache_dir=data_args.dataset_cache_dir,
|
908 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
909 |
+
# )
|
910 |
+
|
911 |
+
if not training_args.do_train and not training_args.do_eval and not training_args.do_predict:
|
912 |
+
raise ValueError(
|
913 |
+
"Cannot not train, not do evaluation and not do prediction. At least one of "
|
914 |
+
"training, evaluation or prediction has to be done."
|
915 |
+
)
|
916 |
+
|
917 |
+
# if not training, there is no need to run multiple epochs
|
918 |
+
if not training_args.do_train:
|
919 |
+
training_args.num_train_epochs = 1
|
920 |
+
|
921 |
+
if data_args.audio_column_name not in next(iter(raw_datasets.values())).column_names:
|
922 |
+
raise ValueError(
|
923 |
+
f"--audio_column_name '{data_args.audio_column_name}' not found in dataset '{data_args.dataset_name}'. "
|
924 |
+
"Make sure to set `--audio_column_name` to the correct audio column - one of "
|
925 |
+
f"{', '.join(next(iter(raw_datasets.values())).column_names)}."
|
926 |
+
)
|
927 |
+
|
928 |
+
if data_args.text_column_name not in next(iter(raw_datasets.values())).column_names:
|
929 |
+
raise ValueError(
|
930 |
+
f"--text_column_name {data_args.text_column_name} not found in dataset '{data_args.dataset_name}'. "
|
931 |
+
"Make sure to set `--text_column_name` to the correct text column - one of "
|
932 |
+
f"{', '.join(next(iter(raw_datasets.values())).column_names)}."
|
933 |
+
)
|
934 |
+
|
935 |
+
# 5. Load pretrained model, tokenizer, and feature extractor
|
936 |
+
#
|
937 |
+
# Distributed training:
|
938 |
+
# The .from_pretrained methods guarantee that only one local process can concurrently
|
939 |
+
config = Wav2Vec2Config.from_pretrained(
|
940 |
+
model_args.config_name if model_args.config_name else model_args.model_name_or_path,
|
941 |
+
cache_dir=model_args.cache_dir,
|
942 |
+
revision=model_args.model_revision,
|
943 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
944 |
+
)
|
945 |
+
feature_extractor = AutoFeatureExtractor.from_pretrained(
|
946 |
+
model_args.feature_extractor_name if model_args.feature_extractor_name else model_args.model_name_or_path,
|
947 |
+
cache_dir=model_args.cache_dir,
|
948 |
+
revision=model_args.model_revision,
|
949 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
950 |
+
)
|
951 |
+
tokenizer = AutoTokenizer.from_pretrained(
|
952 |
+
model_args.tokenizer_name if model_args.tokenizer_name else model_args.model_name_or_path,
|
953 |
+
cache_dir=model_args.cache_dir,
|
954 |
+
revision=model_args.model_revision,
|
955 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
956 |
+
)
|
957 |
+
# update config according to training args, model args, and tokenizer attributes
|
958 |
+
config.update(
|
959 |
+
{
|
960 |
+
"feat_proj_dropout": model_args.feat_proj_dropout,
|
961 |
+
"attention_dropout": model_args.attention_dropout,
|
962 |
+
"hidden_dropout": model_args.hidden_dropout,
|
963 |
+
"final_dropout": model_args.final_dropout,
|
964 |
+
"mask_time_prob": model_args.mask_time_prob,
|
965 |
+
"mask_time_length": model_args.mask_time_length,
|
966 |
+
"mask_feature_prob": model_args.mask_feature_prob,
|
967 |
+
"mask_feature_length": model_args.mask_feature_length,
|
968 |
+
"gradient_checkpointing": training_args.gradient_checkpointing,
|
969 |
+
"layerdrop": model_args.layerdrop,
|
970 |
+
"ctc_loss_reduction": model_args.ctc_loss_reduction,
|
971 |
+
"ctc_zero_infinity": model_args.ctc_zero_infinity,
|
972 |
+
"pad_token_id": tokenizer.pad_token_id,
|
973 |
+
"vocab_size": tokenizer.vocab_size, # len(tokenizer),
|
974 |
+
"activation_dropout": model_args.activation_dropout,
|
975 |
+
}
|
976 |
+
)
|
977 |
+
|
978 |
+
if tokenizer.do_lower_case and data_args.dataset_name != "librispeech_asr":
|
979 |
+
raise ValueError(
|
980 |
+
"Setting the tokenizer attribute `do_lower_case` to `True` converts all input strings to "
|
981 |
+
"uppercase prior to tokenization. This should only be done when the tokenizer is built on an uppercased corpus,"
|
982 |
+
"i.e. for the dataset `librispeech_asr` only. If your dataset is not `librispeech_asr`, the tokenizer is mostly likely "
|
983 |
+
"built on an lowercased corpus. In this case, set `tokenizer.do_lower_case` to ``False`."
|
984 |
+
)
|
985 |
+
|
986 |
+
if training_args.precision == "full_mixed":
|
987 |
+
dtype = jnp.bfloat16
|
988 |
+
training_args.mixed_precision = True
|
989 |
+
elif training_args.precision == "half_mixed":
|
990 |
+
dtype = jnp.bfloat16
|
991 |
+
training_args.mixed_precision = False
|
992 |
+
else:
|
993 |
+
dtype = jnp.float32
|
994 |
+
training_args.mixed_precision = False
|
995 |
+
|
996 |
+
model = FlaxWav2Vec2ForCTC.from_pretrained(
|
997 |
+
model_args.model_name_or_path,
|
998 |
+
config=config,
|
999 |
+
dtype=dtype,
|
1000 |
+
cache_dir=model_args.cache_dir,
|
1001 |
+
revision=model_args.model_revision,
|
1002 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
1003 |
+
from_pt=True,
|
1004 |
+
)
|
1005 |
+
|
1006 |
+
# 6. Resample speech dataset ALWAYS
|
1007 |
+
raw_datasets = raw_datasets.cast_column(
|
1008 |
+
data_args.audio_column_name, datasets.features.Audio(sampling_rate=feature_extractor.sampling_rate)
|
1009 |
+
)
|
1010 |
+
|
1011 |
+
# 7. Preprocessing the datasets.
|
1012 |
+
# We need to read the audio files as arrays and tokenize the targets.
|
1013 |
+
max_input_length = int(data_args.max_duration_in_seconds * feature_extractor.sampling_rate)
|
1014 |
+
min_input_length = int(data_args.min_duration_in_seconds * feature_extractor.sampling_rate)
|
1015 |
+
max_target_length = data_args.max_label_length
|
1016 |
+
min_target_length = data_args.min_label_length
|
1017 |
+
pad_input_to_multiple_of = data_args.pad_input_to_multiple_of
|
1018 |
+
audio_column_name = data_args.audio_column_name
|
1019 |
+
num_workers = data_args.preprocessing_num_workers
|
1020 |
+
text_column_name = data_args.text_column_name
|
1021 |
+
model_input_name = feature_extractor.model_input_names[0]
|
1022 |
+
do_lower_case = data_args.do_lower_case
|
1023 |
+
dataset_name = data_args.dataset_name
|
1024 |
+
chars_to_ignore = ', ? . ! - ; : " “ % ‘ ” ?'.split(" ")
|
1025 |
+
chars_to_ignore_regex = f'[{"".join(chars_to_ignore)}]'
|
1026 |
+
# gigaspeech_punctuation = {" <comma>": ",", " <period>": ".", " <questionmark>": "?", " <exclamationpoint>": "!"}
|
1027 |
+
# gigaspeech_disfluencies = ["<other>", "<sil>"]
|
1028 |
+
# swb_disfluencies = ["[noise]", "[laughter]", "[silence]", "<a_aside>", "<b_aside>", "<e_aside>", "[laughter-",
|
1029 |
+
# "[vocalized-noise]", "_1"]
|
1030 |
+
# swb_punctuations = ["{", "}", "[", "]-", "]"]
|
1031 |
+
# earnings_disfluencies = ["<crosstalk>", "<affirmative>", "<inaudible>", "inaudible", "<laugh>", "<unk>"]
|
1032 |
+
ignore_segments = ["ignore_time_segment_in_scoring", "<noise>", "<music>", "[noise]", "[laughter]", "[silence]",
|
1033 |
+
"[vocalized-noise]", "<crosstalk>", "<affirmative>", "<inaudible>", "<laugh>", "<other>", "<sil>", ""]
|
1034 |
+
|
1035 |
+
if training_args.do_train and data_args.max_train_samples is not None:
|
1036 |
+
raw_datasets[data_args.train_split_name] = raw_datasets[data_args.train_split_name].select(range(data_args.max_train_samples))
|
1037 |
+
|
1038 |
+
if training_args.do_eval and data_args.max_eval_samples is not None:
|
1039 |
+
raw_datasets[data_args.eval_split_name] = raw_datasets[data_args.eval_split_name].select(range(data_args.max_eval_samples))
|
1040 |
+
|
1041 |
+
if training_args.do_predict and data_args.max_test_samples is not None:
|
1042 |
+
raw_datasets[data_args.test_split_name] = raw_datasets[data_args.test_split_name].select(range(data_args.max_eval_samples))
|
1043 |
+
|
1044 |
+
if training_args.do_train and data_args.remove_punctuation:
|
1045 |
+
|
1046 |
+
def remove_punctuation(batch):
|
1047 |
+
batch[text_column_name] = (
|
1048 |
+
re.sub(chars_to_ignore_regex, "", batch[text_column_name]).replace("'", "").replace('"', "")
|
1049 |
+
)
|
1050 |
+
|
1051 |
+
raw_datasets[data_args.train_split_name] = raw_datasets[data_args.train_split_name].map(
|
1052 |
+
remove_punctuation,
|
1053 |
+
num_proc=data_args.preprocessing_num_workers,
|
1054 |
+
desc="removing punctuation from train split",
|
1055 |
+
)
|
1056 |
+
|
1057 |
+
# filter data where the targets are ignored in scoring
|
1058 |
+
def is_target_labels(input_str):
|
1059 |
+
return input_str.lower() not in ignore_segments
|
1060 |
+
|
1061 |
+
raw_datasets = raw_datasets.filter(
|
1062 |
+
is_target_labels,
|
1063 |
+
num_proc=num_workers,
|
1064 |
+
input_columns=[text_column_name],
|
1065 |
+
desc="filtering data where the targets are ignored in scoring",
|
1066 |
+
)
|
1067 |
+
|
1068 |
+
def prepare_dataset(batch):
|
1069 |
+
# process audio
|
1070 |
+
try:
|
1071 |
+
sample = batch[audio_column_name]
|
1072 |
+
except ValueError:
|
1073 |
+
sample = {"array": np.array([0.]), "sampling_rate": feature_extractor.sampling_rate}
|
1074 |
+
inputs = feature_extractor(sample["array"], sampling_rate=sample["sampling_rate"])
|
1075 |
+
# process audio length
|
1076 |
+
batch[model_input_name] = inputs.input_values[0]
|
1077 |
+
batch["input_length"] = len(batch["input_values"])
|
1078 |
+
|
1079 |
+
# process targets
|
1080 |
+
input_str = batch[text_column_name].lower() if do_lower_case else batch[text_column_name]
|
1081 |
+
|
1082 |
+
# if dataset_name == "google/xtreme_s":
|
1083 |
+
# # Finally, we tokenize the processed text
|
1084 |
+
# batch["labels"] = tokenizer(input_str).input_ids
|
1085 |
+
# batch["labels_length"] = len(batch["labels"])
|
1086 |
+
# return batch
|
1087 |
+
|
1088 |
+
# # Common Voice 9
|
1089 |
+
# if input_str.startswith('"') and input_str.endswith('"'):
|
1090 |
+
# # we can remove trailing quotation marks as they do not affect the transcription
|
1091 |
+
# input_str = input_str[1:-1]
|
1092 |
+
# # normalize quotation marks
|
1093 |
+
# input_str = re.sub(r'["“”]', '"', input_str)
|
1094 |
+
# # normalize apostrophes
|
1095 |
+
# input_str = re.sub(r"[’']", "'", input_str)
|
1096 |
+
# # normalize hyphens
|
1097 |
+
# input_str = re.sub(r"[—–]", "-", input_str)
|
1098 |
+
# # replace double quotation marks with single
|
1099 |
+
# input_str = input_str.replace('""', '"')
|
1100 |
+
# if dataset_name == "mozilla-foundation/common_voice_9_0" and len(input_str):
|
1101 |
+
# # for CV9, we'll normalize the text to always finish with punctuation
|
1102 |
+
# if input_str[-1] not in [".", "?", "!"]:
|
1103 |
+
# input_str = input_str + "."
|
1104 |
+
|
1105 |
+
# # TEDLIUM-3
|
1106 |
+
# # delete the <unk> token from the text and replace spaced apostrophes with un-spaced
|
1107 |
+
# input_str = input_str.replace("<unk>", "").replace(" '", "'")
|
1108 |
+
|
1109 |
+
# # GigaSpeech
|
1110 |
+
# for disfluency in gigaspeech_disfluencies:
|
1111 |
+
# input_str = input_str.replace(disfluency, "")
|
1112 |
+
# # convert spelled out punctuation to symbolic form
|
1113 |
+
# for punctuation, replacement in gigaspeech_punctuation.items():
|
1114 |
+
# input_str = input_str.replace(punctuation, replacement)
|
1115 |
+
# if dataset_name == "speechcolab/gigaspeech" and len(input_str):
|
1116 |
+
# # for GS, we'll normalize the text to always finish with punctuation
|
1117 |
+
# if input_str[-1] not in [".", "?", "!"]:
|
1118 |
+
# input_str = input_str + "."
|
1119 |
+
|
1120 |
+
# # SWB
|
1121 |
+
# for disfluency in swb_disfluencies:
|
1122 |
+
# input_str = input_str.replace(disfluency, "")
|
1123 |
+
# # remove parenthesised text (test data only)
|
1124 |
+
# input_str = re.sub("[\(].*?[\)]", "", input_str)
|
1125 |
+
# for punctuation in swb_punctuations:
|
1126 |
+
# input_str = input_str.replace(punctuation, "")
|
1127 |
+
# # replace anomalous words with their correct transcriptions
|
1128 |
+
# split_str = input_str.split("/")
|
1129 |
+
# if len(split_str) > 1:
|
1130 |
+
# input_str = " ".join(
|
1131 |
+
# [" ".join([" ".join(i.split(" ")[:-1]) for i in split_str])] + [split_str[-1].split(" ")[-1]])
|
1132 |
+
|
1133 |
+
# # Earnings 22
|
1134 |
+
# for disfluency in earnings_disfluencies:
|
1135 |
+
# input_str = input_str.replace(disfluency, "")
|
1136 |
+
# # replace mal-formatted ellipsis
|
1137 |
+
# input_str = input_str.replace("…", ".")
|
1138 |
+
|
1139 |
+
# JIWER compliance
|
1140 |
+
# remove multiple spaces
|
1141 |
+
input_str = re.sub(r"\s\s+", " ", input_str)
|
1142 |
+
# strip trailing spaces
|
1143 |
+
input_str = input_str.strip()
|
1144 |
+
|
1145 |
+
# Finally, we tokenize the processed text
|
1146 |
+
batch["labels"] = tokenizer(input_str).input_ids
|
1147 |
+
batch["labels_length"] = len(batch["labels"])
|
1148 |
+
return batch
|
1149 |
+
|
1150 |
+
vectorized_datasets = raw_datasets.map(
|
1151 |
+
prepare_dataset,
|
1152 |
+
remove_columns=next(iter(raw_datasets.values())).column_names,
|
1153 |
+
num_proc=num_workers,
|
1154 |
+
desc="preprocess dataset",
|
1155 |
+
)
|
1156 |
+
|
1157 |
+
# filter data with inputs shorter than min_input_length or longer than max_input_length
|
1158 |
+
def is_audio_in_length_range(length):
|
1159 |
+
return length > min_input_length and length < max_input_length
|
1160 |
+
|
1161 |
+
vectorized_datasets = vectorized_datasets.filter(
|
1162 |
+
is_audio_in_length_range,
|
1163 |
+
num_proc=num_workers,
|
1164 |
+
input_columns=["input_length"],
|
1165 |
+
)
|
1166 |
+
|
1167 |
+
# filter data with targets shorter than min_target_length or longer than max_target_length
|
1168 |
+
def is_labels_in_length_range(length):
|
1169 |
+
return length > min_target_length # and length < max_target_length
|
1170 |
+
|
1171 |
+
vectorized_datasets = vectorized_datasets.filter(
|
1172 |
+
is_labels_in_length_range,
|
1173 |
+
num_proc=num_workers,
|
1174 |
+
input_columns=["labels_length"],
|
1175 |
+
)
|
1176 |
+
|
1177 |
+
# for large datasets it is advised to run the preprocessing on a
|
1178 |
+
# single machine first with `args.preprocessing_only` since there will mostly likely
|
1179 |
+
# be a timeout when running the script in distributed mode.
|
1180 |
+
# In a second step `args.preprocessing_only` can then be set to `False` to load the
|
1181 |
+
# cached dataset
|
1182 |
+
if data_args.preprocessing_only:
|
1183 |
+
cache = {k: v.cache_files for k, v in vectorized_datasets.items()}
|
1184 |
+
logger.info(f"Data preprocessing finished. Files cached at {cache}.")
|
1185 |
+
return
|
1186 |
+
|
1187 |
+
# 8. Load Metrics
|
1188 |
+
wer_metric = load_metric("wer")
|
1189 |
+
cer_metric = load_metric("cer")
|
1190 |
+
|
1191 |
+
def compute_metrics(pred_ids: List[List[int]], label_ids: List[List[int]]):
|
1192 |
+
padded_ids = np.where(np.asarray(label_ids) == -100, tokenizer.pad_token_id, np.asarray(label_ids))
|
1193 |
+
|
1194 |
+
pred_str = tokenizer.batch_decode(pred_ids)
|
1195 |
+
# we do not want to group tokens when computing the metrics
|
1196 |
+
label_str = tokenizer.batch_decode(padded_ids, group_tokens=False)
|
1197 |
+
|
1198 |
+
wer = wer_metric.compute(predictions=pred_str, references=label_str)
|
1199 |
+
cer = cer_metric.compute(predictions=pred_str, references=label_str)
|
1200 |
+
|
1201 |
+
return {"wer": wer, "cer": cer}, pred_str, label_str
|
1202 |
+
|
1203 |
+
# 9. save feature extractor, tokenizer and config
|
1204 |
+
feature_extractor.save_pretrained(training_args.output_dir)
|
1205 |
+
tokenizer.save_pretrained(training_args.output_dir)
|
1206 |
+
config.save_pretrained(training_args.output_dir)
|
1207 |
+
|
1208 |
+
processor = AutoProcessor.from_pretrained(training_args.output_dir)
|
1209 |
+
|
1210 |
+
data_collator = FlaxDataCollatorSpeechSeq2SeqWithPadding(
|
1211 |
+
processor=processor,
|
1212 |
+
input_padding="longest",
|
1213 |
+
pad_input_to_multiple_of=pad_input_to_multiple_of,
|
1214 |
+
max_label_length=data_args.max_label_length,
|
1215 |
+
)
|
1216 |
+
|
1217 |
+
# Enable tensorboard only on the master node
|
1218 |
+
has_tensorboard = is_tensorboard_available()
|
1219 |
+
if has_tensorboard and jax.process_index() == 0:
|
1220 |
+
try:
|
1221 |
+
from flax.metrics.tensorboard import SummaryWriter
|
1222 |
+
|
1223 |
+
summary_writer = SummaryWriter(log_dir=Path(training_args.output_dir))
|
1224 |
+
except ImportError as ie:
|
1225 |
+
has_tensorboard = False
|
1226 |
+
logger.warning(
|
1227 |
+
f"Unable to display metrics through TensorBoard because some package are not installed: {ie}"
|
1228 |
+
)
|
1229 |
+
else:
|
1230 |
+
logger.warning(
|
1231 |
+
"Unable to display metrics through TensorBoard because the package is not installed: "
|
1232 |
+
"Please run `pip install tensorboard` to enable."
|
1233 |
+
)
|
1234 |
+
|
1235 |
+
# 10. Handle the repository creation
|
1236 |
+
if training_args.push_to_hub:
|
1237 |
+
with open(os.path.join(training_args.output_dir, ".gitattributes"), "r+") as f:
|
1238 |
+
git_lfs_extensions = f.read()
|
1239 |
+
if "*.wandb" not in git_lfs_extensions:
|
1240 |
+
f.write("*.wandb filter=lfs diff=lfs merge=lfs -text")
|
1241 |
+
if training_args.hub_model_id is None:
|
1242 |
+
repo_name = get_full_repo_name(
|
1243 |
+
Path(training_args.output_dir).absolute().name, token=training_args.hub_token
|
1244 |
+
)
|
1245 |
+
else:
|
1246 |
+
repo_name = training_args.hub_model_id
|
1247 |
+
repo = Repository(training_args.output_dir, clone_from=repo_name)
|
1248 |
+
|
1249 |
+
# 11. Initialize our training
|
1250 |
+
rng = jax.random.PRNGKey(training_args.seed)
|
1251 |
+
rng, dropout_rng = jax.random.split(rng)
|
1252 |
+
|
1253 |
+
# Store some constants
|
1254 |
+
max_steps = int(training_args.max_steps)
|
1255 |
+
gradient_accumulation_steps = int(training_args.gradient_accumulation_steps)
|
1256 |
+
train_batch_size = int(training_args.per_device_train_batch_size) * jax.device_count()
|
1257 |
+
batch_size_per_update = train_batch_size * gradient_accumulation_steps
|
1258 |
+
per_device_eval_batch_size = int(training_args.per_device_eval_batch_size)
|
1259 |
+
eval_batch_size = int(training_args.per_device_eval_batch_size) * jax.device_count()
|
1260 |
+
to_dtype = to_bf16 if training_args.mixed_precision else to_fp32
|
1261 |
+
|
1262 |
+
if training_args.do_train:
|
1263 |
+
num_train_samples = len(vectorized_datasets[data_args.train_split_name])
|
1264 |
+
steps_per_epoch = num_train_samples // batch_size_per_update
|
1265 |
+
if max_steps > 0:
|
1266 |
+
num_epochs = -(training_args.max_steps // -steps_per_epoch)
|
1267 |
+
total_train_steps = max_steps
|
1268 |
+
else:
|
1269 |
+
num_epochs = int(training_args.num_train_epochs)
|
1270 |
+
total_train_steps = steps_per_epoch * num_epochs
|
1271 |
+
|
1272 |
+
# Create learning rate schedule
|
1273 |
+
# Create learning rate schedule
|
1274 |
+
linear_decay_lr_schedule_fn = create_learning_rate_fn(
|
1275 |
+
total_train_steps,
|
1276 |
+
training_args.warmup_steps,
|
1277 |
+
training_args.learning_rate,
|
1278 |
+
)
|
1279 |
+
|
1280 |
+
# We use Optax's "masking" functionality to not apply weight decay
|
1281 |
+
# to bias and LayerNorm scale parameters. decay_mask_fn returns a
|
1282 |
+
# mask boolean with the same structure as the parameters.
|
1283 |
+
# The mask is True for parameters that should be decayed.
|
1284 |
+
# Note that this mask is specifically adapted for FlaxWav2Vec2 and FlaxBart.
|
1285 |
+
# For FlaxT5, one should correct the layer norm parameter naming
|
1286 |
+
# accordingly - see `run_t5_mlm_flax.py` e.g.
|
1287 |
+
def decay_mask_fn(params):
|
1288 |
+
flat_params = traverse_util.flatten_dict(params)
|
1289 |
+
layer_norm_params = [
|
1290 |
+
(name, "scale")
|
1291 |
+
for name in ["layer_norm", "self_attn_layer_norm", "layernorm_embedding", "final_layer_norm"]
|
1292 |
+
]
|
1293 |
+
flat_mask = {path: (path[-1] != "bias" and path[-2:] not in layer_norm_params) for path in flat_params}
|
1294 |
+
return traverse_util.unflatten_dict(flat_mask)
|
1295 |
+
|
1296 |
+
if training_args.adafactor:
|
1297 |
+
# Create Adafactor optimizer
|
1298 |
+
optim = optax.adafactor(
|
1299 |
+
learning_rate=linear_decay_lr_schedule_fn,
|
1300 |
+
dtype_momentum=jnp.bfloat16 if training_args.mixed_precision else jnp.float32,
|
1301 |
+
weight_decay_rate=training_args.weight_decay,
|
1302 |
+
weight_decay_mask=decay_mask_fn,
|
1303 |
+
)
|
1304 |
+
else:
|
1305 |
+
# Create AdamW optimizer
|
1306 |
+
optim = optax.adamw(
|
1307 |
+
learning_rate=linear_decay_lr_schedule_fn,
|
1308 |
+
b1=training_args.adam_beta1,
|
1309 |
+
b2=training_args.adam_beta2,
|
1310 |
+
eps=training_args.adam_epsilon,
|
1311 |
+
weight_decay=training_args.weight_decay,
|
1312 |
+
mask=decay_mask_fn,
|
1313 |
+
)
|
1314 |
+
|
1315 |
+
# Optax MultiSteps for gradient accumulation. We'll only call this optimizer transformation if gradient accumulation is required (i.e. gradient accumulation steps > 1)
|
1316 |
+
if training_args.multisteps and gradient_accumulation_steps > 1:
|
1317 |
+
optim = optax.MultiSteps(optim, gradient_accumulation_steps, use_grad_mean=False)
|
1318 |
+
else:
|
1319 |
+
num_epochs = 0
|
1320 |
+
total_train_steps = 0
|
1321 |
+
num_train_samples = 0
|
1322 |
+
optim = None
|
1323 |
+
|
1324 |
+
# Setup train state
|
1325 |
+
state = MixedPrecisionTrainState.create(
|
1326 |
+
apply_fn=model.__call__,
|
1327 |
+
get_attention_mask_fn=model._get_feature_vector_attention_mask,
|
1328 |
+
params=model.params,
|
1329 |
+
tx=optim,
|
1330 |
+
to_dtype=to_dtype,
|
1331 |
+
dropout_rng=dropout_rng,
|
1332 |
+
max_grad_norm=training_args.max_grad_norm,
|
1333 |
+
)
|
1334 |
+
|
1335 |
+
# Replicate the train state on each device
|
1336 |
+
state = state.replicate()
|
1337 |
+
blank_id = model.config.pad_token_id
|
1338 |
+
|
1339 |
+
# Define gradient update step fn
|
1340 |
+
def train_step(state, batch):
|
1341 |
+
# only one single rng per grad step, with or without accumulation, as the graph should be identical over one effective training batch
|
1342 |
+
dropout_rng, new_dropout_rng = jax.random.split(state.dropout_rng)
|
1343 |
+
|
1344 |
+
def compute_loss(params, minibatch):
|
1345 |
+
labels = minibatch.pop("labels")
|
1346 |
+
logits = state.apply_fn(
|
1347 |
+
**minibatch,
|
1348 |
+
params=params,
|
1349 |
+
dropout_rng=dropout_rng,
|
1350 |
+
freeze_feature_encoder=model_args.freeze_feature_encoder,
|
1351 |
+
train=True,
|
1352 |
+
)[0]
|
1353 |
+
logits_mask = state.get_attention_mask_fn(logits.shape[1], batch["attention_mask"])
|
1354 |
+
loss = ctc_loss(logits, logits_mask, labels, blank_id, loss_reduction="mean")
|
1355 |
+
|
1356 |
+
return loss
|
1357 |
+
|
1358 |
+
grad_fn = jax.value_and_grad(compute_loss)
|
1359 |
+
|
1360 |
+
if gradient_accumulation_steps == 1 or training_args.multisteps:
|
1361 |
+
loss, grad = grad_fn(to_dtype(state.params), batch)
|
1362 |
+
|
1363 |
+
# Custom gradient accumulation
|
1364 |
+
else:
|
1365 |
+
# add a first dimension over gradient_accumulation_steps for minibatch slices
|
1366 |
+
batch = jax.tree_map(
|
1367 |
+
lambda x: x.reshape(
|
1368 |
+
gradient_accumulation_steps, training_args.per_device_train_batch_size, *x.shape[1::]
|
1369 |
+
),
|
1370 |
+
batch,
|
1371 |
+
)
|
1372 |
+
|
1373 |
+
def accum_minibatch_step(accum_grad, minibatch):
|
1374 |
+
# compute loss, num labels and grad over minibatch and accumulate
|
1375 |
+
loss, grad = grad_fn(to_dtype(state.params), minibatch)
|
1376 |
+
return jax.tree_map(jnp.add, accum_grad, grad), loss
|
1377 |
+
|
1378 |
+
# create an initial state for accumulating losses, num labels and gradients
|
1379 |
+
init_grad = jax.tree_map(jnp.zeros_like, to_dtype(state.params))
|
1380 |
+
# loop accum minibatch step over the number of gradient accumulation steps
|
1381 |
+
grad, loss = jax.lax.scan(accum_minibatch_step, init_grad, batch)
|
1382 |
+
|
1383 |
+
# update state
|
1384 |
+
new_state = state.apply_gradients(
|
1385 |
+
grads=grad,
|
1386 |
+
dropout_rng=new_dropout_rng,
|
1387 |
+
to_dtype=to_dtype,
|
1388 |
+
)
|
1389 |
+
|
1390 |
+
# compute gradient norms over all layers and globally for detailed monitoring
|
1391 |
+
layer_grad_norm = jax.tree_map(jnp.linalg.norm, grad)
|
1392 |
+
logs = {
|
1393 |
+
"layer_grad_norm": layer_grad_norm,
|
1394 |
+
"grad_norm": jnp.linalg.norm(jax.tree_util.tree_leaves(layer_grad_norm)),
|
1395 |
+
}
|
1396 |
+
|
1397 |
+
# compute parameter norms over all layers and globally for detailed monitoring
|
1398 |
+
layer_param_norm = jax.tree_map(jnp.linalg.norm, new_state.params)
|
1399 |
+
logs["layer_param_norm"] = layer_param_norm
|
1400 |
+
logs["param_norm"] = jnp.linalg.norm(jax.tree_util.tree_leaves(layer_param_norm))
|
1401 |
+
|
1402 |
+
metrics = {"loss": loss, "learning_rate": linear_decay_lr_schedule_fn(state.step)}
|
1403 |
+
metrics.update(logs)
|
1404 |
+
|
1405 |
+
metrics = jax.lax.pmean(metrics, axis_name="batch")
|
1406 |
+
# metrics = to_fp32(metrics)
|
1407 |
+
|
1408 |
+
return new_state, metrics
|
1409 |
+
|
1410 |
+
# Define eval fn
|
1411 |
+
def eval_step(params, batch):
|
1412 |
+
labels = batch.pop("labels")
|
1413 |
+
logits = model(**batch, params=params, train=False)[0]
|
1414 |
+
|
1415 |
+
logits_mask = model._get_feature_vector_attention_mask(logits.shape[1], batch["attention_mask"])
|
1416 |
+
loss = ctc_loss(logits, logits_mask, labels, blank_id, loss_reduction="mean")
|
1417 |
+
|
1418 |
+
pred_ids = jnp.argmax(logits, axis=-1)
|
1419 |
+
|
1420 |
+
# summarize metrics
|
1421 |
+
metrics = {"loss": loss}
|
1422 |
+
metrics = jax.lax.pmean(metrics, axis_name="batch")
|
1423 |
+
# metrics = to_fp32(metrics)
|
1424 |
+
return metrics, pred_ids
|
1425 |
+
|
1426 |
+
# Create parallel version of the train and eval step
|
1427 |
+
if training_args.do_train:
|
1428 |
+
p_train_step = jax.pmap(train_step, "batch", donate_argnums=(0,))
|
1429 |
+
|
1430 |
+
if training_args.do_eval:
|
1431 |
+
p_eval_step = jax.pmap(eval_step, "batch")
|
1432 |
+
|
1433 |
+
def run_evaluation(step):
|
1434 |
+
if training_args.do_eval:
|
1435 |
+
# ======================== Evaluating ==============================
|
1436 |
+
eval_metrics = []
|
1437 |
+
eval_preds = []
|
1438 |
+
eval_labels = []
|
1439 |
+
|
1440 |
+
# Generate eval set by sequentially sampling indices from the eval dataset and grouping by length
|
1441 |
+
eval_samples_idx = get_grouped_indices(vectorized_datasets[data_args.eval_split_name], eval_batch_size)
|
1442 |
+
eval_batch_idx = generate_batch_splits(eval_samples_idx, eval_batch_size, drop_last=False)
|
1443 |
+
|
1444 |
+
for i, batch_idx in enumerate(tqdm(eval_batch_idx, desc="Evaluating ...", position=2)):
|
1445 |
+
samples = [vectorized_datasets[data_args.eval_split_name][int(idx)] for idx in batch_idx]
|
1446 |
+
batch = data_collator(samples)
|
1447 |
+
labels = batch["labels"]
|
1448 |
+
|
1449 |
+
metrics, pred_ids = pad_shard_unpad(p_eval_step)(state.params, batch.data, min_device_batch=per_device_eval_batch_size)
|
1450 |
+
eval_preds.extend(jax.device_get(pred_ids.reshape(-1, pred_ids.shape[-1])))
|
1451 |
+
eval_metrics.append(metrics)
|
1452 |
+
|
1453 |
+
eval_labels.extend(labels)
|
1454 |
+
|
1455 |
+
# normalize eval metrics
|
1456 |
+
eval_metrics = get_metrics(eval_metrics)
|
1457 |
+
eval_metrics = jax.tree_map(jnp.mean, eval_metrics)
|
1458 |
+
eval_metrics = to_fp32(eval_metrics)
|
1459 |
+
|
1460 |
+
# always run compute metrics
|
1461 |
+
error_rate_metric, pred_str, label_str = compute_metrics(eval_preds, eval_labels)
|
1462 |
+
eval_metrics.update(error_rate_metric)
|
1463 |
+
error_rate_desc = " ".join([f"Eval {key}: {value} |" for key, value in error_rate_metric.items()])
|
1464 |
+
|
1465 |
+
# Print metrics and update progress bar
|
1466 |
+
desc = f"Step... ({step}/{total_train_steps} | Eval Loss: {eval_metrics['loss']} | {error_rate_desc})"
|
1467 |
+
epochs.write(desc)
|
1468 |
+
epochs.desc = desc
|
1469 |
+
|
1470 |
+
# Save metrics
|
1471 |
+
write_wandb_log(eval_metrics, step, prefix="eval")
|
1472 |
+
write_wandb_pred(pred_str, label_str, step)
|
1473 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1474 |
+
# write_eval_metric(summary_writer, eval_metrics, step, pred_str=pred_str)
|
1475 |
+
|
1476 |
+
def save_checkpoint(step):
|
1477 |
+
# save and push checkpoint to the hub
|
1478 |
+
if jax.process_index() == 0:
|
1479 |
+
params = jax.device_get(jax.tree_map(lambda x: x[0], state.params))
|
1480 |
+
model.save_pretrained(training_args.output_dir, params=params)
|
1481 |
+
tokenizer.save_pretrained(training_args.output_dir)
|
1482 |
+
if training_args.push_to_hub:
|
1483 |
+
repo.push_to_hub(commit_message=f"{wandb.run.id}: saving weights and logs of step {int(step / 1000)}k", blocking=False)
|
1484 |
+
|
1485 |
+
logger.info("***** Running training *****")
|
1486 |
+
logger.info(f" Num examples = {num_train_samples}")
|
1487 |
+
logger.info(f" Num Epochs = {num_epochs}")
|
1488 |
+
logger.info(f" Instantaneous batch size per device = {training_args.per_device_train_batch_size}")
|
1489 |
+
logger.info(f" Num gradient accumulation steps = {gradient_accumulation_steps}")
|
1490 |
+
logger.info(f" Total train batch size (w. parallel & distributed) = {batch_size_per_update}")
|
1491 |
+
logger.info(f" Total optimization steps = {total_train_steps}")
|
1492 |
+
logger.info(f" Gradient checkpointing: {config.gradient_checkpointing}")
|
1493 |
+
logger.info(f" Use scan: {config.use_scan}")
|
1494 |
+
logger.info(f" Fuse matmuls: {config.fuse_matmuls}")
|
1495 |
+
|
1496 |
+
train_time = cur_step = 0
|
1497 |
+
epochs = tqdm(range(num_epochs), desc=f"Epoch ... (1/{num_epochs})", position=0)
|
1498 |
+
for epoch in epochs:
|
1499 |
+
if training_args.do_train:
|
1500 |
+
# ======================== Training ================================
|
1501 |
+
train_start = time.time()
|
1502 |
+
|
1503 |
+
# Create sampling rng
|
1504 |
+
rng, input_rng = jax.random.split(rng)
|
1505 |
+
|
1506 |
+
# Generate an epoch by randomly shuffling sampling indices from the train dataset and grouping by length
|
1507 |
+
train_samples_idx = get_grouped_indices(vectorized_datasets[data_args.train_split_name], batch_size_per_update, input_rng)
|
1508 |
+
train_batch_idx = generate_batch_splits(train_samples_idx, batch_size_per_update)
|
1509 |
+
|
1510 |
+
# Gather the indices for creating the batch and do a training step
|
1511 |
+
for step, batch_idx in enumerate(tqdm(train_batch_idx, desc="Training...", position=1), 1):
|
1512 |
+
samples = [vectorized_datasets[data_args.train_split_name][int(idx)] for idx in batch_idx]
|
1513 |
+
batch = data_collator(samples)
|
1514 |
+
batch = shard(batch.data)
|
1515 |
+
try:
|
1516 |
+
state, train_metric = p_train_step(state, batch)
|
1517 |
+
except TypeError as e:
|
1518 |
+
logger.warning("Encountered following error: \n", e)
|
1519 |
+
|
1520 |
+
cur_step = epoch * (num_train_samples // batch_size_per_update) + step
|
1521 |
+
|
1522 |
+
if cur_step % training_args.logging_steps == 0:
|
1523 |
+
# Save metrics
|
1524 |
+
train_metric = unreplicate(train_metric)
|
1525 |
+
train_time += time.time() - train_start
|
1526 |
+
# need to upcast all device arrays to fp32 for wandb logging (jnp.bfloat16 not supported) -> do this here OR in train_step
|
1527 |
+
write_wandb_log(to_fp32(train_metric), cur_step, prefix=data_args.train_split_name)
|
1528 |
+
# we won't log to tensorboard for now (it is fiddly logging param and grad norms on a layer-by-layer basis)
|
1529 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1530 |
+
# write_train_metric(summary_writer, train_metrics, train_time, cur_step)
|
1531 |
+
|
1532 |
+
epochs.write(
|
1533 |
+
f"Step... ({cur_step} | Loss: {train_metric['loss']}, Learning Rate: {train_metric['learning_rate']}, Gradient Norm: {train_metric['grad_norm']})"
|
1534 |
+
)
|
1535 |
+
|
1536 |
+
if cur_step % total_train_steps == 0:
|
1537 |
+
break
|
1538 |
+
|
1539 |
+
if training_args.eval_steps and cur_step % training_args.eval_steps == 0:
|
1540 |
+
run_evaluation(cur_step)
|
1541 |
+
|
1542 |
+
if cur_step % training_args.save_steps == 0:
|
1543 |
+
save_checkpoint(cur_step)
|
1544 |
+
|
1545 |
+
if training_args.eval_steps == 0 and (epoch + 1) != num_epochs:
|
1546 |
+
# run evaluation at the end of the epoch if eval steps are not specified
|
1547 |
+
run_evaluation(cur_step)
|
1548 |
+
save_checkpoint(cur_step)
|
1549 |
+
|
1550 |
+
if training_args.do_train:
|
1551 |
+
save_checkpoint(cur_step)
|
1552 |
+
|
1553 |
+
cur_step = max_steps if max_steps > 0 else cur_step # set step to max steps so that eval happens in alignment with training
|
1554 |
+
|
1555 |
+
if training_args.do_eval:
|
1556 |
+
run_evaluation(cur_step)
|
1557 |
+
|
1558 |
+
# TODO: collapse 'do_predict' into the run_evaluation function
|
1559 |
+
if training_args.do_predict:
|
1560 |
+
for split in [data_args.test_split_name]:
|
1561 |
+
# ======================== Evaluating ==============================
|
1562 |
+
eval_metrics = []
|
1563 |
+
eval_preds = []
|
1564 |
+
eval_labels = []
|
1565 |
+
|
1566 |
+
# Generate eval set by sequentially sampling indices from the test dataset and grouping by length
|
1567 |
+
eval_samples_idx = get_grouped_indices(vectorized_datasets[split], eval_batch_size)
|
1568 |
+
eval_batch_idx = generate_batch_splits(eval_samples_idx, eval_batch_size, drop_last=False)
|
1569 |
+
|
1570 |
+
for i, batch_idx in enumerate(tqdm(eval_batch_idx, desc=f"Predicting {split}...", position=2)):
|
1571 |
+
samples = [vectorized_datasets[split][int(idx)] for idx in batch_idx]
|
1572 |
+
batch = data_collator(samples)
|
1573 |
+
labels = batch["labels"]
|
1574 |
+
|
1575 |
+
metrics, pred_ids = pad_shard_unpad(p_eval_step)(state.params, batch.data, min_device_batch=per_device_eval_batch_size)
|
1576 |
+
eval_preds.extend(jax.device_get(pred_ids.reshape(-1, pred_ids.shape[-1])))
|
1577 |
+
eval_metrics.append(metrics)
|
1578 |
+
|
1579 |
+
eval_labels.extend(labels)
|
1580 |
+
|
1581 |
+
# normalize eval metrics
|
1582 |
+
eval_metrics = get_metrics(eval_metrics)
|
1583 |
+
eval_metrics = jax.tree_map(jnp.mean, eval_metrics)
|
1584 |
+
eval_metrics = to_fp32(eval_metrics)
|
1585 |
+
|
1586 |
+
# always run compute metrics
|
1587 |
+
error_rate_metric, pred_str, label_str = compute_metrics(eval_preds, eval_labels)
|
1588 |
+
eval_metrics.update(error_rate_metric)
|
1589 |
+
error_rate_desc = " ".join([f"Eval {key}: {value} |" for key, value in error_rate_metric.items()])
|
1590 |
+
|
1591 |
+
# Print metrics and update progress bar
|
1592 |
+
desc = f"Step... ({cur_step}/{total_train_steps} | Eval Loss: {eval_metrics['loss']} | {error_rate_desc})"
|
1593 |
+
epochs.write(desc)
|
1594 |
+
epochs.desc = desc
|
1595 |
+
|
1596 |
+
# Save metrics
|
1597 |
+
write_wandb_log(eval_metrics, cur_step, prefix=split)
|
1598 |
+
write_wandb_pred(pred_str, label_str, cur_step, prefix=split)
|
1599 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1600 |
+
# write_eval_metric(summary_writer, eval_metrics, cur_step, pred_str=pred_str)
|
1601 |
+
|
1602 |
+
|
1603 |
+
if __name__ == "__main__":
|
1604 |
+
main()
|
wandb/run-20220731_115136-a9kwr28f/files/config.yaml
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
wandb_version: 1
|
2 |
+
|
3 |
+
_wandb:
|
4 |
+
desc: null
|
5 |
+
value:
|
6 |
+
cli_version: 0.12.9
|
7 |
+
code_path: code/run_flax_speech_recognition_ctc.py
|
8 |
+
framework: huggingface
|
9 |
+
huggingface_version: 4.21.0
|
10 |
+
is_jupyter_run: false
|
11 |
+
is_kaggle_kernel: false
|
12 |
+
python_version: 3.8.10
|
13 |
+
start_time: 1659268296
|
14 |
+
t:
|
15 |
+
1:
|
16 |
+
- 1
|
17 |
+
- 2
|
18 |
+
- 3
|
19 |
+
- 11
|
20 |
+
- 12
|
21 |
+
2:
|
22 |
+
- 1
|
23 |
+
- 2
|
24 |
+
- 3
|
25 |
+
- 11
|
26 |
+
- 12
|
27 |
+
3:
|
28 |
+
- 13
|
29 |
+
4: 3.8.10
|
30 |
+
5: 0.12.9
|
31 |
+
6: 4.21.0
|
32 |
+
8:
|
33 |
+
- 5
|
wandb/run-20220731_115136-a9kwr28f/files/diff.patch
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_115136-a9kwr28f/files/output.log
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_115136-a9kwr28f/files/requirements.txt
ADDED
@@ -0,0 +1,158 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
absl-py==1.0.0
|
2 |
+
aiohttp==3.8.1
|
3 |
+
aiosignal==1.2.0
|
4 |
+
appdirs==1.4.4
|
5 |
+
astunparse==1.6.3
|
6 |
+
async-timeout==4.0.2
|
7 |
+
attrs==21.4.0
|
8 |
+
audioread==2.1.9
|
9 |
+
backcall==0.2.0
|
10 |
+
cachetools==4.2.4
|
11 |
+
certifi==2021.10.8
|
12 |
+
cffi==1.15.1
|
13 |
+
charset-normalizer==2.0.10
|
14 |
+
chex==0.1.3
|
15 |
+
click==8.0.3
|
16 |
+
cloud-tpu-client==0.10
|
17 |
+
cloud-tpu-profiler==2.4.0
|
18 |
+
clu==0.0.6
|
19 |
+
colorama==0.4.5
|
20 |
+
commonmark==0.9.1
|
21 |
+
configparser==5.2.0
|
22 |
+
contextlib2==21.6.0
|
23 |
+
cycler==0.11.0
|
24 |
+
datasets==2.4.0
|
25 |
+
decorator==5.1.0
|
26 |
+
dill==0.3.4
|
27 |
+
dm-tree==0.1.6
|
28 |
+
docker-pycreds==0.4.0
|
29 |
+
etils==0.6.0
|
30 |
+
exceptiongroup==1.0.0rc8
|
31 |
+
filelock==3.4.2
|
32 |
+
flatbuffers==2.0
|
33 |
+
flax==0.5.3
|
34 |
+
fonttools==4.28.5
|
35 |
+
frozenlist==1.2.0
|
36 |
+
fsspec==2021.11.1
|
37 |
+
future==0.18.2
|
38 |
+
gast==0.4.0
|
39 |
+
gitdb==4.0.9
|
40 |
+
gitpython==3.1.26
|
41 |
+
google-api-core==1.31.5
|
42 |
+
google-api-python-client==1.8.0
|
43 |
+
google-auth-httplib2==0.1.0
|
44 |
+
google-auth-oauthlib==0.4.6
|
45 |
+
google-auth==2.3.3
|
46 |
+
google-pasta==0.2.0
|
47 |
+
googleapis-common-protos==1.54.0
|
48 |
+
grpcio==1.43.0
|
49 |
+
h5py==3.6.0
|
50 |
+
httplib2==0.20.2
|
51 |
+
huggingface-hub==0.2.1
|
52 |
+
hypothesis==6.53.0
|
53 |
+
idna==3.3
|
54 |
+
importlib-metadata==4.10.0
|
55 |
+
importlib-resources==5.4.0
|
56 |
+
ipython==7.31.0
|
57 |
+
jax==0.3.15
|
58 |
+
jaxlib==0.3.15
|
59 |
+
jedi==0.18.1
|
60 |
+
jiwer==2.3.0
|
61 |
+
joblib==1.1.0
|
62 |
+
keras-preprocessing==1.1.2
|
63 |
+
keras==2.7.0
|
64 |
+
kiwisolver==1.3.2
|
65 |
+
libclang==12.0.0
|
66 |
+
librosa==0.9.2
|
67 |
+
libtpu-nightly==0.1.dev20220722
|
68 |
+
llvmlite==0.39.0
|
69 |
+
markdown==3.3.6
|
70 |
+
matplotlib-inline==0.1.3
|
71 |
+
matplotlib==3.5.1
|
72 |
+
ml-collections==0.1.0
|
73 |
+
msgpack==1.0.3
|
74 |
+
multidict==5.2.0
|
75 |
+
multiprocess==0.70.12.2
|
76 |
+
numba==0.56.0
|
77 |
+
numpy==1.22.0
|
78 |
+
oauth2client==4.1.3
|
79 |
+
oauthlib==3.1.1
|
80 |
+
opt-einsum==3.3.0
|
81 |
+
optax==0.1.3
|
82 |
+
packaging==21.3
|
83 |
+
pandas==1.3.5
|
84 |
+
parso==0.8.3
|
85 |
+
pathtools==0.1.2
|
86 |
+
pexpect==4.8.0
|
87 |
+
pickleshare==0.7.5
|
88 |
+
pillow==9.0.0
|
89 |
+
pip==22.2.1
|
90 |
+
pkg-resources==0.0.0
|
91 |
+
pooch==1.6.0
|
92 |
+
promise==2.3
|
93 |
+
prompt-toolkit==3.0.24
|
94 |
+
protobuf==3.19.1
|
95 |
+
psutil==5.9.0
|
96 |
+
ptyprocess==0.7.0
|
97 |
+
pyarrow==6.0.1
|
98 |
+
pyasn1-modules==0.2.8
|
99 |
+
pyasn1==0.4.8
|
100 |
+
pycparser==2.21
|
101 |
+
pyctcdecode==0.4.0
|
102 |
+
pygments==2.11.1
|
103 |
+
pygtrie==2.5.0
|
104 |
+
pyparsing==3.0.6
|
105 |
+
python-dateutil==2.8.2
|
106 |
+
python-levenshtein==0.12.2
|
107 |
+
pytz==2021.3
|
108 |
+
pyyaml==6.0
|
109 |
+
regex==2021.11.10
|
110 |
+
requests-oauthlib==1.3.0
|
111 |
+
requests==2.27.0
|
112 |
+
resampy==0.3.1
|
113 |
+
responses==0.18.0
|
114 |
+
rich==11.2.0
|
115 |
+
rsa==4.8
|
116 |
+
sacremoses==0.0.46
|
117 |
+
scikit-learn==1.1.1
|
118 |
+
scipy==1.7.3
|
119 |
+
sentry-sdk==1.5.2
|
120 |
+
setuptools==44.0.0
|
121 |
+
shortuuid==1.0.8
|
122 |
+
six==1.16.0
|
123 |
+
smmap==5.0.0
|
124 |
+
sortedcontainers==2.4.0
|
125 |
+
soundfile==0.10.3.post1
|
126 |
+
sox==1.4.1
|
127 |
+
subprocess32==3.5.4
|
128 |
+
tensorboard-data-server==0.6.1
|
129 |
+
tensorboard-plugin-wit==1.8.0
|
130 |
+
tensorboard==2.7.0
|
131 |
+
tensorflow-cpu==2.7.0
|
132 |
+
tensorflow-datasets==4.4.0
|
133 |
+
tensorflow-estimator==2.7.0
|
134 |
+
tensorflow-io-gcs-filesystem==0.23.1
|
135 |
+
tensorflow-metadata==1.5.0
|
136 |
+
tensorflow==2.7.0
|
137 |
+
tensorstore==0.1.21
|
138 |
+
termcolor==1.1.0
|
139 |
+
threadpoolctl==3.1.0
|
140 |
+
tokenizers==0.11.2
|
141 |
+
toolz==0.11.2
|
142 |
+
torch==1.12.0
|
143 |
+
torchaudio==0.12.0+cpu
|
144 |
+
tqdm==4.62.3
|
145 |
+
traitlets==5.1.1
|
146 |
+
transformers==4.21.0
|
147 |
+
typing-extensions==4.3.0
|
148 |
+
uritemplate==3.0.1
|
149 |
+
urllib3==1.26.7
|
150 |
+
wandb==0.12.9
|
151 |
+
wcwidth==0.2.5
|
152 |
+
werkzeug==2.0.2
|
153 |
+
wheel==0.37.1
|
154 |
+
wrapt==1.13.3
|
155 |
+
xxhash==2.0.2
|
156 |
+
yarl==1.7.2
|
157 |
+
yaspin==2.1.0
|
158 |
+
zipp==3.7.0
|
wandb/run-20220731_115136-a9kwr28f/files/wandb-metadata.json
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"os": "Linux-5.4.0-1043-gcp-x86_64-with-glibc2.29",
|
3 |
+
"python": "3.8.10",
|
4 |
+
"heartbeatAt": "2022-07-31T11:51:39.912073",
|
5 |
+
"startedAt": "2022-07-31T11:51:36.417201",
|
6 |
+
"docker": null,
|
7 |
+
"cpu_count": 96,
|
8 |
+
"cuda": null,
|
9 |
+
"args": [
|
10 |
+
"--model_name_or_path=facebook/wav2vec2-xls-r-1b",
|
11 |
+
"--hub_model_id=NbAiLab/wav2vec2-1b-npsc-nst",
|
12 |
+
"--tokenizer_name=./",
|
13 |
+
"--output_dir=./",
|
14 |
+
"--overwrite_output_dir",
|
15 |
+
"--num_train_epochs=40",
|
16 |
+
"--per_device_train_batch_size=12",
|
17 |
+
"--per_device_eval_batch_size=12",
|
18 |
+
"--gradient_accumulation_steps=2",
|
19 |
+
"--precision=full_mixed",
|
20 |
+
"--matmul_precision=bfloat16",
|
21 |
+
"--learning_rate=8e-4",
|
22 |
+
"--warmup_steps=4000",
|
23 |
+
"--length_column_name=input_length",
|
24 |
+
"--evaluation_strategy=steps",
|
25 |
+
"--text_column_name=text",
|
26 |
+
"--save_steps=3153",
|
27 |
+
"--eval_steps=3153",
|
28 |
+
"--logging_steps=100",
|
29 |
+
"--layerdrop=0.041",
|
30 |
+
"--attention_dropout=0.094",
|
31 |
+
"--activation_dropout=0.055",
|
32 |
+
"--hidden_dropout=0.047",
|
33 |
+
"--save_total_limit=5",
|
34 |
+
"--freeze_feature_encoder",
|
35 |
+
"--feat_proj_dropout=0.04",
|
36 |
+
"--mask_time_prob=0.082",
|
37 |
+
"--mask_time_length=10",
|
38 |
+
"--mask_feature_prob=0.25",
|
39 |
+
"--mask_feature_length=64",
|
40 |
+
"--gradient_checkpointing",
|
41 |
+
"--min_duration_in_seconds=0.5",
|
42 |
+
"--max_duration_in_seconds=20.0",
|
43 |
+
"--use_auth_token",
|
44 |
+
"--seed=42",
|
45 |
+
"--group_by_length",
|
46 |
+
"--do_train",
|
47 |
+
"--do_eval",
|
48 |
+
"--push_to_hub",
|
49 |
+
"--preprocessing_num_workers=32",
|
50 |
+
"--ctc_zero_infinity",
|
51 |
+
"--do_lower_case",
|
52 |
+
"--wandb_project=wav2vec2",
|
53 |
+
"--wandb_name=wav2vec2-1b-npsc-nst",
|
54 |
+
"--remove_punctuation"
|
55 |
+
],
|
56 |
+
"state": "running",
|
57 |
+
"program": "run_flax_speech_recognition_ctc.py",
|
58 |
+
"codePath": "run_flax_speech_recognition_ctc.py",
|
59 |
+
"git": {
|
60 |
+
"remote": "https://huggingface.co/NbAiLab/wav2vec2-1b-npsc-nst",
|
61 |
+
"commit": "ce31127160a53192d2ac9bed788e4c4291ce0652"
|
62 |
+
},
|
63 |
+
"email": "versae@gmail.com",
|
64 |
+
"root": "/data/wav2vec2-1b-npsc-nst",
|
65 |
+
"host": "t1v-n-eedfb410-w-0",
|
66 |
+
"username": "javierr",
|
67 |
+
"executable": "/data/flax/bin/python"
|
68 |
+
}
|
wandb/run-20220731_115136-a9kwr28f/files/wandb-summary.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
{"_wandb": {"runtime": 764}}
|
wandb/run-20220731_115136-a9kwr28f/logs/debug-internal.log
ADDED
@@ -0,0 +1,532 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
2022-07-31 11:51:37,317 INFO MainThread:1522181 [internal.py:wandb_internal():87] W&B internal server running at pid: 1522181, started at: 2022-07-31 11:51:37.317240
|
2 |
+
2022-07-31 11:51:37,319 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: check_version
|
3 |
+
2022-07-31 11:51:37,320 INFO WriterThread:1522181 [datastore.py:open_for_write():77] open: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/run-a9kwr28f.wandb
|
4 |
+
2022-07-31 11:51:37,320 DEBUG SenderThread:1522181 [sender.py:send():234] send: header
|
5 |
+
2022-07-31 11:51:37,321 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: check_version
|
6 |
+
2022-07-31 11:51:37,359 DEBUG SenderThread:1522181 [sender.py:send():234] send: run
|
7 |
+
2022-07-31 11:51:37,542 INFO SenderThread:1522181 [dir_watcher.py:__init__():169] watching files in: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files
|
8 |
+
2022-07-31 11:51:37,542 INFO SenderThread:1522181 [sender.py:_start_run_threads():804] run started: a9kwr28f with start time 1659268296
|
9 |
+
2022-07-31 11:51:37,543 DEBUG SenderThread:1522181 [sender.py:send():234] send: summary
|
10 |
+
2022-07-31 11:51:37,543 INFO SenderThread:1522181 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
11 |
+
2022-07-31 11:51:37,544 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: run_start
|
12 |
+
2022-07-31 11:51:38,547 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/wandb-summary.json
|
13 |
+
2022-07-31 11:51:39,911 DEBUG HandlerThread:1522181 [meta.py:__init__():40] meta init
|
14 |
+
2022-07-31 11:51:39,911 DEBUG HandlerThread:1522181 [meta.py:__init__():54] meta init done
|
15 |
+
2022-07-31 11:51:39,912 DEBUG HandlerThread:1522181 [meta.py:probe():214] probe
|
16 |
+
2022-07-31 11:51:39,914 DEBUG HandlerThread:1522181 [meta.py:_setup_git():204] setup git
|
17 |
+
2022-07-31 11:51:39,954 DEBUG HandlerThread:1522181 [meta.py:_setup_git():211] setup git done
|
18 |
+
2022-07-31 11:51:39,955 DEBUG HandlerThread:1522181 [meta.py:_save_code():92] save code
|
19 |
+
2022-07-31 11:51:39,968 DEBUG HandlerThread:1522181 [meta.py:_save_code():113] save code done
|
20 |
+
2022-07-31 11:51:39,968 DEBUG HandlerThread:1522181 [meta.py:_save_patches():130] save patches
|
21 |
+
2022-07-31 11:51:40,293 DEBUG HandlerThread:1522181 [meta.py:_save_patches():172] save patches done
|
22 |
+
2022-07-31 11:51:40,293 DEBUG HandlerThread:1522181 [meta.py:_save_pip():58] save pip
|
23 |
+
2022-07-31 11:51:40,294 DEBUG HandlerThread:1522181 [meta.py:_save_pip():72] save pip done
|
24 |
+
2022-07-31 11:51:40,294 DEBUG HandlerThread:1522181 [meta.py:probe():252] probe done
|
25 |
+
2022-07-31 11:51:40,297 DEBUG SenderThread:1522181 [sender.py:send():234] send: files
|
26 |
+
2022-07-31 11:51:40,297 INFO SenderThread:1522181 [sender.py:_save_file():939] saving file wandb-metadata.json with policy now
|
27 |
+
2022-07-31 11:51:40,298 INFO SenderThread:1522181 [sender.py:_save_file():939] saving file code/run_flax_speech_recognition_ctc.py with policy now
|
28 |
+
2022-07-31 11:51:40,299 INFO SenderThread:1522181 [sender.py:_save_file():939] saving file diff.patch with policy now
|
29 |
+
2022-07-31 11:51:40,305 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
30 |
+
2022-07-31 11:51:40,306 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
31 |
+
2022-07-31 11:51:40,550 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/wandb-metadata.json
|
32 |
+
2022-07-31 11:51:40,551 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/requirements.txt
|
33 |
+
2022-07-31 11:51:40,551 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/code/run_flax_speech_recognition_ctc.py
|
34 |
+
2022-07-31 11:51:40,551 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
35 |
+
2022-07-31 11:51:40,551 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/diff.patch
|
36 |
+
2022-07-31 11:51:40,551 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/code
|
37 |
+
2022-07-31 11:51:40,817 INFO Thread-11 :1522181 [upload_job.py:push():137] Uploaded file /tmp/tmpf_y45o5awandb/smtukorm-wandb-metadata.json
|
38 |
+
2022-07-31 11:51:41,009 INFO Thread-13 :1522181 [upload_job.py:push():137] Uploaded file /tmp/tmpf_y45o5awandb/19fl9gh5-diff.patch
|
39 |
+
2022-07-31 11:51:41,055 INFO Thread-12 :1522181 [upload_job.py:push():137] Uploaded file /tmp/tmpf_y45o5awandb/jkaxn2a5-code/run_flax_speech_recognition_ctc.py
|
40 |
+
2022-07-31 11:51:42,551 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
41 |
+
2022-07-31 11:51:44,552 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
42 |
+
2022-07-31 11:51:46,553 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
43 |
+
2022-07-31 11:51:48,553 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
44 |
+
2022-07-31 11:51:54,555 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
45 |
+
2022-07-31 11:51:55,442 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
46 |
+
2022-07-31 11:51:55,443 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
47 |
+
2022-07-31 11:51:56,556 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
48 |
+
2022-07-31 11:52:07,992 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
49 |
+
2022-07-31 11:52:10,561 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
50 |
+
2022-07-31 11:52:10,579 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
51 |
+
2022-07-31 11:52:10,579 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
52 |
+
2022-07-31 11:52:12,562 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
53 |
+
2022-07-31 11:52:21,566 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
54 |
+
2022-07-31 11:52:23,567 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
55 |
+
2022-07-31 11:52:25,716 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
56 |
+
2022-07-31 11:52:25,716 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
57 |
+
2022-07-31 11:52:37,572 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
58 |
+
2022-07-31 11:52:38,063 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
59 |
+
2022-07-31 11:52:39,573 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
60 |
+
2022-07-31 11:52:40,859 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
61 |
+
2022-07-31 11:52:40,859 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
62 |
+
2022-07-31 11:52:56,009 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
63 |
+
2022-07-31 11:52:56,009 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
64 |
+
2022-07-31 11:53:08,125 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
65 |
+
2022-07-31 11:53:11,261 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
66 |
+
2022-07-31 11:53:11,261 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
67 |
+
2022-07-31 11:53:20,586 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
68 |
+
2022-07-31 11:53:22,587 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
69 |
+
2022-07-31 11:53:24,588 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
70 |
+
2022-07-31 11:53:26,473 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
71 |
+
2022-07-31 11:53:26,473 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
72 |
+
2022-07-31 11:53:26,589 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
73 |
+
2022-07-31 11:53:28,590 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
74 |
+
2022-07-31 11:53:30,591 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
75 |
+
2022-07-31 11:53:32,592 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
76 |
+
2022-07-31 11:53:34,593 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
77 |
+
2022-07-31 11:53:36,594 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
78 |
+
2022-07-31 11:53:38,193 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
79 |
+
2022-07-31 11:53:38,595 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
80 |
+
2022-07-31 11:53:40,596 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
81 |
+
2022-07-31 11:53:41,666 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
82 |
+
2022-07-31 11:53:41,666 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
83 |
+
2022-07-31 11:53:42,597 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
84 |
+
2022-07-31 11:53:44,598 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
85 |
+
2022-07-31 11:53:46,599 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
86 |
+
2022-07-31 11:53:48,600 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
87 |
+
2022-07-31 11:53:50,601 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
88 |
+
2022-07-31 11:53:52,602 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
89 |
+
2022-07-31 11:53:54,603 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
90 |
+
2022-07-31 11:53:56,604 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
91 |
+
2022-07-31 11:53:56,834 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
92 |
+
2022-07-31 11:53:56,834 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
93 |
+
2022-07-31 11:53:58,605 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
94 |
+
2022-07-31 11:54:00,606 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
95 |
+
2022-07-31 11:54:02,607 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
96 |
+
2022-07-31 11:54:04,608 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
97 |
+
2022-07-31 11:54:06,609 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
98 |
+
2022-07-31 11:54:08,271 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
99 |
+
2022-07-31 11:54:08,610 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
100 |
+
2022-07-31 11:54:10,611 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
101 |
+
2022-07-31 11:54:11,991 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
102 |
+
2022-07-31 11:54:11,991 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
103 |
+
2022-07-31 11:54:12,612 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
104 |
+
2022-07-31 11:54:14,613 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
105 |
+
2022-07-31 11:54:16,614 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
106 |
+
2022-07-31 11:54:18,615 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
107 |
+
2022-07-31 11:54:20,617 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
108 |
+
2022-07-31 11:54:22,618 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
109 |
+
2022-07-31 11:54:24,619 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
110 |
+
2022-07-31 11:54:26,620 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
111 |
+
2022-07-31 11:54:27,137 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
112 |
+
2022-07-31 11:54:27,137 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
113 |
+
2022-07-31 11:54:28,621 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
114 |
+
2022-07-31 11:54:30,622 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
115 |
+
2022-07-31 11:54:32,623 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
116 |
+
2022-07-31 11:54:34,628 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
117 |
+
2022-07-31 11:54:36,626 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
118 |
+
2022-07-31 11:54:38,341 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
119 |
+
2022-07-31 11:54:38,627 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
120 |
+
2022-07-31 11:54:40,628 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
121 |
+
2022-07-31 11:54:42,276 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
122 |
+
2022-07-31 11:54:42,277 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
123 |
+
2022-07-31 11:54:42,629 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
124 |
+
2022-07-31 11:54:44,630 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
125 |
+
2022-07-31 11:54:46,631 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
126 |
+
2022-07-31 11:54:48,633 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
127 |
+
2022-07-31 11:54:50,634 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
128 |
+
2022-07-31 11:54:52,635 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
129 |
+
2022-07-31 11:54:54,636 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
130 |
+
2022-07-31 11:54:56,637 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
131 |
+
2022-07-31 11:54:57,429 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
132 |
+
2022-07-31 11:54:57,430 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
133 |
+
2022-07-31 11:54:58,639 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
134 |
+
2022-07-31 11:55:00,640 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
135 |
+
2022-07-31 11:55:02,641 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
136 |
+
2022-07-31 11:55:04,642 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
137 |
+
2022-07-31 11:55:06,643 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
138 |
+
2022-07-31 11:55:08,420 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
139 |
+
2022-07-31 11:55:08,644 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
140 |
+
2022-07-31 11:55:10,645 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
141 |
+
2022-07-31 11:55:12,571 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
142 |
+
2022-07-31 11:55:12,571 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
143 |
+
2022-07-31 11:55:12,646 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
144 |
+
2022-07-31 11:55:14,647 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
145 |
+
2022-07-31 11:55:16,648 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
146 |
+
2022-07-31 11:55:18,649 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
147 |
+
2022-07-31 11:55:20,650 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
148 |
+
2022-07-31 11:55:22,651 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
149 |
+
2022-07-31 11:55:24,652 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
150 |
+
2022-07-31 11:55:26,653 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
151 |
+
2022-07-31 11:55:27,712 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
152 |
+
2022-07-31 11:55:27,712 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
153 |
+
2022-07-31 11:55:28,654 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
154 |
+
2022-07-31 11:55:30,655 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
155 |
+
2022-07-31 11:55:32,658 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
156 |
+
2022-07-31 11:55:34,659 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
157 |
+
2022-07-31 11:55:36,660 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
158 |
+
2022-07-31 11:55:38,507 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
159 |
+
2022-07-31 11:55:38,664 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
160 |
+
2022-07-31 11:55:40,665 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
161 |
+
2022-07-31 11:55:42,666 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
162 |
+
2022-07-31 11:55:42,860 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
163 |
+
2022-07-31 11:55:42,860 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
164 |
+
2022-07-31 11:55:44,667 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
165 |
+
2022-07-31 11:55:46,668 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
166 |
+
2022-07-31 11:55:48,669 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
167 |
+
2022-07-31 11:55:50,670 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
168 |
+
2022-07-31 11:55:52,671 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
169 |
+
2022-07-31 11:55:55,672 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
170 |
+
2022-07-31 11:55:57,673 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
171 |
+
2022-07-31 11:55:58,001 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
172 |
+
2022-07-31 11:55:58,002 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
173 |
+
2022-07-31 11:55:59,674 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
174 |
+
2022-07-31 11:56:01,675 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
175 |
+
2022-07-31 11:56:03,677 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
176 |
+
2022-07-31 11:56:05,678 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
177 |
+
2022-07-31 11:56:07,679 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
178 |
+
2022-07-31 11:56:08,594 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
179 |
+
2022-07-31 11:56:09,680 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
180 |
+
2022-07-31 11:56:11,681 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
181 |
+
2022-07-31 11:56:13,136 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
182 |
+
2022-07-31 11:56:13,136 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
183 |
+
2022-07-31 11:56:13,682 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
184 |
+
2022-07-31 11:56:15,683 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
185 |
+
2022-07-31 11:56:17,684 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
186 |
+
2022-07-31 11:56:19,685 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
187 |
+
2022-07-31 11:56:21,687 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
188 |
+
2022-07-31 11:56:23,688 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
189 |
+
2022-07-31 11:56:25,689 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
190 |
+
2022-07-31 11:56:27,690 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
191 |
+
2022-07-31 11:56:28,278 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
192 |
+
2022-07-31 11:56:28,278 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
193 |
+
2022-07-31 11:56:29,691 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
194 |
+
2022-07-31 11:56:31,692 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
195 |
+
2022-07-31 11:56:33,692 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
196 |
+
2022-07-31 11:56:35,694 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
197 |
+
2022-07-31 11:56:37,694 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
198 |
+
2022-07-31 11:56:38,669 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
199 |
+
2022-07-31 11:56:39,695 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
200 |
+
2022-07-31 11:56:41,698 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
201 |
+
2022-07-31 11:56:43,424 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
202 |
+
2022-07-31 11:56:43,424 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
203 |
+
2022-07-31 11:56:43,699 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
204 |
+
2022-07-31 11:56:45,701 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
205 |
+
2022-07-31 11:56:47,702 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
206 |
+
2022-07-31 11:56:49,704 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
207 |
+
2022-07-31 11:56:51,705 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
208 |
+
2022-07-31 11:56:53,706 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
209 |
+
2022-07-31 11:56:55,707 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
210 |
+
2022-07-31 11:56:57,708 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
211 |
+
2022-07-31 11:56:58,560 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
212 |
+
2022-07-31 11:56:58,561 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
213 |
+
2022-07-31 11:56:59,709 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
214 |
+
2022-07-31 11:57:01,711 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
215 |
+
2022-07-31 11:57:03,712 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
216 |
+
2022-07-31 11:57:05,713 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
217 |
+
2022-07-31 11:57:07,714 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
218 |
+
2022-07-31 11:57:08,747 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
219 |
+
2022-07-31 11:57:09,715 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
220 |
+
2022-07-31 11:57:11,715 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
221 |
+
2022-07-31 11:57:13,704 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
222 |
+
2022-07-31 11:57:13,704 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
223 |
+
2022-07-31 11:57:13,717 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
224 |
+
2022-07-31 11:57:15,718 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
225 |
+
2022-07-31 11:57:17,718 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
226 |
+
2022-07-31 11:57:19,720 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
227 |
+
2022-07-31 11:57:21,721 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
228 |
+
2022-07-31 11:57:23,721 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
229 |
+
2022-07-31 11:57:25,722 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
230 |
+
2022-07-31 11:57:27,723 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
231 |
+
2022-07-31 11:57:28,842 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
232 |
+
2022-07-31 11:57:28,842 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
233 |
+
2022-07-31 11:57:29,724 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
234 |
+
2022-07-31 11:57:31,725 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
235 |
+
2022-07-31 11:57:33,726 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
236 |
+
2022-07-31 11:57:35,727 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
237 |
+
2022-07-31 11:57:37,728 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
238 |
+
2022-07-31 11:57:38,819 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
239 |
+
2022-07-31 11:57:39,729 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
240 |
+
2022-07-31 11:57:41,730 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
241 |
+
2022-07-31 11:57:43,731 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
242 |
+
2022-07-31 11:57:43,998 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
243 |
+
2022-07-31 11:57:43,999 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
244 |
+
2022-07-31 11:57:45,732 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
245 |
+
2022-07-31 11:57:47,733 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
246 |
+
2022-07-31 11:57:49,734 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
247 |
+
2022-07-31 11:57:51,736 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
248 |
+
2022-07-31 11:57:53,737 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
249 |
+
2022-07-31 11:57:55,738 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
250 |
+
2022-07-31 11:57:57,739 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
251 |
+
2022-07-31 11:57:59,176 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
252 |
+
2022-07-31 11:57:59,176 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
253 |
+
2022-07-31 11:57:59,740 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
254 |
+
2022-07-31 11:58:01,741 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
255 |
+
2022-07-31 11:58:03,742 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
256 |
+
2022-07-31 11:58:05,743 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
257 |
+
2022-07-31 11:58:07,744 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
258 |
+
2022-07-31 11:58:08,893 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
259 |
+
2022-07-31 11:58:09,745 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
260 |
+
2022-07-31 11:58:11,747 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
261 |
+
2022-07-31 11:58:13,748 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
262 |
+
2022-07-31 11:58:14,340 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
263 |
+
2022-07-31 11:58:14,340 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
264 |
+
2022-07-31 11:58:15,749 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
265 |
+
2022-07-31 11:58:17,751 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
266 |
+
2022-07-31 11:58:19,752 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
267 |
+
2022-07-31 11:58:21,753 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
268 |
+
2022-07-31 11:58:23,755 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
269 |
+
2022-07-31 11:58:29,478 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
270 |
+
2022-07-31 11:58:29,479 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
271 |
+
2022-07-31 11:58:33,758 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
272 |
+
2022-07-31 11:58:35,759 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
273 |
+
2022-07-31 11:58:37,760 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
274 |
+
2022-07-31 11:58:38,973 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
275 |
+
2022-07-31 11:58:39,761 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
276 |
+
2022-07-31 11:58:41,762 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
277 |
+
2022-07-31 11:58:43,763 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
278 |
+
2022-07-31 11:58:44,625 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
279 |
+
2022-07-31 11:58:44,683 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
280 |
+
2022-07-31 11:58:45,764 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
281 |
+
2022-07-31 11:58:47,765 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
282 |
+
2022-07-31 11:58:49,766 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
283 |
+
2022-07-31 11:58:51,767 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
284 |
+
2022-07-31 11:58:53,769 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
285 |
+
2022-07-31 11:58:55,770 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
286 |
+
2022-07-31 11:58:57,771 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
287 |
+
2022-07-31 11:58:59,772 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
288 |
+
2022-07-31 11:58:59,834 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
289 |
+
2022-07-31 11:58:59,906 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
290 |
+
2022-07-31 11:59:09,051 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
291 |
+
2022-07-31 11:59:15,045 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
292 |
+
2022-07-31 11:59:15,045 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
293 |
+
2022-07-31 11:59:28,785 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
294 |
+
2022-07-31 11:59:30,201 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
295 |
+
2022-07-31 11:59:30,202 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
296 |
+
2022-07-31 11:59:30,786 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
297 |
+
2022-07-31 11:59:32,787 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
298 |
+
2022-07-31 11:59:34,788 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
299 |
+
2022-07-31 11:59:36,788 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
300 |
+
2022-07-31 11:59:38,790 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
301 |
+
2022-07-31 11:59:39,128 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
302 |
+
2022-07-31 11:59:40,791 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
303 |
+
2022-07-31 11:59:42,792 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
304 |
+
2022-07-31 11:59:44,793 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
305 |
+
2022-07-31 11:59:45,337 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
306 |
+
2022-07-31 11:59:45,338 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
307 |
+
2022-07-31 11:59:46,794 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
308 |
+
2022-07-31 11:59:48,795 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
309 |
+
2022-07-31 11:59:50,796 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
310 |
+
2022-07-31 11:59:52,797 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
311 |
+
2022-07-31 11:59:54,798 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
312 |
+
2022-07-31 11:59:56,799 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
313 |
+
2022-07-31 11:59:58,800 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
314 |
+
2022-07-31 12:00:00,483 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
315 |
+
2022-07-31 12:00:00,483 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
316 |
+
2022-07-31 12:00:04,802 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
317 |
+
2022-07-31 12:00:06,804 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
318 |
+
2022-07-31 12:00:08,805 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
319 |
+
2022-07-31 12:00:09,194 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
320 |
+
2022-07-31 12:00:10,807 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
321 |
+
2022-07-31 12:00:12,808 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
322 |
+
2022-07-31 12:00:14,809 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
323 |
+
2022-07-31 12:00:15,621 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
324 |
+
2022-07-31 12:00:15,622 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
325 |
+
2022-07-31 12:00:30,785 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
326 |
+
2022-07-31 12:00:30,786 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
327 |
+
2022-07-31 12:00:39,276 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
328 |
+
2022-07-31 12:00:45,936 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
329 |
+
2022-07-31 12:00:45,936 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
330 |
+
2022-07-31 12:00:46,824 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
331 |
+
2022-07-31 12:00:48,825 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
332 |
+
2022-07-31 12:00:50,826 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
333 |
+
2022-07-31 12:00:52,828 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
334 |
+
2022-07-31 12:00:54,828 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
335 |
+
2022-07-31 12:00:56,829 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
336 |
+
2022-07-31 12:00:58,830 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
337 |
+
2022-07-31 12:01:00,831 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
338 |
+
2022-07-31 12:01:01,109 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
339 |
+
2022-07-31 12:01:01,109 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
340 |
+
2022-07-31 12:01:02,832 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
341 |
+
2022-07-31 12:01:04,833 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
342 |
+
2022-07-31 12:01:06,834 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
343 |
+
2022-07-31 12:01:08,835 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
344 |
+
2022-07-31 12:01:09,352 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
345 |
+
2022-07-31 12:01:10,836 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
346 |
+
2022-07-31 12:01:12,837 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
347 |
+
2022-07-31 12:01:14,838 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
348 |
+
2022-07-31 12:01:16,273 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
349 |
+
2022-07-31 12:01:16,273 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
350 |
+
2022-07-31 12:01:16,839 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
351 |
+
2022-07-31 12:01:20,841 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
352 |
+
2022-07-31 12:01:22,842 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
353 |
+
2022-07-31 12:01:24,843 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
354 |
+
2022-07-31 12:01:26,844 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
355 |
+
2022-07-31 12:01:28,845 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
356 |
+
2022-07-31 12:01:30,846 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
357 |
+
2022-07-31 12:01:31,429 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
358 |
+
2022-07-31 12:01:31,429 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
359 |
+
2022-07-31 12:01:32,847 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
360 |
+
2022-07-31 12:01:34,852 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
361 |
+
2022-07-31 12:01:36,853 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
362 |
+
2022-07-31 12:01:38,854 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
363 |
+
2022-07-31 12:01:39,424 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
364 |
+
2022-07-31 12:01:40,855 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
365 |
+
2022-07-31 12:01:42,856 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
366 |
+
2022-07-31 12:01:44,857 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
367 |
+
2022-07-31 12:01:46,572 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
368 |
+
2022-07-31 12:01:46,572 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
369 |
+
2022-07-31 12:01:46,858 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
370 |
+
2022-07-31 12:01:48,862 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
371 |
+
2022-07-31 12:01:50,863 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
372 |
+
2022-07-31 12:01:52,870 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
373 |
+
2022-07-31 12:01:54,871 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
374 |
+
2022-07-31 12:01:56,873 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
375 |
+
2022-07-31 12:01:58,873 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
376 |
+
2022-07-31 12:02:00,874 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
377 |
+
2022-07-31 12:02:01,748 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
378 |
+
2022-07-31 12:02:01,749 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
379 |
+
2022-07-31 12:02:02,875 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
380 |
+
2022-07-31 12:02:04,877 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
381 |
+
2022-07-31 12:02:06,879 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
382 |
+
2022-07-31 12:02:08,880 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
383 |
+
2022-07-31 12:02:09,502 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
384 |
+
2022-07-31 12:02:10,881 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
385 |
+
2022-07-31 12:02:16,888 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
386 |
+
2022-07-31 12:02:16,888 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
387 |
+
2022-07-31 12:02:32,103 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
388 |
+
2022-07-31 12:02:32,104 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
389 |
+
2022-07-31 12:02:39,568 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
390 |
+
2022-07-31 12:02:47,238 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
391 |
+
2022-07-31 12:02:47,238 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
392 |
+
2022-07-31 12:02:57,898 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
393 |
+
2022-07-31 12:03:02,641 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
394 |
+
2022-07-31 12:03:02,641 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
395 |
+
2022-07-31 12:03:03,901 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
396 |
+
2022-07-31 12:03:09,631 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
397 |
+
2022-07-31 12:03:09,903 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
398 |
+
2022-07-31 12:03:16,906 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
399 |
+
2022-07-31 12:03:17,855 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
400 |
+
2022-07-31 12:03:17,856 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
401 |
+
2022-07-31 12:03:22,909 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
402 |
+
2022-07-31 12:03:29,912 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
403 |
+
2022-07-31 12:03:31,913 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
404 |
+
2022-07-31 12:03:33,096 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
405 |
+
2022-07-31 12:03:33,096 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
406 |
+
2022-07-31 12:03:35,914 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
407 |
+
2022-07-31 12:03:37,915 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
408 |
+
2022-07-31 12:03:39,694 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
409 |
+
2022-07-31 12:03:39,916 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
410 |
+
2022-07-31 12:03:47,918 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
411 |
+
2022-07-31 12:03:48,475 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
412 |
+
2022-07-31 12:03:48,475 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
413 |
+
2022-07-31 12:04:03,828 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
414 |
+
2022-07-31 12:04:03,828 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
415 |
+
2022-07-31 12:04:08,926 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
416 |
+
2022-07-31 12:04:09,756 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
417 |
+
2022-07-31 12:04:18,985 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: stop_status
|
418 |
+
2022-07-31 12:04:18,985 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: stop_status
|
419 |
+
2022-07-31 12:04:20,930 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
420 |
+
2022-07-31 12:04:22,387 DEBUG SenderThread:1522181 [sender.py:send():234] send: telemetry
|
421 |
+
2022-07-31 12:04:22,387 DEBUG SenderThread:1522181 [sender.py:send():234] send: exit
|
422 |
+
2022-07-31 12:04:22,387 INFO SenderThread:1522181 [sender.py:send_exit():366] handling exit code: 1
|
423 |
+
2022-07-31 12:04:22,389 INFO SenderThread:1522181 [sender.py:send_exit():368] handling runtime: 764
|
424 |
+
2022-07-31 12:04:22,389 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
425 |
+
2022-07-31 12:04:22,390 INFO SenderThread:1522181 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
426 |
+
2022-07-31 12:04:22,390 INFO SenderThread:1522181 [sender.py:send_exit():374] send defer
|
427 |
+
2022-07-31 12:04:22,390 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
428 |
+
2022-07-31 12:04:22,391 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
429 |
+
2022-07-31 12:04:22,391 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 0
|
430 |
+
2022-07-31 12:04:22,391 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
431 |
+
2022-07-31 12:04:22,391 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 0
|
432 |
+
2022-07-31 12:04:22,391 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 1
|
433 |
+
2022-07-31 12:04:22,392 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
434 |
+
2022-07-31 12:04:22,392 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 1
|
435 |
+
2022-07-31 12:04:22,482 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
436 |
+
2022-07-31 12:04:22,482 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 1
|
437 |
+
2022-07-31 12:04:22,482 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 2
|
438 |
+
2022-07-31 12:04:22,482 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
439 |
+
2022-07-31 12:04:22,482 DEBUG SenderThread:1522181 [sender.py:send():234] send: stats
|
440 |
+
2022-07-31 12:04:22,482 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 2
|
441 |
+
2022-07-31 12:04:22,483 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
442 |
+
2022-07-31 12:04:22,483 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 2
|
443 |
+
2022-07-31 12:04:22,483 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 3
|
444 |
+
2022-07-31 12:04:22,483 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
445 |
+
2022-07-31 12:04:22,483 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 3
|
446 |
+
2022-07-31 12:04:22,484 DEBUG SenderThread:1522181 [sender.py:send():234] send: summary
|
447 |
+
2022-07-31 12:04:22,484 INFO SenderThread:1522181 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
448 |
+
2022-07-31 12:04:22,484 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
449 |
+
2022-07-31 12:04:22,484 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 3
|
450 |
+
2022-07-31 12:04:22,484 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 4
|
451 |
+
2022-07-31 12:04:22,484 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
452 |
+
2022-07-31 12:04:22,485 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 4
|
453 |
+
2022-07-31 12:04:22,485 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
454 |
+
2022-07-31 12:04:22,485 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 4
|
455 |
+
2022-07-31 12:04:22,493 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
456 |
+
2022-07-31 12:04:22,646 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 5
|
457 |
+
2022-07-31 12:04:22,646 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
458 |
+
2022-07-31 12:04:22,647 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
459 |
+
2022-07-31 12:04:22,647 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 5
|
460 |
+
2022-07-31 12:04:22,647 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
461 |
+
2022-07-31 12:04:22,647 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 5
|
462 |
+
2022-07-31 12:04:22,647 INFO SenderThread:1522181 [dir_watcher.py:finish():283] shutting down directory watcher
|
463 |
+
2022-07-31 12:04:22,748 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
464 |
+
2022-07-31 12:04:22,931 INFO Thread-8 :1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
465 |
+
2022-07-31 12:04:22,931 INFO SenderThread:1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/config.yaml
|
466 |
+
2022-07-31 12:04:22,932 INFO SenderThread:1522181 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/wandb-summary.json
|
467 |
+
2022-07-31 12:04:22,932 INFO SenderThread:1522181 [dir_watcher.py:finish():313] scan: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files
|
468 |
+
2022-07-31 12:04:22,932 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/config.yaml config.yaml
|
469 |
+
2022-07-31 12:04:22,932 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/diff.patch diff.patch
|
470 |
+
2022-07-31 12:04:22,932 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/requirements.txt requirements.txt
|
471 |
+
2022-07-31 12:04:22,932 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log output.log
|
472 |
+
2022-07-31 12:04:22,933 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/wandb-summary.json wandb-summary.json
|
473 |
+
2022-07-31 12:04:22,933 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/wandb-metadata.json wandb-metadata.json
|
474 |
+
2022-07-31 12:04:22,933 INFO SenderThread:1522181 [dir_watcher.py:finish():327] scan save: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/code/run_flax_speech_recognition_ctc.py code/run_flax_speech_recognition_ctc.py
|
475 |
+
2022-07-31 12:04:22,934 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 6
|
476 |
+
2022-07-31 12:04:22,934 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
477 |
+
2022-07-31 12:04:22,934 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
478 |
+
2022-07-31 12:04:22,937 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 6
|
479 |
+
2022-07-31 12:04:22,938 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
480 |
+
2022-07-31 12:04:22,940 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 6
|
481 |
+
2022-07-31 12:04:22,941 INFO SenderThread:1522181 [file_pusher.py:finish():177] shutting down file pusher
|
482 |
+
2022-07-31 12:04:23,036 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
483 |
+
2022-07-31 12:04:23,036 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
484 |
+
2022-07-31 12:04:23,138 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
485 |
+
2022-07-31 12:04:23,138 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
486 |
+
2022-07-31 12:04:23,240 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
487 |
+
2022-07-31 12:04:23,240 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
488 |
+
2022-07-31 12:04:23,342 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
489 |
+
2022-07-31 12:04:23,342 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
490 |
+
2022-07-31 12:04:23,406 INFO Thread-15 :1522181 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/requirements.txt
|
491 |
+
2022-07-31 12:04:23,412 INFO Thread-14 :1522181 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/config.yaml
|
492 |
+
2022-07-31 12:04:23,444 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
493 |
+
2022-07-31 12:04:23,444 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
494 |
+
2022-07-31 12:04:23,455 INFO Thread-17 :1522181 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/wandb-summary.json
|
495 |
+
2022-07-31 12:04:23,546 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
496 |
+
2022-07-31 12:04:23,546 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
497 |
+
2022-07-31 12:04:23,623 INFO Thread-16 :1522181 [upload_job.py:push():137] Uploaded file /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/files/output.log
|
498 |
+
2022-07-31 12:04:23,648 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
499 |
+
2022-07-31 12:04:23,648 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
500 |
+
2022-07-31 12:04:23,750 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
501 |
+
2022-07-31 12:04:23,750 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
502 |
+
2022-07-31 12:04:23,823 INFO Thread-7 :1522181 [sender.py:transition_state():387] send defer: 7
|
503 |
+
2022-07-31 12:04:23,824 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
504 |
+
2022-07-31 12:04:23,824 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 7
|
505 |
+
2022-07-31 12:04:23,824 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
506 |
+
2022-07-31 12:04:23,824 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 7
|
507 |
+
2022-07-31 12:04:23,852 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
508 |
+
2022-07-31 12:04:24,327 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 8
|
509 |
+
2022-07-31 12:04:24,327 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
510 |
+
2022-07-31 12:04:24,328 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
511 |
+
2022-07-31 12:04:24,328 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 8
|
512 |
+
2022-07-31 12:04:24,328 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
513 |
+
2022-07-31 12:04:24,328 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 8
|
514 |
+
2022-07-31 12:04:24,328 INFO SenderThread:1522181 [sender.py:transition_state():387] send defer: 9
|
515 |
+
2022-07-31 12:04:24,328 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: defer
|
516 |
+
2022-07-31 12:04:24,329 INFO HandlerThread:1522181 [handler.py:handle_request_defer():147] handle defer: 9
|
517 |
+
2022-07-31 12:04:24,329 DEBUG SenderThread:1522181 [sender.py:send():234] send: final
|
518 |
+
2022-07-31 12:04:24,329 DEBUG SenderThread:1522181 [sender.py:send():234] send: footer
|
519 |
+
2022-07-31 12:04:24,329 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: defer
|
520 |
+
2022-07-31 12:04:24,329 INFO SenderThread:1522181 [sender.py:send_request_defer():383] handle sender defer: 9
|
521 |
+
2022-07-31 12:04:24,429 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: poll_exit
|
522 |
+
2022-07-31 12:04:24,430 DEBUG SenderThread:1522181 [sender.py:send_request():248] send_request: poll_exit
|
523 |
+
2022-07-31 12:04:24,430 INFO SenderThread:1522181 [file_pusher.py:join():182] waiting for file pusher
|
524 |
+
2022-07-31 12:04:24,737 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: get_summary
|
525 |
+
2022-07-31 12:04:24,738 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: sampled_history
|
526 |
+
2022-07-31 12:04:24,738 DEBUG HandlerThread:1522181 [handler.py:handle_request():130] handle_request: shutdown
|
527 |
+
2022-07-31 12:04:24,738 INFO HandlerThread:1522181 [handler.py:finish():731] shutting down handler
|
528 |
+
2022-07-31 12:04:25,329 INFO WriterThread:1522181 [datastore.py:close():281] close: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/run-a9kwr28f.wandb
|
529 |
+
2022-07-31 12:04:25,735 INFO SenderThread:1522181 [sender.py:finish():1070] shutting down sender
|
530 |
+
2022-07-31 12:04:25,736 INFO SenderThread:1522181 [file_pusher.py:finish():177] shutting down file pusher
|
531 |
+
2022-07-31 12:04:25,736 INFO SenderThread:1522181 [file_pusher.py:join():182] waiting for file pusher
|
532 |
+
2022-07-31 12:04:25,739 INFO MainThread:1522181 [internal.py:handle_exit():77] Internal process exited
|
wandb/run-20220731_115136-a9kwr28f/logs/debug.log
ADDED
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_setup.py:_flush():71] setting env: {'project': 'wav2vec2', 'entity': 'NbAiLab'}
|
2 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_setup.py:_flush():71] setting login settings: {}
|
3 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_init.py:_log_setup():371] Logging user logs to /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/logs/debug.log
|
4 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_init.py:_log_setup():372] Logging internal logs to /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_115136-a9kwr28f/logs/debug-internal.log
|
5 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_init.py:init():404] calling init triggers
|
6 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_init.py:init():409] wandb.init called with sweep_config: {}
|
7 |
+
config: {}
|
8 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [wandb_init.py:init():460] starting backend
|
9 |
+
2022-07-31 11:51:36,421 INFO MainThread:1520908 [backend.py:_multiprocessing_setup():99] multiprocessing start_methods=fork,spawn,forkserver, using: spawn
|
10 |
+
2022-07-31 11:51:36,471 INFO MainThread:1520908 [backend.py:ensure_launched():216] starting backend process...
|
11 |
+
2022-07-31 11:51:36,516 INFO MainThread:1520908 [backend.py:ensure_launched():221] started backend process with pid: 1522181
|
12 |
+
2022-07-31 11:51:36,518 INFO MainThread:1520908 [wandb_init.py:init():469] backend started and connected
|
13 |
+
2022-07-31 11:51:36,533 INFO MainThread:1520908 [wandb_init.py:init():533] updated telemetry
|
14 |
+
2022-07-31 11:51:36,647 INFO MainThread:1520908 [wandb_init.py:init():563] communicating current version
|
15 |
+
2022-07-31 11:51:37,358 INFO MainThread:1520908 [wandb_init.py:init():568] got version response upgrade_message: "wandb version 0.12.21 is available! To upgrade, please run:\n $ pip install wandb --upgrade"
|
16 |
+
|
17 |
+
2022-07-31 11:51:37,358 INFO MainThread:1520908 [wandb_init.py:init():578] communicating run to backend with 30 second timeout
|
18 |
+
2022-07-31 11:51:37,544 INFO MainThread:1520908 [wandb_init.py:init():606] starting run threads in backend
|
19 |
+
2022-07-31 11:51:40,302 INFO MainThread:1520908 [wandb_run.py:_console_start():1810] atexit reg
|
20 |
+
2022-07-31 11:51:40,302 INFO MainThread:1520908 [wandb_run.py:_redirect():1684] redirect: SettingsConsole.REDIRECT
|
21 |
+
2022-07-31 11:51:40,303 INFO MainThread:1520908 [wandb_run.py:_redirect():1689] Redirecting console.
|
22 |
+
2022-07-31 11:51:40,305 INFO MainThread:1520908 [wandb_run.py:_redirect():1745] Redirects installed.
|
23 |
+
2022-07-31 11:51:40,305 INFO MainThread:1520908 [wandb_init.py:init():633] run started, returning control to user process
|
24 |
+
2022-07-31 12:04:20,156 INFO MainThread:1520908 [wandb_run.py:_atexit_cleanup():1780] got exitcode: 1
|
25 |
+
2022-07-31 12:04:20,158 INFO MainThread:1520908 [wandb_run.py:_restore():1752] restore
|
26 |
+
2022-07-31 12:04:22,391 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
27 |
+
wandb_count: 2
|
28 |
+
other_count: 1
|
29 |
+
}
|
30 |
+
pusher_stats {
|
31 |
+
uploaded_bytes: 301937
|
32 |
+
total_bytes: 301937
|
33 |
+
}
|
34 |
+
|
35 |
+
2022-07-31 12:04:22,647 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
36 |
+
wandb_count: 2
|
37 |
+
other_count: 1
|
38 |
+
}
|
39 |
+
pusher_stats {
|
40 |
+
uploaded_bytes: 301937
|
41 |
+
total_bytes: 301937
|
42 |
+
}
|
43 |
+
|
44 |
+
2022-07-31 12:04:22,934 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
45 |
+
wandb_count: 6
|
46 |
+
other_count: 1
|
47 |
+
}
|
48 |
+
pusher_stats {
|
49 |
+
uploaded_bytes: 301937
|
50 |
+
total_bytes: 617690
|
51 |
+
}
|
52 |
+
|
53 |
+
2022-07-31 12:04:23,037 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
54 |
+
wandb_count: 6
|
55 |
+
other_count: 1
|
56 |
+
}
|
57 |
+
pusher_stats {
|
58 |
+
uploaded_bytes: 301937
|
59 |
+
total_bytes: 617690
|
60 |
+
}
|
61 |
+
|
62 |
+
2022-07-31 12:04:23,139 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
63 |
+
wandb_count: 6
|
64 |
+
other_count: 1
|
65 |
+
}
|
66 |
+
pusher_stats {
|
67 |
+
uploaded_bytes: 617690
|
68 |
+
total_bytes: 617690
|
69 |
+
}
|
70 |
+
|
71 |
+
2022-07-31 12:04:23,241 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
72 |
+
wandb_count: 6
|
73 |
+
other_count: 1
|
74 |
+
}
|
75 |
+
pusher_stats {
|
76 |
+
uploaded_bytes: 617690
|
77 |
+
total_bytes: 617690
|
78 |
+
}
|
79 |
+
|
80 |
+
2022-07-31 12:04:23,343 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
81 |
+
wandb_count: 6
|
82 |
+
other_count: 1
|
83 |
+
}
|
84 |
+
pusher_stats {
|
85 |
+
uploaded_bytes: 617690
|
86 |
+
total_bytes: 617690
|
87 |
+
}
|
88 |
+
|
89 |
+
2022-07-31 12:04:23,445 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
90 |
+
wandb_count: 6
|
91 |
+
other_count: 1
|
92 |
+
}
|
93 |
+
pusher_stats {
|
94 |
+
uploaded_bytes: 617690
|
95 |
+
total_bytes: 617690
|
96 |
+
}
|
97 |
+
|
98 |
+
2022-07-31 12:04:23,547 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
99 |
+
wandb_count: 6
|
100 |
+
other_count: 1
|
101 |
+
}
|
102 |
+
pusher_stats {
|
103 |
+
uploaded_bytes: 617690
|
104 |
+
total_bytes: 617690
|
105 |
+
}
|
106 |
+
|
107 |
+
2022-07-31 12:04:23,649 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
108 |
+
wandb_count: 6
|
109 |
+
other_count: 1
|
110 |
+
}
|
111 |
+
pusher_stats {
|
112 |
+
uploaded_bytes: 617690
|
113 |
+
total_bytes: 617690
|
114 |
+
}
|
115 |
+
|
116 |
+
2022-07-31 12:04:23,751 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
117 |
+
wandb_count: 6
|
118 |
+
other_count: 1
|
119 |
+
}
|
120 |
+
pusher_stats {
|
121 |
+
uploaded_bytes: 617690
|
122 |
+
total_bytes: 617690
|
123 |
+
}
|
124 |
+
|
125 |
+
2022-07-31 12:04:24,328 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: file_counts {
|
126 |
+
wandb_count: 6
|
127 |
+
other_count: 1
|
128 |
+
}
|
129 |
+
pusher_stats {
|
130 |
+
uploaded_bytes: 617690
|
131 |
+
total_bytes: 617690
|
132 |
+
}
|
133 |
+
|
134 |
+
2022-07-31 12:04:24,736 INFO MainThread:1520908 [wandb_run.py:_wait_for_finish():1912] got exit ret: done: true
|
135 |
+
exit_result {
|
136 |
+
}
|
137 |
+
file_counts {
|
138 |
+
wandb_count: 6
|
139 |
+
other_count: 1
|
140 |
+
}
|
141 |
+
pusher_stats {
|
142 |
+
uploaded_bytes: 617690
|
143 |
+
total_bytes: 617690
|
144 |
+
}
|
145 |
+
local_info {
|
146 |
+
}
|
147 |
+
|
148 |
+
2022-07-31 12:04:26,498 INFO MainThread:1520908 [wandb_run.py:_append_files():2180] logging synced files
|
wandb/run-20220731_115136-a9kwr28f/run-a9kwr28f.wandb
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:b2f5d8625d527afe9282afb0f6f02b299bf8395d385b9e5d493509681c6918ce
|
3 |
+
size 439578
|
wandb/run-20220731_120912-3m2amvk9/files/code/run_flax_speech_recognition_ctc.py
ADDED
@@ -0,0 +1,1604 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/usr/bin/env python
|
2 |
+
# coding=utf-8
|
3 |
+
# Copyright 2022 The HuggingFace Team All rights reserved.
|
4 |
+
#
|
5 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6 |
+
# you may not use this file except in compliance with the License.
|
7 |
+
# You may obtain a copy of the License at
|
8 |
+
#
|
9 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10 |
+
#
|
11 |
+
# Unless required by applicable law or agreed to in writing, software
|
12 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14 |
+
# See the License for the specific language governing permissions and
|
15 |
+
# limitations under the License.
|
16 |
+
"""
|
17 |
+
Fine-tuning the Flax library models for connectionist temporal classification (CTC) speech recognition.
|
18 |
+
"""
|
19 |
+
# You can also adapt this script on your own sequence to sequence task. Pointers for this are left as comments.
|
20 |
+
|
21 |
+
import logging
|
22 |
+
import math
|
23 |
+
import os
|
24 |
+
import re
|
25 |
+
import sys
|
26 |
+
import time
|
27 |
+
from dataclasses import dataclass, field
|
28 |
+
from pathlib import Path
|
29 |
+
from typing import Any, Callable, Dict, List, Optional, Union
|
30 |
+
|
31 |
+
import datasets
|
32 |
+
import numpy as np
|
33 |
+
from datasets import DatasetDict, load_dataset, load_metric
|
34 |
+
from tqdm import tqdm
|
35 |
+
|
36 |
+
import flax
|
37 |
+
import jax
|
38 |
+
import jax.numpy as jnp
|
39 |
+
import optax
|
40 |
+
import transformers
|
41 |
+
import wandb as wandb
|
42 |
+
from flax import core, jax_utils, struct, traverse_util
|
43 |
+
from flax.jax_utils import unreplicate, pad_shard_unpad
|
44 |
+
from flax.training.common_utils import get_metrics, shard, shard_prng_key
|
45 |
+
from huggingface_hub import Repository
|
46 |
+
from models import Wav2Vec2Config, FlaxWav2Vec2ForCTC
|
47 |
+
from optax._src import linear_algebra
|
48 |
+
from transformers import (
|
49 |
+
AutoFeatureExtractor,
|
50 |
+
AutoProcessor,
|
51 |
+
AutoTokenizer,
|
52 |
+
HfArgumentParser,
|
53 |
+
TrainingArguments,
|
54 |
+
is_tensorboard_available,
|
55 |
+
set_seed,
|
56 |
+
)
|
57 |
+
from transformers.file_utils import get_full_repo_name
|
58 |
+
from transformers.utils import check_min_version
|
59 |
+
from transformers.utils.versions import require_version
|
60 |
+
|
61 |
+
|
62 |
+
# Will error if the minimal version of Transformers is not installed. Remove at your own risks.
|
63 |
+
check_min_version("4.17.0.dev0")
|
64 |
+
|
65 |
+
require_version("datasets>=1.18.0", "To fix: pip install -r examples/pytorch/speech-recognition/requirements.txt")
|
66 |
+
|
67 |
+
logger = logging.getLogger(__name__)
|
68 |
+
|
69 |
+
|
70 |
+
@flax.struct.dataclass
|
71 |
+
class ModelArguments:
|
72 |
+
"""
|
73 |
+
Arguments pertaining to which model/config/tokenizer we are going to fine-tune from.
|
74 |
+
"""
|
75 |
+
|
76 |
+
model_name_or_path: str = field(
|
77 |
+
metadata={"help": "Path to pretrained model or model identifier from huggingface.co/models"}
|
78 |
+
)
|
79 |
+
config_name: Optional[str] = field(
|
80 |
+
default=None, metadata={"help": "Pretrained config name or path if not the same as model_name"}
|
81 |
+
)
|
82 |
+
tokenizer_name: Optional[str] = field(
|
83 |
+
default=None, metadata={"help": "Pretrained tokenizer name or path if not the same as model_name"}
|
84 |
+
)
|
85 |
+
feature_extractor_name: Optional[str] = field(
|
86 |
+
default=None, metadata={"help": "feature extractor name or path if not the same as model_name"}
|
87 |
+
)
|
88 |
+
cache_dir: Optional[str] = field(
|
89 |
+
default=None,
|
90 |
+
metadata={"help": "Where to store the pretrained models downloaded from huggingface.co"},
|
91 |
+
)
|
92 |
+
use_fast_tokenizer: bool = field(
|
93 |
+
default=True,
|
94 |
+
metadata={"help": "Whether to use one of the fast tokenizer (backed by the tokenizers library) or not."},
|
95 |
+
)
|
96 |
+
model_revision: str = field(
|
97 |
+
default="main",
|
98 |
+
metadata={"help": "The specific model version to use (can be a branch name, tag name or commit id)."},
|
99 |
+
)
|
100 |
+
use_auth_token: bool = field(
|
101 |
+
default=False,
|
102 |
+
metadata={
|
103 |
+
"help": "Will use the token generated when running `transformers-cli login` (necessary to use this script "
|
104 |
+
"with private models)."
|
105 |
+
},
|
106 |
+
)
|
107 |
+
freeze_feature_encoder: bool = field(
|
108 |
+
default=True, metadata={"help": "Whether to freeze the feature encoder layers of the model."}
|
109 |
+
)
|
110 |
+
attention_dropout: float = field(
|
111 |
+
default=0.0, metadata={"help": "The dropout ratio for the attention probabilities."}
|
112 |
+
)
|
113 |
+
activation_dropout: float = field(
|
114 |
+
default=0.1,
|
115 |
+
metadata={
|
116 |
+
"help": "The hidden activation dropout probability in the embeddings, encoder, and pooler."
|
117 |
+
},
|
118 |
+
)
|
119 |
+
hidden_dropout: float = field(
|
120 |
+
default=0.1,
|
121 |
+
metadata={
|
122 |
+
"help": "The dropout probability for all fully connected layers in the embeddings, encoder, and pooler."
|
123 |
+
},
|
124 |
+
)
|
125 |
+
feat_proj_dropout: float = field(
|
126 |
+
default=0.0,
|
127 |
+
metadata={
|
128 |
+
"help": "The feat proj dropout probability for feature encoder representations."
|
129 |
+
},
|
130 |
+
)
|
131 |
+
final_dropout: float = field(
|
132 |
+
default=0.0,
|
133 |
+
metadata={"help": "The dropout probability for the final projection layer."},
|
134 |
+
)
|
135 |
+
mask_time_prob: float = field(
|
136 |
+
default=0.1,
|
137 |
+
metadata={
|
138 |
+
"help": "The spec aug dropout probability for feature encoder representations."
|
139 |
+
},
|
140 |
+
)
|
141 |
+
mask_time_length: int = field(
|
142 |
+
default=10,
|
143 |
+
metadata={"help": "Length of vector span to mask along the time axis."},
|
144 |
+
)
|
145 |
+
mask_feature_prob: float = field(
|
146 |
+
default=0.0,
|
147 |
+
metadata={
|
148 |
+
"help": "Probability of each feature vector along the feature axis to be chosen as the start of the vector"
|
149 |
+
"span to be masked. Approximately ``mask_feature_prob * sequence_length // mask_feature_length`` feature bins will be masked along the time axis."
|
150 |
+
},
|
151 |
+
)
|
152 |
+
mask_feature_length: int = field(
|
153 |
+
default=10,
|
154 |
+
metadata={"help": "Length of vector span to mask along the feature axis."},
|
155 |
+
)
|
156 |
+
layerdrop: float = field(default=0.0, metadata={"help": "The LayerDrop probability."})
|
157 |
+
ctc_loss_reduction: Optional[str] = field(
|
158 |
+
default="mean", metadata={"help": "The way the ctc loss should be reduced. Should be one of 'mean' or 'sum'."}
|
159 |
+
)
|
160 |
+
ctc_zero_infinity: Optional[bool] = field(
|
161 |
+
default=False, metadata={"help": "If True, will try yo aboud the CTC loss goinf to infinity."}
|
162 |
+
)
|
163 |
+
|
164 |
+
|
165 |
+
@flax.struct.dataclass
|
166 |
+
class DataTrainingArguments:
|
167 |
+
"""
|
168 |
+
Arguments pertaining to what data we are going to input our model for training and eval.
|
169 |
+
"""
|
170 |
+
|
171 |
+
dataset_name: str = field(
|
172 |
+
default=None, metadata={"help": "The name of the dataset to use (via the datasets library)."}
|
173 |
+
)
|
174 |
+
dataset_config_name: Optional[str] = field(
|
175 |
+
default=None, metadata={"help": "The configuration name of the dataset to use (via the datasets library)."}
|
176 |
+
)
|
177 |
+
text_column: Optional[str] = field(
|
178 |
+
default=None,
|
179 |
+
metadata={"help": "The name of the column in the datasets containing the full texts (for summarization)."},
|
180 |
+
)
|
181 |
+
dataset_cache_dir: Optional[str] = field(
|
182 |
+
default=None, metadata={"help": "Path to cache directory for saving and loading datasets"}
|
183 |
+
)
|
184 |
+
overwrite_cache: bool = field(
|
185 |
+
default=False, metadata={"help": "Overwrite the cached training and evaluation sets"}
|
186 |
+
)
|
187 |
+
preprocessing_num_workers: Optional[int] = field(
|
188 |
+
default=None,
|
189 |
+
metadata={"help": "The number of processes to use for the preprocessing."},
|
190 |
+
)
|
191 |
+
max_train_samples: Optional[int] = field(
|
192 |
+
default=None,
|
193 |
+
metadata={
|
194 |
+
"help": "For debugging purposes or quicker training, truncate the number of training examples to this "
|
195 |
+
"value if set."
|
196 |
+
},
|
197 |
+
)
|
198 |
+
max_eval_samples: Optional[int] = field(
|
199 |
+
default=None,
|
200 |
+
metadata={
|
201 |
+
"help": "For debugging purposes or quicker training, truncate the number of evaluation examples to this "
|
202 |
+
"value if set."
|
203 |
+
},
|
204 |
+
)
|
205 |
+
max_test_samples: Optional[int] = field(
|
206 |
+
default=None,
|
207 |
+
metadata={
|
208 |
+
"help": "For debugging purposes or quicker training, truncate the number of test examples to this "
|
209 |
+
"value if set."
|
210 |
+
},
|
211 |
+
)
|
212 |
+
audio_column_name: str = field(
|
213 |
+
default="audio",
|
214 |
+
metadata={"help": "The name of the dataset column containing the audio data. Defaults to 'audio'"},
|
215 |
+
)
|
216 |
+
text_column_name: str = field(
|
217 |
+
default="text",
|
218 |
+
metadata={"help": "The name of the dataset column containing the text data. Defaults to 'text'"},
|
219 |
+
)
|
220 |
+
max_duration_in_seconds: float = field(
|
221 |
+
default=20.0,
|
222 |
+
metadata={
|
223 |
+
"help": "Truncate audio files that are longer than `max_duration_in_seconds` seconds to 'max_duration_in_seconds`"
|
224 |
+
},
|
225 |
+
)
|
226 |
+
min_duration_in_seconds: float = field(
|
227 |
+
default=0.0, metadata={"help": "Filter audio files that are shorter than `min_duration_in_seconds` seconds"}
|
228 |
+
)
|
229 |
+
max_label_length: Optional[int] = field(
|
230 |
+
default=512,
|
231 |
+
metadata={
|
232 |
+
"help": "The minimum total sequence length for target text after tokenization. Sequences shorter "
|
233 |
+
"than this will be filtered."
|
234 |
+
},
|
235 |
+
)
|
236 |
+
min_label_length: Optional[int] = field(
|
237 |
+
default=2,
|
238 |
+
metadata={
|
239 |
+
"help": "The minimum total sequence length for target text after tokenization. Sequences shorter "
|
240 |
+
"than this will be filtered."
|
241 |
+
},
|
242 |
+
)
|
243 |
+
pad_input_to_multiple_of: Optional[int] = field(
|
244 |
+
default=32000,
|
245 |
+
metadata={
|
246 |
+
"help": "If set will pad the input sequence to a multiple of the provided value. "
|
247 |
+
"This is important to avoid triggering recompilations on TPU."
|
248 |
+
},
|
249 |
+
)
|
250 |
+
pad_target_to_multiple_of: Optional[int] = field(
|
251 |
+
default=None,
|
252 |
+
metadata={
|
253 |
+
"help": "If set will pad the target sequence to a multiple of the provided value. "
|
254 |
+
"This is important to avoid triggering recompilations on TPU."
|
255 |
+
},
|
256 |
+
)
|
257 |
+
preprocessing_only: bool = field(
|
258 |
+
default=False,
|
259 |
+
metadata={
|
260 |
+
"help": "Whether to only do data preprocessing and skip training. "
|
261 |
+
"This is especially useful when data preprocessing errors out in distributed training due to timeout. "
|
262 |
+
"In this case, one should run the preprocessing in a non-distributed setup with `preprocessing_only=True` "
|
263 |
+
"so that the cached datasets can consequently be loaded in distributed training"
|
264 |
+
},
|
265 |
+
)
|
266 |
+
train_split_name: str = field(
|
267 |
+
default="train",
|
268 |
+
metadata={
|
269 |
+
"help": "The name of the training data set split to use (via the datasets library). Defaults to 'train'"
|
270 |
+
},
|
271 |
+
)
|
272 |
+
eval_split_name: str = field(
|
273 |
+
default="validation",
|
274 |
+
metadata={
|
275 |
+
"help": "The name of the training data set split to use (via the datasets library). Defaults to 'train'"
|
276 |
+
},
|
277 |
+
)
|
278 |
+
do_lower_case: bool = field(
|
279 |
+
default=True,
|
280 |
+
metadata={"help": "Whether the target text should be lower cased."},
|
281 |
+
)
|
282 |
+
wandb_project: str = field(
|
283 |
+
default="flax-speech-recognition-ctc",
|
284 |
+
metadata={"help": "The name of the wandb project."},
|
285 |
+
)
|
286 |
+
wandb_name: str = field(
|
287 |
+
default=None,
|
288 |
+
metadata={"help": "The name of the wandb run."},
|
289 |
+
)
|
290 |
+
wandb_job_type: str = field(
|
291 |
+
default="CTC",
|
292 |
+
metadata={"help": "The name of the wandb job type."},
|
293 |
+
)
|
294 |
+
test_split_name: str = field(
|
295 |
+
default="test",
|
296 |
+
metadata={"help": "The name of the test data set split to use (via the datasets library). Defaults to 'test'"},
|
297 |
+
)
|
298 |
+
remove_punctuation: bool = field(
|
299 |
+
default=False, metadata={"help": "Whether or not to remove punctuation during training."}
|
300 |
+
)
|
301 |
+
|
302 |
+
|
303 |
+
# @flax.struct.dataclass
|
304 |
+
@dataclass
|
305 |
+
class FlaxTrainingArguments(TrainingArguments):
|
306 |
+
precision: str = field(
|
307 |
+
default="full",
|
308 |
+
metadata={
|
309 |
+
"help": "Whether to enable mixed-precision training. If true, the optimizer is stored in half-precision (bfloat16) and computations are executed in half-precision"
|
310 |
+
"**Note that this only specifies the dtype of the computation and optimizer state. It does not influence the dtype of model parameters.**"
|
311 |
+
},
|
312 |
+
)
|
313 |
+
matmul_precision: str = field(
|
314 |
+
default="default",
|
315 |
+
metadata={
|
316 |
+
"help": "Default floating-point precision of internal computations used in TPU matrix multiplications and convolutions. "
|
317 |
+
"This configuration option controls the default precision for JAX operations that take an optional precision argument (e.g. `lax.conv_general_dilated` and `lax.dot`). "
|
318 |
+
"This configuration option does not change the behaviours of such calls with explicit precision arguments; "
|
319 |
+
"it only changes the behaviors of calls with no such argument provided. "
|
320 |
+
"One of `['highest', 'float32', 'high', 'bfloat16_3x', 'default', 'bfloat16', 'fastest', None]`."
|
321 |
+
},
|
322 |
+
)
|
323 |
+
multisteps: bool = field(
|
324 |
+
default=False,
|
325 |
+
metadata={
|
326 |
+
"help": "Whether to use Optax MultiSteps for gradient accumulation. If `False` (default) and `gradient_accumulation_steps > 1`, "
|
327 |
+
"a custom gradient accumulation implementation will be employed."
|
328 |
+
},
|
329 |
+
)
|
330 |
+
|
331 |
+
|
332 |
+
def to_fp32(t):
|
333 |
+
return jax.tree_map(lambda x: x.astype(jnp.float32) if x.dtype == jnp.bfloat16 else x, t)
|
334 |
+
|
335 |
+
|
336 |
+
def to_bf16(t):
|
337 |
+
return jax.tree_map(lambda x: x.astype(jnp.bfloat16) if x.dtype == jnp.float32 else x, t)
|
338 |
+
|
339 |
+
|
340 |
+
class MixedPrecisionTrainState(struct.PyTreeNode):
|
341 |
+
"""Train state for use with a single Optax optimizer.
|
342 |
+
Adapted from flax train_state https://github.com/google/flax/blob/main/flax/training/train_state.py
|
343 |
+
|
344 |
+
Synopsis::
|
345 |
+
|
346 |
+
state = TrainState.create(
|
347 |
+
apply_fn=model.apply,
|
348 |
+
params=variables['params'],
|
349 |
+
tx=tx)
|
350 |
+
grad_fn = jax.grad(make_loss_fn(state.apply_fn))
|
351 |
+
for batch in data:
|
352 |
+
grads = grad_fn(state.params, batch)
|
353 |
+
state = state.apply_gradients(grads=grads)
|
354 |
+
|
355 |
+
Args:
|
356 |
+
step: Counter starts at 0 and is incremented by every call to
|
357 |
+
`.apply_gradients()`.
|
358 |
+
apply_fn: Usually set to `model.apply()`. Kept in this dataclass for
|
359 |
+
convenience to have a shorter params list for the `train_step()` function
|
360 |
+
in your training loop.
|
361 |
+
params: The parameters to be updated by `tx` and used by `apply_fn`.
|
362 |
+
tx: An Optax gradient transformation.
|
363 |
+
opt_state: The state for `tx`.
|
364 |
+
dropout_rng: PRNG key for stochastic operations.
|
365 |
+
bf16: Whether to use bf16 16-bit (mixed) precision training instead of 32-bit training.
|
366 |
+
"""
|
367 |
+
|
368 |
+
step: int
|
369 |
+
apply_fn: Callable = struct.field(pytree_node=False)
|
370 |
+
get_attention_mask_fn: Callable = struct.field(pytree_node=False)
|
371 |
+
params: core.FrozenDict[str, Any]
|
372 |
+
tx: optax.GradientTransformation = struct.field(pytree_node=False)
|
373 |
+
opt_state: optax.OptState
|
374 |
+
dropout_rng: jnp.ndarray
|
375 |
+
max_grad_norm: Optional[float] = 1.0
|
376 |
+
|
377 |
+
def apply_gradients(self, *, grads, to_dtype, **kwargs):
|
378 |
+
"""Updates `step`, `params`, `opt_state` and `**kwargs` in return value.
|
379 |
+
|
380 |
+
Note that internally this function calls `.tx.update()` followed by a call
|
381 |
+
to `optax.apply_updates()` to update `params` and `opt_state`.
|
382 |
+
|
383 |
+
Args:
|
384 |
+
grads: Gradients that have the same pytree structure as `.params`.
|
385 |
+
**kwargs: Additional dataclass attributes that should be `.replace()`-ed.
|
386 |
+
|
387 |
+
Returns:
|
388 |
+
An updated instance of `self` with `step` incremented by one, `params`
|
389 |
+
and `opt_state` updated by applying `grads`, and additional attributes
|
390 |
+
replaced as specified by `kwargs`.
|
391 |
+
"""
|
392 |
+
|
393 |
+
# clip gradients by global l2 norm
|
394 |
+
casted_max_grad_norm = to_dtype(self.max_grad_norm)
|
395 |
+
g_norm = linear_algebra.global_norm(grads)
|
396 |
+
g_norm = jnp.maximum(casted_max_grad_norm, g_norm)
|
397 |
+
grads = jax.tree_map(lambda t: (t / g_norm) * casted_max_grad_norm, grads)
|
398 |
+
|
399 |
+
# perform update step in fp32 and subsequently downcast optimizer states if mixed precision training
|
400 |
+
# grads and opt_state in bf16 (need to upcast), params in fp32 (leave as is)
|
401 |
+
updates, new_opt_state = self.tx.update(to_fp32(grads), to_fp32(self.opt_state), self.params)
|
402 |
+
|
403 |
+
new_params = optax.apply_updates(self.params, updates)
|
404 |
+
return self.replace(
|
405 |
+
step=self.step + 1,
|
406 |
+
params=new_params,
|
407 |
+
opt_state=to_dtype(new_opt_state),
|
408 |
+
**kwargs,
|
409 |
+
)
|
410 |
+
|
411 |
+
@classmethod
|
412 |
+
def create(cls, *, apply_fn, params, tx, to_dtype, **kwargs):
|
413 |
+
"""Creates a new instance with `step=0` and initialized `opt_state`."""
|
414 |
+
# downcast optimizer state to bf16 if mixed-precision training
|
415 |
+
opt_state = tx.init(to_dtype(params)) if tx is not None else None
|
416 |
+
return cls(
|
417 |
+
step=0,
|
418 |
+
apply_fn=apply_fn,
|
419 |
+
params=params,
|
420 |
+
tx=tx,
|
421 |
+
opt_state=opt_state,
|
422 |
+
**kwargs,
|
423 |
+
)
|
424 |
+
|
425 |
+
def replicate(self):
|
426 |
+
return jax_utils.replicate(self).replace(dropout_rng=shard_prng_key(self.dropout_rng))
|
427 |
+
|
428 |
+
|
429 |
+
@flax.struct.dataclass
|
430 |
+
class FlaxDataCollatorSpeechSeq2SeqWithPadding:
|
431 |
+
"""
|
432 |
+
Data collator that will dynamically pad the inputs received.
|
433 |
+
Args:
|
434 |
+
processor ([`Wav2Vec2Processor`])
|
435 |
+
The processor used for proccessing the data.
|
436 |
+
decoder_start_token_id (:obj: `int`)
|
437 |
+
The begin-of-sentence of the decoder.
|
438 |
+
input_padding (:obj:`bool`, :obj:`str` or :class:`~transformers.tokenization_utils_base.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
439 |
+
Select a strategy to pad the returned input sequences (according to the model's padding side and padding index)
|
440 |
+
among:
|
441 |
+
* :obj:`True` or :obj:`'longest'`: Pad to the longest sequence in the batch (or no padding if only a single
|
442 |
+
sequence if provided).
|
443 |
+
* :obj:`'max_length'`: Pad to a maximum length specified with the argument :obj:`max_length` or to the
|
444 |
+
maximum acceptable input length for the model if that argument is not provided.
|
445 |
+
* :obj:`False` or :obj:`'do_not_pad'` (default): No padding (i.e., can output a batch with sequences of
|
446 |
+
different lengths).
|
447 |
+
target_padding (:obj:`bool`, :obj:`str` or :class:`~transformers.tokenization_utils_base.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
448 |
+
Select a strategy to pad the returned target sequences (according to the model's padding side and padding index).
|
449 |
+
See above for details.
|
450 |
+
max_input_length (:obj:`float`, `optional`):
|
451 |
+
Maximum length of the ``input_values`` of the returned list and optionally padding length (see above).
|
452 |
+
pad_input_to_multiple_of (:obj:`int`, `optional`):
|
453 |
+
If set will pad the input sequence to a multiple of the provided value.
|
454 |
+
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
455 |
+
7.5 (Volta).
|
456 |
+
pad_target_to_multiple_of (:obj:`int`, `optional`):
|
457 |
+
If set will pad the target sequence to a multiple of the provided value.
|
458 |
+
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
459 |
+
7.5 (Volta).
|
460 |
+
"""
|
461 |
+
|
462 |
+
processor: Any
|
463 |
+
input_padding: Union[bool, str] = "longest"
|
464 |
+
label_padding: Union[bool, str] = "max_length"
|
465 |
+
pad_input_to_multiple_of: Optional[int] = None
|
466 |
+
pad_to_multiple_of_label: Optional[int] = None
|
467 |
+
max_input_length: Optional[float] = None
|
468 |
+
max_label_length: Optional[float] = None
|
469 |
+
|
470 |
+
def __call__(self, features: List[Dict[str, Union[List[int], np.ndarray]]]) -> Dict[str, np.ndarray]:
|
471 |
+
# split inputs and labels since they have to be of different lengths and need
|
472 |
+
# different padding methods
|
473 |
+
input_features = [{"input_values": feature["input_values"]} for feature in features]
|
474 |
+
label_features = [{"input_ids": feature["labels"]} for feature in features]
|
475 |
+
|
476 |
+
# reformat list to dict and set to pytorch format
|
477 |
+
batch = self.processor.feature_extractor.pad(
|
478 |
+
input_features,
|
479 |
+
max_length=self.max_input_length,
|
480 |
+
padding=self.input_padding,
|
481 |
+
pad_to_multiple_of=self.pad_input_to_multiple_of,
|
482 |
+
return_tensors="np",
|
483 |
+
)
|
484 |
+
|
485 |
+
labels_batch = self.processor.tokenizer.pad(
|
486 |
+
label_features,
|
487 |
+
max_length=self.max_label_length,
|
488 |
+
padding=self.label_padding,
|
489 |
+
pad_to_multiple_of=self.pad_to_multiple_of_label,
|
490 |
+
return_tensors="np",
|
491 |
+
)
|
492 |
+
|
493 |
+
labels = labels_batch["input_ids"]
|
494 |
+
labels = np.ma.array(labels, mask=np.not_equal(labels_batch.attention_mask, 1))
|
495 |
+
labels = labels.filled(fill_value=-100)
|
496 |
+
|
497 |
+
batch["labels"] = labels
|
498 |
+
|
499 |
+
return batch
|
500 |
+
|
501 |
+
|
502 |
+
def get_grouped_indices(
|
503 |
+
dataset, batch_size: int, rng: Optional[List[int]] = None, mega_batch_mult: Optional[int] = None
|
504 |
+
) -> np.array:
|
505 |
+
"""
|
506 |
+
Adapted from the `get_length_grouped_indices` function in the PyTorch Trainer utils file (https://github.com/huggingface/transformers/blob/main/src/transformers/trainer_pt_utils.py#L486)
|
507 |
+
Function that returns a list of indices in which each slice of `batch_size` consecutive indices correspond to elements of similar
|
508 |
+
lengths. To do this, the indices are:
|
509 |
+
|
510 |
+
- randomly permuted (if a JAX rng is specified)
|
511 |
+
- grouped in mega-batches of size `mega_batch_mult * batch_size`
|
512 |
+
- sorted by length in each mega-batch
|
513 |
+
|
514 |
+
The result is the concatenation of all mega-batches, with the batch of `batch_size` containing the element of
|
515 |
+
maximum length placed first, so that an OOM happens sooner rather than later.
|
516 |
+
"""
|
517 |
+
lengths = dataset["input_length"]
|
518 |
+
|
519 |
+
# Default for mega_batch_mult: 50 or the number to get 4 megabatches, whichever is smaller.
|
520 |
+
if mega_batch_mult is None:
|
521 |
+
mega_batch_mult = min(len(lengths) // (batch_size * 4), 50)
|
522 |
+
# Just in case, for tiny datasets
|
523 |
+
if mega_batch_mult == 0:
|
524 |
+
mega_batch_mult = 1
|
525 |
+
|
526 |
+
# We need to use JAX for the random permutation as the PRNG key will be set based on the seed outside of the sampler.
|
527 |
+
num_samples = len(lengths)
|
528 |
+
indices = jax.random.permutation(rng, np.arange(num_samples)) if rng is not None else np.arange(num_samples)
|
529 |
+
|
530 |
+
megabatch_size = mega_batch_mult * batch_size
|
531 |
+
megabatches = [indices[i : i + megabatch_size].tolist() for i in range(0, len(lengths), megabatch_size)]
|
532 |
+
megabatches = [list(sorted(megabatch, key=lambda i: lengths[i], reverse=True)) for megabatch in megabatches]
|
533 |
+
|
534 |
+
# The rest is to get the biggest batch first.
|
535 |
+
# Since each megabatch is sorted by descending length, the longest element is the first
|
536 |
+
megabatch_maximums = [lengths[megabatch[0]] for megabatch in megabatches]
|
537 |
+
max_idx = np.argmax(megabatch_maximums).item()
|
538 |
+
# Switch to put the longest batch in first position
|
539 |
+
# (note that this is different to the PT grouped sampler in which we only put the longest element in the first position, and not its batch)
|
540 |
+
megabatches[0], megabatches[max_idx] = megabatches[max_idx], megabatches[0]
|
541 |
+
|
542 |
+
megabatches = np.array([i for megabatch in megabatches for i in megabatch])
|
543 |
+
|
544 |
+
return megabatches
|
545 |
+
|
546 |
+
|
547 |
+
def generate_batch_splits(samples_idx: np.ndarray, batch_size: int, drop_last=True) -> np.ndarray:
|
548 |
+
"""Generate batches of data for a specified batch size from sample indices. If the dataset size is not divisible by
|
549 |
+
the batch size and `drop_last` is `True`, the last incomplete batch is dropped. Else, it is returned."""
|
550 |
+
num_samples = len(samples_idx)
|
551 |
+
if drop_last:
|
552 |
+
samples_to_remove = num_samples % batch_size
|
553 |
+
if samples_to_remove != 0:
|
554 |
+
samples_idx = samples_idx[:-samples_to_remove]
|
555 |
+
sections_split = num_samples // batch_size
|
556 |
+
samples_idx = samples_idx.reshape((sections_split, batch_size))
|
557 |
+
else:
|
558 |
+
sections_split = math.ceil(num_samples / batch_size)
|
559 |
+
samples_idx = np.array_split(samples_idx, sections_split)
|
560 |
+
return samples_idx
|
561 |
+
|
562 |
+
|
563 |
+
def write_train_metric(summary_writer, train_metrics, train_time, step):
|
564 |
+
summary_writer.scalar("train_time", train_time, step)
|
565 |
+
|
566 |
+
train_metrics = get_metrics(train_metrics)
|
567 |
+
for key, vals in train_metrics.items():
|
568 |
+
tag = f"train_{key}"
|
569 |
+
for i, val in enumerate(vals):
|
570 |
+
summary_writer.scalar(tag, val, step - len(vals) + i + 1)
|
571 |
+
|
572 |
+
|
573 |
+
def write_eval_metric(summary_writer, eval_metrics, step, pred_str=None):
|
574 |
+
for metric_name, value in eval_metrics.items():
|
575 |
+
summary_writer.scalar(f"eval_{metric_name}", value, step)
|
576 |
+
|
577 |
+
if pred_str is not None:
|
578 |
+
# write output actual predictions for debugging
|
579 |
+
summary_writer.text("eval_predictions", "\n".join(pred_str), step)
|
580 |
+
|
581 |
+
|
582 |
+
def write_wandb_log(metrics, step, prefix=None):
|
583 |
+
if jax.process_index() == 0:
|
584 |
+
log_metrics = {}
|
585 |
+
for k, v in metrics.items():
|
586 |
+
if "layer" in k:
|
587 |
+
log_metrics[f"{k}/"] = v
|
588 |
+
elif prefix is not None:
|
589 |
+
log_metrics[f"{prefix}/{k}"] = v
|
590 |
+
else:
|
591 |
+
log_metrics[k] = v
|
592 |
+
wandb.log(log_metrics, step)
|
593 |
+
|
594 |
+
|
595 |
+
def write_wandb_pred(pred_str, label_str, step, num_log=50, prefix="eval"):
|
596 |
+
if jax.process_index() == 0:
|
597 |
+
# convert str data to a wandb compatible format
|
598 |
+
str_data = [[label_str[i], pred_str[i]] for i in range(len(pred_str))]
|
599 |
+
# we'll log the first 50 predictions for each epoch
|
600 |
+
wandb.log(
|
601 |
+
{
|
602 |
+
f"{prefix}/step_{int(step / 1000)}k": wandb.Table(
|
603 |
+
columns=["label_str", "pred_str"], data=str_data[:num_log]
|
604 |
+
)
|
605 |
+
},
|
606 |
+
step,
|
607 |
+
)
|
608 |
+
|
609 |
+
|
610 |
+
def create_learning_rate_fn(
|
611 |
+
num_train_steps: int, num_warmup_steps: int, learning_rate: float
|
612 |
+
) -> Callable[[int], jnp.array]:
|
613 |
+
"""Returns a linear warmup, linear_decay learning rate function."""
|
614 |
+
warmup_fn = optax.linear_schedule(init_value=0.0, end_value=learning_rate, transition_steps=num_warmup_steps)
|
615 |
+
decay_fn = optax.linear_schedule(
|
616 |
+
init_value=learning_rate, end_value=0, transition_steps=num_train_steps - num_warmup_steps
|
617 |
+
)
|
618 |
+
schedule_fn = optax.join_schedules(schedules=[warmup_fn, decay_fn], boundaries=[num_warmup_steps])
|
619 |
+
return schedule_fn
|
620 |
+
|
621 |
+
|
622 |
+
def ctc_loss(
|
623 |
+
logits,
|
624 |
+
logits_attention_mask,
|
625 |
+
labels,
|
626 |
+
blank_id,
|
627 |
+
loss_reduction="mean",
|
628 |
+
output_emission_dict=False,
|
629 |
+
log_epsilon=-100000.0,
|
630 |
+
):
|
631 |
+
"""Computes CTC loss.
|
632 |
+
This function performs forward computation over an FSA with `N * 2` states
|
633 |
+
where `N` is the max number of labels. The states are split into two groups:
|
634 |
+
Phi states and emission states. a phi-state accepts repetition of
|
635 |
+
phi (blank)-symbols and transits to emission state when the correct label is
|
636 |
+
observed. An emission state accepts repetition of the label and transits to
|
637 |
+
the next phi states at any time (so called epsilon-transition).
|
638 |
+
Below, `B` denotes the batch size, `T` denotes the time steps in `logits`,
|
639 |
+
and `N` denotes the time steps in `labels`.
|
640 |
+
Args:
|
641 |
+
logits: (B, T, K)-array containing log-probabilities of each class.
|
642 |
+
logitpaddings: (B, T)-array. Padding indicators for `logits`.
|
643 |
+
labels: (B, N)-array containing reference integer labels.
|
644 |
+
labelpaddings: (B, N)-array. Padding indicators for `labels`. Currently,
|
645 |
+
`labels` must be right-padded, i.e. each row of `labelpaddings` must be
|
646 |
+
repetition of zeroes, followed by repetition of ones.
|
647 |
+
blank_id: Id for blank token.
|
648 |
+
loss_reduction: one of "mean", "sum", "default"
|
649 |
+
- "none": no reduction is applied.
|
650 |
+
- "mean": output loss will be divided by target lengths and then the
|
651 |
+
mean over the batch is taken.
|
652 |
+
- "sum": output loss are summed over batch
|
653 |
+
output_emission_dict: whether to output additional information about the emission probs
|
654 |
+
Returns:
|
655 |
+
A pair of `(per_seq_loss, aux)`.
|
656 |
+
per_seq_loss:
|
657 |
+
(B,)-array containing loss values for each sequence in the batch.
|
658 |
+
aux: Dictionary containing interim variables used for computing losses.
|
659 |
+
aux['logalpha_phi']: (T, B, N+1)-array. Log-forward-probabilities of each
|
660 |
+
phi-state corresponding to the n-th label.
|
661 |
+
aux['logalpha_emit']: (T, B, N)-array. Log-forward-probabilities of each
|
662 |
+
emission-state corresponding to the n-th label.
|
663 |
+
aux['logprobs_phi']: (T, B, 1)-array. Probability of the phi-symbol
|
664 |
+
corresponding to each time frame.
|
665 |
+
aux['logprobs_emit']: (T, B, N)-array. Probability of the n-th label
|
666 |
+
corresponding to each time frame.
|
667 |
+
"""
|
668 |
+
# label paddings are indicated by -100
|
669 |
+
labelpaddings = labels < 0
|
670 |
+
# logit paddings are the inverse of attention_mask
|
671 |
+
logitpaddings = ~logits_attention_mask
|
672 |
+
|
673 |
+
# Copied from https://github.com/tensorflow/lingvo/blob/master/lingvo/jax/layers/ctc_objectives.py
|
674 |
+
batchsize, unused_maxinputlen, num_classes = logits.shape
|
675 |
+
batchsize_, maxlabellen = labels.shape
|
676 |
+
|
677 |
+
logprobs = jax.nn.log_softmax(logits)
|
678 |
+
labellens = maxlabellen - jnp.sum(labelpaddings, axis=1).astype(jnp.int32)
|
679 |
+
|
680 |
+
# repeat[b, n] == 1.0 when label[b, n] == label[b, n+1].
|
681 |
+
repeat = (labels[:, :-1] == labels[:, 1:]).astype(jnp.float32)
|
682 |
+
repeat = jnp.pad(repeat, ((0, 0), (0, 1)))
|
683 |
+
|
684 |
+
logprobs_phi = logprobs[:, :, blank_id : blank_id + 1] # [B, T, 1]
|
685 |
+
logprobs_phi = jnp.transpose(logprobs_phi, (1, 0, 2)) # [T, B, 1]
|
686 |
+
|
687 |
+
one_hot = jax.nn.one_hot(labels, num_classes=num_classes) # [B, N, K]
|
688 |
+
logprobs_emit = jnp.einsum("btk,bnk->btn", logprobs, one_hot)
|
689 |
+
logprobs_emit = jnp.transpose(logprobs_emit, (1, 0, 2)) # [T, B, N]
|
690 |
+
|
691 |
+
logalpha_phi_init = jnp.ones((batchsize, maxlabellen + 1)) * log_epsilon # [B, N]
|
692 |
+
logalpha_phi_init = logalpha_phi_init.at[:, 0].set(0.0)
|
693 |
+
logalpha_emit_init = jnp.ones((batchsize, maxlabellen)) * log_epsilon # [B, N]
|
694 |
+
|
695 |
+
def loop_body(prev, x):
|
696 |
+
prev_phi, prev_emit = prev
|
697 |
+
# emit-to-phi epsilon transition, except if the next label is repetition
|
698 |
+
prev_phi_orig = prev_phi
|
699 |
+
prev_phi = prev_phi.at[:, 1:].set(jnp.logaddexp(prev_phi[:, 1:], prev_emit + log_epsilon * repeat))
|
700 |
+
|
701 |
+
logprob_emit, logprob_phi, pad = x
|
702 |
+
|
703 |
+
# phi-to-emit transition
|
704 |
+
next_emit = jnp.logaddexp(prev_phi[:, :-1] + logprob_emit, prev_emit + logprob_emit)
|
705 |
+
# self-loop transition
|
706 |
+
next_phi = prev_phi + logprob_phi
|
707 |
+
# emit-to-phi blank transition only when the next label is repetition
|
708 |
+
next_phi = next_phi.at[:, 1:].set(
|
709 |
+
jnp.logaddexp(next_phi[:, 1:], prev_emit + logprob_phi + log_epsilon * (1.0 - repeat))
|
710 |
+
)
|
711 |
+
|
712 |
+
pad = pad.reshape((batchsize, 1))
|
713 |
+
next_emit = pad * prev_emit + (1.0 - pad) * next_emit
|
714 |
+
next_phi = pad * prev_phi_orig + (1.0 - pad) * next_phi
|
715 |
+
|
716 |
+
return (next_phi, next_emit), (next_phi, next_emit)
|
717 |
+
|
718 |
+
xs = (logprobs_emit, logprobs_phi, logitpaddings.transpose((1, 0)))
|
719 |
+
_, (logalpha_phi, logalpha_emit) = jax.lax.scan(loop_body, (logalpha_phi_init, logalpha_emit_init), xs)
|
720 |
+
|
721 |
+
# last row needs to be updated with the last epsilon transition
|
722 |
+
logalpha_phi_last = logalpha_phi[-1].at[:, 1:].set(jnp.logaddexp(logalpha_phi[-1, :, 1:], logalpha_emit[-1]))
|
723 |
+
logalpha_phi = logalpha_phi.at[-1].set(logalpha_phi_last)
|
724 |
+
|
725 |
+
# extract per_seq_loss
|
726 |
+
one_hot = jax.nn.one_hot(labellens, num_classes=maxlabellen + 1) # [B, N+1]
|
727 |
+
per_seq_loss = -jnp.einsum("bn,bn->b", logalpha_phi_last, one_hot)
|
728 |
+
|
729 |
+
if loss_reduction == "mean":
|
730 |
+
target_lengths = labelpaddings.shape[-1] - labelpaddings.sum(axis=-1)
|
731 |
+
loss = (per_seq_loss / target_lengths).mean()
|
732 |
+
elif loss_reduction == "sum":
|
733 |
+
loss = per_seq_loss.sum()
|
734 |
+
else:
|
735 |
+
loss = per_seq_loss
|
736 |
+
|
737 |
+
if not output_emission_dict:
|
738 |
+
return loss
|
739 |
+
|
740 |
+
return loss, {
|
741 |
+
"logalpha_phi": logalpha_phi,
|
742 |
+
"logalpha_emit": logalpha_emit,
|
743 |
+
"logprobs_phi": logprobs_phi,
|
744 |
+
"logprobs_emit": logprobs_emit,
|
745 |
+
}
|
746 |
+
|
747 |
+
|
748 |
+
def make_dataset(data_args, seed=42):
|
749 |
+
# Pre-processing dataset
|
750 |
+
import re
|
751 |
+
|
752 |
+
def map_nst(entry):
|
753 |
+
text = entry["text"].lower()
|
754 |
+
text = text.replace("(...vær stille under dette opptaket...)", "")
|
755 |
+
text = re.sub('[áàâ]', 'a', text)
|
756 |
+
text = re.sub('[ä]', 'æ', text)
|
757 |
+
text = re.sub('[éèëê]', 'e', text)
|
758 |
+
text = re.sub('[íìïî]', 'i', text)
|
759 |
+
text = re.sub('[óòöô]', 'o', text)
|
760 |
+
text = re.sub('[ö]', 'ø', text)
|
761 |
+
text = re.sub('[ç]', 'c', text)
|
762 |
+
text = re.sub('[úùüû]', 'u', text)
|
763 |
+
# text = re.sub('\\(?=(Punktum|Komma|Utropstegn|Spørsmålstegn))', ' ', text)
|
764 |
+
text = re.sub('\s+', ' ', text)
|
765 |
+
return {"text": text}
|
766 |
+
|
767 |
+
def filter_nst(entry):
|
768 |
+
if not ((len(entry["text"]) <= len(entry["audio"]["array"]) // 320) and (len(entry["text"].strip()) >= 3)):
|
769 |
+
return False # Too short
|
770 |
+
if re.match(entry["type"], "pIW|CA"):
|
771 |
+
return False # Spelling out words
|
772 |
+
return True
|
773 |
+
|
774 |
+
def filter_npsc(entry):
|
775 |
+
# False if there are digits in the text
|
776 |
+
if not ((len(entry["text"]) <= len(entry["audio"]["array"]) // 320) and (len(entry["text"].strip()) >= 3)):
|
777 |
+
return False # Too short
|
778 |
+
if re.search("\d", entry["text"]):
|
779 |
+
return False
|
780 |
+
return True
|
781 |
+
|
782 |
+
def map_npsc(entry):
|
783 |
+
batch = {"text": entry["text"].lower()}
|
784 |
+
batch["text"] = re.sub('[áàâ]', 'a', batch["text"])
|
785 |
+
batch["text"] = re.sub('[ä]', 'æ', batch["text"])
|
786 |
+
batch["text"] = re.sub('[éèëê]', 'e', batch["text"])
|
787 |
+
batch["text"] = re.sub('[íìïî]', 'i', batch["text"])
|
788 |
+
batch["text"] = re.sub('[óòöô]', 'o', batch["text"])
|
789 |
+
batch["text"] = re.sub('[ö]', 'ø', batch["text"])
|
790 |
+
batch["text"] = re.sub('[ç]', 'c', batch["text"])
|
791 |
+
batch["text"] = re.sub('[úùüû]', 'u', batch["text"])
|
792 |
+
batch["text"] = re.sub('\s', ' ', batch["text"])
|
793 |
+
batch["text"] = re.sub('<ee>', 'eee', batch["text"])
|
794 |
+
batch["text"] = re.sub('<qq>', 'qqq', batch["text"])
|
795 |
+
batch["text"] = re.sub('<mm>', 'mmm', batch["text"])
|
796 |
+
batch["text"] = re.sub('<inaudible>', 'xxx', batch["text"])
|
797 |
+
# batch["text"] = re.sub('<inaudible>', '?', batch["text"])
|
798 |
+
if "<" in batch["text"]:
|
799 |
+
raise ValueError(batch["text"])
|
800 |
+
return batch
|
801 |
+
|
802 |
+
nst = datasets.load_dataset("NbAiLab/NST", "no-close")
|
803 |
+
npsc = datasets.load_dataset("NbAiLab/NPSC", "16K_mp3")
|
804 |
+
# TODO NST_hesitate
|
805 |
+
|
806 |
+
split = len(npsc[data_args.train_split_name]) / (len(npsc[data_args.train_split_name]) + len(npsc[data_args.eval_split_name])) # Use same train/val ratio as NPSC
|
807 |
+
nst_train = nst[data_args.train_split_name].train_test_split(train_size=split, seed=seed)
|
808 |
+
nst[data_args.train_split_name] = nst_train["train"]
|
809 |
+
nst[data_args.eval_split_name] = nst_train["test"]
|
810 |
+
|
811 |
+
nst = nst.filter(filter_nst).map(
|
812 |
+
map_nst,
|
813 |
+
num_proc=data_args.preprocessing_num_workers,
|
814 |
+
desc="filtering NST",
|
815 |
+
).shuffle(seed=seed)
|
816 |
+
npsc = npsc.filter(filter_npsc).map(
|
817 |
+
map_npsc,
|
818 |
+
num_proc=data_args.preprocessing_num_workers,
|
819 |
+
desc="filtering NPSC",
|
820 |
+
).shuffle(seed=seed)
|
821 |
+
|
822 |
+
npsc_base = npsc.remove_columns([col for col in npsc[data_args.train_split_name].column_names if col not in ["text", "audio"]])
|
823 |
+
nst_base = nst.remove_columns([col for col in nst[data_args.train_split_name].column_names if col not in ["text", "audio"]])
|
824 |
+
|
825 |
+
combined = {}
|
826 |
+
for split in data_args.train_split_name, data_args.eval_split_name, data_args.test_split_name:
|
827 |
+
probs = np.array([len(nst_base[split]), len(npsc_base[split])]) # Weight by number of examples
|
828 |
+
probs = (probs / probs.sum()).tolist()
|
829 |
+
comb = datasets.interleave_datasets([nst_base[split], npsc_base[split]], probabilities=probs, seed=seed)
|
830 |
+
combined[split] = comb
|
831 |
+
|
832 |
+
return datasets.DatasetDict(**combined)
|
833 |
+
|
834 |
+
def main():
|
835 |
+
# 1. Parse input arguments
|
836 |
+
# See all possible arguments in src/transformers/training_args.py
|
837 |
+
# or by passing the --help flag to this script.
|
838 |
+
# We now keep distinct sets of args, for a cleaner separation of concerns.
|
839 |
+
parser = HfArgumentParser((ModelArguments, DataTrainingArguments, FlaxTrainingArguments))
|
840 |
+
|
841 |
+
if len(sys.argv) == 2 and sys.argv[1].endswith(".json"):
|
842 |
+
# If we pass only one argument to the script and it's the path to a json file,
|
843 |
+
# let's parse it to get our arguments.
|
844 |
+
model_args, data_args, training_args = parser.parse_json_file(json_file=os.path.abspath(sys.argv[1]))
|
845 |
+
else:
|
846 |
+
model_args, data_args, training_args = parser.parse_args_into_dataclasses()
|
847 |
+
|
848 |
+
# 2. Setup logging
|
849 |
+
# Make one log on every process with the configuration for debugging.
|
850 |
+
logging.basicConfig(
|
851 |
+
format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
|
852 |
+
datefmt="%m/%d/%Y %H:%M:%S",
|
853 |
+
handlers=[logging.StreamHandler(sys.stdout)],
|
854 |
+
)
|
855 |
+
# Set the verbosity to info of the Transformers logger.
|
856 |
+
# We only want one process per machine to log things on the screen.
|
857 |
+
logger.setLevel(logging.INFO if jax.process_index() == 0 else logging.ERROR)
|
858 |
+
if jax.process_index() == 0:
|
859 |
+
datasets.utils.logging.set_verbosity_warning()
|
860 |
+
transformers.utils.logging.set_verbosity_info()
|
861 |
+
else:
|
862 |
+
datasets.utils.logging.set_verbosity_error()
|
863 |
+
transformers.utils.logging.set_verbosity_error()
|
864 |
+
|
865 |
+
# Set up wandb run
|
866 |
+
if jax.process_index() == 0:
|
867 |
+
wandb.init(project=data_args.wandb_project, name=data_args.wandb_name, job_type=data_args.wandb_job_type)
|
868 |
+
|
869 |
+
logger.info("Training/evaluation parameters %s", training_args)
|
870 |
+
|
871 |
+
# Set the default TPU matmul precision and display the number of devices
|
872 |
+
jax.config.update("jax_default_matmul_precision", training_args.matmul_precision)
|
873 |
+
logger.info(f"JAX devices: {jax.device_count()}, matmul precision: {training_args.matmul_precision}")
|
874 |
+
|
875 |
+
# 4. Load dataset
|
876 |
+
|
877 |
+
set_seed(training_args.seed)
|
878 |
+
raw_datasets = make_dataset(data_args, seed=training_args.seed)
|
879 |
+
|
880 |
+
# raw_datasets = DatasetDict()
|
881 |
+
|
882 |
+
# if training_args.do_train:
|
883 |
+
# raw_datasets[data_args.train_split_name] = load_dataset(
|
884 |
+
# data_args.dataset_name,
|
885 |
+
# data_args.dataset_config_name,
|
886 |
+
# split=data_args.train_split_name,
|
887 |
+
# cache_dir=data_args.dataset_cache_dir,
|
888 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
889 |
+
# )
|
890 |
+
|
891 |
+
# if training_args.do_eval:
|
892 |
+
# raw_datasets[data_args.eval_split_name] = load_dataset(
|
893 |
+
# data_args.dataset_name,
|
894 |
+
# data_args.dataset_config_name,
|
895 |
+
# split=data_args.eval_split_name,
|
896 |
+
# cache_dir=data_args.dataset_cache_dir,
|
897 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
898 |
+
# )
|
899 |
+
|
900 |
+
# if training_args.do_predict:
|
901 |
+
# test_split = data_args.test_split_name.split("+")
|
902 |
+
# for split in test_split:
|
903 |
+
# raw_datasets[split] = load_dataset(
|
904 |
+
# data_args.dataset_name,
|
905 |
+
# data_args.dataset_config_name,
|
906 |
+
# split=split,
|
907 |
+
# cache_dir=data_args.dataset_cache_dir,
|
908 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
909 |
+
# )
|
910 |
+
|
911 |
+
if not training_args.do_train and not training_args.do_eval and not training_args.do_predict:
|
912 |
+
raise ValueError(
|
913 |
+
"Cannot not train, not do evaluation and not do prediction. At least one of "
|
914 |
+
"training, evaluation or prediction has to be done."
|
915 |
+
)
|
916 |
+
|
917 |
+
# if not training, there is no need to run multiple epochs
|
918 |
+
if not training_args.do_train:
|
919 |
+
training_args.num_train_epochs = 1
|
920 |
+
|
921 |
+
if data_args.audio_column_name not in next(iter(raw_datasets.values())).column_names:
|
922 |
+
raise ValueError(
|
923 |
+
f"--audio_column_name '{data_args.audio_column_name}' not found in dataset '{data_args.dataset_name}'. "
|
924 |
+
"Make sure to set `--audio_column_name` to the correct audio column - one of "
|
925 |
+
f"{', '.join(next(iter(raw_datasets.values())).column_names)}."
|
926 |
+
)
|
927 |
+
|
928 |
+
if data_args.text_column_name not in next(iter(raw_datasets.values())).column_names:
|
929 |
+
raise ValueError(
|
930 |
+
f"--text_column_name {data_args.text_column_name} not found in dataset '{data_args.dataset_name}'. "
|
931 |
+
"Make sure to set `--text_column_name` to the correct text column - one of "
|
932 |
+
f"{', '.join(next(iter(raw_datasets.values())).column_names)}."
|
933 |
+
)
|
934 |
+
|
935 |
+
# 5. Load pretrained model, tokenizer, and feature extractor
|
936 |
+
#
|
937 |
+
# Distributed training:
|
938 |
+
# The .from_pretrained methods guarantee that only one local process can concurrently
|
939 |
+
config = Wav2Vec2Config.from_pretrained(
|
940 |
+
model_args.config_name if model_args.config_name else model_args.model_name_or_path,
|
941 |
+
cache_dir=model_args.cache_dir,
|
942 |
+
revision=model_args.model_revision,
|
943 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
944 |
+
)
|
945 |
+
feature_extractor = AutoFeatureExtractor.from_pretrained(
|
946 |
+
model_args.feature_extractor_name if model_args.feature_extractor_name else model_args.model_name_or_path,
|
947 |
+
cache_dir=model_args.cache_dir,
|
948 |
+
revision=model_args.model_revision,
|
949 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
950 |
+
)
|
951 |
+
tokenizer = AutoTokenizer.from_pretrained(
|
952 |
+
model_args.tokenizer_name if model_args.tokenizer_name else model_args.model_name_or_path,
|
953 |
+
cache_dir=model_args.cache_dir,
|
954 |
+
revision=model_args.model_revision,
|
955 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
956 |
+
)
|
957 |
+
# update config according to training args, model args, and tokenizer attributes
|
958 |
+
config.update(
|
959 |
+
{
|
960 |
+
"feat_proj_dropout": model_args.feat_proj_dropout,
|
961 |
+
"attention_dropout": model_args.attention_dropout,
|
962 |
+
"hidden_dropout": model_args.hidden_dropout,
|
963 |
+
"final_dropout": model_args.final_dropout,
|
964 |
+
"mask_time_prob": model_args.mask_time_prob,
|
965 |
+
"mask_time_length": model_args.mask_time_length,
|
966 |
+
"mask_feature_prob": model_args.mask_feature_prob,
|
967 |
+
"mask_feature_length": model_args.mask_feature_length,
|
968 |
+
"gradient_checkpointing": training_args.gradient_checkpointing,
|
969 |
+
"layerdrop": model_args.layerdrop,
|
970 |
+
"ctc_loss_reduction": model_args.ctc_loss_reduction,
|
971 |
+
"ctc_zero_infinity": model_args.ctc_zero_infinity,
|
972 |
+
"pad_token_id": tokenizer.pad_token_id,
|
973 |
+
"vocab_size": tokenizer.vocab_size, # len(tokenizer),
|
974 |
+
"activation_dropout": model_args.activation_dropout,
|
975 |
+
}
|
976 |
+
)
|
977 |
+
|
978 |
+
if tokenizer.do_lower_case and data_args.dataset_name != "librispeech_asr":
|
979 |
+
raise ValueError(
|
980 |
+
"Setting the tokenizer attribute `do_lower_case` to `True` converts all input strings to "
|
981 |
+
"uppercase prior to tokenization. This should only be done when the tokenizer is built on an uppercased corpus,"
|
982 |
+
"i.e. for the dataset `librispeech_asr` only. If your dataset is not `librispeech_asr`, the tokenizer is mostly likely "
|
983 |
+
"built on an lowercased corpus. In this case, set `tokenizer.do_lower_case` to ``False`."
|
984 |
+
)
|
985 |
+
|
986 |
+
if training_args.precision == "full_mixed":
|
987 |
+
dtype = jnp.bfloat16
|
988 |
+
training_args.mixed_precision = True
|
989 |
+
elif training_args.precision == "half_mixed":
|
990 |
+
dtype = jnp.bfloat16
|
991 |
+
training_args.mixed_precision = False
|
992 |
+
else:
|
993 |
+
dtype = jnp.float32
|
994 |
+
training_args.mixed_precision = False
|
995 |
+
|
996 |
+
model = FlaxWav2Vec2ForCTC.from_pretrained(
|
997 |
+
model_args.model_name_or_path,
|
998 |
+
config=config,
|
999 |
+
dtype=dtype,
|
1000 |
+
cache_dir=model_args.cache_dir,
|
1001 |
+
revision=model_args.model_revision,
|
1002 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
1003 |
+
from_pt=True,
|
1004 |
+
)
|
1005 |
+
|
1006 |
+
# 6. Resample speech dataset ALWAYS
|
1007 |
+
raw_datasets = raw_datasets.cast_column(
|
1008 |
+
data_args.audio_column_name, datasets.features.Audio(sampling_rate=feature_extractor.sampling_rate)
|
1009 |
+
)
|
1010 |
+
|
1011 |
+
# 7. Preprocessing the datasets.
|
1012 |
+
# We need to read the audio files as arrays and tokenize the targets.
|
1013 |
+
max_input_length = int(data_args.max_duration_in_seconds * feature_extractor.sampling_rate)
|
1014 |
+
min_input_length = int(data_args.min_duration_in_seconds * feature_extractor.sampling_rate)
|
1015 |
+
max_target_length = data_args.max_label_length
|
1016 |
+
min_target_length = data_args.min_label_length
|
1017 |
+
pad_input_to_multiple_of = data_args.pad_input_to_multiple_of
|
1018 |
+
audio_column_name = data_args.audio_column_name
|
1019 |
+
num_workers = data_args.preprocessing_num_workers
|
1020 |
+
text_column_name = data_args.text_column_name
|
1021 |
+
model_input_name = feature_extractor.model_input_names[0]
|
1022 |
+
do_lower_case = data_args.do_lower_case
|
1023 |
+
dataset_name = data_args.dataset_name
|
1024 |
+
chars_to_ignore = ', ? . ! - ; : " “ % ‘ ” ?'.split(" ")
|
1025 |
+
chars_to_ignore_regex = f'[{"".join(chars_to_ignore)}]'
|
1026 |
+
# gigaspeech_punctuation = {" <comma>": ",", " <period>": ".", " <questionmark>": "?", " <exclamationpoint>": "!"}
|
1027 |
+
# gigaspeech_disfluencies = ["<other>", "<sil>"]
|
1028 |
+
# swb_disfluencies = ["[noise]", "[laughter]", "[silence]", "<a_aside>", "<b_aside>", "<e_aside>", "[laughter-",
|
1029 |
+
# "[vocalized-noise]", "_1"]
|
1030 |
+
# swb_punctuations = ["{", "}", "[", "]-", "]"]
|
1031 |
+
# earnings_disfluencies = ["<crosstalk>", "<affirmative>", "<inaudible>", "inaudible", "<laugh>", "<unk>"]
|
1032 |
+
ignore_segments = ["ignore_time_segment_in_scoring", "<noise>", "<music>", "[noise]", "[laughter]", "[silence]",
|
1033 |
+
"[vocalized-noise]", "<crosstalk>", "<affirmative>", "<inaudible>", "<laugh>", "<other>", "<sil>", ""]
|
1034 |
+
|
1035 |
+
if training_args.do_train and data_args.max_train_samples is not None:
|
1036 |
+
raw_datasets[data_args.train_split_name] = raw_datasets[data_args.train_split_name].select(range(data_args.max_train_samples))
|
1037 |
+
|
1038 |
+
if training_args.do_eval and data_args.max_eval_samples is not None:
|
1039 |
+
raw_datasets[data_args.eval_split_name] = raw_datasets[data_args.eval_split_name].select(range(data_args.max_eval_samples))
|
1040 |
+
|
1041 |
+
if training_args.do_predict and data_args.max_test_samples is not None:
|
1042 |
+
raw_datasets[data_args.test_split_name] = raw_datasets[data_args.test_split_name].select(range(data_args.max_eval_samples))
|
1043 |
+
|
1044 |
+
if training_args.do_train and data_args.remove_punctuation:
|
1045 |
+
|
1046 |
+
def remove_punctuation(batch):
|
1047 |
+
batch[text_column_name] = (
|
1048 |
+
re.sub(chars_to_ignore_regex, "", batch[text_column_name]).replace("'", "").replace('"', "")
|
1049 |
+
)
|
1050 |
+
|
1051 |
+
raw_datasets[data_args.train_split_name] = raw_datasets[data_args.train_split_name].map(
|
1052 |
+
remove_punctuation,
|
1053 |
+
num_proc=data_args.preprocessing_num_workers,
|
1054 |
+
desc="removing punctuation from train split",
|
1055 |
+
)
|
1056 |
+
|
1057 |
+
# filter data where the targets are ignored in scoring
|
1058 |
+
def is_target_labels(input_str):
|
1059 |
+
return input_str.lower() not in ignore_segments
|
1060 |
+
|
1061 |
+
raw_datasets = raw_datasets.filter(
|
1062 |
+
is_target_labels,
|
1063 |
+
num_proc=num_workers,
|
1064 |
+
input_columns=[text_column_name],
|
1065 |
+
desc="filtering data where the targets are ignored in scoring",
|
1066 |
+
)
|
1067 |
+
|
1068 |
+
def prepare_dataset(batch):
|
1069 |
+
# process audio
|
1070 |
+
try:
|
1071 |
+
sample = batch[audio_column_name]
|
1072 |
+
except ValueError:
|
1073 |
+
sample = {"array": np.array([0.]), "sampling_rate": feature_extractor.sampling_rate}
|
1074 |
+
inputs = feature_extractor(sample["array"], sampling_rate=sample["sampling_rate"])
|
1075 |
+
# process audio length
|
1076 |
+
batch[model_input_name] = inputs.input_values[0]
|
1077 |
+
batch["input_length"] = len(batch["input_values"])
|
1078 |
+
|
1079 |
+
# process targets
|
1080 |
+
input_str = batch[text_column_name].lower() if do_lower_case else batch[text_column_name]
|
1081 |
+
|
1082 |
+
# if dataset_name == "google/xtreme_s":
|
1083 |
+
# # Finally, we tokenize the processed text
|
1084 |
+
# batch["labels"] = tokenizer(input_str).input_ids
|
1085 |
+
# batch["labels_length"] = len(batch["labels"])
|
1086 |
+
# return batch
|
1087 |
+
|
1088 |
+
# # Common Voice 9
|
1089 |
+
# if input_str.startswith('"') and input_str.endswith('"'):
|
1090 |
+
# # we can remove trailing quotation marks as they do not affect the transcription
|
1091 |
+
# input_str = input_str[1:-1]
|
1092 |
+
# # normalize quotation marks
|
1093 |
+
# input_str = re.sub(r'["“”]', '"', input_str)
|
1094 |
+
# # normalize apostrophes
|
1095 |
+
# input_str = re.sub(r"[’']", "'", input_str)
|
1096 |
+
# # normalize hyphens
|
1097 |
+
# input_str = re.sub(r"[—–]", "-", input_str)
|
1098 |
+
# # replace double quotation marks with single
|
1099 |
+
# input_str = input_str.replace('""', '"')
|
1100 |
+
# if dataset_name == "mozilla-foundation/common_voice_9_0" and len(input_str):
|
1101 |
+
# # for CV9, we'll normalize the text to always finish with punctuation
|
1102 |
+
# if input_str[-1] not in [".", "?", "!"]:
|
1103 |
+
# input_str = input_str + "."
|
1104 |
+
|
1105 |
+
# # TEDLIUM-3
|
1106 |
+
# # delete the <unk> token from the text and replace spaced apostrophes with un-spaced
|
1107 |
+
# input_str = input_str.replace("<unk>", "").replace(" '", "'")
|
1108 |
+
|
1109 |
+
# # GigaSpeech
|
1110 |
+
# for disfluency in gigaspeech_disfluencies:
|
1111 |
+
# input_str = input_str.replace(disfluency, "")
|
1112 |
+
# # convert spelled out punctuation to symbolic form
|
1113 |
+
# for punctuation, replacement in gigaspeech_punctuation.items():
|
1114 |
+
# input_str = input_str.replace(punctuation, replacement)
|
1115 |
+
# if dataset_name == "speechcolab/gigaspeech" and len(input_str):
|
1116 |
+
# # for GS, we'll normalize the text to always finish with punctuation
|
1117 |
+
# if input_str[-1] not in [".", "?", "!"]:
|
1118 |
+
# input_str = input_str + "."
|
1119 |
+
|
1120 |
+
# # SWB
|
1121 |
+
# for disfluency in swb_disfluencies:
|
1122 |
+
# input_str = input_str.replace(disfluency, "")
|
1123 |
+
# # remove parenthesised text (test data only)
|
1124 |
+
# input_str = re.sub("[\(].*?[\)]", "", input_str)
|
1125 |
+
# for punctuation in swb_punctuations:
|
1126 |
+
# input_str = input_str.replace(punctuation, "")
|
1127 |
+
# # replace anomalous words with their correct transcriptions
|
1128 |
+
# split_str = input_str.split("/")
|
1129 |
+
# if len(split_str) > 1:
|
1130 |
+
# input_str = " ".join(
|
1131 |
+
# [" ".join([" ".join(i.split(" ")[:-1]) for i in split_str])] + [split_str[-1].split(" ")[-1]])
|
1132 |
+
|
1133 |
+
# # Earnings 22
|
1134 |
+
# for disfluency in earnings_disfluencies:
|
1135 |
+
# input_str = input_str.replace(disfluency, "")
|
1136 |
+
# # replace mal-formatted ellipsis
|
1137 |
+
# input_str = input_str.replace("…", ".")
|
1138 |
+
|
1139 |
+
# JIWER compliance
|
1140 |
+
# remove multiple spaces
|
1141 |
+
input_str = re.sub(r"\s\s+", " ", input_str)
|
1142 |
+
# strip trailing spaces
|
1143 |
+
input_str = input_str.strip()
|
1144 |
+
|
1145 |
+
# Finally, we tokenize the processed text
|
1146 |
+
batch["labels"] = tokenizer(input_str).input_ids
|
1147 |
+
batch["labels_length"] = len(batch["labels"])
|
1148 |
+
return batch
|
1149 |
+
|
1150 |
+
vectorized_datasets = raw_datasets.map(
|
1151 |
+
prepare_dataset,
|
1152 |
+
remove_columns=next(iter(raw_datasets.values())).column_names,
|
1153 |
+
num_proc=num_workers,
|
1154 |
+
desc="preprocess dataset",
|
1155 |
+
)
|
1156 |
+
|
1157 |
+
# filter data with inputs shorter than min_input_length or longer than max_input_length
|
1158 |
+
def is_audio_in_length_range(length):
|
1159 |
+
return length > min_input_length and length < max_input_length
|
1160 |
+
|
1161 |
+
vectorized_datasets = vectorized_datasets.filter(
|
1162 |
+
is_audio_in_length_range,
|
1163 |
+
num_proc=num_workers,
|
1164 |
+
input_columns=["input_length"],
|
1165 |
+
)
|
1166 |
+
|
1167 |
+
# filter data with targets shorter than min_target_length or longer than max_target_length
|
1168 |
+
def is_labels_in_length_range(length):
|
1169 |
+
return length > min_target_length # and length < max_target_length
|
1170 |
+
|
1171 |
+
vectorized_datasets = vectorized_datasets.filter(
|
1172 |
+
is_labels_in_length_range,
|
1173 |
+
num_proc=num_workers,
|
1174 |
+
input_columns=["labels_length"],
|
1175 |
+
)
|
1176 |
+
|
1177 |
+
# for large datasets it is advised to run the preprocessing on a
|
1178 |
+
# single machine first with `args.preprocessing_only` since there will mostly likely
|
1179 |
+
# be a timeout when running the script in distributed mode.
|
1180 |
+
# In a second step `args.preprocessing_only` can then be set to `False` to load the
|
1181 |
+
# cached dataset
|
1182 |
+
if data_args.preprocessing_only:
|
1183 |
+
cache = {k: v.cache_files for k, v in vectorized_datasets.items()}
|
1184 |
+
logger.info(f"Data preprocessing finished. Files cached at {cache}.")
|
1185 |
+
return
|
1186 |
+
|
1187 |
+
# 8. Load Metrics
|
1188 |
+
wer_metric = load_metric("wer")
|
1189 |
+
cer_metric = load_metric("cer")
|
1190 |
+
|
1191 |
+
def compute_metrics(pred_ids: List[List[int]], label_ids: List[List[int]]):
|
1192 |
+
padded_ids = np.where(np.asarray(label_ids) == -100, tokenizer.pad_token_id, np.asarray(label_ids))
|
1193 |
+
|
1194 |
+
pred_str = tokenizer.batch_decode(pred_ids)
|
1195 |
+
# we do not want to group tokens when computing the metrics
|
1196 |
+
label_str = tokenizer.batch_decode(padded_ids, group_tokens=False)
|
1197 |
+
|
1198 |
+
wer = wer_metric.compute(predictions=pred_str, references=label_str)
|
1199 |
+
cer = cer_metric.compute(predictions=pred_str, references=label_str)
|
1200 |
+
|
1201 |
+
return {"wer": wer, "cer": cer}, pred_str, label_str
|
1202 |
+
|
1203 |
+
# 9. save feature extractor, tokenizer and config
|
1204 |
+
feature_extractor.save_pretrained(training_args.output_dir)
|
1205 |
+
tokenizer.save_pretrained(training_args.output_dir)
|
1206 |
+
config.save_pretrained(training_args.output_dir)
|
1207 |
+
|
1208 |
+
processor = AutoProcessor.from_pretrained(training_args.output_dir)
|
1209 |
+
|
1210 |
+
data_collator = FlaxDataCollatorSpeechSeq2SeqWithPadding(
|
1211 |
+
processor=processor,
|
1212 |
+
input_padding="longest",
|
1213 |
+
pad_input_to_multiple_of=pad_input_to_multiple_of,
|
1214 |
+
max_label_length=data_args.max_label_length,
|
1215 |
+
)
|
1216 |
+
|
1217 |
+
# Enable tensorboard only on the master node
|
1218 |
+
has_tensorboard = is_tensorboard_available()
|
1219 |
+
if has_tensorboard and jax.process_index() == 0:
|
1220 |
+
try:
|
1221 |
+
from flax.metrics.tensorboard import SummaryWriter
|
1222 |
+
|
1223 |
+
summary_writer = SummaryWriter(log_dir=Path(training_args.output_dir))
|
1224 |
+
except ImportError as ie:
|
1225 |
+
has_tensorboard = False
|
1226 |
+
logger.warning(
|
1227 |
+
f"Unable to display metrics through TensorBoard because some package are not installed: {ie}"
|
1228 |
+
)
|
1229 |
+
else:
|
1230 |
+
logger.warning(
|
1231 |
+
"Unable to display metrics through TensorBoard because the package is not installed: "
|
1232 |
+
"Please run `pip install tensorboard` to enable."
|
1233 |
+
)
|
1234 |
+
|
1235 |
+
# 10. Handle the repository creation
|
1236 |
+
if training_args.push_to_hub:
|
1237 |
+
with open(os.path.join(training_args.output_dir, ".gitattributes"), "r+") as f:
|
1238 |
+
git_lfs_extensions = f.read()
|
1239 |
+
if "*.wandb" not in git_lfs_extensions:
|
1240 |
+
f.write("*.wandb filter=lfs diff=lfs merge=lfs -text")
|
1241 |
+
if training_args.hub_model_id is None:
|
1242 |
+
repo_name = get_full_repo_name(
|
1243 |
+
Path(training_args.output_dir).absolute().name, token=training_args.hub_token
|
1244 |
+
)
|
1245 |
+
else:
|
1246 |
+
repo_name = training_args.hub_model_id
|
1247 |
+
repo = Repository(training_args.output_dir, clone_from=repo_name)
|
1248 |
+
|
1249 |
+
# 11. Initialize our training
|
1250 |
+
rng = jax.random.PRNGKey(training_args.seed)
|
1251 |
+
rng, dropout_rng = jax.random.split(rng)
|
1252 |
+
|
1253 |
+
# Store some constants
|
1254 |
+
max_steps = int(training_args.max_steps)
|
1255 |
+
gradient_accumulation_steps = int(training_args.gradient_accumulation_steps)
|
1256 |
+
train_batch_size = int(training_args.per_device_train_batch_size) * jax.device_count()
|
1257 |
+
batch_size_per_update = train_batch_size * gradient_accumulation_steps
|
1258 |
+
per_device_eval_batch_size = int(training_args.per_device_eval_batch_size)
|
1259 |
+
eval_batch_size = int(training_args.per_device_eval_batch_size) * jax.device_count()
|
1260 |
+
to_dtype = to_bf16 if training_args.mixed_precision else to_fp32
|
1261 |
+
|
1262 |
+
if training_args.do_train:
|
1263 |
+
num_train_samples = len(vectorized_datasets[data_args.train_split_name])
|
1264 |
+
steps_per_epoch = num_train_samples // batch_size_per_update
|
1265 |
+
if max_steps > 0:
|
1266 |
+
num_epochs = -(training_args.max_steps // -steps_per_epoch)
|
1267 |
+
total_train_steps = max_steps
|
1268 |
+
else:
|
1269 |
+
num_epochs = int(training_args.num_train_epochs)
|
1270 |
+
total_train_steps = steps_per_epoch * num_epochs
|
1271 |
+
|
1272 |
+
# Create learning rate schedule
|
1273 |
+
# Create learning rate schedule
|
1274 |
+
linear_decay_lr_schedule_fn = create_learning_rate_fn(
|
1275 |
+
total_train_steps,
|
1276 |
+
training_args.warmup_steps,
|
1277 |
+
training_args.learning_rate,
|
1278 |
+
)
|
1279 |
+
|
1280 |
+
# We use Optax's "masking" functionality to not apply weight decay
|
1281 |
+
# to bias and LayerNorm scale parameters. decay_mask_fn returns a
|
1282 |
+
# mask boolean with the same structure as the parameters.
|
1283 |
+
# The mask is True for parameters that should be decayed.
|
1284 |
+
# Note that this mask is specifically adapted for FlaxWav2Vec2 and FlaxBart.
|
1285 |
+
# For FlaxT5, one should correct the layer norm parameter naming
|
1286 |
+
# accordingly - see `run_t5_mlm_flax.py` e.g.
|
1287 |
+
def decay_mask_fn(params):
|
1288 |
+
flat_params = traverse_util.flatten_dict(params)
|
1289 |
+
layer_norm_params = [
|
1290 |
+
(name, "scale")
|
1291 |
+
for name in ["layer_norm", "self_attn_layer_norm", "layernorm_embedding", "final_layer_norm"]
|
1292 |
+
]
|
1293 |
+
flat_mask = {path: (path[-1] != "bias" and path[-2:] not in layer_norm_params) for path in flat_params}
|
1294 |
+
return traverse_util.unflatten_dict(flat_mask)
|
1295 |
+
|
1296 |
+
if training_args.adafactor:
|
1297 |
+
# Create Adafactor optimizer
|
1298 |
+
optim = optax.adafactor(
|
1299 |
+
learning_rate=linear_decay_lr_schedule_fn,
|
1300 |
+
dtype_momentum=jnp.bfloat16 if training_args.mixed_precision else jnp.float32,
|
1301 |
+
weight_decay_rate=training_args.weight_decay,
|
1302 |
+
weight_decay_mask=decay_mask_fn,
|
1303 |
+
)
|
1304 |
+
else:
|
1305 |
+
# Create AdamW optimizer
|
1306 |
+
optim = optax.adamw(
|
1307 |
+
learning_rate=linear_decay_lr_schedule_fn,
|
1308 |
+
b1=training_args.adam_beta1,
|
1309 |
+
b2=training_args.adam_beta2,
|
1310 |
+
eps=training_args.adam_epsilon,
|
1311 |
+
weight_decay=training_args.weight_decay,
|
1312 |
+
mask=decay_mask_fn,
|
1313 |
+
)
|
1314 |
+
|
1315 |
+
# Optax MultiSteps for gradient accumulation. We'll only call this optimizer transformation if gradient accumulation is required (i.e. gradient accumulation steps > 1)
|
1316 |
+
if training_args.multisteps and gradient_accumulation_steps > 1:
|
1317 |
+
optim = optax.MultiSteps(optim, gradient_accumulation_steps, use_grad_mean=False)
|
1318 |
+
else:
|
1319 |
+
num_epochs = 0
|
1320 |
+
total_train_steps = 0
|
1321 |
+
num_train_samples = 0
|
1322 |
+
optim = None
|
1323 |
+
|
1324 |
+
# Setup train state
|
1325 |
+
state = MixedPrecisionTrainState.create(
|
1326 |
+
apply_fn=model.__call__,
|
1327 |
+
get_attention_mask_fn=model._get_feature_vector_attention_mask,
|
1328 |
+
params=model.params,
|
1329 |
+
tx=optim,
|
1330 |
+
to_dtype=to_dtype,
|
1331 |
+
dropout_rng=dropout_rng,
|
1332 |
+
max_grad_norm=training_args.max_grad_norm,
|
1333 |
+
)
|
1334 |
+
|
1335 |
+
# Replicate the train state on each device
|
1336 |
+
state = state.replicate()
|
1337 |
+
blank_id = model.config.pad_token_id
|
1338 |
+
|
1339 |
+
# Define gradient update step fn
|
1340 |
+
def train_step(state, batch):
|
1341 |
+
# only one single rng per grad step, with or without accumulation, as the graph should be identical over one effective training batch
|
1342 |
+
dropout_rng, new_dropout_rng = jax.random.split(state.dropout_rng)
|
1343 |
+
|
1344 |
+
def compute_loss(params, minibatch):
|
1345 |
+
labels = minibatch.pop("labels")
|
1346 |
+
logits = state.apply_fn(
|
1347 |
+
**minibatch,
|
1348 |
+
params=params,
|
1349 |
+
dropout_rng=dropout_rng,
|
1350 |
+
freeze_feature_encoder=model_args.freeze_feature_encoder,
|
1351 |
+
train=True,
|
1352 |
+
)[0]
|
1353 |
+
logits_mask = state.get_attention_mask_fn(logits.shape[1], batch["attention_mask"])
|
1354 |
+
loss = ctc_loss(logits, logits_mask, labels, blank_id, loss_reduction="mean")
|
1355 |
+
|
1356 |
+
return loss
|
1357 |
+
|
1358 |
+
grad_fn = jax.value_and_grad(compute_loss)
|
1359 |
+
|
1360 |
+
if gradient_accumulation_steps == 1 or training_args.multisteps:
|
1361 |
+
loss, grad = grad_fn(to_dtype(state.params), batch)
|
1362 |
+
|
1363 |
+
# Custom gradient accumulation
|
1364 |
+
else:
|
1365 |
+
# add a first dimension over gradient_accumulation_steps for minibatch slices
|
1366 |
+
batch = jax.tree_map(
|
1367 |
+
lambda x: x.reshape(
|
1368 |
+
gradient_accumulation_steps, training_args.per_device_train_batch_size, *x.shape[1::]
|
1369 |
+
),
|
1370 |
+
batch,
|
1371 |
+
)
|
1372 |
+
|
1373 |
+
def accum_minibatch_step(accum_grad, minibatch):
|
1374 |
+
# compute loss, num labels and grad over minibatch and accumulate
|
1375 |
+
loss, grad = grad_fn(to_dtype(state.params), minibatch)
|
1376 |
+
return jax.tree_map(jnp.add, accum_grad, grad), loss
|
1377 |
+
|
1378 |
+
# create an initial state for accumulating losses, num labels and gradients
|
1379 |
+
init_grad = jax.tree_map(jnp.zeros_like, to_dtype(state.params))
|
1380 |
+
# loop accum minibatch step over the number of gradient accumulation steps
|
1381 |
+
grad, loss = jax.lax.scan(accum_minibatch_step, init_grad, batch)
|
1382 |
+
|
1383 |
+
# update state
|
1384 |
+
new_state = state.apply_gradients(
|
1385 |
+
grads=grad,
|
1386 |
+
dropout_rng=new_dropout_rng,
|
1387 |
+
to_dtype=to_dtype,
|
1388 |
+
)
|
1389 |
+
|
1390 |
+
# compute gradient norms over all layers and globally for detailed monitoring
|
1391 |
+
layer_grad_norm = jax.tree_map(jnp.linalg.norm, grad)
|
1392 |
+
logs = {
|
1393 |
+
"layer_grad_norm": layer_grad_norm,
|
1394 |
+
"grad_norm": jnp.linalg.norm(jax.tree_util.tree_leaves(layer_grad_norm)),
|
1395 |
+
}
|
1396 |
+
|
1397 |
+
# compute parameter norms over all layers and globally for detailed monitoring
|
1398 |
+
layer_param_norm = jax.tree_map(jnp.linalg.norm, new_state.params)
|
1399 |
+
logs["layer_param_norm"] = layer_param_norm
|
1400 |
+
logs["param_norm"] = jnp.linalg.norm(jax.tree_util.tree_leaves(layer_param_norm))
|
1401 |
+
|
1402 |
+
metrics = {"loss": loss, "learning_rate": linear_decay_lr_schedule_fn(state.step)}
|
1403 |
+
metrics.update(logs)
|
1404 |
+
|
1405 |
+
metrics = jax.lax.pmean(metrics, axis_name="batch")
|
1406 |
+
# metrics = to_fp32(metrics)
|
1407 |
+
|
1408 |
+
return new_state, metrics
|
1409 |
+
|
1410 |
+
# Define eval fn
|
1411 |
+
def eval_step(params, batch):
|
1412 |
+
labels = batch.pop("labels")
|
1413 |
+
logits = model(**batch, params=params, train=False)[0]
|
1414 |
+
|
1415 |
+
logits_mask = model._get_feature_vector_attention_mask(logits.shape[1], batch["attention_mask"])
|
1416 |
+
loss = ctc_loss(logits, logits_mask, labels, blank_id, loss_reduction="mean")
|
1417 |
+
|
1418 |
+
pred_ids = jnp.argmax(logits, axis=-1)
|
1419 |
+
|
1420 |
+
# summarize metrics
|
1421 |
+
metrics = {"loss": loss}
|
1422 |
+
metrics = jax.lax.pmean(metrics, axis_name="batch")
|
1423 |
+
# metrics = to_fp32(metrics)
|
1424 |
+
return metrics, pred_ids
|
1425 |
+
|
1426 |
+
# Create parallel version of the train and eval step
|
1427 |
+
if training_args.do_train:
|
1428 |
+
p_train_step = jax.pmap(train_step, "batch", donate_argnums=(0,))
|
1429 |
+
|
1430 |
+
if training_args.do_eval:
|
1431 |
+
p_eval_step = jax.pmap(eval_step, "batch")
|
1432 |
+
|
1433 |
+
def run_evaluation(step):
|
1434 |
+
if training_args.do_eval:
|
1435 |
+
# ======================== Evaluating ==============================
|
1436 |
+
eval_metrics = []
|
1437 |
+
eval_preds = []
|
1438 |
+
eval_labels = []
|
1439 |
+
|
1440 |
+
# Generate eval set by sequentially sampling indices from the eval dataset and grouping by length
|
1441 |
+
eval_samples_idx = get_grouped_indices(vectorized_datasets[data_args.eval_split_name], eval_batch_size)
|
1442 |
+
eval_batch_idx = generate_batch_splits(eval_samples_idx, eval_batch_size, drop_last=False)
|
1443 |
+
|
1444 |
+
for i, batch_idx in enumerate(tqdm(eval_batch_idx, desc="Evaluating ...", position=2)):
|
1445 |
+
samples = [vectorized_datasets[data_args.eval_split_name][int(idx)] for idx in batch_idx]
|
1446 |
+
batch = data_collator(samples)
|
1447 |
+
labels = batch["labels"]
|
1448 |
+
|
1449 |
+
metrics, pred_ids = pad_shard_unpad(p_eval_step)(state.params, batch.data, min_device_batch=per_device_eval_batch_size)
|
1450 |
+
eval_preds.extend(jax.device_get(pred_ids.reshape(-1, pred_ids.shape[-1])))
|
1451 |
+
eval_metrics.append(metrics)
|
1452 |
+
|
1453 |
+
eval_labels.extend(labels)
|
1454 |
+
|
1455 |
+
# normalize eval metrics
|
1456 |
+
eval_metrics = get_metrics(eval_metrics)
|
1457 |
+
eval_metrics = jax.tree_map(jnp.mean, eval_metrics)
|
1458 |
+
eval_metrics = to_fp32(eval_metrics)
|
1459 |
+
|
1460 |
+
# always run compute metrics
|
1461 |
+
error_rate_metric, pred_str, label_str = compute_metrics(eval_preds, eval_labels)
|
1462 |
+
eval_metrics.update(error_rate_metric)
|
1463 |
+
error_rate_desc = " ".join([f"Eval {key}: {value} |" for key, value in error_rate_metric.items()])
|
1464 |
+
|
1465 |
+
# Print metrics and update progress bar
|
1466 |
+
desc = f"Step... ({step}/{total_train_steps} | Eval Loss: {eval_metrics['loss']} | {error_rate_desc})"
|
1467 |
+
epochs.write(desc)
|
1468 |
+
epochs.desc = desc
|
1469 |
+
|
1470 |
+
# Save metrics
|
1471 |
+
write_wandb_log(eval_metrics, step, prefix="eval")
|
1472 |
+
write_wandb_pred(pred_str, label_str, step)
|
1473 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1474 |
+
# write_eval_metric(summary_writer, eval_metrics, step, pred_str=pred_str)
|
1475 |
+
|
1476 |
+
def save_checkpoint(step):
|
1477 |
+
# save and push checkpoint to the hub
|
1478 |
+
if jax.process_index() == 0:
|
1479 |
+
params = jax.device_get(jax.tree_map(lambda x: x[0], state.params))
|
1480 |
+
model.save_pretrained(training_args.output_dir, params=params)
|
1481 |
+
tokenizer.save_pretrained(training_args.output_dir)
|
1482 |
+
if training_args.push_to_hub:
|
1483 |
+
repo.push_to_hub(commit_message=f"{wandb.run.id}: saving weights and logs of step {int(step / 1000)}k", blocking=False)
|
1484 |
+
|
1485 |
+
logger.info("***** Running training *****")
|
1486 |
+
logger.info(f" Num examples = {num_train_samples}")
|
1487 |
+
logger.info(f" Num Epochs = {num_epochs}")
|
1488 |
+
logger.info(f" Instantaneous batch size per device = {training_args.per_device_train_batch_size}")
|
1489 |
+
logger.info(f" Num gradient accumulation steps = {gradient_accumulation_steps}")
|
1490 |
+
logger.info(f" Total train batch size (w. parallel & distributed) = {batch_size_per_update}")
|
1491 |
+
logger.info(f" Total optimization steps = {total_train_steps}")
|
1492 |
+
logger.info(f" Gradient checkpointing: {config.gradient_checkpointing}")
|
1493 |
+
logger.info(f" Use scan: {config.use_scan}")
|
1494 |
+
logger.info(f" Fuse matmuls: {config.fuse_matmuls}")
|
1495 |
+
|
1496 |
+
train_time = cur_step = 0
|
1497 |
+
epochs = tqdm(range(num_epochs), desc=f"Epoch ... (1/{num_epochs})", position=0)
|
1498 |
+
for epoch in epochs:
|
1499 |
+
if training_args.do_train:
|
1500 |
+
# ======================== Training ================================
|
1501 |
+
train_start = time.time()
|
1502 |
+
|
1503 |
+
# Create sampling rng
|
1504 |
+
rng, input_rng = jax.random.split(rng)
|
1505 |
+
|
1506 |
+
# Generate an epoch by randomly shuffling sampling indices from the train dataset and grouping by length
|
1507 |
+
train_samples_idx = get_grouped_indices(vectorized_datasets[data_args.train_split_name], batch_size_per_update, input_rng)
|
1508 |
+
train_batch_idx = generate_batch_splits(train_samples_idx, batch_size_per_update)
|
1509 |
+
|
1510 |
+
# Gather the indices for creating the batch and do a training step
|
1511 |
+
for step, batch_idx in enumerate(tqdm(train_batch_idx, desc="Training...", position=1), 1):
|
1512 |
+
samples = [vectorized_datasets[data_args.train_split_name][int(idx)] for idx in batch_idx]
|
1513 |
+
batch = data_collator(samples)
|
1514 |
+
batch = shard(batch.data)
|
1515 |
+
try:
|
1516 |
+
state, train_metric = p_train_step(state, batch)
|
1517 |
+
except TypeError as e:
|
1518 |
+
logger.warning("Encountered following error: \n", e)
|
1519 |
+
|
1520 |
+
cur_step = epoch * (num_train_samples // batch_size_per_update) + step
|
1521 |
+
|
1522 |
+
if cur_step % training_args.logging_steps == 0:
|
1523 |
+
# Save metrics
|
1524 |
+
train_metric = unreplicate(train_metric)
|
1525 |
+
train_time += time.time() - train_start
|
1526 |
+
# need to upcast all device arrays to fp32 for wandb logging (jnp.bfloat16 not supported) -> do this here OR in train_step
|
1527 |
+
write_wandb_log(to_fp32(train_metric), cur_step, prefix=data_args.train_split_name)
|
1528 |
+
# we won't log to tensorboard for now (it is fiddly logging param and grad norms on a layer-by-layer basis)
|
1529 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1530 |
+
# write_train_metric(summary_writer, train_metrics, train_time, cur_step)
|
1531 |
+
|
1532 |
+
epochs.write(
|
1533 |
+
f"Step... ({cur_step} | Loss: {train_metric['loss']}, Learning Rate: {train_metric['learning_rate']}, Gradient Norm: {train_metric['grad_norm']})"
|
1534 |
+
)
|
1535 |
+
|
1536 |
+
if cur_step % total_train_steps == 0:
|
1537 |
+
break
|
1538 |
+
|
1539 |
+
if training_args.eval_steps and cur_step % training_args.eval_steps == 0:
|
1540 |
+
run_evaluation(cur_step)
|
1541 |
+
|
1542 |
+
if cur_step % training_args.save_steps == 0:
|
1543 |
+
save_checkpoint(cur_step)
|
1544 |
+
|
1545 |
+
if training_args.eval_steps == 0 and (epoch + 1) != num_epochs:
|
1546 |
+
# run evaluation at the end of the epoch if eval steps are not specified
|
1547 |
+
run_evaluation(cur_step)
|
1548 |
+
save_checkpoint(cur_step)
|
1549 |
+
|
1550 |
+
if training_args.do_train:
|
1551 |
+
save_checkpoint(cur_step)
|
1552 |
+
|
1553 |
+
cur_step = max_steps if max_steps > 0 else cur_step # set step to max steps so that eval happens in alignment with training
|
1554 |
+
|
1555 |
+
if training_args.do_eval:
|
1556 |
+
run_evaluation(cur_step)
|
1557 |
+
|
1558 |
+
# TODO: collapse 'do_predict' into the run_evaluation function
|
1559 |
+
if training_args.do_predict:
|
1560 |
+
for split in [data_args.test_split_name]:
|
1561 |
+
# ======================== Evaluating ==============================
|
1562 |
+
eval_metrics = []
|
1563 |
+
eval_preds = []
|
1564 |
+
eval_labels = []
|
1565 |
+
|
1566 |
+
# Generate eval set by sequentially sampling indices from the test dataset and grouping by length
|
1567 |
+
eval_samples_idx = get_grouped_indices(vectorized_datasets[split], eval_batch_size)
|
1568 |
+
eval_batch_idx = generate_batch_splits(eval_samples_idx, eval_batch_size, drop_last=False)
|
1569 |
+
|
1570 |
+
for i, batch_idx in enumerate(tqdm(eval_batch_idx, desc=f"Predicting {split}...", position=2)):
|
1571 |
+
samples = [vectorized_datasets[split][int(idx)] for idx in batch_idx]
|
1572 |
+
batch = data_collator(samples)
|
1573 |
+
labels = batch["labels"]
|
1574 |
+
|
1575 |
+
metrics, pred_ids = pad_shard_unpad(p_eval_step)(state.params, batch.data, min_device_batch=per_device_eval_batch_size)
|
1576 |
+
eval_preds.extend(jax.device_get(pred_ids.reshape(-1, pred_ids.shape[-1])))
|
1577 |
+
eval_metrics.append(metrics)
|
1578 |
+
|
1579 |
+
eval_labels.extend(labels)
|
1580 |
+
|
1581 |
+
# normalize eval metrics
|
1582 |
+
eval_metrics = get_metrics(eval_metrics)
|
1583 |
+
eval_metrics = jax.tree_map(jnp.mean, eval_metrics)
|
1584 |
+
eval_metrics = to_fp32(eval_metrics)
|
1585 |
+
|
1586 |
+
# always run compute metrics
|
1587 |
+
error_rate_metric, pred_str, label_str = compute_metrics(eval_preds, eval_labels)
|
1588 |
+
eval_metrics.update(error_rate_metric)
|
1589 |
+
error_rate_desc = " ".join([f"Eval {key}: {value} |" for key, value in error_rate_metric.items()])
|
1590 |
+
|
1591 |
+
# Print metrics and update progress bar
|
1592 |
+
desc = f"Step... ({cur_step}/{total_train_steps} | Eval Loss: {eval_metrics['loss']} | {error_rate_desc})"
|
1593 |
+
epochs.write(desc)
|
1594 |
+
epochs.desc = desc
|
1595 |
+
|
1596 |
+
# Save metrics
|
1597 |
+
write_wandb_log(eval_metrics, cur_step, prefix=split)
|
1598 |
+
write_wandb_pred(pred_str, label_str, cur_step, prefix=split)
|
1599 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1600 |
+
# write_eval_metric(summary_writer, eval_metrics, cur_step, pred_str=pred_str)
|
1601 |
+
|
1602 |
+
|
1603 |
+
if __name__ == "__main__":
|
1604 |
+
main()
|
wandb/run-20220731_120912-3m2amvk9/files/config.yaml
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
wandb_version: 1
|
2 |
+
|
3 |
+
_wandb:
|
4 |
+
desc: null
|
5 |
+
value:
|
6 |
+
cli_version: 0.12.9
|
7 |
+
code_path: code/run_flax_speech_recognition_ctc.py
|
8 |
+
framework: huggingface
|
9 |
+
huggingface_version: 4.21.0
|
10 |
+
is_jupyter_run: false
|
11 |
+
is_kaggle_kernel: false
|
12 |
+
python_version: 3.8.10
|
13 |
+
start_time: 1659269352
|
14 |
+
t:
|
15 |
+
1:
|
16 |
+
- 1
|
17 |
+
- 2
|
18 |
+
- 3
|
19 |
+
- 11
|
20 |
+
- 12
|
21 |
+
3:
|
22 |
+
- 13
|
23 |
+
4: 3.8.10
|
24 |
+
5: 0.12.9
|
25 |
+
6: 4.21.0
|
26 |
+
8:
|
27 |
+
- 5
|
wandb/run-20220731_120912-3m2amvk9/files/diff.patch
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_120912-3m2amvk9/files/output.log
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_120912-3m2amvk9/files/requirements.txt
ADDED
@@ -0,0 +1,158 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
absl-py==1.0.0
|
2 |
+
aiohttp==3.8.1
|
3 |
+
aiosignal==1.2.0
|
4 |
+
appdirs==1.4.4
|
5 |
+
astunparse==1.6.3
|
6 |
+
async-timeout==4.0.2
|
7 |
+
attrs==21.4.0
|
8 |
+
audioread==2.1.9
|
9 |
+
backcall==0.2.0
|
10 |
+
cachetools==4.2.4
|
11 |
+
certifi==2021.10.8
|
12 |
+
cffi==1.15.1
|
13 |
+
charset-normalizer==2.0.10
|
14 |
+
chex==0.1.3
|
15 |
+
click==8.0.3
|
16 |
+
cloud-tpu-client==0.10
|
17 |
+
cloud-tpu-profiler==2.4.0
|
18 |
+
clu==0.0.6
|
19 |
+
colorama==0.4.5
|
20 |
+
commonmark==0.9.1
|
21 |
+
configparser==5.2.0
|
22 |
+
contextlib2==21.6.0
|
23 |
+
cycler==0.11.0
|
24 |
+
datasets==2.4.0
|
25 |
+
decorator==5.1.0
|
26 |
+
dill==0.3.4
|
27 |
+
dm-tree==0.1.6
|
28 |
+
docker-pycreds==0.4.0
|
29 |
+
etils==0.6.0
|
30 |
+
exceptiongroup==1.0.0rc8
|
31 |
+
filelock==3.4.2
|
32 |
+
flatbuffers==2.0
|
33 |
+
flax==0.5.3
|
34 |
+
fonttools==4.28.5
|
35 |
+
frozenlist==1.2.0
|
36 |
+
fsspec==2021.11.1
|
37 |
+
future==0.18.2
|
38 |
+
gast==0.4.0
|
39 |
+
gitdb==4.0.9
|
40 |
+
gitpython==3.1.26
|
41 |
+
google-api-core==1.31.5
|
42 |
+
google-api-python-client==1.8.0
|
43 |
+
google-auth-httplib2==0.1.0
|
44 |
+
google-auth-oauthlib==0.4.6
|
45 |
+
google-auth==2.3.3
|
46 |
+
google-pasta==0.2.0
|
47 |
+
googleapis-common-protos==1.54.0
|
48 |
+
grpcio==1.43.0
|
49 |
+
h5py==3.6.0
|
50 |
+
httplib2==0.20.2
|
51 |
+
huggingface-hub==0.2.1
|
52 |
+
hypothesis==6.53.0
|
53 |
+
idna==3.3
|
54 |
+
importlib-metadata==4.10.0
|
55 |
+
importlib-resources==5.4.0
|
56 |
+
ipython==7.31.0
|
57 |
+
jax==0.3.15
|
58 |
+
jaxlib==0.3.15
|
59 |
+
jedi==0.18.1
|
60 |
+
jiwer==2.3.0
|
61 |
+
joblib==1.1.0
|
62 |
+
keras-preprocessing==1.1.2
|
63 |
+
keras==2.7.0
|
64 |
+
kiwisolver==1.3.2
|
65 |
+
libclang==12.0.0
|
66 |
+
librosa==0.9.2
|
67 |
+
libtpu-nightly==0.1.dev20220722
|
68 |
+
llvmlite==0.39.0
|
69 |
+
markdown==3.3.6
|
70 |
+
matplotlib-inline==0.1.3
|
71 |
+
matplotlib==3.5.1
|
72 |
+
ml-collections==0.1.0
|
73 |
+
msgpack==1.0.3
|
74 |
+
multidict==5.2.0
|
75 |
+
multiprocess==0.70.12.2
|
76 |
+
numba==0.56.0
|
77 |
+
numpy==1.22.0
|
78 |
+
oauth2client==4.1.3
|
79 |
+
oauthlib==3.1.1
|
80 |
+
opt-einsum==3.3.0
|
81 |
+
optax==0.1.3
|
82 |
+
packaging==21.3
|
83 |
+
pandas==1.3.5
|
84 |
+
parso==0.8.3
|
85 |
+
pathtools==0.1.2
|
86 |
+
pexpect==4.8.0
|
87 |
+
pickleshare==0.7.5
|
88 |
+
pillow==9.0.0
|
89 |
+
pip==22.2.1
|
90 |
+
pkg-resources==0.0.0
|
91 |
+
pooch==1.6.0
|
92 |
+
promise==2.3
|
93 |
+
prompt-toolkit==3.0.24
|
94 |
+
protobuf==3.19.1
|
95 |
+
psutil==5.9.0
|
96 |
+
ptyprocess==0.7.0
|
97 |
+
pyarrow==6.0.1
|
98 |
+
pyasn1-modules==0.2.8
|
99 |
+
pyasn1==0.4.8
|
100 |
+
pycparser==2.21
|
101 |
+
pyctcdecode==0.4.0
|
102 |
+
pygments==2.11.1
|
103 |
+
pygtrie==2.5.0
|
104 |
+
pyparsing==3.0.6
|
105 |
+
python-dateutil==2.8.2
|
106 |
+
python-levenshtein==0.12.2
|
107 |
+
pytz==2021.3
|
108 |
+
pyyaml==6.0
|
109 |
+
regex==2021.11.10
|
110 |
+
requests-oauthlib==1.3.0
|
111 |
+
requests==2.27.0
|
112 |
+
resampy==0.3.1
|
113 |
+
responses==0.18.0
|
114 |
+
rich==11.2.0
|
115 |
+
rsa==4.8
|
116 |
+
sacremoses==0.0.46
|
117 |
+
scikit-learn==1.1.1
|
118 |
+
scipy==1.7.3
|
119 |
+
sentry-sdk==1.5.2
|
120 |
+
setuptools==44.0.0
|
121 |
+
shortuuid==1.0.8
|
122 |
+
six==1.16.0
|
123 |
+
smmap==5.0.0
|
124 |
+
sortedcontainers==2.4.0
|
125 |
+
soundfile==0.10.3.post1
|
126 |
+
sox==1.4.1
|
127 |
+
subprocess32==3.5.4
|
128 |
+
tensorboard-data-server==0.6.1
|
129 |
+
tensorboard-plugin-wit==1.8.0
|
130 |
+
tensorboard==2.7.0
|
131 |
+
tensorflow-cpu==2.7.0
|
132 |
+
tensorflow-datasets==4.4.0
|
133 |
+
tensorflow-estimator==2.7.0
|
134 |
+
tensorflow-io-gcs-filesystem==0.23.1
|
135 |
+
tensorflow-metadata==1.5.0
|
136 |
+
tensorflow==2.7.0
|
137 |
+
tensorstore==0.1.21
|
138 |
+
termcolor==1.1.0
|
139 |
+
threadpoolctl==3.1.0
|
140 |
+
tokenizers==0.11.2
|
141 |
+
toolz==0.11.2
|
142 |
+
torch==1.12.0
|
143 |
+
torchaudio==0.12.0+cpu
|
144 |
+
tqdm==4.62.3
|
145 |
+
traitlets==5.1.1
|
146 |
+
transformers==4.21.0
|
147 |
+
typing-extensions==4.3.0
|
148 |
+
uritemplate==3.0.1
|
149 |
+
urllib3==1.26.7
|
150 |
+
wandb==0.12.9
|
151 |
+
wcwidth==0.2.5
|
152 |
+
werkzeug==2.0.2
|
153 |
+
wheel==0.37.1
|
154 |
+
wrapt==1.13.3
|
155 |
+
xxhash==2.0.2
|
156 |
+
yarl==1.7.2
|
157 |
+
yaspin==2.1.0
|
158 |
+
zipp==3.7.0
|
wandb/run-20220731_120912-3m2amvk9/files/wandb-metadata.json
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"os": "Linux-5.4.0-1043-gcp-x86_64-with-glibc2.29",
|
3 |
+
"python": "3.8.10",
|
4 |
+
"heartbeatAt": "2022-07-31T12:09:15.864974",
|
5 |
+
"startedAt": "2022-07-31T12:09:12.343181",
|
6 |
+
"docker": null,
|
7 |
+
"cpu_count": 96,
|
8 |
+
"cuda": null,
|
9 |
+
"args": [
|
10 |
+
"--model_name_or_path=facebook/wav2vec2-xls-r-1b",
|
11 |
+
"--hub_model_id=NbAiLab/wav2vec2-1b-npsc-nst",
|
12 |
+
"--tokenizer_name=./",
|
13 |
+
"--output_dir=./",
|
14 |
+
"--overwrite_output_dir",
|
15 |
+
"--num_train_epochs=40",
|
16 |
+
"--per_device_train_batch_size=10",
|
17 |
+
"--per_device_eval_batch_size=10",
|
18 |
+
"--gradient_accumulation_steps=1",
|
19 |
+
"--precision=full_mixed",
|
20 |
+
"--matmul_precision=bfloat16",
|
21 |
+
"--learning_rate=8e-4",
|
22 |
+
"--warmup_steps=4000",
|
23 |
+
"--length_column_name=input_length",
|
24 |
+
"--evaluation_strategy=steps",
|
25 |
+
"--text_column_name=text",
|
26 |
+
"--save_steps=3153",
|
27 |
+
"--eval_steps=3153",
|
28 |
+
"--logging_steps=100",
|
29 |
+
"--layerdrop=0.041",
|
30 |
+
"--attention_dropout=0.094",
|
31 |
+
"--activation_dropout=0.055",
|
32 |
+
"--hidden_dropout=0.047",
|
33 |
+
"--save_total_limit=5",
|
34 |
+
"--freeze_feature_encoder",
|
35 |
+
"--feat_proj_dropout=0.04",
|
36 |
+
"--mask_time_prob=0.082",
|
37 |
+
"--mask_time_length=10",
|
38 |
+
"--mask_feature_prob=0.25",
|
39 |
+
"--mask_feature_length=64",
|
40 |
+
"--gradient_checkpointing",
|
41 |
+
"--min_duration_in_seconds=0.5",
|
42 |
+
"--max_duration_in_seconds=20.0",
|
43 |
+
"--use_auth_token",
|
44 |
+
"--seed=42",
|
45 |
+
"--group_by_length",
|
46 |
+
"--do_train",
|
47 |
+
"--do_eval",
|
48 |
+
"--push_to_hub",
|
49 |
+
"--preprocessing_num_workers=32",
|
50 |
+
"--ctc_zero_infinity",
|
51 |
+
"--do_lower_case",
|
52 |
+
"--wandb_project=wav2vec2",
|
53 |
+
"--wandb_name=wav2vec2-1b-npsc-nst",
|
54 |
+
"--remove_punctuation"
|
55 |
+
],
|
56 |
+
"state": "running",
|
57 |
+
"program": "run_flax_speech_recognition_ctc.py",
|
58 |
+
"codePath": "run_flax_speech_recognition_ctc.py",
|
59 |
+
"git": {
|
60 |
+
"remote": "https://huggingface.co/NbAiLab/wav2vec2-1b-npsc-nst",
|
61 |
+
"commit": "ce31127160a53192d2ac9bed788e4c4291ce0652"
|
62 |
+
},
|
63 |
+
"email": "versae@gmail.com",
|
64 |
+
"root": "/data/wav2vec2-1b-npsc-nst",
|
65 |
+
"host": "t1v-n-eedfb410-w-0",
|
66 |
+
"username": "javierr",
|
67 |
+
"executable": "/data/flax/bin/python"
|
68 |
+
}
|
wandb/run-20220731_120912-3m2amvk9/files/wandb-summary.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
{}
|
wandb/run-20220731_120912-3m2amvk9/logs/debug-internal.log
ADDED
@@ -0,0 +1,600 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
2022-07-31 12:09:13,262 INFO MainThread:534148 [internal.py:wandb_internal():87] W&B internal server running at pid: 534148, started at: 2022-07-31 12:09:13.262652
|
2 |
+
2022-07-31 12:09:13,265 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: check_version
|
3 |
+
2022-07-31 12:09:13,265 INFO WriterThread:534148 [datastore.py:open_for_write():77] open: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/run-3m2amvk9.wandb
|
4 |
+
2022-07-31 12:09:13,266 DEBUG SenderThread:534148 [sender.py:send():234] send: header
|
5 |
+
2022-07-31 12:09:13,266 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: check_version
|
6 |
+
2022-07-31 12:09:13,303 DEBUG SenderThread:534148 [sender.py:send():234] send: run
|
7 |
+
2022-07-31 12:09:13,500 INFO SenderThread:534148 [dir_watcher.py:__init__():169] watching files in: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files
|
8 |
+
2022-07-31 12:09:13,500 INFO SenderThread:534148 [sender.py:_start_run_threads():804] run started: 3m2amvk9 with start time 1659269352
|
9 |
+
2022-07-31 12:09:13,500 DEBUG SenderThread:534148 [sender.py:send():234] send: summary
|
10 |
+
2022-07-31 12:09:13,500 INFO SenderThread:534148 [sender.py:_save_file():939] saving file wandb-summary.json with policy end
|
11 |
+
2022-07-31 12:09:13,501 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: run_start
|
12 |
+
2022-07-31 12:09:14,506 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/wandb-summary.json
|
13 |
+
2022-07-31 12:09:15,864 DEBUG HandlerThread:534148 [meta.py:__init__():40] meta init
|
14 |
+
2022-07-31 12:09:15,864 DEBUG HandlerThread:534148 [meta.py:__init__():54] meta init done
|
15 |
+
2022-07-31 12:09:15,864 DEBUG HandlerThread:534148 [meta.py:probe():214] probe
|
16 |
+
2022-07-31 12:09:15,866 DEBUG HandlerThread:534148 [meta.py:_setup_git():204] setup git
|
17 |
+
2022-07-31 12:09:15,912 DEBUG HandlerThread:534148 [meta.py:_setup_git():211] setup git done
|
18 |
+
2022-07-31 12:09:15,913 DEBUG HandlerThread:534148 [meta.py:_save_code():92] save code
|
19 |
+
2022-07-31 12:09:15,929 DEBUG HandlerThread:534148 [meta.py:_save_code():113] save code done
|
20 |
+
2022-07-31 12:09:15,929 DEBUG HandlerThread:534148 [meta.py:_save_patches():130] save patches
|
21 |
+
2022-07-31 12:09:16,263 DEBUG HandlerThread:534148 [meta.py:_save_patches():172] save patches done
|
22 |
+
2022-07-31 12:09:16,264 DEBUG HandlerThread:534148 [meta.py:_save_pip():58] save pip
|
23 |
+
2022-07-31 12:09:16,264 DEBUG HandlerThread:534148 [meta.py:_save_pip():72] save pip done
|
24 |
+
2022-07-31 12:09:16,264 DEBUG HandlerThread:534148 [meta.py:probe():252] probe done
|
25 |
+
2022-07-31 12:09:16,268 DEBUG SenderThread:534148 [sender.py:send():234] send: files
|
26 |
+
2022-07-31 12:09:16,268 INFO SenderThread:534148 [sender.py:_save_file():939] saving file wandb-metadata.json with policy now
|
27 |
+
2022-07-31 12:09:16,269 INFO SenderThread:534148 [sender.py:_save_file():939] saving file code/run_flax_speech_recognition_ctc.py with policy now
|
28 |
+
2022-07-31 12:09:16,269 INFO SenderThread:534148 [sender.py:_save_file():939] saving file diff.patch with policy now
|
29 |
+
2022-07-31 12:09:16,275 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
30 |
+
2022-07-31 12:09:16,275 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
31 |
+
2022-07-31 12:09:16,506 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
32 |
+
2022-07-31 12:09:16,507 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/wandb-metadata.json
|
33 |
+
2022-07-31 12:09:16,507 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/diff.patch
|
34 |
+
2022-07-31 12:09:16,507 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/requirements.txt
|
35 |
+
2022-07-31 12:09:16,507 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/code/run_flax_speech_recognition_ctc.py
|
36 |
+
2022-07-31 12:09:16,507 INFO Thread-8 :534148 [dir_watcher.py:_on_file_created():217] file/dir created: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/code
|
37 |
+
2022-07-31 12:09:16,752 INFO Thread-11 :534148 [upload_job.py:push():137] Uploaded file /tmp/tmpav5630zfwandb/2jvpq0cf-wandb-metadata.json
|
38 |
+
2022-07-31 12:09:16,950 INFO Thread-12 :534148 [upload_job.py:push():137] Uploaded file /tmp/tmpav5630zfwandb/3f2zhjar-code/run_flax_speech_recognition_ctc.py
|
39 |
+
2022-07-31 12:09:17,012 INFO Thread-13 :534148 [upload_job.py:push():137] Uploaded file /tmp/tmpav5630zfwandb/278vdic7-diff.patch
|
40 |
+
2022-07-31 12:09:18,507 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
41 |
+
2022-07-31 12:09:20,508 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
42 |
+
2022-07-31 12:09:22,509 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
43 |
+
2022-07-31 12:09:24,510 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
44 |
+
2022-07-31 12:09:30,512 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
45 |
+
2022-07-31 12:09:31,415 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
46 |
+
2022-07-31 12:09:31,415 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
47 |
+
2022-07-31 12:09:32,513 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
48 |
+
2022-07-31 12:09:43,949 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
49 |
+
2022-07-31 12:09:46,519 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
50 |
+
2022-07-31 12:09:46,550 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
51 |
+
2022-07-31 12:09:46,550 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
52 |
+
2022-07-31 12:09:48,520 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
53 |
+
2022-07-31 12:09:59,524 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
54 |
+
2022-07-31 12:10:01,524 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
55 |
+
2022-07-31 12:10:01,712 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
56 |
+
2022-07-31 12:10:01,712 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
57 |
+
2022-07-31 12:10:03,525 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
58 |
+
2022-07-31 12:10:14,022 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
59 |
+
2022-07-31 12:10:15,530 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
60 |
+
2022-07-31 12:10:17,063 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
61 |
+
2022-07-31 12:10:17,064 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
62 |
+
2022-07-31 12:10:17,531 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
63 |
+
2022-07-31 12:10:32,330 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
64 |
+
2022-07-31 12:10:32,330 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
65 |
+
2022-07-31 12:10:44,099 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
66 |
+
2022-07-31 12:10:47,492 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
67 |
+
2022-07-31 12:10:47,493 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
68 |
+
2022-07-31 12:11:00,549 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
69 |
+
2022-07-31 12:11:02,550 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
70 |
+
2022-07-31 12:11:02,932 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
71 |
+
2022-07-31 12:11:02,933 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
72 |
+
2022-07-31 12:11:04,551 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
73 |
+
2022-07-31 12:11:06,552 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
74 |
+
2022-07-31 12:11:08,557 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
75 |
+
2022-07-31 12:11:10,554 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
76 |
+
2022-07-31 12:11:13,555 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
77 |
+
2022-07-31 12:11:14,171 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
78 |
+
2022-07-31 12:11:15,556 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
79 |
+
2022-07-31 12:11:17,557 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
80 |
+
2022-07-31 12:11:18,095 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
81 |
+
2022-07-31 12:11:18,095 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
82 |
+
2022-07-31 12:11:19,558 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
83 |
+
2022-07-31 12:11:21,559 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
84 |
+
2022-07-31 12:11:23,560 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
85 |
+
2022-07-31 12:11:25,561 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
86 |
+
2022-07-31 12:11:27,562 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
87 |
+
2022-07-31 12:11:29,563 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
88 |
+
2022-07-31 12:11:31,564 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
89 |
+
2022-07-31 12:11:33,268 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
90 |
+
2022-07-31 12:11:33,268 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
91 |
+
2022-07-31 12:11:33,565 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
92 |
+
2022-07-31 12:11:35,566 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
93 |
+
2022-07-31 12:11:37,567 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
94 |
+
2022-07-31 12:11:39,568 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
95 |
+
2022-07-31 12:11:41,570 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
96 |
+
2022-07-31 12:11:43,571 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
97 |
+
2022-07-31 12:11:44,242 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
98 |
+
2022-07-31 12:11:45,572 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
99 |
+
2022-07-31 12:11:47,573 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
100 |
+
2022-07-31 12:11:48,406 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
101 |
+
2022-07-31 12:11:48,406 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
102 |
+
2022-07-31 12:11:49,574 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
103 |
+
2022-07-31 12:11:51,575 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
104 |
+
2022-07-31 12:11:53,576 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
105 |
+
2022-07-31 12:11:55,577 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
106 |
+
2022-07-31 12:11:57,578 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
107 |
+
2022-07-31 12:11:59,579 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
108 |
+
2022-07-31 12:12:01,580 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
109 |
+
2022-07-31 12:12:03,574 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
110 |
+
2022-07-31 12:12:03,574 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
111 |
+
2022-07-31 12:12:03,581 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
112 |
+
2022-07-31 12:12:05,582 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
113 |
+
2022-07-31 12:12:07,584 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
114 |
+
2022-07-31 12:12:09,585 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
115 |
+
2022-07-31 12:12:11,586 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
116 |
+
2022-07-31 12:12:13,587 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
117 |
+
2022-07-31 12:12:14,319 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
118 |
+
2022-07-31 12:12:15,588 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
119 |
+
2022-07-31 12:12:17,589 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
120 |
+
2022-07-31 12:12:18,722 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
121 |
+
2022-07-31 12:12:18,722 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
122 |
+
2022-07-31 12:12:19,589 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
123 |
+
2022-07-31 12:12:21,590 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
124 |
+
2022-07-31 12:12:23,591 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
125 |
+
2022-07-31 12:12:25,592 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
126 |
+
2022-07-31 12:12:27,593 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
127 |
+
2022-07-31 12:12:29,594 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
128 |
+
2022-07-31 12:12:31,595 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
129 |
+
2022-07-31 12:12:33,596 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
130 |
+
2022-07-31 12:12:33,863 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
131 |
+
2022-07-31 12:12:33,864 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
132 |
+
2022-07-31 12:12:35,597 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
133 |
+
2022-07-31 12:12:37,598 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
134 |
+
2022-07-31 12:12:39,603 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
135 |
+
2022-07-31 12:12:41,604 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
136 |
+
2022-07-31 12:12:43,605 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
137 |
+
2022-07-31 12:12:44,398 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
138 |
+
2022-07-31 12:12:45,605 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
139 |
+
2022-07-31 12:12:47,606 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
140 |
+
2022-07-31 12:12:49,014 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
141 |
+
2022-07-31 12:12:49,015 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
142 |
+
2022-07-31 12:12:49,607 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
143 |
+
2022-07-31 12:12:51,608 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
144 |
+
2022-07-31 12:12:53,610 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
145 |
+
2022-07-31 12:12:55,611 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
146 |
+
2022-07-31 12:12:57,612 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
147 |
+
2022-07-31 12:12:59,613 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
148 |
+
2022-07-31 12:13:01,614 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
149 |
+
2022-07-31 12:13:03,615 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
150 |
+
2022-07-31 12:13:04,150 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
151 |
+
2022-07-31 12:13:04,150 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
152 |
+
2022-07-31 12:13:05,616 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
153 |
+
2022-07-31 12:13:07,617 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
154 |
+
2022-07-31 12:13:09,618 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
155 |
+
2022-07-31 12:13:11,619 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
156 |
+
2022-07-31 12:13:13,621 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
157 |
+
2022-07-31 12:13:14,490 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
158 |
+
2022-07-31 12:13:15,621 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
159 |
+
2022-07-31 12:13:17,622 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
160 |
+
2022-07-31 12:13:19,300 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
161 |
+
2022-07-31 12:13:19,301 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
162 |
+
2022-07-31 12:13:19,624 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
163 |
+
2022-07-31 12:13:21,625 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
164 |
+
2022-07-31 12:13:23,626 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
165 |
+
2022-07-31 12:13:25,628 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
166 |
+
2022-07-31 12:13:27,629 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
167 |
+
2022-07-31 12:13:29,629 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
168 |
+
2022-07-31 12:13:31,630 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
169 |
+
2022-07-31 12:13:33,631 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
170 |
+
2022-07-31 12:13:34,440 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
171 |
+
2022-07-31 12:13:34,440 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
172 |
+
2022-07-31 12:13:35,633 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
173 |
+
2022-07-31 12:13:37,634 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
174 |
+
2022-07-31 12:13:39,635 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
175 |
+
2022-07-31 12:13:41,637 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
176 |
+
2022-07-31 12:13:43,638 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
177 |
+
2022-07-31 12:13:44,559 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
178 |
+
2022-07-31 12:13:45,639 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
179 |
+
2022-07-31 12:13:47,640 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
180 |
+
2022-07-31 12:13:49,588 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
181 |
+
2022-07-31 12:13:49,588 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
182 |
+
2022-07-31 12:13:49,641 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
183 |
+
2022-07-31 12:13:51,642 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
184 |
+
2022-07-31 12:13:53,643 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
185 |
+
2022-07-31 12:13:55,644 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
186 |
+
2022-07-31 12:13:58,645 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
187 |
+
2022-07-31 12:14:00,647 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
188 |
+
2022-07-31 12:14:02,648 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
189 |
+
2022-07-31 12:14:04,649 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
190 |
+
2022-07-31 12:14:04,739 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
191 |
+
2022-07-31 12:14:04,740 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
192 |
+
2022-07-31 12:14:06,650 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
193 |
+
2022-07-31 12:14:08,651 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
194 |
+
2022-07-31 12:14:10,652 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
195 |
+
2022-07-31 12:14:12,653 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
196 |
+
2022-07-31 12:14:14,631 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
197 |
+
2022-07-31 12:14:14,655 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
198 |
+
2022-07-31 12:14:16,656 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
199 |
+
2022-07-31 12:14:18,657 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
200 |
+
2022-07-31 12:14:19,879 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
201 |
+
2022-07-31 12:14:19,879 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
202 |
+
2022-07-31 12:14:20,658 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
203 |
+
2022-07-31 12:14:22,659 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
204 |
+
2022-07-31 12:14:24,660 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
205 |
+
2022-07-31 12:14:26,661 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
206 |
+
2022-07-31 12:14:28,664 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
207 |
+
2022-07-31 12:14:30,663 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
208 |
+
2022-07-31 12:14:32,664 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
209 |
+
2022-07-31 12:14:34,666 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
210 |
+
2022-07-31 12:14:35,050 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
211 |
+
2022-07-31 12:14:35,050 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
212 |
+
2022-07-31 12:14:36,666 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
213 |
+
2022-07-31 12:14:38,667 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
214 |
+
2022-07-31 12:14:40,668 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
215 |
+
2022-07-31 12:14:42,669 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
216 |
+
2022-07-31 12:14:44,670 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
217 |
+
2022-07-31 12:14:44,705 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
218 |
+
2022-07-31 12:14:46,671 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
219 |
+
2022-07-31 12:14:48,672 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
220 |
+
2022-07-31 12:14:50,190 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
221 |
+
2022-07-31 12:14:50,190 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
222 |
+
2022-07-31 12:14:50,673 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
223 |
+
2022-07-31 12:14:52,674 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
224 |
+
2022-07-31 12:14:54,675 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
225 |
+
2022-07-31 12:14:56,676 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
226 |
+
2022-07-31 12:14:58,677 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
227 |
+
2022-07-31 12:15:00,678 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
228 |
+
2022-07-31 12:15:02,679 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
229 |
+
2022-07-31 12:15:04,680 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
230 |
+
2022-07-31 12:15:05,343 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
231 |
+
2022-07-31 12:15:05,344 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
232 |
+
2022-07-31 12:15:06,681 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
233 |
+
2022-07-31 12:15:08,682 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
234 |
+
2022-07-31 12:15:10,683 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
235 |
+
2022-07-31 12:15:12,684 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
236 |
+
2022-07-31 12:15:14,686 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
237 |
+
2022-07-31 12:15:14,784 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
238 |
+
2022-07-31 12:15:16,686 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
239 |
+
2022-07-31 12:15:18,687 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
240 |
+
2022-07-31 12:15:20,496 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
241 |
+
2022-07-31 12:15:20,497 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
242 |
+
2022-07-31 12:15:20,688 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
243 |
+
2022-07-31 12:15:22,689 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
244 |
+
2022-07-31 12:15:24,690 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
245 |
+
2022-07-31 12:15:26,691 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
246 |
+
2022-07-31 12:15:28,692 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
247 |
+
2022-07-31 12:15:30,693 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
248 |
+
2022-07-31 12:15:32,694 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
249 |
+
2022-07-31 12:15:34,695 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
250 |
+
2022-07-31 12:15:35,641 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
251 |
+
2022-07-31 12:15:35,641 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
252 |
+
2022-07-31 12:15:36,696 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
253 |
+
2022-07-31 12:15:38,697 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
254 |
+
2022-07-31 12:15:40,698 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
255 |
+
2022-07-31 12:15:42,699 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
256 |
+
2022-07-31 12:15:44,700 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
257 |
+
2022-07-31 12:15:44,862 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
258 |
+
2022-07-31 12:15:46,701 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
259 |
+
2022-07-31 12:15:48,702 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
260 |
+
2022-07-31 12:15:50,703 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
261 |
+
2022-07-31 12:15:50,812 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
262 |
+
2022-07-31 12:15:50,812 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
263 |
+
2022-07-31 12:15:52,704 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
264 |
+
2022-07-31 12:15:54,705 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
265 |
+
2022-07-31 12:15:56,706 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
266 |
+
2022-07-31 12:15:58,707 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
267 |
+
2022-07-31 12:16:00,708 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
268 |
+
2022-07-31 12:16:02,708 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
269 |
+
2022-07-31 12:16:04,709 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
270 |
+
2022-07-31 12:16:05,956 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
271 |
+
2022-07-31 12:16:05,956 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
272 |
+
2022-07-31 12:16:06,710 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
273 |
+
2022-07-31 12:16:08,711 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
274 |
+
2022-07-31 12:16:10,712 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
275 |
+
2022-07-31 12:16:12,713 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
276 |
+
2022-07-31 12:16:14,714 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
277 |
+
2022-07-31 12:16:14,942 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
278 |
+
2022-07-31 12:16:16,715 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
279 |
+
2022-07-31 12:16:18,716 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
280 |
+
2022-07-31 12:16:20,717 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
281 |
+
2022-07-31 12:16:21,109 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
282 |
+
2022-07-31 12:16:21,109 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
283 |
+
2022-07-31 12:16:22,718 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
284 |
+
2022-07-31 12:16:24,719 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
285 |
+
2022-07-31 12:16:26,721 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
286 |
+
2022-07-31 12:16:28,721 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
287 |
+
2022-07-31 12:16:30,722 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
288 |
+
2022-07-31 12:16:32,723 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
289 |
+
2022-07-31 12:16:34,724 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
290 |
+
2022-07-31 12:16:36,254 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
291 |
+
2022-07-31 12:16:36,255 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
292 |
+
2022-07-31 12:16:36,725 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
293 |
+
2022-07-31 12:16:38,726 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
294 |
+
2022-07-31 12:16:45,026 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
295 |
+
2022-07-31 12:16:51,393 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
296 |
+
2022-07-31 12:16:51,399 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
297 |
+
2022-07-31 12:17:00,735 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
298 |
+
2022-07-31 12:17:06,807 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
299 |
+
2022-07-31 12:17:06,808 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
300 |
+
2022-07-31 12:17:15,104 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
301 |
+
2022-07-31 12:17:15,741 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
302 |
+
2022-07-31 12:17:17,742 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
303 |
+
2022-07-31 12:17:19,744 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
304 |
+
2022-07-31 12:17:21,744 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
305 |
+
2022-07-31 12:17:22,047 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
306 |
+
2022-07-31 12:17:22,047 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
307 |
+
2022-07-31 12:17:23,745 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
308 |
+
2022-07-31 12:17:25,746 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
309 |
+
2022-07-31 12:17:27,748 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
310 |
+
2022-07-31 12:17:29,748 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
311 |
+
2022-07-31 12:17:31,749 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
312 |
+
2022-07-31 12:17:33,750 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
313 |
+
2022-07-31 12:17:35,751 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
314 |
+
2022-07-31 12:17:37,206 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
315 |
+
2022-07-31 12:17:37,206 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
316 |
+
2022-07-31 12:17:37,752 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
317 |
+
2022-07-31 12:17:39,753 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
318 |
+
2022-07-31 12:17:41,754 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
319 |
+
2022-07-31 12:17:43,755 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
320 |
+
2022-07-31 12:17:45,177 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
321 |
+
2022-07-31 12:17:45,756 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
322 |
+
2022-07-31 12:17:49,758 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
323 |
+
2022-07-31 12:17:51,759 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
324 |
+
2022-07-31 12:17:52,352 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
325 |
+
2022-07-31 12:17:52,353 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
326 |
+
2022-07-31 12:17:53,760 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
327 |
+
2022-07-31 12:17:55,761 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
328 |
+
2022-07-31 12:17:57,762 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
329 |
+
2022-07-31 12:17:59,763 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
330 |
+
2022-07-31 12:18:07,494 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
331 |
+
2022-07-31 12:18:07,494 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
332 |
+
2022-07-31 12:18:15,257 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
333 |
+
2022-07-31 12:18:22,628 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
334 |
+
2022-07-31 12:18:22,628 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
335 |
+
2022-07-31 12:18:23,773 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
336 |
+
2022-07-31 12:18:34,778 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
337 |
+
2022-07-31 12:18:36,779 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
338 |
+
2022-07-31 12:18:37,765 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
339 |
+
2022-07-31 12:18:37,766 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
340 |
+
2022-07-31 12:18:38,781 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
341 |
+
2022-07-31 12:18:40,781 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
342 |
+
2022-07-31 12:18:42,782 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
343 |
+
2022-07-31 12:18:44,783 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
344 |
+
2022-07-31 12:18:45,330 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
345 |
+
2022-07-31 12:18:46,785 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
346 |
+
2022-07-31 12:18:48,785 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
347 |
+
2022-07-31 12:18:50,786 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
348 |
+
2022-07-31 12:18:52,787 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
349 |
+
2022-07-31 12:18:52,909 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
350 |
+
2022-07-31 12:18:52,909 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
351 |
+
2022-07-31 12:18:54,789 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
352 |
+
2022-07-31 12:18:56,790 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
353 |
+
2022-07-31 12:18:58,791 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
354 |
+
2022-07-31 12:19:00,792 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
355 |
+
2022-07-31 12:19:02,793 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
356 |
+
2022-07-31 12:19:04,795 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
357 |
+
2022-07-31 12:19:08,047 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
358 |
+
2022-07-31 12:19:08,048 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
359 |
+
2022-07-31 12:19:08,797 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
360 |
+
2022-07-31 12:19:10,798 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
361 |
+
2022-07-31 12:19:12,799 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
362 |
+
2022-07-31 12:19:14,799 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
363 |
+
2022-07-31 12:19:15,416 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
364 |
+
2022-07-31 12:19:16,801 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
365 |
+
2022-07-31 12:19:18,802 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
366 |
+
2022-07-31 12:19:20,803 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
367 |
+
2022-07-31 12:19:22,804 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
368 |
+
2022-07-31 12:19:23,182 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
369 |
+
2022-07-31 12:19:23,182 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
370 |
+
2022-07-31 12:19:24,805 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
371 |
+
2022-07-31 12:19:26,807 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
372 |
+
2022-07-31 12:19:28,807 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
373 |
+
2022-07-31 12:19:30,808 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
374 |
+
2022-07-31 12:19:32,809 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
375 |
+
2022-07-31 12:19:34,810 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
376 |
+
2022-07-31 12:19:36,811 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
377 |
+
2022-07-31 12:19:38,328 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
378 |
+
2022-07-31 12:19:38,329 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
379 |
+
2022-07-31 12:19:38,812 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
380 |
+
2022-07-31 12:19:40,813 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
381 |
+
2022-07-31 12:19:42,814 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
382 |
+
2022-07-31 12:19:44,815 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
383 |
+
2022-07-31 12:19:45,499 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
384 |
+
2022-07-31 12:19:46,816 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
385 |
+
2022-07-31 12:19:48,817 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
386 |
+
2022-07-31 12:19:50,818 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
387 |
+
2022-07-31 12:19:52,819 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
388 |
+
2022-07-31 12:19:53,474 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
389 |
+
2022-07-31 12:19:53,475 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
390 |
+
2022-07-31 12:19:54,820 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
391 |
+
2022-07-31 12:19:56,821 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
392 |
+
2022-07-31 12:20:08,630 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
393 |
+
2022-07-31 12:20:08,631 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
394 |
+
2022-07-31 12:20:15,578 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
395 |
+
2022-07-31 12:20:23,770 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
396 |
+
2022-07-31 12:20:23,771 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
397 |
+
2022-07-31 12:20:34,838 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
398 |
+
2022-07-31 12:20:39,109 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
399 |
+
2022-07-31 12:20:39,110 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
400 |
+
2022-07-31 12:20:45,649 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
401 |
+
2022-07-31 12:20:45,843 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
402 |
+
2022-07-31 12:20:51,846 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
403 |
+
2022-07-31 12:20:54,541 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
404 |
+
2022-07-31 12:20:54,541 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
405 |
+
2022-07-31 12:21:00,850 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
406 |
+
2022-07-31 12:21:09,853 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
407 |
+
2022-07-31 12:21:09,866 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
408 |
+
2022-07-31 12:21:09,866 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
409 |
+
2022-07-31 12:21:15,719 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
410 |
+
2022-07-31 12:21:17,857 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
411 |
+
2022-07-31 12:21:24,860 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
412 |
+
2022-07-31 12:21:25,079 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
413 |
+
2022-07-31 12:21:25,080 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
414 |
+
2022-07-31 12:21:26,861 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
415 |
+
2022-07-31 12:21:30,863 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
416 |
+
2022-07-31 12:21:34,865 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
417 |
+
2022-07-31 12:21:36,866 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
418 |
+
2022-07-31 12:21:40,346 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
419 |
+
2022-07-31 12:21:40,346 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
420 |
+
2022-07-31 12:21:44,869 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
421 |
+
2022-07-31 12:21:45,794 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
422 |
+
2022-07-31 12:21:55,516 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
423 |
+
2022-07-31 12:21:55,516 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
424 |
+
2022-07-31 12:22:10,716 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
425 |
+
2022-07-31 12:22:10,717 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
426 |
+
2022-07-31 12:22:11,880 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
427 |
+
2022-07-31 12:22:15,871 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
428 |
+
2022-07-31 12:22:17,883 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
429 |
+
2022-07-31 12:22:19,883 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
430 |
+
2022-07-31 12:22:25,896 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
431 |
+
2022-07-31 12:22:25,897 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
432 |
+
2022-07-31 12:22:41,059 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
433 |
+
2022-07-31 12:22:41,059 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
434 |
+
2022-07-31 12:22:45,950 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
435 |
+
2022-07-31 12:22:56,200 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
436 |
+
2022-07-31 12:22:56,200 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
437 |
+
2022-07-31 12:23:11,377 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
438 |
+
2022-07-31 12:23:11,378 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
439 |
+
2022-07-31 12:23:16,029 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
440 |
+
2022-07-31 12:23:26,513 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
441 |
+
2022-07-31 12:23:26,513 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
442 |
+
2022-07-31 12:23:41,651 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
443 |
+
2022-07-31 12:23:41,652 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
444 |
+
2022-07-31 12:23:46,106 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
445 |
+
2022-07-31 12:23:56,790 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
446 |
+
2022-07-31 12:23:56,790 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
447 |
+
2022-07-31 12:24:11,923 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
448 |
+
2022-07-31 12:24:11,923 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
449 |
+
2022-07-31 12:24:16,184 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
450 |
+
2022-07-31 12:24:27,067 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
451 |
+
2022-07-31 12:24:27,067 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
452 |
+
2022-07-31 12:24:42,203 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
453 |
+
2022-07-31 12:24:42,203 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
454 |
+
2022-07-31 12:24:46,263 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
455 |
+
2022-07-31 12:24:57,343 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
456 |
+
2022-07-31 12:24:57,343 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
457 |
+
2022-07-31 12:25:12,493 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
458 |
+
2022-07-31 12:25:12,493 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
459 |
+
2022-07-31 12:25:16,340 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
460 |
+
2022-07-31 12:25:27,635 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
461 |
+
2022-07-31 12:25:27,635 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
462 |
+
2022-07-31 12:25:42,772 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
463 |
+
2022-07-31 12:25:42,772 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
464 |
+
2022-07-31 12:25:46,411 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
465 |
+
2022-07-31 12:25:57,973 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
466 |
+
2022-07-31 12:25:58,021 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
467 |
+
2022-07-31 12:25:58,021 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
468 |
+
2022-07-31 12:26:13,337 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
469 |
+
2022-07-31 12:26:13,337 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
470 |
+
2022-07-31 12:26:16,482 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
471 |
+
2022-07-31 12:26:28,492 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
472 |
+
2022-07-31 12:26:28,492 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
473 |
+
2022-07-31 12:26:43,657 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
474 |
+
2022-07-31 12:26:43,657 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
475 |
+
2022-07-31 12:26:46,546 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
476 |
+
2022-07-31 12:26:58,820 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
477 |
+
2022-07-31 12:26:58,821 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
478 |
+
2022-07-31 12:27:13,960 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
479 |
+
2022-07-31 12:27:13,960 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
480 |
+
2022-07-31 12:27:16,613 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
481 |
+
2022-07-31 12:27:29,099 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
482 |
+
2022-07-31 12:27:29,100 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
483 |
+
2022-07-31 12:27:44,236 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
484 |
+
2022-07-31 12:27:44,237 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
485 |
+
2022-07-31 12:27:46,679 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
486 |
+
2022-07-31 12:27:59,372 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
487 |
+
2022-07-31 12:27:59,372 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
488 |
+
2022-07-31 12:28:14,505 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
489 |
+
2022-07-31 12:28:14,505 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
490 |
+
2022-07-31 12:28:16,744 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
491 |
+
2022-07-31 12:28:29,642 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
492 |
+
2022-07-31 12:28:29,642 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
493 |
+
2022-07-31 12:28:44,781 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
494 |
+
2022-07-31 12:28:44,782 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
495 |
+
2022-07-31 12:28:46,813 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
496 |
+
2022-07-31 12:28:59,932 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
497 |
+
2022-07-31 12:28:59,932 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
498 |
+
2022-07-31 12:29:15,086 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
499 |
+
2022-07-31 12:29:15,087 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
500 |
+
2022-07-31 12:29:16,881 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
501 |
+
2022-07-31 12:29:30,246 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
502 |
+
2022-07-31 12:29:30,246 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
503 |
+
2022-07-31 12:29:45,382 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
504 |
+
2022-07-31 12:29:45,383 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
505 |
+
2022-07-31 12:29:46,962 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
506 |
+
2022-07-31 12:30:00,517 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
507 |
+
2022-07-31 12:30:00,517 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
508 |
+
2022-07-31 12:30:15,654 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
509 |
+
2022-07-31 12:30:15,654 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
510 |
+
2022-07-31 12:30:17,170 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
511 |
+
2022-07-31 12:30:30,108 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
512 |
+
2022-07-31 12:30:30,894 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
513 |
+
2022-07-31 12:30:30,894 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
514 |
+
2022-07-31 12:30:46,904 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
515 |
+
2022-07-31 12:30:46,904 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
516 |
+
2022-07-31 12:30:47,245 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
517 |
+
2022-07-31 12:31:02,075 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
518 |
+
2022-07-31 12:31:02,076 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
519 |
+
2022-07-31 12:31:17,230 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
520 |
+
2022-07-31 12:31:17,231 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
521 |
+
2022-07-31 12:31:17,365 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
522 |
+
2022-07-31 12:31:32,377 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
523 |
+
2022-07-31 12:31:32,377 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
524 |
+
2022-07-31 12:31:47,381 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
525 |
+
2022-07-31 12:31:47,513 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
526 |
+
2022-07-31 12:31:47,513 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
527 |
+
2022-07-31 12:32:02,644 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
528 |
+
2022-07-31 12:32:02,645 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
529 |
+
2022-07-31 12:32:17,450 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
530 |
+
2022-07-31 12:32:17,796 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
531 |
+
2022-07-31 12:32:17,797 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
532 |
+
2022-07-31 12:32:32,927 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
533 |
+
2022-07-31 12:32:32,927 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
534 |
+
2022-07-31 12:32:47,521 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
535 |
+
2022-07-31 12:32:48,066 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
536 |
+
2022-07-31 12:32:48,066 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
537 |
+
2022-07-31 12:33:03,211 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
538 |
+
2022-07-31 12:33:03,212 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
539 |
+
2022-07-31 12:33:17,594 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
540 |
+
2022-07-31 12:33:18,343 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
541 |
+
2022-07-31 12:33:18,343 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
542 |
+
2022-07-31 12:33:33,480 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
543 |
+
2022-07-31 12:33:33,481 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
544 |
+
2022-07-31 12:33:47,678 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
545 |
+
2022-07-31 12:33:48,616 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
546 |
+
2022-07-31 12:33:48,616 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
547 |
+
2022-07-31 12:34:03,765 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
548 |
+
2022-07-31 12:34:03,765 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
549 |
+
2022-07-31 12:34:17,779 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
550 |
+
2022-07-31 12:34:18,906 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
551 |
+
2022-07-31 12:34:18,906 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
552 |
+
2022-07-31 12:34:34,041 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
553 |
+
2022-07-31 12:34:34,042 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
554 |
+
2022-07-31 12:34:47,907 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
555 |
+
2022-07-31 12:34:49,182 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
556 |
+
2022-07-31 12:34:49,183 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
557 |
+
2022-07-31 12:35:04,319 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
558 |
+
2022-07-31 12:35:04,319 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
559 |
+
2022-07-31 12:35:07,266 INFO Thread-8 :534148 [dir_watcher.py:_on_file_modified():230] file/dir modified: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/files/output.log
|
560 |
+
2022-07-31 12:35:17,992 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
561 |
+
2022-07-31 12:35:19,502 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
562 |
+
2022-07-31 12:35:19,502 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
563 |
+
2022-07-31 12:35:34,676 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
564 |
+
2022-07-31 12:35:34,676 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
565 |
+
2022-07-31 12:35:48,060 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
566 |
+
2022-07-31 12:35:49,839 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
567 |
+
2022-07-31 12:35:49,840 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
568 |
+
2022-07-31 12:36:04,985 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
569 |
+
2022-07-31 12:36:04,985 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
570 |
+
2022-07-31 12:36:18,132 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
571 |
+
2022-07-31 12:36:20,118 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
572 |
+
2022-07-31 12:36:20,119 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
573 |
+
2022-07-31 12:36:35,253 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
574 |
+
2022-07-31 12:36:35,254 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
575 |
+
2022-07-31 12:36:48,204 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
576 |
+
2022-07-31 12:36:50,387 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
577 |
+
2022-07-31 12:36:50,387 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
578 |
+
2022-07-31 12:37:05,521 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
579 |
+
2022-07-31 12:37:05,521 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
580 |
+
2022-07-31 12:37:18,283 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
581 |
+
2022-07-31 12:37:20,659 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
582 |
+
2022-07-31 12:37:20,660 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
583 |
+
2022-07-31 12:37:35,797 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
584 |
+
2022-07-31 12:37:35,797 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
585 |
+
2022-07-31 12:37:48,381 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
586 |
+
2022-07-31 12:37:50,945 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
587 |
+
2022-07-31 12:37:50,946 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
588 |
+
2022-07-31 12:38:06,085 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
589 |
+
2022-07-31 12:38:06,086 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
590 |
+
2022-07-31 12:38:18,460 DEBUG SenderThread:534148 [sender.py:send():234] send: stats
|
591 |
+
2022-07-31 12:38:21,225 DEBUG HandlerThread:534148 [handler.py:handle_request():130] handle_request: stop_status
|
592 |
+
2022-07-31 12:38:21,226 DEBUG SenderThread:534148 [sender.py:send_request():248] send_request: stop_status
|
593 |
+
2022-07-31 12:38:32,601 WARNING MainThread:534148 [internal.py:wandb_internal():146] Internal process interrupt: 1
|
594 |
+
2022-07-31 12:38:32,728 WARNING MainThread:534148 [internal.py:wandb_internal():146] Internal process interrupt: 2
|
595 |
+
2022-07-31 12:38:32,728 ERROR MainThread:534148 [internal.py:wandb_internal():149] Internal process interrupted.
|
596 |
+
2022-07-31 12:38:33,378 INFO SenderThread:534148 [sender.py:finish():1070] shutting down sender
|
597 |
+
2022-07-31 12:38:33,378 INFO SenderThread:534148 [dir_watcher.py:finish():283] shutting down directory watcher
|
598 |
+
2022-07-31 12:38:33,379 INFO HandlerThread:534148 [handler.py:finish():731] shutting down handler
|
599 |
+
2022-07-31 12:38:33,464 INFO WriterThread:534148 [datastore.py:close():281] close: /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/run-3m2amvk9.wandb
|
600 |
+
2022-07-31 12:38:34,094 INFO MainThread:534148 [internal.py:handle_exit():77] Internal process exited
|
wandb/run-20220731_120912-3m2amvk9/logs/debug.log
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
2022-07-31 12:09:12,345 INFO MainThread:532896 [wandb_setup.py:_flush():71] setting env: {'project': 'wav2vec2', 'entity': 'NbAiLab'}
|
2 |
+
2022-07-31 12:09:12,345 INFO MainThread:532896 [wandb_setup.py:_flush():71] setting login settings: {}
|
3 |
+
2022-07-31 12:09:12,345 INFO MainThread:532896 [wandb_init.py:_log_setup():371] Logging user logs to /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/logs/debug.log
|
4 |
+
2022-07-31 12:09:12,345 INFO MainThread:532896 [wandb_init.py:_log_setup():372] Logging internal logs to /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_120912-3m2amvk9/logs/debug-internal.log
|
5 |
+
2022-07-31 12:09:12,345 INFO MainThread:532896 [wandb_init.py:init():404] calling init triggers
|
6 |
+
2022-07-31 12:09:12,346 INFO MainThread:532896 [wandb_init.py:init():409] wandb.init called with sweep_config: {}
|
7 |
+
config: {}
|
8 |
+
2022-07-31 12:09:12,346 INFO MainThread:532896 [wandb_init.py:init():460] starting backend
|
9 |
+
2022-07-31 12:09:12,346 INFO MainThread:532896 [backend.py:_multiprocessing_setup():99] multiprocessing start_methods=fork,spawn,forkserver, using: spawn
|
10 |
+
2022-07-31 12:09:12,393 INFO MainThread:532896 [backend.py:ensure_launched():216] starting backend process...
|
11 |
+
2022-07-31 12:09:12,438 INFO MainThread:532896 [backend.py:ensure_launched():221] started backend process with pid: 534148
|
12 |
+
2022-07-31 12:09:12,442 INFO MainThread:532896 [wandb_init.py:init():469] backend started and connected
|
13 |
+
2022-07-31 12:09:12,456 INFO MainThread:532896 [wandb_init.py:init():533] updated telemetry
|
14 |
+
2022-07-31 12:09:12,568 INFO MainThread:532896 [wandb_init.py:init():563] communicating current version
|
15 |
+
2022-07-31 12:09:13,301 INFO MainThread:532896 [wandb_init.py:init():568] got version response upgrade_message: "wandb version 0.12.21 is available! To upgrade, please run:\n $ pip install wandb --upgrade"
|
16 |
+
|
17 |
+
2022-07-31 12:09:13,302 INFO MainThread:532896 [wandb_init.py:init():578] communicating run to backend with 30 second timeout
|
18 |
+
2022-07-31 12:09:13,500 INFO MainThread:532896 [wandb_init.py:init():606] starting run threads in backend
|
19 |
+
2022-07-31 12:09:16,272 INFO MainThread:532896 [wandb_run.py:_console_start():1810] atexit reg
|
20 |
+
2022-07-31 12:09:16,272 INFO MainThread:532896 [wandb_run.py:_redirect():1684] redirect: SettingsConsole.REDIRECT
|
21 |
+
2022-07-31 12:09:16,273 INFO MainThread:532896 [wandb_run.py:_redirect():1689] Redirecting console.
|
22 |
+
2022-07-31 12:09:16,275 INFO MainThread:532896 [wandb_run.py:_redirect():1745] Redirects installed.
|
23 |
+
2022-07-31 12:09:16,275 INFO MainThread:532896 [wandb_init.py:init():633] run started, returning control to user process
|
24 |
+
2022-07-31 12:39:41,998 INFO MainThread:532896 [wandb_run.py:_atexit_cleanup():1780] got exitcode: 255
|
25 |
+
2022-07-31 12:39:42,003 INFO MainThread:532896 [wandb_run.py:_restore():1752] restore
|
26 |
+
2022-07-31 12:39:44,493 INFO MainThread:532896 [wandb_run.py:_restore():1752] restore
|
wandb/run-20220731_120912-3m2amvk9/run-3m2amvk9.wandb
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:2d6fd9c3f6902509386afba766966fe2c403c098aa0a8642ba3022afea4b528e
|
3 |
+
size 440677
|
wandb/run-20220731_124004-aa3ycswy/files/code/run_flax_speech_recognition_ctc.py
ADDED
@@ -0,0 +1,1604 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/usr/bin/env python
|
2 |
+
# coding=utf-8
|
3 |
+
# Copyright 2022 The HuggingFace Team All rights reserved.
|
4 |
+
#
|
5 |
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6 |
+
# you may not use this file except in compliance with the License.
|
7 |
+
# You may obtain a copy of the License at
|
8 |
+
#
|
9 |
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10 |
+
#
|
11 |
+
# Unless required by applicable law or agreed to in writing, software
|
12 |
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13 |
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14 |
+
# See the License for the specific language governing permissions and
|
15 |
+
# limitations under the License.
|
16 |
+
"""
|
17 |
+
Fine-tuning the Flax library models for connectionist temporal classification (CTC) speech recognition.
|
18 |
+
"""
|
19 |
+
# You can also adapt this script on your own sequence to sequence task. Pointers for this are left as comments.
|
20 |
+
|
21 |
+
import logging
|
22 |
+
import math
|
23 |
+
import os
|
24 |
+
import re
|
25 |
+
import sys
|
26 |
+
import time
|
27 |
+
from dataclasses import dataclass, field
|
28 |
+
from pathlib import Path
|
29 |
+
from typing import Any, Callable, Dict, List, Optional, Union
|
30 |
+
|
31 |
+
import datasets
|
32 |
+
import numpy as np
|
33 |
+
from datasets import DatasetDict, load_dataset, load_metric
|
34 |
+
from tqdm import tqdm
|
35 |
+
|
36 |
+
import flax
|
37 |
+
import jax
|
38 |
+
import jax.numpy as jnp
|
39 |
+
import optax
|
40 |
+
import transformers
|
41 |
+
import wandb as wandb
|
42 |
+
from flax import core, jax_utils, struct, traverse_util
|
43 |
+
from flax.jax_utils import unreplicate, pad_shard_unpad
|
44 |
+
from flax.training.common_utils import get_metrics, shard, shard_prng_key
|
45 |
+
from huggingface_hub import Repository
|
46 |
+
from models import Wav2Vec2Config, FlaxWav2Vec2ForCTC
|
47 |
+
from optax._src import linear_algebra
|
48 |
+
from transformers import (
|
49 |
+
AutoFeatureExtractor,
|
50 |
+
AutoProcessor,
|
51 |
+
AutoTokenizer,
|
52 |
+
HfArgumentParser,
|
53 |
+
TrainingArguments,
|
54 |
+
is_tensorboard_available,
|
55 |
+
set_seed,
|
56 |
+
)
|
57 |
+
from transformers.file_utils import get_full_repo_name
|
58 |
+
from transformers.utils import check_min_version
|
59 |
+
from transformers.utils.versions import require_version
|
60 |
+
|
61 |
+
|
62 |
+
# Will error if the minimal version of Transformers is not installed. Remove at your own risks.
|
63 |
+
check_min_version("4.17.0.dev0")
|
64 |
+
|
65 |
+
require_version("datasets>=1.18.0", "To fix: pip install -r examples/pytorch/speech-recognition/requirements.txt")
|
66 |
+
|
67 |
+
logger = logging.getLogger(__name__)
|
68 |
+
|
69 |
+
|
70 |
+
@flax.struct.dataclass
|
71 |
+
class ModelArguments:
|
72 |
+
"""
|
73 |
+
Arguments pertaining to which model/config/tokenizer we are going to fine-tune from.
|
74 |
+
"""
|
75 |
+
|
76 |
+
model_name_or_path: str = field(
|
77 |
+
metadata={"help": "Path to pretrained model or model identifier from huggingface.co/models"}
|
78 |
+
)
|
79 |
+
config_name: Optional[str] = field(
|
80 |
+
default=None, metadata={"help": "Pretrained config name or path if not the same as model_name"}
|
81 |
+
)
|
82 |
+
tokenizer_name: Optional[str] = field(
|
83 |
+
default=None, metadata={"help": "Pretrained tokenizer name or path if not the same as model_name"}
|
84 |
+
)
|
85 |
+
feature_extractor_name: Optional[str] = field(
|
86 |
+
default=None, metadata={"help": "feature extractor name or path if not the same as model_name"}
|
87 |
+
)
|
88 |
+
cache_dir: Optional[str] = field(
|
89 |
+
default=None,
|
90 |
+
metadata={"help": "Where to store the pretrained models downloaded from huggingface.co"},
|
91 |
+
)
|
92 |
+
use_fast_tokenizer: bool = field(
|
93 |
+
default=True,
|
94 |
+
metadata={"help": "Whether to use one of the fast tokenizer (backed by the tokenizers library) or not."},
|
95 |
+
)
|
96 |
+
model_revision: str = field(
|
97 |
+
default="main",
|
98 |
+
metadata={"help": "The specific model version to use (can be a branch name, tag name or commit id)."},
|
99 |
+
)
|
100 |
+
use_auth_token: bool = field(
|
101 |
+
default=False,
|
102 |
+
metadata={
|
103 |
+
"help": "Will use the token generated when running `transformers-cli login` (necessary to use this script "
|
104 |
+
"with private models)."
|
105 |
+
},
|
106 |
+
)
|
107 |
+
freeze_feature_encoder: bool = field(
|
108 |
+
default=True, metadata={"help": "Whether to freeze the feature encoder layers of the model."}
|
109 |
+
)
|
110 |
+
attention_dropout: float = field(
|
111 |
+
default=0.0, metadata={"help": "The dropout ratio for the attention probabilities."}
|
112 |
+
)
|
113 |
+
activation_dropout: float = field(
|
114 |
+
default=0.1,
|
115 |
+
metadata={
|
116 |
+
"help": "The hidden activation dropout probability in the embeddings, encoder, and pooler."
|
117 |
+
},
|
118 |
+
)
|
119 |
+
hidden_dropout: float = field(
|
120 |
+
default=0.1,
|
121 |
+
metadata={
|
122 |
+
"help": "The dropout probability for all fully connected layers in the embeddings, encoder, and pooler."
|
123 |
+
},
|
124 |
+
)
|
125 |
+
feat_proj_dropout: float = field(
|
126 |
+
default=0.0,
|
127 |
+
metadata={
|
128 |
+
"help": "The feat proj dropout probability for feature encoder representations."
|
129 |
+
},
|
130 |
+
)
|
131 |
+
final_dropout: float = field(
|
132 |
+
default=0.0,
|
133 |
+
metadata={"help": "The dropout probability for the final projection layer."},
|
134 |
+
)
|
135 |
+
mask_time_prob: float = field(
|
136 |
+
default=0.1,
|
137 |
+
metadata={
|
138 |
+
"help": "The spec aug dropout probability for feature encoder representations."
|
139 |
+
},
|
140 |
+
)
|
141 |
+
mask_time_length: int = field(
|
142 |
+
default=10,
|
143 |
+
metadata={"help": "Length of vector span to mask along the time axis."},
|
144 |
+
)
|
145 |
+
mask_feature_prob: float = field(
|
146 |
+
default=0.0,
|
147 |
+
metadata={
|
148 |
+
"help": "Probability of each feature vector along the feature axis to be chosen as the start of the vector"
|
149 |
+
"span to be masked. Approximately ``mask_feature_prob * sequence_length // mask_feature_length`` feature bins will be masked along the time axis."
|
150 |
+
},
|
151 |
+
)
|
152 |
+
mask_feature_length: int = field(
|
153 |
+
default=10,
|
154 |
+
metadata={"help": "Length of vector span to mask along the feature axis."},
|
155 |
+
)
|
156 |
+
layerdrop: float = field(default=0.0, metadata={"help": "The LayerDrop probability."})
|
157 |
+
ctc_loss_reduction: Optional[str] = field(
|
158 |
+
default="mean", metadata={"help": "The way the ctc loss should be reduced. Should be one of 'mean' or 'sum'."}
|
159 |
+
)
|
160 |
+
ctc_zero_infinity: Optional[bool] = field(
|
161 |
+
default=False, metadata={"help": "If True, will try yo aboud the CTC loss goinf to infinity."}
|
162 |
+
)
|
163 |
+
|
164 |
+
|
165 |
+
@flax.struct.dataclass
|
166 |
+
class DataTrainingArguments:
|
167 |
+
"""
|
168 |
+
Arguments pertaining to what data we are going to input our model for training and eval.
|
169 |
+
"""
|
170 |
+
|
171 |
+
dataset_name: str = field(
|
172 |
+
default=None, metadata={"help": "The name of the dataset to use (via the datasets library)."}
|
173 |
+
)
|
174 |
+
dataset_config_name: Optional[str] = field(
|
175 |
+
default=None, metadata={"help": "The configuration name of the dataset to use (via the datasets library)."}
|
176 |
+
)
|
177 |
+
text_column: Optional[str] = field(
|
178 |
+
default=None,
|
179 |
+
metadata={"help": "The name of the column in the datasets containing the full texts (for summarization)."},
|
180 |
+
)
|
181 |
+
dataset_cache_dir: Optional[str] = field(
|
182 |
+
default=None, metadata={"help": "Path to cache directory for saving and loading datasets"}
|
183 |
+
)
|
184 |
+
overwrite_cache: bool = field(
|
185 |
+
default=False, metadata={"help": "Overwrite the cached training and evaluation sets"}
|
186 |
+
)
|
187 |
+
preprocessing_num_workers: Optional[int] = field(
|
188 |
+
default=None,
|
189 |
+
metadata={"help": "The number of processes to use for the preprocessing."},
|
190 |
+
)
|
191 |
+
max_train_samples: Optional[int] = field(
|
192 |
+
default=None,
|
193 |
+
metadata={
|
194 |
+
"help": "For debugging purposes or quicker training, truncate the number of training examples to this "
|
195 |
+
"value if set."
|
196 |
+
},
|
197 |
+
)
|
198 |
+
max_eval_samples: Optional[int] = field(
|
199 |
+
default=None,
|
200 |
+
metadata={
|
201 |
+
"help": "For debugging purposes or quicker training, truncate the number of evaluation examples to this "
|
202 |
+
"value if set."
|
203 |
+
},
|
204 |
+
)
|
205 |
+
max_test_samples: Optional[int] = field(
|
206 |
+
default=None,
|
207 |
+
metadata={
|
208 |
+
"help": "For debugging purposes or quicker training, truncate the number of test examples to this "
|
209 |
+
"value if set."
|
210 |
+
},
|
211 |
+
)
|
212 |
+
audio_column_name: str = field(
|
213 |
+
default="audio",
|
214 |
+
metadata={"help": "The name of the dataset column containing the audio data. Defaults to 'audio'"},
|
215 |
+
)
|
216 |
+
text_column_name: str = field(
|
217 |
+
default="text",
|
218 |
+
metadata={"help": "The name of the dataset column containing the text data. Defaults to 'text'"},
|
219 |
+
)
|
220 |
+
max_duration_in_seconds: float = field(
|
221 |
+
default=20.0,
|
222 |
+
metadata={
|
223 |
+
"help": "Truncate audio files that are longer than `max_duration_in_seconds` seconds to 'max_duration_in_seconds`"
|
224 |
+
},
|
225 |
+
)
|
226 |
+
min_duration_in_seconds: float = field(
|
227 |
+
default=0.0, metadata={"help": "Filter audio files that are shorter than `min_duration_in_seconds` seconds"}
|
228 |
+
)
|
229 |
+
max_label_length: Optional[int] = field(
|
230 |
+
default=512,
|
231 |
+
metadata={
|
232 |
+
"help": "The minimum total sequence length for target text after tokenization. Sequences shorter "
|
233 |
+
"than this will be filtered."
|
234 |
+
},
|
235 |
+
)
|
236 |
+
min_label_length: Optional[int] = field(
|
237 |
+
default=2,
|
238 |
+
metadata={
|
239 |
+
"help": "The minimum total sequence length for target text after tokenization. Sequences shorter "
|
240 |
+
"than this will be filtered."
|
241 |
+
},
|
242 |
+
)
|
243 |
+
pad_input_to_multiple_of: Optional[int] = field(
|
244 |
+
default=32000,
|
245 |
+
metadata={
|
246 |
+
"help": "If set will pad the input sequence to a multiple of the provided value. "
|
247 |
+
"This is important to avoid triggering recompilations on TPU."
|
248 |
+
},
|
249 |
+
)
|
250 |
+
pad_target_to_multiple_of: Optional[int] = field(
|
251 |
+
default=None,
|
252 |
+
metadata={
|
253 |
+
"help": "If set will pad the target sequence to a multiple of the provided value. "
|
254 |
+
"This is important to avoid triggering recompilations on TPU."
|
255 |
+
},
|
256 |
+
)
|
257 |
+
preprocessing_only: bool = field(
|
258 |
+
default=False,
|
259 |
+
metadata={
|
260 |
+
"help": "Whether to only do data preprocessing and skip training. "
|
261 |
+
"This is especially useful when data preprocessing errors out in distributed training due to timeout. "
|
262 |
+
"In this case, one should run the preprocessing in a non-distributed setup with `preprocessing_only=True` "
|
263 |
+
"so that the cached datasets can consequently be loaded in distributed training"
|
264 |
+
},
|
265 |
+
)
|
266 |
+
train_split_name: str = field(
|
267 |
+
default="train",
|
268 |
+
metadata={
|
269 |
+
"help": "The name of the training data set split to use (via the datasets library). Defaults to 'train'"
|
270 |
+
},
|
271 |
+
)
|
272 |
+
eval_split_name: str = field(
|
273 |
+
default="validation",
|
274 |
+
metadata={
|
275 |
+
"help": "The name of the training data set split to use (via the datasets library). Defaults to 'train'"
|
276 |
+
},
|
277 |
+
)
|
278 |
+
do_lower_case: bool = field(
|
279 |
+
default=True,
|
280 |
+
metadata={"help": "Whether the target text should be lower cased."},
|
281 |
+
)
|
282 |
+
wandb_project: str = field(
|
283 |
+
default="flax-speech-recognition-ctc",
|
284 |
+
metadata={"help": "The name of the wandb project."},
|
285 |
+
)
|
286 |
+
wandb_name: str = field(
|
287 |
+
default=None,
|
288 |
+
metadata={"help": "The name of the wandb run."},
|
289 |
+
)
|
290 |
+
wandb_job_type: str = field(
|
291 |
+
default="CTC",
|
292 |
+
metadata={"help": "The name of the wandb job type."},
|
293 |
+
)
|
294 |
+
test_split_name: str = field(
|
295 |
+
default="test",
|
296 |
+
metadata={"help": "The name of the test data set split to use (via the datasets library). Defaults to 'test'"},
|
297 |
+
)
|
298 |
+
remove_punctuation: bool = field(
|
299 |
+
default=False, metadata={"help": "Whether or not to remove punctuation during training."}
|
300 |
+
)
|
301 |
+
|
302 |
+
|
303 |
+
# @flax.struct.dataclass
|
304 |
+
@dataclass
|
305 |
+
class FlaxTrainingArguments(TrainingArguments):
|
306 |
+
precision: str = field(
|
307 |
+
default="full",
|
308 |
+
metadata={
|
309 |
+
"help": "Whether to enable mixed-precision training. If true, the optimizer is stored in half-precision (bfloat16) and computations are executed in half-precision"
|
310 |
+
"**Note that this only specifies the dtype of the computation and optimizer state. It does not influence the dtype of model parameters.**"
|
311 |
+
},
|
312 |
+
)
|
313 |
+
matmul_precision: str = field(
|
314 |
+
default="default",
|
315 |
+
metadata={
|
316 |
+
"help": "Default floating-point precision of internal computations used in TPU matrix multiplications and convolutions. "
|
317 |
+
"This configuration option controls the default precision for JAX operations that take an optional precision argument (e.g. `lax.conv_general_dilated` and `lax.dot`). "
|
318 |
+
"This configuration option does not change the behaviours of such calls with explicit precision arguments; "
|
319 |
+
"it only changes the behaviors of calls with no such argument provided. "
|
320 |
+
"One of `['highest', 'float32', 'high', 'bfloat16_3x', 'default', 'bfloat16', 'fastest', None]`."
|
321 |
+
},
|
322 |
+
)
|
323 |
+
multisteps: bool = field(
|
324 |
+
default=False,
|
325 |
+
metadata={
|
326 |
+
"help": "Whether to use Optax MultiSteps for gradient accumulation. If `False` (default) and `gradient_accumulation_steps > 1`, "
|
327 |
+
"a custom gradient accumulation implementation will be employed."
|
328 |
+
},
|
329 |
+
)
|
330 |
+
|
331 |
+
|
332 |
+
def to_fp32(t):
|
333 |
+
return jax.tree_map(lambda x: x.astype(jnp.float32) if x.dtype == jnp.bfloat16 else x, t)
|
334 |
+
|
335 |
+
|
336 |
+
def to_bf16(t):
|
337 |
+
return jax.tree_map(lambda x: x.astype(jnp.bfloat16) if x.dtype == jnp.float32 else x, t)
|
338 |
+
|
339 |
+
|
340 |
+
class MixedPrecisionTrainState(struct.PyTreeNode):
|
341 |
+
"""Train state for use with a single Optax optimizer.
|
342 |
+
Adapted from flax train_state https://github.com/google/flax/blob/main/flax/training/train_state.py
|
343 |
+
|
344 |
+
Synopsis::
|
345 |
+
|
346 |
+
state = TrainState.create(
|
347 |
+
apply_fn=model.apply,
|
348 |
+
params=variables['params'],
|
349 |
+
tx=tx)
|
350 |
+
grad_fn = jax.grad(make_loss_fn(state.apply_fn))
|
351 |
+
for batch in data:
|
352 |
+
grads = grad_fn(state.params, batch)
|
353 |
+
state = state.apply_gradients(grads=grads)
|
354 |
+
|
355 |
+
Args:
|
356 |
+
step: Counter starts at 0 and is incremented by every call to
|
357 |
+
`.apply_gradients()`.
|
358 |
+
apply_fn: Usually set to `model.apply()`. Kept in this dataclass for
|
359 |
+
convenience to have a shorter params list for the `train_step()` function
|
360 |
+
in your training loop.
|
361 |
+
params: The parameters to be updated by `tx` and used by `apply_fn`.
|
362 |
+
tx: An Optax gradient transformation.
|
363 |
+
opt_state: The state for `tx`.
|
364 |
+
dropout_rng: PRNG key for stochastic operations.
|
365 |
+
bf16: Whether to use bf16 16-bit (mixed) precision training instead of 32-bit training.
|
366 |
+
"""
|
367 |
+
|
368 |
+
step: int
|
369 |
+
apply_fn: Callable = struct.field(pytree_node=False)
|
370 |
+
get_attention_mask_fn: Callable = struct.field(pytree_node=False)
|
371 |
+
params: core.FrozenDict[str, Any]
|
372 |
+
tx: optax.GradientTransformation = struct.field(pytree_node=False)
|
373 |
+
opt_state: optax.OptState
|
374 |
+
dropout_rng: jnp.ndarray
|
375 |
+
max_grad_norm: Optional[float] = 1.0
|
376 |
+
|
377 |
+
def apply_gradients(self, *, grads, to_dtype, **kwargs):
|
378 |
+
"""Updates `step`, `params`, `opt_state` and `**kwargs` in return value.
|
379 |
+
|
380 |
+
Note that internally this function calls `.tx.update()` followed by a call
|
381 |
+
to `optax.apply_updates()` to update `params` and `opt_state`.
|
382 |
+
|
383 |
+
Args:
|
384 |
+
grads: Gradients that have the same pytree structure as `.params`.
|
385 |
+
**kwargs: Additional dataclass attributes that should be `.replace()`-ed.
|
386 |
+
|
387 |
+
Returns:
|
388 |
+
An updated instance of `self` with `step` incremented by one, `params`
|
389 |
+
and `opt_state` updated by applying `grads`, and additional attributes
|
390 |
+
replaced as specified by `kwargs`.
|
391 |
+
"""
|
392 |
+
|
393 |
+
# clip gradients by global l2 norm
|
394 |
+
casted_max_grad_norm = to_dtype(self.max_grad_norm)
|
395 |
+
g_norm = linear_algebra.global_norm(grads)
|
396 |
+
g_norm = jnp.maximum(casted_max_grad_norm, g_norm)
|
397 |
+
grads = jax.tree_map(lambda t: (t / g_norm) * casted_max_grad_norm, grads)
|
398 |
+
|
399 |
+
# perform update step in fp32 and subsequently downcast optimizer states if mixed precision training
|
400 |
+
# grads and opt_state in bf16 (need to upcast), params in fp32 (leave as is)
|
401 |
+
updates, new_opt_state = self.tx.update(to_fp32(grads), to_fp32(self.opt_state), self.params)
|
402 |
+
|
403 |
+
new_params = optax.apply_updates(self.params, updates)
|
404 |
+
return self.replace(
|
405 |
+
step=self.step + 1,
|
406 |
+
params=new_params,
|
407 |
+
opt_state=to_dtype(new_opt_state),
|
408 |
+
**kwargs,
|
409 |
+
)
|
410 |
+
|
411 |
+
@classmethod
|
412 |
+
def create(cls, *, apply_fn, params, tx, to_dtype, **kwargs):
|
413 |
+
"""Creates a new instance with `step=0` and initialized `opt_state`."""
|
414 |
+
# downcast optimizer state to bf16 if mixed-precision training
|
415 |
+
opt_state = tx.init(to_dtype(params)) if tx is not None else None
|
416 |
+
return cls(
|
417 |
+
step=0,
|
418 |
+
apply_fn=apply_fn,
|
419 |
+
params=params,
|
420 |
+
tx=tx,
|
421 |
+
opt_state=opt_state,
|
422 |
+
**kwargs,
|
423 |
+
)
|
424 |
+
|
425 |
+
def replicate(self):
|
426 |
+
return jax_utils.replicate(self).replace(dropout_rng=shard_prng_key(self.dropout_rng))
|
427 |
+
|
428 |
+
|
429 |
+
@flax.struct.dataclass
|
430 |
+
class FlaxDataCollatorSpeechSeq2SeqWithPadding:
|
431 |
+
"""
|
432 |
+
Data collator that will dynamically pad the inputs received.
|
433 |
+
Args:
|
434 |
+
processor ([`Wav2Vec2Processor`])
|
435 |
+
The processor used for proccessing the data.
|
436 |
+
decoder_start_token_id (:obj: `int`)
|
437 |
+
The begin-of-sentence of the decoder.
|
438 |
+
input_padding (:obj:`bool`, :obj:`str` or :class:`~transformers.tokenization_utils_base.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
439 |
+
Select a strategy to pad the returned input sequences (according to the model's padding side and padding index)
|
440 |
+
among:
|
441 |
+
* :obj:`True` or :obj:`'longest'`: Pad to the longest sequence in the batch (or no padding if only a single
|
442 |
+
sequence if provided).
|
443 |
+
* :obj:`'max_length'`: Pad to a maximum length specified with the argument :obj:`max_length` or to the
|
444 |
+
maximum acceptable input length for the model if that argument is not provided.
|
445 |
+
* :obj:`False` or :obj:`'do_not_pad'` (default): No padding (i.e., can output a batch with sequences of
|
446 |
+
different lengths).
|
447 |
+
target_padding (:obj:`bool`, :obj:`str` or :class:`~transformers.tokenization_utils_base.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
448 |
+
Select a strategy to pad the returned target sequences (according to the model's padding side and padding index).
|
449 |
+
See above for details.
|
450 |
+
max_input_length (:obj:`float`, `optional`):
|
451 |
+
Maximum length of the ``input_values`` of the returned list and optionally padding length (see above).
|
452 |
+
pad_input_to_multiple_of (:obj:`int`, `optional`):
|
453 |
+
If set will pad the input sequence to a multiple of the provided value.
|
454 |
+
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
455 |
+
7.5 (Volta).
|
456 |
+
pad_target_to_multiple_of (:obj:`int`, `optional`):
|
457 |
+
If set will pad the target sequence to a multiple of the provided value.
|
458 |
+
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
459 |
+
7.5 (Volta).
|
460 |
+
"""
|
461 |
+
|
462 |
+
processor: Any
|
463 |
+
input_padding: Union[bool, str] = "longest"
|
464 |
+
label_padding: Union[bool, str] = "max_length"
|
465 |
+
pad_input_to_multiple_of: Optional[int] = None
|
466 |
+
pad_to_multiple_of_label: Optional[int] = None
|
467 |
+
max_input_length: Optional[float] = None
|
468 |
+
max_label_length: Optional[float] = None
|
469 |
+
|
470 |
+
def __call__(self, features: List[Dict[str, Union[List[int], np.ndarray]]]) -> Dict[str, np.ndarray]:
|
471 |
+
# split inputs and labels since they have to be of different lengths and need
|
472 |
+
# different padding methods
|
473 |
+
input_features = [{"input_values": feature["input_values"]} for feature in features]
|
474 |
+
label_features = [{"input_ids": feature["labels"]} for feature in features]
|
475 |
+
|
476 |
+
# reformat list to dict and set to pytorch format
|
477 |
+
batch = self.processor.feature_extractor.pad(
|
478 |
+
input_features,
|
479 |
+
max_length=self.max_input_length,
|
480 |
+
padding=self.input_padding,
|
481 |
+
pad_to_multiple_of=self.pad_input_to_multiple_of,
|
482 |
+
return_tensors="np",
|
483 |
+
)
|
484 |
+
|
485 |
+
labels_batch = self.processor.tokenizer.pad(
|
486 |
+
label_features,
|
487 |
+
max_length=self.max_label_length,
|
488 |
+
padding=self.label_padding,
|
489 |
+
pad_to_multiple_of=self.pad_to_multiple_of_label,
|
490 |
+
return_tensors="np",
|
491 |
+
)
|
492 |
+
|
493 |
+
labels = labels_batch["input_ids"]
|
494 |
+
labels = np.ma.array(labels, mask=np.not_equal(labels_batch.attention_mask, 1))
|
495 |
+
labels = labels.filled(fill_value=-100)
|
496 |
+
|
497 |
+
batch["labels"] = labels
|
498 |
+
|
499 |
+
return batch
|
500 |
+
|
501 |
+
|
502 |
+
def get_grouped_indices(
|
503 |
+
dataset, batch_size: int, rng: Optional[List[int]] = None, mega_batch_mult: Optional[int] = None
|
504 |
+
) -> np.array:
|
505 |
+
"""
|
506 |
+
Adapted from the `get_length_grouped_indices` function in the PyTorch Trainer utils file (https://github.com/huggingface/transformers/blob/main/src/transformers/trainer_pt_utils.py#L486)
|
507 |
+
Function that returns a list of indices in which each slice of `batch_size` consecutive indices correspond to elements of similar
|
508 |
+
lengths. To do this, the indices are:
|
509 |
+
|
510 |
+
- randomly permuted (if a JAX rng is specified)
|
511 |
+
- grouped in mega-batches of size `mega_batch_mult * batch_size`
|
512 |
+
- sorted by length in each mega-batch
|
513 |
+
|
514 |
+
The result is the concatenation of all mega-batches, with the batch of `batch_size` containing the element of
|
515 |
+
maximum length placed first, so that an OOM happens sooner rather than later.
|
516 |
+
"""
|
517 |
+
lengths = dataset["input_length"]
|
518 |
+
|
519 |
+
# Default for mega_batch_mult: 50 or the number to get 4 megabatches, whichever is smaller.
|
520 |
+
if mega_batch_mult is None:
|
521 |
+
mega_batch_mult = min(len(lengths) // (batch_size * 4), 50)
|
522 |
+
# Just in case, for tiny datasets
|
523 |
+
if mega_batch_mult == 0:
|
524 |
+
mega_batch_mult = 1
|
525 |
+
|
526 |
+
# We need to use JAX for the random permutation as the PRNG key will be set based on the seed outside of the sampler.
|
527 |
+
num_samples = len(lengths)
|
528 |
+
indices = jax.random.permutation(rng, np.arange(num_samples)) if rng is not None else np.arange(num_samples)
|
529 |
+
|
530 |
+
megabatch_size = mega_batch_mult * batch_size
|
531 |
+
megabatches = [indices[i : i + megabatch_size].tolist() for i in range(0, len(lengths), megabatch_size)]
|
532 |
+
megabatches = [list(sorted(megabatch, key=lambda i: lengths[i], reverse=True)) for megabatch in megabatches]
|
533 |
+
|
534 |
+
# The rest is to get the biggest batch first.
|
535 |
+
# Since each megabatch is sorted by descending length, the longest element is the first
|
536 |
+
megabatch_maximums = [lengths[megabatch[0]] for megabatch in megabatches]
|
537 |
+
max_idx = np.argmax(megabatch_maximums).item()
|
538 |
+
# Switch to put the longest batch in first position
|
539 |
+
# (note that this is different to the PT grouped sampler in which we only put the longest element in the first position, and not its batch)
|
540 |
+
megabatches[0], megabatches[max_idx] = megabatches[max_idx], megabatches[0]
|
541 |
+
|
542 |
+
megabatches = np.array([i for megabatch in megabatches for i in megabatch])
|
543 |
+
|
544 |
+
return megabatches
|
545 |
+
|
546 |
+
|
547 |
+
def generate_batch_splits(samples_idx: np.ndarray, batch_size: int, drop_last=True) -> np.ndarray:
|
548 |
+
"""Generate batches of data for a specified batch size from sample indices. If the dataset size is not divisible by
|
549 |
+
the batch size and `drop_last` is `True`, the last incomplete batch is dropped. Else, it is returned."""
|
550 |
+
num_samples = len(samples_idx)
|
551 |
+
if drop_last:
|
552 |
+
samples_to_remove = num_samples % batch_size
|
553 |
+
if samples_to_remove != 0:
|
554 |
+
samples_idx = samples_idx[:-samples_to_remove]
|
555 |
+
sections_split = num_samples // batch_size
|
556 |
+
samples_idx = samples_idx.reshape((sections_split, batch_size))
|
557 |
+
else:
|
558 |
+
sections_split = math.ceil(num_samples / batch_size)
|
559 |
+
samples_idx = np.array_split(samples_idx, sections_split)
|
560 |
+
return samples_idx
|
561 |
+
|
562 |
+
|
563 |
+
def write_train_metric(summary_writer, train_metrics, train_time, step):
|
564 |
+
summary_writer.scalar("train_time", train_time, step)
|
565 |
+
|
566 |
+
train_metrics = get_metrics(train_metrics)
|
567 |
+
for key, vals in train_metrics.items():
|
568 |
+
tag = f"train_{key}"
|
569 |
+
for i, val in enumerate(vals):
|
570 |
+
summary_writer.scalar(tag, val, step - len(vals) + i + 1)
|
571 |
+
|
572 |
+
|
573 |
+
def write_eval_metric(summary_writer, eval_metrics, step, pred_str=None):
|
574 |
+
for metric_name, value in eval_metrics.items():
|
575 |
+
summary_writer.scalar(f"eval_{metric_name}", value, step)
|
576 |
+
|
577 |
+
if pred_str is not None:
|
578 |
+
# write output actual predictions for debugging
|
579 |
+
summary_writer.text("eval_predictions", "\n".join(pred_str), step)
|
580 |
+
|
581 |
+
|
582 |
+
def write_wandb_log(metrics, step, prefix=None):
|
583 |
+
if jax.process_index() == 0:
|
584 |
+
log_metrics = {}
|
585 |
+
for k, v in metrics.items():
|
586 |
+
if "layer" in k:
|
587 |
+
log_metrics[f"{k}/"] = v
|
588 |
+
elif prefix is not None:
|
589 |
+
log_metrics[f"{prefix}/{k}"] = v
|
590 |
+
else:
|
591 |
+
log_metrics[k] = v
|
592 |
+
wandb.log(log_metrics, step)
|
593 |
+
|
594 |
+
|
595 |
+
def write_wandb_pred(pred_str, label_str, step, num_log=50, prefix="eval"):
|
596 |
+
if jax.process_index() == 0:
|
597 |
+
# convert str data to a wandb compatible format
|
598 |
+
str_data = [[label_str[i], pred_str[i]] for i in range(len(pred_str))]
|
599 |
+
# we'll log the first 50 predictions for each epoch
|
600 |
+
wandb.log(
|
601 |
+
{
|
602 |
+
f"{prefix}/step_{int(step / 1000)}k": wandb.Table(
|
603 |
+
columns=["label_str", "pred_str"], data=str_data[:num_log]
|
604 |
+
)
|
605 |
+
},
|
606 |
+
step,
|
607 |
+
)
|
608 |
+
|
609 |
+
|
610 |
+
def create_learning_rate_fn(
|
611 |
+
num_train_steps: int, num_warmup_steps: int, learning_rate: float
|
612 |
+
) -> Callable[[int], jnp.array]:
|
613 |
+
"""Returns a linear warmup, linear_decay learning rate function."""
|
614 |
+
warmup_fn = optax.linear_schedule(init_value=0.0, end_value=learning_rate, transition_steps=num_warmup_steps)
|
615 |
+
decay_fn = optax.linear_schedule(
|
616 |
+
init_value=learning_rate, end_value=0, transition_steps=num_train_steps - num_warmup_steps
|
617 |
+
)
|
618 |
+
schedule_fn = optax.join_schedules(schedules=[warmup_fn, decay_fn], boundaries=[num_warmup_steps])
|
619 |
+
return schedule_fn
|
620 |
+
|
621 |
+
|
622 |
+
def ctc_loss(
|
623 |
+
logits,
|
624 |
+
logits_attention_mask,
|
625 |
+
labels,
|
626 |
+
blank_id,
|
627 |
+
loss_reduction="mean",
|
628 |
+
output_emission_dict=False,
|
629 |
+
log_epsilon=-100000.0,
|
630 |
+
):
|
631 |
+
"""Computes CTC loss.
|
632 |
+
This function performs forward computation over an FSA with `N * 2` states
|
633 |
+
where `N` is the max number of labels. The states are split into two groups:
|
634 |
+
Phi states and emission states. a phi-state accepts repetition of
|
635 |
+
phi (blank)-symbols and transits to emission state when the correct label is
|
636 |
+
observed. An emission state accepts repetition of the label and transits to
|
637 |
+
the next phi states at any time (so called epsilon-transition).
|
638 |
+
Below, `B` denotes the batch size, `T` denotes the time steps in `logits`,
|
639 |
+
and `N` denotes the time steps in `labels`.
|
640 |
+
Args:
|
641 |
+
logits: (B, T, K)-array containing log-probabilities of each class.
|
642 |
+
logitpaddings: (B, T)-array. Padding indicators for `logits`.
|
643 |
+
labels: (B, N)-array containing reference integer labels.
|
644 |
+
labelpaddings: (B, N)-array. Padding indicators for `labels`. Currently,
|
645 |
+
`labels` must be right-padded, i.e. each row of `labelpaddings` must be
|
646 |
+
repetition of zeroes, followed by repetition of ones.
|
647 |
+
blank_id: Id for blank token.
|
648 |
+
loss_reduction: one of "mean", "sum", "default"
|
649 |
+
- "none": no reduction is applied.
|
650 |
+
- "mean": output loss will be divided by target lengths and then the
|
651 |
+
mean over the batch is taken.
|
652 |
+
- "sum": output loss are summed over batch
|
653 |
+
output_emission_dict: whether to output additional information about the emission probs
|
654 |
+
Returns:
|
655 |
+
A pair of `(per_seq_loss, aux)`.
|
656 |
+
per_seq_loss:
|
657 |
+
(B,)-array containing loss values for each sequence in the batch.
|
658 |
+
aux: Dictionary containing interim variables used for computing losses.
|
659 |
+
aux['logalpha_phi']: (T, B, N+1)-array. Log-forward-probabilities of each
|
660 |
+
phi-state corresponding to the n-th label.
|
661 |
+
aux['logalpha_emit']: (T, B, N)-array. Log-forward-probabilities of each
|
662 |
+
emission-state corresponding to the n-th label.
|
663 |
+
aux['logprobs_phi']: (T, B, 1)-array. Probability of the phi-symbol
|
664 |
+
corresponding to each time frame.
|
665 |
+
aux['logprobs_emit']: (T, B, N)-array. Probability of the n-th label
|
666 |
+
corresponding to each time frame.
|
667 |
+
"""
|
668 |
+
# label paddings are indicated by -100
|
669 |
+
labelpaddings = labels < 0
|
670 |
+
# logit paddings are the inverse of attention_mask
|
671 |
+
logitpaddings = ~logits_attention_mask
|
672 |
+
|
673 |
+
# Copied from https://github.com/tensorflow/lingvo/blob/master/lingvo/jax/layers/ctc_objectives.py
|
674 |
+
batchsize, unused_maxinputlen, num_classes = logits.shape
|
675 |
+
batchsize_, maxlabellen = labels.shape
|
676 |
+
|
677 |
+
logprobs = jax.nn.log_softmax(logits)
|
678 |
+
labellens = maxlabellen - jnp.sum(labelpaddings, axis=1).astype(jnp.int32)
|
679 |
+
|
680 |
+
# repeat[b, n] == 1.0 when label[b, n] == label[b, n+1].
|
681 |
+
repeat = (labels[:, :-1] == labels[:, 1:]).astype(jnp.float32)
|
682 |
+
repeat = jnp.pad(repeat, ((0, 0), (0, 1)))
|
683 |
+
|
684 |
+
logprobs_phi = logprobs[:, :, blank_id : blank_id + 1] # [B, T, 1]
|
685 |
+
logprobs_phi = jnp.transpose(logprobs_phi, (1, 0, 2)) # [T, B, 1]
|
686 |
+
|
687 |
+
one_hot = jax.nn.one_hot(labels, num_classes=num_classes) # [B, N, K]
|
688 |
+
logprobs_emit = jnp.einsum("btk,bnk->btn", logprobs, one_hot)
|
689 |
+
logprobs_emit = jnp.transpose(logprobs_emit, (1, 0, 2)) # [T, B, N]
|
690 |
+
|
691 |
+
logalpha_phi_init = jnp.ones((batchsize, maxlabellen + 1)) * log_epsilon # [B, N]
|
692 |
+
logalpha_phi_init = logalpha_phi_init.at[:, 0].set(0.0)
|
693 |
+
logalpha_emit_init = jnp.ones((batchsize, maxlabellen)) * log_epsilon # [B, N]
|
694 |
+
|
695 |
+
def loop_body(prev, x):
|
696 |
+
prev_phi, prev_emit = prev
|
697 |
+
# emit-to-phi epsilon transition, except if the next label is repetition
|
698 |
+
prev_phi_orig = prev_phi
|
699 |
+
prev_phi = prev_phi.at[:, 1:].set(jnp.logaddexp(prev_phi[:, 1:], prev_emit + log_epsilon * repeat))
|
700 |
+
|
701 |
+
logprob_emit, logprob_phi, pad = x
|
702 |
+
|
703 |
+
# phi-to-emit transition
|
704 |
+
next_emit = jnp.logaddexp(prev_phi[:, :-1] + logprob_emit, prev_emit + logprob_emit)
|
705 |
+
# self-loop transition
|
706 |
+
next_phi = prev_phi + logprob_phi
|
707 |
+
# emit-to-phi blank transition only when the next label is repetition
|
708 |
+
next_phi = next_phi.at[:, 1:].set(
|
709 |
+
jnp.logaddexp(next_phi[:, 1:], prev_emit + logprob_phi + log_epsilon * (1.0 - repeat))
|
710 |
+
)
|
711 |
+
|
712 |
+
pad = pad.reshape((batchsize, 1))
|
713 |
+
next_emit = pad * prev_emit + (1.0 - pad) * next_emit
|
714 |
+
next_phi = pad * prev_phi_orig + (1.0 - pad) * next_phi
|
715 |
+
|
716 |
+
return (next_phi, next_emit), (next_phi, next_emit)
|
717 |
+
|
718 |
+
xs = (logprobs_emit, logprobs_phi, logitpaddings.transpose((1, 0)))
|
719 |
+
_, (logalpha_phi, logalpha_emit) = jax.lax.scan(loop_body, (logalpha_phi_init, logalpha_emit_init), xs)
|
720 |
+
|
721 |
+
# last row needs to be updated with the last epsilon transition
|
722 |
+
logalpha_phi_last = logalpha_phi[-1].at[:, 1:].set(jnp.logaddexp(logalpha_phi[-1, :, 1:], logalpha_emit[-1]))
|
723 |
+
logalpha_phi = logalpha_phi.at[-1].set(logalpha_phi_last)
|
724 |
+
|
725 |
+
# extract per_seq_loss
|
726 |
+
one_hot = jax.nn.one_hot(labellens, num_classes=maxlabellen + 1) # [B, N+1]
|
727 |
+
per_seq_loss = -jnp.einsum("bn,bn->b", logalpha_phi_last, one_hot)
|
728 |
+
|
729 |
+
if loss_reduction == "mean":
|
730 |
+
target_lengths = labelpaddings.shape[-1] - labelpaddings.sum(axis=-1)
|
731 |
+
loss = (per_seq_loss / target_lengths).mean()
|
732 |
+
elif loss_reduction == "sum":
|
733 |
+
loss = per_seq_loss.sum()
|
734 |
+
else:
|
735 |
+
loss = per_seq_loss
|
736 |
+
|
737 |
+
if not output_emission_dict:
|
738 |
+
return loss
|
739 |
+
|
740 |
+
return loss, {
|
741 |
+
"logalpha_phi": logalpha_phi,
|
742 |
+
"logalpha_emit": logalpha_emit,
|
743 |
+
"logprobs_phi": logprobs_phi,
|
744 |
+
"logprobs_emit": logprobs_emit,
|
745 |
+
}
|
746 |
+
|
747 |
+
|
748 |
+
def make_dataset(data_args, seed=42):
|
749 |
+
# Pre-processing dataset
|
750 |
+
import re
|
751 |
+
|
752 |
+
def map_nst(entry):
|
753 |
+
text = entry["text"].lower()
|
754 |
+
text = text.replace("(...vær stille under dette opptaket...)", "")
|
755 |
+
text = re.sub('[áàâ]', 'a', text)
|
756 |
+
text = re.sub('[ä]', 'æ', text)
|
757 |
+
text = re.sub('[éèëê]', 'e', text)
|
758 |
+
text = re.sub('[íìïî]', 'i', text)
|
759 |
+
text = re.sub('[óòöô]', 'o', text)
|
760 |
+
text = re.sub('[ö]', 'ø', text)
|
761 |
+
text = re.sub('[ç]', 'c', text)
|
762 |
+
text = re.sub('[úùüû]', 'u', text)
|
763 |
+
# text = re.sub('\\(?=(Punktum|Komma|Utropstegn|Spørsmålstegn))', ' ', text)
|
764 |
+
text = re.sub('\s+', ' ', text)
|
765 |
+
return {"text": text}
|
766 |
+
|
767 |
+
def filter_nst(entry):
|
768 |
+
if not ((len(entry["text"]) <= len(entry["audio"]["array"]) // 320) and (len(entry["text"].strip()) >= 3)):
|
769 |
+
return False # Too short
|
770 |
+
if re.match(entry["type"], "pIW|CA"):
|
771 |
+
return False # Spelling out words
|
772 |
+
return True
|
773 |
+
|
774 |
+
def filter_npsc(entry):
|
775 |
+
# False if there are digits in the text
|
776 |
+
if not ((len(entry["text"]) <= len(entry["audio"]["array"]) // 320) and (len(entry["text"].strip()) >= 3)):
|
777 |
+
return False # Too short
|
778 |
+
if re.search("\d", entry["text"]):
|
779 |
+
return False
|
780 |
+
return True
|
781 |
+
|
782 |
+
def map_npsc(entry):
|
783 |
+
batch = {"text": entry["text"].lower()}
|
784 |
+
batch["text"] = re.sub('[áàâ]', 'a', batch["text"])
|
785 |
+
batch["text"] = re.sub('[ä]', 'æ', batch["text"])
|
786 |
+
batch["text"] = re.sub('[éèëê]', 'e', batch["text"])
|
787 |
+
batch["text"] = re.sub('[íìïî]', 'i', batch["text"])
|
788 |
+
batch["text"] = re.sub('[óòöô]', 'o', batch["text"])
|
789 |
+
batch["text"] = re.sub('[ö]', 'ø', batch["text"])
|
790 |
+
batch["text"] = re.sub('[ç]', 'c', batch["text"])
|
791 |
+
batch["text"] = re.sub('[úùüû]', 'u', batch["text"])
|
792 |
+
batch["text"] = re.sub('\s', ' ', batch["text"])
|
793 |
+
batch["text"] = re.sub('<ee>', 'eee', batch["text"])
|
794 |
+
batch["text"] = re.sub('<qq>', 'qqq', batch["text"])
|
795 |
+
batch["text"] = re.sub('<mm>', 'mmm', batch["text"])
|
796 |
+
batch["text"] = re.sub('<inaudible>', 'xxx', batch["text"])
|
797 |
+
# batch["text"] = re.sub('<inaudible>', '?', batch["text"])
|
798 |
+
if "<" in batch["text"]:
|
799 |
+
raise ValueError(batch["text"])
|
800 |
+
return batch
|
801 |
+
|
802 |
+
nst = datasets.load_dataset("NbAiLab/NST", "no-close")
|
803 |
+
npsc = datasets.load_dataset("NbAiLab/NPSC", "16K_mp3")
|
804 |
+
# TODO NST_hesitate
|
805 |
+
|
806 |
+
split = len(npsc[data_args.train_split_name]) / (len(npsc[data_args.train_split_name]) + len(npsc[data_args.eval_split_name])) # Use same train/val ratio as NPSC
|
807 |
+
nst_train = nst[data_args.train_split_name].train_test_split(train_size=split, seed=seed)
|
808 |
+
nst[data_args.train_split_name] = nst_train["train"]
|
809 |
+
nst[data_args.eval_split_name] = nst_train["test"]
|
810 |
+
|
811 |
+
nst = nst.filter(filter_nst).map(
|
812 |
+
map_nst,
|
813 |
+
num_proc=data_args.preprocessing_num_workers,
|
814 |
+
desc="filtering NST",
|
815 |
+
).shuffle(seed=seed)
|
816 |
+
npsc = npsc.filter(filter_npsc).map(
|
817 |
+
map_npsc,
|
818 |
+
num_proc=data_args.preprocessing_num_workers,
|
819 |
+
desc="filtering NPSC",
|
820 |
+
).shuffle(seed=seed)
|
821 |
+
|
822 |
+
npsc_base = npsc.remove_columns([col for col in npsc[data_args.train_split_name].column_names if col not in ["text", "audio"]])
|
823 |
+
nst_base = nst.remove_columns([col for col in nst[data_args.train_split_name].column_names if col not in ["text", "audio"]])
|
824 |
+
|
825 |
+
combined = {}
|
826 |
+
for split in data_args.train_split_name, data_args.eval_split_name, data_args.test_split_name:
|
827 |
+
probs = np.array([len(nst_base[split]), len(npsc_base[split])]) # Weight by number of examples
|
828 |
+
probs = (probs / probs.sum()).tolist()
|
829 |
+
comb = datasets.interleave_datasets([nst_base[split], npsc_base[split]], probabilities=probs, seed=seed)
|
830 |
+
combined[split] = comb
|
831 |
+
|
832 |
+
return datasets.DatasetDict(**combined)
|
833 |
+
|
834 |
+
def main():
|
835 |
+
# 1. Parse input arguments
|
836 |
+
# See all possible arguments in src/transformers/training_args.py
|
837 |
+
# or by passing the --help flag to this script.
|
838 |
+
# We now keep distinct sets of args, for a cleaner separation of concerns.
|
839 |
+
parser = HfArgumentParser((ModelArguments, DataTrainingArguments, FlaxTrainingArguments))
|
840 |
+
|
841 |
+
if len(sys.argv) == 2 and sys.argv[1].endswith(".json"):
|
842 |
+
# If we pass only one argument to the script and it's the path to a json file,
|
843 |
+
# let's parse it to get our arguments.
|
844 |
+
model_args, data_args, training_args = parser.parse_json_file(json_file=os.path.abspath(sys.argv[1]))
|
845 |
+
else:
|
846 |
+
model_args, data_args, training_args = parser.parse_args_into_dataclasses()
|
847 |
+
|
848 |
+
# 2. Setup logging
|
849 |
+
# Make one log on every process with the configuration for debugging.
|
850 |
+
logging.basicConfig(
|
851 |
+
format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
|
852 |
+
datefmt="%m/%d/%Y %H:%M:%S",
|
853 |
+
handlers=[logging.StreamHandler(sys.stdout)],
|
854 |
+
)
|
855 |
+
# Set the verbosity to info of the Transformers logger.
|
856 |
+
# We only want one process per machine to log things on the screen.
|
857 |
+
logger.setLevel(logging.INFO if jax.process_index() == 0 else logging.ERROR)
|
858 |
+
if jax.process_index() == 0:
|
859 |
+
datasets.utils.logging.set_verbosity_warning()
|
860 |
+
transformers.utils.logging.set_verbosity_info()
|
861 |
+
else:
|
862 |
+
datasets.utils.logging.set_verbosity_error()
|
863 |
+
transformers.utils.logging.set_verbosity_error()
|
864 |
+
|
865 |
+
# Set up wandb run
|
866 |
+
if jax.process_index() == 0:
|
867 |
+
wandb.init(project=data_args.wandb_project, name=data_args.wandb_name, job_type=data_args.wandb_job_type)
|
868 |
+
|
869 |
+
logger.info("Training/evaluation parameters %s", training_args)
|
870 |
+
|
871 |
+
# Set the default TPU matmul precision and display the number of devices
|
872 |
+
jax.config.update("jax_default_matmul_precision", training_args.matmul_precision)
|
873 |
+
logger.info(f"JAX devices: {jax.device_count()}, matmul precision: {training_args.matmul_precision}")
|
874 |
+
|
875 |
+
# 4. Load dataset
|
876 |
+
|
877 |
+
set_seed(training_args.seed)
|
878 |
+
raw_datasets = make_dataset(data_args, seed=training_args.seed)
|
879 |
+
|
880 |
+
# raw_datasets = DatasetDict()
|
881 |
+
|
882 |
+
# if training_args.do_train:
|
883 |
+
# raw_datasets[data_args.train_split_name] = load_dataset(
|
884 |
+
# data_args.dataset_name,
|
885 |
+
# data_args.dataset_config_name,
|
886 |
+
# split=data_args.train_split_name,
|
887 |
+
# cache_dir=data_args.dataset_cache_dir,
|
888 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
889 |
+
# )
|
890 |
+
|
891 |
+
# if training_args.do_eval:
|
892 |
+
# raw_datasets[data_args.eval_split_name] = load_dataset(
|
893 |
+
# data_args.dataset_name,
|
894 |
+
# data_args.dataset_config_name,
|
895 |
+
# split=data_args.eval_split_name,
|
896 |
+
# cache_dir=data_args.dataset_cache_dir,
|
897 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
898 |
+
# )
|
899 |
+
|
900 |
+
# if training_args.do_predict:
|
901 |
+
# test_split = data_args.test_split_name.split("+")
|
902 |
+
# for split in test_split:
|
903 |
+
# raw_datasets[split] = load_dataset(
|
904 |
+
# data_args.dataset_name,
|
905 |
+
# data_args.dataset_config_name,
|
906 |
+
# split=split,
|
907 |
+
# cache_dir=data_args.dataset_cache_dir,
|
908 |
+
# use_auth_token=True if model_args.use_auth_token else None,
|
909 |
+
# )
|
910 |
+
|
911 |
+
if not training_args.do_train and not training_args.do_eval and not training_args.do_predict:
|
912 |
+
raise ValueError(
|
913 |
+
"Cannot not train, not do evaluation and not do prediction. At least one of "
|
914 |
+
"training, evaluation or prediction has to be done."
|
915 |
+
)
|
916 |
+
|
917 |
+
# if not training, there is no need to run multiple epochs
|
918 |
+
if not training_args.do_train:
|
919 |
+
training_args.num_train_epochs = 1
|
920 |
+
|
921 |
+
if data_args.audio_column_name not in next(iter(raw_datasets.values())).column_names:
|
922 |
+
raise ValueError(
|
923 |
+
f"--audio_column_name '{data_args.audio_column_name}' not found in dataset '{data_args.dataset_name}'. "
|
924 |
+
"Make sure to set `--audio_column_name` to the correct audio column - one of "
|
925 |
+
f"{', '.join(next(iter(raw_datasets.values())).column_names)}."
|
926 |
+
)
|
927 |
+
|
928 |
+
if data_args.text_column_name not in next(iter(raw_datasets.values())).column_names:
|
929 |
+
raise ValueError(
|
930 |
+
f"--text_column_name {data_args.text_column_name} not found in dataset '{data_args.dataset_name}'. "
|
931 |
+
"Make sure to set `--text_column_name` to the correct text column - one of "
|
932 |
+
f"{', '.join(next(iter(raw_datasets.values())).column_names)}."
|
933 |
+
)
|
934 |
+
|
935 |
+
# 5. Load pretrained model, tokenizer, and feature extractor
|
936 |
+
#
|
937 |
+
# Distributed training:
|
938 |
+
# The .from_pretrained methods guarantee that only one local process can concurrently
|
939 |
+
config = Wav2Vec2Config.from_pretrained(
|
940 |
+
model_args.config_name if model_args.config_name else model_args.model_name_or_path,
|
941 |
+
cache_dir=model_args.cache_dir,
|
942 |
+
revision=model_args.model_revision,
|
943 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
944 |
+
)
|
945 |
+
feature_extractor = AutoFeatureExtractor.from_pretrained(
|
946 |
+
model_args.feature_extractor_name if model_args.feature_extractor_name else model_args.model_name_or_path,
|
947 |
+
cache_dir=model_args.cache_dir,
|
948 |
+
revision=model_args.model_revision,
|
949 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
950 |
+
)
|
951 |
+
tokenizer = AutoTokenizer.from_pretrained(
|
952 |
+
model_args.tokenizer_name if model_args.tokenizer_name else model_args.model_name_or_path,
|
953 |
+
cache_dir=model_args.cache_dir,
|
954 |
+
revision=model_args.model_revision,
|
955 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
956 |
+
)
|
957 |
+
# update config according to training args, model args, and tokenizer attributes
|
958 |
+
config.update(
|
959 |
+
{
|
960 |
+
"feat_proj_dropout": model_args.feat_proj_dropout,
|
961 |
+
"attention_dropout": model_args.attention_dropout,
|
962 |
+
"hidden_dropout": model_args.hidden_dropout,
|
963 |
+
"final_dropout": model_args.final_dropout,
|
964 |
+
"mask_time_prob": model_args.mask_time_prob,
|
965 |
+
"mask_time_length": model_args.mask_time_length,
|
966 |
+
"mask_feature_prob": model_args.mask_feature_prob,
|
967 |
+
"mask_feature_length": model_args.mask_feature_length,
|
968 |
+
"gradient_checkpointing": training_args.gradient_checkpointing,
|
969 |
+
"layerdrop": model_args.layerdrop,
|
970 |
+
"ctc_loss_reduction": model_args.ctc_loss_reduction,
|
971 |
+
"ctc_zero_infinity": model_args.ctc_zero_infinity,
|
972 |
+
"pad_token_id": tokenizer.pad_token_id,
|
973 |
+
"vocab_size": tokenizer.vocab_size, # len(tokenizer),
|
974 |
+
"activation_dropout": model_args.activation_dropout,
|
975 |
+
}
|
976 |
+
)
|
977 |
+
|
978 |
+
if tokenizer.do_lower_case and data_args.dataset_name != "librispeech_asr":
|
979 |
+
raise ValueError(
|
980 |
+
"Setting the tokenizer attribute `do_lower_case` to `True` converts all input strings to "
|
981 |
+
"uppercase prior to tokenization. This should only be done when the tokenizer is built on an uppercased corpus,"
|
982 |
+
"i.e. for the dataset `librispeech_asr` only. If your dataset is not `librispeech_asr`, the tokenizer is mostly likely "
|
983 |
+
"built on an lowercased corpus. In this case, set `tokenizer.do_lower_case` to ``False`."
|
984 |
+
)
|
985 |
+
|
986 |
+
if training_args.precision == "full_mixed":
|
987 |
+
dtype = jnp.bfloat16
|
988 |
+
training_args.mixed_precision = True
|
989 |
+
elif training_args.precision == "half_mixed":
|
990 |
+
dtype = jnp.bfloat16
|
991 |
+
training_args.mixed_precision = False
|
992 |
+
else:
|
993 |
+
dtype = jnp.float32
|
994 |
+
training_args.mixed_precision = False
|
995 |
+
|
996 |
+
model = FlaxWav2Vec2ForCTC.from_pretrained(
|
997 |
+
model_args.model_name_or_path,
|
998 |
+
config=config,
|
999 |
+
dtype=dtype,
|
1000 |
+
cache_dir=model_args.cache_dir,
|
1001 |
+
revision=model_args.model_revision,
|
1002 |
+
use_auth_token=True if model_args.use_auth_token else None,
|
1003 |
+
from_pt=True,
|
1004 |
+
)
|
1005 |
+
|
1006 |
+
# 6. Resample speech dataset ALWAYS
|
1007 |
+
raw_datasets = raw_datasets.cast_column(
|
1008 |
+
data_args.audio_column_name, datasets.features.Audio(sampling_rate=feature_extractor.sampling_rate)
|
1009 |
+
)
|
1010 |
+
|
1011 |
+
# 7. Preprocessing the datasets.
|
1012 |
+
# We need to read the audio files as arrays and tokenize the targets.
|
1013 |
+
max_input_length = int(data_args.max_duration_in_seconds * feature_extractor.sampling_rate)
|
1014 |
+
min_input_length = int(data_args.min_duration_in_seconds * feature_extractor.sampling_rate)
|
1015 |
+
max_target_length = data_args.max_label_length
|
1016 |
+
min_target_length = data_args.min_label_length
|
1017 |
+
pad_input_to_multiple_of = data_args.pad_input_to_multiple_of
|
1018 |
+
audio_column_name = data_args.audio_column_name
|
1019 |
+
num_workers = data_args.preprocessing_num_workers
|
1020 |
+
text_column_name = data_args.text_column_name
|
1021 |
+
model_input_name = feature_extractor.model_input_names[0]
|
1022 |
+
do_lower_case = data_args.do_lower_case
|
1023 |
+
dataset_name = data_args.dataset_name
|
1024 |
+
chars_to_ignore = ', ? . ! - ; : " “ % ‘ ” ?'.split(" ")
|
1025 |
+
chars_to_ignore_regex = f'[{"".join(chars_to_ignore)}]'
|
1026 |
+
# gigaspeech_punctuation = {" <comma>": ",", " <period>": ".", " <questionmark>": "?", " <exclamationpoint>": "!"}
|
1027 |
+
# gigaspeech_disfluencies = ["<other>", "<sil>"]
|
1028 |
+
# swb_disfluencies = ["[noise]", "[laughter]", "[silence]", "<a_aside>", "<b_aside>", "<e_aside>", "[laughter-",
|
1029 |
+
# "[vocalized-noise]", "_1"]
|
1030 |
+
# swb_punctuations = ["{", "}", "[", "]-", "]"]
|
1031 |
+
# earnings_disfluencies = ["<crosstalk>", "<affirmative>", "<inaudible>", "inaudible", "<laugh>", "<unk>"]
|
1032 |
+
ignore_segments = ["ignore_time_segment_in_scoring", "<noise>", "<music>", "[noise]", "[laughter]", "[silence]",
|
1033 |
+
"[vocalized-noise]", "<crosstalk>", "<affirmative>", "<inaudible>", "<laugh>", "<other>", "<sil>", ""]
|
1034 |
+
|
1035 |
+
if training_args.do_train and data_args.max_train_samples is not None:
|
1036 |
+
raw_datasets[data_args.train_split_name] = raw_datasets[data_args.train_split_name].select(range(data_args.max_train_samples))
|
1037 |
+
|
1038 |
+
if training_args.do_eval and data_args.max_eval_samples is not None:
|
1039 |
+
raw_datasets[data_args.eval_split_name] = raw_datasets[data_args.eval_split_name].select(range(data_args.max_eval_samples))
|
1040 |
+
|
1041 |
+
if training_args.do_predict and data_args.max_test_samples is not None:
|
1042 |
+
raw_datasets[data_args.test_split_name] = raw_datasets[data_args.test_split_name].select(range(data_args.max_eval_samples))
|
1043 |
+
|
1044 |
+
if training_args.do_train and data_args.remove_punctuation:
|
1045 |
+
|
1046 |
+
def remove_punctuation(batch):
|
1047 |
+
batch[text_column_name] = (
|
1048 |
+
re.sub(chars_to_ignore_regex, "", batch[text_column_name]).replace("'", "").replace('"', "")
|
1049 |
+
)
|
1050 |
+
|
1051 |
+
raw_datasets[data_args.train_split_name] = raw_datasets[data_args.train_split_name].map(
|
1052 |
+
remove_punctuation,
|
1053 |
+
num_proc=data_args.preprocessing_num_workers,
|
1054 |
+
desc="removing punctuation from train split",
|
1055 |
+
)
|
1056 |
+
|
1057 |
+
# filter data where the targets are ignored in scoring
|
1058 |
+
def is_target_labels(input_str):
|
1059 |
+
return input_str.lower() not in ignore_segments
|
1060 |
+
|
1061 |
+
raw_datasets = raw_datasets.filter(
|
1062 |
+
is_target_labels,
|
1063 |
+
num_proc=num_workers,
|
1064 |
+
input_columns=[text_column_name],
|
1065 |
+
desc="filtering data where the targets are ignored in scoring",
|
1066 |
+
)
|
1067 |
+
|
1068 |
+
def prepare_dataset(batch):
|
1069 |
+
# process audio
|
1070 |
+
try:
|
1071 |
+
sample = batch[audio_column_name]
|
1072 |
+
except ValueError:
|
1073 |
+
sample = {"array": np.array([0.]), "sampling_rate": feature_extractor.sampling_rate}
|
1074 |
+
inputs = feature_extractor(sample["array"], sampling_rate=sample["sampling_rate"])
|
1075 |
+
# process audio length
|
1076 |
+
batch[model_input_name] = inputs.input_values[0]
|
1077 |
+
batch["input_length"] = len(batch["input_values"])
|
1078 |
+
|
1079 |
+
# process targets
|
1080 |
+
input_str = batch[text_column_name].lower() if do_lower_case else batch[text_column_name]
|
1081 |
+
|
1082 |
+
# if dataset_name == "google/xtreme_s":
|
1083 |
+
# # Finally, we tokenize the processed text
|
1084 |
+
# batch["labels"] = tokenizer(input_str).input_ids
|
1085 |
+
# batch["labels_length"] = len(batch["labels"])
|
1086 |
+
# return batch
|
1087 |
+
|
1088 |
+
# # Common Voice 9
|
1089 |
+
# if input_str.startswith('"') and input_str.endswith('"'):
|
1090 |
+
# # we can remove trailing quotation marks as they do not affect the transcription
|
1091 |
+
# input_str = input_str[1:-1]
|
1092 |
+
# # normalize quotation marks
|
1093 |
+
# input_str = re.sub(r'["“”]', '"', input_str)
|
1094 |
+
# # normalize apostrophes
|
1095 |
+
# input_str = re.sub(r"[’']", "'", input_str)
|
1096 |
+
# # normalize hyphens
|
1097 |
+
# input_str = re.sub(r"[—–]", "-", input_str)
|
1098 |
+
# # replace double quotation marks with single
|
1099 |
+
# input_str = input_str.replace('""', '"')
|
1100 |
+
# if dataset_name == "mozilla-foundation/common_voice_9_0" and len(input_str):
|
1101 |
+
# # for CV9, we'll normalize the text to always finish with punctuation
|
1102 |
+
# if input_str[-1] not in [".", "?", "!"]:
|
1103 |
+
# input_str = input_str + "."
|
1104 |
+
|
1105 |
+
# # TEDLIUM-3
|
1106 |
+
# # delete the <unk> token from the text and replace spaced apostrophes with un-spaced
|
1107 |
+
# input_str = input_str.replace("<unk>", "").replace(" '", "'")
|
1108 |
+
|
1109 |
+
# # GigaSpeech
|
1110 |
+
# for disfluency in gigaspeech_disfluencies:
|
1111 |
+
# input_str = input_str.replace(disfluency, "")
|
1112 |
+
# # convert spelled out punctuation to symbolic form
|
1113 |
+
# for punctuation, replacement in gigaspeech_punctuation.items():
|
1114 |
+
# input_str = input_str.replace(punctuation, replacement)
|
1115 |
+
# if dataset_name == "speechcolab/gigaspeech" and len(input_str):
|
1116 |
+
# # for GS, we'll normalize the text to always finish with punctuation
|
1117 |
+
# if input_str[-1] not in [".", "?", "!"]:
|
1118 |
+
# input_str = input_str + "."
|
1119 |
+
|
1120 |
+
# # SWB
|
1121 |
+
# for disfluency in swb_disfluencies:
|
1122 |
+
# input_str = input_str.replace(disfluency, "")
|
1123 |
+
# # remove parenthesised text (test data only)
|
1124 |
+
# input_str = re.sub("[\(].*?[\)]", "", input_str)
|
1125 |
+
# for punctuation in swb_punctuations:
|
1126 |
+
# input_str = input_str.replace(punctuation, "")
|
1127 |
+
# # replace anomalous words with their correct transcriptions
|
1128 |
+
# split_str = input_str.split("/")
|
1129 |
+
# if len(split_str) > 1:
|
1130 |
+
# input_str = " ".join(
|
1131 |
+
# [" ".join([" ".join(i.split(" ")[:-1]) for i in split_str])] + [split_str[-1].split(" ")[-1]])
|
1132 |
+
|
1133 |
+
# # Earnings 22
|
1134 |
+
# for disfluency in earnings_disfluencies:
|
1135 |
+
# input_str = input_str.replace(disfluency, "")
|
1136 |
+
# # replace mal-formatted ellipsis
|
1137 |
+
# input_str = input_str.replace("…", ".")
|
1138 |
+
|
1139 |
+
# JIWER compliance
|
1140 |
+
# remove multiple spaces
|
1141 |
+
input_str = re.sub(r"\s\s+", " ", input_str)
|
1142 |
+
# strip trailing spaces
|
1143 |
+
input_str = input_str.strip()
|
1144 |
+
|
1145 |
+
# Finally, we tokenize the processed text
|
1146 |
+
batch["labels"] = tokenizer(input_str).input_ids
|
1147 |
+
batch["labels_length"] = len(batch["labels"])
|
1148 |
+
return batch
|
1149 |
+
|
1150 |
+
vectorized_datasets = raw_datasets.map(
|
1151 |
+
prepare_dataset,
|
1152 |
+
remove_columns=next(iter(raw_datasets.values())).column_names,
|
1153 |
+
num_proc=num_workers,
|
1154 |
+
desc="preprocess dataset",
|
1155 |
+
)
|
1156 |
+
|
1157 |
+
# filter data with inputs shorter than min_input_length or longer than max_input_length
|
1158 |
+
def is_audio_in_length_range(length):
|
1159 |
+
return length > min_input_length and length < max_input_length
|
1160 |
+
|
1161 |
+
vectorized_datasets = vectorized_datasets.filter(
|
1162 |
+
is_audio_in_length_range,
|
1163 |
+
num_proc=num_workers,
|
1164 |
+
input_columns=["input_length"],
|
1165 |
+
)
|
1166 |
+
|
1167 |
+
# filter data with targets shorter than min_target_length or longer than max_target_length
|
1168 |
+
def is_labels_in_length_range(length):
|
1169 |
+
return length > min_target_length # and length < max_target_length
|
1170 |
+
|
1171 |
+
vectorized_datasets = vectorized_datasets.filter(
|
1172 |
+
is_labels_in_length_range,
|
1173 |
+
num_proc=num_workers,
|
1174 |
+
input_columns=["labels_length"],
|
1175 |
+
)
|
1176 |
+
|
1177 |
+
# for large datasets it is advised to run the preprocessing on a
|
1178 |
+
# single machine first with `args.preprocessing_only` since there will mostly likely
|
1179 |
+
# be a timeout when running the script in distributed mode.
|
1180 |
+
# In a second step `args.preprocessing_only` can then be set to `False` to load the
|
1181 |
+
# cached dataset
|
1182 |
+
if data_args.preprocessing_only:
|
1183 |
+
cache = {k: v.cache_files for k, v in vectorized_datasets.items()}
|
1184 |
+
logger.info(f"Data preprocessing finished. Files cached at {cache}.")
|
1185 |
+
return
|
1186 |
+
|
1187 |
+
# 8. Load Metrics
|
1188 |
+
wer_metric = load_metric("wer")
|
1189 |
+
cer_metric = load_metric("cer")
|
1190 |
+
|
1191 |
+
def compute_metrics(pred_ids: List[List[int]], label_ids: List[List[int]]):
|
1192 |
+
padded_ids = np.where(np.asarray(label_ids) == -100, tokenizer.pad_token_id, np.asarray(label_ids))
|
1193 |
+
|
1194 |
+
pred_str = tokenizer.batch_decode(pred_ids)
|
1195 |
+
# we do not want to group tokens when computing the metrics
|
1196 |
+
label_str = tokenizer.batch_decode(padded_ids, group_tokens=False)
|
1197 |
+
|
1198 |
+
wer = wer_metric.compute(predictions=pred_str, references=label_str)
|
1199 |
+
cer = cer_metric.compute(predictions=pred_str, references=label_str)
|
1200 |
+
|
1201 |
+
return {"wer": wer, "cer": cer}, pred_str, label_str
|
1202 |
+
|
1203 |
+
# 9. save feature extractor, tokenizer and config
|
1204 |
+
feature_extractor.save_pretrained(training_args.output_dir)
|
1205 |
+
tokenizer.save_pretrained(training_args.output_dir)
|
1206 |
+
config.save_pretrained(training_args.output_dir)
|
1207 |
+
|
1208 |
+
processor = AutoProcessor.from_pretrained(training_args.output_dir)
|
1209 |
+
|
1210 |
+
data_collator = FlaxDataCollatorSpeechSeq2SeqWithPadding(
|
1211 |
+
processor=processor,
|
1212 |
+
input_padding="longest",
|
1213 |
+
pad_input_to_multiple_of=pad_input_to_multiple_of,
|
1214 |
+
max_label_length=data_args.max_label_length,
|
1215 |
+
)
|
1216 |
+
|
1217 |
+
# Enable tensorboard only on the master node
|
1218 |
+
has_tensorboard = is_tensorboard_available()
|
1219 |
+
if has_tensorboard and jax.process_index() == 0:
|
1220 |
+
try:
|
1221 |
+
from flax.metrics.tensorboard import SummaryWriter
|
1222 |
+
|
1223 |
+
summary_writer = SummaryWriter(log_dir=Path(training_args.output_dir))
|
1224 |
+
except ImportError as ie:
|
1225 |
+
has_tensorboard = False
|
1226 |
+
logger.warning(
|
1227 |
+
f"Unable to display metrics through TensorBoard because some package are not installed: {ie}"
|
1228 |
+
)
|
1229 |
+
else:
|
1230 |
+
logger.warning(
|
1231 |
+
"Unable to display metrics through TensorBoard because the package is not installed: "
|
1232 |
+
"Please run `pip install tensorboard` to enable."
|
1233 |
+
)
|
1234 |
+
|
1235 |
+
# 10. Handle the repository creation
|
1236 |
+
if training_args.push_to_hub:
|
1237 |
+
with open(os.path.join(training_args.output_dir, ".gitattributes"), "r+") as f:
|
1238 |
+
git_lfs_extensions = f.read()
|
1239 |
+
if "*.wandb" not in git_lfs_extensions:
|
1240 |
+
f.write("*.wandb filter=lfs diff=lfs merge=lfs -text")
|
1241 |
+
if training_args.hub_model_id is None:
|
1242 |
+
repo_name = get_full_repo_name(
|
1243 |
+
Path(training_args.output_dir).absolute().name, token=training_args.hub_token
|
1244 |
+
)
|
1245 |
+
else:
|
1246 |
+
repo_name = training_args.hub_model_id
|
1247 |
+
repo = Repository(training_args.output_dir, clone_from=repo_name)
|
1248 |
+
|
1249 |
+
# 11. Initialize our training
|
1250 |
+
rng = jax.random.PRNGKey(training_args.seed)
|
1251 |
+
rng, dropout_rng = jax.random.split(rng)
|
1252 |
+
|
1253 |
+
# Store some constants
|
1254 |
+
max_steps = int(training_args.max_steps)
|
1255 |
+
gradient_accumulation_steps = int(training_args.gradient_accumulation_steps)
|
1256 |
+
train_batch_size = int(training_args.per_device_train_batch_size) * jax.device_count()
|
1257 |
+
batch_size_per_update = train_batch_size * gradient_accumulation_steps
|
1258 |
+
per_device_eval_batch_size = int(training_args.per_device_eval_batch_size)
|
1259 |
+
eval_batch_size = int(training_args.per_device_eval_batch_size) * jax.device_count()
|
1260 |
+
to_dtype = to_bf16 if training_args.mixed_precision else to_fp32
|
1261 |
+
|
1262 |
+
if training_args.do_train:
|
1263 |
+
num_train_samples = len(vectorized_datasets[data_args.train_split_name])
|
1264 |
+
steps_per_epoch = num_train_samples // batch_size_per_update
|
1265 |
+
if max_steps > 0:
|
1266 |
+
num_epochs = -(training_args.max_steps // -steps_per_epoch)
|
1267 |
+
total_train_steps = max_steps
|
1268 |
+
else:
|
1269 |
+
num_epochs = int(training_args.num_train_epochs)
|
1270 |
+
total_train_steps = steps_per_epoch * num_epochs
|
1271 |
+
|
1272 |
+
# Create learning rate schedule
|
1273 |
+
# Create learning rate schedule
|
1274 |
+
linear_decay_lr_schedule_fn = create_learning_rate_fn(
|
1275 |
+
total_train_steps,
|
1276 |
+
training_args.warmup_steps,
|
1277 |
+
training_args.learning_rate,
|
1278 |
+
)
|
1279 |
+
|
1280 |
+
# We use Optax's "masking" functionality to not apply weight decay
|
1281 |
+
# to bias and LayerNorm scale parameters. decay_mask_fn returns a
|
1282 |
+
# mask boolean with the same structure as the parameters.
|
1283 |
+
# The mask is True for parameters that should be decayed.
|
1284 |
+
# Note that this mask is specifically adapted for FlaxWav2Vec2 and FlaxBart.
|
1285 |
+
# For FlaxT5, one should correct the layer norm parameter naming
|
1286 |
+
# accordingly - see `run_t5_mlm_flax.py` e.g.
|
1287 |
+
def decay_mask_fn(params):
|
1288 |
+
flat_params = traverse_util.flatten_dict(params)
|
1289 |
+
layer_norm_params = [
|
1290 |
+
(name, "scale")
|
1291 |
+
for name in ["layer_norm", "self_attn_layer_norm", "layernorm_embedding", "final_layer_norm"]
|
1292 |
+
]
|
1293 |
+
flat_mask = {path: (path[-1] != "bias" and path[-2:] not in layer_norm_params) for path in flat_params}
|
1294 |
+
return traverse_util.unflatten_dict(flat_mask)
|
1295 |
+
|
1296 |
+
if training_args.adafactor:
|
1297 |
+
# Create Adafactor optimizer
|
1298 |
+
optim = optax.adafactor(
|
1299 |
+
learning_rate=linear_decay_lr_schedule_fn,
|
1300 |
+
dtype_momentum=jnp.bfloat16 if training_args.mixed_precision else jnp.float32,
|
1301 |
+
weight_decay_rate=training_args.weight_decay,
|
1302 |
+
weight_decay_mask=decay_mask_fn,
|
1303 |
+
)
|
1304 |
+
else:
|
1305 |
+
# Create AdamW optimizer
|
1306 |
+
optim = optax.adamw(
|
1307 |
+
learning_rate=linear_decay_lr_schedule_fn,
|
1308 |
+
b1=training_args.adam_beta1,
|
1309 |
+
b2=training_args.adam_beta2,
|
1310 |
+
eps=training_args.adam_epsilon,
|
1311 |
+
weight_decay=training_args.weight_decay,
|
1312 |
+
mask=decay_mask_fn,
|
1313 |
+
)
|
1314 |
+
|
1315 |
+
# Optax MultiSteps for gradient accumulation. We'll only call this optimizer transformation if gradient accumulation is required (i.e. gradient accumulation steps > 1)
|
1316 |
+
if training_args.multisteps and gradient_accumulation_steps > 1:
|
1317 |
+
optim = optax.MultiSteps(optim, gradient_accumulation_steps, use_grad_mean=False)
|
1318 |
+
else:
|
1319 |
+
num_epochs = 0
|
1320 |
+
total_train_steps = 0
|
1321 |
+
num_train_samples = 0
|
1322 |
+
optim = None
|
1323 |
+
|
1324 |
+
# Setup train state
|
1325 |
+
state = MixedPrecisionTrainState.create(
|
1326 |
+
apply_fn=model.__call__,
|
1327 |
+
get_attention_mask_fn=model._get_feature_vector_attention_mask,
|
1328 |
+
params=model.params,
|
1329 |
+
tx=optim,
|
1330 |
+
to_dtype=to_dtype,
|
1331 |
+
dropout_rng=dropout_rng,
|
1332 |
+
max_grad_norm=training_args.max_grad_norm,
|
1333 |
+
)
|
1334 |
+
|
1335 |
+
# Replicate the train state on each device
|
1336 |
+
state = state.replicate()
|
1337 |
+
blank_id = model.config.pad_token_id
|
1338 |
+
|
1339 |
+
# Define gradient update step fn
|
1340 |
+
def train_step(state, batch):
|
1341 |
+
# only one single rng per grad step, with or without accumulation, as the graph should be identical over one effective training batch
|
1342 |
+
dropout_rng, new_dropout_rng = jax.random.split(state.dropout_rng)
|
1343 |
+
|
1344 |
+
def compute_loss(params, minibatch):
|
1345 |
+
labels = minibatch.pop("labels")
|
1346 |
+
logits = state.apply_fn(
|
1347 |
+
**minibatch,
|
1348 |
+
params=params,
|
1349 |
+
dropout_rng=dropout_rng,
|
1350 |
+
freeze_feature_encoder=model_args.freeze_feature_encoder,
|
1351 |
+
train=True,
|
1352 |
+
)[0]
|
1353 |
+
logits_mask = state.get_attention_mask_fn(logits.shape[1], batch["attention_mask"])
|
1354 |
+
loss = ctc_loss(logits, logits_mask, labels, blank_id, loss_reduction="mean")
|
1355 |
+
|
1356 |
+
return loss
|
1357 |
+
|
1358 |
+
grad_fn = jax.value_and_grad(compute_loss)
|
1359 |
+
|
1360 |
+
if gradient_accumulation_steps == 1 or training_args.multisteps:
|
1361 |
+
loss, grad = grad_fn(to_dtype(state.params), batch)
|
1362 |
+
|
1363 |
+
# Custom gradient accumulation
|
1364 |
+
else:
|
1365 |
+
# add a first dimension over gradient_accumulation_steps for minibatch slices
|
1366 |
+
batch = jax.tree_map(
|
1367 |
+
lambda x: x.reshape(
|
1368 |
+
gradient_accumulation_steps, training_args.per_device_train_batch_size, *x.shape[1::]
|
1369 |
+
),
|
1370 |
+
batch,
|
1371 |
+
)
|
1372 |
+
|
1373 |
+
def accum_minibatch_step(accum_grad, minibatch):
|
1374 |
+
# compute loss, num labels and grad over minibatch and accumulate
|
1375 |
+
loss, grad = grad_fn(to_dtype(state.params), minibatch)
|
1376 |
+
return jax.tree_map(jnp.add, accum_grad, grad), loss
|
1377 |
+
|
1378 |
+
# create an initial state for accumulating losses, num labels and gradients
|
1379 |
+
init_grad = jax.tree_map(jnp.zeros_like, to_dtype(state.params))
|
1380 |
+
# loop accum minibatch step over the number of gradient accumulation steps
|
1381 |
+
grad, loss = jax.lax.scan(accum_minibatch_step, init_grad, batch)
|
1382 |
+
|
1383 |
+
# update state
|
1384 |
+
new_state = state.apply_gradients(
|
1385 |
+
grads=grad,
|
1386 |
+
dropout_rng=new_dropout_rng,
|
1387 |
+
to_dtype=to_dtype,
|
1388 |
+
)
|
1389 |
+
|
1390 |
+
# compute gradient norms over all layers and globally for detailed monitoring
|
1391 |
+
layer_grad_norm = jax.tree_map(jnp.linalg.norm, grad)
|
1392 |
+
logs = {
|
1393 |
+
"layer_grad_norm": layer_grad_norm,
|
1394 |
+
"grad_norm": jnp.linalg.norm(jax.tree_util.tree_leaves(layer_grad_norm)),
|
1395 |
+
}
|
1396 |
+
|
1397 |
+
# compute parameter norms over all layers and globally for detailed monitoring
|
1398 |
+
layer_param_norm = jax.tree_map(jnp.linalg.norm, new_state.params)
|
1399 |
+
logs["layer_param_norm"] = layer_param_norm
|
1400 |
+
logs["param_norm"] = jnp.linalg.norm(jax.tree_util.tree_leaves(layer_param_norm))
|
1401 |
+
|
1402 |
+
metrics = {"loss": loss, "learning_rate": linear_decay_lr_schedule_fn(state.step)}
|
1403 |
+
metrics.update(logs)
|
1404 |
+
|
1405 |
+
metrics = jax.lax.pmean(metrics, axis_name="batch")
|
1406 |
+
# metrics = to_fp32(metrics)
|
1407 |
+
|
1408 |
+
return new_state, metrics
|
1409 |
+
|
1410 |
+
# Define eval fn
|
1411 |
+
def eval_step(params, batch):
|
1412 |
+
labels = batch.pop("labels")
|
1413 |
+
logits = model(**batch, params=params, train=False)[0]
|
1414 |
+
|
1415 |
+
logits_mask = model._get_feature_vector_attention_mask(logits.shape[1], batch["attention_mask"])
|
1416 |
+
loss = ctc_loss(logits, logits_mask, labels, blank_id, loss_reduction="mean")
|
1417 |
+
|
1418 |
+
pred_ids = jnp.argmax(logits, axis=-1)
|
1419 |
+
|
1420 |
+
# summarize metrics
|
1421 |
+
metrics = {"loss": loss}
|
1422 |
+
metrics = jax.lax.pmean(metrics, axis_name="batch")
|
1423 |
+
# metrics = to_fp32(metrics)
|
1424 |
+
return metrics, pred_ids
|
1425 |
+
|
1426 |
+
# Create parallel version of the train and eval step
|
1427 |
+
if training_args.do_train:
|
1428 |
+
p_train_step = jax.pmap(train_step, "batch", donate_argnums=(0,))
|
1429 |
+
|
1430 |
+
if training_args.do_eval:
|
1431 |
+
p_eval_step = jax.pmap(eval_step, "batch")
|
1432 |
+
|
1433 |
+
def run_evaluation(step):
|
1434 |
+
if training_args.do_eval:
|
1435 |
+
# ======================== Evaluating ==============================
|
1436 |
+
eval_metrics = []
|
1437 |
+
eval_preds = []
|
1438 |
+
eval_labels = []
|
1439 |
+
|
1440 |
+
# Generate eval set by sequentially sampling indices from the eval dataset and grouping by length
|
1441 |
+
eval_samples_idx = get_grouped_indices(vectorized_datasets[data_args.eval_split_name], eval_batch_size)
|
1442 |
+
eval_batch_idx = generate_batch_splits(eval_samples_idx, eval_batch_size, drop_last=False)
|
1443 |
+
|
1444 |
+
for i, batch_idx in enumerate(tqdm(eval_batch_idx, desc="Evaluating ...", position=2)):
|
1445 |
+
samples = [vectorized_datasets[data_args.eval_split_name][int(idx)] for idx in batch_idx]
|
1446 |
+
batch = data_collator(samples)
|
1447 |
+
labels = batch["labels"]
|
1448 |
+
|
1449 |
+
metrics, pred_ids = pad_shard_unpad(p_eval_step)(state.params, batch.data, min_device_batch=per_device_eval_batch_size)
|
1450 |
+
eval_preds.extend(jax.device_get(pred_ids.reshape(-1, pred_ids.shape[-1])))
|
1451 |
+
eval_metrics.append(metrics)
|
1452 |
+
|
1453 |
+
eval_labels.extend(labels)
|
1454 |
+
|
1455 |
+
# normalize eval metrics
|
1456 |
+
eval_metrics = get_metrics(eval_metrics)
|
1457 |
+
eval_metrics = jax.tree_map(jnp.mean, eval_metrics)
|
1458 |
+
eval_metrics = to_fp32(eval_metrics)
|
1459 |
+
|
1460 |
+
# always run compute metrics
|
1461 |
+
error_rate_metric, pred_str, label_str = compute_metrics(eval_preds, eval_labels)
|
1462 |
+
eval_metrics.update(error_rate_metric)
|
1463 |
+
error_rate_desc = " ".join([f"Eval {key}: {value} |" for key, value in error_rate_metric.items()])
|
1464 |
+
|
1465 |
+
# Print metrics and update progress bar
|
1466 |
+
desc = f"Step... ({step}/{total_train_steps} | Eval Loss: {eval_metrics['loss']} | {error_rate_desc})"
|
1467 |
+
epochs.write(desc)
|
1468 |
+
epochs.desc = desc
|
1469 |
+
|
1470 |
+
# Save metrics
|
1471 |
+
write_wandb_log(eval_metrics, step, prefix="eval")
|
1472 |
+
write_wandb_pred(pred_str, label_str, step)
|
1473 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1474 |
+
# write_eval_metric(summary_writer, eval_metrics, step, pred_str=pred_str)
|
1475 |
+
|
1476 |
+
def save_checkpoint(step):
|
1477 |
+
# save and push checkpoint to the hub
|
1478 |
+
if jax.process_index() == 0:
|
1479 |
+
params = jax.device_get(jax.tree_map(lambda x: x[0], state.params))
|
1480 |
+
model.save_pretrained(training_args.output_dir, params=params)
|
1481 |
+
tokenizer.save_pretrained(training_args.output_dir)
|
1482 |
+
if training_args.push_to_hub:
|
1483 |
+
repo.push_to_hub(commit_message=f"{wandb.run.id}: saving weights and logs of step {int(step / 1000)}k", blocking=False)
|
1484 |
+
|
1485 |
+
logger.info("***** Running training *****")
|
1486 |
+
logger.info(f" Num examples = {num_train_samples}")
|
1487 |
+
logger.info(f" Num Epochs = {num_epochs}")
|
1488 |
+
logger.info(f" Instantaneous batch size per device = {training_args.per_device_train_batch_size}")
|
1489 |
+
logger.info(f" Num gradient accumulation steps = {gradient_accumulation_steps}")
|
1490 |
+
logger.info(f" Total train batch size (w. parallel & distributed) = {batch_size_per_update}")
|
1491 |
+
logger.info(f" Total optimization steps = {total_train_steps}")
|
1492 |
+
logger.info(f" Gradient checkpointing: {config.gradient_checkpointing}")
|
1493 |
+
logger.info(f" Use scan: {config.use_scan}")
|
1494 |
+
logger.info(f" Fuse matmuls: {config.fuse_matmuls}")
|
1495 |
+
|
1496 |
+
train_time = cur_step = 0
|
1497 |
+
epochs = tqdm(range(num_epochs), desc=f"Epoch ... (1/{num_epochs})", position=0)
|
1498 |
+
for epoch in epochs:
|
1499 |
+
if training_args.do_train:
|
1500 |
+
# ======================== Training ================================
|
1501 |
+
train_start = time.time()
|
1502 |
+
|
1503 |
+
# Create sampling rng
|
1504 |
+
rng, input_rng = jax.random.split(rng)
|
1505 |
+
|
1506 |
+
# Generate an epoch by randomly shuffling sampling indices from the train dataset and grouping by length
|
1507 |
+
train_samples_idx = get_grouped_indices(vectorized_datasets[data_args.train_split_name], batch_size_per_update, input_rng)
|
1508 |
+
train_batch_idx = generate_batch_splits(train_samples_idx, batch_size_per_update)
|
1509 |
+
|
1510 |
+
# Gather the indices for creating the batch and do a training step
|
1511 |
+
for step, batch_idx in enumerate(tqdm(train_batch_idx, desc="Training...", position=1), 1):
|
1512 |
+
samples = [vectorized_datasets[data_args.train_split_name][int(idx)] for idx in batch_idx]
|
1513 |
+
batch = data_collator(samples)
|
1514 |
+
batch = shard(batch.data)
|
1515 |
+
try:
|
1516 |
+
state, train_metric = p_train_step(state, batch)
|
1517 |
+
except TypeError as e:
|
1518 |
+
logger.warning("Encountered following error: \n", e)
|
1519 |
+
|
1520 |
+
cur_step = epoch * (num_train_samples // batch_size_per_update) + step
|
1521 |
+
|
1522 |
+
if cur_step % training_args.logging_steps == 0:
|
1523 |
+
# Save metrics
|
1524 |
+
train_metric = unreplicate(train_metric)
|
1525 |
+
train_time += time.time() - train_start
|
1526 |
+
# need to upcast all device arrays to fp32 for wandb logging (jnp.bfloat16 not supported) -> do this here OR in train_step
|
1527 |
+
write_wandb_log(to_fp32(train_metric), cur_step, prefix=data_args.train_split_name)
|
1528 |
+
# we won't log to tensorboard for now (it is fiddly logging param and grad norms on a layer-by-layer basis)
|
1529 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1530 |
+
# write_train_metric(summary_writer, train_metrics, train_time, cur_step)
|
1531 |
+
|
1532 |
+
epochs.write(
|
1533 |
+
f"Step... ({cur_step} | Loss: {train_metric['loss']}, Learning Rate: {train_metric['learning_rate']}, Gradient Norm: {train_metric['grad_norm']})"
|
1534 |
+
)
|
1535 |
+
|
1536 |
+
if cur_step % total_train_steps == 0:
|
1537 |
+
break
|
1538 |
+
|
1539 |
+
if training_args.eval_steps and cur_step % training_args.eval_steps == 0:
|
1540 |
+
run_evaluation(cur_step)
|
1541 |
+
|
1542 |
+
if cur_step % training_args.save_steps == 0:
|
1543 |
+
save_checkpoint(cur_step)
|
1544 |
+
|
1545 |
+
if training_args.eval_steps == 0 and (epoch + 1) != num_epochs:
|
1546 |
+
# run evaluation at the end of the epoch if eval steps are not specified
|
1547 |
+
run_evaluation(cur_step)
|
1548 |
+
save_checkpoint(cur_step)
|
1549 |
+
|
1550 |
+
if training_args.do_train:
|
1551 |
+
save_checkpoint(cur_step)
|
1552 |
+
|
1553 |
+
cur_step = max_steps if max_steps > 0 else cur_step # set step to max steps so that eval happens in alignment with training
|
1554 |
+
|
1555 |
+
if training_args.do_eval:
|
1556 |
+
run_evaluation(cur_step)
|
1557 |
+
|
1558 |
+
# TODO: collapse 'do_predict' into the run_evaluation function
|
1559 |
+
if training_args.do_predict:
|
1560 |
+
for split in [data_args.test_split_name]:
|
1561 |
+
# ======================== Evaluating ==============================
|
1562 |
+
eval_metrics = []
|
1563 |
+
eval_preds = []
|
1564 |
+
eval_labels = []
|
1565 |
+
|
1566 |
+
# Generate eval set by sequentially sampling indices from the test dataset and grouping by length
|
1567 |
+
eval_samples_idx = get_grouped_indices(vectorized_datasets[split], eval_batch_size)
|
1568 |
+
eval_batch_idx = generate_batch_splits(eval_samples_idx, eval_batch_size, drop_last=False)
|
1569 |
+
|
1570 |
+
for i, batch_idx in enumerate(tqdm(eval_batch_idx, desc=f"Predicting {split}...", position=2)):
|
1571 |
+
samples = [vectorized_datasets[split][int(idx)] for idx in batch_idx]
|
1572 |
+
batch = data_collator(samples)
|
1573 |
+
labels = batch["labels"]
|
1574 |
+
|
1575 |
+
metrics, pred_ids = pad_shard_unpad(p_eval_step)(state.params, batch.data, min_device_batch=per_device_eval_batch_size)
|
1576 |
+
eval_preds.extend(jax.device_get(pred_ids.reshape(-1, pred_ids.shape[-1])))
|
1577 |
+
eval_metrics.append(metrics)
|
1578 |
+
|
1579 |
+
eval_labels.extend(labels)
|
1580 |
+
|
1581 |
+
# normalize eval metrics
|
1582 |
+
eval_metrics = get_metrics(eval_metrics)
|
1583 |
+
eval_metrics = jax.tree_map(jnp.mean, eval_metrics)
|
1584 |
+
eval_metrics = to_fp32(eval_metrics)
|
1585 |
+
|
1586 |
+
# always run compute metrics
|
1587 |
+
error_rate_metric, pred_str, label_str = compute_metrics(eval_preds, eval_labels)
|
1588 |
+
eval_metrics.update(error_rate_metric)
|
1589 |
+
error_rate_desc = " ".join([f"Eval {key}: {value} |" for key, value in error_rate_metric.items()])
|
1590 |
+
|
1591 |
+
# Print metrics and update progress bar
|
1592 |
+
desc = f"Step... ({cur_step}/{total_train_steps} | Eval Loss: {eval_metrics['loss']} | {error_rate_desc})"
|
1593 |
+
epochs.write(desc)
|
1594 |
+
epochs.desc = desc
|
1595 |
+
|
1596 |
+
# Save metrics
|
1597 |
+
write_wandb_log(eval_metrics, cur_step, prefix=split)
|
1598 |
+
write_wandb_pred(pred_str, label_str, cur_step, prefix=split)
|
1599 |
+
# if has_tensorboard and jax.process_index() == 0:
|
1600 |
+
# write_eval_metric(summary_writer, eval_metrics, cur_step, pred_str=pred_str)
|
1601 |
+
|
1602 |
+
|
1603 |
+
if __name__ == "__main__":
|
1604 |
+
main()
|
wandb/run-20220731_124004-aa3ycswy/files/config.yaml
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
wandb_version: 1
|
2 |
+
|
3 |
+
_wandb:
|
4 |
+
desc: null
|
5 |
+
value:
|
6 |
+
cli_version: 0.12.9
|
7 |
+
code_path: code/run_flax_speech_recognition_ctc.py
|
8 |
+
framework: huggingface
|
9 |
+
huggingface_version: 4.21.0
|
10 |
+
is_jupyter_run: false
|
11 |
+
is_kaggle_kernel: false
|
12 |
+
python_version: 3.8.10
|
13 |
+
start_time: 1659271204
|
14 |
+
t:
|
15 |
+
1:
|
16 |
+
- 1
|
17 |
+
- 2
|
18 |
+
- 3
|
19 |
+
- 11
|
20 |
+
- 12
|
21 |
+
3:
|
22 |
+
- 13
|
23 |
+
4: 3.8.10
|
24 |
+
5: 0.12.9
|
25 |
+
6: 4.21.0
|
26 |
+
8:
|
27 |
+
- 5
|
wandb/run-20220731_124004-aa3ycswy/files/diff.patch
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_124004-aa3ycswy/files/output.log
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_124004-aa3ycswy/files/requirements.txt
ADDED
@@ -0,0 +1,158 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
absl-py==1.0.0
|
2 |
+
aiohttp==3.8.1
|
3 |
+
aiosignal==1.2.0
|
4 |
+
appdirs==1.4.4
|
5 |
+
astunparse==1.6.3
|
6 |
+
async-timeout==4.0.2
|
7 |
+
attrs==21.4.0
|
8 |
+
audioread==2.1.9
|
9 |
+
backcall==0.2.0
|
10 |
+
cachetools==4.2.4
|
11 |
+
certifi==2021.10.8
|
12 |
+
cffi==1.15.1
|
13 |
+
charset-normalizer==2.0.10
|
14 |
+
chex==0.1.3
|
15 |
+
click==8.0.3
|
16 |
+
cloud-tpu-client==0.10
|
17 |
+
cloud-tpu-profiler==2.4.0
|
18 |
+
clu==0.0.6
|
19 |
+
colorama==0.4.5
|
20 |
+
commonmark==0.9.1
|
21 |
+
configparser==5.2.0
|
22 |
+
contextlib2==21.6.0
|
23 |
+
cycler==0.11.0
|
24 |
+
datasets==2.4.0
|
25 |
+
decorator==5.1.0
|
26 |
+
dill==0.3.4
|
27 |
+
dm-tree==0.1.6
|
28 |
+
docker-pycreds==0.4.0
|
29 |
+
etils==0.6.0
|
30 |
+
exceptiongroup==1.0.0rc8
|
31 |
+
filelock==3.4.2
|
32 |
+
flatbuffers==2.0
|
33 |
+
flax==0.5.3
|
34 |
+
fonttools==4.28.5
|
35 |
+
frozenlist==1.2.0
|
36 |
+
fsspec==2021.11.1
|
37 |
+
future==0.18.2
|
38 |
+
gast==0.4.0
|
39 |
+
gitdb==4.0.9
|
40 |
+
gitpython==3.1.26
|
41 |
+
google-api-core==1.31.5
|
42 |
+
google-api-python-client==1.8.0
|
43 |
+
google-auth-httplib2==0.1.0
|
44 |
+
google-auth-oauthlib==0.4.6
|
45 |
+
google-auth==2.3.3
|
46 |
+
google-pasta==0.2.0
|
47 |
+
googleapis-common-protos==1.54.0
|
48 |
+
grpcio==1.43.0
|
49 |
+
h5py==3.6.0
|
50 |
+
httplib2==0.20.2
|
51 |
+
huggingface-hub==0.2.1
|
52 |
+
hypothesis==6.53.0
|
53 |
+
idna==3.3
|
54 |
+
importlib-metadata==4.10.0
|
55 |
+
importlib-resources==5.4.0
|
56 |
+
ipython==7.31.0
|
57 |
+
jax==0.3.15
|
58 |
+
jaxlib==0.3.15
|
59 |
+
jedi==0.18.1
|
60 |
+
jiwer==2.3.0
|
61 |
+
joblib==1.1.0
|
62 |
+
keras-preprocessing==1.1.2
|
63 |
+
keras==2.7.0
|
64 |
+
kiwisolver==1.3.2
|
65 |
+
libclang==12.0.0
|
66 |
+
librosa==0.9.2
|
67 |
+
libtpu-nightly==0.1.dev20220722
|
68 |
+
llvmlite==0.39.0
|
69 |
+
markdown==3.3.6
|
70 |
+
matplotlib-inline==0.1.3
|
71 |
+
matplotlib==3.5.1
|
72 |
+
ml-collections==0.1.0
|
73 |
+
msgpack==1.0.3
|
74 |
+
multidict==5.2.0
|
75 |
+
multiprocess==0.70.12.2
|
76 |
+
numba==0.56.0
|
77 |
+
numpy==1.22.0
|
78 |
+
oauth2client==4.1.3
|
79 |
+
oauthlib==3.1.1
|
80 |
+
opt-einsum==3.3.0
|
81 |
+
optax==0.1.3
|
82 |
+
packaging==21.3
|
83 |
+
pandas==1.3.5
|
84 |
+
parso==0.8.3
|
85 |
+
pathtools==0.1.2
|
86 |
+
pexpect==4.8.0
|
87 |
+
pickleshare==0.7.5
|
88 |
+
pillow==9.0.0
|
89 |
+
pip==22.2.1
|
90 |
+
pkg-resources==0.0.0
|
91 |
+
pooch==1.6.0
|
92 |
+
promise==2.3
|
93 |
+
prompt-toolkit==3.0.24
|
94 |
+
protobuf==3.19.1
|
95 |
+
psutil==5.9.0
|
96 |
+
ptyprocess==0.7.0
|
97 |
+
pyarrow==6.0.1
|
98 |
+
pyasn1-modules==0.2.8
|
99 |
+
pyasn1==0.4.8
|
100 |
+
pycparser==2.21
|
101 |
+
pyctcdecode==0.4.0
|
102 |
+
pygments==2.11.1
|
103 |
+
pygtrie==2.5.0
|
104 |
+
pyparsing==3.0.6
|
105 |
+
python-dateutil==2.8.2
|
106 |
+
python-levenshtein==0.12.2
|
107 |
+
pytz==2021.3
|
108 |
+
pyyaml==6.0
|
109 |
+
regex==2021.11.10
|
110 |
+
requests-oauthlib==1.3.0
|
111 |
+
requests==2.27.0
|
112 |
+
resampy==0.3.1
|
113 |
+
responses==0.18.0
|
114 |
+
rich==11.2.0
|
115 |
+
rsa==4.8
|
116 |
+
sacremoses==0.0.46
|
117 |
+
scikit-learn==1.1.1
|
118 |
+
scipy==1.7.3
|
119 |
+
sentry-sdk==1.5.2
|
120 |
+
setuptools==44.0.0
|
121 |
+
shortuuid==1.0.8
|
122 |
+
six==1.16.0
|
123 |
+
smmap==5.0.0
|
124 |
+
sortedcontainers==2.4.0
|
125 |
+
soundfile==0.10.3.post1
|
126 |
+
sox==1.4.1
|
127 |
+
subprocess32==3.5.4
|
128 |
+
tensorboard-data-server==0.6.1
|
129 |
+
tensorboard-plugin-wit==1.8.0
|
130 |
+
tensorboard==2.7.0
|
131 |
+
tensorflow-cpu==2.7.0
|
132 |
+
tensorflow-datasets==4.4.0
|
133 |
+
tensorflow-estimator==2.7.0
|
134 |
+
tensorflow-io-gcs-filesystem==0.23.1
|
135 |
+
tensorflow-metadata==1.5.0
|
136 |
+
tensorflow==2.7.0
|
137 |
+
tensorstore==0.1.21
|
138 |
+
termcolor==1.1.0
|
139 |
+
threadpoolctl==3.1.0
|
140 |
+
tokenizers==0.11.2
|
141 |
+
toolz==0.11.2
|
142 |
+
torch==1.12.0
|
143 |
+
torchaudio==0.12.0+cpu
|
144 |
+
tqdm==4.62.3
|
145 |
+
traitlets==5.1.1
|
146 |
+
transformers==4.21.0
|
147 |
+
typing-extensions==4.3.0
|
148 |
+
uritemplate==3.0.1
|
149 |
+
urllib3==1.26.7
|
150 |
+
wandb==0.12.9
|
151 |
+
wcwidth==0.2.5
|
152 |
+
werkzeug==2.0.2
|
153 |
+
wheel==0.37.1
|
154 |
+
wrapt==1.13.3
|
155 |
+
xxhash==2.0.2
|
156 |
+
yarl==1.7.2
|
157 |
+
yaspin==2.1.0
|
158 |
+
zipp==3.7.0
|
wandb/run-20220731_124004-aa3ycswy/files/wandb-metadata.json
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"os": "Linux-5.4.0-1043-gcp-x86_64-with-glibc2.29",
|
3 |
+
"python": "3.8.10",
|
4 |
+
"heartbeatAt": "2022-07-31T12:40:07.559289",
|
5 |
+
"startedAt": "2022-07-31T12:40:04.017327",
|
6 |
+
"docker": null,
|
7 |
+
"cpu_count": 96,
|
8 |
+
"cuda": null,
|
9 |
+
"args": [
|
10 |
+
"--model_name_or_path=facebook/wav2vec2-xls-r-1b",
|
11 |
+
"--hub_model_id=NbAiLab/wav2vec2-1b-npsc-nst",
|
12 |
+
"--tokenizer_name=./",
|
13 |
+
"--output_dir=./",
|
14 |
+
"--overwrite_output_dir",
|
15 |
+
"--num_train_epochs=40",
|
16 |
+
"--per_device_train_batch_size=10",
|
17 |
+
"--per_device_eval_batch_size=10",
|
18 |
+
"--gradient_accumulation_steps=1",
|
19 |
+
"--precision=full_mixed",
|
20 |
+
"--matmul_precision=bfloat16",
|
21 |
+
"--learning_rate=8e-4",
|
22 |
+
"--warmup_steps=4000",
|
23 |
+
"--length_column_name=input_length",
|
24 |
+
"--evaluation_strategy=steps",
|
25 |
+
"--text_column_name=text",
|
26 |
+
"--save_steps=3783",
|
27 |
+
"--eval_steps=3783",
|
28 |
+
"--logging_steps=100",
|
29 |
+
"--layerdrop=0.041",
|
30 |
+
"--attention_dropout=0.094",
|
31 |
+
"--activation_dropout=0.055",
|
32 |
+
"--hidden_dropout=0.047",
|
33 |
+
"--save_total_limit=5",
|
34 |
+
"--freeze_feature_encoder",
|
35 |
+
"--feat_proj_dropout=0.04",
|
36 |
+
"--mask_time_prob=0.082",
|
37 |
+
"--mask_time_length=10",
|
38 |
+
"--mask_feature_prob=0.25",
|
39 |
+
"--mask_feature_length=64",
|
40 |
+
"--gradient_checkpointing",
|
41 |
+
"--min_duration_in_seconds=0.5",
|
42 |
+
"--max_duration_in_seconds=20.0",
|
43 |
+
"--use_auth_token",
|
44 |
+
"--seed=42",
|
45 |
+
"--group_by_length",
|
46 |
+
"--do_train",
|
47 |
+
"--do_eval",
|
48 |
+
"--push_to_hub",
|
49 |
+
"--preprocessing_num_workers=32",
|
50 |
+
"--ctc_zero_infinity",
|
51 |
+
"--do_lower_case",
|
52 |
+
"--wandb_project=wav2vec2",
|
53 |
+
"--wandb_name=wav2vec2-1b-npsc-nst",
|
54 |
+
"--remove_punctuation"
|
55 |
+
],
|
56 |
+
"state": "running",
|
57 |
+
"program": "run_flax_speech_recognition_ctc.py",
|
58 |
+
"codePath": "run_flax_speech_recognition_ctc.py",
|
59 |
+
"git": {
|
60 |
+
"remote": "https://huggingface.co/NbAiLab/wav2vec2-1b-npsc-nst",
|
61 |
+
"commit": "ce31127160a53192d2ac9bed788e4c4291ce0652"
|
62 |
+
},
|
63 |
+
"email": "versae@gmail.com",
|
64 |
+
"root": "/data/wav2vec2-1b-npsc-nst",
|
65 |
+
"host": "t1v-n-eedfb410-w-0",
|
66 |
+
"username": "javierr",
|
67 |
+
"executable": "/data/flax/bin/python"
|
68 |
+
}
|
wandb/run-20220731_124004-aa3ycswy/files/wandb-summary.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
{"train/grad_norm": 3.1875, "layer_grad_norm/": {"lm_head": {"bias": 0.11962890625, "kernel": 2.1875}, "wav2vec2": {"encoder": {"layer_norm": {"bias": 0.1083984375, "scale": 0.0830078125}, "layers": {"0": {"attention": {"k_proj": {"bias": 0.0001087188720703125, "kernel": 0.058349609375}, "out_proj": {"bias": 0.04150390625, "kernel": 0.287109375}, "q_proj": {"bias": 0.0098876953125, "kernel": 0.0810546875}, "v_proj": {"bias": 0.062255859375, "kernel": 0.328125}}, "feed_forward": {"intermediate_dense": {"bias": 0.03515625, "kernel": 0.52734375}, "output_dense": {"bias": 0.00738525390625, "kernel": 0.453125}}, "final_layer_norm": {"bias": 0.1513671875, "scale": 0.291015625}, "layer_norm": {"bias": 0.16796875, "scale": 0.16015625}}, "1": {"attention": {"k_proj": {"bias": 8.678436279296875e-05, "kernel": 0.05078125}, "out_proj": {"bias": 0.0076904296875, "kernel": 0.1455078125}, "q_proj": {"bias": 0.004669189453125, "kernel": 0.0478515625}, "v_proj": {"bias": 0.0159912109375, "kernel": 0.1103515625}}, "feed_forward": {"intermediate_dense": {"bias": 0.01361083984375, "kernel": 0.2197265625}, "output_dense": {"bias": 0.00732421875, "kernel": 0.17578125}}, "final_layer_norm": {"bias": 0.0302734375, "scale": 0.037109375}, "layer_norm": {"bias": 0.046875, "scale": 0.0380859375}}, "10": {"attention": {"k_proj": {"bias": 4.220008850097656e-05, "kernel": 0.06689453125}, "out_proj": {"bias": 0.0047607421875, "kernel": 0.10595703125}, "q_proj": {"bias": 0.004638671875, "kernel": 0.0732421875}, "v_proj": {"bias": 0.0086669921875, "kernel": 0.095703125}}, "feed_forward": {"intermediate_dense": {"bias": 0.0087890625, "kernel": 0.142578125}, "output_dense": {"bias": 0.00457763671875, "kernel": 0.10498046875}}, "final_layer_norm": {"bias": 0.01806640625, "scale": 0.0174560546875}, "layer_norm": {"bias": 0.0244140625, "scale": 0.025146484375}}, "11": {"attention": {"k_proj": {"bias": 9.584426879882812e-05, "kernel": 0.09375}, "out_proj": {"bias": 0.004638671875, "kernel": 0.14453125}, "q_proj": {"bias": 0.006103515625, "kernel": 0.09619140625}, "v_proj": {"bias": 0.009521484375, "kernel": 0.138671875}}, "feed_forward": {"intermediate_dense": {"bias": 0.0079345703125, "kernel": 0.1318359375}, "output_dense": {"bias": 0.0045166015625, "kernel": 0.0927734375}}, "final_layer_norm": {"bias": 0.016357421875, "scale": 0.01806640625}, "layer_norm": {"bias": 0.0264892578125, "scale": 0.03125}}, "12": {"attention": {"k_proj": {"bias": 4.57763671875e-05, "kernel": 0.0732421875}, "out_proj": {"bias": 0.00457763671875, "kernel": 0.109375}, "q_proj": {"bias": 0.00482177734375, "kernel": 0.076171875}, "v_proj": {"bias": 0.0086669921875, "kernel": 0.1044921875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00830078125, "kernel": 0.1328125}, "output_dense": {"bias": 0.00445556640625, "kernel": 0.09326171875}}, "final_layer_norm": {"bias": 0.0179443359375, "scale": 0.02001953125}, "layer_norm": {"bias": 0.0224609375, "scale": 0.029541015625}}, "13": {"attention": {"k_proj": {"bias": 0.00010013580322265625, "kernel": 0.109375}, "out_proj": {"bias": 0.0045166015625, "kernel": 0.14453125}, "q_proj": {"bias": 0.00640869140625, "kernel": 0.10693359375}, "v_proj": {"bias": 0.009033203125, "kernel": 0.140625}}, "feed_forward": {"intermediate_dense": {"bias": 0.008056640625, "kernel": 0.12890625}, "output_dense": {"bias": 0.00439453125, "kernel": 0.09228515625}}, "final_layer_norm": {"bias": 0.0166015625, "scale": 0.016357421875}, "layer_norm": {"bias": 0.024169921875, "scale": 0.032470703125}}, "14": {"attention": {"k_proj": {"bias": 9.489059448242188e-05, "kernel": 0.0751953125}, "out_proj": {"bias": 0.00439453125, "kernel": 0.12109375}, "q_proj": {"bias": 0.00469970703125, "kernel": 0.078125}, "v_proj": {"bias": 0.008056640625, "kernel": 0.1171875}}, "feed_forward": {"intermediate_dense": {"bias": 0.0081787109375, "kernel": 0.130859375}, "output_dense": {"bias": 0.0042724609375, "kernel": 0.095703125}}, "final_layer_norm": {"bias": 0.01806640625, "scale": 0.018798828125}, "layer_norm": {"bias": 0.02001953125, "scale": 0.0244140625}}, "15": {"attention": {"k_proj": {"bias": 0.0001583099365234375, "kernel": 0.1240234375}, "out_proj": {"bias": 0.00421142578125, "kernel": 0.1748046875}, "q_proj": {"bias": 0.00732421875, "kernel": 0.1259765625}, "v_proj": {"bias": 0.00885009765625, "kernel": 0.15234375}}, "feed_forward": {"intermediate_dense": {"bias": 0.007080078125, "kernel": 0.1142578125}, "output_dense": {"bias": 0.00408935546875, "kernel": 0.09130859375}}, "final_layer_norm": {"bias": 0.0137939453125, "scale": 0.0130615234375}, "layer_norm": {"bias": 0.0252685546875, "scale": 0.0308837890625}}, "16": {"attention": {"k_proj": {"bias": 7.2479248046875e-05, "kernel": 0.08447265625}, "out_proj": {"bias": 0.00408935546875, "kernel": 0.11474609375}, "q_proj": {"bias": 0.00537109375, "kernel": 0.087890625}, "v_proj": {"bias": 0.007537841796875, "kernel": 0.1044921875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00665283203125, "kernel": 0.109375}, "output_dense": {"bias": 0.00396728515625, "kernel": 0.0869140625}}, "final_layer_norm": {"bias": 0.0128173828125, "scale": 0.0130615234375}, "layer_norm": {"bias": 0.0205078125, "scale": 0.0230712890625}}, "17": {"attention": {"k_proj": {"bias": 3.6716461181640625e-05, "kernel": 0.05419921875}, "out_proj": {"bias": 0.004119873046875, "kernel": 0.08349609375}, "q_proj": {"bias": 0.0031890869140625, "kernel": 0.055419921875}, "v_proj": {"bias": 0.00738525390625, "kernel": 0.0849609375}}, "feed_forward": {"intermediate_dense": {"bias": 0.00677490234375, "kernel": 0.111328125}, "output_dense": {"bias": 0.00396728515625, "kernel": 0.0859375}}, "final_layer_norm": {"bias": 0.0137939453125, "scale": 0.0135498046875}, "layer_norm": {"bias": 0.0181884765625, "scale": 0.017822265625}}, "18": {"attention": {"k_proj": {"bias": 8.106231689453125e-05, "kernel": 0.091796875}, "out_proj": {"bias": 0.00396728515625, "kernel": 0.12255859375}, "q_proj": {"bias": 0.00537109375, "kernel": 0.09375}, "v_proj": {"bias": 0.0074462890625, "kernel": 0.111328125}}, "feed_forward": {"intermediate_dense": {"bias": 0.0064697265625, "kernel": 0.10693359375}, "output_dense": {"bias": 0.00384521484375, "kernel": 0.08349609375}}, "final_layer_norm": {"bias": 0.013427734375, "scale": 0.0135498046875}, "layer_norm": {"bias": 0.0198974609375, "scale": 0.0211181640625}}, "19": {"attention": {"k_proj": {"bias": 5.817413330078125e-05, "kernel": 0.0625}, "out_proj": {"bias": 0.003875732421875, "kernel": 0.0927734375}, "q_proj": {"bias": 0.003936767578125, "kernel": 0.064453125}, "v_proj": {"bias": 0.006866455078125, "kernel": 0.08837890625}}, "feed_forward": {"intermediate_dense": {"bias": 0.006011962890625, "kernel": 0.103515625}, "output_dense": {"bias": 0.0037841796875, "kernel": 0.0810546875}}, "final_layer_norm": {"bias": 0.0111083984375, "scale": 0.01031494140625}, "layer_norm": {"bias": 0.01708984375, "scale": 0.018798828125}}, "2": {"attention": {"k_proj": {"bias": 6.818771362304688e-05, "kernel": 0.07080078125}, "out_proj": {"bias": 0.007537841796875, "kernel": 0.154296875}, "q_proj": {"bias": 0.0064697265625, "kernel": 0.0703125}, "v_proj": {"bias": 0.01611328125, "kernel": 0.134765625}}, "feed_forward": {"intermediate_dense": {"bias": 0.013671875, "kernel": 0.240234375}, "output_dense": {"bias": 0.00689697265625, "kernel": 0.166015625}}, "final_layer_norm": {"bias": 0.0341796875, "scale": 0.031005859375}, "layer_norm": {"bias": 0.047119140625, "scale": 0.05419921875}}, "20": {"attention": {"k_proj": {"bias": 1.8596649169921875e-05, "kernel": 0.03857421875}, "out_proj": {"bias": 0.00390625, "kernel": 0.0615234375}, "q_proj": {"bias": 0.0022735595703125, "kernel": 0.03857421875}, "v_proj": {"bias": 0.00628662109375, "kernel": 0.0615234375}}, "feed_forward": {"intermediate_dense": {"bias": 0.006256103515625, "kernel": 0.109375}, "output_dense": {"bias": 0.0037841796875, "kernel": 0.0810546875}}, "final_layer_norm": {"bias": 0.0123291015625, "scale": 0.0115966796875}, "layer_norm": {"bias": 0.01422119140625, "scale": 0.01373291015625}}, "21": {"attention": {"k_proj": {"bias": 4.649162292480469e-05, "kernel": 0.0556640625}, "out_proj": {"bias": 0.00384521484375, "kernel": 0.0869140625}, "q_proj": {"bias": 0.0030517578125, "kernel": 0.05712890625}, "v_proj": {"bias": 0.006561279296875, "kernel": 0.0849609375}}, "feed_forward": {"intermediate_dense": {"bias": 0.006072998046875, "kernel": 0.107421875}, "output_dense": {"bias": 0.0037689208984375, "kernel": 0.0791015625}}, "final_layer_norm": {"bias": 0.01171875, "scale": 0.011474609375}, "layer_norm": {"bias": 0.01422119140625, "scale": 0.0152587890625}}, "22": {"attention": {"k_proj": {"bias": 3.123283386230469e-05, "kernel": 0.05615234375}, "out_proj": {"bias": 0.0038604736328125, "kernel": 0.078125}, "q_proj": {"bias": 0.0031890869140625, "kernel": 0.056640625}, "v_proj": {"bias": 0.006744384765625, "kernel": 0.0771484375}}, "feed_forward": {"intermediate_dense": {"bias": 0.0062255859375, "kernel": 0.10888671875}, "output_dense": {"bias": 0.0037841796875, "kernel": 0.07958984375}}, "final_layer_norm": {"bias": 0.01220703125, "scale": 0.0113525390625}, "layer_norm": {"bias": 0.0162353515625, "scale": 0.0181884765625}}, "23": {"attention": {"k_proj": {"bias": 0.00011014938354492188, "kernel": 0.09716796875}, "out_proj": {"bias": 0.003814697265625, "kernel": 0.130859375}, "q_proj": {"bias": 0.0052490234375, "kernel": 0.09716796875}, "v_proj": {"bias": 0.00750732421875, "kernel": 0.123046875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00579833984375, "kernel": 0.1044921875}, "output_dense": {"bias": 0.0037841796875, "kernel": 0.0751953125}}, "final_layer_norm": {"bias": 0.0111083984375, "scale": 0.0125732421875}, "layer_norm": {"bias": 0.0191650390625, "scale": 0.0228271484375}}, "24": {"attention": {"k_proj": {"bias": 7.343292236328125e-05, "kernel": 0.09326171875}, "out_proj": {"bias": 0.003692626953125, "kernel": 0.1103515625}, "q_proj": {"bias": 0.00469970703125, "kernel": 0.091796875}, "v_proj": {"bias": 0.007568359375, "kernel": 0.10888671875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00592041015625, "kernel": 0.109375}, "output_dense": {"bias": 0.00360107421875, "kernel": 0.07177734375}}, "final_layer_norm": {"bias": 0.0118408203125, "scale": 0.012939453125}, "layer_norm": {"bias": 0.01953125, "scale": 0.021484375}}, "25": {"attention": {"k_proj": {"bias": 5.9604644775390625e-05, "kernel": 0.0654296875}, "out_proj": {"bias": 0.003662109375, "kernel": 0.09765625}, "q_proj": {"bias": 0.0038299560546875, "kernel": 0.06640625}, "v_proj": {"bias": 0.007080078125, "kernel": 0.09765625}}, "feed_forward": {"intermediate_dense": {"bias": 0.00592041015625, "kernel": 0.1103515625}, "output_dense": {"bias": 0.0035858154296875, "kernel": 0.0712890625}}, "final_layer_norm": {"bias": 0.0120849609375, "scale": 0.01336669921875}, "layer_norm": {"bias": 0.0169677734375, "scale": 0.0244140625}}, "26": {"attention": {"k_proj": {"bias": 5.2928924560546875e-05, "kernel": 0.068359375}, "out_proj": {"bias": 0.00360107421875, "kernel": 0.0927734375}, "q_proj": {"bias": 0.003814697265625, "kernel": 0.0693359375}, "v_proj": {"bias": 0.007049560546875, "kernel": 0.09228515625}}, "feed_forward": {"intermediate_dense": {"bias": 0.00567626953125, "kernel": 0.10107421875}, "output_dense": {"bias": 0.0035247802734375, "kernel": 0.0703125}}, "final_layer_norm": {"bias": 0.01165771484375, "scale": 0.01177978515625}, "layer_norm": {"bias": 0.01708984375, "scale": 0.02001953125}}, "27": {"attention": {"k_proj": {"bias": 0.00010967254638671875, "kernel": 0.11083984375}, "out_proj": {"bias": 0.00341796875, "kernel": 0.125}, "q_proj": {"bias": 0.00604248046875, "kernel": 0.1103515625}, "v_proj": {"bias": 0.007659912109375, "kernel": 0.12353515625}}, "feed_forward": {"intermediate_dense": {"bias": 0.0057373046875, "kernel": 0.099609375}, "output_dense": {"bias": 0.00335693359375, "kernel": 0.068359375}}, "final_layer_norm": {"bias": 0.011962890625, "scale": 0.01190185546875}, "layer_norm": {"bias": 0.021728515625, "scale": 0.032470703125}}, "28": {"attention": {"k_proj": {"bias": 8.535385131835938e-05, "kernel": 0.0869140625}, "out_proj": {"bias": 0.003265380859375, "kernel": 0.1162109375}, "q_proj": {"bias": 0.004852294921875, "kernel": 0.0908203125}, "v_proj": {"bias": 0.00726318359375, "kernel": 0.119140625}}, "feed_forward": {"intermediate_dense": {"bias": 0.005340576171875, "kernel": 0.09326171875}, "output_dense": {"bias": 0.00323486328125, "kernel": 0.06591796875}}, "final_layer_norm": {"bias": 0.01123046875, "scale": 0.01202392578125}, "layer_norm": {"bias": 0.019287109375, "scale": 0.0244140625}}, "29": {"attention": {"k_proj": {"bias": 7.152557373046875e-05, "kernel": 0.08837890625}, "out_proj": {"bias": 0.0031890869140625, "kernel": 0.10595703125}, "q_proj": {"bias": 0.00482177734375, "kernel": 0.091796875}, "v_proj": {"bias": 0.00714111328125, "kernel": 0.11083984375}}, "feed_forward": {"intermediate_dense": {"bias": 0.0054931640625, "kernel": 0.1015625}, "output_dense": {"bias": 0.00311279296875, "kernel": 0.064453125}}, "final_layer_norm": {"bias": 0.01080322265625, "scale": 0.0096435546875}, "layer_norm": {"bias": 0.020263671875, "scale": 0.0272216796875}}, "3": {"attention": {"k_proj": {"bias": 0.0001468658447265625, "kernel": 0.1044921875}, "out_proj": {"bias": 0.00701904296875, "kernel": 0.2109375}, "q_proj": {"bias": 0.00836181640625, "kernel": 0.10546875}, "v_proj": {"bias": 0.0133056640625, "kernel": 0.169921875}}, "feed_forward": {"intermediate_dense": {"bias": 0.01312255859375, "kernel": 0.220703125}, "output_dense": {"bias": 0.006561279296875, "kernel": 0.1552734375}}, "final_layer_norm": {"bias": 0.0301513671875, "scale": 0.0296630859375}, "layer_norm": {"bias": 0.038818359375, "scale": 0.07568359375}}, "30": {"attention": {"k_proj": {"bias": 9.632110595703125e-05, "kernel": 0.09765625}, "out_proj": {"bias": 0.0030517578125, "kernel": 0.11083984375}, "q_proj": {"bias": 0.00494384765625, "kernel": 0.0986328125}, "v_proj": {"bias": 0.006805419921875, "kernel": 0.115234375}}, "feed_forward": {"intermediate_dense": {"bias": 0.005615234375, "kernel": 0.107421875}, "output_dense": {"bias": 0.00299072265625, "kernel": 0.064453125}}, "final_layer_norm": {"bias": 0.01153564453125, "scale": 0.01275634765625}, "layer_norm": {"bias": 0.017822265625, "scale": 0.02490234375}}, "31": {"attention": {"k_proj": {"bias": 8.58306884765625e-05, "kernel": 0.08349609375}, "out_proj": {"bias": 0.0029144287109375, "kernel": 0.0986328125}, "q_proj": {"bias": 0.0047607421875, "kernel": 0.08935546875}, "v_proj": {"bias": 0.00628662109375, "kernel": 0.10498046875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00537109375, "kernel": 0.1015625}, "output_dense": {"bias": 0.00286865234375, "kernel": 0.06201171875}}, "final_layer_norm": {"bias": 0.01116943359375, "scale": 0.010498046875}, "layer_norm": {"bias": 0.0181884765625, "scale": 0.0260009765625}}, "32": {"attention": {"k_proj": {"bias": 9.1552734375e-05, "kernel": 0.099609375}, "out_proj": {"bias": 0.0028228759765625, "kernel": 0.09619140625}, "q_proj": {"bias": 0.00537109375, "kernel": 0.1025390625}, "v_proj": {"bias": 0.00634765625, "kernel": 0.10693359375}}, "feed_forward": {"intermediate_dense": {"bias": 0.005706787109375, "kernel": 0.1064453125}, "output_dense": {"bias": 0.002716064453125, "kernel": 0.060546875}}, "final_layer_norm": {"bias": 0.012939453125, "scale": 0.0120849609375}, "layer_norm": {"bias": 0.019287109375, "scale": 0.0245361328125}}, "33": {"attention": {"k_proj": {"bias": 9.107589721679688e-05, "kernel": 0.09033203125}, "out_proj": {"bias": 0.0027008056640625, "kernel": 0.095703125}, "q_proj": {"bias": 0.00482177734375, "kernel": 0.091796875}, "v_proj": {"bias": 0.00634765625, "kernel": 0.10546875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00555419921875, "kernel": 0.10107421875}, "output_dense": {"bias": 0.002593994140625, "kernel": 0.06005859375}}, "final_layer_norm": {"bias": 0.0133056640625, "scale": 0.0128173828125}, "layer_norm": {"bias": 0.0184326171875, "scale": 0.022705078125}}, "34": {"attention": {"k_proj": {"bias": 0.00011682510375976562, "kernel": 0.107421875}, "out_proj": {"bias": 0.0025177001953125, "kernel": 0.09375}, "q_proj": {"bias": 0.00555419921875, "kernel": 0.10595703125}, "v_proj": {"bias": 0.00616455078125, "kernel": 0.1064453125}}, "feed_forward": {"intermediate_dense": {"bias": 0.0054931640625, "kernel": 0.09765625}, "output_dense": {"bias": 0.00238037109375, "kernel": 0.0595703125}}, "final_layer_norm": {"bias": 0.01458740234375, "scale": 0.01483154296875}, "layer_norm": {"bias": 0.01904296875, "scale": 0.02734375}}, "35": {"attention": {"k_proj": {"bias": 0.0001373291015625, "kernel": 0.103515625}, "out_proj": {"bias": 0.002288818359375, "kernel": 0.0966796875}, "q_proj": {"bias": 0.00531005859375, "kernel": 0.10888671875}, "v_proj": {"bias": 0.005401611328125, "kernel": 0.099609375}}, "feed_forward": {"intermediate_dense": {"bias": 0.004486083984375, "kernel": 0.078125}, "output_dense": {"bias": 0.0021820068359375, "kernel": 0.05078125}}, "final_layer_norm": {"bias": 0.01324462890625, "scale": 0.0133056640625}, "layer_norm": {"bias": 0.021484375, "scale": 0.03076171875}}, "36": {"attention": {"k_proj": {"bias": 0.00010919570922851562, "kernel": 0.083984375}, "out_proj": {"bias": 0.0021514892578125, "kernel": 0.0751953125}, "q_proj": {"bias": 0.004425048828125, "kernel": 0.08544921875}, "v_proj": {"bias": 0.00445556640625, "kernel": 0.076171875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00384521484375, "kernel": 0.06689453125}, "output_dense": {"bias": 0.0020751953125, "kernel": 0.04345703125}}, "final_layer_norm": {"bias": 0.01025390625, "scale": 0.009521484375}, "layer_norm": {"bias": 0.0155029296875, "scale": 0.0185546875}}, "37": {"attention": {"k_proj": {"bias": 9.632110595703125e-05, "kernel": 0.08984375}, "out_proj": {"bias": 0.0020751953125, "kernel": 0.068359375}, "q_proj": {"bias": 0.0047607421875, "kernel": 0.091796875}, "v_proj": {"bias": 0.00439453125, "kernel": 0.07421875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00384521484375, "kernel": 0.0673828125}, "output_dense": {"bias": 0.001983642578125, "kernel": 0.04345703125}}, "final_layer_norm": {"bias": 0.01025390625, "scale": 0.0101318359375}, "layer_norm": {"bias": 0.0166015625, "scale": 0.022216796875}}, "38": {"attention": {"k_proj": {"bias": 0.0001220703125, "kernel": 0.0830078125}, "out_proj": {"bias": 0.001983642578125, "kernel": 0.0673828125}, "q_proj": {"bias": 0.00439453125, "kernel": 0.08349609375}, "v_proj": {"bias": 0.004180908203125, "kernel": 0.0732421875}}, "feed_forward": {"intermediate_dense": {"bias": 0.0035400390625, "kernel": 0.06201171875}, "output_dense": {"bias": 0.00191497802734375, "kernel": 0.041748046875}}, "final_layer_norm": {"bias": 0.010498046875, "scale": 0.0146484375}, "layer_norm": {"bias": 0.01611328125, "scale": 0.0177001953125}}, "39": {"attention": {"k_proj": {"bias": 9.822845458984375e-05, "kernel": 0.08203125}, "out_proj": {"bias": 0.001861572265625, "kernel": 0.0673828125}, "q_proj": {"bias": 0.004180908203125, "kernel": 0.0859375}, "v_proj": {"bias": 0.004302978515625, "kernel": 0.07373046875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00323486328125, "kernel": 0.0546875}, "output_dense": {"bias": 0.0018157958984375, "kernel": 0.03857421875}}, "final_layer_norm": {"bias": 0.0093994140625, "scale": 0.0125732421875}, "layer_norm": {"bias": 0.016845703125, "scale": 0.022216796875}}, "4": {"attention": {"k_proj": {"bias": 0.000171661376953125, "kernel": 0.123046875}, "out_proj": {"bias": 0.006561279296875, "kernel": 0.2255859375}, "q_proj": {"bias": 0.00946044921875, "kernel": 0.126953125}, "v_proj": {"bias": 0.0123291015625, "kernel": 0.1875}}, "feed_forward": {"intermediate_dense": {"bias": 0.012451171875, "kernel": 0.19921875}, "output_dense": {"bias": 0.00616455078125, "kernel": 0.1484375}}, "final_layer_norm": {"bias": 0.026611328125, "scale": 0.0242919921875}, "layer_norm": {"bias": 0.0380859375, "scale": 0.0634765625}}, "40": {"attention": {"k_proj": {"bias": 8.726119995117188e-05, "kernel": 0.0654296875}, "out_proj": {"bias": 0.0018463134765625, "kernel": 0.05712890625}, "q_proj": {"bias": 0.003814697265625, "kernel": 0.06689453125}, "v_proj": {"bias": 0.003814697265625, "kernel": 0.05810546875}}, "feed_forward": {"intermediate_dense": {"bias": 0.003265380859375, "kernel": 0.05126953125}, "output_dense": {"bias": 0.001800537109375, "kernel": 0.03857421875}}, "final_layer_norm": {"bias": 0.0098876953125, "scale": 0.017822265625}, "layer_norm": {"bias": 0.0150146484375, "scale": 0.0162353515625}}, "41": {"attention": {"k_proj": {"bias": 9.870529174804688e-05, "kernel": 0.091796875}, "out_proj": {"bias": 0.0018157958984375, "kernel": 0.07275390625}, "q_proj": {"bias": 0.00494384765625, "kernel": 0.09765625}, "v_proj": {"bias": 0.005096435546875, "kernel": 0.091796875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00299072265625, "kernel": 0.04833984375}, "output_dense": {"bias": 0.00173187255859375, "kernel": 0.033203125}}, "final_layer_norm": {"bias": 0.0106201171875, "scale": 0.013427734375}, "layer_norm": {"bias": 0.02392578125, "scale": 0.03515625}}, "42": {"attention": {"k_proj": {"bias": 2.8371810913085938e-05, "kernel": 0.025390625}, "out_proj": {"bias": 0.001800537109375, "kernel": 0.0439453125}, "q_proj": {"bias": 0.0016021728515625, "kernel": 0.0264892578125}, "v_proj": {"bias": 0.003448486328125, "kernel": 0.04443359375}}, "feed_forward": {"intermediate_dense": {"bias": 0.00262451171875, "kernel": 0.04248046875}, "output_dense": {"bias": 0.00173187255859375, "kernel": 0.02783203125}}, "final_layer_norm": {"bias": 0.0091552734375, "scale": 0.0115966796875}, "layer_norm": {"bias": 0.010498046875, "scale": 0.0184326171875}}, "43": {"attention": {"k_proj": {"bias": 7.152557373046875e-06, "kernel": 0.01043701171875}, "out_proj": {"bias": 0.00177764892578125, "kernel": 0.0279541015625}, "q_proj": {"bias": 0.000728607177734375, "kernel": 0.01043701171875}, "v_proj": {"bias": 0.002960205078125, "kernel": 0.029541015625}}, "feed_forward": {"intermediate_dense": {"bias": 0.00250244140625, "kernel": 0.042236328125}, "output_dense": {"bias": 0.00173187255859375, "kernel": 0.028076171875}}, "final_layer_norm": {"bias": 0.00799560546875, "scale": 0.01055908203125}, "layer_norm": {"bias": 0.007720947265625, "scale": 0.01495361328125}}, "44": {"attention": {"k_proj": {"bias": 5.632638931274414e-06, "kernel": 0.0103759765625}, "out_proj": {"bias": 0.0017852783203125, "kernel": 0.0264892578125}, "q_proj": {"bias": 0.000690460205078125, "kernel": 0.0101318359375}, "v_proj": {"bias": 0.0029144287109375, "kernel": 0.0283203125}}, "feed_forward": {"intermediate_dense": {"bias": 0.0023040771484375, "kernel": 0.04248046875}, "output_dense": {"bias": 0.00177001953125, "kernel": 0.026123046875}}, "final_layer_norm": {"bias": 0.006622314453125, "scale": 0.0096435546875}, "layer_norm": {"bias": 0.0078125, "scale": 0.010009765625}}, "45": {"attention": {"k_proj": {"bias": 5.245208740234375e-06, "kernel": 0.00830078125}, "out_proj": {"bias": 0.00182342529296875, "kernel": 0.0262451171875}, "q_proj": {"bias": 0.00061798095703125, "kernel": 0.0084228515625}, "v_proj": {"bias": 0.0030975341796875, "kernel": 0.02783203125}}, "feed_forward": {"intermediate_dense": {"bias": 0.0023193359375, "kernel": 0.04150390625}, "output_dense": {"bias": 0.00180816650390625, "kernel": 0.027099609375}}, "final_layer_norm": {"bias": 0.0067138671875, "scale": 0.010986328125}, "layer_norm": {"bias": 0.009521484375, "scale": 0.01409912109375}}, "46": {"attention": {"k_proj": {"bias": 6.258487701416016e-06, "kernel": 0.010009765625}, "out_proj": {"bias": 0.00188446044921875, "kernel": 0.02685546875}, "q_proj": {"bias": 0.000820159912109375, "kernel": 0.01007080078125}, "v_proj": {"bias": 0.0035552978515625, "kernel": 0.03076171875}}, "feed_forward": {"intermediate_dense": {"bias": 0.00244140625, "kernel": 0.0390625}, "output_dense": {"bias": 0.00188446044921875, "kernel": 0.02734375}}, "final_layer_norm": {"bias": 0.00848388671875, "scale": 0.0162353515625}, "layer_norm": {"bias": 0.0120849609375, "scale": 0.01470947265625}}, "47": {"attention": {"k_proj": {"bias": 1.52587890625e-05, "kernel": 0.01031494140625}, "out_proj": {"bias": 0.001953125, "kernel": 0.037109375}, "q_proj": {"bias": 0.00093841552734375, "kernel": 0.010009765625}, "v_proj": {"bias": 0.004180908203125, "kernel": 0.033203125}}, "feed_forward": {"intermediate_dense": {"bias": 0.0022430419921875, "kernel": 0.028564453125}, "output_dense": {"bias": 0.001953125, "kernel": 0.02587890625}}, "final_layer_norm": {"bias": 0.010009765625, "scale": 0.0166015625}, "layer_norm": {"bias": 0.014404296875, "scale": 0.0184326171875}}, "5": {"attention": {"k_proj": {"bias": 4.76837158203125e-05, "kernel": 0.07568359375}, "out_proj": {"bias": 0.006622314453125, "kernel": 0.1318359375}, "q_proj": {"bias": 0.0052490234375, "kernel": 0.07666015625}, "v_proj": {"bias": 0.012451171875, "kernel": 0.123046875}}, "feed_forward": {"intermediate_dense": {"bias": 0.0125732421875, "kernel": 0.1904296875}, "output_dense": {"bias": 0.0062255859375, "kernel": 0.142578125}}, "final_layer_norm": {"bias": 0.0281982421875, "scale": 0.025390625}, "layer_norm": {"bias": 0.033447265625, "scale": 0.0439453125}}, "6": {"attention": {"k_proj": {"bias": 0.00013828277587890625, "kernel": 0.134765625}, "out_proj": {"bias": 0.0059814453125, "kernel": 0.203125}, "q_proj": {"bias": 0.00970458984375, "kernel": 0.1376953125}, "v_proj": {"bias": 0.01251220703125, "kernel": 0.19140625}}, "feed_forward": {"intermediate_dense": {"bias": 0.011474609375, "kernel": 0.181640625}, "output_dense": {"bias": 0.00567626953125, "kernel": 0.126953125}}, "final_layer_norm": {"bias": 0.025146484375, "scale": 0.022705078125}, "layer_norm": {"bias": 0.037109375, "scale": 0.06005859375}}, "7": {"attention": {"k_proj": {"bias": 0.000148773193359375, "kernel": 0.1328125}, "out_proj": {"bias": 0.00567626953125, "kernel": 0.1884765625}, "q_proj": {"bias": 0.009033203125, "kernel": 0.13671875}, "v_proj": {"bias": 0.0115966796875, "kernel": 0.169921875}}, "feed_forward": {"intermediate_dense": {"bias": 0.010986328125, "kernel": 0.177734375}, "output_dense": {"bias": 0.005340576171875, "kernel": 0.123046875}}, "final_layer_norm": {"bias": 0.024658203125, "scale": 0.02197265625}, "layer_norm": {"bias": 0.03515625, "scale": 0.05615234375}}, "8": {"attention": {"k_proj": {"bias": 0.00011348724365234375, "kernel": 0.1103515625}, "out_proj": {"bias": 0.00531005859375, "kernel": 0.16796875}, "q_proj": {"bias": 0.00775146484375, "kernel": 0.1142578125}, "v_proj": {"bias": 0.01055908203125, "kernel": 0.1533203125}}, "feed_forward": {"intermediate_dense": {"bias": 0.01043701171875, "kernel": 0.171875}, "output_dense": {"bias": 0.00506591796875, "kernel": 0.1201171875}}, "final_layer_norm": {"bias": 0.02294921875, "scale": 0.020751953125}, "layer_norm": {"bias": 0.0302734375, "scale": 0.0439453125}}, "9": {"attention": {"k_proj": {"bias": 0.000213623046875, "kernel": 0.15234375}, "out_proj": {"bias": 0.0047607421875, "kernel": 0.22265625}, "q_proj": {"bias": 0.00927734375, "kernel": 0.1591796875}, "v_proj": {"bias": 0.009765625, "kernel": 0.212890625}}, "feed_forward": {"intermediate_dense": {"bias": 0.00860595703125, "kernel": 0.146484375}, "output_dense": {"bias": 0.004638671875, "kernel": 0.109375}}, "final_layer_norm": {"bias": 0.01806640625, "scale": 0.01708984375}, "layer_norm": {"bias": 0.03173828125, "scale": 0.041015625}}}, "pos_conv_embed": {"conv": {"bias": 0.03857421875, "weight_g": 0.0654296875, "weight_v": 0.37109375}}}, "feature_extractor": {"conv_layers": {"0": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}, "1": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}, "2": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}, "3": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}, "4": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}, "5": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}, "6": {"conv": {"bias": 0.0, "kernel": 0.0}, "layer_norm": {"bias": 0.0, "scale": 0.0}}}}, "feature_projection": {"layer_norm": {"bias": 0.19140625, "scale": 0.234375}, "projection": {"bias": 0.0625, "kernel": 1.0234375}}, "masked_spec_embed": 0.0}}, "layer_param_norm/": {"lm_head": {"bias": 0.24763144552707672, "kernel": 14.516021728515625}, "wav2vec2": {"encoder": {"layer_norm": {"bias": 6.115899085998535, "scale": 30.058286666870117}, "layers": {"0": {"attention": {"k_proj": {"bias": 0.7403925657272339, "kernel": 32.50963592529297}, "out_proj": {"bias": 1.8210575580596924, "kernel": 28.93766975402832}, "q_proj": {"bias": 1.9437894821166992, "kernel": 32.481048583984375}, "v_proj": {"bias": 0.4700726866722107, "kernel": 29.315589904785156}}, "feed_forward": {"intermediate_dense": {"bias": 2.3431921005249023, "kernel": 109.45851135253906}, "output_dense": {"bias": 1.1830276250839233, "kernel": 105.73143768310547}}, "final_layer_norm": {"bias": 1.626854658126831, "scale": 19.90787124633789}, "layer_norm": {"bias": 3.001864433288574, "scale": 13.86023998260498}}, "1": {"attention": {"k_proj": {"bias": 0.7641571760177612, "kernel": 45.08387756347656}, "out_proj": {"bias": 1.3888542652130127, "kernel": 46.666324615478516}, "q_proj": {"bias": 3.176804542541504, "kernel": 44.98219299316406}, "v_proj": {"bias": 0.36902812123298645, "kernel": 44.74822998046875}}, "feed_forward": {"intermediate_dense": {"bias": 2.2638802528381348, "kernel": 103.85151672363281}, "output_dense": {"bias": 0.8658460378646851, "kernel": 91.4688720703125}}, "final_layer_norm": {"bias": 1.5685994625091553, "scale": 18.96673583984375}, "layer_norm": {"bias": 1.9097001552581787, "scale": 16.721309661865234}}, "10": {"attention": {"k_proj": {"bias": 0.8264991044998169, "kernel": 52.49092102050781}, "out_proj": {"bias": 1.3398823738098145, "kernel": 54.32166290283203}, "q_proj": {"bias": 2.485732078552246, "kernel": 52.64345169067383}, "v_proj": {"bias": 0.3930933475494385, "kernel": 54.047523498535156}}, "feed_forward": {"intermediate_dense": {"bias": 2.1090402603149414, "kernel": 105.84640502929688}, "output_dense": {"bias": 0.6230311989784241, "kernel": 98.72604370117188}}, "final_layer_norm": {"bias": 2.365025520324707, "scale": 20.65367889404297}, "layer_norm": {"bias": 1.8028309345245361, "scale": 20.63275146484375}}, "11": {"attention": {"k_proj": {"bias": 0.9126813411712646, "kernel": 53.57634735107422}, "out_proj": {"bias": 1.1946563720703125, "kernel": 54.60582733154297}, "q_proj": {"bias": 2.5134708881378174, "kernel": 53.68289566040039}, "v_proj": {"bias": 0.48386645317077637, "kernel": 54.41106414794922}}, "feed_forward": {"intermediate_dense": {"bias": 2.1579833030700684, "kernel": 106.63368225097656}, "output_dense": {"bias": 0.593774139881134, "kernel": 100.2004165649414}}, "final_layer_norm": {"bias": 2.4028284549713135, "scale": 20.773927688598633}, "layer_norm": {"bias": 1.8530795574188232, "scale": 21.750335693359375}}, "12": {"attention": {"k_proj": {"bias": 0.8322252035140991, "kernel": 53.44305419921875}, "out_proj": {"bias": 1.1605149507522583, "kernel": 54.12385559082031}, "q_proj": {"bias": 2.3781118392944336, "kernel": 53.561981201171875}, "v_proj": {"bias": 0.451801061630249, "kernel": 54.02593231201172}}, "feed_forward": {"intermediate_dense": {"bias": 2.1947529315948486, "kernel": 107.53033447265625}, "output_dense": {"bias": 0.5744232535362244, "kernel": 101.94235229492188}}, "final_layer_norm": {"bias": 2.3267621994018555, "scale": 20.751590728759766}, "layer_norm": {"bias": 1.9075193405151367, "scale": 21.601144790649414}}, "13": {"attention": {"k_proj": {"bias": 0.8998972773551941, "kernel": 56.002708435058594}, "out_proj": {"bias": 1.171189785003662, "kernel": 54.440711975097656}, "q_proj": {"bias": 2.3471908569335938, "kernel": 56.14015579223633}, "v_proj": {"bias": 0.4379897713661194, "kernel": 54.171669006347656}}, "feed_forward": {"intermediate_dense": {"bias": 2.230654239654541, "kernel": 108.36354064941406}, "output_dense": {"bias": 0.6075854301452637, "kernel": 102.55903625488281}}, "final_layer_norm": {"bias": 2.2666263580322266, "scale": 20.908233642578125}, "layer_norm": {"bias": 2.0689830780029297, "scale": 22.649581909179688}}, "14": {"attention": {"k_proj": {"bias": 0.8474283218383789, "kernel": 55.7901611328125}, "out_proj": {"bias": 1.3378998041152954, "kernel": 52.38158416748047}, "q_proj": {"bias": 2.390003204345703, "kernel": 56.03112030029297}, "v_proj": {"bias": 0.4064473509788513, "kernel": 51.49772644042969}}, "feed_forward": {"intermediate_dense": {"bias": 2.266826629638672, "kernel": 108.92878723144531}, "output_dense": {"bias": 0.6517939567565918, "kernel": 104.05583190917969}}, "final_layer_norm": {"bias": 2.3864829540252686, "scale": 21.117158889770508}, "layer_norm": {"bias": 2.191129207611084, "scale": 22.28069305419922}}, "15": {"attention": {"k_proj": {"bias": 0.9334820508956909, "kernel": 56.911834716796875}, "out_proj": {"bias": 1.4310636520385742, "kernel": 54.22382354736328}, "q_proj": {"bias": 2.524597644805908, "kernel": 57.270172119140625}, "v_proj": {"bias": 0.5090032815933228, "kernel": 53.6005859375}}, "feed_forward": {"intermediate_dense": {"bias": 2.286947250366211, "kernel": 108.71317291259766}, "output_dense": {"bias": 0.8255638480186462, "kernel": 104.84282684326172}}, "final_layer_norm": {"bias": 2.4407310485839844, "scale": 21.115543365478516}, "layer_norm": {"bias": 2.410008430480957, "scale": 23.940126419067383}}, "16": {"attention": {"k_proj": {"bias": 0.8372851610183716, "kernel": 55.510467529296875}, "out_proj": {"bias": 1.34126615524292, "kernel": 52.70668029785156}, "q_proj": {"bias": 2.579355478286743, "kernel": 55.603668212890625}, "v_proj": {"bias": 0.42714059352874756, "kernel": 52.01667785644531}}, "feed_forward": {"intermediate_dense": {"bias": 2.273350715637207, "kernel": 109.09846496582031}, "output_dense": {"bias": 0.8501323461532593, "kernel": 105.40324401855469}}, "final_layer_norm": {"bias": 2.4835901260375977, "scale": 21.51126480102539}, "layer_norm": {"bias": 2.320248603820801, "scale": 22.1488094329834}}, "17": {"attention": {"k_proj": {"bias": 0.8240422010421753, "kernel": 55.108219146728516}, "out_proj": {"bias": 1.2678558826446533, "kernel": 51.7484245300293}, "q_proj": {"bias": 2.6575331687927246, "kernel": 55.278045654296875}, "v_proj": {"bias": 0.4651047885417938, "kernel": 51.0302734375}}, "feed_forward": {"intermediate_dense": {"bias": 2.272791862487793, "kernel": 109.97947692871094}, "output_dense": {"bias": 0.8652811050415039, "kernel": 105.76331329345703}}, "final_layer_norm": {"bias": 2.5239994525909424, "scale": 21.997169494628906}, "layer_norm": {"bias": 2.2325491905212402, "scale": 20.790287017822266}}, "18": {"attention": {"k_proj": {"bias": 0.9175165295600891, "kernel": 57.418724060058594}, "out_proj": {"bias": 1.3799958229064941, "kernel": 53.43863296508789}, "q_proj": {"bias": 2.5740301609039307, "kernel": 57.829933166503906}, "v_proj": {"bias": 0.5129854083061218, "kernel": 52.59415817260742}}, "feed_forward": {"intermediate_dense": {"bias": 2.283095121383667, "kernel": 109.98977661132812}, "output_dense": {"bias": 0.9966732263565063, "kernel": 107.12136840820312}}, "final_layer_norm": {"bias": 2.6170592308044434, "scale": 22.10287094116211}, "layer_norm": {"bias": 2.4478230476379395, "scale": 23.484222412109375}}, "19": {"attention": {"k_proj": {"bias": 0.830424964427948, "kernel": 55.30845642089844}, "out_proj": {"bias": 1.3714587688446045, "kernel": 52.569854736328125}, "q_proj": {"bias": 2.7824032306671143, "kernel": 55.631622314453125}, "v_proj": {"bias": 0.4762943983078003, "kernel": 51.5487174987793}}, "feed_forward": {"intermediate_dense": {"bias": 2.3236122131347656, "kernel": 110.2896728515625}, "output_dense": {"bias": 1.0723800659179688, "kernel": 107.83274841308594}}, "final_layer_norm": {"bias": 2.600285053253174, "scale": 22.459367752075195}, "layer_norm": {"bias": 2.358214855194092, "scale": 22.165342330932617}}, "2": {"attention": {"k_proj": {"bias": 0.8673897981643677, "kernel": 52.27374267578125}, "out_proj": {"bias": 1.2744383811950684, "kernel": 49.06001281738281}, "q_proj": {"bias": 3.280240058898926, "kernel": 52.108184814453125}, "v_proj": {"bias": 0.3792893886566162, "kernel": 48.31349563598633}}, "feed_forward": {"intermediate_dense": {"bias": 2.2497451305389404, "kernel": 108.07189178466797}, "output_dense": {"bias": 0.7575575709342957, "kernel": 94.73979949951172}}, "final_layer_norm": {"bias": 1.622859001159668, "scale": 21.427444458007812}, "layer_norm": {"bias": 1.7144864797592163, "scale": 19.65789794921875}}, "20": {"attention": {"k_proj": {"bias": 0.739029049873352, "kernel": 54.45887756347656}, "out_proj": {"bias": 1.403418779373169, "kernel": 51.369842529296875}, "q_proj": {"bias": 2.7041356563568115, "kernel": 54.80017852783203}, "v_proj": {"bias": 0.4511605501174927, "kernel": 50.101318359375}}, "feed_forward": {"intermediate_dense": {"bias": 2.3029069900512695, "kernel": 111.0577163696289}, "output_dense": {"bias": 1.1863782405853271, "kernel": 108.48847961425781}}, "final_layer_norm": {"bias": 2.5815043449401855, "scale": 23.321407318115234}, "layer_norm": {"bias": 2.3129682540893555, "scale": 21.583702087402344}}, "21": {"attention": {"k_proj": {"bias": 0.8157603740692139, "kernel": 55.31140899658203}, "out_proj": {"bias": 1.4524174928665161, "kernel": 51.52873229980469}, "q_proj": {"bias": 2.6396162509918213, "kernel": 55.839073181152344}, "v_proj": {"bias": 0.5319948196411133, "kernel": 50.43778610229492}}, "feed_forward": {"intermediate_dense": {"bias": 2.3308515548706055, "kernel": 111.14630126953125}, "output_dense": {"bias": 1.304220199584961, "kernel": 108.67438507080078}}, "final_layer_norm": {"bias": 2.6044626235961914, "scale": 23.087890625}, "layer_norm": {"bias": 2.3749780654907227, "scale": 22.142269134521484}}, "22": {"attention": {"k_proj": {"bias": 0.8507300615310669, "kernel": 56.22793197631836}, "out_proj": {"bias": 1.3927662372589111, "kernel": 51.54594802856445}, "q_proj": {"bias": 2.7049431800842285, "kernel": 56.485694885253906}, "v_proj": {"bias": 0.4718754291534424, "kernel": 51.17841720581055}}, "feed_forward": {"intermediate_dense": {"bias": 2.249100685119629, "kernel": 111.17359924316406}, "output_dense": {"bias": 1.3571646213531494, "kernel": 107.99300384521484}}, "final_layer_norm": {"bias": 2.483593463897705, "scale": 22.55929946899414}, "layer_norm": {"bias": 2.3632781505584717, "scale": 21.176952362060547}}, "23": {"attention": {"k_proj": {"bias": 0.918440043926239, "kernel": 58.1475830078125}, "out_proj": {"bias": 1.5755456686019897, "kernel": 53.09620666503906}, "q_proj": {"bias": 2.688080310821533, "kernel": 58.40971755981445}, "v_proj": {"bias": 0.6378740072250366, "kernel": 53.45045852661133}}, "feed_forward": {"intermediate_dense": {"bias": 2.2044312953948975, "kernel": 111.04308319091797}, "output_dense": {"bias": 1.3195202350616455, "kernel": 108.81027221679688}}, "final_layer_norm": {"bias": 2.7967171669006348, "scale": 22.722576141357422}, "layer_norm": {"bias": 2.7934517860412598, "scale": 23.714479446411133}}, "24": {"attention": {"k_proj": {"bias": 0.9622829556465149, "kernel": 57.39729309082031}, "out_proj": {"bias": 1.6327389478683472, "kernel": 54.875885009765625}, "q_proj": {"bias": 2.7902653217315674, "kernel": 57.43643569946289}, "v_proj": {"bias": 0.6043530702590942, "kernel": 54.654335021972656}}, "feed_forward": {"intermediate_dense": {"bias": 2.320834159851074, "kernel": 110.53807067871094}, "output_dense": {"bias": 1.348480224609375, "kernel": 111.60858154296875}}, "final_layer_norm": {"bias": 2.807509660720825, "scale": 22.754878997802734}, "layer_norm": {"bias": 2.5625181198120117, "scale": 23.02261734008789}}, "25": {"attention": {"k_proj": {"bias": 0.8944715261459351, "kernel": 56.81090545654297}, "out_proj": {"bias": 1.4045782089233398, "kernel": 52.144493103027344}, "q_proj": {"bias": 2.8560361862182617, "kernel": 56.80752944946289}, "v_proj": {"bias": 0.6409503221511841, "kernel": 52.47834014892578}}, "feed_forward": {"intermediate_dense": {"bias": 2.2260055541992188, "kernel": 110.76261901855469}, "output_dense": {"bias": 1.1522831916809082, "kernel": 111.55427551269531}}, "final_layer_norm": {"bias": 2.6250357627868652, "scale": 23.244522094726562}, "layer_norm": {"bias": 2.6033151149749756, "scale": 21.858840942382812}}, "26": {"attention": {"k_proj": {"bias": 0.8825386762619019, "kernel": 56.458984375}, "out_proj": {"bias": 1.2961790561676025, "kernel": 52.58938217163086}, "q_proj": {"bias": 2.926755428314209, "kernel": 56.29093933105469}, "v_proj": {"bias": 0.5151218175888062, "kernel": 53.10480499267578}}, "feed_forward": {"intermediate_dense": {"bias": 2.328673839569092, "kernel": 110.0596923828125}, "output_dense": {"bias": 1.1178290843963623, "kernel": 108.30316925048828}}, "final_layer_norm": {"bias": 2.282909870147705, "scale": 22.06253433227539}, "layer_norm": {"bias": 2.45485258102417, "scale": 21.87640380859375}}, "27": {"attention": {"k_proj": {"bias": 1.0343282222747803, "kernel": 58.63238525390625}, "out_proj": {"bias": 1.5391802787780762, "kernel": 54.87559509277344}, "q_proj": {"bias": 2.69437313079834, "kernel": 58.76223373413086}, "v_proj": {"bias": 0.6595930457115173, "kernel": 55.227352142333984}}, "feed_forward": {"intermediate_dense": {"bias": 2.4691109657287598, "kernel": 108.66384887695312}, "output_dense": {"bias": 0.967892050743103, "kernel": 108.04794311523438}}, "final_layer_norm": {"bias": 2.531920909881592, "scale": 21.517404556274414}, "layer_norm": {"bias": 2.613349437713623, "scale": 23.5782470703125}}, "28": {"attention": {"k_proj": {"bias": 0.9909035563468933, "kernel": 58.976036071777344}, "out_proj": {"bias": 1.567809820175171, "kernel": 54.878387451171875}, "q_proj": {"bias": 2.93391752243042, "kernel": 58.80247497558594}, "v_proj": {"bias": 0.557303786277771, "kernel": 55.286109924316406}}, "feed_forward": {"intermediate_dense": {"bias": 2.4285950660705566, "kernel": 108.78340911865234}, "output_dense": {"bias": 0.8226666450500488, "kernel": 110.09716796875}}, "final_layer_norm": {"bias": 2.520740509033203, "scale": 21.887554168701172}, "layer_norm": {"bias": 2.127535343170166, "scale": 24.105823516845703}}, "29": {"attention": {"k_proj": {"bias": 0.9721715450286865, "kernel": 56.672401428222656}, "out_proj": {"bias": 1.531894326210022, "kernel": 57.43561553955078}, "q_proj": {"bias": 2.824924945831299, "kernel": 56.65544509887695}, "v_proj": {"bias": 0.5159530639648438, "kernel": 57.41569519042969}}, "feed_forward": {"intermediate_dense": {"bias": 2.4384517669677734, "kernel": 109.88546752929688}, "output_dense": {"bias": 1.007441759109497, "kernel": 114.76637268066406}}, "final_layer_norm": {"bias": 2.706664562225342, "scale": 23.121158599853516}, "layer_norm": {"bias": 2.301748275756836, "scale": 25.09175682067871}}, "3": {"attention": {"k_proj": {"bias": 0.8382421135902405, "kernel": 56.333900451660156}, "out_proj": {"bias": 1.4566152095794678, "kernel": 51.49332809448242}, "q_proj": {"bias": 2.8794748783111572, "kernel": 56.67864990234375}, "v_proj": {"bias": 0.3522690236568451, "kernel": 51.317440032958984}}, "feed_forward": {"intermediate_dense": {"bias": 2.212578296661377, "kernel": 109.32026672363281}, "output_dense": {"bias": 0.7269039154052734, "kernel": 97.61083984375}}, "final_layer_norm": {"bias": 1.8841630220413208, "scale": 21.65961456298828}, "layer_norm": {"bias": 1.9301340579986572, "scale": 22.415502548217773}}, "30": {"attention": {"k_proj": {"bias": 1.011191964149475, "kernel": 58.262664794921875}, "out_proj": {"bias": 1.352297306060791, "kernel": 54.06199645996094}, "q_proj": {"bias": 2.952580213546753, "kernel": 58.44377517700195}, "v_proj": {"bias": 0.5641810894012451, "kernel": 54.530418395996094}}, "feed_forward": {"intermediate_dense": {"bias": 2.4040281772613525, "kernel": 110.50924682617188}, "output_dense": {"bias": 0.9587730169296265, "kernel": 114.419677734375}}, "final_layer_norm": {"bias": 2.605130195617676, "scale": 24.254417419433594}, "layer_norm": {"bias": 2.3541243076324463, "scale": 24.880760192871094}}, "31": {"attention": {"k_proj": {"bias": 1.0411462783813477, "kernel": 56.535301208496094}, "out_proj": {"bias": 1.2613515853881836, "kernel": 53.95042419433594}, "q_proj": {"bias": 2.719839096069336, "kernel": 56.73951721191406}, "v_proj": {"bias": 0.5797592401504517, "kernel": 54.28603744506836}}, "feed_forward": {"intermediate_dense": {"bias": 2.4906868934631348, "kernel": 109.35433959960938}, "output_dense": {"bias": 1.1265946626663208, "kernel": 111.65043640136719}}, "final_layer_norm": {"bias": 2.4596893787384033, "scale": 24.10403060913086}, "layer_norm": {"bias": 2.3174638748168945, "scale": 24.462421417236328}}, "32": {"attention": {"k_proj": {"bias": 1.1203484535217285, "kernel": 58.039833068847656}, "out_proj": {"bias": 1.2515766620635986, "kernel": 53.88495635986328}, "q_proj": {"bias": 2.8929805755615234, "kernel": 58.27726745605469}, "v_proj": {"bias": 0.4841223359107971, "kernel": 54.555137634277344}}, "feed_forward": {"intermediate_dense": {"bias": 2.465590238571167, "kernel": 108.71543884277344}, "output_dense": {"bias": 1.1894612312316895, "kernel": 111.52071380615234}}, "final_layer_norm": {"bias": 2.4689671993255615, "scale": 24.45084571838379}, "layer_norm": {"bias": 2.436534881591797, "scale": 24.71687126159668}}, "33": {"attention": {"k_proj": {"bias": 1.1414543390274048, "kernel": 57.99047088623047}, "out_proj": {"bias": 1.2996151447296143, "kernel": 53.66570281982422}, "q_proj": {"bias": 3.039680004119873, "kernel": 58.429718017578125}, "v_proj": {"bias": 0.5130305290222168, "kernel": 54.25340270996094}}, "feed_forward": {"intermediate_dense": {"bias": 2.4742937088012695, "kernel": 107.47087097167969}, "output_dense": {"bias": 1.2047545909881592, "kernel": 110.00432586669922}}, "final_layer_norm": {"bias": 2.3638789653778076, "scale": 24.189720153808594}, "layer_norm": {"bias": 2.52843976020813, "scale": 24.822345733642578}}, "34": {"attention": {"k_proj": {"bias": 1.1104979515075684, "kernel": 57.044063568115234}, "out_proj": {"bias": 1.5598602294921875, "kernel": 54.517574310302734}, "q_proj": {"bias": 2.9997434616088867, "kernel": 57.52387619018555}, "v_proj": {"bias": 0.46362853050231934, "kernel": 54.99714660644531}}, "feed_forward": {"intermediate_dense": {"bias": 2.5812177658081055, "kernel": 106.48512268066406}, "output_dense": {"bias": 1.152879238128662, "kernel": 108.87045288085938}}, "final_layer_norm": {"bias": 2.285100221633911, "scale": 23.552654266357422}, "layer_norm": {"bias": 2.5779197216033936, "scale": 25.333660125732422}}, "35": {"attention": {"k_proj": {"bias": 1.2764124870300293, "kernel": 61.70880889892578}, "out_proj": {"bias": 1.4839587211608887, "kernel": 53.394813537597656}, "q_proj": {"bias": 2.680656671524048, "kernel": 62.71726989746094}, "v_proj": {"bias": 0.5152413249015808, "kernel": 54.1439208984375}}, "feed_forward": {"intermediate_dense": {"bias": 2.6943416595458984, "kernel": 104.74528503417969}, "output_dense": {"bias": 1.0260851383209229, "kernel": 106.88823699951172}}, "final_layer_norm": {"bias": 2.3601293563842773, "scale": 23.472780227661133}, "layer_norm": {"bias": 2.488330364227295, "scale": 25.821502685546875}}, "36": {"attention": {"k_proj": {"bias": 1.1443098783493042, "kernel": 56.7796516418457}, "out_proj": {"bias": 1.4987642765045166, "kernel": 53.629493713378906}, "q_proj": {"bias": 2.7171854972839355, "kernel": 57.42560577392578}, "v_proj": {"bias": 0.4168643355369568, "kernel": 54.579734802246094}}, "feed_forward": {"intermediate_dense": {"bias": 2.572497606277466, "kernel": 103.06671142578125}, "output_dense": {"bias": 1.0201528072357178, "kernel": 105.87279510498047}}, "final_layer_norm": {"bias": 2.191319465637207, "scale": 23.884319305419922}, "layer_norm": {"bias": 2.253103256225586, "scale": 25.292621612548828}}, "37": {"attention": {"k_proj": {"bias": 1.1454544067382812, "kernel": 54.42536926269531}, "out_proj": {"bias": 1.743508219718933, "kernel": 53.151954650878906}, "q_proj": {"bias": 2.476093292236328, "kernel": 54.77497482299805}, "v_proj": {"bias": 0.39906537532806396, "kernel": 53.68836212158203}}, "feed_forward": {"intermediate_dense": {"bias": 2.4655394554138184, "kernel": 101.86824035644531}, "output_dense": {"bias": 1.020345687866211, "kernel": 105.14108276367188}}, "final_layer_norm": {"bias": 1.9011644124984741, "scale": 24.277877807617188}, "layer_norm": {"bias": 2.2292304039001465, "scale": 25.378250122070312}}, "38": {"attention": {"k_proj": {"bias": 1.183656096458435, "kernel": 52.436126708984375}, "out_proj": {"bias": 1.4355149269104004, "kernel": 52.430442810058594}, "q_proj": {"bias": 2.367494583129883, "kernel": 52.751434326171875}, "v_proj": {"bias": 0.41923636198043823, "kernel": 52.86449432373047}}, "feed_forward": {"intermediate_dense": {"bias": 2.4068474769592285, "kernel": 99.50985717773438}, "output_dense": {"bias": 0.9879905581474304, "kernel": 103.0174789428711}}, "final_layer_norm": {"bias": 1.8831658363342285, "scale": 25.001859664916992}, "layer_norm": {"bias": 2.4112377166748047, "scale": 26.273160934448242}}, "39": {"attention": {"k_proj": {"bias": 1.1700485944747925, "kernel": 51.919227600097656}, "out_proj": {"bias": 1.712404727935791, "kernel": 52.10653305053711}, "q_proj": {"bias": 2.1734097003936768, "kernel": 52.42891311645508}, "v_proj": {"bias": 0.45466694235801697, "kernel": 52.57012939453125}}, "feed_forward": {"intermediate_dense": {"bias": 2.3689095973968506, "kernel": 96.83023071289062}, "output_dense": {"bias": 1.0662879943847656, "kernel": 102.43391418457031}}, "final_layer_norm": {"bias": 1.7948445081710815, "scale": 25.616607666015625}, "layer_norm": {"bias": 2.3367257118225098, "scale": 26.7707462310791}}, "4": {"attention": {"k_proj": {"bias": 0.853224515914917, "kernel": 58.679595947265625}, "out_proj": {"bias": 1.67254638671875, "kernel": 53.00638961791992}, "q_proj": {"bias": 2.6385750770568848, "kernel": 59.025657653808594}, "v_proj": {"bias": 0.39137083292007446, "kernel": 52.926719665527344}}, "feed_forward": {"intermediate_dense": {"bias": 2.1657521724700928, "kernel": 108.68757629394531}, "output_dense": {"bias": 0.8780770301818848, "kernel": 98.9853286743164}}, "final_layer_norm": {"bias": 2.033517360687256, "scale": 21.247234344482422}, "layer_norm": {"bias": 2.0592901706695557, "scale": 23.425811767578125}}, "40": {"attention": {"k_proj": {"bias": 1.079740285873413, "kernel": 49.26762771606445}, "out_proj": {"bias": 1.6478674411773682, "kernel": 50.291378021240234}, "q_proj": {"bias": 2.0376877784729004, "kernel": 49.97050476074219}, "v_proj": {"bias": 0.5131649971008301, "kernel": 50.29737091064453}}, "feed_forward": {"intermediate_dense": {"bias": 2.215886116027832, "kernel": 94.24044036865234}, "output_dense": {"bias": 1.1025381088256836, "kernel": 99.42908477783203}}, "final_layer_norm": {"bias": 1.8330597877502441, "scale": 24.93030548095703}, "layer_norm": {"bias": 2.3041679859161377, "scale": 26.333391189575195}}, "41": {"attention": {"k_proj": {"bias": 1.991872787475586, "kernel": 48.81489562988281}, "out_proj": {"bias": 1.4018226861953735, "kernel": 52.087799072265625}, "q_proj": {"bias": 1.802153468132019, "kernel": 49.263755798339844}, "v_proj": {"bias": 0.4929717481136322, "kernel": 51.484920501708984}}, "feed_forward": {"intermediate_dense": {"bias": 2.2868783473968506, "kernel": 90.59687042236328}, "output_dense": {"bias": 1.1370893716812134, "kernel": 97.84822845458984}}, "final_layer_norm": {"bias": 2.26576828956604, "scale": 28.365489959716797}, "layer_norm": {"bias": 2.2250311374664307, "scale": 28.14055061340332}}, "42": {"attention": {"k_proj": {"bias": 1.150160789489746, "kernel": 42.89885711669922}, "out_proj": {"bias": 1.456573247909546, "kernel": 45.623046875}, "q_proj": {"bias": 1.5821566581726074, "kernel": 43.752685546875}, "v_proj": {"bias": 0.7660435438156128, "kernel": 44.18157196044922}}, "feed_forward": {"intermediate_dense": {"bias": 2.141775608062744, "kernel": 89.23185729980469}, "output_dense": {"bias": 1.1805896759033203, "kernel": 95.772216796875}}, "final_layer_norm": {"bias": 1.9508922100067139, "scale": 29.563426971435547}, "layer_norm": {"bias": 1.6794843673706055, "scale": 26.729339599609375}}, "43": {"attention": {"k_proj": {"bias": 1.375364065170288, "kernel": 37.259010314941406}, "out_proj": {"bias": 1.4263203144073486, "kernel": 41.82483673095703}, "q_proj": {"bias": 1.4251242876052856, "kernel": 37.68909454345703}, "v_proj": {"bias": 0.6262045502662659, "kernel": 39.791542053222656}}, "feed_forward": {"intermediate_dense": {"bias": 2.0700557231903076, "kernel": 87.687744140625}, "output_dense": {"bias": 0.9212285280227661, "kernel": 93.44815063476562}}, "final_layer_norm": {"bias": 2.030412435531616, "scale": 31.77464485168457}, "layer_norm": {"bias": 1.7949259281158447, "scale": 25.036386489868164}}, "44": {"attention": {"k_proj": {"bias": 2.5945558547973633, "kernel": 37.25736999511719}, "out_proj": {"bias": 1.1795763969421387, "kernel": 45.40834426879883}, "q_proj": {"bias": 1.4174532890319824, "kernel": 37.41947555541992}, "v_proj": {"bias": 0.428519606590271, "kernel": 44.56541061401367}}, "feed_forward": {"intermediate_dense": {"bias": 2.077152967453003, "kernel": 86.3221435546875}, "output_dense": {"bias": 0.8385449647903442, "kernel": 90.97447204589844}}, "final_layer_norm": {"bias": 2.139084815979004, "scale": 33.967140197753906}, "layer_norm": {"bias": 1.6936678886413574, "scale": 25.14794921875}}, "45": {"attention": {"k_proj": {"bias": 2.12758207321167, "kernel": 36.44401931762695}, "out_proj": {"bias": 1.045353651046753, "kernel": 48.980690002441406}, "q_proj": {"bias": 1.4860507249832153, "kernel": 36.17755126953125}, "v_proj": {"bias": 0.46319761872291565, "kernel": 49.144996643066406}}, "feed_forward": {"intermediate_dense": {"bias": 2.135664463043213, "kernel": 83.1095962524414}, "output_dense": {"bias": 0.9526636004447937, "kernel": 86.48943328857422}}, "final_layer_norm": {"bias": 1.8064650297164917, "scale": 32.738887786865234}, "layer_norm": {"bias": 1.5761003494262695, "scale": 23.80851173400879}}, "46": {"attention": {"k_proj": {"bias": 1.6380424499511719, "kernel": 37.267581939697266}, "out_proj": {"bias": 0.818572998046875, "kernel": 51.44145965576172}, "q_proj": {"bias": 1.6398258209228516, "kernel": 37.11940002441406}, "v_proj": {"bias": 0.41910281777381897, "kernel": 52.247337341308594}}, "feed_forward": {"intermediate_dense": {"bias": 2.134793996810913, "kernel": 78.1416015625}, "output_dense": {"bias": 1.125403881072998, "kernel": 77.17915344238281}}, "final_layer_norm": {"bias": 1.6916954517364502, "scale": 28.220687866210938}, "layer_norm": {"bias": 1.4071805477142334, "scale": 22.763029098510742}}, "47": {"attention": {"k_proj": {"bias": 0.7287274599075317, "kernel": 40.3172607421875}, "out_proj": {"bias": 0.7099844217300415, "kernel": 46.13526916503906}, "q_proj": {"bias": 1.8319885730743408, "kernel": 40.662322998046875}, "v_proj": {"bias": 0.40907713770866394, "kernel": 46.894107818603516}}, "feed_forward": {"intermediate_dense": {"bias": 2.1272077560424805, "kernel": 76.43158721923828}, "output_dense": {"bias": 0.6613559722900391, "kernel": 71.79763793945312}}, "final_layer_norm": {"bias": 1.5524165630340576, "scale": 22.98813819885254}, "layer_norm": {"bias": 1.1318074464797974, "scale": 20.024677276611328}}, "5": {"attention": {"k_proj": {"bias": 0.7599404454231262, "kernel": 52.85590362548828}, "out_proj": {"bias": 1.6137959957122803, "kernel": 53.17279052734375}, "q_proj": {"bias": 2.763476848602295, "kernel": 53.022499084472656}, "v_proj": {"bias": 0.3600073456764221, "kernel": 53.47975158691406}}, "feed_forward": {"intermediate_dense": {"bias": 2.089616537094116, "kernel": 108.64012145996094}, "output_dense": {"bias": 0.8912825584411621, "kernel": 98.32955932617188}}, "final_layer_norm": {"bias": 2.191831111907959, "scale": 21.34562873840332}, "layer_norm": {"bias": 2.001521110534668, "scale": 21.726131439208984}}, "6": {"attention": {"k_proj": {"bias": 0.8945052623748779, "kernel": 56.33234405517578}, "out_proj": {"bias": 1.6069056987762451, "kernel": 53.74813461303711}, "q_proj": {"bias": 2.8322463035583496, "kernel": 56.88422775268555}, "v_proj": {"bias": 0.37227779626846313, "kernel": 53.66552734375}}, "feed_forward": {"intermediate_dense": {"bias": 2.057812213897705, "kernel": 107.80841827392578}, "output_dense": {"bias": 0.7720624208450317, "kernel": 98.35223388671875}}, "final_layer_norm": {"bias": 2.4900243282318115, "scale": 20.79738998413086}, "layer_norm": {"bias": 2.026155471801758, "scale": 23.02025032043457}}, "7": {"attention": {"k_proj": {"bias": 0.8474833965301514, "kernel": 55.01243209838867}, "out_proj": {"bias": 1.4466302394866943, "kernel": 53.76277160644531}, "q_proj": {"bias": 2.5776522159576416, "kernel": 55.607688903808594}, "v_proj": {"bias": 0.43754661083221436, "kernel": 53.30241394042969}}, "feed_forward": {"intermediate_dense": {"bias": 2.0549309253692627, "kernel": 107.40618896484375}, "output_dense": {"bias": 0.6205819845199585, "kernel": 97.99725341796875}}, "final_layer_norm": {"bias": 2.4072351455688477, "scale": 20.9505615234375}, "layer_norm": {"bias": 1.952453851699829, "scale": 22.01758575439453}}, "8": {"attention": {"k_proj": {"bias": 0.9294893741607666, "kernel": 55.175445556640625}, "out_proj": {"bias": 1.2641667127609253, "kernel": 54.283599853515625}, "q_proj": {"bias": 2.569431781768799, "kernel": 55.29590606689453}, "v_proj": {"bias": 0.3874872326850891, "kernel": 53.93408966064453}}, "feed_forward": {"intermediate_dense": {"bias": 2.098078727722168, "kernel": 106.77230072021484}, "output_dense": {"bias": 0.5908701419830322, "kernel": 97.44270324707031}}, "final_layer_norm": {"bias": 2.3400187492370605, "scale": 20.721628189086914}, "layer_norm": {"bias": 1.9173202514648438, "scale": 22.07811737060547}}, "9": {"attention": {"k_proj": {"bias": 0.9554723501205444, "kernel": 56.904579162597656}, "out_proj": {"bias": 1.5363678932189941, "kernel": 55.90269470214844}, "q_proj": {"bias": 2.4570670127868652, "kernel": 57.31389617919922}, "v_proj": {"bias": 0.45008689165115356, "kernel": 55.69712829589844}}, "feed_forward": {"intermediate_dense": {"bias": 2.1569666862487793, "kernel": 105.34449768066406}, "output_dense": {"bias": 0.7141275405883789, "kernel": 97.44210815429688}}, "final_layer_norm": {"bias": 2.340221881866455, "scale": 20.025182723999023}, "layer_norm": {"bias": 2.0792951583862305, "scale": 24.29781723022461}}}, "pos_conv_embed": {"conv": {"bias": 5.962120056152344, "weight_g": 9.451289176940918, "weight_v": 108.60298156738281}}}, "feature_extractor": {"conv_layers": {"0": {"conv": {"bias": 2.0290679931640625, "kernel": 20.55536460876465}, "layer_norm": {"bias": 4.550922393798828, "scale": 16.167570114135742}}, "1": {"conv": {"bias": 1.7790228128433228, "kernel": 51.24136734008789}, "layer_norm": {"bias": 5.962646961212158, "scale": 23.268157958984375}}, "2": {"conv": {"bias": 1.140576720237732, "kernel": 46.50312042236328}, "layer_norm": {"bias": 4.176670551300049, "scale": 20.370853424072266}}, "3": {"conv": {"bias": 0.6725863218307495, "kernel": 44.397525787353516}, "layer_norm": {"bias": 3.888174533843994, "scale": 17.53795051574707}}, "4": {"conv": {"bias": 0.6373162269592285, "kernel": 41.314056396484375}, "layer_norm": {"bias": 2.385471820831299, "scale": 16.34571647644043}}, "5": {"conv": {"bias": 0.5147221684455872, "kernel": 37.479759216308594}, "layer_norm": {"bias": 2.020900011062622, "scale": 17.064470291137695}}, "6": {"conv": {"bias": 0.4947893023490906, "kernel": 40.64780044555664}, "layer_norm": {"bias": 0.5876954793930054, "scale": 19.058603286743164}}}}, "feature_projection": {"layer_norm": {"bias": 6.449953079223633, "scale": 16.628742218017578}, "projection": {"bias": 2.051578998565674, "kernel": 40.11214828491211}}, "masked_spec_embed": 11.914372444152832}}, "train/learning_rate": 0.0007397999870590866, "train/loss": 1.5998945236206055, "train/param_norm": 1282.9808349609375, "_runtime": 15543, "_timestamp": 1659286747, "_step": 3700}
|
wandb/run-20220731_124004-aa3ycswy/logs/debug-internal.log
ADDED
The diff for this file is too large to render.
See raw diff
|
|
wandb/run-20220731_124004-aa3ycswy/logs/debug.log
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
2022-07-31 12:40:04,019 INFO MainThread:3751729 [wandb_setup.py:_flush():71] setting env: {'project': 'wav2vec2', 'entity': 'NbAiLab'}
|
2 |
+
2022-07-31 12:40:04,019 INFO MainThread:3751729 [wandb_setup.py:_flush():71] setting login settings: {}
|
3 |
+
2022-07-31 12:40:04,019 INFO MainThread:3751729 [wandb_init.py:_log_setup():371] Logging user logs to /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_124004-aa3ycswy/logs/debug.log
|
4 |
+
2022-07-31 12:40:04,019 INFO MainThread:3751729 [wandb_init.py:_log_setup():372] Logging internal logs to /data/wav2vec2-1b-npsc-nst/wandb/run-20220731_124004-aa3ycswy/logs/debug-internal.log
|
5 |
+
2022-07-31 12:40:04,020 INFO MainThread:3751729 [wandb_init.py:init():404] calling init triggers
|
6 |
+
2022-07-31 12:40:04,020 INFO MainThread:3751729 [wandb_init.py:init():409] wandb.init called with sweep_config: {}
|
7 |
+
config: {}
|
8 |
+
2022-07-31 12:40:04,020 INFO MainThread:3751729 [wandb_init.py:init():460] starting backend
|
9 |
+
2022-07-31 12:40:04,020 INFO MainThread:3751729 [backend.py:_multiprocessing_setup():99] multiprocessing start_methods=fork,spawn,forkserver, using: spawn
|
10 |
+
2022-07-31 12:40:04,069 INFO MainThread:3751729 [backend.py:ensure_launched():216] starting backend process...
|
11 |
+
2022-07-31 12:40:04,116 INFO MainThread:3751729 [backend.py:ensure_launched():221] started backend process with pid: 3753015
|
12 |
+
2022-07-31 12:40:04,118 INFO MainThread:3751729 [wandb_init.py:init():469] backend started and connected
|
13 |
+
2022-07-31 12:40:04,132 INFO MainThread:3751729 [wandb_init.py:init():533] updated telemetry
|
14 |
+
2022-07-31 12:40:04,247 INFO MainThread:3751729 [wandb_init.py:init():563] communicating current version
|
15 |
+
2022-07-31 12:40:04,963 INFO MainThread:3751729 [wandb_init.py:init():568] got version response upgrade_message: "wandb version 0.12.21 is available! To upgrade, please run:\n $ pip install wandb --upgrade"
|
16 |
+
|
17 |
+
2022-07-31 12:40:04,963 INFO MainThread:3751729 [wandb_init.py:init():578] communicating run to backend with 30 second timeout
|
18 |
+
2022-07-31 12:40:05,280 INFO MainThread:3751729 [wandb_init.py:init():606] starting run threads in backend
|
19 |
+
2022-07-31 12:40:07,938 INFO MainThread:3751729 [wandb_run.py:_console_start():1810] atexit reg
|
20 |
+
2022-07-31 12:40:07,939 INFO MainThread:3751729 [wandb_run.py:_redirect():1684] redirect: SettingsConsole.REDIRECT
|
21 |
+
2022-07-31 12:40:07,939 INFO MainThread:3751729 [wandb_run.py:_redirect():1689] Redirecting console.
|
22 |
+
2022-07-31 12:40:07,941 INFO MainThread:3751729 [wandb_run.py:_redirect():1745] Redirects installed.
|
23 |
+
2022-07-31 12:40:07,941 INFO MainThread:3751729 [wandb_init.py:init():633] run started, returning control to user process
|
wandb/run-20220731_124004-aa3ycswy/run-aa3ycswy.wandb
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:b122ace3a038f0b434339a0b92a384299a6c3c33852080d03eb568cd818b5975
|
3 |
+
size 4827734
|