From 37c77aef3754eb8268e6100d90a7991682fabbc2 Mon Sep 17 00:00:00 2001 From: dohe0342 Date: Thu, 19 Jan 2023 11:27:19 +0900 Subject: [PATCH] from local --- egs/LJSpeech/ASR/add_alignments.sh | 12 + egs/LJSpeech/ASR/distillation_with_hubert.sh | 207 ++ egs/LJSpeech/ASR/generate-lm.sh | 20 + egs/LJSpeech/ASR/local/__init__.py | 0 .../ASR/local/add_alignment_librispeech.py | 190 ++ egs/LJSpeech/ASR/local/compile_hlg.py | 166 ++ egs/LJSpeech/ASR/local/compile_lg.py | 139 + .../ASR/local/compute_fbank_LJSpeech.py | 140 + .../local/compute_fbank_LJSpeech_pseudo.py | 140 + .../compute_fbank_gigaspeech_dev_test.py | 90 + .../local/compute_fbank_gigaspeech_splits.py | 170 ++ .../ASR/local/compute_fbank_librispeech.py | 134 + egs/LJSpeech/ASR/local/compute_fbank_musan.py | 105 + .../ASR/local/compute_fbank_userlibri.py | 131 + .../convert_transcript_words_to_tokens.py | 103 + .../ASR/local/display_manifest_statistics.py | 215 ++ egs/LJSpeech/ASR/local/download_lm.py | 97 + egs/LJSpeech/ASR/local/filter_cuts.py | 160 ++ .../ASR/local/generate_unique_lexicon.py | 98 + egs/LJSpeech/ASR/local/prepare_LJSpeech.py | 179 ++ .../ASR/local/prepare_LJSpeech_pseudo.py | 179 ++ .../ASR/local/prepare_LJSpeech_text.py | 35 + egs/LJSpeech/ASR/local/prepare_lang.py | 413 +++ egs/LJSpeech/ASR/local/prepare_lang_bpe.py | 259 ++ .../ASR/local/prepare_lm_training_data.py | 167 ++ egs/LJSpeech/ASR/local/prepare_userlibri.py | 255 ++ .../ASR/local/preprocess_gigaspeech.py | 129 + .../ASR/local/sort_lm_training_data.py | 141 + egs/LJSpeech/ASR/local/test_load_XL_split.py | 51 + egs/LJSpeech/ASR/local/test_prepare_lang.py | 104 + egs/LJSpeech/ASR/local/train_bpe_model.py | 97 + .../ASR/local/validate_bpe_lexicon.py | 77 + egs/LJSpeech/ASR/local/validate_manifest.py | 93 + .../ASR/outputs/bpe_histogram_org/plot_0.png | Bin 0 -> 30194 bytes .../ASR/outputs/bpe_histogram_org/plot_1.png | Bin 0 -> 27351 bytes .../ASR/outputs/bpe_histogram_org/plot_2.png | Bin 0 -> 28476 bytes .../ASR/outputs/bpe_histogram_org/plot_3.png | Bin 0 -> 25936 bytes .../ASR/outputs/bpe_histogram_org/plot_4.png | Bin 0 -> 23062 bytes .../ASR/outputs/bpe_histogram_org/plot_5.png | Bin 0 -> 22310 bytes .../ASR/outputs/bpe_histogram_org/plot_6.png | Bin 0 -> 22520 bytes .../ASR/outputs/bpe_histogram_org/plot_7.png | Bin 0 -> 21110 bytes .../ASR/outputs/bpe_histogram_org/plot_8.png | Bin 0 -> 19350 bytes .../ASR/outputs/bpe_histogram_org/plot_9.png | Bin 0 -> 17990 bytes .../outputs/bpe_histogram_pseudo/plot_0.png | Bin 0 -> 28421 bytes .../outputs/bpe_histogram_pseudo/plot_1.png | Bin 0 -> 28040 bytes .../outputs/bpe_histogram_pseudo/plot_2.png | Bin 0 -> 28497 bytes .../outputs/bpe_histogram_pseudo/plot_3.png | Bin 0 -> 25930 bytes .../outputs/bpe_histogram_pseudo/plot_4.png | Bin 0 -> 23806 bytes .../outputs/bpe_histogram_pseudo/plot_5.png | Bin 0 -> 22341 bytes .../outputs/bpe_histogram_pseudo/plot_6.png | Bin 0 -> 22581 bytes .../outputs/bpe_histogram_pseudo/plot_7.png | Bin 0 -> 21197 bytes .../outputs/bpe_histogram_pseudo/plot_8.png | Bin 0 -> 19384 bytes .../outputs/bpe_histogram_pseudo/plot_9.png | Bin 0 -> 17955 bytes egs/LJSpeech/ASR/outputs/density_plot.png | Bin 0 -> 24102 bytes .../ASR/outputs/phone_histogram_org/plot.png | Bin 0 -> 18227 bytes .../outputs/phone_histogram_pseudo/plot.png | Bin 0 -> 18293 bytes .../ASR/outputs/word_histogram_org/plot.png | Bin 0 -> 16158 bytes .../outputs/word_histogram_pseudo/plot.png | Bin 0 -> 17258 bytes .../ctc_output.1.bias/abs_diff.png | Bin 0 -> 9078 bytes .../outputs_sim/ctc_output.1.bias/cos_sim.png | Bin 0 -> 8689 bytes .../ctc_output.1.bias/rel_diff.png | Bin 0 -> 10980 bytes .../ctc_output.1.weight/abs_diff.png | Bin 0 -> 9281 bytes .../ctc_output.1.weight/cos_sim.png | Bin 0 -> 8689 bytes .../ctc_output.1.weight/rel_diff.png | Bin 0 -> 10967 bytes .../decoder.conv.weight/abs_diff.png | Bin 0 -> 7752 bytes .../decoder.conv.weight/cos_sim.png | Bin 0 -> 8682 bytes .../decoder.conv.weight/rel_diff.png | Bin 0 -> 10489 bytes .../decoder.embedding.weight/abs_diff.png | Bin 0 -> 14725 bytes .../decoder.embedding.weight/cos_sim.png | Bin 0 -> 8689 bytes .../decoder.embedding.weight/rel_diff.png | Bin 0 -> 8807 bytes .../abs_diff.png | Bin 0 -> 11164 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13113 bytes .../abs_diff.png | Bin 0 -> 8084 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11996 bytes .../abs_diff.png | Bin 0 -> 9820 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13101 bytes .../abs_diff.png | Bin 0 -> 10305 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11994 bytes .../abs_diff.png | Bin 0 -> 12505 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10980 bytes .../abs_diff.png | Bin 0 -> 10968 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13099 bytes .../abs_diff.png | Bin 0 -> 10703 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13764 bytes .../abs_diff.png | Bin 0 -> 11892 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12033 bytes .../abs_diff.png | Bin 0 -> 12723 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11009 bytes .../abs_diff.png | Bin 0 -> 9911 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12031 bytes .../abs_diff.png | Bin 0 -> 9333 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11954 bytes .../abs_diff.png | Bin 0 -> 8214 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13098 bytes .../abs_diff.png | Bin 0 -> 9266 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13100 bytes .../abs_diff.png | Bin 0 -> 10583 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12042 bytes .../abs_diff.png | Bin 0 -> 11949 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14189 bytes .../abs_diff.png | Bin 0 -> 8216 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13078 bytes .../abs_diff.png | Bin 0 -> 8837 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10981 bytes .../abs_diff.png | Bin 0 -> 11193 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12031 bytes .../abs_diff.png | Bin 0 -> 8644 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13081 bytes .../abs_diff.png | Bin 0 -> 10944 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12023 bytes .../abs_diff.png | Bin 0 -> 9644 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13756 bytes .../abs_diff.png | Bin 0 -> 10981 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13102 bytes .../abs_diff.png | Bin 0 -> 9332 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12736 bytes .../abs_diff.png | Bin 0 -> 8641 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14175 bytes .../abs_diff.png | Bin 0 -> 10074 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10949 bytes .../abs_diff.png | Bin 0 -> 10590 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11974 bytes .../abs_diff.png | Bin 0 -> 9069 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12808 bytes .../abs_diff.png | Bin 0 -> 9963 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13105 bytes .../abs_diff.png | Bin 0 -> 9314 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11995 bytes .../abs_diff.png | Bin 0 -> 9899 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11996 bytes .../abs_diff.png | Bin 0 -> 12748 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10074 bytes .../abs_diff.png | Bin 0 -> 9981 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13119 bytes .../abs_diff.png | Bin 0 -> 11195 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10981 bytes .../abs_diff.png | Bin 0 -> 11910 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12019 bytes .../abs_diff.png | Bin 0 -> 9584 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10075 bytes .../abs_diff.png | Bin 0 -> 8702 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15232 bytes .../abs_diff.png | Bin 0 -> 10534 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10064 bytes .../abs_diff.png | Bin 0 -> 9099 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15210 bytes .../abs_diff.png | Bin 0 -> 11823 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11106 bytes .../abs_diff.png | Bin 0 -> 8725 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14235 bytes .../abs_diff.png | Bin 0 -> 9269 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10312 bytes .../abs_diff.png | Bin 0 -> 9905 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10062 bytes .../abs_diff.png | Bin 0 -> 11946 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10968 bytes .../abs_diff.png | Bin 0 -> 7925 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15248 bytes .../abs_diff.png | Bin 0 -> 11663 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11921 bytes .../abs_diff.png | Bin 0 -> 10668 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10983 bytes .../abs_diff.png | Bin 0 -> 12100 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14151 bytes .../abs_diff.png | Bin 0 -> 8613 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14166 bytes .../abs_diff.png | Bin 0 -> 9785 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10058 bytes .../abs_diff.png | Bin 0 -> 8635 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13138 bytes .../abs_diff.png | Bin 0 -> 8607 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10955 bytes .../abs_diff.png | Bin 0 -> 9917 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14213 bytes .../abs_diff.png | Bin 0 -> 12918 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 16115 bytes .../abs_diff.png | Bin 0 -> 9297 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12010 bytes .../abs_diff.png | Bin 0 -> 12198 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13757 bytes .../abs_diff.png | Bin 0 -> 10435 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12030 bytes .../abs_diff.png | Bin 0 -> 8334 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12775 bytes .../abs_diff.png | Bin 0 -> 10447 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14244 bytes .../abs_diff.png | Bin 0 -> 13141 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11995 bytes .../abs_diff.png | Bin 0 -> 8234 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13127 bytes .../abs_diff.png | Bin 0 -> 9616 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13746 bytes .../abs_diff.png | Bin 0 -> 11403 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12765 bytes .../abs_diff.png | Bin 0 -> 11960 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11987 bytes .../abs_diff.png | Bin 0 -> 8209 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12030 bytes .../abs_diff.png | Bin 0 -> 12114 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11988 bytes .../abs_diff.png | Bin 0 -> 10449 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12041 bytes .../abs_diff.png | Bin 0 -> 8615 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12008 bytes .../abs_diff.png | Bin 0 -> 10941 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12023 bytes .../abs_diff.png | Bin 0 -> 10419 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13748 bytes .../abs_diff.png | Bin 0 -> 10938 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13060 bytes .../abs_diff.png | Bin 0 -> 9802 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11948 bytes .../abs_diff.png | Bin 0 -> 8625 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14208 bytes .../abs_diff.png | Bin 0 -> 11139 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11143 bytes .../abs_diff.png | Bin 0 -> 10617 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12004 bytes .../abs_diff.png | Bin 0 -> 11137 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13723 bytes .../abs_diff.png | Bin 0 -> 8628 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13106 bytes .../abs_diff.png | Bin 0 -> 9305 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13097 bytes .../abs_diff.png | Bin 0 -> 10618 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12011 bytes .../abs_diff.png | Bin 0 -> 10972 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10074 bytes .../abs_diff.png | Bin 0 -> 8615 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13089 bytes .../abs_diff.png | Bin 0 -> 8075 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11943 bytes .../abs_diff.png | Bin 0 -> 8056 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13084 bytes .../abs_diff.png | Bin 0 -> 11914 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12028 bytes .../abs_diff.png | Bin 0 -> 10939 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12021 bytes .../abs_diff.png | Bin 0 -> 9626 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10972 bytes .../abs_diff.png | Bin 0 -> 10298 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12013 bytes .../abs_diff.png | Bin 0 -> 9827 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10972 bytes .../abs_diff.png | Bin 0 -> 8063 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13141 bytes .../abs_diff.png | Bin 0 -> 8866 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11123 bytes .../abs_diff.png | Bin 0 -> 10405 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12033 bytes .../abs_diff.png | Bin 0 -> 11118 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10074 bytes .../abs_diff.png | Bin 0 -> 9911 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13076 bytes .../abs_diff.png | Bin 0 -> 9293 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14199 bytes .../abs_diff.png | Bin 0 -> 10445 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13121 bytes .../abs_diff.png | Bin 0 -> 9899 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14205 bytes .../abs_diff.png | Bin 0 -> 9934 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13100 bytes .../abs_diff.png | Bin 0 -> 11903 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10980 bytes .../abs_diff.png | Bin 0 -> 9273 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14163 bytes .../abs_diff.png | Bin 0 -> 11891 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11980 bytes .../abs_diff.png | Bin 0 -> 10293 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12016 bytes .../abs_diff.png | Bin 0 -> 8074 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10309 bytes .../abs_diff.png | Bin 0 -> 10259 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12006 bytes .../abs_diff.png | Bin 0 -> 11107 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11924 bytes .../abs_diff.png | Bin 0 -> 8627 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13100 bytes .../abs_diff.png | Bin 0 -> 9310 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11122 bytes .../abs_diff.png | Bin 0 -> 10590 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11976 bytes .../abs_diff.png | Bin 0 -> 10517 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14166 bytes .../abs_diff.png | Bin 0 -> 9328 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11994 bytes .../abs_diff.png | Bin 0 -> 9254 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14185 bytes .../abs_diff.png | Bin 0 -> 9668 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11968 bytes .../abs_diff.png | Bin 0 -> 10719 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14190 bytes .../abs_diff.png | Bin 0 -> 9320 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11985 bytes .../abs_diff.png | Bin 0 -> 11909 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15188 bytes .../abs_diff.png | Bin 0 -> 9814 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13096 bytes .../abs_diff.png | Bin 0 -> 11885 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11997 bytes .../abs_diff.png | Bin 0 -> 10284 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11980 bytes .../abs_diff.png | Bin 0 -> 9304 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11093 bytes .../abs_diff.png | Bin 0 -> 9440 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11975 bytes .../abs_diff.png | Bin 0 -> 11813 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11913 bytes .../abs_diff.png | Bin 0 -> 8638 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14221 bytes .../abs_diff.png | Bin 0 -> 9301 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10305 bytes .../abs_diff.png | Bin 0 -> 10622 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11997 bytes .../abs_diff.png | Bin 0 -> 9817 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14208 bytes .../abs_diff.png | Bin 0 -> 9922 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13121 bytes .../abs_diff.png | Bin 0 -> 10412 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14201 bytes .../abs_diff.png | Bin 0 -> 9656 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12034 bytes .../abs_diff.png | Bin 0 -> 10720 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14175 bytes .../abs_diff.png | Bin 0 -> 9915 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13070 bytes .../abs_diff.png | Bin 0 -> 8067 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15222 bytes .../abs_diff.png | Bin 0 -> 9803 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12025 bytes .../abs_diff.png | Bin 0 -> 8629 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12022 bytes .../abs_diff.png | Bin 0 -> 10309 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12068 bytes .../abs_diff.png | Bin 0 -> 8057 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12761 bytes .../abs_diff.png | Bin 0 -> 10302 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12055 bytes .../abs_diff.png | Bin 0 -> 9827 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11005 bytes .../abs_diff.png | Bin 0 -> 8633 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13132 bytes .../abs_diff.png | Bin 0 -> 8748 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10310 bytes .../abs_diff.png | Bin 0 -> 9641 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12018 bytes .../abs_diff.png | Bin 0 -> 9820 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14219 bytes .../abs_diff.png | Bin 0 -> 9910 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13121 bytes .../abs_diff.png | Bin 0 -> 8267 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15222 bytes .../abs_diff.png | Bin 0 -> 10416 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12016 bytes .../abs_diff.png | Bin 0 -> 10726 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15263 bytes .../abs_diff.png | Bin 0 -> 9916 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13125 bytes .../abs_diff.png | Bin 0 -> 8075 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10974 bytes .../abs_diff.png | Bin 0 -> 10422 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13067 bytes .../abs_diff.png | Bin 0 -> 9808 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13093 bytes .../abs_diff.png | Bin 0 -> 10975 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13099 bytes .../abs_diff.png | Bin 0 -> 11184 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10970 bytes .../abs_diff.png | Bin 0 -> 10976 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14183 bytes .../abs_diff.png | Bin 0 -> 9331 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10977 bytes .../abs_diff.png | Bin 0 -> 9310 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14208 bytes .../abs_diff.png | Bin 0 -> 10472 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13775 bytes .../abs_diff.png | Bin 0 -> 10427 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13128 bytes .../abs_diff.png | Bin 0 -> 9826 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14230 bytes .../abs_diff.png | Bin 0 -> 9912 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14224 bytes .../abs_diff.png | Bin 0 -> 9184 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10094 bytes .../abs_diff.png | Bin 0 -> 8346 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13104 bytes .../abs_diff.png | Bin 0 -> 11375 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15246 bytes .../abs_diff.png | Bin 0 -> 9912 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14217 bytes .../abs_diff.png | Bin 0 -> 11176 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10057 bytes .../abs_diff.png | Bin 0 -> 9798 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12054 bytes .../abs_diff.png | Bin 0 -> 10426 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13110 bytes .../abs_diff.png | Bin 0 -> 11774 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14250 bytes .../abs_diff.png | Bin 0 -> 13430 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15206 bytes .../abs_diff.png | Bin 0 -> 10293 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15271 bytes .../abs_diff.png | Bin 0 -> 9356 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12782 bytes .../abs_diff.png | Bin 0 -> 9308 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14197 bytes .../abs_diff.png | Bin 0 -> 10201 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11090 bytes .../abs_diff.png | Bin 0 -> 9119 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15252 bytes .../abs_diff.png | Bin 0 -> 10509 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14230 bytes .../abs_diff.png | Bin 0 -> 9920 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15221 bytes .../abs_diff.png | Bin 0 -> 9186 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10063 bytes .../abs_diff.png | Bin 0 -> 9915 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10077 bytes .../abs_diff.png | Bin 0 -> 9817 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15206 bytes .../abs_diff.png | Bin 0 -> 10592 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15230 bytes .../abs_diff.png | Bin 0 -> 8810 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13093 bytes .../abs_diff.png | Bin 0 -> 8266 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13139 bytes .../abs_diff.png | Bin 0 -> 9185 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14160 bytes .../abs_diff.png | Bin 0 -> 9461 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15252 bytes .../abs_diff.png | Bin 0 -> 12444 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14156 bytes .../abs_diff.png | Bin 0 -> 9095 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14175 bytes .../abs_diff.png | Bin 0 -> 9858 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11132 bytes .../abs_diff.png | Bin 0 -> 9311 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14187 bytes .../abs_diff.png | Bin 0 -> 7943 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11139 bytes .../abs_diff.png | Bin 0 -> 9122 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10087 bytes .../abs_diff.png | Bin 0 -> 10726 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15220 bytes .../abs_diff.png | Bin 0 -> 8630 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15239 bytes .../abs_diff.png | Bin 0 -> 11667 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11930 bytes .../abs_diff.png | Bin 0 -> 9920 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 10988 bytes .../abs_diff.png | Bin 0 -> 9779 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13092 bytes .../abs_diff.png | Bin 0 -> 9317 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 15239 bytes .../abs_diff.png | Bin 0 -> 10464 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11996 bytes .../abs_diff.png | Bin 0 -> 9810 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13093 bytes .../abs_diff.png | Bin 0 -> 8065 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13094 bytes .../abs_diff.png | Bin 0 -> 9653 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13094 bytes .../abs_diff.png | Bin 0 -> 8085 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14200 bytes .../abs_diff.png | Bin 0 -> 10456 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13097 bytes .../abs_diff.png | Bin 0 -> 8063 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14175 bytes .../abs_diff.png | Bin 0 -> 8327 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13103 bytes .../abs_diff.png | Bin 0 -> 8635 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14183 bytes .../abs_diff.png | Bin 0 -> 8330 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13098 bytes .../abs_diff.png | Bin 0 -> 8627 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14214 bytes .../abs_diff.png | Bin 0 -> 9119 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13123 bytes .../abs_diff.png | Bin 0 -> 9892 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14188 bytes .../abs_diff.png | Bin 0 -> 9615 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 11984 bytes .../abs_diff.png | Bin 0 -> 9600 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 14228 bytes .../abs_diff.png | Bin 0 -> 8635 bytes .../cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 12019 bytes .../encoder.output_layer.0.bias/abs_diff.png | Bin 0 -> 11945 bytes .../encoder.output_layer.0.bias/cos_sim.png | Bin 0 -> 8689 bytes .../encoder.output_layer.0.bias/rel_diff.png | Bin 0 -> 16132 bytes .../abs_diff.png | Bin 0 -> 8390 bytes .../encoder.output_layer.0.weight/cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 13120 bytes .../abs_diff.png | Bin 0 -> 8463 bytes .../encoder.output_layer.1.weight/cos_sim.png | Bin 0 -> 8689 bytes .../rel_diff.png | Bin 0 -> 16060 bytes .../joiner.decoder_proj.bias/abs_diff.png | Bin 0 -> 9137 bytes .../joiner.decoder_proj.bias/cos_sim.png | Bin 0 -> 8692 bytes .../joiner.decoder_proj.bias/rel_diff.png | Bin 0 -> 11348 bytes .../joiner.decoder_proj.weight/abs_diff.png | Bin 0 -> 12458 bytes .../joiner.decoder_proj.weight/cos_sim.png | Bin 0 -> 8688 bytes .../joiner.decoder_proj.weight/rel_diff.png | Bin 0 -> 11778 bytes .../joiner.encoder_proj.bias/abs_diff.png | Bin 0 -> 8258 bytes .../joiner.encoder_proj.bias/cos_sim.png | Bin 0 -> 8692 bytes .../joiner.encoder_proj.bias/rel_diff.png | Bin 0 -> 10679 bytes .../joiner.encoder_proj.weight/abs_diff.png | Bin 0 -> 11091 bytes .../joiner.encoder_proj.weight/cos_sim.png | Bin 0 -> 8680 bytes .../joiner.encoder_proj.weight/rel_diff.png | Bin 0 -> 10531 bytes .../joiner.output_linear.bias/abs_diff.png | Bin 0 -> 11930 bytes .../joiner.output_linear.bias/cos_sim.png | Bin 0 -> 8692 bytes .../joiner.output_linear.bias/rel_diff.png | Bin 0 -> 9850 bytes .../joiner.output_linear.weight/abs_diff.png | Bin 0 -> 11391 bytes .../joiner.output_linear.weight/cos_sim.png | Bin 0 -> 8687 bytes .../joiner.output_linear.weight/rel_diff.png | Bin 0 -> 11793 bytes .../simple_am_proj.bias/abs_diff.png | Bin 0 -> 10970 bytes .../simple_am_proj.bias/cos_sim.png | Bin 0 -> 8689 bytes .../simple_am_proj.bias/rel_diff.png | Bin 0 -> 10728 bytes .../simple_am_proj.weight/abs_diff.png | Bin 0 -> 10384 bytes .../simple_am_proj.weight/cos_sim.png | Bin 0 -> 8690 bytes .../simple_am_proj.weight/rel_diff.png | Bin 0 -> 12468 bytes .../simple_lm_proj.bias/abs_diff.png | Bin 0 -> 9926 bytes .../simple_lm_proj.bias/cos_sim.png | Bin 0 -> 8689 bytes .../simple_lm_proj.bias/rel_diff.png | Bin 0 -> 12455 bytes .../simple_lm_proj.weight/abs_diff.png | Bin 0 -> 14643 bytes .../simple_lm_proj.weight/cos_sim.png | Bin 0 -> 8686 bytes .../simple_lm_proj.weight/rel_diff.png | Bin 0 -> 8819 bytes egs/LJSpeech/ASR/prepare.sh | 158 ++ egs/LJSpeech/ASR/prepare_giga_speech.sh | 142 + egs/LJSpeech/ASR/prepare_librispeech.sh | 385 +++ egs/LJSpeech/ASR/prepare_pseudo_LJ.sh | 157 ++ .../README.md | 57 + .../__init__.py | 0 .../asr_datamodule.py | 1005 +++++++ .../beam_search.py | 2342 ++++++++++++++++ .../checkpoint.py | 225 ++ .../ctc_decode.py | 818 ++++++ .../d2v-T/config.yaml | 59 + .../d2v-T/run.sh | 69 + ....out.tfevents.1671954484.icefall.3524353.0 | Bin 0 -> 39354 bytes ....out.tfevents.1671968552.icefall.4052698.0 | Bin 0 -> 39354 bytes ...s.out.tfevents.1672019298.icefall.387040.0 | Bin 0 -> 1743419 bytes ....out.tfevents.1672373045.icefall.2877575.0 | Bin 0 -> 9879 bytes .../data2vec_audio.py | 539 ++++ .../data2vec_encoder.py | 208 ++ .../decode.py | 836 ++++++ .../decode_librispeech.py | 803 ++++++ .../decode_userlibri.py | 807 ++++++ .../decoder.py | 102 + .../encoder_interface.py | 43 + .../export.py | 320 +++ .../jit_pretrained.py | 271 ++ .../jit_pretrained_ctc.py | 423 +++ .../joiner.py | 65 + .../model.py | 266 ++ .../nets_utils.py | 503 ++++ .../optim.py | 1061 ++++++++ .../pretrained.py | 353 +++ .../pretrained_ctc.py | 441 +++ .../scaling.py | 1178 ++++++++ .../scaling_converter.py | 114 + .../test_model.py | 56 + .../train.py | 1619 +++++++++++ .../zipformer.py | 1866 +++++++++++++ egs/LJSpeech/ASR/run.sh | 76 + egs/LJSpeech/ASR/run_unsup.sh | 49 + egs/LJSpeech/ASR/run_unsup_ft.sh | 75 + egs/LJSpeech/ASR/shared/make_kn_lm.py | 444 +++ egs/LJSpeech/ASR/shared/parse_options.sh | 97 + .../README.md | 57 + .../__init__.py | 0 .../asr_datamodule.py | 1005 +++++++ .../beam_search.py | 2387 +++++++++++++++++ .../checkpoint.py | 225 ++ .../ctc_decode.py | 818 ++++++ .../d2v-T-unsup_trial1/config.yaml | 65 + .../d2v-T-unsup_trial1/run.sh | 74 + ...s.out.tfevents.1674041380.icefall.541328.0 | Bin 0 -> 40 bytes ...s.out.tfevents.1674041471.icefall.542414.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674041633.icefall.545239.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674041682.icefall.548064.0 | Bin 0 -> 40 bytes ...s.out.tfevents.1674041756.icefall.549151.0 | Bin 0 -> 40 bytes ...s.out.tfevents.1674041805.icefall.550238.0 | Bin 0 -> 40 bytes ...s.out.tfevents.1674041871.icefall.551344.0 | Bin 0 -> 40 bytes ...s.out.tfevents.1674041920.icefall.552450.0 | Bin 0 -> 40 bytes ...s.out.tfevents.1674041967.icefall.553556.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674042112.icefall.556381.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674042207.icefall.559206.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674042432.icefall.562031.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674042674.icefall.564856.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674042818.icefall.567681.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674043213.icefall.570506.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674043318.icefall.573331.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674043483.icefall.576156.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674044099.icefall.578981.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674044304.icefall.581806.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674044432.icefall.584631.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674044594.icefall.587456.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674044697.icefall.590281.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674044824.icefall.593106.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674045148.icefall.595931.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674045257.icefall.598756.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674045391.icefall.601581.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674045540.icefall.604406.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674045603.icefall.607231.0 | Bin 0 -> 607 bytes ...s.out.tfevents.1674045937.icefall.610057.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674046176.icefall.612882.0 | Bin 0 -> 87 bytes ...s.out.tfevents.1674046575.icefall.615707.0 | Bin 0 -> 371 bytes ...s.out.tfevents.1674047923.icefall.620135.0 | Bin 0 -> 18854 bytes .../d2v-T/config.yaml | 59 + .../d2v-T/run.sh | 69 + ....out.tfevents.1671954484.icefall.3524353.0 | Bin 0 -> 39354 bytes ....out.tfevents.1671968552.icefall.4052698.0 | Bin 0 -> 39354 bytes ...s.out.tfevents.1672019298.icefall.387040.0 | Bin 0 -> 1743419 bytes ....out.tfevents.1672373045.icefall.2877575.0 | Bin 0 -> 9879 bytes ...s.out.tfevents.1673520074.icefall.109647.0 | Bin 0 -> 40 bytes .../data2vec_audio.py | 540 ++++ .../data2vec_encoder.py | 210 ++ .../decode.py | 846 ++++++ .../decode_librispeech.py | 803 ++++++ .../decode_userlibri.py | 807 ++++++ .../decoder.py | 102 + .../encoder_interface.py | 43 + .../export.py | 320 +++ .../jit_pretrained.py | 271 ++ .../jit_pretrained_ctc.py | 423 +++ .../joiner.py | 65 + .../model.py | 306 +++ .../nets_utils.py | 503 ++++ .../optim.py | 1061 ++++++++ .../pretrained.py | 353 +++ .../pretrained_ctc.py | 441 +++ .../scaling.py | 1178 ++++++++ .../scaling_converter.py | 114 + .../test_model.py | 56 + .../train.py | 1608 +++++++++++ .../unsup_LJft_trial2/config.yaml | 65 + .../unsup_LJft_trial2/run.sh | 74 + ...s.out.tfevents.1674065530.icefall.778651.0 | Bin 0 -> 23637 bytes .../zipformer.py | 1866 +++++++++++++ .../ASR/utils/decoded_result_to_text_files.py | 31 + egs/LJSpeech/ASR/utils/plot_similarities.py | 77 + egs/LJSpeech/ASR/utils/plot_word_histogram.py | 227 ++ egs/librispeech/ASR/.gtrans.sh.swp | Bin 12288 -> 0 bytes .../.conformer_randomcombine.py.swp | Bin 16384 -> 0 bytes 851 files changed, 39677 insertions(+) create mode 100755 egs/LJSpeech/ASR/add_alignments.sh create mode 100755 egs/LJSpeech/ASR/distillation_with_hubert.sh create mode 100755 egs/LJSpeech/ASR/generate-lm.sh create mode 100755 egs/LJSpeech/ASR/local/__init__.py create mode 100755 egs/LJSpeech/ASR/local/add_alignment_librispeech.py create mode 100755 egs/LJSpeech/ASR/local/compile_hlg.py create mode 100755 egs/LJSpeech/ASR/local/compile_lg.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_LJSpeech.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_LJSpeech_pseudo.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_dev_test.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_splits.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_librispeech.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_musan.py create mode 100755 egs/LJSpeech/ASR/local/compute_fbank_userlibri.py create mode 100755 egs/LJSpeech/ASR/local/convert_transcript_words_to_tokens.py create mode 100755 egs/LJSpeech/ASR/local/display_manifest_statistics.py create mode 100755 egs/LJSpeech/ASR/local/download_lm.py create mode 100755 egs/LJSpeech/ASR/local/filter_cuts.py create mode 100755 egs/LJSpeech/ASR/local/generate_unique_lexicon.py create mode 100755 egs/LJSpeech/ASR/local/prepare_LJSpeech.py create mode 100755 egs/LJSpeech/ASR/local/prepare_LJSpeech_pseudo.py create mode 100755 egs/LJSpeech/ASR/local/prepare_LJSpeech_text.py create mode 100755 egs/LJSpeech/ASR/local/prepare_lang.py create mode 100755 egs/LJSpeech/ASR/local/prepare_lang_bpe.py create mode 100755 egs/LJSpeech/ASR/local/prepare_lm_training_data.py create mode 100755 egs/LJSpeech/ASR/local/prepare_userlibri.py create mode 100755 egs/LJSpeech/ASR/local/preprocess_gigaspeech.py create mode 100755 egs/LJSpeech/ASR/local/sort_lm_training_data.py create mode 100755 egs/LJSpeech/ASR/local/test_load_XL_split.py create mode 100755 egs/LJSpeech/ASR/local/test_prepare_lang.py create mode 100755 egs/LJSpeech/ASR/local/train_bpe_model.py create mode 100755 egs/LJSpeech/ASR/local/validate_bpe_lexicon.py create mode 100755 egs/LJSpeech/ASR/local/validate_manifest.py create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_0.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_1.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_2.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_3.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_4.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_5.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_6.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_7.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_8.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_9.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_0.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_1.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_2.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_3.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_4.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_5.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_6.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_7.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_8.png create mode 100755 egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_9.png create mode 100755 egs/LJSpeech/ASR/outputs/density_plot.png create mode 100755 egs/LJSpeech/ASR/outputs/phone_histogram_org/plot.png create mode 100755 egs/LJSpeech/ASR/outputs/phone_histogram_pseudo/plot.png create mode 100644 egs/LJSpeech/ASR/outputs/word_histogram_org/plot.png create mode 100644 egs/LJSpeech/ASR/outputs/word_histogram_pseudo/plot.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/ctc_output.1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/ctc_output.1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/ctc_output.1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_am_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_am_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_am_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/rel_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/abs_diff.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/cos_sim.png create mode 100755 egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/rel_diff.png create mode 100755 egs/LJSpeech/ASR/prepare.sh create mode 100755 egs/LJSpeech/ASR/prepare_giga_speech.sh create mode 100755 egs/LJSpeech/ASR/prepare_librispeech.sh create mode 100755 egs/LJSpeech/ASR/prepare_pseudo_LJ.sh create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/README.md create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/__init__.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/asr_datamodule.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/beam_search.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/checkpoint.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/ctc_decode.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/config.yaml create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/run.sh create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671954484.icefall.3524353.0 create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671968552.icefall.4052698.0 create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672019298.icefall.387040.0 create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672373045.icefall.2877575.0 create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_audio.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_encoder.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_librispeech.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_userlibri.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decoder.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/encoder_interface.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/export.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained_ctc.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/joiner.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/model.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/nets_utils.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/optim.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained_ctc.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling_converter.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/test_model.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/train.py create mode 100755 egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/zipformer.py create mode 100755 egs/LJSpeech/ASR/run.sh create mode 100755 egs/LJSpeech/ASR/run_unsup.sh create mode 100755 egs/LJSpeech/ASR/run_unsup_ft.sh create mode 100755 egs/LJSpeech/ASR/shared/make_kn_lm.py create mode 100755 egs/LJSpeech/ASR/shared/parse_options.sh create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/README.md create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/__init__.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/asr_datamodule.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/beam_search.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/checkpoint.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/ctc_decode.py create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/config.yaml create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/run.sh create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041380.icefall.541328.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041471.icefall.542414.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041633.icefall.545239.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041682.icefall.548064.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041756.icefall.549151.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041805.icefall.550238.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041871.icefall.551344.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041920.icefall.552450.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041967.icefall.553556.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042112.icefall.556381.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042207.icefall.559206.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042432.icefall.562031.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042674.icefall.564856.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042818.icefall.567681.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043213.icefall.570506.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043318.icefall.573331.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043483.icefall.576156.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044099.icefall.578981.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044304.icefall.581806.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044432.icefall.584631.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044594.icefall.587456.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044697.icefall.590281.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044824.icefall.593106.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045148.icefall.595931.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045257.icefall.598756.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045391.icefall.601581.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045540.icefall.604406.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045603.icefall.607231.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045937.icefall.610057.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674046176.icefall.612882.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674046575.icefall.615707.0 create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674047923.icefall.620135.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/config.yaml create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/run.sh create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671954484.icefall.3524353.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671968552.icefall.4052698.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672019298.icefall.387040.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672373045.icefall.2877575.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1673520074.icefall.109647.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/data2vec_audio.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/data2vec_encoder.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_librispeech.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_userlibri.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decoder.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/encoder_interface.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/export.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained_ctc.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/joiner.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/model.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/nets_utils.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/optim.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained_ctc.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling_converter.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/test_model.py create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/train.py create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/config.yaml create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/run.sh create mode 100644 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/tensorboard/events.out.tfevents.1674065530.icefall.778651.0 create mode 100755 egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/zipformer.py create mode 100755 egs/LJSpeech/ASR/utils/decoded_result_to_text_files.py create mode 100755 egs/LJSpeech/ASR/utils/plot_similarities.py create mode 100755 egs/LJSpeech/ASR/utils/plot_word_histogram.py delete mode 100644 egs/librispeech/ASR/.gtrans.sh.swp delete mode 100644 egs/librispeech/ASR/pruned_transducer_stateless_gtrans/.conformer_randomcombine.py.swp diff --git a/egs/LJSpeech/ASR/add_alignments.sh b/egs/LJSpeech/ASR/add_alignments.sh new file mode 100755 index 000000000..5e4480bf6 --- /dev/null +++ b/egs/LJSpeech/ASR/add_alignments.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +set -eou pipefail + +alignments_dir=data/alignment +cuts_in_dir=data/fbank +cuts_out_dir=data/fbank_ali + +python3 ./local/add_alignment_librispeech.py \ + --alignments-dir $alignments_dir \ + --cuts-in-dir $cuts_in_dir \ + --cuts-out-dir $cuts_out_dir diff --git a/egs/LJSpeech/ASR/distillation_with_hubert.sh b/egs/LJSpeech/ASR/distillation_with_hubert.sh new file mode 100755 index 000000000..2a69d3921 --- /dev/null +++ b/egs/LJSpeech/ASR/distillation_with_hubert.sh @@ -0,0 +1,207 @@ +#!/usr/bin/env bash +# +# A short introduction about distillation framework. +# +# A typical traditional distillation method is +# Loss(teacher embedding, student embedding). +# +# Comparing to these, the proposed distillation framework contains two mainly steps: +# codebook indexes = quantizer.encode(teacher embedding) +# Loss(codebook indexes, student embedding) +# +# Things worth to meantion: +# 1. The float type teacher embedding is quantized into a sequence of +# 8-bit integer codebook indexes. +# 2. a middle layer 36(1-based) out of total 48 layers is used to extract +# teacher embeddings. +# 3. a middle layer 6(1-based) out of total 6 layers is used to extract +# student embeddings. +# +# To directly download the extracted codebook indexes for model distillation, you can +# set stage=2, stop_stage=4, use_extracted_codebook=True +# +# To start from scratch, you can +# set stage=0, stop_stage=4, use_extracted_codebook=False + +stage=0 +stop_stage=4 + +# Set the GPUs available. +# This script requires at least one GPU. +# You MUST set environment variable "CUDA_VISIBLE_DEVICES", +# even you only have ONE GPU. It needed by CodebookIndexExtractor to determine numbert of jobs to extract codebook indexes parallelly. + +# Suppose only one GPU exists: +# export CUDA_VISIBLE_DEVICES="0" +# +# Suppose GPU 2,3,4,5 are available. +export CUDA_VISIBLE_DEVICES="0,1,2,3" + +exp_dir=./pruned_transducer_stateless6/exp +mkdir -p $exp_dir + +# full_libri can be "True" or "False" +# "True" -> use full librispeech dataset for distillation +# "False" -> use train-clean-100 subset for distillation +full_libri=False + +# use_extracted_codebook can be "True" or "False" +# "True" -> stage 0 and stage 1 would be skipped, +# and directly download the extracted codebook indexes for distillation +# "False" -> start from scratch +use_extracted_codebook=False + +# teacher_model_id can be one of +# "hubert_xtralarge_ll60k_finetune_ls960" -> fine-tuned model, it is the one we currently use. +# "hubert_xtralarge_ll60k" -> pretrained model without fintuing +teacher_model_id=hubert_xtralarge_ll60k_finetune_ls960 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ] && [ ! "$use_extracted_codebook" == "True" ]; then + log "Stage 0: Download HuBERT model" + # Preparation stage. + + # Install fairseq according to: + # https://github.com/pytorch/fairseq + # when testing this code: + # commit 806855bf660ea748ed7ffb42fe8dcc881ca3aca0 is used. + has_fairseq=$(python3 -c "import importlib; print(importlib.util.find_spec('fairseq') is not None)") + if [ $has_fairseq == 'False' ]; then + log "Please install fairseq before running following stages" + exit 1 + fi + + # Install quantization toolkit: + # pip install git+https://github.com/k2-fsa/multi_quantization.git + # or + # pip install multi_quantization + + has_quantization=$(python3 -c "import importlib; print(importlib.util.find_spec('multi_quantization') is not None)") + if [ $has_quantization == 'False' ]; then + log "Please install multi_quantization before running following stages" + exit 1 + fi + + log "Download HuBERT model." + # Parameters about model. + hubert_model_dir=${exp_dir}/hubert_models + hubert_model=${hubert_model_dir}/${teacher_model_id}.pt + mkdir -p ${hubert_model_dir} + # For more models refer to: https://github.com/pytorch/fairseq/tree/main/examples/hubert + if [ -f ${hubert_model} ]; then + log "HuBERT model alread exists." + else + wget -c https://dl.fbaipublicfiles.com/hubert/${teacher_model_id}.pt -P ${hubert_model_dir} + wget -c wget https://dl.fbaipublicfiles.com/fairseq/wav2vec/dict.ltr.txt -P ${hubert_model_dir} + fi +fi + +if [ ! -d ./data/fbank ]; then + log "This script assumes ./data/fbank is already generated by prepare.sh" + exit 1 +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ] && [ ! "$use_extracted_codebook" == "True" ]; then + log "Stage 1: Verify that the downloaded HuBERT model is correct." + # This stage is not directly used by codebook indexes extraction. + # It is a method to "prove" that the downloaed hubert model + # is inferenced in an correct way if WERs look like normal. + # Expect WERs: + # [test-clean-ctc_greedy_search] %WER 2.04% [1075 / 52576, 92 ins, 104 del, 879 sub ] + # [test-other-ctc_greedy_search] %WER 3.71% [1942 / 52343, 152 ins, 126 del, 1664 sub ] + ./pruned_transducer_stateless6/hubert_decode.py --exp-dir $exp_dir +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + # Analysis of disk usage: + # With num_codebooks==8, each teacher embedding is quantized into + # a sequence of eight 8-bit integers, i.e. only eight bytes are needed. + # Training dataset including clean-100h with speed perturb 0.9 and 1.1 has 300 hours. + # The output frame rates of Hubert is 50 per second. + # Theoretically, 412M = 300 * 3600 * 50 * 8 / 1024 / 1024 is needed. + # The actual size of all "*.h5" files storaging codebook index is 450M. + # I think the extra "48M" usage is some meta information. + + # Time consumption analysis: + # For quantizer training data(teacher embedding) extraction, only 1000 utts from clean-100 are used. + # Together with quantizer training, no more than 20 minutes will be used. + # + # For codebook indexes extraction, + # with two pieces of NVIDIA A100 gpus, around three hours needed to process 300 hours training data, + # i.e. clean-100 with speed purteb 0.9 and 1.1. + + # GPU usage: + # During quantizer's training data(teacher embedding) and it's training, + # only the first ONE GPU is used. + # During codebook indexes extraction, ALL GPUs set by CUDA_VISIBLE_DEVICES are used. + + if [ "$use_extracted_codebook" == "True" ]; then + if [ ! "$teacher_model_id" == "hubert_xtralarge_ll60k_finetune_ls960" ]; then + log "Currently we only uploaded codebook indexes from teacher model hubert_xtralarge_ll60k_finetune_ls960" + exit 1 + fi + mkdir -p $exp_dir/vq + codebook_dir=$exp_dir/vq/$teacher_model_id + mkdir -p codebook_dir + codebook_download_dir=$exp_dir/download_codebook + if [ -d $codebook_download_dir ]; then + log "$codebook_download_dir exists, you should remove it first." + exit 1 + fi + log "Downloading extracted codebook indexes to $codebook_download_dir" + # Make sure you have git-lfs installed (https://git-lfs.github.com) + git lfs install + git clone https://huggingface.co/Zengwei/pruned_transducer_stateless6_hubert_xtralarge_ll60k_finetune_ls960 $codebook_download_dir + + mkdir -p data/vq_fbank + mv $codebook_download_dir/*.jsonl.gz data/vq_fbank/ + mkdir -p $codebook_dir/splits4 + mv $codebook_download_dir/*.h5 $codebook_dir/splits4/ + log "Remove $codebook_download_dir" + rm -rf $codebook_download_dir + fi + + ./pruned_transducer_stateless6/extract_codebook_index.py \ + --full-libri $full_libri \ + --exp-dir $exp_dir \ + --embedding-layer 36 \ + --num-utts 1000 \ + --num-codebooks 8 \ + --max-duration 100 \ + --teacher-model-id $teacher_model_id \ + --use-extracted-codebook $use_extracted_codebook +fi + +if [ $stage -le 3 ] && [ $stop_stage -ge 3 ]; then + # Example training script. + # Note: it's better to set spec-aug-time-warpi-factor=-1 + WORLD_SIZE=$(echo ${CUDA_VISIBLE_DEVICES} | awk '{n=split($1, _, ","); print n}') + ./pruned_transducer_stateless6/train.py \ + --manifest-dir ./data/vq_fbank \ + --master-port 12359 \ + --full-libri $full_libri \ + --spec-aug-time-warp-factor -1 \ + --max-duration 300 \ + --world-size ${WORLD_SIZE} \ + --num-epochs 20 \ + --exp-dir $exp_dir \ + --enable-distillation True +fi + +if [ $stage -le 4 ] && [ $stop_stage -ge 4 ]; then + # Results should be similar to: + # errs-test-clean-beam_size_4-epoch-20-avg-10-beam-4.txt:%WER = 5.67 + # errs-test-other-beam_size_4-epoch-20-avg-10-beam-4.txt:%WER = 15.60 + ./pruned_transducer_stateless6/decode.py \ + --decoding-method "modified_beam_search" \ + --epoch 20 \ + --avg 10 \ + --max-duration 200 \ + --exp-dir $exp_dir \ + --enable-distillation True +fi diff --git a/egs/LJSpeech/ASR/generate-lm.sh b/egs/LJSpeech/ASR/generate-lm.sh new file mode 100755 index 000000000..6baccd381 --- /dev/null +++ b/egs/LJSpeech/ASR/generate-lm.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash + +lang_dir=data/lang_bpe_500 + +for ngram in 2 3 5; do + if [ ! -f $lang_dir/${ngram}gram.arpa ]; then + ./shared/make_kn_lm.py \ + -ngram-order ${ngram} \ + -text $lang_dir/transcript_tokens.txt \ + -lm $lang_dir/${ngram}gram.arpa + fi + + if [ ! -f $lang_dir/${ngram}gram.fst.txt ]; then + python3 -m kaldilm \ + --read-symbol-table="$lang_dir/tokens.txt" \ + --disambig-symbol='#0' \ + --max-order=${ngram} \ + $lang_dir/${ngram}gram.arpa > $lang_dir/${ngram}gram.fst.txt + fi +done diff --git a/egs/LJSpeech/ASR/local/__init__.py b/egs/LJSpeech/ASR/local/__init__.py new file mode 100755 index 000000000..e69de29bb diff --git a/egs/LJSpeech/ASR/local/add_alignment_librispeech.py b/egs/LJSpeech/ASR/local/add_alignment_librispeech.py new file mode 100755 index 000000000..cc34a72d8 --- /dev/null +++ b/egs/LJSpeech/ASR/local/add_alignment_librispeech.py @@ -0,0 +1,190 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file adds alignments from https://github.com/CorentinJ/librispeech-alignments # noqa +to the existing fbank features dir (e.g., data/fbank) +and save cuts to a new dir (e.g., data/fbank_ali). +""" + +import argparse +import logging +import zipfile +from pathlib import Path +from typing import List + +from lhotse import CutSet, load_manifest_lazy +from lhotse.recipes.librispeech import parse_alignments +from lhotse.utils import is_module_available + +LIBRISPEECH_ALIGNMENTS_URL = ( + "https://drive.google.com/uc?id=1WYfgr31T-PPwMcxuAq09XZfHQO5Mw8fE" +) + +DATASET_PARTS = [ + "dev-clean", + "dev-other", + "test-clean", + "test-other", + "train-clean-100", + "train-clean-360", + "train-other-500", +] + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--alignments-dir", + type=str, + default="data/alignment", + help="The dir to save alignments.", + ) + + parser.add_argument( + "--cuts-in-dir", + type=str, + default="data/fbank", + help="The dir of the existing cuts without alignments.", + ) + + parser.add_argument( + "--cuts-out-dir", + type=str, + default="data/fbank_ali", + help="The dir to save the new cuts with alignments", + ) + + return parser + + +def download_alignments( + target_dir: str, alignments_url: str = LIBRISPEECH_ALIGNMENTS_URL +): + """ + Download and extract the alignments. + + Note: If you can not access drive.google.com, you could download the file + `LibriSpeech-Alignments.zip` from huggingface: + https://huggingface.co/Zengwei/librispeech-alignments + and extract the zip file manually. + + Args: + target_dir: + The dir to save alignments. + alignments_url: + The URL of alignments. + """ + """Modified from https://github.com/lhotse-speech/lhotse/blob/master/lhotse/recipes/librispeech.py""" # noqa + target_dir = Path(target_dir) + target_dir.mkdir(parents=True, exist_ok=True) + completed_detector = target_dir / ".ali_completed" + if completed_detector.is_file(): + logging.info("The alignment files already exist.") + return + + ali_zip_path = target_dir / "LibriSpeech-Alignments.zip" + if not ali_zip_path.is_file(): + assert is_module_available( + "gdown" + ), 'To download LibriSpeech alignments, please install "pip install gdown"' # noqa + import gdown + + gdown.download(alignments_url, output=str(ali_zip_path)) + + with zipfile.ZipFile(str(ali_zip_path)) as f: + f.extractall(path=target_dir) + completed_detector.touch() + + +def add_alignment( + alignments_dir: str, + cuts_in_dir: str = "data/fbank", + cuts_out_dir: str = "data/fbank_ali", + dataset_parts: List[str] = DATASET_PARTS, +): + """ + Add alignment info to existing cuts. + + Args: + alignments_dir: + The dir of the alignments. + cuts_in_dir: + The dir of the existing cuts. + cuts_out_dir: + The dir to save the new cuts with alignments. + dataset_parts: + Librispeech parts to add alignments. + """ + alignments_dir = Path(alignments_dir) + cuts_in_dir = Path(cuts_in_dir) + cuts_out_dir = Path(cuts_out_dir) + cuts_out_dir.mkdir(parents=True, exist_ok=True) + + for part in dataset_parts: + logging.info(f"Processing {part}") + + cuts_in_path = cuts_in_dir / f"librispeech_cuts_{part}.jsonl.gz" + if not cuts_in_path.is_file(): + logging.info(f"{cuts_in_path} does not exist - skipping.") + continue + cuts_out_path = cuts_out_dir / f"librispeech_cuts_{part}.jsonl.gz" + if cuts_out_path.is_file(): + logging.info(f"{part} already exists - skipping.") + continue + + # parse alignments + alignments = {} + part_ali_dir = alignments_dir / "LibriSpeech" / part + for ali_path in part_ali_dir.rglob("*.alignment.txt"): + ali = parse_alignments(ali_path) + alignments.update(ali) + logging.info(f"{part} has {len(alignments.keys())} cuts with alignments.") + + # add alignment attribute and write out + cuts_in = load_manifest_lazy(cuts_in_path) + with CutSet.open_writer(cuts_out_path) as writer: + for cut in cuts_in: + for idx, subcut in enumerate(cut.supervisions): + origin_id = subcut.id.split("_")[0] + if origin_id in alignments: + ali = alignments[origin_id] + else: + logging.info(f"Warning: {origin_id} does not have alignment.") + ali = [] + subcut.alignment = {"word": ali} + writer.write(cut, flush=True) + + +def main(): + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + logging.basicConfig(format=formatter, level=logging.INFO) + + parser = get_parser() + args = parser.parse_args() + logging.info(vars(args)) + + download_alignments(args.alignments_dir) + add_alignment(args.alignments_dir, args.cuts_in_dir, args.cuts_out_dir) + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/compile_hlg.py b/egs/LJSpeech/ASR/local/compile_hlg.py new file mode 100755 index 000000000..df6c609bb --- /dev/null +++ b/egs/LJSpeech/ASR/local/compile_hlg.py @@ -0,0 +1,166 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This script takes as input lang_dir and generates HLG from + + - H, the ctc topology, built from tokens contained in lang_dir/lexicon.txt + - L, the lexicon, built from lang_dir/L_disambig.pt + + Caution: We use a lexicon that contains disambiguation symbols + + - G, the LM, built from data/lm/G_3_gram.fst.txt + +The generated HLG is saved in $lang_dir/HLG.pt +""" +import argparse +import logging +from pathlib import Path + +import k2 +import torch + +from icefall.lexicon import Lexicon + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--lm", + type=str, + default="G_3_gram", + help="""Stem name for LM used in HLG compiling. + """, + ) + parser.add_argument( + "--lang-dir", + type=str, + help="""Input and output directory. + """, + ) + + return parser.parse_args() + + +def compile_HLG(lang_dir: str, lm: str = "G_3_gram") -> k2.Fsa: + """ + Args: + lang_dir: + The language directory, e.g., data/lang_phone or data/lang_bpe_5000. + lm: + The language stem base name. + + Return: + An FSA representing HLG. + """ + lexicon = Lexicon(lang_dir) + max_token_id = max(lexicon.tokens) + logging.info(f"Building ctc_topo. max_token_id: {max_token_id}") + H = k2.ctc_topo(max_token_id) + L = k2.Fsa.from_dict(torch.load(f"{lang_dir}/L_disambig.pt")) + + if Path(f"data/lm/{lm}.pt").is_file(): + logging.info(f"Loading pre-compiled {lm}") + d = torch.load(f"data/lm/{lm}.pt") + G = k2.Fsa.from_dict(d) + else: + logging.info(f"Loading {lm}.fst.txt") + with open(f"data/lm/{lm}.fst.txt") as f: + G = k2.Fsa.from_openfst(f.read(), acceptor=False) + torch.save(G.as_dict(), f"data/lm/{lm}.pt") + + first_token_disambig_id = lexicon.token_table["#0"] + first_word_disambig_id = lexicon.word_table["#0"] + + L = k2.arc_sort(L) + G = k2.arc_sort(G) + + logging.info("Intersecting L and G") + LG = k2.compose(L, G) + logging.info(f"LG shape: {LG.shape}") + + logging.info("Connecting LG") + LG = k2.connect(LG) + logging.info(f"LG shape after k2.connect: {LG.shape}") + + logging.info(type(LG.aux_labels)) + logging.info("Determinizing LG") + + LG = k2.determinize(LG) + logging.info(type(LG.aux_labels)) + + logging.info("Connecting LG after k2.determinize") + LG = k2.connect(LG) + + logging.info("Removing disambiguation symbols on LG") + + LG.labels[LG.labels >= first_token_disambig_id] = 0 + # See https://github.com/k2-fsa/k2/issues/874 + # for why we need to set LG.properties to None + LG.__dict__["_properties"] = None + + assert isinstance(LG.aux_labels, k2.RaggedTensor) + LG.aux_labels.values[LG.aux_labels.values >= first_word_disambig_id] = 0 + + LG = k2.remove_epsilon(LG) + logging.info(f"LG shape after k2.remove_epsilon: {LG.shape}") + + LG = k2.connect(LG) + LG.aux_labels = LG.aux_labels.remove_values_eq(0) + + logging.info("Arc sorting LG") + LG = k2.arc_sort(LG) + + logging.info("Composing H and LG") + # CAUTION: The name of the inner_labels is fixed + # to `tokens`. If you want to change it, please + # also change other places in icefall that are using + # it. + HLG = k2.compose(H, LG, inner_labels="tokens") + + logging.info("Connecting LG") + HLG = k2.connect(HLG) + + logging.info("Arc sorting LG") + HLG = k2.arc_sort(HLG) + logging.info(f"HLG.shape: {HLG.shape}") + + return HLG + + +def main(): + args = get_args() + lang_dir = Path(args.lang_dir) + + if (lang_dir / "HLG.pt").is_file(): + logging.info(f"{lang_dir}/HLG.pt already exists - skipping") + return + + logging.info(f"Processing {lang_dir}") + + HLG = compile_HLG(lang_dir, args.lm) + logging.info(f"Saving HLG.pt to {lang_dir}") + torch.save(HLG.as_dict(), f"{lang_dir}/HLG.pt") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + main() diff --git a/egs/LJSpeech/ASR/local/compile_lg.py b/egs/LJSpeech/ASR/local/compile_lg.py new file mode 100755 index 000000000..19bf3bff4 --- /dev/null +++ b/egs/LJSpeech/ASR/local/compile_lg.py @@ -0,0 +1,139 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang, Wei Kang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This script takes as input lang_dir and generates LG from + + - L, the lexicon, built from lang_dir/L_disambig.pt + + Caution: We use a lexicon that contains disambiguation symbols + + - G, the LM, built from data/lm/G_3_gram.fst.txt + +The generated LG is saved in $lang_dir/LG.pt +""" +import argparse +import logging +from pathlib import Path + +import k2 +import torch + +from icefall.lexicon import Lexicon + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--lang-dir", + type=str, + help="""Input and output directory. + """, + ) + + return parser.parse_args() + + +def compile_LG(lang_dir: str) -> k2.Fsa: + """ + Args: + lang_dir: + The language directory, e.g., data/lang_phone or data/lang_bpe_5000. + + Return: + An FSA representing LG. + """ + lexicon = Lexicon(lang_dir) + L = k2.Fsa.from_dict(torch.load(f"{lang_dir}/L_disambig.pt")) + + if Path("data/lm/G_3_gram.pt").is_file(): + logging.info("Loading pre-compiled G_3_gram") + d = torch.load("data/lm/G_3_gram.pt") + G = k2.Fsa.from_dict(d) + else: + logging.info("Loading G_3_gram.fst.txt") + with open("data/lm/G_3_gram.fst.txt") as f: + G = k2.Fsa.from_openfst(f.read(), acceptor=False) + torch.save(G.as_dict(), "data/lm/G_3_gram.pt") + + first_token_disambig_id = lexicon.token_table["#0"] + first_word_disambig_id = lexicon.word_table["#0"] + + L = k2.arc_sort(L) + G = k2.arc_sort(G) + + logging.info("Intersecting L and G") + LG = k2.compose(L, G) + logging.info(f"LG shape: {LG.shape}") + + logging.info("Connecting LG") + LG = k2.connect(LG) + logging.info(f"LG shape after k2.connect: {LG.shape}") + + logging.info(type(LG.aux_labels)) + logging.info("Determinizing LG") + + LG = k2.determinize(LG, k2.DeterminizeWeightPushingType.kLogWeightPushing) + logging.info(type(LG.aux_labels)) + + logging.info("Connecting LG after k2.determinize") + LG = k2.connect(LG) + + logging.info("Removing disambiguation symbols on LG") + + LG.labels[LG.labels >= first_token_disambig_id] = 0 + # See https://github.com/k2-fsa/k2/issues/874 + # for why we need to set LG.properties to None + LG.__dict__["_properties"] = None + + assert isinstance(LG.aux_labels, k2.RaggedTensor) + LG.aux_labels.values[LG.aux_labels.values >= first_word_disambig_id] = 0 + + LG = k2.remove_epsilon(LG) + logging.info(f"LG shape after k2.remove_epsilon: {LG.shape}") + + LG = k2.connect(LG) + LG.aux_labels = LG.aux_labels.remove_values_eq(0) + + logging.info("Arc sorting LG") + LG = k2.arc_sort(LG) + + return LG + + +def main(): + args = get_args() + lang_dir = Path(args.lang_dir) + + if (lang_dir / "LG.pt").is_file(): + logging.info(f"{lang_dir}/LG.pt already exists - skipping") + return + + logging.info(f"Processing {lang_dir}") + + LG = compile_LG(lang_dir) + logging.info(f"Saving LG.pt to {lang_dir}") + torch.save(LG.as_dict(), f"{lang_dir}/LG.pt") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + main() diff --git a/egs/LJSpeech/ASR/local/compute_fbank_LJSpeech.py b/egs/LJSpeech/ASR/local/compute_fbank_LJSpeech.py new file mode 100755 index 000000000..0544e8a2d --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_LJSpeech.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file computes fbank features of the LJSpeech dataset. +It looks for manifests in the directory data/manifests. + +The generated fbank features are saved in data/fbank. +""" + +import argparse +import logging +import os +import sys +from pathlib import Path +from typing import Optional + +import sentencepiece as spm +import torch +from filter_cuts import filter_cuts +from lhotse import CutSet, Fbank, FbankConfig, LilcomChunkyWriter +from lhotse.recipes.utils import read_manifests_if_cached + +from icefall.utils import get_executor + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to the bpe.model. If not None, we will remove short and + long utterances before extracting features""", + ) + parser.add_argument( + "--data-dir", + type=str, + default=None, + help="""Path to data""", + ) + return parser.parse_args() + + +def compute_fbank_LJSpeech(bpe_model: Optional[str] = None): + src_dir = Path("data/manifests") + output_dir = Path("data/fbank") + num_jobs = min(15, os.cpu_count()) + num_mel_bins = 80 + + if bpe_model: + logging.info(f"Loading {bpe_model}") + sp = spm.SentencePieceProcessor() + sp.load(bpe_model) + + data_dir = args.data_dir + if data_dir is None: + raise NotImplementedError("need data directory") + + directory = data_dir + '/wavs' + + parts = ['train', 'dev', 'test'] + prefix = "LJSpeech" + suffix = "jsonl.gz" + manifests = read_manifests_if_cached( + dataset_parts=parts, + output_dir=src_dir, + prefix=prefix, + suffix=suffix, + ) + + assert manifests is not None + + assert len(manifests) == len(parts), ( + len(manifests), + len(parts), + list(manifests.keys()), + parts, + ) + + extractor = Fbank(FbankConfig(num_mel_bins=num_mel_bins)) + + with get_executor() as ex: # Initialize the executor only once. + for partition, m in manifests.items(): + cuts_filename = f"{prefix}_cuts_{partition}.{suffix}" + if (output_dir / cuts_filename).is_file(): + logging.info(f"{partition} already exists - skipping.") + continue + logging.info(f"Processing {partition}") + cut_set = CutSet.from_manifests( + recordings=m["recordings"], + supervisions=m["supervisions"], + ) + if bpe_model: + cut_set = filter_cuts(cut_set, sp) + + if "train" in partition: + cut_set = ( + cut_set + cut_set.perturb_speed(0.9) + cut_set.perturb_speed(1.1) + ) + cut_set = cut_set.compute_and_store_features( + extractor=extractor, + storage_path=f"{output_dir}/{prefix}_feats_{partition}", + # when an executor is specified, make more partitions + num_jobs=num_jobs if ex is None else 80, + executor=ex, + storage_type=LilcomChunkyWriter, + ) + cut_set.to_file(output_dir / cuts_filename) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + args = get_args() + logging.info(vars(args)) + compute_fbank_LJSpeech(bpe_model=args.bpe_model) diff --git a/egs/LJSpeech/ASR/local/compute_fbank_LJSpeech_pseudo.py b/egs/LJSpeech/ASR/local/compute_fbank_LJSpeech_pseudo.py new file mode 100755 index 000000000..61dcdded9 --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_LJSpeech_pseudo.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file computes fbank features of the LJSpeech dataset. +It looks for manifests in the directory data/manifests. + +The generated fbank features are saved in data/fbank. +""" + +import argparse +import logging +import os +import sys +from pathlib import Path +from typing import Optional + +import sentencepiece as spm +import torch +from filter_cuts import filter_cuts +from lhotse import CutSet, Fbank, FbankConfig, LilcomChunkyWriter +from lhotse.recipes.utils import read_manifests_if_cached + +from icefall.utils import get_executor + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to the bpe.model. If not None, we will remove short and + long utterances before extracting features""", + ) + parser.add_argument( + "--data-dir", + type=str, + default=None, + help="""Path to data""", + ) + return parser.parse_args() + + +def compute_fbank_LJSpeech(bpe_model: Optional[str] = None): + src_dir = Path("data/manifests") + output_dir = Path("data/fbank") + num_jobs = min(15, os.cpu_count()) + num_mel_bins = 80 + + if bpe_model: + logging.info(f"Loading {bpe_model}") + sp = spm.SentencePieceProcessor() + sp.load(bpe_model) + + data_dir = args.data_dir + if data_dir is None: + raise NotImplementedError("need data directory") + + directory = data_dir + '/wavs' + + parts = ['train', 'dev', 'test'] + prefix = "LJSpeech_pseudo" + suffix = "jsonl.gz" + manifests = read_manifests_if_cached( + dataset_parts=parts, + output_dir=src_dir, + prefix=prefix, + suffix=suffix, + ) + + assert manifests is not None + + assert len(manifests) == len(parts), ( + len(manifests), + len(parts), + list(manifests.keys()), + parts, + ) + + extractor = Fbank(FbankConfig(num_mel_bins=num_mel_bins)) + + with get_executor() as ex: # Initialize the executor only once. + for partition, m in manifests.items(): + cuts_filename = f"{prefix}_cuts_{partition}.{suffix}" + if (output_dir / cuts_filename).is_file(): + logging.info(f"{partition} already exists - skipping.") + continue + logging.info(f"Processing {partition}") + cut_set = CutSet.from_manifests( + recordings=m["recordings"], + supervisions=m["supervisions"], + ) + if bpe_model: + cut_set = filter_cuts(cut_set, sp) + + if "train" in partition: + cut_set = ( + cut_set + cut_set.perturb_speed(0.9) + cut_set.perturb_speed(1.1) + ) + cut_set = cut_set.compute_and_store_features( + extractor=extractor, + storage_path=f"{output_dir}/{prefix}_feats_{partition}", + # when an executor is specified, make more partitions + num_jobs=num_jobs if ex is None else 80, + executor=ex, + storage_type=LilcomChunkyWriter, + ) + cut_set.to_file(output_dir / cuts_filename) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + args = get_args() + logging.info(vars(args)) + compute_fbank_LJSpeech(bpe_model=args.bpe_model) diff --git a/egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_dev_test.py b/egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_dev_test.py new file mode 100755 index 000000000..97750f3ea --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_dev_test.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 +# Copyright 2021 Johns Hopkins University (Piotr Żelasko) +# Copyright 2021 Xiaomi Corp. (Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +from pathlib import Path + +import torch +from lhotse import CutSet, KaldifeatFbank, KaldifeatFbankConfig + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def compute_fbank_gigaspeech_dev_test(): + in_out_dir = Path("data/fbank") + # number of workers in dataloader + num_workers = 20 + + # number of seconds in a batch + batch_duration = 600 + + subsets = ("DEV", "TEST") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + extractor = KaldifeatFbank(KaldifeatFbankConfig(device=device)) + + logging.info(f"device: {device}") + + prefix = "gigaspeech" + suffix = "jsonl.gz" + + for partition in subsets: + cuts_path = in_out_dir / f"{prefix}_cuts_{partition}.{suffix}" + if cuts_path.is_file(): + logging.info(f"{cuts_path} exists - skipping") + continue + + raw_cuts_path = in_out_dir / f"{prefix}_cuts_{partition}_raw.{suffix}" + + logging.info(f"Loading {raw_cuts_path}") + cut_set = CutSet.from_file(raw_cuts_path) + + logging.info("Computing features") + + cut_set = cut_set.compute_and_store_features_batch( + extractor=extractor, + storage_path=f"{in_out_dir}/{prefix}_feats_{partition}", + num_workers=num_workers, + batch_duration=batch_duration, + overwrite=True, + ) + cut_set = cut_set.trim_to_supervisions( + keep_overlapping=False, min_duration=None + ) + + logging.info(f"Saving to {cuts_path}") + cut_set.to_file(cuts_path) + logging.info(f"Saved to {cuts_path}") + + +def main(): + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + logging.basicConfig(format=formatter, level=logging.INFO) + + compute_fbank_gigaspeech_dev_test() + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_splits.py b/egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_splits.py new file mode 100755 index 000000000..ce0ef24e7 --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_gigaspeech_splits.py @@ -0,0 +1,170 @@ +#!/usr/bin/env python3 +# Copyright 2021 Johns Hopkins University (Piotr Żelasko) +# Copyright 2021 Xiaomi Corp. (Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import logging +import os +from datetime import datetime +from pathlib import Path + +import torch +from lhotse import CutSet, KaldifeatFbank, KaldifeatFbankConfig + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--num-workers", + type=int, + default=20, + help="Number of dataloading workers used for reading the audio.", + ) + parser.add_argument( + "--batch-duration", + type=float, + default=600.0, + help="The maximum number of audio seconds in a batch." + "Determines batch size dynamically.", + ) + + parser.add_argument( + "--num-splits", + type=int, + required=True, + help="The number of splits of the XL subset", + ) + + parser.add_argument( + "--start", + type=int, + default=0, + help="Process pieces starting from this number (inclusive).", + ) + + parser.add_argument( + "--stop", + type=int, + default=-1, + help="Stop processing pieces until this number (exclusive).", + ) + return parser + + +def compute_fbank_gigaspeech_splits(args): + num_splits = args.num_splits + output_dir = f"data/fbank/gigaspeech_XL_split_{num_splits}" + output_dir = Path(output_dir) + assert output_dir.exists(), f"{output_dir} does not exist!" + + num_digits = len(str(num_splits)) + + start = args.start + stop = args.stop + if stop < start: + stop = num_splits + + stop = min(stop, num_splits) + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + extractor = KaldifeatFbank(KaldifeatFbankConfig(device=device)) + logging.info(f"device: {device}") + + prefix = "gigaspeech" + + num_digits = 8 # num_digits is fixed by lhotse split-lazy + for i in range(start, stop): + idx = f"{i + 1}".zfill(num_digits) + logging.info(f"Processing {idx}/{num_splits}") + + cuts_path = output_dir / f"{prefix}_cuts_XL.{idx}.jsonl.gz" + if cuts_path.is_file(): + logging.info(f"{cuts_path} exists - skipping") + continue + + raw_cuts_path = output_dir / f"{prefix}_cuts_XL_raw.{idx}.jsonl.gz" + if not raw_cuts_path.is_file(): + logging.info(f"{raw_cuts_path} does not exist - skipping it") + continue + + logging.info(f"Loading {raw_cuts_path}") + cut_set = CutSet.from_file(raw_cuts_path) + + logging.info("Computing features") + if (output_dir / f"{prefix}_feats_XL_{idx}.lca").exists(): + logging.info(f"Removing {output_dir}/{prefix}_feats_XL_{idx}.lca") + os.remove(output_dir / f"{prefix}_feats_XL_{idx}.lca") + + cut_set = cut_set.compute_and_store_features_batch( + extractor=extractor, + storage_path=f"{output_dir}/{prefix}_feats_XL_{idx}", + num_workers=args.num_workers, + batch_duration=args.batch_duration, + overwrite=True, + ) + + logging.info("About to split cuts into smaller chunks.") + cut_set = cut_set.trim_to_supervisions( + keep_overlapping=False, min_duration=None + ) + + logging.info(f"Saving to {cuts_path}") + cut_set.to_file(cuts_path) + logging.info(f"Saved to {cuts_path}") + + +def main(): + now = datetime.now() + date_time = now.strftime("%Y-%m-%d-%H-%M-%S") + + log_filename = "log-compute_fbank_gigaspeech_splits" + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + log_filename = f"{log_filename}-{date_time}" + + logging.basicConfig( + filename=log_filename, + format=formatter, + level=logging.INFO, + filemode="w", + ) + + console = logging.StreamHandler() + console.setLevel(logging.INFO) + console.setFormatter(logging.Formatter(formatter)) + logging.getLogger("").addHandler(console) + + parser = get_parser() + args = parser.parse_args() + logging.info(vars(args)) + + compute_fbank_gigaspeech_splits(args) + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/compute_fbank_librispeech.py b/egs/LJSpeech/ASR/local/compute_fbank_librispeech.py new file mode 100755 index 000000000..9f8503814 --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_librispeech.py @@ -0,0 +1,134 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file computes fbank features of the LibriSpeech dataset. +It looks for manifests in the directory data/manifests. + +The generated fbank features are saved in data/fbank. +""" + +import argparse +import logging +import os +from pathlib import Path +from typing import Optional + +import sentencepiece as spm +import torch +from filter_cuts import filter_cuts +from lhotse import CutSet, Fbank, FbankConfig, LilcomChunkyWriter +from lhotse.recipes.utils import read_manifests_if_cached + +from icefall.utils import get_executor + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to the bpe.model. If not None, we will remove short and + long utterances before extracting features""", + ) + return parser.parse_args() + + +def compute_fbank_librispeech(bpe_model: Optional[str] = None): + src_dir = Path("data/manifests") + output_dir = Path("data/fbank") + num_jobs = min(15, os.cpu_count()) + num_mel_bins = 80 + + if bpe_model: + logging.info(f"Loading {bpe_model}") + sp = spm.SentencePieceProcessor() + sp.load(bpe_model) + + dataset_parts = ( + "dev-clean", + "dev-other", + "test-clean", + "test-other", + "train-clean-100", + "train-clean-360", + "train-other-500", + ) + prefix = "librispeech" + suffix = "jsonl.gz" + manifests = read_manifests_if_cached( + dataset_parts=dataset_parts, + output_dir=src_dir, + prefix=prefix, + suffix=suffix, + ) + assert manifests is not None + + assert len(manifests) == len(dataset_parts), ( + len(manifests), + len(dataset_parts), + list(manifests.keys()), + dataset_parts, + ) + + extractor = Fbank(FbankConfig(num_mel_bins=num_mel_bins)) + + with get_executor() as ex: # Initialize the executor only once. + for partition, m in manifests.items(): + cuts_filename = f"{prefix}_cuts_{partition}.{suffix}" + if (output_dir / cuts_filename).is_file(): + logging.info(f"{partition} already exists - skipping.") + continue + logging.info(f"Processing {partition}") + cut_set = CutSet.from_manifests( + recordings=m["recordings"], + supervisions=m["supervisions"], + ) + if bpe_model: + cut_set = filter_cuts(cut_set, sp) + + if "train" in partition: + cut_set = ( + cut_set + cut_set.perturb_speed(0.9) + cut_set.perturb_speed(1.1) + ) + cut_set = cut_set.compute_and_store_features( + extractor=extractor, + storage_path=f"{output_dir}/{prefix}_feats_{partition}", + # when an executor is specified, make more partitions + num_jobs=num_jobs if ex is None else 80, + executor=ex, + storage_type=LilcomChunkyWriter, + ) + cut_set.to_file(output_dir / cuts_filename) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + args = get_args() + logging.info(vars(args)) + compute_fbank_librispeech(bpe_model=args.bpe_model) diff --git a/egs/LJSpeech/ASR/local/compute_fbank_musan.py b/egs/LJSpeech/ASR/local/compute_fbank_musan.py new file mode 100755 index 000000000..4a4093ae4 --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_musan.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file computes fbank features of the musan dataset. +It looks for manifests in the directory data/manifests. + +The generated fbank features are saved in data/fbank. +""" + +import logging +import os +from pathlib import Path + +import torch +from lhotse import CutSet, Fbank, FbankConfig, LilcomChunkyWriter, combine +from lhotse.recipes.utils import read_manifests_if_cached + +from icefall.utils import get_executor + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def compute_fbank_musan(): + src_dir = Path("data/manifests") + output_dir = Path("data/fbank") + num_jobs = min(15, os.cpu_count()) + num_mel_bins = 80 + + dataset_parts = ( + "music", + "speech", + "noise", + ) + prefix = "musan" + suffix = "jsonl.gz" + manifests = read_manifests_if_cached( + dataset_parts=dataset_parts, + output_dir=src_dir, + prefix=prefix, + suffix=suffix, + ) + assert manifests is not None + + assert len(manifests) == len(dataset_parts), ( + len(manifests), + len(dataset_parts), + list(manifests.keys()), + dataset_parts, + ) + + musan_cuts_path = output_dir / "musan_cuts.jsonl.gz" + + if musan_cuts_path.is_file(): + logging.info(f"{musan_cuts_path} already exists - skipping") + return + + logging.info("Extracting features for Musan") + + extractor = Fbank(FbankConfig(num_mel_bins=num_mel_bins)) + + with get_executor() as ex: # Initialize the executor only once. + # create chunks of Musan with duration 5 - 10 seconds + musan_cuts = ( + CutSet.from_manifests( + recordings=combine(part["recordings"] for part in manifests.values()) + ) + .cut_into_windows(10.0) + .filter(lambda c: c.duration > 5) + .compute_and_store_features( + extractor=extractor, + storage_path=f"{output_dir}/musan_feats", + num_jobs=num_jobs if ex is None else 80, + executor=ex, + storage_type=LilcomChunkyWriter, + ) + ) + musan_cuts.to_file(musan_cuts_path) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + compute_fbank_musan() diff --git a/egs/LJSpeech/ASR/local/compute_fbank_userlibri.py b/egs/LJSpeech/ASR/local/compute_fbank_userlibri.py new file mode 100755 index 000000000..8aa153fa0 --- /dev/null +++ b/egs/LJSpeech/ASR/local/compute_fbank_userlibri.py @@ -0,0 +1,131 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file computes fbank features of the UserLibri dataset. +It looks for manifests in the directory data/manifests. + +The generated fbank features are saved in data/fbank. +""" + +import argparse +import logging +import os +from pathlib import Path +from typing import Optional + +import sentencepiece as spm +import torch +from filter_cuts import filter_cuts +from lhotse import CutSet, Fbank, FbankConfig, LilcomChunkyWriter +from lhotse.recipes.utils import read_manifests_if_cached + +from icefall.utils import get_executor + +# Torch's multithreaded behavior needs to be disabled or +# it wastes a lot of CPU and slow things down. +# Do this outside of main() in case it needs to take effect +# even when we are not invoking the main (e.g. when spawning subprocesses). +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to the bpe.model. If not None, we will remove short and + long utterances before extracting features""", + ) + return parser.parse_args() + + +def compute_fbank_userlibri(bpe_model: Optional[str] = None): + src_dir = Path("data/manifests") + output_dir = Path("data/fbank") + num_jobs = min(15, os.cpu_count()) + num_mel_bins = 80 + + if bpe_model: + logging.info(f"Loading {bpe_model}") + sp = spm.SentencePieceProcessor() + sp.load(bpe_model) + + directory = "/DB/UserLibri/audio_data/speaker-wise-test" + spks_parts = os.listdir(directory) + directory = "/DB/UserLibri/audio_data/book-wise-test" + books_parts = os.listdir(directory) + + dataset_parts = spks_parts + books_parts + prefix = "userlibri" + suffix = "jsonl.gz" + manifests = read_manifests_if_cached( + dataset_parts=dataset_parts, + output_dir=src_dir, + prefix=prefix, + suffix=suffix, + ) + assert manifests is not None + + assert len(manifests) == len(dataset_parts), ( + len(manifests), + len(dataset_parts), + list(manifests.keys()), + dataset_parts, + ) + + extractor = Fbank(FbankConfig(num_mel_bins=num_mel_bins)) + + with get_executor() as ex: # Initialize the executor only once. + for partition, m in manifests.items(): + cuts_filename = f"{prefix}_cuts_{partition}.{suffix}" + if (output_dir / cuts_filename).is_file(): + logging.info(f"{partition} already exists - skipping.") + continue + logging.info(f"Processing {partition}") + cut_set = CutSet.from_manifests( + recordings=m["recordings"], + supervisions=m["supervisions"], + ) + if bpe_model: + cut_set = filter_cuts(cut_set, sp) + + if "train" in partition: + cut_set = ( + cut_set + cut_set.perturb_speed(0.9) + cut_set.perturb_speed(1.1) + ) + cut_set = cut_set.compute_and_store_features( + extractor=extractor, + storage_path=f"{output_dir}/{prefix}_feats_{partition}", + # when an executor is specified, make more partitions + num_jobs=num_jobs if ex is None else 80, + executor=ex, + storage_type=LilcomChunkyWriter, + ) + cut_set.to_file(output_dir / cuts_filename) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + args = get_args() + logging.info(vars(args)) + compute_fbank_userlibri(bpe_model=args.bpe_model) diff --git a/egs/LJSpeech/ASR/local/convert_transcript_words_to_tokens.py b/egs/LJSpeech/ASR/local/convert_transcript_words_to_tokens.py new file mode 100755 index 000000000..a8d5117c9 --- /dev/null +++ b/egs/LJSpeech/ASR/local/convert_transcript_words_to_tokens.py @@ -0,0 +1,103 @@ +#!/usr/bin/env python3 + +# Copyright 2021 Xiaomi Corporation (Author: Fangjun Kuang) +""" +Convert a transcript file containing words to a corpus file containing tokens +for LM training with the help of a lexicon. + +If the lexicon contains phones, the resulting LM will be a phone LM; If the +lexicon contains word pieces, the resulting LM will be a word piece LM. + +If a word has multiple pronunciations, the one that appears first in the lexicon +is kept; others are removed. + +If the input transcript is: + + hello zoo world hello + world zoo + foo zoo world hellO + +and if the lexicon is + + SPN + hello h e l l o 2 + hello h e l l o + world w o r l d + zoo z o o + +Then the output is + + h e l l o 2 z o o w o r l d h e l l o 2 + w o r l d z o o + SPN z o o w o r l d SPN +""" + +import argparse +from pathlib import Path +from typing import Dict, List + +from generate_unique_lexicon import filter_multiple_pronunications + +from icefall.lexicon import read_lexicon + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--transcript", + type=str, + help="The input transcript file." + "We assume that the transcript file consists of " + "lines. Each line consists of space separated words.", + ) + parser.add_argument("--lexicon", type=str, help="The input lexicon file.") + parser.add_argument("--oov", type=str, default="", help="The OOV word.") + + return parser.parse_args() + + +def process_line(lexicon: Dict[str, List[str]], line: str, oov_token: str) -> None: + """ + Args: + lexicon: + A dict containing pronunciations. Its keys are words and values + are pronunciations (i.e., tokens). + line: + A line of transcript consisting of space(s) separated words. + oov_token: + The pronunciation of the oov word if a word in `line` is not present + in the lexicon. + Returns: + Return None. + """ + s = "" + words = line.strip().split() + for i, w in enumerate(words): + tokens = lexicon.get(w, oov_token) + s += " ".join(tokens) + s += " " + print(s.strip()) + + +def main(): + args = get_args() + assert Path(args.lexicon).is_file() + assert Path(args.transcript).is_file() + assert len(args.oov) > 0 + + # Only the first pronunciation of a word is kept + lexicon = filter_multiple_pronunications(read_lexicon(args.lexicon)) + + lexicon = dict(lexicon) + + assert args.oov in lexicon + + oov_token = lexicon[args.oov] + + with open(args.transcript) as f: + for line in f: + process_line(lexicon=lexicon, line=line, oov_token=oov_token) + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/display_manifest_statistics.py b/egs/LJSpeech/ASR/local/display_manifest_statistics.py new file mode 100755 index 000000000..c3c684235 --- /dev/null +++ b/egs/LJSpeech/ASR/local/display_manifest_statistics.py @@ -0,0 +1,215 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This file displays duration statistics of utterances in a manifest. +You can use the displayed value to choose minimum/maximum duration +to remove short and long utterances during the training. + +See the function `remove_short_and_long_utt()` in transducer/train.py +for usage. +""" + + +from lhotse import load_manifest_lazy + + +def main(): + # path = "./data/fbank/librispeech_cuts_train-clean-100.jsonl.gz" + # path = "./data/fbank/librispeech_cuts_train-clean-360.jsonl.gz" + # path = "./data/fbank/librispeech_cuts_train-other-500.jsonl.gz" + # path = "./data/fbank/librispeech_cuts_dev-clean.jsonl.gz" + # path = "./data/fbank/librispeech_cuts_dev-other.jsonl.gz" + # path = "./data/fbank/librispeech_cuts_test-clean.jsonl.gz" + path = "./data/fbank/librispeech_cuts_test-other.jsonl.gz" + + cuts = load_manifest_lazy(path) + cuts.describe() + + +if __name__ == "__main__": + main() + +""" +## train-clean-100 +Cuts count: 85617 +Total duration (hours): 303.8 +Speech duration (hours): 303.8 (100.0%) +*** +Duration statistics (seconds): +mean 12.8 +std 3.8 +min 1.3 +0.1% 1.9 +0.5% 2.2 +1% 2.5 +5% 4.2 +10% 6.4 +25% 11.4 +50% 13.8 +75% 15.3 +90% 16.7 +95% 17.3 +99% 18.1 +99.5% 18.4 +99.9% 18.8 +max 27.2 + +## train-clean-360 +Cuts count: 312042 +Total duration (hours): 1098.2 +Speech duration (hours): 1098.2 (100.0%) +*** +Duration statistics (seconds): +mean 12.7 +std 3.8 +min 1.0 +0.1% 1.8 +0.5% 2.2 +1% 2.5 +5% 4.2 +10% 6.2 +25% 11.2 +50% 13.7 +75% 15.3 +90% 16.6 +95% 17.3 +99% 18.1 +99.5% 18.4 +99.9% 18.8 +max 33.0 + +## train-other 500 +Cuts count: 446064 +Total duration (hours): 1500.6 +Speech duration (hours): 1500.6 (100.0%) +*** +Duration statistics (seconds): +mean 12.1 +std 4.2 +min 0.8 +0.1% 1.7 +0.5% 2.1 +1% 2.3 +5% 3.5 +10% 5.0 +25% 9.8 +50% 13.4 +75% 15.1 +90% 16.5 +95% 17.2 +99% 18.1 +99.5% 18.4 +99.9% 18.9 +max 31.0 + +## dev-clean +Cuts count: 2703 +Total duration (hours): 5.4 +Speech duration (hours): 5.4 (100.0%) +*** +Duration statistics (seconds): +mean 7.2 +std 4.7 +min 1.4 +0.1% 1.6 +0.5% 1.8 +1% 1.9 +5% 2.4 +10% 2.7 +25% 3.8 +50% 5.9 +75% 9.3 +90% 13.3 +95% 16.4 +99% 23.8 +99.5% 28.5 +99.9% 32.3 +max 32.6 + +## dev-other +Cuts count: 2864 +Total duration (hours): 5.1 +Speech duration (hours): 5.1 (100.0%) +*** +Duration statistics (seconds): +mean 6.4 +std 4.3 +min 1.1 +0.1% 1.3 +0.5% 1.7 +1% 1.8 +5% 2.2 +10% 2.6 +25% 3.5 +50% 5.3 +75% 7.9 +90% 12.0 +95% 15.0 +99% 22.2 +99.5% 27.1 +99.9% 32.4 +max 35.2 + +## test-clean +Cuts count: 2620 +Total duration (hours): 5.4 +Speech duration (hours): 5.4 (100.0%) +*** +Duration statistics (seconds): +mean 7.4 +std 5.2 +min 1.3 +0.1% 1.6 +0.5% 1.8 +1% 2.0 +5% 2.3 +10% 2.7 +25% 3.7 +50% 5.8 +75% 9.6 +90% 14.6 +95% 17.8 +99% 25.5 +99.5% 28.4 +99.9% 32.8 +max 35.0 + +## test-other +Cuts count: 2939 +Total duration (hours): 5.3 +Speech duration (hours): 5.3 (100.0%) +*** +Duration statistics (seconds): +mean 6.5 +std 4.4 +min 1.2 +0.1% 1.5 +0.5% 1.8 +1% 1.9 +5% 2.3 +10% 2.6 +25% 3.4 +50% 5.2 +75% 8.2 +90% 12.6 +95% 15.8 +99% 21.4 +99.5% 23.8 +99.9% 33.5 +max 34.5 +""" diff --git a/egs/LJSpeech/ASR/local/download_lm.py b/egs/LJSpeech/ASR/local/download_lm.py new file mode 100755 index 000000000..3518db524 --- /dev/null +++ b/egs/LJSpeech/ASR/local/download_lm.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This file downloads the following LibriSpeech LM files: + + - 3-gram.pruned.1e-7.arpa.gz + - 4-gram.arpa.gz + - librispeech-vocab.txt + - librispeech-lexicon.txt + - librispeech-lm-norm.txt.gz + +from http://www.openslr.org/resources/11 +and save them in the user provided directory. + +Files are not re-downloaded if they already exist. + +Usage: + ./local/download_lm.py --out-dir ./download/lm +""" + +import argparse +import gzip +import logging +import os +import shutil +from pathlib import Path + +from lhotse.utils import urlretrieve_progress +from tqdm.auto import tqdm + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument("--out-dir", type=str, help="Output directory.") + + args = parser.parse_args() + return args + + +def main(out_dir: str): + url = "http://www.openslr.org/resources/11" + out_dir = Path(out_dir) + + files_to_download = ( + "3-gram.pruned.1e-7.arpa.gz", + "4-gram.arpa.gz", + "librispeech-vocab.txt", + "librispeech-lexicon.txt", + "librispeech-lm-norm.txt.gz", + ) + + for f in tqdm(files_to_download, desc="Downloading LibriSpeech LM files"): + filename = out_dir / f + if filename.is_file() is False: + urlretrieve_progress( + f"{url}/{f}", + filename=filename, + desc=f"Downloading {filename}", + ) + else: + logging.info(f"{filename} already exists - skipping") + + if ".gz" in str(filename): + unzipped = Path(os.path.splitext(filename)[0]) + if unzipped.is_file() is False: + with gzip.open(filename, "rb") as f_in: + with open(unzipped, "wb") as f_out: + shutil.copyfileobj(f_in, f_out) + else: + logging.info(f"{unzipped} already exist - skipping") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + args = get_args() + logging.info(f"out_dir: {args.out_dir}") + + main(out_dir=args.out_dir) diff --git a/egs/LJSpeech/ASR/local/filter_cuts.py b/egs/LJSpeech/ASR/local/filter_cuts.py new file mode 100755 index 000000000..fbcc9e24a --- /dev/null +++ b/egs/LJSpeech/ASR/local/filter_cuts.py @@ -0,0 +1,160 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script removes short and long utterances from a cutset. + +Caution: + You may need to tune the thresholds for your own dataset. + +Usage example: + + python3 ./local/filter_cuts.py \ + --bpe-model data/lang_bpe_500/bpe.model \ + --in-cuts data/fbank/librispeech_cuts_test-clean.jsonl.gz \ + --out-cuts data/fbank-filtered/librispeech_cuts_test-clean.jsonl.gz +""" + +import argparse +import logging +from pathlib import Path + +import sentencepiece as spm +from lhotse import CutSet, load_manifest_lazy +from lhotse.cut import Cut + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "--bpe-model", + type=Path, + help="Path to the bpe.model", + ) + + parser.add_argument( + "--in-cuts", + type=Path, + help="Path to the input cutset", + ) + + parser.add_argument( + "--out-cuts", + type=Path, + help="Path to the output cutset", + ) + + return parser.parse_args() + + +def filter_cuts(cut_set: CutSet, sp: spm.SentencePieceProcessor): + total = 0 # number of total utterances before removal + removed = 0 # number of removed utterances + + def remove_short_and_long_utterances(c: Cut): + """Return False to exclude the input cut""" + nonlocal removed, total + # Keep only utterances with duration between 1 second and 20 seconds + # + # Caution: There is a reason to select 20.0 here. Please see + # ./display_manifest_statistics.py + # + # You should use ./display_manifest_statistics.py to get + # an utterance duration distribution for your dataset to select + # the threshold + total += 1 + if c.duration < 1.0 or c.duration > 20.0: + logging.warning( + f"Exclude cut with ID {c.id} from training. Duration: {c.duration}" + ) + removed += 1 + return False + + # In pruned RNN-T, we require that T >= S + # where T is the number of feature frames after subsampling + # and S is the number of tokens in the utterance + + # In ./pruned_transducer_stateless2/conformer.py, the + # conv module uses the following expression + # for subsampling + if c.num_frames is None: + num_frames = c.duration * 100 # approximate + else: + num_frames = c.num_frames + + T = ((num_frames - 1) // 2 - 1) // 2 + # Note: for ./lstm_transducer_stateless/lstm.py, the formula is + # T = ((num_frames - 3) // 2 - 1) // 2 + + # Note: for ./pruned_transducer_stateless7/zipformer.py, the formula is + # T = ((num_frames - 7) // 2 + 1) // 2 + + tokens = sp.encode(c.supervisions[0].text, out_type=str) + + if T < len(tokens): + logging.warning( + f"Exclude cut with ID {c.id} from training. " + f"Number of frames (before subsampling): {c.num_frames}. " + f"Number of frames (after subsampling): {T}. " + f"Text: {c.supervisions[0].text}. " + f"Tokens: {tokens}. " + f"Number of tokens: {len(tokens)}" + ) + removed += 1 + return False + + return True + + # We use to_eager() here so that we can print out the value of total + # and removed below. + ans = cut_set.filter(remove_short_and_long_utterances).to_eager() + ratio = removed / total * 100 + logging.info( + f"Removed {removed} cuts from {total} cuts. {ratio:.3f}% data is removed." + ) + return ans + + +def main(): + args = get_args() + logging.info(vars(args)) + + if args.out_cuts.is_file(): + logging.info(f"{args.out_cuts} already exists - skipping") + return + + assert args.in_cuts.is_file(), f"{args.in_cuts} does not exist" + assert args.bpe_model.is_file(), f"{args.bpe_model} does not exist" + + sp = spm.SentencePieceProcessor() + sp.load(str(args.bpe_model)) + + cut_set = load_manifest_lazy(args.in_cuts) + assert isinstance(cut_set, CutSet) + + cut_set = filter_cuts(cut_set, sp) + logging.info(f"Saving to {args.out_cuts}") + args.out_cuts.parent.mkdir(parents=True, exist_ok=True) + cut_set.to_file(args.out_cuts) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + main() diff --git a/egs/LJSpeech/ASR/local/generate_unique_lexicon.py b/egs/LJSpeech/ASR/local/generate_unique_lexicon.py new file mode 100755 index 000000000..3459c2f5a --- /dev/null +++ b/egs/LJSpeech/ASR/local/generate_unique_lexicon.py @@ -0,0 +1,98 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This file takes as input a lexicon.txt and output a new lexicon, +in which each word has a unique pronunciation. + +The way to do this is to keep only the first pronunciation of a word +in lexicon.txt. +""" + + +import argparse +import logging +from pathlib import Path +from typing import List, Tuple + +from icefall.lexicon import read_lexicon, write_lexicon + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--lang-dir", + type=str, + help="""Input and output directory. + It should contain a file lexicon.txt. + This file will generate a new file uniq_lexicon.txt + in it. + """, + ) + + return parser.parse_args() + + +def filter_multiple_pronunications( + lexicon: List[Tuple[str, List[str]]] +) -> List[Tuple[str, List[str]]]: + """Remove multiple pronunciations of words from a lexicon. + + If a word has more than one pronunciation in the lexicon, only + the first one is kept, while other pronunciations are removed + from the lexicon. + + Args: + lexicon: + The input lexicon, containing a list of (word, [p1, p2, ..., pn]), + where "p1, p2, ..., pn" are the pronunciations of the "word". + Returns: + Return a new lexicon where each word has a unique pronunciation. + """ + seen = set() + ans = [] + + for word, tokens in lexicon: + if word in seen: + continue + seen.add(word) + ans.append((word, tokens)) + return ans + + +def main(): + args = get_args() + lang_dir = Path(args.lang_dir) + + lexicon_filename = lang_dir / "lexicon.txt" + + in_lexicon = read_lexicon(lexicon_filename) + + out_lexicon = filter_multiple_pronunications(in_lexicon) + + write_lexicon(lang_dir / "uniq_lexicon.txt", out_lexicon) + + logging.info(f"Number of entries in lexicon.txt: {len(in_lexicon)}") + logging.info(f"Number of entries in uniq_lexicon.txt: {len(out_lexicon)}") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + main() diff --git a/egs/LJSpeech/ASR/local/prepare_LJSpeech.py b/egs/LJSpeech/ASR/local/prepare_LJSpeech.py new file mode 100755 index 000000000..75a1f5929 --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_LJSpeech.py @@ -0,0 +1,179 @@ +import logging +import sys +import os +import re +import shutil +import tarfile +import zipfile +from concurrent.futures.thread import ThreadPoolExecutor +from pathlib import Path +from typing import Dict, List, Optional, Sequence, Tuple, Union + +from tqdm.auto import tqdm + +from lhotse import validate_recordings_and_supervisions +from lhotse.audio import Recording, RecordingSet +from lhotse.recipes.utils import manifests_exist, read_manifests_if_cached +from lhotse.supervision import AlignmentItem, SupervisionSegment, SupervisionSet +from lhotse.utils import ( + Pathlike, + is_module_available, + safe_extract, + urlretrieve_progress, +) + +# LIBRISPEECH_ALIGNMENTS_URL = ( +# "https://drive.google.com/uc?id=1WYfgr31T-PPwMcxuAq09XZfHQO5Mw8fE" +# ) + +def prepare_LJSpeech( + corpus_dir: str, + dataset_parts: str = "auto", + output_dir: str = None, + num_jobs: int = 1, +) -> Dict[str, Dict[str, Union[RecordingSet, SupervisionSet]]]: + """ + Returns the manifests which consist of the Recordings and Supervisions. + When all the manifests are available in the ``output_dir``, it will simply read and return them. + :param corpus_dir: Pathlike, the path of the data dir. + :param dataset_parts: string or sequence of strings representing dataset part names, e.g. 'train-clean-100', 'train-clean-5', 'dev-clean'. + By default we will infer which parts are available in ``corpus_dir``. + :param output_dir: Pathlike, the path where to write the manifests. + :return: a Dict whose key is the dataset part, and the value is Dicts with the keys 'audio' and 'supervisions'. + """ + + assert os.path.exists(corpus_dir), f"{corpus_dir} does not exist" + + # wav_dir = Path(corpus_dir + "/wavs") + # wavs = os.listdir(wav_dir) + + # text_dir = Path(corpus_dir + "/wavs") + # texts = os.listdir(text_dir) + + # wavs_parts = ( + # set(wavs) + # ) + # books_parts = ( + # set(texts) + # ) + + manifests = {} + + dataset_parts = ["train", "dev", "test"] + if output_dir is not None: + output_dir = Path(output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + + import glob + + futures = [] + for part in tqdm(dataset_parts, desc="Dataset parts"): + logging.info(f"Processing LJSpeech subset: {part}") + if manifests_exist(part=part, output_dir=output_dir): + logging.info(f"LJSpeech subset: {part} already prepared - skipping.") + continue + recordings = [] + supervisions = [] + part_path = Path(os.path.join(corpus_dir, "wavs", part)) + part_file_names = list(map(lambda x: x.strip('.wav'),os.listdir(part_path))) + txt_path = os.path.join(corpus_dir, "texts") + futures = [] + + for trans_path in tqdm( + glob.iglob(str(txt_path) + "/*.txt"), desc="Distributing tasks", leave=False + ): + alignments = {} + with open(trans_path) as f: + cur_file_name = trans_path.split('/')[-1].replace('.txt', '') + if cur_file_name not in part_file_names: + continue + for line in f: + futures.append( + parse_utterance(part_path, trans_path + ' ' + line, alignments) + ) + + for future in tqdm(futures, desc="Processing", leave=False): + result = future + if result is None: + continue + recording, segment = result + recordings.append(recording) + supervisions.append(segment) + + recording_set = RecordingSet.from_recordings(recordings) + supervision_set = SupervisionSet.from_segments(supervisions) + + validate_recordings_and_supervisions(recording_set, supervision_set) + + if output_dir is not None: + supervision_set.to_file( + output_dir / f"LJSpeech_supervisions_{part}.jsonl.gz" + ) + recording_set.to_file( + output_dir / f"LJSpeech_recordings_{part}.jsonl.gz" + ) + + manifests[part] = { + "recordings": recording_set, + "supervisions": supervision_set, + } + + return manifests + + +def parse_utterance( + dataset_split_path: Path, + line: str, + alignments: Dict[str, List[AlignmentItem]], +) -> Optional[Tuple[Recording, SupervisionSegment]]: + recording_id, text = line.strip().split(maxsplit=1) + recording_id = recording_id.split('/')[-1].split('.txt')[0] + + # Create the Recording first + audio_path = ( + dataset_split_path / f"{recording_id}.wav" + ) + + if not os.path.exists(audio_path): + logging.warning(f"No such file: {audio_path}") + return None + recording = Recording.from_file(audio_path, recording_id=recording_id) + # Then, create the corresponding supervisions + segment = SupervisionSegment( + id=recording_id, + recording_id=recording_id, + start=0.0, + duration=recording.duration, + channel=0, + language="English", + speaker=re.sub(r"-.*", r"", recording.id), + text=text.strip(), + alignment={"word": alignments[recording_id]} + if recording_id in alignments + else None, + ) + return recording, segment + + +def parse_alignments(ali_path: Pathlike) -> Dict[str, List[AlignmentItem]]: + alignments = {} + for line in Path(ali_path).read_text().splitlines(): + utt_id, words, timestamps = line.split() + words = words.replace('"', "").split(",") + timestamps = [0.0] + list(map(float, timestamps.replace('"', "").split(","))) + alignments[utt_id] = [ + AlignmentItem( + symbol=word, start=start, duration=round(end - start, ndigits=8) + ) + for word, start, end in zip(words, timestamps, timestamps[1:]) + ] + return alignments + +def main(corpus_dir): + nj = 15 + output_dir = "data/manifests" + + prepare_LJSpeech(corpus_dir, "auto", output_dir, nj) + +corpus_dir = sys.argv[1] +main(corpus_dir) \ No newline at end of file diff --git a/egs/LJSpeech/ASR/local/prepare_LJSpeech_pseudo.py b/egs/LJSpeech/ASR/local/prepare_LJSpeech_pseudo.py new file mode 100755 index 000000000..31a8ff5b8 --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_LJSpeech_pseudo.py @@ -0,0 +1,179 @@ +import logging +import sys +import os +import re +import shutil +import tarfile +import zipfile +from concurrent.futures.thread import ThreadPoolExecutor +from pathlib import Path +from typing import Dict, List, Optional, Sequence, Tuple, Union + +from tqdm.auto import tqdm + +from lhotse import validate_recordings_and_supervisions +from lhotse.audio import Recording, RecordingSet +from lhotse.recipes.utils import manifests_exist, read_manifests_if_cached +from lhotse.supervision import AlignmentItem, SupervisionSegment, SupervisionSet +from lhotse.utils import ( + Pathlike, + is_module_available, + safe_extract, + urlretrieve_progress, +) + +# LIBRISPEECH_ALIGNMENTS_URL = ( +# "https://drive.google.com/uc?id=1WYfgr31T-PPwMcxuAq09XZfHQO5Mw8fE" +# ) + +def prepare_LJSpeech( + corpus_dir: str, + dataset_parts: str = "auto", + output_dir: str = None, + num_jobs: int = 1, +) -> Dict[str, Dict[str, Union[RecordingSet, SupervisionSet]]]: + """ + Returns the manifests which consist of the Recordings and Supervisions. + When all the manifests are available in the ``output_dir``, it will simply read and return them. + :param corpus_dir: Pathlike, the path of the data dir. + :param dataset_parts: string or sequence of strings representing dataset part names, e.g. 'train-clean-100', 'train-clean-5', 'dev-clean'. + By default we will infer which parts are available in ``corpus_dir``. + :param output_dir: Pathlike, the path where to write the manifests. + :return: a Dict whose key is the dataset part, and the value is Dicts with the keys 'audio' and 'supervisions'. + """ + + assert os.path.exists(corpus_dir), f"{corpus_dir} does not exist" + + # wav_dir = Path(corpus_dir + "/wavs") + # wavs = os.listdir(wav_dir) + + # text_dir = Path(corpus_dir + "/wavs") + # texts = os.listdir(text_dir) + + # wavs_parts = ( + # set(wavs) + # ) + # books_parts = ( + # set(texts) + # ) + + manifests = {} + + dataset_parts = ["train", "dev", "test"] + if output_dir is not None: + output_dir = Path(output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + + import glob + + futures = [] + for part in tqdm(dataset_parts, desc="Dataset parts"): + logging.info(f"Processing LJSpeech subset: {part}") + if manifests_exist(part=part, output_dir=output_dir): + logging.info(f"LJSpeech subset: {part} already prepared - skipping.") + continue + recordings = [] + supervisions = [] + part_path = Path(os.path.join(corpus_dir, "wavs", part)) + part_file_names = list(map(lambda x: x.strip('.wav'),os.listdir(part_path))) + txt_path = os.path.join(corpus_dir, "texts") + futures = [] + + for trans_path in tqdm( + glob.iglob(str(txt_path) + "/*.txt"), desc="Distributing tasks", leave=False + ): + alignments = {} + with open(trans_path) as f: + cur_file_name = trans_path.split('/')[-1].replace('.txt', '') + if cur_file_name not in part_file_names: + continue + for line in f: + futures.append( + parse_utterance(part_path, trans_path + ' ' + line, alignments) + ) + + for future in tqdm(futures, desc="Processing", leave=False): + result = future + if result is None: + continue + recording, segment = result + recordings.append(recording) + supervisions.append(segment) + + recording_set = RecordingSet.from_recordings(recordings) + supervision_set = SupervisionSet.from_segments(supervisions) + + validate_recordings_and_supervisions(recording_set, supervision_set) + + if output_dir is not None: + supervision_set.to_file( + output_dir / f"LJSpeech_pseudo_supervisions_{part}.jsonl.gz" + ) + recording_set.to_file( + output_dir / f"LJSpeech_pseudo_recordings_{part}.jsonl.gz" + ) + + manifests[part] = { + "recordings": recording_set, + "supervisions": supervision_set, + } + + return manifests + + +def parse_utterance( + dataset_split_path: Path, + line: str, + alignments: Dict[str, List[AlignmentItem]], +) -> Optional[Tuple[Recording, SupervisionSegment]]: + recording_id, text = line.strip().split(maxsplit=1) + recording_id = recording_id.split('/')[-1].split('.txt')[0] + + # Create the Recording first + audio_path = ( + dataset_split_path / f"{recording_id}.wav" + ) + + if not os.path.exists(audio_path): + logging.warning(f"No such file: {audio_path}") + return None + recording = Recording.from_file(audio_path, recording_id=recording_id) + # Then, create the corresponding supervisions + segment = SupervisionSegment( + id=recording_id, + recording_id=recording_id, + start=0.0, + duration=recording.duration, + channel=0, + language="English", + speaker=re.sub(r"-.*", r"", recording.id), + text=text.strip(), + alignment={"word": alignments[recording_id]} + if recording_id in alignments + else None, + ) + return recording, segment + + +def parse_alignments(ali_path: Pathlike) -> Dict[str, List[AlignmentItem]]: + alignments = {} + for line in Path(ali_path).read_text().splitlines(): + utt_id, words, timestamps = line.split() + words = words.replace('"', "").split(",") + timestamps = [0.0] + list(map(float, timestamps.replace('"', "").split(","))) + alignments[utt_id] = [ + AlignmentItem( + symbol=word, start=start, duration=round(end - start, ndigits=8) + ) + for word, start, end in zip(words, timestamps, timestamps[1:]) + ] + return alignments + +def main(corpus_dir): + nj = 15 + output_dir = "data/manifests" + + prepare_LJSpeech(corpus_dir, "auto", output_dir, nj) + +corpus_dir = sys.argv[1] +main(corpus_dir) \ No newline at end of file diff --git a/egs/LJSpeech/ASR/local/prepare_LJSpeech_text.py b/egs/LJSpeech/ASR/local/prepare_LJSpeech_text.py new file mode 100755 index 000000000..cc483bda3 --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_LJSpeech_text.py @@ -0,0 +1,35 @@ +import os +import sys +import re + +metafile = sys.argv[1] +outdir = "texts" +save_dir = "/".join(metafile.split('/')[:-1]) +save_dir = os.path.join(save_dir, outdir) + +if not os.path.exists(save_dir): + os.makedirs(save_dir) + +with open(metafile, 'r') as f: + strings = f.readlines() + +for string in strings: + + # Split the string into parts + parts = string.split("|") + + # Assign the parts to variables + filename = parts[0] + text1 = parts[1] + try: + text2 = parts[2] + except: + text2 = text1 + + text2 = text2.upper() + text2 = re.sub(r"[^A-Z ']", "", text2) + + # Create a new text file with the filename and write text2 to it + filename = os.path.join(save_dir, filename) + with open(f"{filename}.txt", "w") as file: + file.write(text2) \ No newline at end of file diff --git a/egs/LJSpeech/ASR/local/prepare_lang.py b/egs/LJSpeech/ASR/local/prepare_lang.py new file mode 100755 index 000000000..d913756a1 --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_lang.py @@ -0,0 +1,413 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +This script takes as input a lexicon file "data/lang_phone/lexicon.txt" +consisting of words and tokens (i.e., phones) and does the following: + +1. Add disambiguation symbols to the lexicon and generate lexicon_disambig.txt + +2. Generate tokens.txt, the token table mapping a token to a unique integer. + +3. Generate words.txt, the word table mapping a word to a unique integer. + +4. Generate L.pt, in k2 format. It can be loaded by + + d = torch.load("L.pt") + lexicon = k2.Fsa.from_dict(d) + +5. Generate L_disambig.pt, in k2 format. +""" +import argparse +import math +from collections import defaultdict +from pathlib import Path +from typing import Any, Dict, List, Tuple + +import k2 +import torch + +from icefall.lexicon import read_lexicon, write_lexicon +from icefall.utils import str2bool + +Lexicon = List[Tuple[str, List[str]]] + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--lang-dir", + type=str, + help="""Input and output directory. + It should contain a file lexicon.txt. + Generated files by this script are saved into this directory. + """, + ) + + parser.add_argument( + "--debug", + type=str2bool, + default=False, + help="""True for debugging, which will generate + a visualization of the lexicon FST. + + Caution: If your lexicon contains hundreds of thousands + of lines, please set it to False! + """, + ) + + return parser.parse_args() + + +def write_mapping(filename: str, sym2id: Dict[str, int]) -> None: + """Write a symbol to ID mapping to a file. + + Note: + No need to implement `read_mapping` as it can be done + through :func:`k2.SymbolTable.from_file`. + + Args: + filename: + Filename to save the mapping. + sym2id: + A dict mapping symbols to IDs. + Returns: + Return None. + """ + with open(filename, "w", encoding="utf-8") as f: + for sym, i in sym2id.items(): + f.write(f"{sym} {i}\n") + + +def get_tokens(lexicon: Lexicon) -> List[str]: + """Get tokens from a lexicon. + + Args: + lexicon: + It is the return value of :func:`read_lexicon`. + Returns: + Return a list of unique tokens. + """ + ans = set() + for _, tokens in lexicon: + ans.update(tokens) + sorted_ans = sorted(list(ans)) + return sorted_ans + + +def get_words(lexicon: Lexicon) -> List[str]: + """Get words from a lexicon. + + Args: + lexicon: + It is the return value of :func:`read_lexicon`. + Returns: + Return a list of unique words. + """ + ans = set() + for word, _ in lexicon: + ans.add(word) + sorted_ans = sorted(list(ans)) + return sorted_ans + + +def add_disambig_symbols(lexicon: Lexicon) -> Tuple[Lexicon, int]: + """It adds pseudo-token disambiguation symbols #1, #2 and so on + at the ends of tokens to ensure that all pronunciations are different, + and that none is a prefix of another. + + See also add_lex_disambig.pl from kaldi. + + Args: + lexicon: + It is returned by :func:`read_lexicon`. + Returns: + Return a tuple with two elements: + + - The output lexicon with disambiguation symbols + - The ID of the max disambiguation symbol that appears + in the lexicon + """ + + # (1) Work out the count of each token-sequence in the + # lexicon. + count = defaultdict(int) + for _, tokens in lexicon: + count[" ".join(tokens)] += 1 + + # (2) For each left sub-sequence of each token-sequence, note down + # that it exists (for identifying prefixes of longer strings). + issubseq = defaultdict(int) + for _, tokens in lexicon: + tokens = tokens.copy() + tokens.pop() + while tokens: + issubseq[" ".join(tokens)] = 1 + tokens.pop() + + # (3) For each entry in the lexicon: + # if the token sequence is unique and is not a + # prefix of another word, no disambig symbol. + # Else output #1, or #2, #3, ... if the same token-seq + # has already been assigned a disambig symbol. + ans = [] + + # We start with #1 since #0 has its own purpose + first_allowed_disambig = 1 + max_disambig = first_allowed_disambig - 1 + last_used_disambig_symbol_of = defaultdict(int) + + for word, tokens in lexicon: + tokenseq = " ".join(tokens) + assert tokenseq != "" + if issubseq[tokenseq] == 0 and count[tokenseq] == 1: + ans.append((word, tokens)) + continue + + cur_disambig = last_used_disambig_symbol_of[tokenseq] + if cur_disambig == 0: + cur_disambig = first_allowed_disambig + else: + cur_disambig += 1 + + if cur_disambig > max_disambig: + max_disambig = cur_disambig + last_used_disambig_symbol_of[tokenseq] = cur_disambig + tokenseq += f" #{cur_disambig}" + ans.append((word, tokenseq.split())) + return ans, max_disambig + + +def generate_id_map(symbols: List[str]) -> Dict[str, int]: + """Generate ID maps, i.e., map a symbol to a unique ID. + + Args: + symbols: + A list of unique symbols. + Returns: + A dict containing the mapping between symbols and IDs. + """ + return {sym: i for i, sym in enumerate(symbols)} + + +def add_self_loops( + arcs: List[List[Any]], disambig_token: int, disambig_word: int +) -> List[List[Any]]: + """Adds self-loops to states of an FST to propagate disambiguation symbols + through it. They are added on each state with non-epsilon output symbols + on at least one arc out of the state. + + See also fstaddselfloops.pl from Kaldi. One difference is that + Kaldi uses OpenFst style FSTs and it has multiple final states. + This function uses k2 style FSTs and it does not need to add self-loops + to the final state. + + The input label of a self-loop is `disambig_token`, while the output + label is `disambig_word`. + + Args: + arcs: + A list-of-list. The sublist contains + `[src_state, dest_state, label, aux_label, score]` + disambig_token: + It is the token ID of the symbol `#0`. + disambig_word: + It is the word ID of the symbol `#0`. + + Return: + Return new `arcs` containing self-loops. + """ + states_needs_self_loops = set() + for arc in arcs: + src, dst, ilabel, olabel, score = arc + if olabel != 0: + states_needs_self_loops.add(src) + + ans = [] + for s in states_needs_self_loops: + ans.append([s, s, disambig_token, disambig_word, 0]) + + return arcs + ans + + +def lexicon_to_fst( + lexicon: Lexicon, + token2id: Dict[str, int], + word2id: Dict[str, int], + sil_token: str = "SIL", + sil_prob: float = 0.5, + need_self_loops: bool = False, +) -> k2.Fsa: + """Convert a lexicon to an FST (in k2 format) with optional silence at + the beginning and end of each word. + + Args: + lexicon: + The input lexicon. See also :func:`read_lexicon` + token2id: + A dict mapping tokens to IDs. + word2id: + A dict mapping words to IDs. + sil_token: + The silence token. + sil_prob: + The probability for adding a silence at the beginning and end + of the word. + need_self_loops: + If True, add self-loop to states with non-epsilon output symbols + on at least one arc out of the state. The input label for this + self loop is `token2id["#0"]` and the output label is `word2id["#0"]`. + Returns: + Return an instance of `k2.Fsa` representing the given lexicon. + """ + assert sil_prob > 0.0 and sil_prob < 1.0 + # CAUTION: we use score, i.e, negative cost. + sil_score = math.log(sil_prob) + no_sil_score = math.log(1.0 - sil_prob) + + start_state = 0 + loop_state = 1 # words enter and leave from here + sil_state = 2 # words terminate here when followed by silence; this state + # has a silence transition to loop_state. + next_state = 3 # the next un-allocated state, will be incremented as we go. + arcs = [] + + assert token2id[""] == 0 + assert word2id[""] == 0 + + eps = 0 + + sil_token = token2id[sil_token] + + arcs.append([start_state, loop_state, eps, eps, no_sil_score]) + arcs.append([start_state, sil_state, eps, eps, sil_score]) + arcs.append([sil_state, loop_state, sil_token, eps, 0]) + + for word, tokens in lexicon: + assert len(tokens) > 0, f"{word} has no pronunciations" + cur_state = loop_state + + word = word2id[word] + tokens = [token2id[i] for i in tokens] + + for i in range(len(tokens) - 1): + w = word if i == 0 else eps + arcs.append([cur_state, next_state, tokens[i], w, 0]) + + cur_state = next_state + next_state += 1 + + # now for the last token of this word + # It has two out-going arcs, one to the loop state, + # the other one to the sil_state. + i = len(tokens) - 1 + w = word if i == 0 else eps + arcs.append([cur_state, loop_state, tokens[i], w, no_sil_score]) + arcs.append([cur_state, sil_state, tokens[i], w, sil_score]) + + if need_self_loops: + disambig_token = token2id["#0"] + disambig_word = word2id["#0"] + arcs = add_self_loops( + arcs, + disambig_token=disambig_token, + disambig_word=disambig_word, + ) + + final_state = next_state + arcs.append([loop_state, final_state, -1, -1, 0]) + arcs.append([final_state]) + + arcs = sorted(arcs, key=lambda arc: arc[0]) + arcs = [[str(i) for i in arc] for arc in arcs] + arcs = [" ".join(arc) for arc in arcs] + arcs = "\n".join(arcs) + + fsa = k2.Fsa.from_str(arcs, acceptor=False) + return fsa + + +def main(): + args = get_args() + lang_dir = Path(args.lang_dir) + lexicon_filename = lang_dir / "lexicon.txt" + sil_token = "SIL" + sil_prob = 0.5 + + lexicon = read_lexicon(lexicon_filename) + tokens = get_tokens(lexicon) + words = get_words(lexicon) + + lexicon_disambig, max_disambig = add_disambig_symbols(lexicon) + + for i in range(max_disambig + 1): + disambig = f"#{i}" + assert disambig not in tokens + tokens.append(f"#{i}") + + assert "" not in tokens + tokens = [""] + tokens + + assert "" not in words + assert "#0" not in words + assert "" not in words + assert "" not in words + + words = [""] + words + ["#0", "", ""] + + token2id = generate_id_map(tokens) + word2id = generate_id_map(words) + + write_mapping(lang_dir / "tokens.txt", token2id) + write_mapping(lang_dir / "words.txt", word2id) + write_lexicon(lang_dir / "lexicon_disambig.txt", lexicon_disambig) + + L = lexicon_to_fst( + lexicon, + token2id=token2id, + word2id=word2id, + sil_token=sil_token, + sil_prob=sil_prob, + ) + + L_disambig = lexicon_to_fst( + lexicon_disambig, + token2id=token2id, + word2id=word2id, + sil_token=sil_token, + sil_prob=sil_prob, + need_self_loops=True, + ) + torch.save(L.as_dict(), lang_dir / "L.pt") + torch.save(L_disambig.as_dict(), lang_dir / "L_disambig.pt") + + if args.debug: + labels_sym = k2.SymbolTable.from_file(lang_dir / "tokens.txt") + aux_labels_sym = k2.SymbolTable.from_file(lang_dir / "words.txt") + + L.labels_sym = labels_sym + L.aux_labels_sym = aux_labels_sym + L.draw(f"{lang_dir / 'L.svg'}", title="L.pt") + + L_disambig.labels_sym = labels_sym + L_disambig.aux_labels_sym = aux_labels_sym + L_disambig.draw(f"{lang_dir / 'L_disambig.svg'}", title="L_disambig.pt") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/prepare_lang_bpe.py b/egs/LJSpeech/ASR/local/prepare_lang_bpe.py new file mode 100755 index 000000000..e121aefa9 --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_lang_bpe.py @@ -0,0 +1,259 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# Copyright (c) 2021 Xiaomi Corporation (authors: Fangjun Kuang) + +""" + +This script takes as input `lang_dir`, which should contain:: + + - lang_dir/bpe.model, + - lang_dir/words.txt + +and generates the following files in the directory `lang_dir`: + + - lexicon.txt + - lexicon_disambig.txt + - L.pt + - L_disambig.pt + - tokens.txt +""" + +import argparse +from pathlib import Path +from typing import Dict, List, Tuple + +import k2 +import sentencepiece as spm +import torch +from prepare_lang import ( + Lexicon, + add_disambig_symbols, + add_self_loops, + write_lexicon, + write_mapping, +) + +from icefall.utils import str2bool + + +def lexicon_to_fst_no_sil( + lexicon: Lexicon, + token2id: Dict[str, int], + word2id: Dict[str, int], + need_self_loops: bool = False, +) -> k2.Fsa: + """Convert a lexicon to an FST (in k2 format). + + Args: + lexicon: + The input lexicon. See also :func:`read_lexicon` + token2id: + A dict mapping tokens to IDs. + word2id: + A dict mapping words to IDs. + need_self_loops: + If True, add self-loop to states with non-epsilon output symbols + on at least one arc out of the state. The input label for this + self loop is `token2id["#0"]` and the output label is `word2id["#0"]`. + Returns: + Return an instance of `k2.Fsa` representing the given lexicon. + """ + loop_state = 0 # words enter and leave from here + next_state = 1 # the next un-allocated state, will be incremented as we go + + arcs = [] + + # The blank symbol is defined in local/train_bpe_model.py + assert token2id[""] == 0 + assert word2id[""] == 0 + + eps = 0 + + for word, pieces in lexicon: + assert len(pieces) > 0, f"{word} has no pronunciations" + cur_state = loop_state + + word = word2id[word] + pieces = [token2id[i] for i in pieces] + + for i in range(len(pieces) - 1): + w = word if i == 0 else eps + arcs.append([cur_state, next_state, pieces[i], w, 0]) + + cur_state = next_state + next_state += 1 + + # now for the last piece of this word + i = len(pieces) - 1 + w = word if i == 0 else eps + arcs.append([cur_state, loop_state, pieces[i], w, 0]) + + if need_self_loops: + disambig_token = token2id["#0"] + disambig_word = word2id["#0"] + arcs = add_self_loops( + arcs, + disambig_token=disambig_token, + disambig_word=disambig_word, + ) + + final_state = next_state + arcs.append([loop_state, final_state, -1, -1, 0]) + arcs.append([final_state]) + + arcs = sorted(arcs, key=lambda arc: arc[0]) + arcs = [[str(i) for i in arc] for arc in arcs] + arcs = [" ".join(arc) for arc in arcs] + arcs = "\n".join(arcs) + + fsa = k2.Fsa.from_str(arcs, acceptor=False) + return fsa + + +def generate_lexicon( + model_file: str, words: List[str] +) -> Tuple[Lexicon, Dict[str, int]]: + """Generate a lexicon from a BPE model. + + Args: + model_file: + Path to a sentencepiece model. + words: + A list of strings representing words. + Returns: + Return a tuple with two elements: + - A dict whose keys are words and values are the corresponding + word pieces. + - A dict representing the token symbol, mapping from tokens to IDs. + """ + sp = spm.SentencePieceProcessor() + sp.load(str(model_file)) + + # Convert word to word piece IDs instead of word piece strings + # to avoid OOV tokens. + words_pieces_ids: List[List[int]] = sp.encode(words, out_type=int) + + # Now convert word piece IDs back to word piece strings. + words_pieces: List[List[str]] = [sp.id_to_piece(ids) for ids in words_pieces_ids] + + lexicon = [] + for word, pieces in zip(words, words_pieces): + lexicon.append((word, pieces)) + + # The OOV word is + lexicon.append(("", [sp.id_to_piece(sp.unk_id())])) + + token2id: Dict[str, int] = dict() + for i in range(sp.vocab_size()): + token2id[sp.id_to_piece(i)] = i + + return lexicon, token2id + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--lang-dir", + type=str, + help="""Input and output directory. + It should contain the bpe.model and words.txt + """, + ) + + parser.add_argument( + "--debug", + type=str2bool, + default=False, + help="""True for debugging, which will generate + a visualization of the lexicon FST. + + Caution: If your lexicon contains hundreds of thousands + of lines, please set it to False! + + See "test/test_bpe_lexicon.py" for usage. + """, + ) + + return parser.parse_args() + + +def main(): + args = get_args() + lang_dir = Path(args.lang_dir) + model_file = lang_dir / "bpe.model" + + word_sym_table = k2.SymbolTable.from_file(lang_dir / "words.txt") + + words = word_sym_table.symbols + + excluded = ["", "!SIL", "", "", "#0", "", ""] + for w in excluded: + if w in words: + words.remove(w) + + lexicon, token_sym_table = generate_lexicon(model_file, words) + + lexicon_disambig, max_disambig = add_disambig_symbols(lexicon) + + next_token_id = max(token_sym_table.values()) + 1 + for i in range(max_disambig + 1): + disambig = f"#{i}" + assert disambig not in token_sym_table + token_sym_table[disambig] = next_token_id + next_token_id += 1 + + word_sym_table.add("#0") + word_sym_table.add("") + word_sym_table.add("") + + write_mapping(lang_dir / "tokens.txt", token_sym_table) + + write_lexicon(lang_dir / "lexicon.txt", lexicon) + write_lexicon(lang_dir / "lexicon_disambig.txt", lexicon_disambig) + + L = lexicon_to_fst_no_sil( + lexicon, + token2id=token_sym_table, + word2id=word_sym_table, + ) + + L_disambig = lexicon_to_fst_no_sil( + lexicon_disambig, + token2id=token_sym_table, + word2id=word_sym_table, + need_self_loops=True, + ) + torch.save(L.as_dict(), lang_dir / "L.pt") + torch.save(L_disambig.as_dict(), lang_dir / "L_disambig.pt") + + if args.debug: + labels_sym = k2.SymbolTable.from_file(lang_dir / "tokens.txt") + aux_labels_sym = k2.SymbolTable.from_file(lang_dir / "words.txt") + + L.labels_sym = labels_sym + L.aux_labels_sym = aux_labels_sym + L.draw(f"{lang_dir / 'L.svg'}", title="L.pt") + + L_disambig.labels_sym = labels_sym + L_disambig.aux_labels_sym = aux_labels_sym + L_disambig.draw(f"{lang_dir / 'L_disambig.svg'}", title="L_disambig.pt") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/prepare_lm_training_data.py b/egs/LJSpeech/ASR/local/prepare_lm_training_data.py new file mode 100755 index 000000000..70343fef7 --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_lm_training_data.py @@ -0,0 +1,167 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2021 Xiaomi Corporation (authors: Daniel Povey +# Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This script takes a `bpe.model` and a text file such as +./download/lm/librispeech-lm-norm.txt +and outputs the LM training data to a supplied directory such +as data/lm_training_bpe_500. The format is as follows: + +It creates a PyTorch archive (.pt file), say data/lm_training.pt, which is a +representation of a dict with the following format: + + 'words' -> a k2.RaggedTensor of two axes [word][token] with dtype torch.int32 + containing the BPE representations of each word, indexed by + integer word ID. (These integer word IDS are present in + 'lm_data'). The sentencepiece object can be used to turn the + words and BPE units into string form. + 'sentences' -> a k2.RaggedTensor of two axes [sentence][word] with dtype + torch.int32 containing all the sentences, as word-ids (we don't + output the string form of this directly but it can be worked out + together with 'words' and the bpe.model). + 'sentence_lengths' -> a 1-D torch.Tensor of dtype torch.int32, containing + number of BPE tokens of each sentence. +""" + +import argparse +import logging +from pathlib import Path + +import k2 +import sentencepiece as spm +import torch + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--bpe-model", + type=str, + help="Input BPE model, e.g. data/bpe_500/bpe.model", + ) + parser.add_argument( + "--lm-data", + type=str, + help="""Input LM training data as text, e.g. + download/pb.train.txt""", + ) + parser.add_argument( + "--lm-archive", + type=str, + help="""Path to output archive, e.g. data/bpe_500/lm_data.pt; + look at the source of this script to see the format.""", + ) + + return parser.parse_args() + + +def main(): + args = get_args() + + if Path(args.lm_archive).exists(): + logging.warning(f"{args.lm_archive} exists - skipping") + return + + sp = spm.SentencePieceProcessor() + sp.load(args.bpe_model) + + # word2index is a dictionary from words to integer ids. No need to reserve + # space for epsilon, etc.; the words are just used as a convenient way to + # compress the sequences of BPE pieces. + word2index = dict() + + word2bpe = [] # Will be a list-of-list-of-int, representing BPE pieces. + sentences = [] # Will be a list-of-list-of-int, representing word-ids. + + if "librispeech-lm-norm" in args.lm_data: + num_lines_in_total = 40418261.0 + step = 5000000 + elif "valid" in args.lm_data: + num_lines_in_total = 5567.0 + step = 3000 + elif "test" in args.lm_data: + num_lines_in_total = 5559.0 + step = 3000 + else: + num_lines_in_total = None + step = None + + processed = 0 + + with open(args.lm_data) as f: + while True: + line = f.readline() + if line == "": + break + + if step and processed % step == 0: + logging.info( + f"Processed number of lines: {processed} " + f"({processed/num_lines_in_total*100: .3f}%)" + ) + processed += 1 + + line_words = line.split() + for w in line_words: + if w not in word2index: + w_bpe = sp.encode(w) + word2index[w] = len(word2bpe) + word2bpe.append(w_bpe) + sentences.append([word2index[w] for w in line_words]) + + logging.info("Constructing ragged tensors") + words = k2.ragged.RaggedTensor(word2bpe) + sentences = k2.ragged.RaggedTensor(sentences) + + output = dict(words=words, sentences=sentences) + + num_sentences = sentences.dim0 + logging.info(f"Computing sentence lengths, num_sentences: {num_sentences}") + sentence_lengths = [0] * num_sentences + for i in range(num_sentences): + if step and i % step == 0: + logging.info( + f"Processed number of lines: {i} ({i/num_sentences*100: .3f}%)" + ) + + word_ids = sentences[i] + + # NOTE: If word_ids is a tensor with only 1 entry, + # token_ids is a torch.Tensor + token_ids = words[word_ids] + if isinstance(token_ids, k2.RaggedTensor): + token_ids = token_ids.values + + # token_ids is a 1-D tensor containing the BPE tokens + # of the current sentence + + sentence_lengths[i] = token_ids.numel() + + output["sentence_lengths"] = torch.tensor(sentence_lengths, dtype=torch.int32) + + torch.save(output, args.lm_archive) + logging.info(f"Saved to {args.lm_archive}") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + main() diff --git a/egs/LJSpeech/ASR/local/prepare_userlibri.py b/egs/LJSpeech/ASR/local/prepare_userlibri.py new file mode 100755 index 000000000..3cd40f7bd --- /dev/null +++ b/egs/LJSpeech/ASR/local/prepare_userlibri.py @@ -0,0 +1,255 @@ +import logging +import os +import re +import shutil +import tarfile +import zipfile +from concurrent.futures.thread import ThreadPoolExecutor +from pathlib import Path +from typing import Dict, List, Optional, Sequence, Tuple, Union + +from tqdm.auto import tqdm + +from lhotse import validate_recordings_and_supervisions +from lhotse.audio import Recording, RecordingSet +from lhotse.recipes.utils import manifests_exist, read_manifests_if_cached +from lhotse.supervision import AlignmentItem, SupervisionSegment, SupervisionSet +from lhotse.utils import ( + Pathlike, + is_module_available, + safe_extract, + urlretrieve_progress, +) + +# LIBRISPEECH_ALIGNMENTS_URL = ( +# "https://drive.google.com/uc?id=1WYfgr31T-PPwMcxuAq09XZfHQO5Mw8fE" +# ) + + +# def download_librispeech( +# target_dir: Pathlike = ".", +# dataset_parts: Optional[Union[str, Sequence[str]]] = "mini_librispeech", +# force_download: bool = False, +# alignments: bool = False, +# base_url: str = "http://www.openslr.org/resources", +# alignments_url: str = LIBRISPEECH_ALIGNMENTS_URL, +# ) -> Path: +# """ +# Download and untar the dataset, supporting both LibriSpeech and MiniLibrispeech +# :param target_dir: Pathlike, the path of the dir to storage the dataset. +# :param dataset_parts: "librispeech", "mini_librispeech", +# or a list of splits (e.g. "dev-clean") to download. +# :param force_download: Bool, if True, download the tars no matter if the tars exist. +# :param alignments: should we download the alignments. The original source is: +# https://github.com/CorentinJ/librispeech-alignments +# :param base_url: str, the url of the OpenSLR resources. +# :param alignments_url: str, the url of LibriSpeech word alignments +# :return: the path to downloaded and extracted directory with data. +# """ +# target_dir = Path(target_dir) +# corpus_dir = target_dir / "LibriSpeech" +# target_dir.mkdir(parents=True, exist_ok=True) + +# if dataset_parts == "librispeech": +# dataset_parts = LIBRISPEECH +# elif dataset_parts == "mini_librispeech": +# dataset_parts = MINI_LIBRISPEECH +# elif isinstance(dataset_parts, str): +# dataset_parts = [dataset_parts] + +# for part in tqdm(dataset_parts, desc="Downloading LibriSpeech parts"): +# logging.info(f"Processing split: {part}") +# # Determine the valid URL for a given split. +# if part in LIBRISPEECH: +# url = f"{base_url}/12" +# elif part in MINI_LIBRISPEECH: +# url = f"{base_url}/31" +# else: +# logging.warning(f"Invalid dataset part name: {part}") +# continue +# # Split directory exists and seem valid? Skip this split. +# part_dir = corpus_dir / part +# completed_detector = part_dir / ".completed" +# if completed_detector.is_file(): +# logging.info(f"Skipping {part} because {completed_detector} exists.") +# continue +# # Maybe-download the archive. +# tar_name = f"{part}.tar.gz" +# tar_path = target_dir / tar_name +# if force_download or not tar_path.is_file(): +# urlretrieve_progress( +# f"{url}/{tar_name}", filename=tar_path, desc=f"Downloading {tar_name}" +# ) +# # Remove partial unpacked files, if any, and unpack everything. +# shutil.rmtree(part_dir, ignore_errors=True) +# with tarfile.open(tar_path) as tar: +# safe_extract(tar, path=target_dir) +# completed_detector.touch() + +# if alignments: +# completed_detector = target_dir / ".ali_completed" +# if completed_detector.is_file() and not force_download: +# return corpus_dir +# assert is_module_available( +# "gdown" +# ), 'To download LibriSpeech alignments, please install "pip install gdown"' +# import gdown + +# ali_zip_path = str(target_dir / "LibriSpeech-Alignments.zip") +# gdown.download(alignments_url, output=ali_zip_path) +# with zipfile.ZipFile(ali_zip_path) as f: +# f.extractall(path=target_dir) +# completed_detector.touch() + +# return corpus_dir + + +def prepare_userlibri( + corpus_dir: str, + dataset_parts: str = "auto", + output_dir: str = None, + num_jobs: int = 1, +) -> Dict[str, Dict[str, Union[RecordingSet, SupervisionSet]]]: + """ + Returns the manifests which consist of the Recordings and Supervisions. + When all the manifests are available in the ``output_dir``, it will simply read and return them. + :param corpus_dir: Pathlike, the path of the data dir. + :param dataset_parts: string or sequence of strings representing dataset part names, e.g. 'train-clean-100', 'train-clean-5', 'dev-clean'. + By default we will infer which parts are available in ``corpus_dir``. + :param output_dir: Pathlike, the path where to write the manifests. + :return: a Dict whose key is the dataset part, and the value is Dicts with the keys 'audio' and 'supervisions'. + """ + + # corpus_audio_dir = Path(corpus_dir + "/audio_data") + # corpus_lm_dir = Path(corpus_dir + "/lm_data") + # corpus_dir = Path(corpus_dir) + corpus_dir = Path(corpus_dir + "/audio_data") + assert corpus_dir.is_dir(), f"No such directory: {corpus_dir}" + + spkwise_parent = corpus_dir / "speaker-wise-test" + spks = os.listdir(spkwise_parent) + + bookwise_parent = corpus_dir / "book-wise-test" + books = os.listdir(bookwise_parent) + + spks_parts = ( + set(spks) + ) + books_parts = ( + set(books) + ) + + manifests = {} + + for s_or_b, dataset_parts in zip(["speaker-wise-test", "book-wise-test"], [spks_parts, books_parts]): + if output_dir is not None: + output_dir = Path(output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + # Maybe the manifests already exist: we can read them and save a bit of preparation time. + manifests = read_manifests_if_cached( + dataset_parts=dataset_parts, output_dir=output_dir + ) + + with ThreadPoolExecutor(num_jobs) as ex: + for part in tqdm(dataset_parts, desc="Dataset parts"): + logging.info(f"Processing UserLibri subset: {part}") + if manifests_exist(part=part, output_dir=output_dir): + logging.info(f"UserLibri subset: {part} already prepared - skipping.") + continue + recordings = [] + supervisions = [] + part_path = corpus_dir / s_or_b / part + futures = [] + for trans_path in tqdm( + part_path.rglob("*.trans.txt"), desc="Distributing tasks", leave=False + ): + alignments = {} + with open(trans_path) as f: + for line in f: + futures.append( + ex.submit(parse_utterance, trans_path.parent, line, alignments) + ) + + for future in tqdm(futures, desc="Processing", leave=False): + result = future.result() + if result is None: + continue + recording, segment = result + recordings.append(recording) + supervisions.append(segment) + + recording_set = RecordingSet.from_recordings(recordings) + supervision_set = SupervisionSet.from_segments(supervisions) + + validate_recordings_and_supervisions(recording_set, supervision_set) + + if output_dir is not None: + supervision_set.to_file( + output_dir / f"userlibri_supervisions_{part}.jsonl.gz" + ) + recording_set.to_file( + output_dir / f"userlibri_recordings_{part}.jsonl.gz" + ) + + manifests[part] = { + "recordings": recording_set, + "supervisions": supervision_set, + } + + return manifests + + +def parse_utterance( + dataset_split_path: Path, + line: str, + alignments: Dict[str, List[AlignmentItem]], +) -> Optional[Tuple[Recording, SupervisionSegment]]: + recording_id, text = line.strip().split(maxsplit=1) + # Create the Recording first + audio_path = ( + dataset_split_path + / f"{recording_id}.flac" + ) + if not audio_path.is_file(): + logging.warning(f"No such file: {audio_path}") + return None + recording = Recording.from_file(audio_path, recording_id=recording_id) + # Then, create the corresponding supervisions + segment = SupervisionSegment( + id=recording_id, + recording_id=recording_id, + start=0.0, + duration=recording.duration, + channel=0, + language="English", + speaker=re.sub(r"-.*", r"", recording.id), + text=text.strip(), + alignment={"word": alignments[recording_id]} + if recording_id in alignments + else None, + ) + return recording, segment + + +def parse_alignments(ali_path: Pathlike) -> Dict[str, List[AlignmentItem]]: + alignments = {} + for line in Path(ali_path).read_text().splitlines(): + utt_id, words, timestamps = line.split() + words = words.replace('"', "").split(",") + timestamps = [0.0] + list(map(float, timestamps.replace('"', "").split(","))) + alignments[utt_id] = [ + AlignmentItem( + symbol=word, start=start, duration=round(end - start, ndigits=8) + ) + for word, start, end in zip(words, timestamps, timestamps[1:]) + ] + return alignments + +def main(): + nj = 15 + output_dir = "data/manifests" + corpus_dir = "/DB/UserLibri" + + prepare_userlibri(corpus_dir, "auto", output_dir, nj) + +main() \ No newline at end of file diff --git a/egs/LJSpeech/ASR/local/preprocess_gigaspeech.py b/egs/LJSpeech/ASR/local/preprocess_gigaspeech.py new file mode 100755 index 000000000..8aa5e461d --- /dev/null +++ b/egs/LJSpeech/ASR/local/preprocess_gigaspeech.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python3 +# Copyright 2021 Johns Hopkins University (Piotr Żelasko) +# Copyright 2021 Xiaomi Corp. (Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +import re +from pathlib import Path + +from lhotse import CutSet, SupervisionSegment +from lhotse.recipes.utils import read_manifests_if_cached + +# Similar text filtering and normalization procedure as in: +# https://github.com/SpeechColab/GigaSpeech/blob/main/toolkits/kaldi/gigaspeech_data_prep.sh + + +def normalize_text( + utt: str, + punct_pattern=re.compile(r"<(COMMA|PERIOD|QUESTIONMARK|EXCLAMATIONPOINT)>"), + whitespace_pattern=re.compile(r"\s\s+"), +) -> str: + return whitespace_pattern.sub(" ", punct_pattern.sub("", utt)) + + +def has_no_oov( + sup: SupervisionSegment, + oov_pattern=re.compile(r"<(SIL|MUSIC|NOISE|OTHER)>"), +) -> bool: + return oov_pattern.search(sup.text) is None + + +def preprocess_giga_speech(): + src_dir = Path("data/manifests") + output_dir = Path("data/fbank") + output_dir.mkdir(exist_ok=True) + + dataset_parts = ( + "DEV", + "TEST", + "XS", + "S", + "M", + "L", + "XL", + ) + + logging.info("Loading manifest (may take 4 minutes)") + prefix = "gigaspeech" + suffix = "jsonl.gz" + manifests = read_manifests_if_cached( + dataset_parts=dataset_parts, + output_dir=src_dir, + prefix=prefix, + suffix=suffix, + ) + assert manifests is not None + + assert len(manifests) == len(dataset_parts), ( + len(manifests), + len(dataset_parts), + list(manifests.keys()), + dataset_parts, + ) + + for partition, m in manifests.items(): + logging.info(f"Processing {partition}") + raw_cuts_path = output_dir / f"{prefix}_cuts_{partition}_raw.{suffix}" + if raw_cuts_path.is_file(): + logging.info(f"{partition} already exists - skipping") + continue + + # Note this step makes the recipe different than LibriSpeech: + # We must filter out some utterances and remove punctuation + # to be consistent with Kaldi. + logging.info("Filtering OOV utterances from supervisions") + m["supervisions"] = m["supervisions"].filter(has_no_oov) + logging.info(f"Normalizing text in {partition}") + for sup in m["supervisions"]: + sup.text = normalize_text(sup.text) + sup.custom = {"origin": "giga"} + + # Create long-recording cut manifests. + logging.info(f"Processing {partition}") + cut_set = CutSet.from_manifests( + recordings=m["recordings"], + supervisions=m["supervisions"], + ) + # Run data augmentation that needs to be done in the + # time domain. + # if partition not in ["DEV", "TEST"]: + # logging.info( + # f"Speed perturb for {partition} with factors 0.9 and 1.1 " + # "(Perturbing may take 8 minutes and saving may" + # " take 20 minutes)" + # ) + # cut_set = ( + # cut_set + # + cut_set.perturb_speed(0.9) + # + cut_set.perturb_speed(1.1) + # ) + # + # Note: No need to perturb the training subset as not all of the + # data is going to be used in the training. + logging.info(f"Saving to {raw_cuts_path}") + cut_set.to_file(raw_cuts_path) + + +def main(): + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + logging.basicConfig(format=formatter, level=logging.INFO) + + preprocess_giga_speech() + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/sort_lm_training_data.py b/egs/LJSpeech/ASR/local/sort_lm_training_data.py new file mode 100755 index 000000000..bed3856e4 --- /dev/null +++ b/egs/LJSpeech/ASR/local/sort_lm_training_data.py @@ -0,0 +1,141 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2021 Xiaomi Corporation (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This file takes as input the filename of LM training data +generated by ./local/prepare_lm_training_data.py and sorts +it by sentence length. + +Sentence length equals to the number of BPE tokens in a sentence. +""" + +import argparse +import logging +from pathlib import Path + +import k2 +import numpy as np +import torch + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--in-lm-data", + type=str, + help="Input LM training data, e.g., data/bpe_500/lm_data.pt", + ) + + parser.add_argument( + "--out-lm-data", + type=str, + help="Input LM training data, e.g., data/bpe_500/sorted_lm_data.pt", + ) + + parser.add_argument( + "--out-statistics", + type=str, + help="Statistics about LM training data., data/bpe_500/statistics.txt", + ) + + return parser.parse_args() + + +def main(): + args = get_args() + in_lm_data = Path(args.in_lm_data) + out_lm_data = Path(args.out_lm_data) + assert in_lm_data.is_file(), f"{in_lm_data}" + if out_lm_data.is_file(): + logging.warning(f"{out_lm_data} exists - skipping") + return + data = torch.load(in_lm_data) + words2bpe = data["words"] + sentences = data["sentences"] + sentence_lengths = data["sentence_lengths"] + + num_sentences = sentences.dim0 + assert num_sentences == sentence_lengths.numel(), ( + num_sentences, + sentence_lengths.numel(), + ) + + indices = torch.argsort(sentence_lengths, descending=True) + + sorted_sentences = sentences[indices.to(torch.int32)] + sorted_sentence_lengths = sentence_lengths[indices] + + # Check that sentences are ordered by length + assert num_sentences == sorted_sentences.dim0, ( + num_sentences, + sorted_sentences.dim0, + ) + + cur = None + for i in range(num_sentences): + word_ids = sorted_sentences[i] + token_ids = words2bpe[word_ids] + if isinstance(token_ids, k2.RaggedTensor): + token_ids = token_ids.values + if cur is not None: + assert cur >= token_ids.numel(), (cur, token_ids.numel()) + + cur = token_ids.numel() + assert cur == sorted_sentence_lengths[i] + + data["sentences"] = sorted_sentences + data["sentence_lengths"] = sorted_sentence_lengths + torch.save(data, args.out_lm_data) + logging.info(f"Saved to {args.out_lm_data}") + + statistics = Path(args.out_statistics) + + # Write statistics + num_words = sorted_sentences.numel() + num_tokens = sentence_lengths.sum().item() + max_sentence_length = sentence_lengths[indices[0]] + min_sentence_length = sentence_lengths[indices[-1]] + + step = 10 + hist, bins = np.histogram( + sentence_lengths.numpy(), + bins=np.arange(1, max_sentence_length + step, step), + ) + + histogram = np.stack((bins[:-1], hist)).transpose() + + with open(statistics, "w") as f: + f.write(f"num_sentences: {num_sentences}\n") + f.write(f"num_words: {num_words}\n") + f.write(f"num_tokens: {num_tokens}\n") + f.write(f"max_sentence_length: {max_sentence_length}\n") + f.write(f"min_sentence_length: {min_sentence_length}\n") + f.write("histogram:\n") + f.write(" bin count percent\n") + for row in histogram: + f.write( + f"{int(row[0]):>5} {int(row[1]):>5} " + f"{100.*row[1]/num_sentences:.3f}%\n" + ) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/local/test_load_XL_split.py b/egs/LJSpeech/ASR/local/test_load_XL_split.py new file mode 100755 index 000000000..3982a7157 --- /dev/null +++ b/egs/LJSpeech/ASR/local/test_load_XL_split.py @@ -0,0 +1,51 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This file can be used to check if any split is corrupted. +""" + +import glob +import re + +import lhotse + + +def main(): + d = "data/fbank/XL_split_2000" + filenames = list(glob.glob(f"{d}/cuts_XL.*.jsonl.gz")) + + pattern = re.compile(r"cuts_XL.([0-9]+).jsonl.gz") + + idx_filenames = [(int(pattern.search(c).group(1)), c) for c in filenames] + + idx_filenames = sorted(idx_filenames, key=lambda x: x[0]) + + print(f"Loading {len(idx_filenames)} splits") + + s = 0 + for i, f in idx_filenames: + cuts = lhotse.load_manifest_lazy(f) + print(i, "filename", f) + for i, c in enumerate(cuts): + s += c.features.load().shape[0] + if i > 5: + break + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/test_prepare_lang.py b/egs/LJSpeech/ASR/local/test_prepare_lang.py new file mode 100755 index 000000000..74e025ad7 --- /dev/null +++ b/egs/LJSpeech/ASR/local/test_prepare_lang.py @@ -0,0 +1,104 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# Copyright (c) 2021 Xiaomi Corporation (authors: Fangjun Kuang) + +import os +import tempfile + +import k2 +from prepare_lang import ( + add_disambig_symbols, + generate_id_map, + get_phones, + get_words, + lexicon_to_fst, + read_lexicon, + write_lexicon, + write_mapping, +) + + +def generate_lexicon_file() -> str: + fd, filename = tempfile.mkstemp() + os.close(fd) + s = """ + !SIL SIL + SPN + SPN + f f + a a + foo f o o + bar b a r + bark b a r k + food f o o d + food2 f o o d + fo f o + """.strip() + with open(filename, "w") as f: + f.write(s) + return filename + + +def test_read_lexicon(filename: str): + lexicon = read_lexicon(filename) + phones = get_phones(lexicon) + words = get_words(lexicon) + print(lexicon) + print(phones) + print(words) + lexicon_disambig, max_disambig = add_disambig_symbols(lexicon) + print(lexicon_disambig) + print("max disambig:", f"#{max_disambig}") + + phones = ["", "SIL", "SPN"] + phones + for i in range(max_disambig + 1): + phones.append(f"#{i}") + words = [""] + words + + phone2id = generate_id_map(phones) + word2id = generate_id_map(words) + + print(phone2id) + print(word2id) + + write_mapping("phones.txt", phone2id) + write_mapping("words.txt", word2id) + + write_lexicon("a.txt", lexicon) + write_lexicon("a_disambig.txt", lexicon_disambig) + + fsa = lexicon_to_fst(lexicon, phone2id=phone2id, word2id=word2id) + fsa.labels_sym = k2.SymbolTable.from_file("phones.txt") + fsa.aux_labels_sym = k2.SymbolTable.from_file("words.txt") + fsa.draw("L.pdf", title="L") + + fsa_disambig = lexicon_to_fst(lexicon_disambig, phone2id=phone2id, word2id=word2id) + fsa_disambig.labels_sym = k2.SymbolTable.from_file("phones.txt") + fsa_disambig.aux_labels_sym = k2.SymbolTable.from_file("words.txt") + fsa_disambig.draw("L_disambig.pdf", title="L_disambig") + + +def main(): + filename = generate_lexicon_file() + test_read_lexicon(filename) + os.remove(filename) + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/train_bpe_model.py b/egs/LJSpeech/ASR/local/train_bpe_model.py new file mode 100755 index 000000000..42aba9572 --- /dev/null +++ b/egs/LJSpeech/ASR/local/train_bpe_model.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# You can install sentencepiece via: +# +# pip install sentencepiece +# +# Due to an issue reported in +# https://github.com/google/sentencepiece/pull/642#issuecomment-857972030 +# +# Please install a version >=0.1.96 + +import argparse +import shutil +from pathlib import Path + +import sentencepiece as spm + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--lang-dir", + type=str, + help="""Input and output directory. + The generated bpe.model is saved to this directory. + """, + ) + + parser.add_argument( + "--transcript", + type=str, + help="Training transcript.", + ) + + parser.add_argument( + "--vocab-size", + type=int, + help="Vocabulary size for BPE training", + ) + + return parser.parse_args() + + +def main(): + args = get_args() + vocab_size = args.vocab_size + lang_dir = Path(args.lang_dir) + + model_type = "unigram" + + model_prefix = f"{lang_dir}/{model_type}_{vocab_size}" + train_text = args.transcript + character_coverage = 1.0 + input_sentence_size = 100000000 + + user_defined_symbols = ["", ""] + unk_id = len(user_defined_symbols) + # Note: unk_id is fixed to 2. + # If you change it, you should also change other + # places that are using it. + + model_file = Path(model_prefix + ".model") + if not model_file.is_file(): + spm.SentencePieceTrainer.train( + input=train_text, + vocab_size=vocab_size, + model_type=model_type, + model_prefix=model_prefix, + input_sentence_size=input_sentence_size, + character_coverage=character_coverage, + user_defined_symbols=user_defined_symbols, + unk_id=unk_id, + bos_id=-1, + eos_id=-1, + ) + + shutil.copyfile(model_file, f"{lang_dir}/bpe.model") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/validate_bpe_lexicon.py b/egs/LJSpeech/ASR/local/validate_bpe_lexicon.py new file mode 100755 index 000000000..c542f2fab --- /dev/null +++ b/egs/LJSpeech/ASR/local/validate_bpe_lexicon.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script checks that there are no OOV tokens in the BPE-based lexicon. + +Usage example: + + python3 ./local/validate_bpe_lexicon.py \ + --lexicon /path/to/lexicon.txt \ + --bpe-model /path/to/bpe.model +""" + +import argparse +from pathlib import Path +from typing import List, Tuple + +import sentencepiece as spm + +from icefall.lexicon import read_lexicon + +# Map word to word pieces +Lexicon = List[Tuple[str, List[str]]] + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "--lexicon", + required=True, + type=Path, + help="Path to lexicon.txt", + ) + + parser.add_argument( + "--bpe-model", + required=True, + type=Path, + help="Path to bpe.model", + ) + + return parser.parse_args() + + +def main(): + args = get_args() + assert args.lexicon.is_file(), args.lexicon + assert args.bpe_model.is_file(), args.bpe_model + + lexicon = read_lexicon(args.lexicon) + + sp = spm.SentencePieceProcessor() + sp.load(str(args.bpe_model)) + + word_pieces = set(sp.id_to_piece(list(range(sp.vocab_size())))) + for word, pieces in lexicon: + for p in pieces: + if p not in word_pieces: + raise ValueError(f"The word {word} contains an OOV token {p}") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/local/validate_manifest.py b/egs/LJSpeech/ASR/local/validate_manifest.py new file mode 100755 index 000000000..61d4f8113 --- /dev/null +++ b/egs/LJSpeech/ASR/local/validate_manifest.py @@ -0,0 +1,93 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script checks the following assumptions of the generated manifest: + +- Single supervision per cut +- Supervision time bounds are within cut time bounds + +We will add more checks later if needed. + +Usage example: + + python3 ./local/validate_manifest.py \ + ./data/fbank/librispeech_cuts_train-clean-100.jsonl.gz + +""" + +import argparse +import logging +from pathlib import Path + +from lhotse import CutSet, load_manifest_lazy +from lhotse.cut import Cut + + +def get_args(): + parser = argparse.ArgumentParser() + + parser.add_argument( + "manifest", + type=Path, + help="Path to the manifest file", + ) + + return parser.parse_args() + + +def validate_one_supervision_per_cut(c: Cut): + if len(c.supervisions) != 1: + raise ValueError(f"{c.id} has {len(c.supervisions)} supervisions") + + +def validate_supervision_and_cut_time_bounds(c: Cut): + s = c.supervisions[0] + if s.start < c.start: + raise ValueError( + f"{c.id}: Supervision start time {s.start} is less " + f"than cut start time {c.start}" + ) + + if s.end > c.end: + raise ValueError( + f"{c.id}: Supervision end time {s.end} is larger " + f"than cut end time {c.end}" + ) + + +def main(): + args = get_args() + + manifest = args.manifest + logging.info(f"Validating {manifest}") + + assert manifest.is_file(), f"{manifest} does not exist" + cut_set = load_manifest_lazy(manifest) + + assert isinstance(cut_set, CutSet) + + for c in cut_set: + validate_one_supervision_per_cut(c) + validate_supervision_and_cut_time_bounds(c) + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + + main() diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_0.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_0.png new file mode 100755 index 0000000000000000000000000000000000000000..34fe70499611b47dda3cffe6f9f9ff7419653b6d GIT binary patch literal 30194 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

?sFYWUg7kdNggMa^h?3b-LtW_y#=%lEVBmF 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_1.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_1.png new file mode 100755 index 0000000000000000000000000000000000000000..789f024e0c6c29fc4d572a3f79b67e6ae8af680b GIT binary patch literal 27351 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

  • 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_3.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_3.png new file mode 100755 index 0000000000000000000000000000000000000000..f1ed52faa9092b444476ef3371c8ea4d50f9be12 GIT binary patch literal 25936 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_5.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_5.png new file mode 100755 index 0000000000000000000000000000000000000000..a6255c0e7ee7175d035bbb516a751447d49eeb8a GIT binary patch literal 22310 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_6.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_6.png new file mode 100755 index 0000000000000000000000000000000000000000..3fd196855e78648def9002de9db752f71cb85f7a GIT binary patch literal 22520 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 P6q!?UCzDQGx%qzq$&Q1t literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_7.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_7.png new file mode 100755 index 0000000000000000000000000000000000000000..87f603652cc3f39beef2128a5d9882b88ddc2334 GIT binary patch literal 21110 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 HxcT1zfXmIH literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_8.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_8.png new file mode 100755 index 0000000000000000000000000000000000000000..1777839efdb459719e06f9c69a6a0e9ab6b0a65d GIT binary patch literal 19350 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_9.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_org/plot_9.png new file mode 100755 index 0000000000000000000000000000000000000000..ebaca1295419ffeeeb35a25d9db0b5462765cdfa GIT binary patch literal 17990 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 Is9|^J@27+kf&c&j literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_1.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_1.png new file mode 100755 index 0000000000000000000000000000000000000000..87213e1fccd868a29308d214c29dab315f42e5aa GIT binary patch literal 28040 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_2.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_2.png new file mode 100755 index 0000000000000000000000000000000000000000..ac8a134d5fb9266494a1df5475274022dd2f9e3b GIT binary patch literal 28497 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 DVQoFy literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_3.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_3.png new file mode 100755 index 0000000000000000000000000000000000000000..870244e4835018cafe13c8d21985a4861f853723 GIT binary patch literal 25930 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%0DrG|uj+yQ2Kn&?&E-Bh<5?P0|RGkDD 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 CuhKRE literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_4.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_4.png new file mode 100755 index 0000000000000000000000000000000000000000..70eccfac057c9978cd0c0b17588efd62eb01ed5c GIT binary patch literal 23806 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%0A95J}sFqPc-Y^KfMafY98i32Vl5r%C58gXNF+ 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 T)T_w9Q)HzTeos1n;rjmpQ;@V0 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_7.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_7.png new file mode 100755 index 0000000000000000000000000000000000000000..a5985802a44a800ffdbaf6bed021baaac27c6aa5 GIT binary patch literal 21197 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%0A_w@p2P~J;S-L$XhsoUr2+2 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

    2e<@Vn88q(l+z8 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 E0PP|V@Bjb+ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_9.png b/egs/LJSpeech/ASR/outputs/bpe_histogram_pseudo/plot_9.png new file mode 100755 index 0000000000000000000000000000000000000000..ae08756b22f4445bf5adb6c126452901ceb91017 GIT binary patch literal 17955 zcmd6PXINFsmhDDNM^OwIkYoTAQ9wZu5Ks{iL~;;N5EYOhIY{Ohz<{ENB1t4j4$20} zpmJ0s=O`eOGmxJUrL`{sC@tD?^^LiQEa?I(~zr?N1%MRL+^P9{Mk)i_*x2$74ayqTmHLLI$S5!-m6W89opF@l9ZQfT+HB@+ZNLyVkPQ4~t zDcojZ*4Fcg_B&Ih{@R4jwzg2mi9VwbH&-zBZQisgtTELj&Zf80xGpi+Zm_X))MX`w zQlNluHfzpQlklLcc*G)-V%aWrG0W~;bEa+8rw7|gj_i^0Di>^Z4(}}TGr>)Tt-HK% zQ+;j)85yOrm!h^4eQMWRb1$yl#$A1L#ae!|Z^x)|s;a(@lLIlO!6IBojwt7Q(${_e zaBHI3zSUpx?O#lWTXKvm!tN|vwv2&^DNtMiqdCF)hS5Wh!G*XD$e=v8fgp_)F%#y?YCbiq8J_+i#=e<2Dm2v=qu3#ledH7yE>%ps$E`tHQ9iWdL93e8Ct({Tca&k85 z*h>rocZ4aCk&(vJBW-=YZs@!Zv=A_a`qoN2lA!fX$prG)KQ$=cMXvoUmzAVMdg{9Zw z#*Kpf{PtSA?G(z+5QfaHC-Qk27#Jdw@)orM1zSjohBD7$#%jK>xy3)&#?zP4{jz9jA0qv|@-*L?1Rg2TGDAfydR-2$5wQ-Nswa;FRC=HQfa|3)UmM?#yKRY=XM>Q-n z{+4b@BBtp1p;Wzm4?0>2%*}nDQ{wcOls+FvZf4LerbUTx-+k+UT+#kFC0F15Jp`jL z2&76U71_=Flo1_^+3Rp?>j}L0uhr@QO;7dT!yGC-%f7$6-ZWmY$2(f;;f~}6Q>|3v zXZfRsAuj3yfhBE~IZpPTM=UKZcko_vKQ1b&h7_`H2mcuv8JYF^lf$h^r~|Pm6aX9* zKpK42`ZJ@Q#?{eJWc|1k3`zow7G@{7TXhjE^Xm92l!=-!$+dTG-@d9D=`=Mo+nscy4KV(Y%D|hhZPKRY2KYUmT6-FgNE0tm6#!ya`$ZH>O{}v!( zpQvdtH#ykXnwPh7-Hr%d*BQy*fB$_A9bGjN_r<&_EZ$7?>602eb39oc&(MpGE56e| ze*AdH;9ziXGU|*;zQ?-89H+FQ%zkc}N?@j%aB2E;!NO`sjjPMUBp=wIT9pI}DqycG zKizwdfsrw$w<;>|q$PGuUrSCFW{X3{acN;H6=kp_;OJTFu42nJR;2xoq*Havdb|#4 zzl%1mi8Zc&6RP9Txg}WKt>wa2R@THdTMoQvQ}D^O8$2K=C^+~nqv~K)jLN=e2h<7= zZbrHfm-g-(&RY^FvKefw(aXZ7UPDh`maOwnNnVnhVmI7!F~n^#)PUR2cYUG(x^_TT5fSTpSGc$_MS|;o%wk(cb26h%eHNXlT722lj?GEUJ{IRgF%H? zYo-)4D+DX5s;b%mfEDW*W+*rMsyQ(`I;aqS>@#z7Tw-E6C~yY;n0~IKN7V)!Q~8Qa zQA_F)FXAuX(v{XR38;R$zoq1eo}S+Nrp9#3@cD&>F-JeF`KW5>T6aX}eJ?N7t5+k~ zIS(9=ee&dqu;q{2K0ZGD#?|`=>)%Rz@n+LFfBwbdPj9zqogBwCt5-i}pP8A7K}b5b z-Px96Qpde8KUTJ8%^KxA*9FyZsdX}yPZh*aG-OE)5Vq-g40Lkz%4a&y{4@komB%_J z{_BnWEJ9YNH}91ze<|vOI^{cD_8TIfYfC02-LQ-`)wo6$QS8IMV%4fRK#v`QWytl6=F0qjgBe(jhPc!n`Pp8s6Z(*;@>{yw2O_HuS!Lvnv zJatUw*=?~U_}EUr3tK5}bAy7ZrVYwIDb6!iwtdwyWJ-WIQ>;2=HLkD3$1*ySDc81p zD66P&$Y2JQy;()sWyHk9gzbld;smgV-7i>aQnLFKv&KKHV(WRplUt6WSpx(uqYT6f z$ldjiuM?l`*)!OjrE&7)Nk@Q7wIm%;nacZHxNOQqr_zo2$h5!Sl&GcjVCx}fDVnBp z{zoJ^WYbN5y}{v^N~w)ek?t-FDYIC5#-&mH>Ll$y#&~0X+VXWo#MN|hly_iTs~Q8` z?(x|SF@Y?Dk{x5SXae?;U2G>Sdmo9QqrX3}iOj=$Nh=l#EiEmFj6mQy+Ewdq&Z{S1 zm8nU*sEt@C8YFl5zB^;R`((zFvx`fr)0CN7;sv3)XV{Y`S}YqzzC}mx*GM2`(V^h= z81?p@JDdj(%DsL2)}ZKBbGF0Sg$z!-_ieY|iuV|T#&FKmOOi=#is)Z#G7?rSp+ zQcC^#q}OgeSPob;7^{Z6@1##RWqlu~kz`dUh|lbPuTNt!^8EurTyg5F@XGNY$rA51 z5-(IBhEt8I_8v8FxxjJuxy^YomsuN)>tsk7-;*in*fqb_nBY-QeY(}?X7?W_i$C4A z>Te_0cOi|pB7b`PiZ?*F4Xk|_J2g%K+0Olfg(f9sYKfXg_HPl_`?wsSIODH%JU&c2U9F;E$$AO5IK^H@d+ElFbkw@wI&z)+(+hU1 z(>0QG)~Bt@FV}TjcrEHQd2OKn?LT6;yr`(C?OkAC;0^)P=&2Sb1=Kd{zgCrdtvjHd zeN8N$@v$eKWpMZI-8R!BdNQN}RmZAvX_#XQe?9+pCZ;&og;^tH=UBzio9vuOn!zIW zwaC zbZm@o*yLOK+f%1bZC_4u^j%CJFY+)}q1eLhs}IMsfPlV#gg@Jj?=-kp&agD-@UV!> zY>JfE_E7GNnSX^o2SP-XYQTvyo@!F3j>lC?GrKr5J9_}H@EMlc{O#fUX?xn+!*iUb zj4=vftB$+uU(3oA&~w?=?8QTWUzTA;^9{>~v>A_Ctj{B6 zp|Hn~H(rmMA>HD zkl~Iu75V=I$jE6!W6|{Px?{%^X;K9->8N0ZdKr4#N%e}=NJ>1SUl@&MV|HPxm8I~H zPoIq5yVH&}`j{MX8NV($p~HsrbG3EK@sBRGq`e35>-PoY%N4=h0(O4|YSlIV>h zffurz-7t<(ZB+1WJUXh#mkgUW`SgyWpXx{Ttq2mbPOc&JWmtCy=)W^>Om`TQiMrQ?7g*B71j-5&~~M9BB6DT`6s6E()U(PB9eQaU<1U7x;u={B(6h&*4m zC5Cdo{vjiu6ey9dPBaHAE^;7F=`J`PNYCyX96Tg*|K2^NiN2bWxht11S10SArOKI_ z#^<*u>gFY;rym>p+0xR2k67-%k{7H(zU0QAbime00D=y`f!U!>{k)uy5ob~ zO-gIz8Fr{qb22svaH7Z>k)duxDb(KHzADv>>RP7V3K_y|I}3X@)Zgh|j$75Gi< z?PW=-T;pJUQGFV!zoIH2+Y4Xch=PJMl2TH#nTJRAfSuYWA4DQ!q%D5}sNfnvzp%x3 z_m>V`j3CtVnK=i#yGbhPzq3uJ9Hh=TKnmCX{b#TtRUYm*$}XcIHWNV@rjxf;_LhfA ztXa3N#*2}UftlH~_DcO5Jwh@?o(qiJBmIc9IE_?8ZxAV?bDY=|7BQ#nSKk1M*7q%g z>d?emNEm|^Yq$116l^I+S2cmKKY$W|ijpK?TK@_=Eznyt<=PY6q5AdNZ5bIEG4{hP zvmH+riaW7Tvx{@XN3RxaK!ue8>Znb(Y-jFTlimH&Ddon`%Q?tUj{ON~s(G$1*zdCE z0tHGu4Ka+J!wh{6ln26HG|MTkMl2)gca9Nw`06~TjVH+=W?S|+2TQEoiFN)P=`Had z@1OZTlGtCq>|f`<@4cd-ocR5UPxrj!Ki&0D;$a-apg7!Lbh$%+$Q?oZ|De#9pTPTn z>*mRz-L*e6yGd^Tm#+KovGxD-RexS0%V2{XePWU9;O9k;6#D$VkDfgFYQ-=1{~DRh z7ooQFLWG}Iyxn1#zURzVUFKx~QU6Xs5W`b4ENhrZd)i~YsxIu$>;EhD;6E78fA5k% z>G@abf6qJq3P)+oc4Cl^*WMOkkR&%wK9MeADarP0b~&wRED*RL5!U;mJ@zk3x{wjJ zOTwdPvdLT{!>Y47%ijFcAAcN+Z~x=o=Dr4MRN?bOalq2ZuS%J&3z-uBq-O?`Haaq* znBzE+a_Pg(`Fc?V({YWCWv|$e8daWlTbS^3nCXoQDc1l0N;h}*yCRS~?(A+@_2%@w zO{0^Or50|dPTgFbYh5xXRPy)VSFy_gp80`Fwi~DqMM>^QnXLmC8H@c9gQRZUko>yE zZOMhO$pO52H_2W{HZQ2F(*UG-N;*so+_h4g%?0__-MLu3TV?0mz55h8UKRW8ed0xtL+9U|U=lF>RgZw}Z3pU=wsBuj1QAR|2~OhJ@kl%Z zc)#cD$n+w&#pkT%k_QUe_wMZj4XRmt{l_2oMn^}F@Ssh~XugP%`*B%$y0ba<>>6`K zZbfe)Lh3C5sfzy*{WWh4DqkGFLXumHyqp|6kfi&msDe~Vqy{LYqu0t$xXu6c%+ARn zssO5nh%fT?;W;`-Cnv-0TTDsDS5PQ3m54+e4BqK)HHn_|_J9&E2=w?j% CiW$kz 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/phone_histogram_org/plot.png b/egs/LJSpeech/ASR/outputs/phone_histogram_org/plot.png new file mode 100755 index 0000000000000000000000000000000000000000..3caca4721fc3ab5341d8c353026da9bfe7320a89 GIT binary patch literal 18227 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 Syn>`lp-Rc0pdUN`%l`r5Aw(4b literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/phone_histogram_pseudo/plot.png b/egs/LJSpeech/ASR/outputs/phone_histogram_pseudo/plot.png new file mode 100755 index 0000000000000000000000000000000000000000..60ea80592fcb2246ddb64c2bcb0c842e16b4661c GIT binary patch literal 18293 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 SpW@mS>Ph7jsmCt<`ab|K{ILxH literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs/word_histogram_pseudo/plot.png b/egs/LJSpeech/ASR/outputs/word_histogram_pseudo/plot.png new file mode 100644 index 0000000000000000000000000000000000000000..586a7b210a3499d94f771733321574b65ac02336 GIT binary patch literal 17258 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/ctc_output.1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/ctc_output.1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..7acb89c8c0247878c8aa0c9dd898405d71059e11 GIT binary patch literal 10980 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2ab634f152da92ca98a26b835bf58f5d243188f0 GIT binary patch literal 9281 zcmeHscT`j9`tHVtV*w*NsFWzEs33@iUUa0$s4&<7X-Wh{2)zdgjz1db?-WtCEK+^*53R3zV~_F=Xu_U zUrdcRZ`ic~L6FTRXACYN$f|Gz5gAy&4n8^2)H@9SY5E#k`d;*K@(sA|?TDPe?(6C1 z;p^t&u-o6!+sDPj{g|?v@-d~|H+_9QeY8|m@c;P*We;y>m4?OgMYzcio@cCl5Jdbs z`YZBEKivgEEzxI&-dO~XE?Q!E3x(iiRHXMfAU(6 z-=+4WW6x=~w`*p7*8H`lD^=R?-ir%_tF0G*8N2fPix|@;6ZJj2Urk95s%*J(rt?pe zHAd0jmIO^hE6N+h6l+cd>C2Aw`jpKzjD^jYEHg)I6gc;ORifu0$nKqYmt+wnJZ2vv zf^3!l|Chh)!Nn(YB3ijCJPxe@-;)|J*KhvIFAwLuknqzF9j(eZ{RH#Nm$%=&>teT2 zB0S{-`kj&zEd~xjsCToh3#+qfvI%pl^FJYB>)sPMF(gLf$rmqP1SPLSG`7{%)tTGc zCh_!=I461;DOtW7!1b`FyCkMMDCFOdIae<)P7NvOFPXUY z7O4sb#0Agm!iH#MvW0!sC6$&TTQ% zVH!m5JU05AmuXw7c268DJ6Fas-L&J#ZZ)^gEea_i-rqmpEcGJ>LyuD-tAtLRWu^$1 zQsDLd&e)e07i-qm)~3FGU1Psi6iNEq93yFA!$5jlYwNbPYu7fVo28IQmif0XFHE#3 zND?ua{QP`#OUoU8etx35rf1KdJ+7`^SS*70s@duxoY_99mUJ^RC1gagxRyepki%A% z^SdaoULB~V)6>e!1o z#dP`-k2!z-d~r{EmbLh&CkP^wae%QpFHU@DE-9ct!Z{_hpss{uVY8Asv{bwT886n34h%GPA zGw10l#z8?r3v!8loPpq*lmrN}2~&1IQolh|(mf+^TpDF9#)? zq9a$Wt#P$a4ywBM7M&KXIf9&YZacX8Ta~1Jbd++*fdFE6o(l$}di~?yxEa*tjKKLC z1$jA#&ky(DWjVb*4OMp~?RH==QIaY#2QR*?+!trF_3qufs{YfR@%qHD`(MP7hh|V` zDrMh3a{siq4?IBaepgne6RTw9twCFbjBhI$CIAy@XaFJ}?)ZQ35}z6(jv%5w{5pL) zXZ>)~sJ2Q2XT5E#;y*?6|A6)XIk@o!&Q?F>I@LuAR(Qq@$+~F;1#10)Ll4w=)4j#V zs>xU^kPHfjB6hbcuH&t(3|9$3=F={&8<_1Y9g03yPg=Y2M`=%9qNb07fWMUO`Ss(g zjEpF|_rX=K%+nm^`rj9aqPL-xFW=HxS!l_2>&me#_I5n??D*@nfeQ-N%M$96EFer6RO|I^SJCtz=)W)Be_0>eIc= zQ6v&?wp68j;e|?7UjReq^5x4iY#Rj8x|&|Liff{V@7}h!xM*%|onQ^1iNeSmRld2L zAt&e1_U1CWE*rj~L2G-v(e>-sTie=X7CH|fKHSvX+dH}rY3%YXMlu1+BvNE#q}tT> z?c0m-aI+?gJyoqIDl#$^s;sc#_LpQ`ZJ-kG!pX_WPdd8DN#2yVNN4h2k<8NFid3Yx zkF0u^lXFx~Zr83|-I?mgj}I4IzH+5HMn=2a?H@oc4i)?J&p-G6eD-WlFRUU#Su%XJ zs8}@I-!j|5&^-%i3m%jD^5uRxxm*7Q-kz~8=adI%b0J~mwL+Yr1-Bm5Ut8wd@ivfE zr|!d1hmBC7^1YwL#nHk=Ry$0#zV@QY1XP+RByB?<0DNo&dk2gPH(n<$D{apol*A2I zMxZBp6OVs@La)ecC}h>mMtLXILYpr4( zmt<3OZ@Ih2?P*AyXco|D8zJMJp<2DDBeJYM1z8gVO z&LOLiy+;2QmzVT)1LdJShtV&;t9lMpjCbWaCk75iFgu7V9ltqRxu+=69ojRkny5q} z`Zp-C&aVAR9wNL-!uzIsmMD=}ZAzMjCmZK}jXS?0{85NuALKD}w@(cy5K(!qlfj~+epPmw{M>!Ob) zu%{zFek?GfSQoly6NLg2X@`dAwM)PYk=qr$dlC{7(%!yR1}JFxUO`a}&$SC0dCHve zAZoAMv|~$pqW8~b3(aR$17>@ zRe_cGV&X_+Ooh8*FF1@7BxkV3{*R#wMPoG^58nYgYmV5$qJ-(eru z<5)>?V}v!IwJCR8TqzwN*aAV{PTwvL;MDWlsx8QF)qjtRtrkLD%&@OY5lo~QG0H>J zoEwt8x?R$%qEyP`dy*ZkzC1gj2!(>xC9tErySt$QtIunwqMam1gga#~)G~^Z-dR;u z#Uu;4WF}U~#CkR8aw^S@WuEpp*C%SK5(RwAB2To18B*-tJG8zs&j#K7_hX8j*F8xn zo_bq~8j2qeUwvXN1r;`%lKa2tv|=eck>~QhP@`sgOE)%2sVND#WT6JYL((}p$caB7 zs{a|!$aA^a+R2qV^Qm+7rLBh z1;&%Kyu5rz)(7miR}a2WX4V|u@={#csv^Is_M)%%q#T%oRVb5x^6%Yw%*o*5#f!5A z@TX7yZqQ_!_pSEqEAfLZiP4zK%uNL!3krA;T{fsSV*n|%(@NeP75m`91H5cUW8;>m zPoIkFy8m|&nm4Y9v+*|J&&N^Sa{cR0bW}b+b;n_OVFI!W86dN4hpNaO+Wu|^2510K z;MTSE#EBD2JAiaP`PLxQu$si+$=CSy;Kj-9;4ka4>2;c3bym7K}kv{B5RN{(f`Wj+)<+Bk#7?+pi}2{R|VxQ z)zewJs~SyhME=z~{Y#JiKl0^sK$ajHY2YSg(3lBwjH-B5oWoG{13bH{G{ECrvX165 zdq&DwHt0sQjJ6tBnfc?;sc7Rs@qAVTZMfz!ZgH}W39vDCb#=7~o_K-UfnGh78~F?A z`VT-Y>Le2dOPvLHYa73|%Rz~|kmoDg(VET)S(;blU_-ur81JCiXId93*Xs-UU<4wu zf^YY;Z`3?00^0%MKvSxrYT&m4%lE;4i9Yq3OFN|Ca8WshMFSiRW@KapgUNR9D?zOb zbkttGJL@(_imYCTx<9eN=)Wq+N9!w4;{>dL8~*&8*W~MTqwk{8cdlO-s1+=l9k+pBxruv)%1w@FIUP?6{gZ7TY(b%6l{N5|Eu!G6NrgO49SqOi@&%c}&7KS*Hk>_p8rAdT73 zcATu(#Mu_$70Y+mPC?@LeD(fS2sdOrXAZzHP_bq=a?;`7<^ilchgvAy~q6HoE`4!Bbh;fHDopQohSJ;M@>0gb(hI#43t?#;PkLB!-^3 zzKwWnrlJZ zHdltqyyjCkM4*OdAP^hU`xsOr5lxg(>VSAPC^2)&1zbKv8J#75t{}Tc3DR4KrS~!t z@60IBa{}kyb5bFKW~2?D&k+e+Xfie~bngQ@^+#RsKX9V@-*DoTWtO5hb3zVde)a0) zU2>T>ET{eh`?txbRPlYhJr5zLqBZ_;8dnv$y*M8QIzR@^Psoo&kUYu_3P`1MkYJ$s z1)3*){dAvJ7Q}LZOxFu~)-d5X67K)l7ZKE?@J;w&vMo@tJ~=gogMcy{_=+5Q<^xzg$;|zRB4_m*A#UzTWeLDa(f+e=9ll)f9C05n#$fEtYWMFGQp7`wjV!Jh(Dri6` z%hKI2GtTm@mx+W`E24Q(dUEhB=;Zxnn$*=^pS4vr{?FMP^R+d$Km|TXB$UAeT>E+DH8&;1nmHK{|{>=Z>aZreiEV9S3i)-C4Gk2ztJglwzs(J2Zcl!sl?7e zy_GIcX5^-k^|Yoy?6B{ugzVupk;8l|hR%aWk0SNX6b;4DW3*?B$XU##7ORG07-MZz zF4~=-6XdNHG(Vh~mv?*$HqM`ZxbOy8j|RMuF*aa4M=YuyYj6%a{~G28?j;j1)m*jx zr$0lV$Qer^>d|wQtbzZ&KTq-C!5UC$aSvp)+0S#8uI2$i6zR#3*!1F*-!C+~L4003 zgVm+zX%P)>B&gxFl!Wf%I%{^{pO#{9jjmk2{8V?b^Zxf`bHz`Et?Ec~Mku)HJ%T5&)o%b*TxAbog&Nv}B>5b)aA7|PkS^td zO>+W`*TtUc`TnZbxlZTdM#ma-9$OEw#&XMEhHy$5br5Sj(~{_>5H?rF7?O5 zfTGZ?=Fz?`DE{2VsSal%OP%P`XocF@?UIttfLyv=;Mcp;FjV*g!=U6Os2qqByOMPY zIp9|JN0Hp>p8fsFkY!{7{u5w0Q2@Hq4RF&XiVg7$6z*ddD= z-cJ;+WC9f>9CJ2}brcE{n9VQF`tX2Cok7EP4UzSetzBW4(Bd@XJB0vqIVmIuI?M`; zDUCLe)O4Nbu<`lKLb(yklL#`n0h6oBJ=i-jZCwq;Xst=<1bQZTEWiM%0f3ZPN`y_! zE3PecX?dw6mlJ0fJn@h!w#4iye;E>(?=e#Qv^XCet{X@bbb%;SJ3~ls<>SNJQ^)+e zy}T{MVyqp|@X*lUiiJfSAOXtkEVi_kV`5Qha!35O=NVwCEL0i&CT~324ok&xzkSWV z{t3LW7}$JHg9mlRKd+#m`rFq}KCU2Bn59%+X$p4{kS3X+?hylzFgBw+l_*NTl-#YE_`n9Qa%&2E*i0g*>lbFIp8KdW-$aqy-LKOE!cjW;#w_ zLJ~vSUBx_9*n#T_nHEZL82}qw2tf2$st~{p4Mu%W^b8CtK?r%PJj7t)Z2hguSoPXo zsGoxw>)@la$`Kx6tb~-Msb)>hvGH^0u!6`5Afg@&6`bhQb1<*P6b22Dfzr@$@Hb=G z2sBa1w8|ZX3CK6aUp1!T!NZjjX3=Q3p$ev`qwVO>3#^$JOtY{HUJ8kxKcRZ9JKxpE z6?7UCC{UPU?*j{E0=Cda56%=aV!Vc`^Si>(P5Ijo5`#2-f!CJ=brspbf!k(_iEvW3 z5lhlj8^&yGZEX{H85We7$EI2bOZ=w%D^^Ma=43Hn%clPnTRh>oFy4eFK$hhpOEkfA z3^PG77~G{Qghkv!NIN^rf_!v%)48I${ZRT_RLZ$fuyDF*Fbsqu3~8i+`t1vfEvjdh zZv9+}j&soSWh}QBqAd#z9w9i4fV`?Qzr&8uNL!rk(}ouMkYGa%TN!M(_CRH#n*J{B zhZ%264!wnpxoEazYA`iQIr7b$H@yW`xlUEkm4}{OG>rf;4#K!gp}bS(Gpd&quVj*- zGL67ZqDDGpl9@+&>sgQQ%Gn2*@Q-K@!>ueYdND#dRl3lO8drFbNuk-<2tAGlgK{ZU zalr(^jK3=+OnTDwXEYQ060eGeo#^}s#MJ7vLut1dyE26eC#jE1@8__JSr=68%f z?1KOpolA0|pYC!_^1D*DG@8I@4!kzm|u9I9~T)tfhw&DZ`@-fpVJax|TF(I!@rM=kBhbtOZS5N+m7{^(_nK;sJh>w~MUsypO|+!b+AQp4 z&{fEjb&kq{oHgSwGx($GX%J+iMNdFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/ctc_output.1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..91cf93fb46db70c275a5d4d859ca3b216474851e GIT binary patch literal 10967 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 VD1-JVH(<^v&5L>$^3Gqq_ixDX;lls` literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f166fd49f0f99d477549e25837bd92a27a31e2d3 GIT binary patch literal 7752 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..413f76d751ffb1602f21544a31d821b03716ff6b GIT binary patch literal 8682 zcmeHMc{r4N-@m2O?hIuuQzT@WoXQ&NAa$HLjv`Viy#Kw|^_)M93*(;qcmKYh^%wP{h1te+ zGV2fo*?9Db$xjHf;v#|wb+1_szuDi|(Ffmj{Y~xst%>LS$!GjrkYi{3eLRW&o^HhUD${p*}!bC-JG3ncP!ozH&J zsu7#&>{ZlXK2FZZAM!M3J~a)oRnEx`Ht2tP>rGpn^4s{_b|H&P3~RB2BKbcGUvF3% znrXkkGWvV5c^Wppd^|OMZf4jlec~zvd85qXz_<7LE4L#Do&SFM z^D`*(pIuS!qOPvaWylgu;^ho7?%usym?Vs(Tve;>87*PQ9g0|OdgjcX!Ivw$MJCWU z1qB7U;)IbvEIwrP+4G5)>-9sVQ@=yP5rg3A$Vm3qg9ah9oW3Rm$;y26Naby9Ey;*! zy%RCI$fj}H3tcUR)*yqo646xqt#D8i6xy1us<-{N*JYCAQ$TswS@xbCq7GQI-97SDw{5vWmkrf zJA7Vkm=`_r0-bO?8xbyT@$=N!1|MBQ)C!7cN-Y+q2v~d#aGI&W=FJx`pi|W*k%~R+kT-+K+25_M$E>E=JDR)s}pGaIAK8 zxwIinBVe>`3z;28=CtN3&}NcMp~GW7zO9X3{&nXk=(Co?i7rZ&v?ugQU-*I1{KTQ%_XL8trdQ|+uR*GY|H9Dxhri`bHsV<3@3uku z+nwK=n-lo++53I-NXWv|(A2KtN8B8VP6Oxjcuz%9y6;l=>Pb84Lq`qTFu6^OI z$JyD0&o6(@cd1Q8A@oCvj^^xWd&|I5w#}1hTsW7S@ALU(D=jP}bWooiwcn$;I*B%Y ze-mC8ImmpQj5t;V`o6oRsqpymV`o5Nz9*|-2=*|?Enxw$#O_b{M1nH0BG*YCT&EnBvjnwTWI{EqlEgOK7f z1WECj?AdVI!~_WBhjc>&M%*^pUPdfc(LAyG^Q&u_k00-rmw#|9St3G2H15uwJCTvM z_PPC}hOf{;G26?GkGI7KDUQJ{qrcZ!DTGW~0Y&t^xj|T766BwLarylD^O3(Qm@&#O zjQC+UJj%->USJTH_zPA){`k$*U_*S16UAV0W<(NYYYLx9;pAKc1>P~a3sI0i*O0cY z(6zyPs%)dIR#Ds7hx_Jgj?ecI=h!CO^w&ELPyXN07|Lz$CZMkTk zq!GKr_^OGUn_CRl$WY6x&Ht@HRPKOO;kmkKnEAs;j~?YWVg*(?r^<^XY}O<1b-yZq z0-zQh5;ccnHAXxZYo4eU6(z33s87|;q%1EfaVQ|H^V3;I+XTG1cqW!|V6~{+Ryw~Q zmq{M)+C~pVE^bQD7J44Y?YX5%IDGuX2~(5m0+-qzl-swc+Eh!@=WE1go${ScD`uJ< z@_l<5Lv7DIOiX~1?kOZ~K;ElN_9%8|n#D5)>XI`H3cl60v9pr`%!7iq45VNMLuOW1 zRv2^{1qB7q`IEK1OT6)T7}50U@H@%LU@;ywtwOpTZ%7ISc2`}}3FikU+`Rcr2B)e@ zy?XVk)*uH+LXN`cqJM$aYoSwZS9IQr|H_E}>gagZg9p2UXTIDl2O3OoWC|hgF_ZEL zJ3cWnafnT)s5#LNFk+;|Zzx&D;V28WD2v^wzpYKgZ`JcxCI^8q>G{-vC>_REi2QTl zOY8WY_8)EA9~~X-M?eh(+?G!8^!d$_lIeT0?%mt@{rBJ3b9%sg*x^%z)HF2WGzkn7 zFE20eocs3`-90=qGcq#jbWyfMQF-#@Nk0OP&iC7}Rp)8lyfE@wG6-|=tIl#?E5uim z>AX&ql;5T3?%jknOyM1$D02Jg+*J`&DsZh&ktSBo*u1;FR|y}!&>y%sob~m2+83U? z&}@t#L*E2(#e7Vv|2L$^zkJD_@dg)oVCvmoUr-RnO2v%a@;ndv7OSf-$@VPyHX522L&ZWQi#pj)_Du zO$*~$=n@;!418Nok!zZ4ojMPxu0n!gS8!B=DhS;;KLU*^SDv9v(&p(6vl?Et$X4FH zI~v@uO)qG$=IN@7;QCR+k5UeoQvy{|HAV&XsiK`~&gLpli`JiK-a_(u}FYUwBt z0%i@8LIN6~QmF*6Fjfu@$-Lc3KnV|@Jc)&oPJg=m{x{=ZAUD(O{DrAOW;>C-P1J}# zaWpgc4?xc^0-%4wul(yGtgNmcTZ^MtH1WGCL(EK4_H06aA%b8kS*C5}&5g&eS}$Q@ zY-}8}Rrg!4QAxbhN5aCwHcRYUNHjw(+WbRVI|s~Z7!3Fpo&FA{TnOhKZVl3{)|Vjl zcl73Tu!_|-v2{5N#WArnxu0CHFNbUvcp@N51#^K^ea?3UF z6v512v&*)*j?xrf2}M@HEH36Z<7R9 z_xM^c*sA`+oK-1nMK*1X1SvHGC}wj(Ut9ADOt(%3a5&-p-9u00C+GHSYnzcsBs7H% z3)H2MyW;&d(p92gE{VuRHf7r~#VrqD?%%(!)S34u9VK_~7DDP{D%Mm1=Ntz8-lwHi zEJO74jDe_{;y2bpn|&78eMzK;X|&|)7}S3=tAh;s zHJaz%-Lk=U&yR}e?cTlHLT~(q2sVZ{R*nM@NW!875p&j%{GoL4ya1-L1vQTf@@RHh zoF3K$=P#x0?Wks7uoJ{^D-aw8qv_RFBy}Lr2Tk54)wcA-CN!MpoP4(X>IP}CjT<*& zFpZTVb3*{bEQ3wR#aZYPbb==PTIm#un%&dwGBPsGeXoDb_wFp~5HbETGLrdpf~<64 zc{qJZB~H#jh9YR8bbbjyM}e|DM`8bJ4y*YQXcmJ3+ZzY`Q4-V%rNv3FaaLiLKyoGG zBk`6xhd@oR_*ZB2Km2|F9HI%l9k;b* zzWjMTp*B%n)44kGmX5D8r@bWa_du%64kdL2k37l0Fw%@lYA@7XG0Tg2%U`;03M2kG zpsh7jNoI`n-V8`kS4FXMa2YC$K~3}))wYi1&)2YVM!Z5JDlYW%dQH#Pr_aY}JhYnP z))B)CBWyQ82l=}Y{$Y3ts4M#);r3Hg6WaP@=c9^!!_qM51JCV`Y&r|;l9$f_APVO! z^_{#EUsOBl=Y2k}_e-VEh6i<;M_fJf2oohG$u9Qg9ZRL#aVsXOE(!ZW=vP)%_1KTM zv60XZ;G8E}fQTgXwD;{xnGSb%ckfYkT6nv*x4*xCoY3UsUYY1WyY5IT;g|a6E@n5X zYn8z>?reQsbI9ZY2@p`9>3Ot%_#lS*$j~8UY&7@}3rG7UH+T1FsIbu9Cd0KMEwys1 zSfA9rLfzHvmWeLh*>)oH?x6_15S7$jxE24xDDOF471CxTpYgkdo{XIt>*NX4?|l3K zt)XS8|8C~?)H=;p!=DVM<{W~!JAUcu>5c-H?#q#p zP%fqWQ;>_Hze>9PpEw~!m(+8|BR9&FDp9jhyW<H3|`aVXK4I}{JCnX($cb8SO*ZrN^|CnvX{i5M3)Y|i~PK6GbV z=;RwT$be0rSWZYtsD^p841BXqFB%^DfYd#MEoW6It7VYwhl03r2NA>~9a)JSiTV9y z=UV&38mMLEBprPYZQi`O8d^-fkfYzA44>>>rV>2MkzTcGmG4CNi+a3R*05uUg*`1a z2*QoonKNgA2JaOny|O=uT)zS{UPFjCkgznEIgZwH8g%}ova+&HKRf*D>}=f=q z#tp9N&>uqw(|F%}5PL3^zzb#Ddx|!6)b~^vH)& zib=z|_h~f4xNZ6p+8sW|XvTpXX30lJ6_YaQKu{q`Lhq*x$B_^i+NF zIn1wKY+7a0d`}Iv&|IT*XKjI6$jFnD0_cj)hVf?Wpf)S4)hJhUfCQUdq8+w4ttRi6 zM8(l`%IABimQuYOQm!1yKGCJck#tPUqdCX3Img}}d}g6&*pM-czc5t@wy|Sod0C1t z7-h%#&Ms_kP=U^d)k$V|x_g2@um`hIfC@!Jfm&^%#;H4}0$48g5ZIgPlx5C?WN*FU zlX79xjXAb?coyjGugRp&3oR})Gc%3m`mu!WgokBfJgrtwN3Duw2vYVt;?0Z2o|DAyuPHd5(H8 z(S@Z=5p3ulSf^l5_~aWU5)Z)Ra;iL_E_@;a+sD`> zciRRz#eT=ezQ5m#W9BnTtX+uv0N-15>JZ!h>2dDvUB*~6| zLkykH#2WMq!e$H8W5J`L=^u;1sM_YnG-jGHAw?<3I}g0Ooev!h%Ag%#bDd~QB+8f4 zE$@4!ImeBs99Xw*onJd_CD&+q$_N!SBb_Avr#vV6^RcoK=l-`hF_?VVl84#Z)JN7? zhfS)pj0D5a0iV6s%{8JNyh{~rz&`^;>h^mDKS{>EfN1CX>E49u=h>IKaK}@tN?Sr;fUjj#)cZMv^zc+I9Zu^6d&5tbs1O=jD1_41~U+rtB7# z@rXj^uwhmTWof~;H&&ZrFxMg8UP6oq4$>ueT3Z@yDGwNpwhZkNZ_Khxw<{0uDk>^U znN;5ZyAj(!S(@U`LQg8W=+k9-oI3Q>paDPg&?4qLu0V(i|O&<+U;`f*sIisgyLx0A+T5 zd1Wmcwd|nZRT*E-Egy@9u2ae|G;kWm7`BYv9?_p-`-_WxGmE-i{hBB??nQ(M6V_l6 zv`eHupYoST#lgDEIu#$YJx?@460%i+d6XJ9)-k1{G1I0<`nw9^5 dP9l~?q7>VNysUHaa889BHMKCw{qFST{{s4^`3L|2 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/decoder.conv.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cdf8071efa32ee416a038c368cc400791159094e GIT binary patch literal 10489 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 bJ2zHDa=zHYt^qJ{3iXKQ;j|x4{rEosUx24E literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..3b09c04e90ec126cff677ee6773265fc194f38a5 GIT binary patch literal 8689 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 B@qhpT literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/decoder.embedding.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..15b7d389ddd774bdb2d0fa07c6ce9e8fa7e88e87 GIT binary patch literal 8807 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..834150e781be803ab1be607d6b2f6f11ce2ba2b8 GIT binary patch literal 13113 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 XesvaZ>1qXE428nVt6a{JHGc44lm~8= literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..dcfd949e53d6a10427161ac8bc61c236f0fdd3c8 GIT binary patch literal 8084 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 Kb-^FJZv6*X5Y>hN literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e12e404c60cfbcae2726cd4113b22d1415ad798c GIT binary patch literal 11996 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 OD72F1&0>Y$9{vxH*Y#Zh literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..6b2475bf41614eedf028b59edc5f34e42709bed6 GIT binary patch literal 9820 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a60bd9cd8569afb45acd37a32b45e1becb5114d6 GIT binary patch literal 13101 zcmeHt2T)Uuwr;SYqM$!2MF9&%ML>E7D;nw2q^n5py%&3-DGEpk1Qa23mEQ4JK&1+S z&?6!Q5~?Bez+IdFoHOUlJNMo9zjx-&ygSF4*fz=D*?X;TePun?(YmyIC-+Vi3bh-3 z`NCBcYEu{r#q@pqHuxXuZ~Z^v4|%VP*Sz#xZM=MMcvzz}Z+N*mxq3O--#qMN?cr(f z>LMvBBPx07u$`Beo2P=9nDgI$K-AU4R;-m?O@|NJ;da^B6NO^CfxMXTsu}hulmrHS z;jF$Nc5)!tP2V87epYCDsLreQGUoa{JQvg1J51-8_YrtMvPxo%8#blgd-eX-lZ)FT zJ|`ZTy>EPa`%y9L3oJJrE?o1$?h1G6;>@)+y!lji|28w7o1CeeAE6yzZ28iodMdB@ z-u7e8LfGjHis6K3=mOSrx_>;RbRbx;>yk~U4H-x&@L4(-p5 zUGl2iZ*=_BsfnY}Q1RQhT1BX=uX+jy2%J#rZ+E;Q__-_B)b`cu*Uec5*-e90fz6*D zvug$gRc2;p+83|omJCYl-Mcp(kN>t zd`Z&21K#myG+Nv;m>#QF;5U0yPgnOwR#sM%scV(B5^waZpHjc-q`qMf46byR0#Km>9jqt{SXr=at47|dqGIuojnB}`tp6ep2MV=^JEX?)%a<=%xw)~8BRlC{ z=Z@lCnPg>T92%l{Fv@|&9S3-MMe~W-Po6xnDapj+bu26_&X^h+#=(Q*M?YlciD@N2 zCsMt;D$GQ!Z{5PbdiAOY<@f6+x@xXn{cBT`zP|no$rgA7lzTM=!%FbPmnRBZp#U=Y z`fCbYSL*BPkoL8+a#~w7)FCaZxc|7C>mM`A?rNECp5Dl*}##iFDx@fk%Sj zkRFeMS6i%+MJ9#fz!(t=UHaf&tysSxEhY7NdV%>A^u2SlHRDUeL%xt}6+V;gj`>yT zj~;E0JSeNBI?6M>L?btjc*v`Jc>EH;iU3wPu9rcnWi%(sQYTADF7DXrsM+8G+g3w!^Q3}9DnW~t zE37C~o5@ybl-i|B!ph3#BO@bPrh0nMzcx0G%=%#l>W62y5Y(?48z<=DVq%V#^zrBn zFRU0C8~YEcv_=UB(`2T4+>4!hUcu95j_~}rTNb-O3l$d^Zy_@l`}t5PyX-q_2izDNc$RNg+BH=+5vtt z;QMW6{$SeeX8VqG`@u^8-ctA1gQ4re$lZau|Ju?L$8TV0=&r$cWaHw5s0)^)DJwxVU~ zo0*Uaas0RrG0(gcFcYQ#kDObrv892*8!YzFo3u1MJl^uDa;pBdYxw&5`Y_Dfw{Jb; zN=P9q?Ndr9)EQy+IaFx~BLEsJ^X*$5Mc*m?nh?f|*w{B#4N=mjHQrRiNG?e=d3kv# zv-tM~1qeDS2hPh$13sFRdu2We4~KTkWaUvfE-b8`p_LTFKS`>w)YQ}rm?|R|`c7LY zGv+!@ii&n&g~)H! zv9lKi&>bRqmCJklPnnhKAOllndF&XPWX7a{Mt{pQuYe|+XPZp?YYiv;`0-;cRmG&; zsw+FbQoE4nFXiZFymOxFYr2OZ92OZF+567wVWq`%$>s+S8>#dx1el#qo;bt@$WAskB5rL?$lBI6J1y-3j9Q}thLn^PJ~j1&|HQ&dV(w;ux8^(CDAT(@ zC@vgRi)gD_7|edmE~GHIW5*7FP)}aALvlKoq7HonPSSc1MQ+9AH}D3Y8uJ9+yFERn zdMozn(-c7aP6A;|A(24%Jm~`$2yp&xZGyxyPW$}qSovge-;0EV%vfQgweLZa5)xiB z-#^gua4_sB6bg1^X6U18w-8jCBRc`b$-|R7H|G@_AFt>P6>?HcEWTmb-sfO+1G|nG z+S=M$EBMNlC;cwIXCg_{M)2=5I9$-L#}C-}^5AV%i$B75vaJu94*-^y`%DH5(gDe# z09md9!1Q8LYPMqI<1=Q58ysuHn7F0vp2nRrezm+Dp!xFj*%&F8emQSymnMze8qcqp zq+syz!S0S%7sI7IeqPQsEz#;LarMpne*gY```$u(jI3)i(5%>)m{(<<0mA{@C=9;|Wu<$$bSGeRwU5eyJ zempxR<%|kW8>w6o5%20xx`3W;-lCF{dXB_AgOHHw(WZpg1cH9-ix+rpoQhU+1eYW- zh5Gx=I=i|Y#@bTheFjcWIcctWoV-eYI?Qamgia$%p3}JLLHg)pq2#s(zR;Y{pD)uV zdi1Eoe4=XzE%7=pOwh2WEX%HVE|0M?m zB?#;&)c2r(rT}Sz-kI$NBAi^56K2JwoBp?R<6m;_|6(@%`Ew-T_)&S+-knnpnA3sh zBOxJC=-gL)fGX?Mosz5^coHBycxAqGv^jBe*Fh_N9i0>ap)3IAUjbDLZr{TSsViG*8ctb&C8RZJMG@w;YAViE%PfY zm0*xNkXw={#C+WQ_wT(Xy5HGQOI!xB#I5R&3kh9Xl^3uG8_B?hnAFwPVI*y%Iv$dyiAlbLnNtH5 zj=*J2O5IXGue6!IztF-MVG>z4o?Abx;{U=mj*8VT^?J6Psp? zw-y7h`x>ce%|sb_=ex{oh9)K$=w9mx-K$q)cmu|cXyR1NWAu%TGJvV(T2z_5z7*}^ z!^^@UN+@Vm$&OZ8z8o_LbeHn%67RECvYwY$A-{cBjxn_7Hy~wVcBIvi8Z*&&z@2>@ z9KJ)$Bb(?i=@fx!cIQi-cb=stZ`$Lb#MUcvt@ZAQ5QYoOoq(-x-@VgS^qF`{q%wSJ zXWU?Z8tCgwRcOL+J5$9EH%6ZR2PtR4yO)`L{rp+Z71u6%V0&W?GAYpjrfHYT$I05xbDqs%~&|va+eS zw|9%j;>?h`lscRbr=_#`I#BDQM~~|3>9Mz2=;<8;&OIUHQc_X3To5Xj)_Uwx)L3z! zi=K_msJ!Kr97&GEGrV&1=1sU;9B<)dh0m88HJR@@DA{_9qT$ag4P<@HsXNr6q|{A6DS`ng~xa8Y(aji>wwc?J>S zLjf|81!Pymr10{}!Zh)9v`W@wUkUX#Gw)OWzr$%6mwx;LDb#YfK2i?~3F=%R_~2Sz z*(kR%ouG$sXBf=2wkuN=(<&E1MnFphE=+YU)2Z|($=2gyVq$;6>Z5m+YoSEFRu|oY z^L{4NPKbzTzIpSeg+nweJ9~3pi?xl7!(?yK*Va}dkeL@4Ojb$V71@N3(x4iqH4Boai86J}XsXDmGpEepsujhnEkB5ouK+H?3w8&>Y zB)3P0wnAFBNJvOPl+%yl;Y1!GFi)`71LfYT4whh+nN*}O*MfEv78BEk!t5>c%z*03 z$jLdyqv(^6t97f{06#iZssE!*c%oBKOPHt(VAr)5q@1=wp?=S%WorOG8MX_ zOH+0rO?7pMO~K>mBQPScA-sVT;>wHP?^1vih10^LqvQJ~ed4;iyVZ-Qp$2nx0cxzQ zUi(aRAIT@KOoj~&!6?hZiX37i#L2nNc6Lum(`?mu3*inZ^=QFFdVI#*XLSe4tPLB9Enf{F|?DzGANbAnDTAzYQ?EqMk~*EUyOu1 z)z-U38ddBAknO!z5xTyXm7h=igYUw_&jlbNzXP)A;o;Fn-ho27o!Ckj`3|!8;)M%% zkRd5m>FH_!p*_w(OT+25>lPX~j+4iZoey1KA$7L3wM{GoeTOl*b;B#sggXOsslB7a zz`|mxP+D3#v$E2RH#(!oS&3I0W=d>qtUUe1i4z_b15DE37Qw&CleBY_gH@(U3f@;W zG@7C*%pee?S(Z&}{r&y9RYNMb?cz*1dv}}tmly%$;_vNX=SL%G2SZ*ebS((o4%1uO zsrxj7lz{Psa&Ky3@QM!%=d10q3sZ?Q&KMvc89**U5!y}lm%&5cS$bdH+q+0BSqX7| zkUI`;VjRDDD1%Pve)oEfrn;^NSI@2F_x7fh72te&=t@aw$J}_w-Qdem1LsbTF}eLy zZ$kYLcoV?W=g-};u}SaBGtXXK4Qfu1yaapzMztBWzEW$!Q6K9%>K28PlJ&`)SX&)b1BH#9xZ$MGzFM*kb3tuA7LJ zO(?L{uB)%lawS#wR{DF^23SRaeMKm8G%9i=YFXqPF|!`pj$dL-hvqjmX&{g_J3HGP zrDtxQ3+{9lkY!5yn{eKc#T&s4I`O{;V|}oawk>u)KR7xYj33Ip40<5o~OI> zNzP|=@=-E>c+UXOBv#IUu%5T$wV)4tg}>Rs0CC^JMDPN=8unBG4Hyk?Z+01`Et%w~t}NVKu6(&+AvXgEi^ew^ z$2@;7<_BI=Sl1m_Cd+$01-99Fc`e4Qd@6@1Cjg(#3RAY#{uh8N+2Y%m+Mr=1 zs9++gi3$trnVDf>YzBW|Adgr2*$3XkFu*~o6T_G`OWCy@7BPN*flj9*@H#3iZNm6Qh_$d#DifB#*|xmOBIZEXNN&~)GW%RE8U zr@_p(?MJXy$^R-KB%%v^rUymPoMl!1zpshaf=(0N~gf2yilJ{Qt9 z)X>m)%fmfD-F?nMrY674pPCjx3}w?m{5X-UX_=d3=NSi9{qVsm`d2U zZ=W3)87;#gqts&tgJ_z&`Bcon!Urn^2ndEhy5TiAe0HmgvjMBK4S$;e3rv+*cfK=Q z*cYy!$Gfv0C6uyVpPAX?@TKO>)V ztzpc+>2rrxG&~N|o3Ts>6HxEQjZ~kh{>%`@GB}y)AnqNDL#SQ3NJs&ssL+up3KpZV zqM~Ww{Div$@Vi2<@vHkeII`crzY5`z4y0Eg?nVd^Jc@=OtiTOU0G~Duge}Ad3)oqU zP=+^;asa^?NRb%hEcBY)MKCWo#4K_EMjU>>w*#qqFakQOg9CF-in4l^ZIk`g5Wn&x zn`(|lRlqo6ZZ*r2a{dVVD5MwxbtJE-n65UJ9q@X-HuF$*47^BS7ti>C5^96^3K+W2 z0jx7M_54GJp7+*Bi$)!i|Lyc3WL+mp`X*25>gt|V=7ps~ z1>z6hE@mM8)vKc^7BS$eV3*H7WQCU8N+{h(=H#TIMV~}(Kn0c?61|xjw+%5IOf>h+ z1b+odTtJz2|5*Fy*vTazD7dXqNKo)AnI^qq`XZhxU)DItf!bwo@w}({doss?iX9L! zNdu`e23{XRl)!)=xVasx8d?ojM*+W((0bbu8K zi;S5VDQ}8C+#?MnpMyduav4x?CRLjY8|A(Dd#m7owRF>8o`rx+ADrOj`N?eH0n9nF z^@zg*rELIa>`!`tH*{wh20F_D%vvZrJ=m@Qtevalu-roUCzdaU2eEwX{^gdhR&)0| zt0KtgK!rktt%+E69-f{_bP%S#gZ>%izSDWorglTW!`J+FsmNpG>vtZA4Z;i$!`jdt z`7?jFfDwbVF&3M1LNDD8Oj$A^8i)$8Cxk+D$oS1%2T;x|ExlIH2@&;p>Oo!+0p@Xb_jS^1uk?cPFKE$p1&Le{X`G9Ts?=VZG=SG;(`sMm3}<}>H`}p z0%)M!SJCLl^V6izvn!(uDZ&QFmtXV690pdl?Em0Vno{&QpdQ?^>B)utwacmjvR&0cHW=2Lr z!byOoxfXL_K!wSSQ3)VHntP@m!Xx$SXt1fjMt=g5zu3 zZGDzN3S80B>H;;MTcs4;_5<#tJL|S+aW&)<04mQZ$3ETRfYN~ZbK$~0STx$y>*(O{ z)2AYFpnlS)1PpIiP0dJ1?YMQG$Hk2jg4WdqEkhZI0m0R#?KvFe8!;XJ_^~c<-7}^^ zK|uvYrBV>g`u#Y68Mz&D%y&O_35VKlrJL6NS%+Fdnm76qh$|$*)uYuPbj3q30a8b+ zIZnjXYk6)w%-yAQ=z$Gs4aQEX)62uAKo&sOh=Xq?6S~qz(r|IfdmJ4ttAcCgv}$53 zkX#|p7$MZqyG#WoB-)k0X0`zbG5zh^whI?8CV&}D$~1m^{WkKR(4|JpCNT1Br>a+6 zp2x)8tX`%FXV}2VNe3?~{r&s))#>%Me6*&fv{ikCdl#{*3j^_o=Q?8{5n$vcM3xEQ zkSCIp14Y57=12kUbXfwrCN+8IsX731sOZyMl~LSQP4BH6o1}?mR>m z&cI79)sUbwjGFb8nnWC9!d6g0p|{^}IC2yi#qMh)0^!zZOOhjKO-&7rh_c}*#U=~xI6-(-NDjsoMA3aKIW!;Vlocp}h7iD399-uU<+0oIXZHgc!y{0VSqYoVA$ zWw%-2WKlh*6?Bw6l65?P`t&+jcg?VI;R>mAr&B0MTiF=w8zAZF@FEwc((SX!SaDMS zu-C7jUu@tdC@R`w=06fEsH#eml9raI)&#PKtk3qy6so9>%GV9gz69fLOCijJrVDCn znDr&xx_CWj!Ogmzp5W9Zfc<^$ZEGZ9mjn6!Hq(PuHlQ@q^)j?ZJG51$>w{Kq26br4CJ-$G zn-3}ZwFNDYXN+2|jaX_dObs+s^J`p?r7IfMa=q8gy>34_SX`$5C5(@ktE;PF#SpP% zI3wRpM5MWr)}n}V>5lhe-8{e8g0fLMKNJ%jeIsvP0g1E66X41wB zxO=cY+ixbyn+}V925bBVtgJMti&gzBl$Mdfq^0re>FeK$SemaZO-uWf3Gj}b(5d_F z2m9>YTxl4@uCsNE00A-}Xp(4)D@Jx9^lZxnSc)^7S;d7ck9)3N6#cTg)EZj-U1g@j zflBUwd*h=-qdQMt~D&xzix;m~J809p%!28n`HE+QiR5|tqQb+jOJzyTn8!efXA7xdX z5!hq)ludP22kEe?iu8dx!|13JA=6;+wXQh zd>A%^OrT2xRwhdX&|+0{F)r0hHps?AjFf#lKe7k{8yWz64~ks|mR~RI&21cUYe80y z0EAkszz5mP%!-U+)lv~rZ6kB<*r`gI7P6hWK@l>64Zz}5EI(tFtZD?+={;FQq^zw> z6XDLMiPfyWuTz03Ee!@D*&SKs;^PZ#S=SDmK8pGgLv2g_7(MlI(uX?V=SqZqD*-eF zQQpai1;%k}!J?#pw06@s5llpGgz? zWS;TpQ#64}7_=3|A3p1yNl9eqLvg*f} zjSeM%IxhsK7~Y!!4<+wY;m!Du@^bv*~(Y2TiP-q>k+@#1HWFs#-E1eCi}&Z+@vvjc`KqS7Os0W$N1A>dcDa?w zmY;!mAxq3I<>P__u>0`j(W5qqnnWE!5sTvedkI+C%LY=zQ6v(=?aaU)ly$)(YzOH} zV3S?I3Lqd497Nm=5%Y3=WJ&;Y^jaA3E$LP@i4XVJ;)1+%FnGayz@t&59Pko5zqsgE z_3Nu}Ib*)BGuucEd?)Hiyk!>@gx_E_KyW@Xx~o^FI^by_Up&{crn+txU?C6o)}WA0 zksgJ)Bj#fJZS+2ul?Gmjse(WxW&_DHDYVlKH}VKm7uZMcheb8m5wCA`If6%=d7uEZ zTxZRs1~;j-LFTWHY#;!sLc|5ES((L@mfubp!fp8o#6A=X zbr5~)h6W0?!w-d``AN4M{zt5-cLY8pTyE;QXgZj?xZiU!Ln+^LakO=Cv9-E?%FWEl z*~-CQRPd6ZDE}!-7Z*ooNg*M-zkfl{!O23Xkz7fJMfN)0y5o#OG2BD`(xl6!S)owe zIp`Z#wLD^H`g|Q*$-iwc=whD)+Ftv8I*jwiyLhgBi8sDI*AC+0QD&2AE=!bXkT}_E zc4XhkjfMk>UqXegc0FfGap517*N~p2$IAylwrqNF=-LnV9jRM>`vtm^_bBVk-`e5n zyFC%rShARu{vc|UifNcWK-nsnE1Sb%d!^SOxQ7T=Gt;0@A5Xk^YYb0`@()7oM4@sI z(9oe!cUg8Ef?r+Oc?yN{Go!l#zpg*z2meN%M!_}w*HJrAD80x3eZl`WN=MnIb_IU; z?Kc`W38x!qH2V3|r*vc|i0e(^>WLOrIc+bm(leYh<;Uew*nMp&|3+!etnzAstud#2BGt9+cCpVuYqId{z4TwbypJ%<_7R-30VEl zj}JPJX=!U)eUA~-FLTR|dHp&fIy!xG6B8%x+5AdVODoxjvXb%k?NwJ-S1(d_(M9*! zUbT})P^c?EZZMlFr86y<$!ts{d5y=pFR%1CBsiCe$WKmAZlw8caLd4xg(b(wvzPSQ zx3#ufjy1fJbo}Y}{=z_!id=qqGiVZ{@RR&u$Dd_@*CZy>u%KBb&fgJL9%zdfcrn z&Q3N#)ym3>rY9*WDIz9js$o5`zu$PBy5+|Tu_;D!tMWON%IL_*L`GVC7*`)=>ATl9 zb+y24MxT+1iJ^N*(4^9^K2m@+zh(~#MfVu?bJ=O+mYIdco?tUGvy6%gqp*<$4=!|E zTpW$Fq?A;g9Xn3J$jFGMM>S3|#k3|=!nra%G4Yy=j0|xG(j;oc1NPz1!%yp27tUjC zW3!)`GUMQz)zF}XZjKf)g~eJsJ11;cDO78F`^XMb1ea%pv8%g#RzX4AtEFmI2g|#6 zue{_|l^tKI{`$3c)M-~QELf$ix3$k>uZSa%RnDpW|PRWNufn&tD ztl3%nJ}hM>6OY%$V9G@;hO0w(`S@DkKH1;C-C{g`+!|8(?PV?`@%Prx(Ucp`%lI)X zVHi%K4$xQb5mp+Yh4S{phyDd%-}I}~j60K)@PS@?>E2%F+jp%ZkngzeziCscx`0aX z7}^WRxwE%Al#OI7=ed}CTTxLAv*vh^O;YR8qeoNI(+50)S618@j~zRI`t(((0sVZ- z7b&yy-e#+-dbFQh$A`CE8vA}*MMdY%omb`! z(Qn=RJr%-SHkPemt#88%mNlVlQxg+E0vKe|qobK+$gP@J<&MKy-QCxN3Jwj8tQnTD zDNjpNXq4M7hx8V6ozg-#Z;(k55fLeIQtrIs;<|XkRw;sQc0Gkqsy0=Dd%YHGxeGiN z?#nEEIr=;#o8dx=(lJ zosjX$kBN!lLMtmPpAff??X@ow<(88(!4ga;D>M6Ne?wNgqi0MLEA9CnAjXAC?#N0? zx(Pwh#mBUJw-}>ZwwL~x*ii6 zU*p@ipKmP+ZEJA&EWeOu$8BtEwD$F}38#Jd(Bj$n1|mn&{A4kkK=OHHp{1pjo|aZq z!X}GZYi5TVUO8lVn8sss?V-=+Ld^*Yr{r@gvB(LCUAiRM)6?DE+TSmT@8Cl(dR26n zx#LSqOJgMt9z5t&VpvBc%FZo)`6sYg8+^jiF01)SVgabjYk3!opLgv6Z> z7L7Wdo+TQZnxjr77ajVg0fk1##%_nDD!)#hp0_58#q%D2Wz@ zVm7?T;zxjffhRCZa#R4$VGp;Jl(Zf`%mdW8?s^N3@9NP=nqsS#)cy8298TBOwIDMqt5J$u zR8-TT$iAXg5pG;OZFG2!2I%C+ubls;wfz^9-Ui0QetbIb)Nb4eJkGE8GZ^TC26W&P zvY6t>^lX_`Ro7hI+;&fQ^!MlZ`|mi*#dTglKso5RKy!v>nt!<$B<|0B6qK!%RZ}B& zMKpv%PWCPadW_flXjFmclDXYLr4ca5reGG)*cqq=ovT-WgPhJct)aK;%)JV2T)))C zDwhEe=Tv%?BnrnNmy?)yhPpW}*O7bgbL;}J4w>!ECH)eolvI_t%x6crt*IO2?mW{c zZnM2SXfG(!0^e4b!Y z?v@u6Xj7?Fnqg?YZIFCGX}Hi(^3BB$hev=CNUX1~FH)%8MGgZJ33#Y#EJ5xk5Z6QY ziPtOq@YXG<%H1CfT~eh-U!1QHs@8`d$Kaa~yRo)Z2)ctP3D zEQA-t0Wa`ao4@xxLC%C#++GWV!Tg9X`iHiE)!QDTsd$#3HWwZc_(ADtq`@&Zw(N-s zOC*do?eElGT=D_9{se_w6AOzpzzD9|;e}Xo#!u1JMqn?+#g|JAbN*m2d+Sl;O&`n~3>HYf%g_v$>Z%>6D0ELSV>marDS9n9&~|mA3lG(W6KsvB0cMckv1d=~`Q78VW{@eSgi3@5t)yHAFY( zTeXD8#bw|5V4jhgc^hz2F_K^1$|_@MXviO{1f}}vNFgo>VoB#nhZzMvqMl#u!{D}qH0N;a1`Skk$vKF|K z+OHb3Ky8nn<^K!G!N0ZEe3g6P<9NKc%5V)Xs(v&K{=hM3;VY;9uP6a5rk*5k_4PTU zwVhqtY+o7Dy8FE6Dxg*pxUBv~-BVQ)WU~Q0$Yin=P=oH=djU{wpnjUw*#1F)Jmg7E zO`WQd+sdolrq0=Xd3rcAJG*U_uiBmB;tAl? z4vouY=*wOxhl0XFgxz|2dJ<#vOlz!{Cz}4IJFI$(AF6DkHL%!9&^XSF3x;0a-lMA& zS}0%C;5l1b$GQHB6Ou0JknPL3?KK=ihCwTVjQJZ>tpCsK!D4-J6eyLOJqrs<)XE!J z%Kwxt?feD_-vRMW8yho^2oFy$F4m*0&T+Jkze`V7Q&q(|OJUaL-^g-6(%*fGNR`aa zPCX;ii?XCF+jOdpBM{uQ3OOs0Huk!{4nwUABbUVV`HP~?Og_y$yG}tTf-(-lA5qV&@L6wPETF^?PN=u4a9C^xkXjmz#z+Hd!xf^rl2D{HufE8 z+pO|(!;Fj!ARsZ~4)L(2le6<#G~lbIn_Hpz_n4H-Ox|^jtiYZ3H=rjO4nhalEr%q` z$q|%U`xyWvQ_acgeKn2)kBGd1t(Bs)=q#OV4bX%8_U~`&>B#~CEJK<8K-~Hlpz>!1 z8j1|iGVcRzvHK_>$GoJaROKGWc|(yuxx#-Ea|zlH3KfOV;_x}!s(6Kt?GGKz%w>o$ zn*Y}Z88Eo|D4~w*qW;X}WG+OsS5js*4GauE#)9Xuc+h4+w0nTdg(+W(NAJ# zW`_6td9`cT{F|Gb^DUds#7VmHMn3_^?vM+t)>Gu53q1nbddB0&yUDAoHr@GFh*}i2 z_!q$PuL;F@dZcYx{_59>m6ftTvC7IJaM#xE?o6rK;_D!_y|&iJk(2};b33dZZ-NJW zLFi{mNy*C#(K)PoVvE-@iw2!8VnC(2j&S@P^**HzH$=#Ap8tWfA^|vUoJ= zjYx|5w!?mK#eZc(8g$rNyMe=Gy!Wg+VkMtBv)rsGw98h!+H$fv1rer?53nRcnfQRh zq;U>qlS&27Ut%bjlALS_q*4;Q>2U}LxNzzs9HMIM<+rcxOVPkg$9s*nwNu1w+AU|g z3&8u*xqm+qw4v+b2--pggg=y38ej)}a}sc=xwphQz!h{c>NMhbV;Eb~R6CX@TN+Eg zGbgoW>DttWoh=1gd=|Y8iu+7aPj-~C7h2SU*!mmo9xW3Sd}QQtu>Ed@#e0si_^g%< zw5ehjkAlyzXGRYe^%vmBql~}(M-0kJ^ItAVJ)a-b(9${=+P+BYZtsknR1a8^fKEFK z6%-Ws#KhWOISWGDotl|(ouyE>6bo$OvNt6|IVk$n(fTOR-d!bT4;}=1q2V!1x*3`L zz)%cp?doC??(gcFv|WO_o|@X%iJfZYVUu!efaMq&83Csr+CO37sQiNH5oV08Au5zb zR30u32?-%a56tO0JAe4IuVGz(KfkH*7l78;p->}O`9FwJ_oEC5_mpe^yJTfvyt9|YXTs(YyiUaFJ z_lp+9li5aPIv~Xm$M=SC1$DlaPo1uy62=;p5blwUH0G z?KuwDF;e>ySayz@5H!}iYIoTDgeun(!FwmK4dZMY<7G-GQ(uPzmgeNZcYZZTJvKi+ z-JI4~3FqY>*BO8s8o>41(EYIsK_-D-RuJoebCRw5=^~&(BYZnCv5F-KfEg@1=$OP3 zRd9X)q2nmft;4to19InWPEJs5)!3N^@8uG+gaVv@*vAIY6?~H1(S13wY5#j=$H9kWb3%g53e!EEUTqQfmb1H`Huc0$L7yHzcf*bVpQGuk`=h9 zV7JSW0#4Ia!ehv6tqogH>)7ay|JuN*-I{@U>!Ls47RTSO$oRo$;Tfc({e7w$$QUdV zBjuh0jvwRU!*2mPg<2JNEO%KXWaQ?m2}UVGgb8T4i z-vdF>S3D|G*Qi+VhpiBqhs@MUoX4kf%4VDWckRDcaWU}sHWS)_PiDbQAUGJ=*fv_G zhjDW4pbuSp?1~AQxaVBS0GGSz@2;+6eJ4tOr*?h#;K67KK5EZtgF;Ds{}k6B_*X` z&!z9;Ap>*b4AS#{=v%jh*>N@R3`?4OJ;&qBw>H93zFQ|Zhp3{a#W42kIEL@AVfP$);g<(;=_nhU zU7^E(eXvMsX=%41D8zGug2d#Mlvh<%RZBT$;HjO1wgPVS*Ded--KiB7eO+5$m!^V9 zQ4i?Zr9IGFU8gXI{E98*HU}A$p{pai?*iG+BPe(YrjMcuICin>%>jnth2fgl9VWhg znB^vgF|gOh=C-%yl+Ddky9(`IcY*J`o<-Q;dl???($7&{&HVD^OVddHJ4b{sLB3nO z%g=9BiWdHqpPwHcu!kWAy7>|e2d83jZGC-q0NdZw)svJI6rM~@OfNz-5vfe%bR2<>*|b5lQF=JI03HRZ7^IC2J)7hM;3uZojh2LX zcL7odUR*>(&NC!8jj)g;F}l$5&q>=exD(mxbBGzZHrgj~vE{al}sGOTk<%y}h=< zB4aSXlOgdAJj!|cnI1#8lW7zRQODPpkgD`*C>V5tWpgqbrpH%4_QK$JyfFc@_-unh z5wmLMvfu~e51B*VmEeGkm|Z4*|K;&^7e7q0FBv@^!X~8?rlp~g2;?8ZGOv*r3ScCM z;(daP%MJIA8`|6F0N0GA7~^$0uxoEs5@e|st6w9mz)Fg_WETS*;XGOrmU4aY_5#L!gkN!!jl1bNQ7+)p}=wQ8Zs<_d1(yd9Szz@%`FP%JBd4?|PB+b*H#SjO~^}M`1 zWHKL{x3z_Zd^|5DMJcBskNy1FGj&D9Akp@gmL$ag@LiDzdj5QQC`bq}7L5egoEXcJ z>jNPGY1F=7sQeAWd;ytFrlKL)ijO$6lpP_KjE#-?QKZ~wTak%*dV0Du5f>5?!9}bW zcFn`{0Mg@C;-xddc>b`Jc$zx-+!&fPUqspyaJd6(ZJi|z(IVGj=)=py(^OPR761+|)e|Xbgp32G9<$o30aF0RE4X&w zT~OD=r{DxDtC(5cG3bw0ow@f+tbGsU@D0Y=I5_CSylQKZW9us1tqH0-3ErL9C|_!6 zZoUZbX0&y5ATPH7-O+V&THKXD8-)whh+U1ChJ%ExUW+#u3kSa7Fbse2Z zV7x-bCh+dfY{@t~bxfQfL2~#8DUz9<{sZ0?ajjul~#b%LqLvGHEe@hN+co|`B1RlR}iZi3eDfjd=s5xXn+>gsIS+!PF)e*hV3g<7bq zyNw>2+P(YW_(_D(KYg=StBOs89{jbs+Ir~AGcU?ak!zc_?jx@|#r_Y8G#}R&`0fJZ msh>Z62>JN8c&Th`o5uH)wBduOAVdhF&^J|XFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1f13fee4499f58bd0737c5771c8f3a41a01b4721 GIT binary patch literal 11994 zcmeHtcU05)wr_A$EQ9E99FQsss30I6A`k@yBTWH8kfI{JlhB)^C>9W<_W&ZjsDN~$ zqJYvuS0ErYbcBGRC3*Wd=e)D-oV(Up@2ofP-F4SJe`K;|h9tk=_qX?_?fvkQt|r?a z?mZ|JiVb_=oIVP*?KTR<@@>~n_%CuDgX8d~gg<{3Z{TW!_rBp_jncV+cXM*ZJK5hn z>}BnNvv+lok&u^=IeFL)k9WhNB_*Bz{s$7S9=4M0t97gJCA-}&nBY(-_8Z8HB?psj zk3vakV$Yp5^hus4`{TPkgP2Rk3+lIpt_ww756Q{BefZs(`@4_l7^pWF+06Q(l-`eI zeo%k5`)i!j&;I4WlV^Svb0#MGRW1(CvKppx2ZVQ4=3e^Fx~D--8zprpeDAw) z>Sletv1a7Sg0QIXzN&2rQLWxX!_C^n6lMDTgmYY0VQ^*F!<*a$;2jlYw*4>)b=!K^ z8Tgmx{kP$tv4SWT6zZfpY8wi5^*(Al3ia}5mR<0fL)-SFP;aIG{egdaN(obL0%weS z`}^~%s?e)*Ukwf%I548hi$b}vgh_3TK9-D*jm>JhaJu;3f!mlf=H@A#U0wBoTqxAH z;_si15vKC;i}uiNgzR8h`)LI}-KlWwlA4-Yd;}Dy*@H8O(^gjS6iP+-uD1f;28#nZ ze)$D?bX8nQ%=Oq5;u`$bORhipX+7LWV@V67Q;6IP>Swt4%;i-FLs6&-ZTB7j1@*9X zoTb91m3wt@*is@+i$6m1wAb8}TTpYXIQOaRx6LHt?*Du!!+GG%4zg?5Wq0>i`UVC) zh1V3;1629Y_@+wcRL67C$%T#I% zflwT{`9n!YSXkJ!%pvBYmev&mgXat6YB5Pky=*-~tPr2F&!xh`LcfuFoTb6cAQfth zjHtMH&-;6O+Xseci-|>6jZc)y=jP@}$_JnoQ_h7*HH3Ju!fhVa2qVq(FQ*%vrZYV5EtC1s{7J3=FZ zztGsi_eFgpZnEXjj%~lC@t{y=j5#_{%D&5)rlzLRk&(ZYDhmsr4 zc-aEFq4SY0%?aF?&gNEdNnWU=@aqs%$tJ1E$p!GdDVqn5YUC6Z={Cnn_N90aeVu&s z>&dJ8OLY(LKfH|vbtaCZQ|$JqPoEw=dZZs17)V;)*zl_)FUa?~SCjeL2%CO_0|oi{ zU4`XCd4q#yh33^iB>9UQ$2vypLkDUx5)!&_tY;OV#)?ETS-5z3^5^E9u3WjI)NFd~ z8oUb^_YF*ynbPAiCdq4aP)h zmG`2>i>xe*ZYx0SDF-!%*f+QnofPzy`cQUbUEL=}MP|8BC^|{~9NEG8i#7p_9wqUNf- zz5VC*_P7=2t<~8+Jw27xXx(JR5#IL7{16@m7egnf0;n<(tl#=XT$u|QUAs2=I6deh zRP%e$aTdiJ@3*HYx~qNs_;GoY{`vD~{qyJVQAM8g_xGpe<0>mF`%CSkeib*(ytkKA zR7S=C>W5p|=cSB{>yWaXoLuh9mzUVs*tk{vN<~FQ$2}^A0&yR|e;=tw2dup;s+!45 z8(Uw<9#UTVz_GD57IBb|uaM=ZojC;s+8E|~yZSmFE+fRe3B&r`qk)1t61~QI2DOV# zmGvoc$IrlUe19^-aquntghHjM{1H3dzK-rW{6C3w69j}&09el%^v&i8k56Muc8yQ? z_}W~*zCQoc&Yzz)Pjo&NR4)b4PTLHZ5|xlJa&X84bQU4BXRC+qQ=$o|_!$Dser{^I zRPI8?&zJQ%e2NryaBu{ZUl!%W0*|WbPu(!1pFhQX>4%Y>?X=AYujS5X)bav|Z zba&_Y(-uBAH+M~UWea0j+4&6}9rG=GMs~~(6D`}7sbPTeWo{#CwmiR`IpaO(9=fqQ zn+<4akHG6nhh~}Ad_PH55UTFRuQ$S^(g%M76nJppXsO?-16Cit3&>y2vG-&v0mH0W z-_0SClbegZR_@{%8_uhwZ(?Es><}ZR0WIe@l^!bVy_$*n+q;$9h{sD z)zseK!<^vEVQv{quFH3L^8S_9L->mCdhP9*z5XY_dm4Svqgh;cD`lXaRUja(9mCuj zH^5w((cU1v=_6bV7Cst|9h3TW=XDQ{*BKcZhL)BBr8RYR7B1!0t)7D}-oH~wll<(=41Tt-TvS1U zR-@ouT25G87~2H6PittRtYT793iI+rZB5|e<>lp#ulfy` zHO{W?Y}L}YwtgW)c=k-Ne1K1uW7l>=0|SoIRy_>e5J>%sm)D!#V$0&Drf;D$tA4A! z*IcLPzLuQbtYmD=_T(EE%SVX+ffvS!+ayFqJBf^0qQh82INI&oZJU<(^#2Ip;#Xh3 zO(3ZFzX2#Lz4>tuA}%6SH*&ld26I{Yea=Mw<-mb-CEVl`+(WlmaZLu0q@_WY_GMGk zM35`Ofjq&$l4YrWGba#84kBWvhJTQup&o^YUqKpUak%*PYiX6uxf1w=J*x&_2=*Iw zqz}Cd+0B6;{jmEWCuj2_O-xKo>)^qIZ9EbVj*fSW+9oC^9lEk~OiS&a{VHLW)6$|1 zn#mFBudSuVm)hOko%#N~nw+ex-O5x)UQQ0Qf8bLyl)>yFArX<8 zvObHhmIN8((8tGb!SCh2e0i!{Z#NXt)q7hwl%#FIzQbw{+gY~z@Rjlre&RwSg#i_^ zKkVPe<zB8=wI<5V3=@f>y;Z|p z&qqgZf(pq43|n3gKm+8GT8e{K#h@reRaGspSgiBHu_H%DYX&A;lY&WBJ3y<Q8fF<3k(z`ud_ljU-VA%3b?1u~CMXE~TmX|2U4pSgxWIJ{ULd4wQ^H5@dgy zO$ajW%GT>EweOO(BOQ*3jYTeTwztp`$M|YX=&5iYTlrqk?)dHPZ+@c>kKwy?6zo@L zdLrv8H_AOGE{dC$UhpP+#<|oiY0x+Nh(_S$0BKX^m4AG(^85adRqj^P(|r+=Cr)5p z$_FYd&5E>sd_lD5bATiqt^}w-n9xp}-*@!r1a;le+?+g#?&;|{OO1?IwPRF}7<#Ub1_r)*nDr5>zEUZ62-~ZzIS&=yv(?vn<_|JW$vMH~Lr_B-n=EN*=~ADio8YW=1cqoiI~VGvpkMU&o0gT9+AR*%MrO_yRqLww zt&oBll;Av|nxmReqMIiWW?-xnm?k(%8{6Mt6zUJ?e(J+R4iG%C!;8j7MzPQV$qMe> zy}hE+%L99#{flb&j_Ugt6%|)OgX8N2^EC97M*{J63^cDUCjJ z?-c4YIXI-al3iULl+-l!zpH|uKM`5yFw7pUIvqTpW?VQsO%QdXaW;*twu&eurv z1}-2#F*&&_4z{C*dp zi(-W2zbRuHcHxrBI^N{bTq3vomwrnYx>~Z z$w?ak1ua#=;sBq9#%BsOx2meD)iW-AE z)bIc7KDsycep(Tthv2E{-m$E`MY`6f%B1yruw=Lx~cqdb={<(7@Kzq-R5d!oR5)!}yl7NbU zs=0dd|1agozAd1wcEjhQM zqT&)p94_(($1*AzstxjsbkHs9^dKZW%gA`|TYnzF{m4;b?f!(Mq>^m~fn^w4` zOUuYyv9Kt5cbE0F40W>A00?Ez-n~5}Qd-Az&HRiEHHo<9gcA}Hy$#_!DT|@M2O-o} z1v#&|t3ZkNATAQ6tnSxX6hmB7lxvVZv(zZS{=X@K$@{kX5aFi>mqum2>~~4NyGucp z^%UNR^VI*Ou;BmYl;QstY!SK#g(W5^covi_2HS}>8KCr>K71{V_3-kg3dHFHO*UF^C`SmUevm7O9(UqTiI35jw$%sQCb_5 zGsB-_#LDbCj*vb3%&V3fcvfdEnWm8Fib_hx3GpeqodLt=xAc*7V#!C=Z^cdpw03`u zZ^_Ke%$*7MWL%Q`hUrH*RGHs1g7+2h6fz zNCGJ*==S7w5KB#qG}cxyexJvd6lFjR1EqBWdZZkJD5$CF0t7PKoj2P~FB%e51CbxD zUH&YFnPWi|Jc;dntu7Y#tCU@ec~p0F&bk0 z&Y+qkr^SoDi<&%N=1vkcEA5oS{S4aq;ul50m z8CGw`2!S#NA6)Lw1aaN{<;&Ed>iT%p-x6zZ4UnzEBZh={;-sUqGrY&tShyz5`qU1k z`C{`53hwOrvxJ0!I#N_6|%J% zs_}($(Z6vcotv8*sUY|$h%6-;$=a1jexGkFlG@2sr;cGW};_&&U0C5SFmT~@7ccXqPDgnBt#d2_y+$tF8Rh=%1b%? zUfhuK*H~>!{5o{SpQj=JJ)Xr}L=~BoXwWxlaS$g##tLwVP9A=3{dnikT!-VDUkIw- zw}Xh{ERDws%BG;Z+t72iS4Wkg7rKvcPoffN2ob&1f{>8yAQf`c(#}{0ty_~?{&To2 z%MSi0jbrbh9WJLN0IxWL34ku{26vAHgfQ$NRbuw3Uh3E<0XSoZWPH$P zJXOb#;R45lQw{N#7T!Xt{^7v^(^|hWq1>{vD-eb!$~nePwiAMfwji%VayNi}bhE}2 z-dt!IkWinwo|l%&s;rRI6Hj{=3FX4L4s`kt0XKG`-e$1Kz+G7u)-;R z{{U!qjnaf+@CIs9sc+31$S?G9rSvo?JRDnVjy z^7va<1DB5}ikv;^=h39U&ANg$-C@ApcEY@B$v!_LV`Hc}gqzk+>7 z>?rTK3io|SqJgFwxTu4;_JsW6y8aIh4T;Igywo29uBU0?hh!SGQ_ymDjA6$7aLe#k z>u~&+FIRE(YzpxZ$jePJdV7sZAZLn-jJyffxn;h5*hO{i+ugK;cGb-m?L^s65S`Zx z2?@p9cV#6=)~y|}n*_d+gL${SySsZ9aJ0?W*Vb`Aej6+Hf;hC~)~8=^8!OXp0((w= zghCtRJ$D>Q&q1S*D!-Q_dHFxC`-pK_8D71b1G$>mkt1p_1Y@HKvTV%c7vpJUZ$$sX zR*Qq3-7cEo$TrWizUVT?KE%X7d-lw<(!;ufoizo;vP%r|LA(01Izoc@8T>FtIdLJZ3f0J5Re3rEJ=4J-mf2$oif!Ws5;xUCR!KOEMMf{W^-El8E$AA8Ok@{JzxU{kmR4WxG_(}OiRiAlJd$sUl zf(DV-1?kzoV(-{=>U16@S!#H@MFhV}3w(Pk6j!Tj5S52RK)@B)(J^d&vVI1ZZd~Aa zl)UER*XK&wTc8TVgs6~*oo*(rZ$0gc2EUVpH0U}z3*3*@ZU{amVc|pS^5x4m;F~64 zUC4&EK%RsfcBWm037+fCn>Sm)lC=JqA83V?LI=|LPpz$T(Cj_NmI;7c2G*O}Uc-^V%?*#RkJ+aBHkkR(m$lJ`iE7j?0;5|yNq+uL1T(=l zRcVpfB%CnJWY9Qk*tROFHk1@>TDWA~zP(KoSV4N~5Htpr4o7ykXqivR4i1X62B-mTHI}rZ0Gl2nxR2zU{ZY=qEViwYp8tH~V-MuL~t4 zCURSaNx|op7DX*JjX&IA9ol|p@A62f!0&A)=MY_TQba^UNl6I?m}f|Hh?is1Vdn@L zet!P+$vqa1A9MkQF5M>oGQY+HJZ(5iP6Bk5r3)we>9YXBo>({SkVGqQ4 zxQ@<>(ZEZ@)hj8$#uHd?#bN(i3s~^FATBN*>~3zBinKD>y^+sv`bC@&78Z~$dwQ0E z#5;-I7$DNGA)70GX1H*KI%-!swGd=O58B}Ir5a&eBLNtgYk?3sP+J@GuEF^rNFm&HoFb(MoZBy9J(P7gH+*7wXT!XNlL;*RfDbY;W;GoIwWH=1=V2$(-P0s9^?GX%yX83t1)}_ z?CCcz1}m5dXjoza?!FW_>%4}>PP#*ZIP*I@GYvjz2X#;d${4ikE&>(8#$4a|!U$3oZ(AkIY2far8JmlJ;C@$un(blY zGv7v=?$U%r-2n70Y!HdUJQHfttAZWR54Yc0>+g+hhAfSKL`Lu;I*H?h;^Q1#T6aE4L%0P{rGq;n3QVe8x`t9Eg^mq_Bf=c2xm(@3qbe)73KJ?Or;~VDjn&l zCO^XLuec7)-G$gqB&k#&S$P8-wVCO}Lt;9NgXcz9M= zw5O`9LhBnY0<8No@A1MK8K}i6cpTm0<%1bHImcm>YdwR%9rn5mO-yoOag>cmelDZ; zW5n}(0uB}dIta`y+lldUJ4jd)VUGY*)j&$blPA4-SMpat-5du$4iiq}&;d<~hg9(i z2&#Ll7whtoeH#!eWhKfm+XM`I?NU82&&I2G2?k@oS2K@GMLOB}V`Jm&Gfn;uD3pB2 zS8`!H52CACHzox5V7sG{bQabU^dZFMq+Rcr_^XxP=4B5C9X4^wZhm~UuXr34cTuse z@|9I1eD*P>`rcE-puh#!6AyeiKW6-PS0zk^r@pAUQzm!Pa6K3NULY@LOKd_?u6S%V@4l@_?Q=l7vj&29)7{+rCU)|pdH X*)Ob}lG`9jKw;18o-0zje&>GyP}%+s literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..7ee8f6dc53e370b527f1b6a93ea71e57303ae186 GIT binary patch literal 12505 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..56949c245f9f7086829ddd481afe0ea724a62a48 GIT binary patch literal 10980 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..44a539d932b368c4fb6b2ee8c535c16d2c5ea361 GIT binary patch literal 10968 zcmeHtcT|&Un|DwV1{HJ^3kv86B1ITQK)Q;Ep(?$DG6+cTEffVskuno0iuB$?4?QR% z0t(Wb5UP|AdO{6+*E8ey?(TQqeb4!J_n&=t&rwm6Jb9k`zOL)n?iY7e6%H}6F`-bX zL+CrV)KREC{wNgP2;+YEACdNN6YxXaMPAoM!~UU*`+X;Kl*)Y<2OE1A8>udAz%%;~TWkP44$O?D-eEHQ0;K_n+g}zLcJNRl@7TaFV$4B?hrK z*B{5;5e~34YrIy$bWG^ZjPCo;RF7}0`ROMQ71Ar*^gk=z9DaJMTbHi zltb-7p-w(S?Sq#N(lMe?rYH9tMxp9{-FFt=bf57$ytn?aKm7UZ-2Z;yAFk4^Ag?{6 zxdeiVt*tGasLktNe);95G&>6AKrhhJG1Hk5855KJ>5ee&=@EaE>jnmIJ32aUN*_X@ z7R6()Io?cB2xq2Tz4-*Sz317X(-&sccz&-RWn8j>y@*`gz$hvy75jy~eGV`0_a&1Y zt|2?~KBNh6|7PQ*J#0_Fk^kCFdOdwt4HfM+?(TPFmiKI67~wVNEH4U`uVF}stb(%c z{*h3z;mqgHpC5?AVt+=ftEq)6Dk@%m@PY9VyM!h^J^k$TG^0moPmlKG)D-`@b2oT- zdG)J33R~kOPXyOP?J;H-9ITV}re@aE3>nXoNZe@R_IELE^vmOyI!@bHC#k#@wc4VR zA6Z*>hMW?fn@W)NGv3(Pm?e|D;TomBG%qb39qaxg^K;@HP^+fF1p+Nh6t3FLrw2}C zmz8NNgmXl;O?7_y`usR%|Z zVM`u;vjRWgpn!tv zJ?qh4-rke}YuwBrai%sz&(=d7-}h=__RV%big7P0$wO>&2e zS4c<=uFJr}Q9V(+?MuMOnAAZJ9=3ZggTmYNC+Fu2`j8BWST4^RhV_PP% zy`<8{ZS(CzHk^HKysWIOP7-lcY*dsRg&Fqa>>c>Di4R3fB|*k0D=RCY7FSes#ns(? zu;s;3p8Y-vP$4=7x_&Gp3%+ZTwu5CVvRnOabFOxHgPNL}+1Xj9a;Coa_H+0_+wlGx zZ}&RuLl{L5)6Web8X9;71?TxVV8gC2KBchMxsrN#xw+*xHvDS!WF#dGE?>U<$kMW) zx3r`rv$Rx;BU}MHvE<=0Qb*_N<~Cpk8$0Q6Eg~|KwR$hy1moj^nmv6)A`UK-m6>^` zz1>gdU`A(Ff3ZbQNr`4tQxhz8jI3X+6i2v|lM@%ZGhIbPTRZCEmzcEXW<^+&OGcHN z+}zxTqj0(2nu0@h@HAQQ#l#&dUZ}6^K?9Tg?c3RjiPwDzCZ3+2`ZZpqHPU>1ilwEc ze1d{ejpO$oJV*`>4%Rd_=J+g!+|moum^Vu9=>pvcQ}_#=sl%eQ|9xMUv+$aXdd^Ca`m@QhoP)zr`uEL zaE`NGysXEMH;+18{Za}k#825S`EdZX;lJ&knbd&vm@^UvT-;aTiZOhxxS)lR{GUpW$(b`=W+D*=g_fo`m4Gmq2 zZb_S+ee@+(TqB5uQyZ#>I@g~9eV~YiN?#4N$H)zwJDXnNJ%*LM;9$i_xfT^-BrhmCmqHs{l)JMhHx3#P~e z2?*?6ObM6i;Kx-b8`xFI+t*N{f?vL*#4TVHNWHjdr2o;_mPsa$_?F2cJp3yyHFcj& zcvzUWlT(rO_s)MkJCfz3AGf6d_8jF=?K&V-eHL9g9wxc^mbiV}x+nMEy?gD6WPEb+ zP2$$@+I}(xn)%5&0URofO+-;oPmhjtMOe6dV1N(pR5gT64GRnNzs%0gP8G!u=C!uA z`je+x<2ti6GUhHPz-p$?&)a#6JC1$O`fKhowV-0Jm+k8IQSk(=+qa)_S$%$e z87_uQ2K*LA1|GXBE(AwMM`(Py12AREe`+zI z6Vfla<4*L!8+(k>(`dxq8n=bvyi)7lN92K0Z0hspjF$|{?-F-+)?8aI;Vt3IyuQD& zhya9D;PAZFk&u7Vmqs$_jTLuB%8WvxSPfTu#)vzAXZ6{062_(BQ*+d?Yp>BjwP$g2 zb2H3>{L5w^Ehn2J`2++?8l`Bfof6*E-0!V%IWUihoZFV_0JB)h}p+; zc#P2f7&JNBc}xxGU`_X_==!pZls@^llf>(NgMrKP0-(Au9LIe*n<`Y!9SW0@%_=SM{J4Gba^5^#Zm z`=G`xm&O_-+~*AoSmL$JP;b`!S7wym%hgZ!I;*k!hF+FWrF*JXm z$KBnX)U9KprJ@p=t{TUO*2mk$K{r6D2~JK-Oq21%o+P=T65B!13PVAa*T3FqlijV3 z63|OV9;~pi@SV&VARmcH%_?=YrzjvS@2y=W`svfBk8EutxkSXoa&S1cii!#?cDR%#q|0^CfZCBS) zWNtO{+n#)17hI9XYvY2TzsIq9P-+N=mwX=TvTPfY!_fhL|k0n>(?hmu3qgMG|<=Yf>9IRcpkm%Atm83 z;x8d7Nxlp{3IhOok!f=q8Be?de)QX28fr61K^*FErvn26t8>L|e1PQP($v@RY!BPw z^Ex`zxp{b6Mjb47wm0B%%}q^zZ~<{tfvFZFVjacD&p%1=Ds`DrkBo@8C@3iSL4g6- zYx(;tD8Jn;BB`*EqZ0;@h||O!q{#C|Ost1p9sisL`Dgz5wN{1Tp2da}CYrZy1s)ePw8W8SX6~WUFK&mNOoEO= z7#d&3w8q7*)BUvBSPwwg_**)lg$DD8Ehw1xMPLO3=~LiiEF`bG-v~ z9w3;zw;(n37RZw3FJBJn68~iXwf+>d#xN}}uS#J3+-PWbgiaX>MoVA#8}~oh3ipKy zyzY|8v*>C2t^6J+oz8e^Z^6Fr6ff4(r*l$MQ~fERN{n&694paFVg){?gAMC6-wm4Y zR$<%J)-OTu`NKco_oQF^@ZzX`f$3vWo4&;L_4U7iUNxiB7zE~%GSG(pIotw!3o0t~ z;^N{eS6U@m+1c}8{Miy~jR3mTU0h1w-r$*F$ygVw!@`&=hV0PTL2~Vg#=E`Y3?DK2 zdU|gvtE$M8@J%|qBk;xh^+5maWsyqU%fM{8yF;U1aU8n^gmAzw?8S?Fa&iH**r=%E zrDbK!KTx0f%(cYUR#k6hAD@~t%t1v(MS_*Y^73oqXTtoEG5;-aQraJ&wbK?qbi6mGm7rT3UvdhbLL9V=b z@dBobI*?FC3y|Z#uIIl+ZFl2*Sr@O#$QVN-XJ=jHl~Kuv~U9E7L%}f~OSurte(woyM*wph1VHbskHJ}>-B--EF*Jd$rV(x-h<5XdY zO%<{3v24O}Z?2DrL-%>hZ>?@%Kw;0$&qLvr&o;V%5#rcwa&&Zj{pChd{GP*3)hsc# z1;Y#sTT|}W7+d)L{bry%2g)5&TH~ep0Uo}8e+ZbyD<;;J{ZB~#RXI5#&}fJ`Kq0Mh_>h3Vvi zQ^f?uiyLi>6Fa-Jzl_DE>KK72L?GJBQa3Oe$!= z0IHdg&@T!mNC0Zf(^D-e5LxQj+rFs2UhgMquxZH-`5b*w>`t ze8|?=R91fNi&w6wgMYQWMQd(p>74D(Ax|mD%V&Y5)X>lXBtubIS@Yh#Kj6i`P~e91 z5QfF{BDe-8l`$-5>$VbS);a3lIS(OT5z3$cUwf>|y1tD2t~)sFM)sGpu$KEe{u9vr zzvCDOnxnKeHK+5d<~s`R*CW7==(090wA7cbsbP*A9Q{daxB z&vH<6gHRx5nSL7 zKKfSf2t$ba8mQz3MuuI=V=;MaX^RHK;fEmJLd`8K^uB+3K*YTH*pSE8#*WsP&g zHIgHg{W9Dz1UkpY#*Uph;T{v7Gc)_xIytkzq3Rf+m+v*|3^lELnI3dW!U=z%+MXQH6mw$ zFYN7R55AWB?=yam)2ys%0|WZ3Cr-4CFI@yyA}=q`CnUtub04|KTe|z22p9ybylDQ zk*#xbc6Noz^1qy+8mE5$eiD#DEEap!n`#p$?tJ070+ixmHc(O)ZSmb8zVl&SU)tgR z|187(B=Am9H!u9z;pu7#`M}*xT;7`N=~pZ2XXr9VpkV-cK}We2a3#JK5UK6 zst;lTvq#mNI@b<7mm4ia*eL0=j;m?Xi9XjI`dt)yI3gm#pWNQw z4h*-f(J+L#5KUabb8ca3b3|+bI}$7A^HI#{{{q?vC=qZIGQ}i8)Q}yXD+}xsQy&F| zpqeir&WnqMO}D@@bpdzQ`*Q=B?pak;gT|_mFGX5F^#ir7LY)zQ7y{-98ynl4E94L= zDk=bJST0~J;B#s%{rp+k=kFSF7ZOkq!Ge!}u&%~?Z5A*- zn^q1%09I2|GZjo+>3`RWqs1ONEouq2p4Z4@h94Y1PrsCJx)I?JHc&!qL_dN+OXUO= z?83jG++@j!5V5&%O%@q&e?Gq3x2&yRyDyvHaR_x?ec+c`=i-<+*8R?CQ zS3m(fz-Ng7s-Lhu!IKn^486n`%#?jM(*Sq@QNe*J?ggWiPfSb)TI7UJ*pC_q<4p;R zks&62E+p7(NT$#41xCef@#N&qp3Q=O3gTG?i$*5jbF)5Rjpk5Y;(z=3AU$ zO30zQwv^mlWl)pU@tqytI0;upkeGLG-MYnS;YM5fGh*$8kYK{$8pO6IpF1B;`Y3+Q z<8Rq5+iX@~NFkj^{UNc7U_v3@1xZpuV#2LTXfqa?1h^r6u9Bi6TQ2WSZ2jm+D9gD9 z@#lBP&zw1vZoF~YbS~&Rgo=@XgwLMs_crqLBR~s6Qg-v2Ff{r*^EuY*XueCAw18P& zP>sz*zq()rb~NHbLw?_MR}G}8>DQC&{=17TyNThlJGzj|yy_)&2mW+aQ%A@B9fRCq z47liC)P4)0^+?IX0Z3SLZtse^lTR z;8B`DuK+7c@pw|%pq&QTK4mujKhI{pGle*#7t)%XI7#yNVPnuAbnV{o(Nuz+@UJ>!9hRJO#0Z|JOjKwFqaJ0qesnX%h7}qj7$OrbfLjd zKm8O1{3lAt#BK;~pyvtw0l~@y@Hv#QuIr1V{*;zzA-rAX%muh(5~$jq@o-tYA&2@y z+Q1K7A#65~-Dpx1-1Gtx5yj=*^yyOpm{_QXHh2j09%gUJz393JL~;c!=s+iU2KhLE831 zkW{R$uAckk$rGhkb09g;1|>krY-BBfCu@U1uc38Lb!SWoHAz6urnO-auy_MC7VI-6 zNh}1c%R?3cBI*(dN^?i+gA91o;!6ZbZL%Sa;hgq0H0odvf&p<-o*kPRew#e}=g-#< zl-a&@h1i$0urt4qd%ymf(Q;6sxn2)|X7lIY+0W&ubVjl2y8Xwu)<5lCOtYE+mVt<2__=|Cnb=wI~wGF)A zmKeXZ^w7>rfA~m?5WxmFSZomvBH0}DvMxL#o=P6HKs0dmgkevffdwd8U7*S(;0{`m zhpKvGu3BMTVY>|AI}MvE=ZYK1XWeNvIy%!08r_Jt6#|R0MmBX}~=mVOn#Zuict2hA3mN?^hwc zq7NWpN;rjd3(k)45g~{WK=*7d5d0dpZdhW5*CHP0_(;0V74(8ew+0^sSxP@zub&>2 zA;=J&tKpCNF(AH*df8<#ec0bX8|lG&76`jL^g0`Y?(%0Ij>w%Y|Ao_cJqZzKAXB`J zApE_c5|awNiXkKpQd8O#m@;=j1R<+e(>mia+hVe_Y`!Mu{9Tz{*4GfOkL9xME4YDl z9~_?GM?+xW1A0XS5m`V424GB`khyJWkRRkM$it%mZpnHEf zydCjf59~%O!3pQ3A5xj{lA`F3$H5?g`+3K&~Cv4YGMs6tEl4{9Z-N+fBe)5NGzI)k8Ac&>1t!&>*$zy@5goG=!e$>2g5t^nd)9R(p z#jd10eDlIuPFWeX$lmRQ^LVIOc2d#}@x!?`p;4AWBHf9qDyG8h4Kfs1S@T6b*C^9)EMZ|ts3Npie-}XBe zR)~s-%&aesBQ_pTPS#URBIjN$+Mm{$Ln09XR^&j7WGX;e@#rDAsgDR}pq7IHC2^PBu2VP!^DhcnoVk?oWH2y26QP%koiJejYv<{w zanhz06jfBZ0ZB3ay^W=l#nl$KGj z+3r02uvb&B;+;ER5gZ4kv~G^zMIPMPk49;k-_6R1SBK;bvFjmcgHXV?EI_{RkwD-W071om=st9ityLUVF16?Ijimt2?dxDR1&4-exw(}M`>YuuFq{;BJl`zV t8RcNL%>;)4>VCyAA{PFCkE4zoeq)=OvHrp5!$AL`(DJIc@^6|x`9HbkqC5Zq literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f4619b830eb4d9d1c04de28587e3afdfbe62d506 GIT binary patch literal 13099 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..bc758e5b936a302b2bc4f2a65631f0f9c6db2b07 GIT binary patch literal 13764 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f64fdb72e8ceb8e97944af5717ddf3127bac473a GIT binary patch literal 11892 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5d9512e59ddcb1264321b38e6d73d35561f17753 GIT binary patch literal 12033 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 QClpHlrqYf4>&5~90@jB?a{vGU literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..14839c8ef55abad060d7db03e0b835808828a8cb GIT binary patch literal 12723 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..abf51279a9f56eaa6e3820c4995edeecd0d46cb4 GIT binary patch literal 11009 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..89c900ed07a85bcdbd88c28f425c811728a25c7b GIT binary patch literal 9911 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..34405c6e11bb1e25552064365509fcb0646deefe GIT binary patch literal 12031 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 XEk4eEo#+H>Mq#dKD&<}>zyCh~?>JE$ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8642bed80e78cf55a315de1a3232ffaaa428ed3a GIT binary patch literal 9333 zcmeHt2~bn%w)MfOo#`kD%A}!fv_X)I3}K44VA_j9(};+uv_wE;CX6zK)~iH@#0gLd z(1J1uf}qS0u!W$EjRRvsXd;9$7#TuHNZvlaSO5Qp`d_{O-CMU_y}GI5q&RhQa=!iT zz4lsb=f;n=giY&rtVa-J)6pNSenOBHu?QkJv~~@gG3;V}gg0EU^{HS7e~;j>^Fi*& z@$-GfM8{(c6!M!E(%J1+(Y2artl^nCx%1-kx0o_d}0jCr`px_}>? zNeCi;9{rQc!{>S-i01H7t3xNk>C^1!0LS_CMS_;tR*d>t^UImV&!;%4!68v!_G2 z0zpg|t9Bv>-Tra-*D)~VMao?(EGsh{jGAp98?1{|P*fa=#32p#uS<0XBWLQyJ`^}9 zDCI`%JBGw;_GgGZPB=P_L~chKJfD$x9VX(b=d*Q*wO_|(9v1T1n#1y1KSo4EWH_xv zRFhItQu3ZWX{n>;{s5oVSnjQ;tv!RRIQYv^(X@+~bVvo+d49#$$WHyg=8!&HhiopM zNhEx(TlM*(Sd9qp2;?ev zZq^459B5=!k%+A+`}8lozL{50kYEwH@WPDz>iQ;qKUU?v171J*u&WIxCMUBQ49g6% zRK%iRzkdBxO{lN=r-qd!z60fz^W84Q&mZ3iKE0CHD1Nm9d7Y4@(^?v(H+&~i75As> z@*3(1+xEp%DBa!Nu&wcX9da5Iw;Na*k*9h~N?Mn=)O=TtM#!pO4upAkOuC8h7 zEg^Cj2K+nQx0?oEj9Q*_rD-gW5eQ{PXl~@?QAS5c_vq=#%;S2C7zXONQSqYypL*gk zMk?~@+WW3z&b6Vx)UOC1YWStMHiGoNyL*%wpOBDUUT(BQMP-1UQ&LjWE}>AWtE-J> z2}wH?8k8m-&c5Q}4=m$nC9*3`-NRYr+Wb?(Q`MCr+M(jF^cL z*4#7nK50Jp`(b^LHjP2gke92K8lQJss^Fyp8h(MxrQJDFuvw?-W1?YkFKS?M$J0a@%w+e|)^>dOr=L~L!}rH045-KC+NNif zmCY+_$RQ0kMj+(Mf;gJb{r%^^->71wb0kq2vq4EWFWJ9%&`M%Q;>WJpPtKf!(EbWfPiTc)c5bbjLQ{GJ2_T ztDQLpzdUY7e0gPcgqbZ8%YC?WMF3=xpxed2iH;*><>&8xQcysg?k}ryor4@Aq!mPD zA4!ULZ%t{M>U&P?E_CiHcC9~EcFA$$jsts)Jw=~K^hu*_mHg_-VRjfN3H=(pl#6GE z)r;BOm?#8kb~qHZdFVz94|#hlYV*#6&7W|wt3Rn9L=fsexwXhm<-hCUUWe!$f~eYZ zw$naFuKU=vV8(=Z*HcBv3gnw3|LYDpKd%T73^#RE_;dDXYbV^&BrustDl`-FNK0~8 zJz0jHe0lY&<_Ct}mPVcf<-UTa{?XdsefM3KONF0))Z!;J2MB5_kcM?=sx-wbcK!bQ z*U*2G_PLZd-rRLKtEfm9D)}8>vPs3Lu`-bB_V&@yl90*nyy9Zo($Z46RKz2Z&P9wQ zSAM*0lLaU%Sme^0p=6aRI5ClTlatl{YREfPdf}**)frN|Vb^1u)Wr(2xT3T6-vM2l z7)SqiKo`M_*zc=0Z{GX=19vP56n6N>TZG|G=~O4W`VRBiHf3DUg~HQi6BO^hdNTP1 zysG37g$G+L5l)PF+9Y`F$2q8;_VCUOi|qXTe75g{2M?$wWcXJg70)!Qg|RSBX9BGy z6HfK<1x3~0F_x$Oo1t0*d&}C=jP+nYf-0UodD0mX4E4kT6jgf&%mIrns{P!uI4EQ& zefaPJ5Fl}pY0S7K#so%sbkMiAx3^afbflZndTz@h)ccV54O-&>3BeQZ_lC|4vOS`J zIM_Qo_wkLAlamQ_PBwuy2F(l_-LrPO+{!hLr z(5QN;|Am)+=u~gz+*=!N zf$Q?6!m~9-fI(7Cb+SYdrHVxw0v*1VGl5IOC!bchb!kgPD__Bgp_XQ3{@R~Zw z(pfaKsbYZ~qH4EVfQ!}oE_3A%gwMFxp@{t?mC9ym8WVBFHu;`Z_Nt&%`4Q?tXhD#(3qhJ!~>ej0jN;?e%#RmU7r!FWaOtcMSGjdrA~xRm?c*md~2)!DOWp;U9(A{8Sa3f!;h(a}3@(75eg zT{Y(C=LM44PO=aGu)KwWoyGi#xrq-2+43uqoippdMU-?-eQnGNIE?1+n$4=pHYqwc ziq6(B>x6>?d`S(zTDz!nIR2iI@9B-o`*+4HzS3Y`Q#z*%%Z zRtMwM<5nOyomOLFzuK%yX-_jI`1<<#6;@W7T=MqL2KvSJMVVL|jRKt0+n^rcpr~HD zgx;JEBr~&;x-1qFY;0`ORFH!Y_fn83@pJ_j*h$xO&rTyQkkrJSoSe`KuS=Jf8bz`> zJDEbdSs2yDuWBT(Ti<`M7D(c2HeinB$Snl<=z3_?&jgeTvO;>!1_C!G*xPs6`x-#& zzv$=J!4BoK`d${SLQEFcW0A z<|lgyK&Wa4P;PZ!15@J1u4YLli|Z|cK30V<^m&ph&edIRLYYr$y~Mp)Z6k6pBLt)< z_2l8hhmYOczw7!Ym2H|w5-Ha4;3a zjGkO0udeFdUHFC_2IzCoGWzmHb#s&IkjZUzm*?XJ+~(#qe@0(doE%!-TVu6P7E(YE z-ZKmHgT}M_`o`^BLPA2&5((w`_deSNbWQ2bx5wk3x>OvAj*foc)6+cLiPykjG@?Eo zLOTV+$R;s5!uhnPFKlNAZ1RZI@kB1ccTt~^)5Bm68*)l3z=k$v`SnO#R zm+U7`zRNjwe~W=f+hVT-O;@xG<|jT>l_cm^??E-do7=mmEtv+L=3CK9>2W1nbl`Y& zyE6{|Hy`h&rjnVOX0`v8SPiKjqmyn%P3DoFWxLjIICSWYoO!^|L7%}|9AFoT*woZy z@8Y78l$12>_pZ0M*CWOXP?vq4N3a5&2EbxZ4{F&vJqYwvdeO_vi?kBia{z$wKT(dC zq;VQC%I|XRXn@#i3pKx>qyb+1la7w_+o@}io%MiAX8k~Qx&G2oe{5^%B9AQPz3NE& zH|h{YurKP60Hy!`QimTTwBecg9#@*HY^jG3rFRgX5wu_oGaIZfeT7EFhTFGqD}(GV zbgj2E?(Xm3G1*g017;Lj0o>2a0FQNJSBLnHk`>5$^^zd-rLk-jOTyaZ5QKhk{qXvq zt*rhwI3?L7l`a*_Ov`=xwiGxOQxC^&9vRdK@At~J22hRJtbqJ_Rq+@?RWmahygd2z zo`I+B0YgJ;$Ul@p2@}-KLZ>Lh!}xQ*s~TQ9q2p4n;Lb}M+P!V^8 zF}89<9bx_H98{d#q#cCV=d2&L0Dh!u_SYCw|M={GF!oj}#wIA~QK80qGZU7@V3Oz^o?FYMzk-~ng<+oXv% z%8KBn2MXC?&9`^k43Fn#QlW2K1Ko;R{3EV;@)@+w8fcxXH*9O%WX$?{tCnpdY6Zc? zS>8QGfirc&ax+;`4L=@O6gKC0+P0NzHc~XCpW*`lxTeI+vQEGb%R9-o>7G#rhC|gZ zuKkm4<IsQqDgo68~^WvgL>W8kf_H z9=Ab-sfR7}8uR73cX4bjq(KSoB!45(m_(suWo4nxE0=&@vY(sm(PPX#)@z!s;HaZ* z8k~zLwQrGwaoYC)jY55D;Yxka4*JDQmr#=xwQu>UsG!6&HIZw7#a()zcdFdSxh=!O z4CIC)IDiR`1t*(+J#;mQ=kAI5(*zY-SLZi*Desf!!R+qS4C#Y-2;@v#K=2 zx6D-aU{fJm2;a5*BvreJ#I90oj6~!RlhA)XJUI#z0zYtDO{QPG%gW2!lM%hp7p1pu z7^DNGpqOC_dz%fX7x?V7ncabR*H7cz$KO7-cXU*Q){6?DD80C?vB)>;pstd{GxhkB z#pl#&LZ?xgYYpv}?|=BPrDU>R>TQm)_4BW;_m+7(NjS1)*F%k~uFccmzJ0spj+PyD z{9SIdihnJ}crcuJCbZ8z5Y+W(q}NCLmr)xxUW24UosVEXUG{D&+3DO3NEq!SNjs8f z9{>J}?IRNZBDfdY`ad_svYH)yISh;X4a0egZ%HlCkA{a{UIpLvo)K9T-{>B2*HZH7 zl~2pvy?xs~>9>+oQapg@1eQayXD!n#7EW!$^nrs_x{&tux*>pshdga7N%*YA(v`sv%?8`9++ETzdvnXys~;jDL7Kbt))7V08r1p zi|dRg!6`X;@?=W%h_>q+K1jGwq4D|O{-T2ossNAkLiEy{s8?Al<9iDpa4c|P)7db` z=>yxDo}8NMnVT7N*(h>h3LWr-$zNiY=#3^J``pg;`nH$gziUK?7%EL?e9=q9CDc zJYqg~l17<=Wtx2}^V_4k;%0Ve>%NK$kisnh=69AsRrwpiV^4uU-VT06x=yQf(JczR z>cmWxAI zzeE9x9jFW>mP3{J%na5!11N{S+GKnIDy0Q{qvU0&upVD7yKVBvx`WgfsH4n~@wdAp zKfU~lM1=10`ttllG8;nfoU$xv3jgrLu?hz{>71&2wiMLDC=;zuNX~hR9uqHmV^^w2 z7PVFt%jVX%8`q24eL#~E>ZF;Hk6IdHsyVhaPW|#&p75o>ag4_r>&ku(2HlH@hnb)+ zjL;J5amcmxB_+>5F0{gf!*1B)H;V+$nGTlK{lZL{D6^^rIH(VJaLy1V)VC_Etu^=d z^1?j{i3+|plb@T>k_7dzFM%=z-MIrIQSQfHDk+E}RAX&-NVcpcjG$Ev6EbF#k}F*W zjbWm)KDOLCzl@J=wc2{wKk6T}(fuQAZu7%;hQ1FU$&tEpD%G?y|&Eh_*=335H}uj{wb4A|%Vg{HEaZf;NNB#)e;3 z%Ga=~co`~S3El9_i1^mHo5fPqtDAePWjP8~j1npznM`K*{0ArQ1Mea)k_-?Mv-R6! z6ttL7HUt*w@`>j6k8PBk+-!e#{R@c?yX!YQ?_g)~rB6YXl$q5(dh`wUw+QE7sSCJ~ z7VY9h80hWqE;=hN@jrl-23Qxvx_j!%8yl;mOkTyv&Hv z`+;wdYBd4$aHpPkQcFuq!TvHCCI$?f^z-hbJQbuj3#@!}UaM^EcZSb^>3lOZ+a2I* zd(kgXw-ZKG?2Mk>CD&Y1EQ8cl$bQ1>M50oP{Rxz zB;#eXc-e`8peThUoH3YRi|m;gB~Q(Q8$=82cjhojn0z&@~2P#>}0HcTM8E8 z7n3d%FQYgG4V`+^j0@{?PX*ChhOe=XtCmT{T$pCgs~@s7#IMMC~=s=eXh?e*-vK=Ko(EMppdI@^_d8!S6h%o!%=PLk! f|8suCBGvHe!EIAosrx+wucOwsRz=_ceC3}2BX5T4 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5fb60460a6fe5d67dd9a16856e4c7da19d265688 GIT binary patch literal 11954 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cae5b86c273ce344aca523f80081dff81ff2fd86 GIT binary patch literal 8214 zcmeHMc~DbnzP*U8-R*)A1!M^}jv}%(BAY;<1w=q#1eHyoNd#P2jOOOp$wUzVDp#JLlZk zzgn4Y`(E;U1VOf$oiMgRkPT4?A~f*rCU{4qz4tTx(D661_qX-+@DFmk>W)~t`Csw! z_4m4n-y7(D)$gLOkGhJcin`L?3;zCB{En)sdjI_oRD7>`sv-)Q9jD)|h5b6c$BvGWow z7rG3x4}TZ%==mG-kUfg-%@+c?e@A8t|K z0@;9^KmPxRuht;{S*P&4hbbAGxW2kXzxjhvc5ZHNCmTWJf5_W4T{mZyfYm>`vd}W; zco$idSe$0bR#sLvVTBRiZcYzHwK-vrEk`Zx7!tA7=*HIAn5+!LJ9qAwWNt#V_e@Ss zo^o<>;^}1W6XL0b&y@SRyXPSrqg)P*P<)4$8?_L_=8bz1LytdmFpt+q=s}CJd{UX| zgP6tMFv~JiKp!54*SRaRM9*(6;8dEhzUg(SpO%`|SwDJ(2}y53>1ZtKPxY>H>UlFv#=l+tQWQFg)$ z`0Hw6iyS$tEyz1{ST)0-L(0mD_wU~qDWSlQj(;d3tgkGnd3QgHiLtNnusnJ9#~&o6 zqzJE*74-EFA%^6!4m*Su%ubZh5A{zEo2pjxY)$X14e~WM=5&_rJF2ToSeYNYzM3R! zfNM^Yk#eH=C^M^oblGh#LUn7iEriMLN+N%G#MIW-wwJWj$E|K7sYJ}@$eQ^1`6Z{O z(%(Has@2P{sX2N-EsY%ZCMhXtbaeD!uaB?q^b@WSQe&C5?ZrKHPceSTAT5@-Jd{eW zBC-cn1+%K`1oc+louumU<=Lv$saop~F$iMPUf{ZcA7T`}J<(OL;7ZnFg{xn>bZPL9 zTl?C(ySs;Quzd9Jwt>yCIAY%3-q*cZR8pUw2J)gX)e@n?X}C-$-=;^Wa`22?vr}i! zilu4!s&H79m+d%xwOZrj<4Iu&adB~viitERk58?#$J_h6+0BXZD4(2z z`gX%lvXoEN504)|#`o8Sl%0R|n}nv9{pqu3n}7XgOZJl|t@2SqQMl5!O#_i@^hnw^ zt==7*MX(8&eaC5@2CH2cyu8rgjg4uq?GbBk$w`mfEKKAHbGue6TbZf2Ds- zu9sB4yyII0G1!L)A&39n4!2E^{;=u#Q#Lj`J%;z8{sx3ePqbMl#^O zz@6YG-zOaR_j^ublFHfm8yYXFZlQ*&CbqB9QD7Dx@u=dQvqP{g51W6Ai9Yxv<1Z%-VckJ*z&%Mtv)aSZ160n0cb9{nSAv69C~rS39Kl8$9EnJRWd zPL7V*`T4_D^dh)Dm_1Wi;HJ~Um||4J=xBRRdwctrPXpmP>q7k8SWld5@zeeFr{I2R z-@ycR&8pu}1wwUK$Il}{Mpv^Ru4vy7K?(;B#Cv9j9Qa?%s9%IP4=TDYn;+58Fo8jH zGF@9OGi3N4Z&18J0)tVsdy){bzG6Zmk^KGrX$gDO2Omab56!+ukUn(6!3J7aMSev# z5zCFpmC!%N^`j8vTSFv@gC5@epFe1Je93_Q54IdP(d(#$3sU|H)^LF{zD*0J))uk2tkcv{89 zsXi$fJ9Iq{6B84#b%9+75}Jlv#lE<4;|5BvwMiD=d+VOVxieHMFiaclYBq?*@Y^(T zixj0;7}_T8?(RzVPxpeW4BsGujCQPeA-J`fmlzE3!x_5(2UjrUYm2^uKx5#)dwMmWOff@a3Kx=5fNCw#J+(I@|R4Oi}31a!6E%Q5H#LFM`ky z{5yKQFP^r;Q+Q^TC5U))UqkUY87s4Y|9&n_)Y`u*%O*~Dx=#IgqU3JRbmH-oSvdWE zh&h8>At+sgeZU^|Kd3_G4T3fJpti&U>%<+nCepl*thW>NJsve9sLX*O(brQz4BHMV zFCu;J!*A}Xf%79wStv9Ki|FkL>Lr?<3!ALOV7TIuT=7$YY->HP@wv$L1$`YfUX24E ztj{k^^|kl*N_P}ks}_U0HVvh^Vj)TCPqDu?d*}B=0WB~XI7=UD?P{J*+o!0yV&N0l zOP)V}?liIy8Qt!%X`u8{SGjvTlXUjMmwj~F1_Bz-H)=Y=k7p$0S_4X62v`M`M5bqN`|gGL&3 zq=+dy?m}aXbk^Eud6Y1*r4b87YN7L^RZ}$+aau*pS6h9H^^VZ9jKcj^Lzfw2LC^O<6WBvfb@f$inb(JG8&2>RVoi(X1W0xJ?pS} zfI!w4Lq(@{szxzzs&|jLYdG=EUA2ANrM3UcX-6PsGli<~O>tGr!)a{PqHj^D+KUbO zd`m+6%Fp2wPOL+V7eIc|+Gtk`3?@81Nu~@eMWZ8lY&)EdWGcx_p@cdH(4YG#Ix7hbq@DK1{62Cb_GW92gsE?zj#X%noqu{Rs=eyW3Fs{Q@@U4l6SL5Cv# z*ZzfcMt?t+(jR(R$+_kTAKq3+Z>VbgaSkf4&mnRwe1SqRntD^-u6t@>27` zLeHZ^H{(_sJE$doC@ai=UD+AdPojiy%eG#jZ&P-tKO>+y2 z4(PCK%oR!;D-UG^^@kK@XUipmfBW$9qij%$#${$MxQ=-qn=Fp?120$r$y#htFc`8B zKWA#(4gXVEu6Ve#BP#tFOR&ze2Fh4j8?5`UaLJMB!>t)p-Ynw&#S<4wLGxYnk=`WoNg$s1}t}}h}elWTry%bF}S8xvOavw|5of<9I zyvWFHbc8Qh^Z7Rm28^VRslM6{u&HVMscHVyUHT<&Z%b6nCBdmdS!cd^yYvb4g}KEn zcCfW)&v!VrRVPP?1;cf%wuq~oEN$S2t}Id-GB$0OzKbQzwMMV~t zmX>1!zh4_`5_dfb+Y9^C2n$Z0OP@{j4d0h2qx*a&-q2iuv_9dgS_}=K{=ziNpv1KS zH`!GoKiONYPMW;zsyn3wanuYv+E{suiiK+3%&|}a3FGst+Z~<&NVw*7{gO-QRP~6B zaW3FV4LoHYQ0TOsU8)atdHDVN_sM`BhIQmhhwW-K?V>eu)utahP;iSW;E3()b+3Lt zAqmB54QQN=xj^uehw`Wwl`81d^Pt2PV>&uHb-egR*qZk;c zE}sRxNV5v%L)Q^8sx=#Pf^5L&naN(u{Ls@@4GceQdH2VMEg~y<7ODB)i5}SHqk69D zY0DXEUu{r9%n8+owOO-BnK-r`$!dAv5^JeJu-@nh-HT(5|3!0!JV>q$R&X1I_4Vty z!@Pm-T?qt&8=&6B0&@$zL5hv}7z`TzyE9Z#XN2430C<$cNr3monSjqhpqs&`kG1@j2|`<@etTyp#K{R}NxX$> z{Sh>?V=!|gZC_IT{?v0jDXfSvR9R$K!#>Y5#9ONsZ1auH%*;Lo!hP3qo29t?)oB5P z&d@@+{seNpJ;lcvGy?p}bDus*w3UmAQH|intNHX+X#?okEw22l#ZD9zR0>7070;d> z!L5&3i~FFZ8=Z$G^;0YAUA_8}? zsVq{!=QWB`cToBQd+7X{d8<~P(AzqG!!+0R53VMjo}R^kG~7a=byEQxV`3x@pFhC? z&{5|yrfJYT54P$~C&a5#J6$m}1$jhAA&WDUqvru70iQI^0eIxe0*Ao}{pnCQ2KqEqt_I2GhmvVetd? zW?l$$M{~##xzmNk#c%H1?XY*%9)X=@4h6zihl8FaKu04x#~&IR!eClkT*l95**>XX z?AC_I5?wmioc;SY%5JD<9#LH?`)J`6&W6c0mGW{HTV zVGvL;tk%`fe^gC8sm+Ey+}TA^H>In>lMWvy@Yj~P%WaW3u=viMK`=0zbIooKHf~W( zfaeLp`3;k2^JZ(HNIqXS zgTGKphdC74yGjO8ZH4%T&OY$`2R3b$*a5afeoZnRXSJx~{_ep~L>R?Qb`2{Zf`K1{ zH>7+Ha>C%MgXqF5KBDD!N~l+X*lvQ*llPA(M9f^1rGZ5}!zmkmneK0vZ4S literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..dcdeb496001ddf0968e6c6f95c24d61b3b1ab53a GIT binary patch literal 13098 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 LRxVPydH??b-xfr_ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b09ce8fb14c596acf19d936497a7cfdb02558b43 GIT binary patch literal 9266 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 OPMVk-7yseh)qewd8$Ol* literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0fe3c407730999438178b108910a419bebb36776 GIT binary patch literal 13100 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..728202cb3510b70007ee7a8737f2d59d3e944261 GIT binary patch literal 12042 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e6c2bcb6af2ff1603fa9763cf4e997896d4fa828 GIT binary patch literal 11949 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 Csq+E= literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..948d8e6e53a7a5caa61411696953f4be87f2cea9 GIT binary patch literal 14189 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 W=i75*Sim$zq0pC=E@jH!^7}W29aw|_ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4d462d9e12b37fb83e6c37705cbca77a51af35f2 GIT binary patch literal 8216 zcmeHMcTiLLzCXyWt_osQ1gVOJMT9KUq`OxTMT&qfAcP2rfHaZNtLq}2SWr+(lxCqx z4N_gCxKbj$*GR9SBoG35-{a1`vv=mbd2i7}Vvc5L=E`ePL zf^c8FplO64+kz2YN-Idqo;qw#Al!CW#$uiS@d9brJ9b#gYUL_?$j;jr%-j)##|nLLyw-T-fFPnF z7d3yr;+;4*5b)s1n9mx`(F*?{4)>iE-{)Ti+JXfNtsiiQ3;gW{e}jFGM#|}(9g6$#$2!f+hI(tkM6GVhlwMgIX= zG0Z`>AvezduOBif+lNKBMnunFym&FrnYBg>+0>2^3cr8G9KN|d@_Fb2biBN)yORaL#)q-t#0SPhNVMpFL}Cq;1!D%6ZOCD;sA2FUo)XT|h) zBVS~7BGt}%os^P_e*XM9Pd2%zsP^sEOzVMC4;km)!mu#Y3SST1_@9ozU#&mKN~o!w zM9vbY+DwokZ)!BZnlB+SXlq@@t~s&0z|KHZ(`l$uO<6_7hPg5ovJoSyp9Hz&3ine<@J@_yhEP$t;3n7M4<^7Ziq zLu2Fp+C-7)&dyG0hJ%BH(!AgHArnJG%#$Zia0*E9;E4ppe!J?PzMSLX^|=M#Zt}=Tr&c6|e9P69 z`1b8vdq>Barwq>IjiLn--KN!VwvqwRL%xW6FenRyhZ7hu-;2Bd74-aa?qn9gAA!~X0N5uYk#feMUus&~v4c|Au9&La`FcT4POfHgfKmPV`F2C_;zG6FhCg*6c8BgbueJNJds>rG$kn3-{Vo|2WB$F;e`K=FQTJ^LpX5Bei3p?ir7g> z$ucJdsn8?&?_7(-v#iUR)0wzVm&)~Vez=}fX8Ff%IXb5PiM0c(tE(7H-e2%$a|6z^ zO`P-grw2#eXtjJ^W`c6|m$^jM%ipQH4wlz1)I=SU9eo)pa*}R}AOq3~2&;t{*gi%N=HRp*`}`#D&e-Qs zuJ4e`#{!nl9Y&DEc;q|eQ`EorK^NF6R5b9+3H?NVU`syQYxV#P=|K|v~~Y`%1D${;W*Qh4=fb9mvfWf!iyu*fL_hOt<}bCS9y8Xxg$^(-zN^#mKUw`vPF}t?R>C+! z<}}FHWPu67&IN2^J9F`(p**57rKP3ae2pJa&E%JtxOqHGJ;<22>R`TYLke*5yN=FI&t)$J zxy@XiLRjsu)OmBumvo#4O6A8XBvF{_=%CH6pv@;lGGVF}m|N1xk1?+n-L?(Y^$n2^ zVPQ*4OC`gp z*O{5iJFg=zC^H2d-oqd6u1%X%32ZPHP!)^0 zhi5bYtg6UB8pV>sqS(pIe_WOn4mP^x)5D`w=1eXzNyW?aJ>}t1?Ua`9Z7{h11*pC*pZ@}o106>~@ zw!0hf<3?<0X~BSn`_qp_BC4LVrl+nI{+OYkB*2IFchl4a4f}_t1!QJs0vOjz>djzL zU|@NR0UPro!pLx8gV;9(#cz$_tzim9XU?F*4vwpcg@_q%;I~eKb4Fsl8GwW$&;miAV)48cDYDK>}YYH zOJu!hkZR!KJ<%GUiKH%D_Fr71Y2SNyJ0LT0&?H}93slA6Z3qPMkhBoS zD!AQRGrJ^S_$l+BDw_W`eq^$Z>4c~Q17a|4s~sj@W_a-IEV?V(Q&Tg`G*67VI>QIr ziLRjR&Bm}$5#QIL;@=~aW&sL_u};;BI_Gw-uqToxb)TO|`dt@8f@RN<0(d~;>cs(Y zr;q-7AKL6V7uP39M6-gMwLr3{9ZdEf4VT_9)^Y2?dDXr)OdZWCXpR6oRu7)tFwqK3 z(Pf~qkD)yE$Kx#aNt)!S&TnnZmtjTx7k~Hu`cT_?rZZc{{>zJa8JqJ$N_W!!+zl|y zFUlGdm1J)=C;IdUNThoY-`z3Vtg;X_lT#)wCbl(--4c77nMn;7PYx4wDS0Wb4V!3) zV(5?A-Xh882?^g~R}nBS1R+Ul@N?q+7TVg{g=Df<4}$n6oZ@^35+#OyN?DePi3uNF znDSS3nn?suA89~XSEc^q^CH#uAs@7#+9I9p?V6gJpf7Q&PoF-muB5(s{W=W7y0jp2 z*7dP1k_@I64O0mU&L^{q$mIIYZ1dEdoSd-790;LGeM4dxb-jcB%T3jDxH8XL$=vdN zAMbNVf-$X2(TW@;ZcP$LACp)&65(~U)!ZO8v^wa*2L;gX16^>yyyAVQ($}i_DleA| zba(S(FsN$EJ9gFxd-Y>bAvbrekOz2D-ANl3PW>e^+qw8JXFY@+(S#kz%&k;5(h={+ z8yW3m^t&7MyHnKE&hR2CBa}?1_uYFWJPAY$>uSa7QWynIQp1x~saCScN-T`wj z(!J0uMR@Pnzhr29Qhck4IK7}7EDKkx)D$9<0{(IS^sf$ihD8ygo_kA}du484#d$ZoY6dI>3i zhf}UoE^=NI-H878?$o6QEb))W;`N+7s(VowB)C?-?@k5OC1i0fHsH7Ju)tWF^m}yS zTKfBi;w*g~035V)qFgU0u3ouP1ADpoGOqvSt25|z93FUcY>ait9tq~M-9T|+@mE~r zKQM|wQHFZI1=+3k(rqpbA%@-9%iLYPjMi2`yQeATeohtE{!#`T{XcyfmrR`pIZR@bpSI})MYu7 zU+KTTMA%xNcol2J?4blcbt#?7AT%pYq(Smd+bvykIAB6$NNJun-kg*mmhvuIP*EBl z^XD8BeSBw>;*4}ma2{80+1p>>=H`9_+rTZVt~vnLV+u@s$R?X1#2TJsbe&oDPn?K_ zyhErL_9B?6+#Ws)<)0oTEPaXeLddv;-@oTegXxsJ^YzmeJU*z}46IucV55~v)Ufn! zl<%^540*x0oBjLp^u1+m&E6u%E{FAkmyEr^iTNn}3{tg;`shM1A;~>QPq$fpW0nA& zNo*^dZKdiqTC>8#UgVi-QXJCV!6TwuwX9P0xGq{SF4=GX{R*V3j3H+BkPcMIN+Uef zSff(bQbSvk*I<9+8l5rcJ%f>pMO7*EC-ZS z7{uNpKomhA2QUuMrG&^gt5&QgUYg>&tLVKrTzGq=dIenatA#*DnFG9PszqB=Pa+*X zRYHRlISrQS+lRpKE2EKE*k6ho!@??BmQwGdzuu;?*(L`DwHmukB7G&>H6ZgHv@6B! zQ1lf-U@C<4RtT_NX>tu*{;eR(vO*cyBE11yrCI@D5iY<|=drkfK528-&R9pH0vy5= zocSfpLrZ^JE&9Ffa52DOty1LvM*tBL`Uu=wCXog;jx~F4dtkf-?jS8cKflm(uD80k zB~`l(2(=B$#yBG;TO*1DKBYPUCeRqBu@?-yRd!L4Jh#x9#Wam5lPuGR>a=i!11>>} zyPC4h3R+=1{68<}n&yq3t9q!d>C2+k8?5uMWDN#3<2*X9Isi^^fnTst%IL-a^zydf zNOcGj5v?_chwR;0M3+x0$K3**GwfL zuc8d+m|M{~RvCv6^cf)y1#Zku&dx@`^L(8!p`*qmX8XmeL2kwVy=7htF_1N&z%KK2 zw(#t+l?i06g@wgy1O;Z{tJI|{R$5D_F)E{=PHWvmN9~?g-fq@=cKSGw*DmtR^z>-7 z;$Rq51PgKMPb(d2!Z2=4@?AAB>qo_`p{dRTJ&BjK)7RAWpSpyPfDBX%CQ%f>{@KJD zR)jWRwvfCM59Jr_8O1;2wjY{h2$NrUHodm7b^n5L@ja)=~()UxE#!MY?Uwk%MM)FD-mcOjU$vuFvYgZ(fD!uMUk2ZKN%N zKeLS#6BdT1Kgju`enT6UQ3CQO=SydDO1?h2#Nz!q(G#7Sa07oaXep?qttrwj$E2hr zv`9ef3xl!wt$CXA2U)u zo36jAGzKRZ3AwQb(66x)dAXSA*rNT$>2mn&__Z^I{F}&^R+fLnpuf61L(> zNd>T`y|Z)l&iyA67iGrA#+nNnS7WLq@1~&rUn5CFV{4da>oBTNfWK(edJh69;uT#7 zcZw?B`1BxN#mi;H4b7|YJt~loy2jG;sL#~=Jkd9!Z44evCaU8h0bTRXr>Mn*?PMD4b&_cAR)T8uj)W1Hqjk!u7uas)vckN1njHrKVv== zv9VCa{*583bms0_H1K<}Zgv>DWcZ`NlXyblCm`tJJAs%yjd46j`iAP;z&>pnZ3 z-q3eAMiJKE+=ekfAOm#Aui#|5GBfe~vOcSCJazz-5$&+ik^NTO0{Uf>ea4^R1@zGh z8n|z*X^7PnuO8s5o1`p%LN|Ud1jRE`)cahA_7&W0iXgGRiiSf%YVYim%KC07F*)Huqn}HNq)DTgzxSP|bvP zit4&G?uyoZGFH{Uq510D>{}38w8T|AKiuWC`Qy=XHxS|4_BY08b5HBGAttTNpzQJO zrVNa}4FEjPj*?8IH?__@NsBeg3q6cQjTC;P2p@^=T$;(9VS+@Rk{2ZGdZ6y^&_aCj`)>VH`FFZxKVU)XY8M{$V%p~B=4imcU~*i(I48Oz;^N2@CTK}KXrGGL zd=yl9@p2AEthIWL7;uTNx@}rQl_n7V#!DZd+oB!W`+p~iur$h(uAh7wd+{;?|1N6j LYv%mz`mg^1x}t|l literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4838ca5b7754aea7dcea489eed1818ef52fccd47 GIT binary patch literal 13078 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..955a7c09a38b4102ad6b7cd2a417f53a5ad3d5c9 GIT binary patch literal 10981 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 ZR+1kR3psvx1MV4tRMEJWf5rU4{{hUp=7|6R literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..bcd454055be8efb089293b5af03abaf525a59229 GIT binary patch literal 11193 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 AxBvhE literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.0.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..60e72713dfd3b343d551de8af30e5d004515cc1c GIT binary patch literal 12031 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e042056522e20f07d1c34b0cdd0e332012267021 GIT binary patch literal 8644 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..18aa9655c5fcbbebd3665ed6a3bd204e0141b26f GIT binary patch literal 13081 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 j5`ao)HXjwg~& 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9c10667fbc24bde3e4e9593c904e78dd935d2a67 GIT binary patch literal 12023 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 We(`HrJItG-Q0N<~*R!sgJpMQEt^Ote literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..053467cb2c64dfa5269e8de2f632134008e2f300 GIT binary patch literal 9644 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..be0fa15a7b18461101baa0704232f4e9fb2d1814 GIT binary patch literal 13756 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%0AoIOj9~M!YDmW7& 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 F{{S4y(AEF| literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0f9a00be973ced17ac8586c5e52a7345e32b0dc9 GIT binary patch literal 13102 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 TuMUIoL!qx~DrH~3?f-uOmAh6q literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2fcc9f6a24ad50c0b027cfa7389f5eb9eae2ded7 GIT binary patch literal 9332 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 bQiK&?ydmqR?N0ax5OU~%tyRHyr!N0HhMz=< literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..67bcc8689a52fd553f4f4edd1a74e002b415c709 GIT binary patch literal 12736 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 z%0DXCiinE?0caE&4Tt-NNHSxwTGa@c`OLfduPnupHSR(UM;`7LYeK9`;^IT%H`u)E z68yk|gIDL1CXZSzJwP~7SC=Vc%1*U8mavef?c#*E(9k2i8kA}Fup!8dS^)LQ!jFdd z--G-28>5csdw$p|n~{<-SjWCw-SW3I^BP-F#Tr9dcN9Rtfdw}NffBi|rQNPX3m9Zq z^3Avn%!+O_;%!L2j|K9$iEBQ;>L#LzeL*w}BuEQ!!ARBB62Y5ZYeT|3*ijqKpa$Z6 zCo-{~W8e0F`utf0iiWsK!AV0%$!&Hwp;B%X^}T6vmn85cYu_CRUHYGq=$}XP^L_5{8tQV!FasG7PsVjH>1q%Va@&Et; literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cb4c680289b0a7e48a7870976beeda76a4213263 GIT binary patch literal 8641 zcmeHMdo+}5+kd38J4#YQrr4z-vdJOF)Q;5KK~hOhMH+G(-HyAL3puEzke{2TgBZyjJ6E#Vky+%;%5|5kaIc zpg$5BxF>E1vPJW->Hbqe$>W`5pVnE@t4Zs%hfe;qc)R>!Rl^6?4|ZC9JU_Fp^>IPU z^mAfhMzW7#jFI{#`-b=e!$dA+ch z2VU%!2wL71JeZP^o7*rakG%4}FgMXj5b*~GLvNI=iFk6p?b!vH$vWAL)KrzmW&|NM zF_{}bfBsy`VeeQQ@ubHZ$IZ#eSQCNx#2@C5+q#K*6p_sr7Og=xYyV${Yg1UHJd58u zH-%jk{G7;q!B>`uSk%9KGqTTV@i&I$I}z(#yN!GH?6GukP}aHhKC(VZf9~bDD#duM znVA{ZtG~Zr(qI>|FMQomB-fE{axW>#dHCbweE-pwL_N=Q@9*tV=T3BXjGD;F$>rl4 z@3Y2pin|nEMM)r2Y3CRD@TdB<$)b7J%a@~{T0N=GJe}qA?&g;Kkl7K3xg9%qMr%7) z_j#Q@eOl5$8-0f+0cgqo}CJVJ?(YKIb&go3ymI-_+_z zCY1?BveZb)xw*MRV`F0kNyMN79-ru@{{FLWBxMAVe7Jeh*W#uRAJz~D8)Dnr z+Y=3mmyEe>&e|a}L%acfI&;({W`kDTH7V%qP4ICp zPfJs+zOk|SiStTjV*}07zFR@#FIq!7)3dWRYHMqcyPZKI!qg+xBOX6~tW6TkxO#fl z=lBN(n!CHZ>+0&x49hbp7>cz+@YV(+PMJtS7U{WhVvRMTs)7cgt1Q^k+Iqw6>}b$RYGWjP07g2b%lD{1u$K--9A1t@afqX#;=m;R&!`{?ooa4vg(Fjb@!~~3fnCj#IuJ14E>~4Wujt_yQWrD^8mXA^ z@o{aZ%E&|$QiwqYE_Zrm&UF%)&yQo$BiBp4ZnbEiDP{6vyc* zP72rAm)ll4)*ePdPTUj-g>%dYo4X{xL-utq+lNF{e)s24xw00j@`t2*TH#vVsyEGz z66}*WGRx!DBM>A?1|4=}Aaw7f&W^U46Ny9(`!UY!cf>BnMh3NKZ4m4{lq>~2UgV&~E(qSf=td?U6kLEh!T z6a94wjCuZa+S8|KR28z$X1!IcK7 z$7T^5V>`TPo|~%|BL=GLD)X)|>147JF5EaXGczRH`t<24?s$hqNuxBG_m20@Og0I+_`h9 z1qD9@X65EiFm^~F0`vWL5=wh6pSpABj;Xo1Ib}93E>0c_o3MzyFx%=p*pNc#^l$BN zc}b(GsyKakus`3K5tnE{=oNBp%Yq2H`uc+tfdK*0`;eY&t2Gj5&z)0fequpsX=!2Q z`3_G^#KB)@pPhd#ETS3*`<6}Bs$*LwDufdTur^~}&$aS{_BJ*)ckbRz;qoPrr6>0< zK5uFYk$9h^uQf6iWnbSY3#Bn8 z#wxv}Q3Uxp9jYjIjG6D=QMHOQ-t@3w0H3ABG$XV#rUa_vfgxP19C8iY&l z6J?V0y(j!T7|Nj<5H%;>*Dr(y!$DIx`Y>TfxAH5uzY*MmV77_HQaX~L8JlBUT>adw z*{LPlCO?qVCF_Or?R&?Y#)+q0-Q8m_VjiRE)2DUEjvbp^;E>4?YEp>&*(I_ObqQJ& z{`8=^m6g@el)Zb-y2Sw z$IX91ELJ1CpDkBGD9Ts`+aiys>gsCNIRb&8tEYF+*0w`TBgeZmwYMu61&l>z<-W|s znFH2osK)VY`vwq0J2_CbwY^v+Ln9;6w{G3yjnYMApi-JUJ3HCtW%Q@Ouse6|3}GQigC10l-72ZDu7Ucb4gUWAmX3}X^)uO#Z?8+E zXKrfxKE+7CI#zMRu3fu8v0(;VK7X#NjFL^u%2Lpf}r#nxPVOS}2e757niH--)9Ox~u>e{VALP`awG z=JxN}1Gsi@bO*@q$W)EGf-q@9(Fp7h^ngLo*YoswgOY)mZliHV-&p=%)!S6V==pZR zsQ)uMolIS|ycY`qB+Ie0@}1~jHxr!w;3#6Q)xp>M{iBrdarKaj-!4Szoh)F_DlIQQJrZC&BQ zaf$m%$ocbfM-ffO3S(3u0l>BWM?Rf>aryMhjX!*UCeMNNX1q1qMwZHdk54Ts(%WWn zUx_@ePnLyj1$6FxbsNx>4QNU;r&P!9vQ5p;*DgL|XQu?~YXY`;;;dxo`+eLdqxGuh zabx~T-loTjI+;OEpKcxDl#_}rN_s|XJlu;@661~vT*YP(YZYm zF+N=vzbgh*d=;C5QwEh^?o|wcLz8f#D0FT@B6%&+Gb4Y8BXRt?W!gcr!-o(1`T5P9 zlSk8I9Tm^3*3UAUD#xmT4&MUgl(_`ykqCzg{?BChxb`(uY!U?NGAuV zGDeFud<0dP8ChA1k(N+Nb2sNA2Tg%{8D+uKskynDBcr3vRnc+;sJm$I5E)rY9IP%O zuu~sD-m0P^8p#vwMA7Honj3rX-aS_6lIyECDIB=Iy1ru?L594ctQO)M<48ho)vc{Z z;6$*O-QAtp)v=}0zl^oNP>+rwlU`4wpjLu@Lo`GYWiSZwn)V80egfI>W*P(}10+#o zF<6tNpIJs`g?Mapx7^5^EjobWwP5U3tZ})Kn_b9L!T-FEdNs^ z;zW}aMgo1lzhpQ)DK$IWBjO2=BK04_FP>2YEMg3e^{e4$WUC>}k^D;A| z$2*FtMT}u!O8_Nnp`oFnIlu#nxN;KOG^xJ;jh#AkX21*De!lWDq(@Rc68WFfv{@iQ zsfyXaczsQZSlmeqq!u|t^4)>ueEj$k?XrN}22in@_Tt4JK+y3HHfT#YCNqj6@`{-b zbSN)_Dv;@c`k0q5UuNXxQRLLmRDOAT9aZuwDgzBEijep*Py`}*{Zi&45F|Qtjo$Qy zfHLTTwf%-ZB?8ksV!mzZ+~sZ)2C5WQ&WlB z&IdiZ%J`2u$aA#r*qYmF=FkD!`8Ap4UwHeA#618D`Cox0NzXGn$-BbPi#A>qH2gTB z_ZLO4NJX!bEh08fz*{Wn{o83trwl zmrENxL{~~EJU~vd#{5Lw?b)z@Du>?i+HsS9T|u~^2n>WpK4Q@V0X(6M%*>H|htsF! zI*PqRa9mq}9rM{kDTyA)MRa zaAJu}grv)4ZxuFIAs{f2VL=u&^S)lkDFM`ile5421q2)f^*Gj5ZUoX2Ji%qYFh|2{ z(QOwSC77lKC2wixZ*i`FJJ79K{7t1vRMprBy8y839o zUKsCdx0kEnQEKX&6`0_DrSH3wuPvy4RwvU>uE8wYv1?cCaPt$?4D!mM(Tq@W{qW(J zpMohP(ngXWFjbnw-Z(#C6A9YQ^`ZHqM>fWL!=9$uf~ z>mrE2{`KOXF=nB2cLgc`V$CgAZ*K}jt*wOMJaJ8#7BC*&+w17~6|El5H?EmWo|O{YY@b=_st5e_pMevV%TTQ<0AmNral~yHiNLN+pvKVEeD}pjYlL7t=02l$y1D{4jJ?NZlkVb$=5e4(lRoJ9+BsC zW{T-T8a)Ox-y@ap)|}o}h_{#@!{dz9ovs#+?s*LM)q0JyYhu>#iZ1RBH}aw{a7(~y zWD}`Ey9#qv%JPBMS3UzZ1sY&8DqmaLFV+nOUx8gV-4Ii!MK|tF`#@=UM9kH40J|aa z2baH0v|5a_N_FUxO?Z5>du^^gt+y@TnE*~;HQ2`q9D;$>#Si8<090XPIJb~F)Ra~T zDKZwVp8F2`on)avr_uPfnQ0LqeeB~At@@?X%E{R2_c}IsJU*aqSMf#Y7HdG{-rfZQ zGzpx_BIpriO&UNj7DT=)^6Y4FCV>sh{ArmiSabzc(aaO(u42}$ScN@1)wQ%5w;j88 zC&!^&@Dl@CUWfHEr5#}Q6i%`kbnjT5MrKF@+#1v;8|u)e8;lCUh}6l-$arTm|3w-f z*i8xquRKL45M!mt)1tf>;Ba?54u~*Ot171$p9oFi#Hj*h#=P zXU?37Pl3*m2~lku)sV)``<$_{`3)=Lu}ew0r33doppz=i6AuK>CQX~0atD&U@5ht% zld+38lelW+DK#dXVc{x8y^E-LfMY82sEm|h(l`}KF3ddoMn}kJCN$nSd|o;C9Cw1o zxrFW;-4!0ytK3@kyo*%9rzZt)s>@h2~`x|DIP@#=1f|^$j@jyhr1GEEC;mdFb3FnP0K%`4 z@uA$Yn$=1MH}~l3UYs6mYy`LI_BgXpO<1KBP6!ciB~;5s%+!GYo`6njTX^Z1*EnS9 z?;(H#)2b_QB{`u2 zwGXs!0UvXakA7dqvFL+ygV>WymP(F#;07->B>#5ow;vue^aW-y>s_qUkJfZLmiSzt zWQBQG@GrsX9MLNOG|1S33-4&X<7huFEG7$!S?3_}id>t}zIqHJ`hqEd%bV=N!a@t; z{K)cdVk0)ewxh_?79O8Dv~%V$0w;m~RW3)Fiby}rJ0=r&v|V9`d)+Kyo6<@vSe zHEI^XGo$&Q;D1a|yFsQJ1dN^i)Y>}Og1X#kn1!Lk7*2YUS2VN+)$ooDGBWNh*-@}S zU9{1YkqKlG%+VSP9SD1cBkxDB&4=$$Rq^pZ8VqXE#tOFY+*#Y{?dlpS7IDOJYz9S4 z7oJQ!NKxL@YDYWQhBD?_B1^e6*PH5uiS{_ zEp&?)f<|+Sdo9E>7VMP3uBh&X&hA*+#LLk;n1sUH#JIwmWJ6*v2NuZ&?B&DFK*>;Q zOmAw8CUj?jqAIYV*+$*`nMyY`WcYTJtlB}K;&~xm9O^X=&rbqH zRDODD724?ycCvQR*Pfs+KX34Lmy%Y#fffq^8AEJHHp~xS5TN_k?+Q}&dO4h~?1;gJ z_@P#+GHIsiY`&A3@yv$G3r6!ORPp>E+JVk3>{sngu%1y+RAi%_DeBVY!>tc50Xjhk%3O@&yb4N= ztc6WR0hL!IrJQQ->?ohGI(Kfw_y~(RNn87lMr<%tnfC{&^3R2ca7 z9byG^c$QD-d$c`EgzD-=hYZn28%^-Mu;ID^DrDYuvOJn1ECOTGq!E4ENIPJxjn#^F zx2W$-A&ohM6)tCC!tXomIClIIxEde@*gy}cl8}eX7^!xu==67kET9(D<`VHJVguCk zcNDg__Fj=v9`YBWZ~fhc0-uXLKixcPriRw<^^Xu?O{7vznDe8RYe)Y!c6*(`0>4-Y`= z??YJ;9*wFS=-3~_)!Ub`}Z>}fqd*W#|fH*qMz&_rsyqPj8=s~ z?#q$P?K^fvfuBKoFgX26Qo0h#wH#<>R~PrUXH}Fvozh zmiqj;Zn_0k8OM7q?F1r~uN<>zAX#!K1tTGed|!PXe2s5f8UGK>*EC)5YxAO1&hifk Pd=8r(H_iR={MG*gCs0Mg literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a2c7455c7f7e39d7a2b17821df99dd6255e0bca4 GIT binary patch literal 14175 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 Ws2MGA!T`5Tk~^t*BJsGvt^WfbpLRX~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..dcb841c75346170092b1ab986bc76f2f433d6d6a GIT binary patch literal 10074 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b11cbd7ab98bc438128761cf4d7a455ed49afc33 GIT binary patch literal 10949 zcmeHtcT`jBwtW;8RO|;qL9kF1lr9Je2ug{92vU?1P^4E0T}VVYHkyJ6(n2pHL-o1Yv21ztzXMg+KYt1#+oa@<*>l%A@9o>aM zAod_NujnBVTOT42TL##6z&q!gdw;=;oV(gB_nR)(?p}A?tPt9F++7`A+#T)i9{03z zL)*DHONq*eN}WA!>+bG~mKPIq`oA9#b#b#1BT_4=@FhE4HE*L4h<$gMk1bisnRW<- zuq5(|ioSRJOds|}o7Y{&0%y|u=O64t&Ys>SQ8=_3$o43BS!?#=lXDf;_=!D7xw9<= zJPz(t4S62e^sD^yLduCNnekZue(JBn<=OF28$0&eCFfnA&0{)3GVI@Xj;BsXDr*4H;SL}g@@bdZu zVhaLs_A&zAyY(2c4S{&iz6CyKab)X$1foiE+i?Wqp%vRD_-Nh!hw%K@0e`wnkAr-- z1m4!s32#hL$b5N9L-^#$lWlddyJkN^T zv}S0(&C4^?)((x0i{s$t&S4%?;wE5gjxS$)-iTA?`;=>1;&v&V1A#c+b}~dlur2sU zV`Im3S3!}-lp#`986|M$3{u1>udTbt!6god!{PJtL}&WSWW{A{8hO$)GjlRB)T_A! z1O+F*bDFokHOS#dCL|<04-Y4W9aAWD9aKfi;t_{AIdeXJTA>*iljovaC-iM>gyyzv zLs+~RpenHEAy5^*22b|!y{;MF8KS1H{&RRCD?2-z(`Dc3{F){D9M+tKHzyc9f%~}swd$rxRkWyCODMPOZ+v`w z(!6|p_(MY1mr6s4V^bcL#IfDISci9bxrn8NIX{g8>xPyX3Cp(5&a9Rey#!?}%H*Tt z1oeJdSy_8u-?5ecIU0FT7cw&_`~|DUX^4Prn-8i(jyw+w>nI>9<^244_4~JPy)uLk zAN0fs8;f+)laRBDoQr&0!jCB!>gwv+ySVH->f+)OT{kl6!5v-KKDS|FK4*<`i|!8=ad~;;BS((d+uE{)P?wgnl9N@Oi_1t( zz0O`ue#mYD7HfgIdiA-fs8JISfs7v=9aW;8L288a8r-{=1`$M>qDx3f1nl!4{fgUy zsIuTVth`n9%o$x3l>kX8si>%^^tW$?Jv=<@CR)-X(gd!(w%u4+c>C_%D}IPHyUmT& z?sA`k#l^)!2a@P9d3Vj8VwY%lN@PWFaB$I`uRGE+GK2*L)TT&yqq}!g%2D{VID%$N zZ|^&yL~qqo8e#f3Z$_fL2e;GP&FN9<;k?HplvyE1)=!+>Dz2<-&MAh{_wgz5Q^K{h zwi=k5^Q{Pkef%h+rjEIvFDWFXQB+hUEF#ic>M`{yHui04sl0Za%sFuz>SX)mM7=bn$+wY9Zw7kGXG{sgeFt|bs`h`icwB-Qplx!jtmL#p&&e>5vwomF0Lx^w5w zqcV;$7kR_4CtmEDsw^!li%Lw)d-{~^n4<3z>exX9;?k{M!HC|92gO&fUe(vtO@>&s z9j$-!v!S8=_uZVn31rB2wcx{cT_3FM?d)EXrlLqw?fI59ThTI3-D#7P_U&zLStTX6 z^YinW$3%%3Iroq!+jF8~VlG(JKn(A{{^ca1*s&{Rq%PV4k|$Q)~22nqM{#^PMsbdddveq1q zNkfk{W&^z1nll!~7%9bMj0wJSZSoSIAoF_IeEtcXO!EI&Tk#eEs(A+qU-h^z>`dS0i4Zy`8c!T$2Mp zAEB?WpSDUFbD)ei{H&{M%`+==A8$J0M6NW8`0c=f`0SOZ@W z{(oTnXDR4q)e1QC+84qzXW32drGT#-m*D?@(bs=~YC_qoWMaM4H7wh_lz#W@Up zdj@fERa3J`ig+;=C8a>x@Dy%t z?jqafljlr6YMncGZqc^_e&s!qvT=c#O=biM3%gD$`T8(%W7snk#?(P=G5jmx6CftP; z6v~MHs7k-v3SP7N*RNm4Es*;9&JoCb?y$LBj;g#5{|f^Z!x2eSGDX(b&%Cgle%s+po@shGwIPNy=&Kk`!VZI zYHDhBwGjf7Q<+16yOYz??7fYNiVtu`yAg=_kv)K5)nUhSva(JW6&JIH78e)Sjkr-u zLxFmFZRX+ugCP{yVj~k1F+Iafeu|xE#U>RNN(%@GOweiM=$@I%nfsP^@BVh^5Smm2 zP3ZpXs+jG6%R`e%Y?1tbin=94|9)T7iO~miNP1rV6NIg&k#Gj#)2DA(TW5Uu@Il|e zARTJmIkQszh{Aid2SfRkQ9wr{(o#}RHsF-a<78b7QK&@EneOzXFJ}2rM(viyo0*Zv{A+Eb5RLm8tRc|s z);0?arcxADp0&8>w(6(EY+foWmFBPUI5{~z57`*HYjyp47~Bg3L&FS@sg5(}&l>CsZKZB5Q`5A(B{V zI61U>-RpBVA@&~c;m&~fa#B)M0XmMo7-oVh=l?LMKIfnK_UzE)#6z69xhw z*g>J!Tz^$(yd3%!uw}sSBbKjXVzM~R{d98-b0hefXsM)xQt+H^`ttkk2WB-i0>ht9 zCo?LPHdlrf{$KN+IW#mhyZj!T`KyRfKDPdC;J&pbDk~Zh#6t}9rQxuMZ46cZDZ5z6YL(F+OJK`fz_=uBAi zhaHj1Ag)6LK0;d$bY^C+_79f%mh@|-_lF-34G#xa4-XH+QNDfEV-%_aqk~k|HI{ud zbE%r!WxUGP*PH|t*L20*VM#>?&ZsY(6QrtKK0E)F)73{Hmf#3Nh&eTOOnG7%o`dSRMt13 z6at4(_4Ub9mp5ymaTOn6N?H;6dU`339&NR)0OeFh1oyk%pRQshIi9vK<2gKk*fef-A2F4UDPLC^oJXBQiCX-Px+QrnF@ z7KXl8`L2~N0`AWrXZw4M^xXKQ=|7H_?v&?)aHHHO+s-!-zLgK{=&!vZBDm{RiEKg)BU z6EyyBikg&)Ie#5FIk}@sexKAsk9y$u?F4Rf_IEYJY=4Cb5QDc_Sxq3;N~1@$Mn*>` z0e>nQT^t?TQq+PA9lIop3JZTsQGZTRCp+^k1LWdlob)_Aih!WCfz|{pih0b>D3Jg; zCW|X3(4BH`<=?FeKL95&4N^lmcYRQUY$rjwocEa2hu+?HWq#0?(jfaFfw4A)cYu=Z zJCPp!>h zJeQ}tZivAy59IxR5mEDZD4|yYQQ^R$L#dxWeM;g6<TkDX_mQPMSG6F(Epc|i7P%vTL%QNn^ z34N5b)z9C+w}Ff{gPvn|DVZx3+65-9?|gp;nnHP>#d}Th045GlDxspbX6dFf5sE%4 zODGwufk5~}83d-48xe8PKwp3S$IDZ(a_9^oJ062yen*YT%E;I^r>Gf!bbMoMYz$rN z2-VkPx--8j9@On@(5gTYvv+njbaZ^jJZ9u)R8>5PLQ`M&DYtFX*NeR7Q1nS70?6Nk z5BbDE%sZ{dWvP|L`4R+zt^yl}sgB%;w8TVSKvg?9*tpDd#)$$y%>Jd~0c}S$=%A@g zZKUWw(eJ1MK7*ii<5Hh{gkx+g#Ad0gk|-%(T$JLrdMn%))j{e2?$U zRC&e+vK0j=u_~`mOFLT^@^hCXQv0qvUv{3P}Vr=a% z&>BnqR^4#n+<@sZF)>N`x~b|^?86m3VC~*Rmo=F;>nX7+QY0JTb$bW$n$)$zPxB zV;wDDpDlw1Mc31FSy4d=(AV`4s44#)y87ay3t1HT{OQvh_wVP+ICdtrwdtp)rP%C{6=1rzQC_)8 z#fw1X=_pcPz0Jv)BL}4FfX@aj=F^PEY!&^B+|wJwJl`(u3MPWjiKwFgNy8t+5h5Xc z_G}yYk4)7V)al2*$cIXd4YVS)?Iys>P2lZda;aAE_a=W{j{o4l?g@E)22KqfKr(9Y z7sM7ekv0;^0V;fVnHL^BUA$du#u+fZ=jSw7lIOqjZQdZjYTLo^po|fxunZcORZYvn zRWWmgj`?HP3amqwR(~DhIDB{#s+rOK`}eb=AMf8493JpFu$C*8Th`h3$BQPMb*2u^ zP*wGjo12?z#c%9MuJU8E-@wa`0@HbgEl0|xG00QplV#w9Tsr90(0SZMp-@ePud4_3iGzg}vDNK~6v`gL8T zFSS|&mR1kC#()UfR?f6yX7Nc$Rhqkc1+`=E!Na|W>kH9BaV$i_8vM=ClCeZ7q9QH+ zS#Yq_KE7pAsn#` z=>mb)XQ^33TT3hCh^%wG&t!JynrWShONA96oEU1Yn|n?L6_rXVOG(LCK#O!R{mKLeHFVk9V3Pcv8j)_!<7Ee z&^1veGI6nl)i{Dgq@cFsTsb9d72sHhlI!AM7s4a=fyilT8B$wcFKuOIrD6%zaX|i9 z;)BMt%*?nz)_t)Z9fk#128I%BzL7%m2Q4ec2<7u#D@OctyfU`m^popn=0j5w8c;(E z_CcHXiRkKH_Hy7>F(AyLhraEk4D&HM+4+=u9m$n_T$c5jIE?*kF>`0wAUW)2`6}GC z2Jr7f_$iGFbK9!-V=C*>KRa?w8bHWk!5$E=j*;#6J|*rsKcI4mgTo4FT*DhFn|dJs z^;394|Cn*V@68X@Yn4f9XDEPp3W~Gk4H0Q z_$ybg3_K|A$&D1!nS`+d0@~za3@>Koj{h(>xd|q11dzG8xd6p2L*Ii1kW3Tc9WqjI z;-v;}Gt+iRQ1F_h5S8b=a7>>M3_TXI4p_UX>Y=4G452DUIO3ZkCpY(cI&ILcWT^=6 zuMO6JL|S)uch#XZetIo#phFE+j~Ytz;}9&gA&` z4Iq%Xo+}y}=)~L3u6~AFRYk#%5ixw%bWN-x4Y-OexIf*6c9G1A0#?pD;tUKmWj}iK zsLFG=I`pQR+V3Y%oeIQAcf=7^f(cE`7`Xd=m*T>=Lr`hidyQZ`DI|p5e?-Jw7u?_F z*}k5+NHZ5Oq}rRBl1k8H!rIDertrOEUiTz5mOL79RWE9>Aa+U<$Y#Zu$Uz2#q`KugEO|!yaa7nx7sxC2d{L zrKawt{X=jAAFA+?IV=PP)pzubjkH6@*#voys|;|r*A%|mft>4B*0)xmyesd+mw_PNSM4b`9!c=9T=N* zV6QEf;fkI{JwuyZ(__660@s$9eW9kbcXW7qu?DM%ec`fHtzhd+ z&&jz4{GK%05Vu|t!O|;|d|`|iyKx`VpF(uLbBSrKfuLEgvEM6{Z;NFW2r%OS;BYB= zK&??eBOJ(~$sIe`$9ND+ki7m2lR5ZF=)(2>L-<^pGG`cD)`ab$ewarL$Fn@FTsUO` t4PM>+wd3&eZ|n2^0kidQM=U@Er2y6kZRYj$&&NeD|A~HUG^$Yg`LiizGYyecG=)`-!f$+8$;uW)upw2YvbC zRTOGV01Cx0uyZ^7MXIHD7=FpRs~WoNVXWQn+;p`pam2Vg+TA+pY31r>hjEq= zl@^r{K5Fak?&2mVCg$|_H;7_fZN!?EE0*CROfHvixS>$2H<2HP6s2T46zWtR`r?Ia zUNJL$IQRBtZ1p^859JHNSLKgk{HybM^;=c_nN4mo<2md|x6O@Z zAfe#Gqst#`)pfR+J~>OmpDr=n&FuLAb-{7$w|m=b9`Hp=u15W)d^C>QGGt0%3#x4x z>2F%R-KbE#LGhoHnM*gv#QM2mTsSO);npldQgm72cfhPFY6}Ww_z1NXh05N|uoGV5 z+`@)JRi4>;6kfL4c^=+X#})wpM;t>jpisgp|M!9aGD=TamQjNlxw(1*IedSu%YtqM^m4t!eniuL?T6>l`P^bY7TU*=aWs*7Xq`2}u z)F$)#%8by&s=yzu6T9an;dS*jKgGnPq;+Cw&naO>m!?>S^=jOvT6;&wWLv6UcLlc8 zx-o_`yXpA}wLHhJGc*0=#$!!!q~>^)<)`MG%64{k_=H@Wrb%D&Mr?soPtwYYrYG*ZKi5Ge#@_<*Sb7dUaSvTkB}x=n~s_7*Opr0?ljfXCw{oqNyfU%R%p znwpuZucj9G{{8z+2To2-bqx(Y4-b#XYG({4vT1Br5!CU6=*PP%M@Oym3kvL)C)-QL zVttp=&8h0<^mUSyLx(VO2z*;-XG&+MAwM7AR(WYz*&87tA*MW~2?-ZPBkOQO`zukX zqeoOtP@bNi>Uit=m+|}>5w@Qn@AVmv4|FGES5q@GriHjmi;4`*2qc_?t!)w42}Tsk zJw1E#z>g7=JAEEO&z^Naf*3m_BqWxn%;`q>Vb4;J*XIGt2KxSs9oagjQx<3|M&cdsh@%i&b$n6AVwym&YS)}iFHFuP} z_j^Ghq2+}-v8e_bau{E+iD*N#jE<_Rs=B6TSnEXF$A`N{=Do7kkn^Jk1%+{Y>XCY= zc_Cn)r)bl7#Hs7ODt@V6qA3L;MPD|jCq_G$phM*s9z%=<$*Z~MTdA9iO*=M^kJnLm zt}U){$ij63=g2p?0!Yl-M^UJctYqSe9|{3*{UZ5)9!C#G2zPV73^{Dbez@X>#%k#+J{A4e%-ORiqMI_z@x+LbFUBNe#SJ2-*BPw~rBq#YS?idZ9W zZ*Nz**XoxqH$cx*|IV5V5LNfE! zYE9DG)#*9>b+7*Q>ywpt8M!2^gZb=+szORu`+f60XSy}EpMZKw*a`K7)3mWkwr+~e z+`;RoD?|2MRP9MmPY?g&kAYAnbZu?z)oa(n?CtGK+^#`poY^A`Q1qA8JieMOEiFC+ zcXx;um*?bML8H+O4)7N!uWOc;mXXy?7>t3hZz;W^X{=O^5$TwBk4v{08XKqc($}iH z-&;LB!cwiT;E6^*F%gZVM?^*W=!XKFHFF;qMUj1`M5JV7ghWKN;F?H-sqtbH=CE_V zT=HJod^Izk>BYse1GkacIMJFs;#pcM?|J)nPMH~j-qGC5R-X)j$aY}w>WP7_TpJc%EN~bYa1Fye$JTh4@W`+Sb5}AV6@v0e|?Tmc>DHv$PwAALIzo7-z^>c zO7vmMMV+w7(~3EJC0g2v`Oi#emu)#~_l=L!GRuoTR2^!b7xD6C%EH1z`q_h! zMK2_aP!Vej|6`>8xPaNhfa<*YLxu3bXX}IJ`Sw<21?A8Gd%N)C8Pw`@*E>kM5I?^v zOQ6cZg9m9&+}zwo1&*&C?Kzy(U+#;%LZ&p{abFm&39yX$|MXsWLlbbNHyaPFPzCw< zc56Qd1w};4ZF^ox*tm~3AImh%Q4VC`{w9W_Xtcu!7NdO^+p1HNQPVwT$J&`B?bm6kddX(4(RCx=8egAd?1=SSK!A&0uq4Iq=;)^1DwwYgTQRB5EWtq~_aR|<}_x2virc)Nj zJl2=&iu-0oLpj;mlZ%Rq-Zbp~*~|;f12*$_md3A?)7GbcHjQU!^}C3OL%?~~Nic~L z8ymGl4$EYfR&PV0#;@P>-jj5{U~YQe%SmjIJ+9Po>_ zx(ufhl$O5!-*ui9ibvi{_l1DY3Rz505YN}}Nyiz$yc>_9D&rmtfjVb*Nq_^CX?Ptgx^HvPW2enQe8Hsj?lZ4d*)R z^2TRn8u*bgw}OwPMO}iqwPAUR8C;%F2pD0yF|3NS>UuM_={u z$lteb-{!mk`o@hLK|w)RwY0SUnSsJ5(LldlD}CV0amJRG?|{c{DNs{W1FUEvHYGx5 z|E=c?ynUcV2A&q7b|-!Re#^VujGh@Ef2{2UppDLz7T4!fR*i_>`W^yv$b6MyHwOH1y>ea;A7B>5@E0Z5p6RKj9ovknSf zKLyiN!lp5d&&t|*GS+vt1#SgcMbfipEC&xA5|ojN)Il+#0v@wRFnIkKxS$m)--RQl zq+G^J{z)S>B1QEf`7kTnzkPfAWWPWfWMzJSo>q;39$+K_dT-yp4SVt8-JZkJ?i+3p zi*aWb%V4Huw!zx5#hMYS{{9zHz^@+fsocdbYWpSVpt_EZ0kA)hp%9tL9ZG9=gT-msU~!{j*Tn5C zM^a)He1Yz3sD<+E8Ek_Xd|=OESnIS5otQ|D>v*A~mR@!8YShBcYEj(UD2T< zqXppd8YD6*ifehc&$z3rOU`%2ai;(>=(2!YvI+aH&b9}0N=Q0&OQOFGe7L_1jNgGy zqvHK>%NXkVvQdR!G01^qXrI~Qv9Oq!jG!Rqk>VB91|sO6YqhYt-J4xcbQJRDHXFCef{h&2PI+1=AaUBxPz|B-|oAog+jmbE7O zW>a^GM>@=C4}f)rjp`IpywjPh)2eODRA|X^XLMlpP7U^-9P#X8=FDyAJ%d2~ua!BpsahOWAL z5aJhfBV6^~sauRL5Jg1J(`a*avxbHS@F`mE5I0OSO^Uw}o4zG#0O%%dZu)^TMO=Wi zjErl3ety4FE*ePrMC4*Lf7~?oqHY9Fn%YwvdVhz~Qmwwy$&b}PiQyJD*D{uF5ktcL z4>TG#3v$LSU1R(EX33;(hZ2#iRHwq{9fH>ZZLug(#mz3e-)Z_0W7c!MhyzXXiE z4K!7Iu8j^L#so-+V=-X<99@I@!L62(?LIzW3VQOSg-GooPAJhAm6q3rLetHO{xoby z#tme~rDSAiN=Zpg_LUaC&&~B%neJlK278Ikq$Qr`s3DK_pcajiX(uL15Ni2%p3ei(*Z=M#H$2u&p;ps{EmOLT4!=M zgSh$i@fE#FjR@hEnL=_FFLhjPeN={+O5Ip>0F~UGXZM1yX3)iU{`(i7r4}`*-@mdY zCMP=}BNv*d{*{EvIeEZLHdRMdzh{pVV$p$%lW*THh`bGkAPkqqxm@>&tNHo)rMvvQ+fV{C=+TEX}Fwr$%$4-nUvCf)(bhIV-9d>Kl}dEY#P z*FYr$byz^DC9|-fE4$+NntkP)3w1v8U)b|~SDjzWdtc49ZeVT+gJAUuyk$fL1K2C; z6FRswf9g7gRBlG_U&)QL>nrgnnaV1a^jWfX>My&2;8_KBL;0*YWb}usJL=GZ1GZ2B zU~(`U5`OxPYLz|!I6zXNJ^DuG0aQj7DO-Nk9gxqhb>O-p5)l;Kz*{H4p`efuePw0k zpWKh@@ZnN5f~T%^8}#~HIRZ9WsOqJjyNeuY=`IUjKrEg@! z6?GRWZNB45Tfv+8D~Y5hohaecr(2u~`;wrzKyjmiE<^d4Rw~*w#p++Ua2LT4MeO=1 z0Rc4-5XYhbEZ+EDbVSX9KMh^bU5JT896n&wec07Ldj|&?DE~>#|4Hw-CmHS~f_fUD zMTi)Kyh!NoHbRVF5bf(-P5wy>3$A@0BvX6>xV}OX5_%geGp%d$Ln`9ZP?OE7(+4Y? z7JbU`3E&;0uR1wp%E`%vg@=!j1x}n$0dp%YD~qKD*)jDUyG20J;z6Q|n3WmsKdIR) zQrLSO0fK9ejv1hhwybCY5LsFd@rSlT6~I1%j*V+#&wGV1k}p9*0dT(cQ2H9HQ%}K+ z5O?yQzPpB&R=N6qC5Ce`xDKIUbZ0yo_3xMwx1PL<#UhKug;^6E3 zI|v~&8tUr4fiO|0h_rNA(@f#a>V4EtbUe%Y(6W8mvB$vp_w=s)q)D+IVjP z2Nc00!6$$Zuq^`vQw2vQ;Y83r&<}t51^I=ALf|&)C@f!-(LoTX9Ed@PILK7oH>Tu=C6~wOg@L1;O{d+MINJ8iZirrc zcX;fmvWVf>fK9bj)z*=<69?&AF>|%BKuf(=*VssW5Oo3s+;xh=c+1uXaSh_ z3j|R8@LQcHRN%o2sIsk*`35NdREWFVXnhNKB9fldhMDF>GuS^sn4N#cl`Ea`hcS6Q zg0?}V8w1q^JOACKV2*eQ?NddLd$Zt;Cj(1dd&^tQ*!R$lExtl3P#1o+Kh7LO1k*&;e({X)wO8 z+S{jrB>=234#e4VCQ?^)L+>3eiD)bqnup!mDVU;#y{=FBCSZ=nbMG_|jxp2IjyW3- zQ(G%qT8nW9%kJf~Mb|k7n1S4M2%8i&@8wQ?Bfe z-d;!GAq}&Ar6J-~VG$8g1ni8%Nm0>8K7RgJF)=ZsHeF@jxwnf=tN~zX)xCgTqrl&3 zGjU1;MI|C1_-Z(PTHjGWwt%8rtnxnsU`-@Ws8~<)2KL(!BkQI~^rzMf#QEI{rqD4} zh5bJ1ly-u@73^EA6)D5}7YlJ4h1Sh)E{wuXU4}@V!8DMFG>_Io3|W-OdDyZZinxAZ zq>ixzwx%=YLZ?pscH&a-Z=ffB1AD<5hQnxLq*=*uj**d3eVTrHJzNF@)ngSE9j)c& zmizp7X-xmL`KNpVlO|b9e_k)_`jR-r{S5SdEQQj9bM{%Dw32q}{ykWH6nqr%#jz$C zp3v$TIgeVug&F~CFhd}r)MXO&SLnjvEZ-6m6Djng7Qy1+I4%)@DON&5ehQ0>jE3D! zv`Qe$D`W*`+W6jk(R%;>{jdn&v|O3(b70|-x2<}{?Etms2|2cDj1eagX(i8pUzsES zylXf`aP`p7n@HAveFph~4H&V6j(2G|fx4{*|EPgw;8VuiORn&zi0ZwYZ958TDVh1~ZqZ0R22>eEP z+=(oa=Pr#Qyh>&)fuC^Xq4{x8^)M7Z@?wRLw+1jUx8*sUE&)msr^wu)wivgMna$ z?depss6-)a6D2yODIdHDr|!IoT?)zYphDJXlTXJ7W71PonTm)I?LC}lE-Lse6%Es1 z--Q3{&6$+7BxMCP4(?(GsA948`;V43gnYnJH-a^Q|6(+G97bw)zJozz^*J1^4BB9v zXl`JT3`-&~1UxA(;qi?|iMof?bL!{6B39+DL&D8a6e+)+e6VYXl9F>94IXWXCXEaM zl}nd(8(rg#1Xc__)D&-G_VIjIu56p45rWfPDtNAY8}*0m~A~XmmTU zS6D2WtbCchx}B9L1N=Izm%m+rhc+fj1Twpi{5_$4jm7%~v=QDyrq13$97SY(7pg?_ zirf(3=T8N;4~|+J%oqX?y<(HBI{!T;=iu~-u;7T2bxXRQVHl4%u{~s30j>vz+|pnm z@8q*{v$`+_mnPE*X}P(J?=d$YLy^OREC1%F?W$^O>A-MdaIktE{+wu?nVQ-HW!;{v z!;37x1cMxur3Z=9S)G&Z>EU3Y!w$s(+!y2l5i{SJd?hYzDB2g*LoG0xlfnH#&IHXH z6dFpL{uwK1_Nmu*`isYPzCykPMMXP6bEln~EmDCbHiO!&XkPRN;LLX$(?(1wXgu@r zoN=B(|3>WCIdTgftVa9k&K$v0r<&iYJ`IbDBahHPv36(Qyzjs8BJStOIke0<}P#LYxNGEqo3L{PIyiC*ShK^YYdZBI846EQB( zM6eF}{|%_9@rUeYMbjjtGYH_ZB9+Ybn?(RX@%)!q;g7LDA5+>o{SBN>CCUq>mZ4B3 z|1Kff%JzLhZqDBl&|KoTw&G?E-9yNPQJI(c+}_XZRiOcU-C=MQ^!v^!AnRH)f&thu zc)l#>qqb+qPy?`8cYg|tBM?T~5GF1KpS*r}M!^&w{{h9jH`t8@RRR|Qk|q2p@H_~o fe~m}%UeOuvS)^g8J>19Oo>6F3?TcB;7We)Q8n-$* literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..6827f3e32ba7026ad7ada524dfd64d5b85f902af GIT binary patch literal 11974 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e7efcee0be7488b57f62e424dcc28df92be68686 GIT binary patch literal 12808 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 JKYQ)he**)~>^}ei literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ffea3384ec5269d79b1162021bff3822d9701755 GIT binary patch literal 9963 zcmeHNc{tQ--~Y*pbCNQt6d5(zgdE8hGg?TU!jVd{6$#n0FN4wPDPz}ZA!|{ogk#G- z1bV&~g72s{vOdFKnqGS6yiD9Kd--1Uu)_>4dR=vP^Ky2y z+3I8G;pyn+skX~d)++jm6$WM8TgPNt{yY<#IUs&(I0`Q zIvI`_w)5O^-9xASlEylNuAZ5>U&+}OD<*bK>>vM75a8H}(0W8@V!2lw_q=+V?)1d` zPT}ciUTw!#Hb1{_Y|(c9j@b-Y2H4;xV4s zOV>`x!otEEctMOS?%bBQnjhupLGtz1fr8lflh_Ju`_X@YdEy{Ak?h+QHj+ap-CQe! zuLzh4f3;Reo6l!2lkybmq;K1qy-gu%39ZF%L9Z<=Ecng$$BAgDVh8yfT(B;WI>lT+ zPA|7corY5?pE%5dZz#KUl@~9~c6c)0CaNoK+-tGv#65*D?~!Ibc2|WhkITvR9Bf!& zxCV>0-q9x0wN9Qem_l|vedbK{`^P6dokT@N8#7IFibt}`2z7Z+pFInsFLltPGP6tf z5D4w+5ki<1=SIe(^tZ=1fTtyScFu zCoL^q!hpl^PrzeaDdB1ueR+w^==ANDmOuM~njS+skPo>xHZh7y9UdO0QXL!}zf70kyLXR8^L4s%CH&>fm#mj|b@zC|;uz-tbAbSN zw!=-o$TgW>G2U6mNFkC51RL(eCu2)X>CCfPZ^qnUspx<#Ejz84W>!{sfK;*?79wcS z$X~@RpK6Fei@&)>T2fyo$V+?bt%`exOHs95oaIIwZpV%t%CifU%WxWfA4;XrAeCpI>N>*;JGJ)VT&e|Lm6{UQkGGwSJ!)X8h z{kkVkoVb=Dgw@j1L@Q@TS{N@~Iy^c6I+8eC>e8saEWu{r?R`$q^|duYbDa`UCDG7c zYHmnaovXbifR*YxJ`}EvyCx{?6A%bJhVdy>25+C@f4QKr5Y?7#b@&ElS5`5VdhVsO zS>zVYea+dHQgC!~RkavqndZR8_zx}1e5x&dJ2%8x`k39hbEoR2sFV#w~bp<}Ve5L?zb`CV3jVx=ar>8lOG85urWHg;lJq=GL{v+uM6l+tlCR|Mcn8 zUhNpRX20GNzLH3ut;(~jvzh$-+W7p!a`zQGJG+zj_wBe`pRi$RaV{o2JUpHh6!78W z$NBGm#D1O*KY+=QM{`@t{XH#w+U(eE>J&b2s5#3V9jLy(ex!^JX}q{Edd0~fuy=(& zL04Txth)C6UwunaiN1yewZBx$e0{BNCXqScCoC{=t$%TF?%IPP1nz_O(B8Kyf4%4} zZG%?t+$EB%#=g-YXhgfm0<$dWDXFLI(^w{@psQft48Am()gLHfE3Z>!;f zFORsR_BvA6g+#-}4K=pWX0qJ+XWiNhG#aVsteM&7jFf;YFU;~U=M0Vx4N+%j zXAPyW%4>*N3tOxrsv{&AxAgIwW3(raolI0yr1AQd7{0WrWN6y1uF+KL^XJbEnVHX@ zzZoMJm3R&w1+ckh0-3SZ1+Z9QJ*g0+A;gWem1(nuIn_VxN)j{4FpPrz(!Qr)Hn}S` z{~PF&{(vnkJqn$+=lAPYg?=)z?K0Cd2mp`STu&U0LPj+I#lw zIpBg}!U@oCa%~wkHBnMpSryaoPbfRL{zm0?3Lk!+nQ8m+`I(X>V76S>&eErunIrGb z;MbgL3|{32-N?P&F{8Q#?v7hW=hgX5zTVZ>pv8{VVwbBB2tWPwlTA(JX3oc)VAW{t z$=Xe%KtBu0(u}c*iMWKt)k7CUp|7XIFTZU>(j2ER^BsV_G(88ZCO*Bg{r#7f%8u_J zv6M}%gSF|GsBlw-&OP0`gz1ojPZo1V$2bOnmc8(Mf6w*y41*JWFxD8Hk zm4-5Quw{2U7D?4u7)rP8cs>UoxtB3T!w z6mwVJw5GQ@!nWy&0q3<*@V+jfDO3k|Vt_6^cXHvBxZ7b&ERuWnXD*YCS2g`DD{w20m)^)4zfKRJ>D5 zb`<>ksBRT+ekvW#u<_kHF%X!_!8|TdiPkFZzXZ4^lgKWkLnY)oG^U*^a4?oI_zs)k z#J(j1GjOE^zQT1_PdE$ALOas&=( zz3VY7WbdhIfnv}U+yQm^W&pr&0SW5cZ{m01KHB1V1P}=W?fxGkN(%4bY%DXL3QlAd zb%h_ly|cOqTDJzb=ep;Ji;GLH*O&LjV=p^wSjFzj0nt^WTYbvkfShZU@?XOKGX2OrU38>`_v~5aO%gw~Z1T`(i{nkV4_l8#={V1vo~+ zg0f2n5}sydMdjt?oh!U@2B{X^D(DBcK(v5VQz}xHCyj+JfQ#*mw~hW%(2OYe#|sBt zgWlYcQ-;kL>ZVgbLsd*H8ChzDs& zzFq#w_-?Nz17yO_mHD`=-n?)7y}g!_$a1>()#&Mdm9n2}Zy|JVQn`F`+fhK%Iz6)R z#M+9f1}%34*=T7kbkl0itzvMp(O~jf%CbizsSl5Y)+DGp&3+Z{;D*@+0@xM@(7UN{ zm&mf*iHl=cFV9#rmgc%;^rgK|1H|=X@WeE0dT?@d4oEAgfuIz(Z-o66Pa4Alk!aT8 zgc()kGf7e-%~=tSO;4)968A~axz(wGv?ouVI5;`gxtPCnp8q~$B{n3fw}`K#Qh_I` zaQa(tI9$4ZOf+&xEp+}2mo-R|_^Ye?3Yh-|et7`@kr>!oe(WCr#aFLcRT)How=hbUJ8mZnRBhqvHAX z5gQeU)50)}gb!aZsl>4IIP5#@SmfXLauOsdtHiVK^KGMOTF_$6gG1MQe-YVBjgnIL zIdJ*E@A(ckkSrP(2owYKkpe1oYN)sp*nBaGW8xgY)aj<^*ps%e2Q)(whNkw93OW6R)hs0DYH`RW5LjK@PZRQ2xR z5!?C%RWcEbo_;}5k?&UKte5YkFYG=Xh!OA9k2Ue5odgBfi^ z2VitqXCcyKHws`RkK^B6u(h@24N~~_EMRw;VQm8ggU06OdmS&G+a_@a-(&B*!)J*h zbl>U?rd3DQ64%G*@cmHX7g>FyZvIsVIfHxtsskW5Qz-o(>+*_w!{vMVi|iPgr6GOg zK<ccnH4Di_f~mt%6ja9 z6TIuP*{pud7YKk9&KK+k=zmx#E`SAUuOCC|rd8|z05>pXDB9qM%25~wDhHAh;R9pL zJcY~56ltU{tttZa08Qn*$+{bxH)0P&VAbQ`b)vP#i$TscTFo*4=MeSJeY(3bASCeq zj~5T0jQ{as&SIWI#7dEkRo*R@5`(FfU|rq7xw7sk@R{g$+w@k2S!yC#zo%U*gl!K( z9OX4LGczTHaEKZ+A50LQ7Xz*S3!a58czPladFG7wd1&iz#yS$e)#oEgAckWvVf<$a z2?=RXFGVhGd5_=8!dYE7E_4BM7F}J?abD-$935Z7d!Z>mefo6hE1mqhx)SWUKK#sA zjosYUg-3)?T3WioPzZ^!MY*1$t^j!}|NgtIK7&NHYQz~Rh(Yuexml$bl7=f={6F79 zFfQgVjG$ZlC?psP^t0S{vHa}H0^BK!fB*OVF#^tNQcaIk=;<;x)y)B=?Bib5Bx<0 zr;ovy9qSMwN+(wLh>zxf4g{Ozp83~bE)^pMgUeW1ZNeb43K^xm_1@T+S{QSLi(koGXBL+OKGsbGB#&q z`1)1RC-thw9`=t&@|OJb73%8d*M9d}sArkST&{xp5r>YM+zdfUZ?%LqYs7P)Az4bj z%dd~z3{mmaK3T_1i=T&nIF{@bd$?{+l?$ci?kO_V)p^xrYDfeZw4ndoAOWd3y+sf(<^ zUi$JP-4;FsRWJ0Iz!w%JlSG--4@d5TCKFX>O{7?t95HnlJ>`&nX!620%5Rh&L1=0;!gK~?}Z1kwmy*yM-$HagM{IdY&m z?LRa(A1!k2M7MVX9~vVdaBSV#Y>Umv;seljLu|c~vBmQw%8v!tYX3acc&rtLUR-b= zl1ADbUFVLMiosKf-CM+zf4?@9@E(fZ)WTiQ!n0nLgMvep^w=kRpM?-2{aw28!Q;!S zKYlj7XUBn7s_W?ZNhu#PAyqV$%1HJ(|4@Hh49T#C#rK=}Xle^$*Zr+B14I=}wX9mN zwYmwvcX~5WpJ)p)HZpZpkdBEE*T_h09?eMB^1Tc~mMOGmOFZnHJ?wRTO5o&c7GGwW z%P`Zuv{r|A)u%UX*JVIcTMUKQ_X40>#_f&BNASmaYF@z1AoJ&m z!{JO_v@(G(JP(44(x!GO-u(CP-#gC?e>A&i*9NXCPc~YE0E(CinfM*m{rg8f@4GG?aqIGzP$VcY~QLMkFqvoy zAXKw&NOG=?-PQ&W%L6lP-%;eoBoM$Sn7RJ7W!)>SAS%m~&ne$W=2T1MmyMUoYYjcP zo`*6?*imv{lzJXYP%|?#>)>paFCamuS3N<3MRc4nYz(C zCWfyKwZ;k*>heZm0M>vuLV=LCD>ZN*SON3q_V$F2A3xf~SqJ;Wy}X3VaA|X+EOx}q zTCbBK!_H4a90lOBYlBf@vUx|Llj&I#liQHMDb?jIFJI(U3at*2)sfmidcwi(9<11eX%N zVhsX7pM^t|dexRovii|)i8P4Kv^x7c3LH%~;@VW0+WFnqp?`2qtWAO`MQjd3hM9#H z&|=|f0FMRC8ZA#7nL*b8BBxn<^7w1IAx-pjLc?KrJ8%M&LLLmI28h1%UF>KL$BAuX zvvnwLL&_eS-9R%eq!+d=Ov1|VVN>p|WUo`>sn+DN!qy71Z<5Cwxvx@%TeXYCp;^0u zpy9wlFyOby5_-qW*wH90hwv0kA^z0*Ks=ituwOM5+ zG(3-(k>TOq{y6JsXl#Qqq`2PwS9>Zo7Dw~@(1%f}NOFJ+wt4^PI1b0T&kWp&V#iQv zpK}%-uXni5b^0wz42U%!ijx~LbxBMMH7W*vQ0!v#P6b z352sR&fOwkgO(4%jW-!bkG!v9UxN~?rc}O{h4;rZG7BRf7d-0Sx8C3Hc#7Aj!?zvn zs?dVB;TU+b^A>;+%-Xqq)masLr~21cIonrktAD0mum>QRqmV&XwCC8nKm$mFov*LSSD~nIDj;NW_1e-5etOQoX1K*aw#yfMo&KU zLCJOwa?s!i^nEorP+RC(jrsP>r!QUvcIW)gV8DJ%!~G+jiZp8<%y6j@drNm0u^)!w z!&|J#iVYflktnq6gYu0Ax+rIxZ-UA|0dnruPk-zNw8>`|6F>qteQ^;ZCwjv$3{`?Y zniIfwG-f4|56f}rYKvniV!e6uX7T4=PxMxa8%3I0`R~AkV%Cu~M9L0EnbjqODN^V# zz^`u7^tgm_$e`2~fR_fle5w~-B{NfF$)I4sj4EIG@Dy%NB@NCP1xSGp*n_a*DA>0B zFmvnshqxj4AoH=)mZ26FFvUE#dwHoF$(c0ZFvOCeH-~DZD|MjU2G$nw@HNl*XV*DwcWzR?{^}R=#^)mUR z%wAYVP`8%mgt1(es&BKIeKqtqwoaLzl_L0s%Wva95q}B15WMna7ZGTg(;J~wBbSl1 z4r)gkh>7~WuX?Ri%a+PT@er>t3OAI35)J?q(FVAU1BJbRjppar!!dd|&w7E;L~8+f nRHp{ToZmb-^uPKX)f8p*$Ltxq0VOXCzK-h|>SiCl@XLPyJ00lt literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b1318f9f08865a61a321b895001432e2bbe98d22 GIT binary patch literal 13105 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..837a7599d460e89e7b68c9ecf574ada7d4db9b9a GIT binary patch literal 11995 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e23532c17dbdc3700ef86b119026fb0caa6a62de GIT binary patch literal 11996 zcmeI2cT|&mm+u1>5ES%a1pz%$L(1P{bLX8kv)1_ovykM;^Zb7M_ub$9+53_9)r)&r zI9X6A)E>+wbzKyS@eT^b@QryV{EyVbcrty>GbNpfqn_-EO&JZ#mpN z=4IpV;o#~bAtEgzapssk7VG9ACo1avFK-ZWb+;33U#eSzi|lf{WbA=LvEM*`7;@1$ z4k(le2BWTW%_nJwt5QhETc`s}Xi#-+Z936Jk z{r;l)kA3@$F4Z`{R@uMrX@p+jziUW`2RGBj$=SBV%OMerUXw`$ZUD{O|us~@%sg*&?**6hX$uPB_^_G2j29UEq4 z_@#C49r!oqIEn##m?KD9X66`8q>i7mIZRA01iCH?2jK#pB%pg~qvmPv{I zXWw=IkuVwTk3KO4(w5W$?8{@QR-;T`Ne|Wghq}1^_UmkpXa&j_3(ZB5A z86&r$jSr7Fdb+zag-y%OwO)97H1FlhGtXmUS`KHFlt?NrcBm!DxTf&sy?(7DBqU@~ zkE<2XOz0lJea5s*L$qe@52dXYD-79;p{=>OW0q9?{Q2`GL&Y-XV`(2gs7pyppE`bg z7~g;4;>v+nq?H3_QNb5-gK*wEj@L5w4Gz9cmiKO<&;qO9H(y!}P|`OvEU&!k>FL=~ z!v_y6M|;4|8$+hDCtx%*qMJq>yc0WRBKlyhXfb48O7c`!PIzPJkqkr2z|!|k9^-9C zb}-&e<3gd74LLed3cd@OCMG7)k&(ZZDDd;2$JN&pJU4Jb4``G+i#BO?Zn;cKYLLY; zIjFw)<;8Fwle&OPY1g5by%zqOR*j)L78Vu{_Elgfb@>GZOWu;2x;hJ&@@j(Tpo{mf`)Zb+o|?i=7nVDA=jxag+Y&4l zEW(>I)E=;v`UjbrCH?l>Z-2PJVKLXdwC$|4w87V}U-R?x-D672%HZ{~1-_i%S!3Y} z>!)vEAV)iLZ|~o~pCIj=5W>z|l$3O|(CD?Qrlw|sQeYLI!&GT0v9W@a z11rDQ70@zm>Z2GB!*!>v4cC#tIkx56zbwCmAaImK>L;WJ}mhp74tU<*rmW z9BrI{Y@C@$Y{>2->4m1{J4vpgIyyQLx_Wv&AlINW+zLJ&mGtI_6D{rSh8He`RC!Kk zJK<{$K7Rb@=;FfGPh6+g;}c!$jN!VVlc$7)DzWUGh?cVWqGFyu&wKSs8{XSr>J%Ho z#+^SnXvU4k)eu&l2g)24MnAz-dl4Osjm@d4QJ5iB_r`;6er|bwTHnMZKOuqBlR9Kx zSy?F;xK_e9`S$KMM`!1rC!%$^f$KjfzuKkhgXkX=HW|HjVlVT=Q~6o#dfaA-2jwcr zvqremTJD#Z#vJ{EU~i7K{T?bN5G_CFqrfS4GuWWegdYRf()aVLvTaW(+`)PeFht?Qj;+u#Q7f+o&eFf5mc;iW7VNG_$#b@J$L_v(>ty|YFUw-@rZ;8i536%OC zg|~OHiq@osqqmGA7aLebCt~Y2vNmw_H?6GrF{}sAX#4tBvK>9=rV=i^m-(cam`+$& z807nkIl(c;CCj;fezHK-(|=02H=3r?NUBS6ho@4><|>!)C}|lPCkionVKsm}dsbXm zDOIbdr^mTS&)l3_QWOJAL);jC|6pu+{hsY_92{fwKK-QZMNPh+vm|+YborqB6OJIt zPulPU-YHr;y1s%59C63}U`do#ib7sY%)zY8%gvH=PbLp zN=fbATqe^GEz?MW0pxfIyZy}D|5Q|h4PE4$7JBpANK<&P;__g|5eeIkG-qM+s%wuP zJt7J#DsKM9%@0m8TriU%E-C3{ZtlsR-d-kQJRToAFyrFET|Pki^;K^OV4+BU(}kQ; zj@`blv-YlNGO1}<*sMYumWens@j1hp2)P7ndwkDZkUdc2g8cjzW5j&r=b!Se9g^;y z_p4Q*MP4&Do@}$Twr-yBVj^s3WPmii-I>;oe|^;>>RQ#}O)t0zyM=&7ozcI<)ZE!ee+zr)JPx`d~%;rn0Rxc8Gv#=`>S z=jCC#a`8KADhmUU)KY)3mX!jiP5M7uGjHcXiL7zfTK!(%;{oR^X9wA*{18 zjH}dV{-&@=$)))C_*0^yz2L@@<5y{v0(gQQJ9aqQ+jqo?SzXi7IUd`}Kbd&i_W>Js z=L@w5*dBeu9o+4eTD9OKx~K8=MaIRpLh|yapFVv$b?TI^ii%2Z>Te+8uUJ+oC=24s zQRU#@QnxYB$=S;*F`dPVta~$TgY$OyuX5rTtkOTG=!)m%M;YQR3b!`bTgTi#fnQz! zIm1nK9jY~G(^5kGM7V17k~QMK1hXU7Y*=ZT30aNf&h z>zxOrHB%IfS65g2YyHc?h=W(jsr6r$li=s)H>q^bx_sq|zMftNNc(9S8N(c{R4?0v z#6(XBW&82Acy1mt+|8fnJ2uuE!y^NR!S28UDquX`PSUDzw`Qu6`MsTcbV1#}kBpRh z&GbuCQvGLT!+6ma?C6bGJK2ur3a0p|%8;;8h?Gwz76hF(c-is&;}g$bbMMJUF4t~+ z(54eeWnN9q;8&tmxMDUFZ-BO1$nMFxmB`4*QLpOc#MZGY>u_#3?h-5x{}G|Jy=Y5F z$Qm8B9vdA+T$p&H*`hQUhpNa4ZI_MFPf?Bz4my`FU+!3lj^59G&Mobir%t5d>dBS# z!8bo`MY>1A(M1C;)tdA3^M0F4y-Qm3MXj}kR?(#=mK*7WRS7%dL|eQBarv(DxAdRj zojQ(ycFR}uUx_(K_wRdk11g?Q@X!5w-ez5ioqFBGv;LZm9gZKL>e}gVaAzP9d3AM4 z_P&9Ewcwi*rz=RaY?SuE+Bj#6lVFz7o0D29hO2c>!wvT#vteDp+;6I^!wF`7@NDPx zTen`mDK6I6*B?9M1ldww|2Y`u#A%<}p)_Ai{>zuxaS3s8Sj&61jCb$Az4VjD@Antm zg@dGKRa8_+Q^WrcqAKOwFS&T||}EgG7xx3sjxDeImImIt!?QagR49SSy!e^xYK z)YYVOIv~c{V1ginzj^Zp6mq!cQASyrK|}=E;^9##$7pGn!Q78e4mo{JKi|^Ub`7%o zPIjIjZEdM&OR)Z@PM*|OQ@e-MTHwFa!rg>Uo$3tP!<9sRu!lbwZ62!e`c(d?Xyi{Ls@yj(XJ4*e z%NDXm@iu%*W(2797r*&0fL7?ss3MD6lg;(z*w(SgrjgG;737o1HNM3=cOO0$+nRM; zEyRBMOQFg#m({gv*D|}iuYm|_f@x!7=h>aG+Jnbs>113GQc|+OU@*?JIS^JH0vg%@ z0X1ujlNk?qaYmLwn@j9|FF{3;&6~Hqg8UB!CNPsPMdsC#*a>ZfZLG|XI1^n5$~2<{ zwG4o+cu|K6!BC8ijX6+!s11VYbbS59*L__!^}qg^pU z*26Y&-NC`(Gn}n%KnsW+e;=|30TvLnA~PKD{T-hGBx;=W{x__=`{m`7|?#3P#qJK1RlSMHWDexnf=vEM)J`q(Yob0gk**x(O%XW)!RvePyc+TBaCza!y?d#hT68Sa z5S5siSPFH(YCxT<_u(T#kocyirlfoGii+40Vl$x(vD=y(eh=faIG1a;@ZvK zN5nros`psmwVkmalqhjJN!H`SUFBmFaKND2|7X`6lhz!W2@kZoxdrBPeUqD*y6z`7 zP!qQq;LS@e{~HX#Is}EJvfaDtJE9E@_gQ=T`X&aS@+fl7szH{mum?-~f6?eRTwQfI z_3y2z1FEsH@f27x&|~78FJBDc_0#lHS>@B-={@jtEiISrlun#bb19d%7ud_3o1L9a zaxN=RWmj4`HbH6z9st!xN1Dn#5g&QjXLC)kl-fo{xei^~4l8rREuTJpeth6`H&8B! znJbamSCjMW0@ocUJF_A)Wj)62fAqaZ_>X`_T$*O0v_sQVZh$Xgd_uqfuIfP{_C#qZ z<+ZhG*jQWJe~RRXXwU;#S4{5jH%XTBybKHivf^jJo_rWc)yaN~6EEavE7Ty}cLpw# za)3asZsLS3YK#Er=$e_C<)$7)+~%%-O`C_)|AX4hQfVe)mz|q?iA(yHTOF_TtvJ5P z!t$X`s227gIFJP;B;r*T{A#C$YOAv~6SJFmgA}^8cEN@k{XN|9;V$7$-F8^6h7}O+ zzYm^kG^3e0m3u$hz4{u~p1xhg(v0CR2>0N>PSl`8^=qWFHXndp0 zc|g*4!Fr5Baax`wwY0V(5f2skbX#Jhke+0v!2bAnaht~o zlZM0U{PoRw*ZR#ez;46=GM8)33#+E5vgJR1{J28rg9D2F9o)EGith!WryanxrR+P7 zK@E8dvIt;uXOFE)N=g^xgr&Ln>`vd_-u3(bND$klDdW(SuOC@gxmJGjBMWk%zz4;; z)XZPlTqMaWiE$*s9%gLEQ@!@5Q zXbHks7biYH4h`+5;+EwhCqe~a25knr#3nDG-pR5ajjKv~nXxM?2%*jZlWP|PfCAbM zl=XclF60&!T?L}!B!h|-G0$(}@&C~zrw#)2jCm4&Cn_rH07%2y+FIHeI7wI-=b{m> zYWXDe@{%YafUYS3>AUo5vRuzBjvvah38fTj zk^EPX{uY8TIswT^;Wm5-abjwawgIWUkex^b!RA1hirCgFTK|%X$49xG zjH~|r#0k%3lD88aLzSkVA2_roAVKM1u_a*H(xArO+@PS@=OrK?@3q+1c$j1M-b6kW zGXT>dTOW?JWLo}vMCZn4^3-GR@WFhKv)$M*)N$uvc- zuZQ|gfhWAol{_@O0aRA%`dbua^F2qz)lJJ?_EeD%XFxn&IdCFQ%TZF6d&07=H^RK==jOd#(DVgSdOBn>vs%9;IcgsSjg3bmD9&eh4sr;D`J)zuG&|5yO!hgpCk$Qvg9 zzC6PpWgohY9No=r69yh3R{F zA&t`{o5Dg!TltZ_)6O2;_+BpPLqJVI41o3!Af^tDV|%s1>`06(`Sm~-5xUlL60UWt z*(Ro@(4I(&2T?Y)YfstJ-@epqNgl@sK^_+268Hd~!}|O8?`=>V66l*`di)=MFh)g3 zTLXs?Ym8f;t!_VK^y+OqeT0{8pPrFH0J854Sl;#VlP8)Q8lkJ-?y)Du=cM?x@bUA< z(^tajXQ}n{y2|OIY7MxvRcKBAXbT0uwwp`34T_sMDxt|S4$C#~qWcy`yWUABM*#vx>w6MU()%WXjIHK4gY z35{jnsk|JKnQcv$GvErdD=PYulmg`jA241)f*J1d@^Si6Wl%D#$cFHBc>UjIe;QaC z4;A(DLjgouWpt9=V-I`+pyr2nXVi(L14DsJ& zG@q8@2gQRPNymwBg>unJdD^sIk}CTuNQd(5ttIj zDRpY_!5@34G$@1jS0*yTCEdO$gBLK0#Ev#c%<=3MF*5Yi%quMH`C4ozb)z9Ttv+o> z>wTJpeMc#*O@CX8;((d&*mD695n?EhV*f329jTHIMW1+N+m}L9f~E|~8V+WgscWqb zcz{Z1#%KbYxm`^HFr6ZX>?v3!2M;taZskRUHAEk8$p-S5UNes{2vRt{@&44>UOquV zuGm(aqUu?>Vgz27%K-8`@u_lYy0?9Cx|dpGGZ9cVC2Q9vlX_du>B|`j_=$SMNxDO=Q3LoynN83#icJ6fsItAhIe z$L9A#^=HAY*#fw-h2&%lvkBSIUHBD;jREWLR{*C=f^1aDVke%h{wQv5LvM|s6L6br z@iId`?*jl~jwAXz35#Bh4h<8t1&Uw`;{__M0FRSxppX|gHZ~q7d6T7JNJSdNVjLP@ z&K{<4=*H)pcx4RDJ)g^Z{fLvrZB!sX5!SF9lrw6SF8y{{tGZn^Jc@pCfF9ytpeK&J zF)o7~&6mc-jfZK32R-d^V((#jJYblI20h{UnSpXH%y^j0kXy_P+Ujw!4Y~6(Q&=T0v|7C74qvD;5k;;rtzXPQNdTkQ6F}! zg3CYz%6D}vHra+iAP5Kx6QD3WY*n{;!_2~Bwhfw<92^{0Fi`X3jFY|nS!f1uZ=J>c z{Ax!4shAF+Z=RM!Ks^CASafA2HSp(G+SU`ZNMv_|-VMABFDOX$K!OvNXZM;4z4=6V z+}&+Va^&`S3Bid|WO$M=zGC2jtV8S#Blti~S?^NnOgY&r#<$jj2JeP}!Br9!X9p8A zpxzZ}Bj>#DQ>%k+IMKH@FGS|$<%u;OMm|p~TJXf4KkD^O^H{|(-oV8OVv1tH=ZuT; zt#E3hp~3(^!9-x=RT^9+^9F6aM*a*-XJ-td2#wY?wq+TIPCjl~cXetF?J3{nSghq2 zICGf{+jd@xv?V6x0Z$Twt~<=3^g>aMo3m17=h*sM>-2;OvJ)NBkhk8Gb zO~Uj`H@ElTi&#sXaU^zS?gk7+IkiL!MP}A-4%F+zFaVYy)jLtQKHG(q1W;h+zjwZH z@uCw<9ub$JRi>@0+v!UWVhlLM@bF3zJR#bL%cb13oaB`Vl>a2Azv6ZVjZp{_wCo*} zgUq@BLrVjahy}HF8mjR{`_xY)oTGF+*N7KCPY2^vRBYGoIMNu#DQ^7`hAMu?OnoiR z0SU+=Z~ZKXM63^u1sH^Axww5e@&xL(N>S}k6M&pk;XxZ2#Xo+0E&gT2>^suDdaK71 zoc42YWI#shHU0t!mA*{hB3lkpqJ{K;vu00CIRgf-SjqWMNMNR<* zj19;l0$$GM!L8g_nkAVc=MGw6i*VqD(CB*7lHboCc|aOvrBBOoau(K1-yB+*RK(Vg|XIwWGalmA+sycsz;_T5wEYI@xzUGLP2Cv zDhuuzOl=nwwk1Jy9JDsSR=NTNSX&thM;v7?s9}GVX94Jj{D$CeF)=Y@9uPt76BG7| zb8ojnOUb$eeb0W{$jQ+WQqjJpiO*_)Bn+(idV_B@&`WQ>OYxf$Legp#wQe1OGn0S@ z)~FCN^@p#vE6_qgL2wIEsm&Cc1KqHMsW z3+jDjG6#ufWK;S{29O_ld`I_@AnzgjfiM_oo3SmUU56B)`{)4WMHN*3`lhD-x7iPx zTLgd$RCht37sb&nV3KtLjCn*Z=rmru!li literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3f920334a790e4ca10e29bbb7101d5886ed45301 GIT binary patch literal 12748 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b2c22d80304dc394ddb71767e357109e04069d83 GIT binary patch literal 10074 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8bbec4f54ba2210b5f82c7ce56943c9d2c10c7d7 GIT binary patch literal 9981 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 E04H$RG5`Po literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..30dc208b86a3450d9555482e690212c09d0bbe6a GIT binary patch literal 13119 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..83c2bf6cd6a6c69e47abc40b21f0875758c8ac79 GIT binary patch literal 10981 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0ffacdcb9f233e69d0b79008578e2162d20e850a GIT binary patch literal 11910 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.1.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1037846c8b38c12eead1d5d7e16cf95e2cb268ab GIT binary patch literal 12019 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a8da20ce0d517993d6c9f23fc6c0ffd2c9fed5bc GIT binary patch literal 10075 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cc07fbda229af90117f5074d31e6d4a2267d925b GIT binary patch literal 8702 zcmeI1cTiL7y2cmk(QQRGC|CdmJ8h%VODq9Y6huU%MnMFmNexmG_I9hGTM$qw0xF`E zLy#gZs6dnwM1&ApkYXr-&`BU9_g(I}XU^QY=l*f_+?hLf_8%+@$y(p~zVH3L&+~lY zXHAUOui3f=L6G$)Phig>$g(g55$XMDCH#+CbJqa;q2*_A(a+rLsvrKcj}vm{vfp)g zFF$uzhaCYyKmCbI+~%NV zN$r1QE|{fd9uXNU_3}x}M5?ybN&ks^{+aRouY5O2OeByQI*%?+LyDdbCSaoXor{YL zNo4s-EVD8+BR5xhj>BZSmUWlmsRN%LWZ*eHsxF_OmMo5!^-p~J(5)McgpFIwh?F?h z$8!bq6j^zr81`WT-40)Ks7Y7cRG)Xnz5VYy=f=CYX)r^43A}sqMh;U0pS*`Yr?r=O zJL)bBW#sz|)?NJjrK5P+Wyq1@10x8(_ok>rUEKc3V&Y=4_Z-8SMTI5r=Lp6*4xjGt z_HI<8R}VF3IMzgL%J=TC4IF-+ASc&H#R$ClQwfwPs!Xt=Vf5BbFbF$-4UTW1Xj7!P zL0bF#%j3(CAs++ju=VTLtKOIzNc`pUvCPRFn_@#FBcsg8%O7snd`>%_k)N+BC%1Lm zw*D{1D$$Q0Kjv#c*mEYLsHiA#X_j8b0xGR}`sTAZH(Q3tpKLGkuyJRQ2OaC-lj-H< zx(o9hrfd0&7kl8}Q=|MKzO)U&oiX{QxY#H-I9PDQ#-@{{wE_wIZC{;ESnwP>+^XPe z%`1!7>6Ur+-9=1;$jt^878U~4DQyMZr;Lp=-n==i z?%uvpRG)h(E;6cdGlmpM7nBvMC5M{MW;Zu_+3Xvo*{8`J59 zg=)g~0_UbIj3yGMd?8LGaIBDC>y}rsIj?fznn3kxLt^4Vr&EH|`no!YrG;6ZM*zEB ztPIbIu~n876MJi`Y#%&U2;-pT6?k@+zRb>!5|cOFj;Czew8_lMiZLvLoOO?w(hGy{ zMj9)>eb#a@RX^0BDolhosWV<8|GnXncx!7be00kpXId28w7)hwl0*s@-&;!(lXn>T znw1|o+2?ZYS_E&JWpw=b@$=`;`z@-9Abtty>#82)`wf4AWjFfT+G+q(dHV6;{W1jZ zH~v(LUU2PWH8+Qanc;i&gXyNJ`erzs>{>}>#olZYq}2XoypvVhUbAeNk@Q!u4p`gR zlnv0|NrsFXW%AYb%an~ju^rlvB;6}rVBuBw)y*TzkO{`W1V~aobNNq4Ca3)`y26hg z_5T$R{#Pg?;e-%4!OTdgeM2WFr}Gys7%C@3vQmPTDg54dH=93y-ne|_I#OlmqM@Cg z9h*s^w79W*Ds=XkrfjbWo{u?tb7f68o+*7tRCav)xCk;7V6Y{Om5jIV!ZSnjp*8|} zg9-hQ-EzaXd6lc$6PIR5q>|Cxvc5;oDdBrlLk^&UX@yurT+mzX&Y7}PdnqT zSjBG&`Z@EMzrR0!7AN%Y@~Kx+z1~}Ou_EZl-^IixYqxn-0{~H2)JAWUY|@*zwS@=g z10Y{!WrdSSgY^m2uD8DZ$@re|si~<49nQe8^A;8cZfw7NeQBeQD5b`sQ!O|fTmOiT>QEkg2thpR>^ z4qN@~51{NOz_S2O$g_<033^ zp=#rm+hP3*12!BIEg@?Hd;}c*{ZAK6+0cP z7d)5LaT5r>(qLPdtUuh!1qKH^FtW0;%EnRjDelx5>3mq{kAps9VnBkvLb`qA_wV2N z+M{hbk#%)-@Xpn%=grK_?g>X8If^1-4(4$jkt7W-ds}?BzpCHR=Ro1oyyNUh>tsRd zl41%`z%gUe8wuYkU zj7GPFP5^u84GlDGMq1j=mFuK7!oo(EmX@|th{R0)08WqegT1CPAZw{lkKXJXFXO~~ zxFd>Zr6Gu48T7LC+tjhp-^ypc80SMP9U2I?-`hltbmTl_p zBtT$oqXshxM;Q2cFH!e~58CY2J-ei0^%q>SZQmZ;ta$M(3Dq|0yRG7#ZlzSSW98++OcJ_|Vc2ptEkf<}VlW?4^sle2lT!av+#$2zSE8-8~94RE=+wo+KSd3}tth zXiBOg z?Zl$o(hUK#O&o`_ad-st3O*|*_v-a)c{vBD!RF>>G4Va8Kjs|*Q7EPD=W08h*~>Mv@W_yPkVfSXeWfMnYju%lD~fe(G8k$L1k)ftgLK;t+u~b=NdHuYaS5LW%heso3j?HKpTwH-@ww_w6_iK}5ZPb?htBsEXCu=18%cp7e zvGjj}m0cAu)5ycagOJ?#L<1jG;h6ffei6;c;{186fkDlF{WYjAjuT0AvT8`uI)nn3 z%V;8Omb4GNoH>|b6dMC><|2g zrpucut?EomdYPLW1N=+W^1TXeKuW{Y7K=Tdq^W8cB_(E_X%bx%DQN`MZ%D;pwr<_p zHMkt1xxmeti#_w8tVdqwjUTRbsEOeAV+8#q(#29gSHQ3Q$jC@~MTOp;Gmj-iG5qU< z?tdx7*ts7NWFHAtalDcD_7y=jWT$!u2H9z^EsH?2Z>*fnf4ZxjF*n~ zm5%1>jFTY}_;r;G2~ojzz7l`XOn4 z^o2=yGAp6At<4ZhJ97}^Y|MO5unOhBh@3vga>TFVkTRlDKJgy)aLK%L>njUY0Bp%zha0d^#>~=E5;e2MvVSZgf(ldlda}5(%KrV~ zx7JG5zQ48Bw8RATc(#2-sltm@$aQO-{+{JOAys?D|02bo2jxk9Btgk$v!w0yqcbC| z3b`eH5$)wSeA6;lAfKP#-%zzTB~T9a@33FJ+&hbul*`y;v{xV2(2xweh9Gu(h7nux zm6KgJSjpatW5ra|(1U_#hWLQ{PLyzVC=0B>BPjf*XCaD_K%LBu>Fu!&8Ih#vyJU3QoFW= z3742cX``6!;gGqQ^rPGWd$t|_1j3Y>R3R^w=pF*;qTNBGFBfKyq&XiMNxCUvZJBzL zLlF|dtoV+D-P|H~9=}};O)edp z_ve+@;1m{>lH=)DQ) z!G+WGI7m4m2{byLqN_y%fT3eHSh;r?kjQ9wbf^IO-&M%E7~IMJ0#JRd1mR33rcq8V z7$V97G@DaUP^c#?w4`2z#=!6>?v9@w@78&plhYWlXm#Jtztw_~ZB-CcmMX0ia7FB% z2eY!Gg?oRuF*#DXbYDGL5!Pd#-04}Sq{B+`C4)+GlEj60&)t;e_m<>Y;&7=3Sb?{I z$8u(+5(U&+%_WIZtpq2lfL04jC(wab;3zIwSv^`W^~;VY7$PA6=AJ)=!>qzA@Y|&_ zQ=5Fxd>Zs&z>BrGX1{%_rJ$tL2+7D@CoAZxMT%u$&XMau;6yK*;hfrtW-!^6 zmHIl1?1BOaX*BA|Lg9x%@Gp#5BEO#vcBY{xbiSKyDi|;&Pd8yO!QXC4lIixrN{cr! z+?!zM348gMlbo#7VT-#9_`Kv=!&sSQSvMD#kC5#?^k9&8cfR#?E&}(&#t8;-F^kqp zN=gjq69us4RX{J`+Pb=u)HF1l#qQ-?%$LK|4rg9$daJldsTzgfs=Kvivq5ZplnG|% zXG3bkkdM{94^vSA(KZ7*-lIXEx9+e*8D*TxCmucJT9G97ElK;2vEBPK@KCdU3LyWGCY`uja#|~`Q#iJ{;SaNk8KuXd~bYG0DjU5UdT#0p?(~S_{T^fAR~i~ zOzptzG6`OG_rVm%uOBys_;||k&Iai^Kv0sBeYxh3>E;e+rqc3S+S=m5JUF3IJR$q} z^WCG}W%GLlzu1F_pSz_JvQx;-545^Hl6gXB>(0u_Sg@W{UPO{b}%~ zMJ+tK$KctVnVW?1uD1+`zNVX;8y~k0D>G@yIt8SU_BRF}KIjp>HEET%pE^EQ0lSHp zZ>yZpn5+YM^@Bl=OQ&Q^g7s2;Hn1UwvQfk-EcYzE>j}V$d zqmt}tzx#T2m3W(-J9nR$0_l+@Wx-;*md}8OXZ<5rpsT8PU-iYpYZh26yX);CI3RF@ zGYU|mvw1{48b-)38A^}*5n^9!eT9M%GpPp3r(XfbJ0;-#{ql!&h~{M%IV%Xs$Uxj^ zOJ);`5DiQ#`Tp3=0d@?a2*eTpZwKX2RU9egHwmN4#!D5@vlA!`kC5pnOn%qmb4@MQ zzCEZ;Cvxu)NubHlR1)>i-f#{AZkj?^a_B7bnEW6s_ywgHdbDC2z;LRRBbl2ZKIbYY zZmD3wH1kI(0yjc7%wCZ@<7aupD9vvHl6HP(aStEX01&1ep$SjQ3MXYL-l^#0PzivZ zii{OAV_<#@Tc&`AhM}RMx^wN0lU2(_tD%CXvSPBbvm25VTiPF8r+IX|$!eKSun*c_ z$*oZ_gpL?nMu10Sf1f6wNM@@ILYt1dxk|M5M_ZDNCJD|`M)@tMnc8vK<3~G zXH4jU0=gFcF*@V$erSXPStUQ<=F0UEfLjfaAI-y-j#S_2Mhz00Ae#w&Hd5f#96*;%!ikxotE(#% zg*?R3^kI*U)F-3h${gsqcFo0JOf&$H(d!aF6;A9-dIN}4fkuvQR&R*TsgR3rX@VW> zwJvkFaXc2ndGK!fdrl{A?5D=Yf)6mtv#-$iE`xL2n)Mo88!51w`g0ls5bGvFc#5W( z=-`GJ11cywWTlY*s1DmuwE zYIIw1KvOJgL`8|*4_r6|40%rm%{_MMxBmbV>!I5K literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5b8d5bf95d5947d8adf866aff1530ab71624d07e GIT binary patch literal 15232 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�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 Lv{myjTHpCU{G$N@ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..05a84c727ee8d18660451af7e73c60383d4bdb38 GIT binary patch literal 10064 zcmeI2cUY6@y6!(L!#Ea1L{yL{sHl_-q7*675o8pFVNd}fFcJ|RArL}`fHRH~YE%?d z+6W331OX+45-bpqDk9QCk*<^wdP&*O%j~oFxz5?w+JCIQ);WJHuFDWUlP}-*mizhL z_mi-n%uQE+xA{8^!&V>t(fDT!TXGr0B)Y!+29E5n=k~%cJued*FDv)+UcP5Nov{;V zy*ymqy<9IkZS`^Xq+WCGhT_R-&KUo~{4nR^_uRUbeo)Cw8Opd*T*v zp+to0_F2+VSNntS=0u(NT2|ft^1#jnuKjm8YE?_H%jeej z2TEX=0&&S&Y^&zK9{%?+5Ka_dW@qH)YWa+`%9bkzx~^ZpzBf=0dnH|wqt-#2Y2Ss% zGv2(}mvwc;D~q#DnM6xV%Nsmr3@Zt3attvvH=OzygjdEd>q_?+&MrSv8mjUWg+fWP zUWzG%O;1lhdi1EGI6D1DEciQ|u$h^kZ-Xs4h>IC-V}204*1-POTsPGpy_3M(fsN_)efRgC`0u%>|9o%239KVTEYx%=rSICaC;Z8iC(T9v z6K4kq;}y!90h5F1U^c0oGe0#{$W3;({n*r0KKA)7X{_tDrInQozC_^3Txcx`2|0QC z^pQh{4jD{TYb7^slfWjA6)Ry)8MZPL{WTF~5pw09p4s&jP1HuTwzf9sx>ztLblh6k zTRZqWS10Ic<+-(O@b>n$w6>P3Gn}y}*M4|tMk))Jt$+W1ZB0#$rq|&6N6(%`(H5p@ zt|1cxb&T=xaYcP2>~hBg>t$U;-*(yD^EKg{w9c2dxFl~`y?V9gxr*z4UB5{dB!<8V zOP%A08+1B@sF9nrcCr`Rd7Qa{WZX=^E=TJbL^% zEG;dK%)I#PuV42Plv48Yv~@xjrbp^OeE8sOe)QRj~V#lACV&J?t#J$%^re1b3^kgsPOTjnTi zbS&!>)O424@_QH;o-NGq7_f{rbg;|poji#<_?eDC_o9W-!t7sO|E}C|{@u+TmOuY| zv+&f(lapQFNnim-I+l7gKR;WaXJ(GVcsRYiwwg7kY#JSzlar%CZEb5yWwG>h zTws>@!?|@FtvUmlI)jPhqoi}6VA*sobj%dcxQDKMV*(pCP98hx*g)u9NvGe@ad$YL zY-Gq`;BYcKkJJ0A;!NSE`i`cul2Y1<_zmd^p2yT|bG9of^;h4OiP?D~+_@^YtoL0E zY3gfZHaxdsc{&>#gOHSRS=65CHg|?)>XEXF8_J~m6cbAa2Sr$k($bXHi|O9BZ#Bym zWTd5ClKjsn1blsL`lUhwi)K4WU$#m+9tJB)>+8@^>cfXS_Nc0+W@l^8m?`M{jz+$D z(`lcPpi6PeIP-GP1`Yd-%yu8U$j$rre99!s4g7sP*igmVS%UPZ}B`as|afs{NNt2eYhwUpXD@%F1 zTBr0GvtvGc4z2d+=x7@znMfXfvl1U!Sy_4E!UeioRZ3Bj0lA3J$^ViTucVan?3wy8 zGqaxip^D*;tegq_XjQ3pf!cYksW>R))k zYo?U<2H_>TsE^YfOBQ}Fa+EOe=sIX1oNRz%6C_(^Ohq7>e zjZ3hg00cB=-(E8*2^OZn^j7&nJ-BuIws+wPTicei10j=eaQ`(aT!*u{vvXg$VhE@; zUovD&QuBQE9l#a3N^;QNCr_Uert`0SvpO8~k=9LG21{r>csWS$Z<=IoeseyBL`Kl0 zP3AVc{b6E!(%RbhE>1cdKA0=Gp=^4@*48#o50s^z%MGfa1yANn2&(VhP1NX=?Ux1V%5UvbUkW+>4T#&PAxgk zn*QUxHpKznt}Qt`PG{P0l9pb+e7UCYC^ug?-A4NO$Wqg@x5DPd1eUjKjUJ`D)aK={r_}88zb6-t&Xmap?0m_Kms>mZen1uLL?dLPmi|C zqYvAst$hSY(b#y^roG#P=Npna-DMF-k748$|EoM5l%g#EM|hgQUy}8F#nD^zoq!O~qTFcU=aJywe>dBY-whyhkfDG|aJ}jh zkD7b?HQhUkY>NCSuI&Z;K~;(nh#Ce?d+CQXq@AGj-L~db-_;_u<+&l519ad6LiY8m z5exR6&ajaN7KKfwfV2dWFVo%8*tlr6I|6BJr&u)810>2QpbTGT6W6bW*x1Fz<>bkerK@$gYndGZL*@MzclYi%aNvMbdx1AA zdnLZ;dxRlS26EIQ0Fd+f9QmHKcyc(Mo|l)mOI-K&-exg1|snUwOTJH7xLk)DDen)KB6utd2-8NrbSm$Wo8>hEp#}247-W9YX zK^wzV5qRSEj?}N8QC?6W zb(`l~;c`5gU<-x2GS^{Uxi@Ao1#MTG$)P6v89TeeNM>Fh5=Lel= zOrsSx0cR8Y;ciW-RB9ZJjjr+Cj=0i%N>BG|NgP09k(h#Ellh`Khl9qYV8fi|C%2gr0~=_D_Y$y zuQ#(x_HQ#TKYmspYHJUy>PW=0%%sCa|7F;$!Jw>!u5;xrzlj>1R5sfP#y=$|XD{$6 zwWKtgI#8=&J%9$}>FHaaxqet| zL2G`gwm(ld+Gh>}%3ZG8CfVMGY;?;lPDGd(@h78g&2?KaENVM{kT1iCSB%74l9SZ3j9 zxNYwFGVu4^U?!ulUAwk%@3|ih#$GLLuPqr!3hd6Q(ujz6XY0ZKk?9nU`t}GW>KI^@ z@k&NT^UR>RahrUPv-WUHlu_0IM=E6YZS%`Z)(9e)$?hQwZTx5MG*wRYmcV^$WUxQ2 zD*`b^U5~9v!Si1L^4~?tZrE_-#EBF8_U{Lhv$C>^o0FCXl4H%aG2I!lv9TIdz{Zp( zPrhDXFj)70xc1pkcJ5`buSll8c=4jj@8ZRa@Y}2Kgqc|t;=!qy;fWuSpZ#Cl*%|1F zVRJWUuwkqYxnju6!i82_ZL)Oba!X;_xB$jmBF^kBA}(yVd0cb zerX_~l;G@}KWx}R{$5^Qr7#~59kjl0|iTb`AsKGMGWnYn$ zT1*YVo+o;rR-jgEnoiYWSl5Lw|BZa@QWMmaRffr^aGsoc>h$@|RZ5#1v+R*&s?$j8 zOA0_^Z+~?%fq>+8dblOqm)DUG6&v|`zBK1?iKM5bq&#}^B)leG2j?SFW*DqXHDyG@!HxPp zt{ILc>?)yctO<=qTZJ<+_(n=m0m420cop9FE{GSew9(pe3zU8&b7jDMJxwK|DVJbZ z3@bjG_3bObjK!kO?=H*s9{QxqE1EzVAgrK<5y6Rg?Xug}4x6-GY9rm+@{rbn~$#yc?w{M>@puwsw2lgSI>}1nede)9KZv(Ml0$DfYz6IlPC6Q28XZ{K9 zodZO<)+L$dV=(p63ULUXe!k|1m#M2Y8;#bLmhovcyFA9wBE9flB7Lqnt{+EuXe zZ?ARW8xS1H?l0-d(cqB(FLc}u_Or=31I7-;Wzy3BE}=+g+Z`bagF;pR@#A`{bn_?( z0dz<6dp!Aa(kPC;di5%TZAbBZ6Zm5!v%-a$0k-?4OA&M_iw8;XS>j^F7Ch~+MWS`` zAJp&NY7dP+ORs&+m~LB{`CA|0+!*8?;UFwWK!)S^kP7(m%j7@@5r@t}KEPTaY}V%{ z#8?=ys)TTIhK#xHHk|>cItVmdIN~1ST9lH~{Zpu93G-&(oP)$;>YAJGhO{+oC^Zn{ zeaMyiVAf}dE!>0~_hOAVgA0IlVxHjF9cKB{PuI(D(?p06O-xLRAYFaukfc(QaHTh% z`h4J=?FJs4MY_0s2wb{^u50si6g9la%k$af?&cN+sVbSdTUAwmSioSzWN;v+FRXr? zkx^YUH{!T=uIq|accO2HUT@DDQ2%dMZ~o{!oZl0zFOV3249FkYt(^7OC%HTb=;JB- zi`Bbek~l!8PCc9`R(5S|Ey@*8lu&pAY!0e$^4hKyH8?%bb11>M+W>+GVLeL^@E3`u z-~5+!Dpe7D{owF$B(xUlhG&8E;vv?F{HMjZC^pF-&Z%;OP#JX-Aj%824-rmjdVl@+ z0KZ}>mK^dAjTp$aD1`#kK?~|rbqs?>L4J3*suQH%ro2~r42;`N?TH8y5 zJfXu7Dc8*0)ct`rqUYRKc^je*Y1kXtfH^_;d47I|c%)*?bF*}_BH@{3% z90I;PR8z{4bMU)gH4ELN+lds;CUD#>fEF=C@5WOt&(FTifx0l9ky~4-2#qB2j1DwE z)Ra7#(DN}wu8E+1gx6qQ$5N|WJaH4zm*~^(-Q)~2&=RJSbVnVssG;HE>UOa>`AUgU zXiAziO77QtSWs{vo)8iomkk-hIZ%)~(MYFAy(&ko5Li4nxAuUl{Jsl6`Ha6)aj~|i zlx=Gohn;&KK%%8CcsiG>jpij6FsOf2JTmc>*@TmB0Wv1U5aj3ANK{BKw3P_kG9Z+- zD+#7e1LV3ukXIK?5X}ycFgt5=hIQ~9;9>IgU@GH0a?{h$0C5QsHiaZ60?f9M7>2RJ zfe?|)^i);|1ZK@7sX3yB8L+tA17ZpS}>FYFgOert}@TPGs&&_`L>0* zx{!_$HiT^Pv;qCjcc}a7Iy2hdl4KZ|gKk&)hT&}26_#c|GCQEwxh3>B-)hbBb1*0G z9D?{|!={9JOEhDyuw>C}w7HigLI9)sG&8f-hu4u<3^^j2_gs2~V&HH#cVlr~y1zLK zWHARt>oan{!DK)&p{`t0xazvXu1?b4{dQ6OpNmYYZq?-Ol&S>?yevrEu-y)x$T9%F1Vnv z*Ded8##t(uo)VBiRxae*=cEV%5Arb7H(P&y|2(MdYE{7#PDRkZ<|aU;TwI|59yjIN z3Vq$t&Aw%CgmkC9<*rN8-31Xd>wVD3CC4gIElTN72~-Wjw9Yua0;WEB3*Sh$V18at z2k6-q`dvhaL3dVPEPBe~4OHK4=-bl?O94g)+NnOJjKjeKcHM3qab%$nA97b7jUpLd z4`Vc}LYO;x+TK0^_6e^3fKkDlncf(SevX6R=c}+UfbHQ$5NNyM3M+l{Rl6U&#{cGF z>_D4p^b-qbdQu`ZDx+3!{C?}s<9F8Li^hJ4WA&6X>V!NnW$LJ%i~SIW#z^x&6WV-5a|7jr^{L8A-L03hq8guCn?gE*pj+Fmb@DOeMn~U- zM=cR92UW!dHf$PXH+7+>!sEu)rN@{b*v+1A%;F$%{fiI)1@h;=K7}(f#IuZ^$p#CC zR;{jbCaeFR-|Xkm9++1BVIyDy9BOooF4U)*mQ%{N%w&tryTmHkT=nWL2PUm}sh}2Y zK_9*xtO1yn#wVv(Diw4(VJ?OcCWgE$+MPCJhnmB)mDcQaI_+K!>B08%I|meK?+_k} zCoRP5k$|DjAJ|2CWT5GE*j3tjMjutl>`rv(1c{4uR#rwa5VHN+Upac zu}QN?RwT^VGf;A$?b%mp;dOlJH>*5$q{%H9Bv7G96WJl4FesEqtzhy1M0wvUz431` z-SUN6*%#-i2%;MSHG&~DQSN@L8UP@i4U2gejqT!0ie`I4xt)@@ptWG$-qFM#%8*AWmsQeH=cJ$4me zDiSV`po)dka)xT@(#nWdDD@_CWq%&J(mmV55F58OqQYTbOkt|XPbe(fYm&k%m19w{V;Ir{^8Ig!0T#fUhF~}Bp=c%>I}5# zG*EOp`yr0K9y;bhU>}SQ=<7=@Y`6wGuo%*+p3b1d)s;^*IpUz!oQ-21@?w61-GxRF z`BgL=#%J$e`e8R;tZh0Rtv^av&CFLqYgQMazXu#c7?NgT;%6@?FeZRqf|g{VEd;Km zCUV5}Bu-=)RH?UQU-)thr-?oN(r>!O1r(zfq1*4vS9YVXGvH}o%+M@DZ)Qs6KoaVP zLnaCDQ)17S;e%7$^bR0ZflP6>M7&UfHm|*JyZ2(O2&%npV20O8Kv_1*tI_ytlnBP( zjwW~X#Tca9!x~)d-{XY!xH6d9Sa|{vd3QQNcrj?M$}w7##6dxhV78nPjSu>~GL+kN zecR#gSUYmq)69ZB8U=$Xy8U-ZP9XH5G(kMMU^jf%L=M@G1g{TAQQBzX^L*0(FITRG qclq#y@-L7+&h7w*{{Kr5DIgFVuC3ZLPxQm!=ctLfapn)d{Qhs;nlXp~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..151eb62e0316951f9a2550c2ebd9d769709e2b37 GIT binary patch literal 9099 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 aFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..dfbf6edcd15665b4c68d474e0e019148bd99adac GIT binary patch literal 15210 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3d6b392dcc7a66f877f7fe99ad82d94f2e25ade4 GIT binary patch literal 11106 zcmeHtcT|(xwr`XzU;(xp6{K1y0!kH-E-GTAs1#A8DI!gJk(NYkY?ZPF>AiQN(n|>2 z0!r@z0t5^lL!=w(o!>t9o_Fti@19%Eeq+2l#`z;S1QOP_)||ijE9?1HeQmZqJbO?m z6dU@|1p^dn=R*`~#|SGkd`G@xa18!Y^3=NFY3Op#^TBO*894;a>EdoH)wW!_3?H)F_0mlb6pG_E^4gK3k!_Dc ziMOFIXd3w>(1vhVyC(x1<~cN;d=jkQx~F;V(tD$ji{h+B194gYN7cf27m_ro7g|S4 zTDUoM3a-6uU#U52oA&mi|Ht^;GSXFkd?D$$fXSm+5yRa%R&&icJ*+`o=G{JT4oPf{ zRBG@kmhXSA@KsWsPHJW!@1I;Bnsg-I9LDyW9}kwf2#b4j@oo+m{QJ=VCF&>m@4g+Z zD3sOVoj;>cb+SJlfgjkgo`s(`{rnKVMjb`%K%q{aN9{zRZan+P8~)}laq`dXTCy=W zH&^zWdCknmlkw}Xzh0GML7@hjt%D`aDpEdvyr6Y)!1q)zYJ*QdQ8_asBjc(R6AHC) zSU*WMwF*94Z=jKoD%85rU*ifhnek{=vjYbD1Qx%S(G=g}ED_+Wp z$YEiETcjxO7P%;JR)>!N$!FD(YJqY-<@+f<)nezl97blsRjC~)*W|Bz;1B;PRl=#T zqr!Lbp0KEB)2QnS2??F$+>qw#_KXR!lNzQ`bo;|I zv17;1v2X~~*b7EWnsMn+Tktr@%!T04}l9@#84M2(cV3@| z_rBNq%=AX;W~F;3ESIS~LiEZrKQw&*!Aa%rz1->n6=`W{&VH*-j*j_*&JW7T6+?3> zakzYpS#7{gCnqOOlO6s8SMJ|0xMOYYvMz&s;I+?qRQ<<~C)Cu;<>loA-xd`~_H=iD zrp|j-hcr-k!$bA-^dJwlwB)%wOOmqF&<+zY*3oI=r$G;<;CC|)o<)m`iyL6EwX(9Z zuVZ6#*?1Ll;9&M1I{BMWOR|P#`o$1~n>S;Ha^JkUT70jiv&w7sbworuja=@yy|p>; z&PK;7d9p3pL`UZ(^sn%=-yoWV->4jNt~8T8c;G-zPR^zCLF|!T)7^0PWAi@Fv;1|i zbd2$hpR6n_l3J70^25V_VFakddFSTkiGRNs78P|!>mt_ut^3;2bY4!*RX4Y{*9%QE zySt5O1Eo5gqWb%q87(eYPS#84I62!;A*7fo+gq!`XngHj-m&Ay<^5OgdwF|{tEk-4 z*qRTc|Gpm(<%#}{0Cp?OPm`!L#d)QNsCJbfe09=3Y)4=avbbPkVdH zmk3b_IBnb3glX@sVS>N>gE=##`rf|1R#{ou*wWIIdOm2UM{kjNeh9B(UQLaemzNih zwADid{iZuJ>k>qh0}M>?7ClL7{+=UsJM@xNZ(dPnWCW;N;sxaZ)N(FxTkGaTq768o;#QBhe73+{)lU&qAc za9Q|hHbtF^5GpM%mrz%?AeT9HB`A4#&J8MsaLb&d*DQwCE@eug!(l2O$?nRXnQ`zX z47Zt;Q|Qr6;|Biz)d~8OLqF14!)v~_RM%cv;%|`}f8w_rs_tqISc+e;nuj{i)@{emWr`Av~w;euFda#arT`rP&V4W{?|B{VzD2+js~R z>fFh(9o*ve+@~yRZXDMR?XITR=C7^!jZaL>~^`$2UGnKtLP6@pi5=`Xeo6PJ)E#jJa`#K@dC z%+l=$!);i9`t)f!TVvC{JdBr@S0cOXuqV{gl;b&phcYrU@VF*=dU{p``T05kr3*f) zL(bHBpGOlq22d$h*vpq+04BHd5h?hps;at#mt0bptG4_;Y)i??8o+Q%-mZf^dT->J z!*v9$rKQ!_)@E|?;xkz}xzgJon7uqb?S6l>D?Ed-IO*7(a}8D(A$0K2A&1_Ao2KQ? ziSF+1C9ql=g=l%J?EWjy&1H;Ev}8}5yyNS*xV+b|4-{GuOrJl04uu@)sdg-A-{G{4 zjeyA4uTMxy>TfSy+0Mwy5*Z)+KBt31xo+=yiE3_Y>Vj=BHZVAr+?HKZa@yF~c-Qd9 zj?T_sJTsmDeO$d+8&IjNtXyK(ajdko)E;<2US3}Khtc0WH%;2$GuDPzYqJ{!{B=!= z%sM`BXcXW!Nw}V|FA;PaOny|I+JQsKOnoMRuTy#f>_<>b?CLDi`z)A%Q2&En|5qf1 zE)){%XQ2?@N3L7vEUWwtAk8(6hU;TSq<>)(n^-&h3>gUV*>$y2+wC>v2*w1w54wTqO2<1X^0_QheaptAv zMjA}HrBXcR)Rg$wY#=EA8B#g>7fe%f`}#y^dY!Ue`{LzGwcFhOn@fbGeFLD1~kU_-Uo@=T`;9)@y01qb>oKmQz`I6Q}^eu>qLs&(3M* z38=r9slF6KbkhG7SOeP_9?FSpE9Jz(&Q1els6#*aF~*~X(Ugq|Mf#>7sQo&%Uk>ev ziH^<&Rh5^KaX~%#ioLx(0OX#U=joZ5TCZLun-wIeW2%5r8=09E80TLXlb1KH_NH}y ze9p<_5hZ0=6dKBY%CzJX(D^tek1TlanCqFH9u`=Jjh43dY`<-CPx981s0|c-Tap^| z;Aeu04}zU1PpY%L!GHBYb;SSRJNs}_lMEP35FNws0LP+^p!Gk_jX(|*H7fCMrSw^; z(LYT||Jer3dl8hP%W%Qi*j*()b~vEi+S=L%hRTDv?g}?5oZ@NwP9fSbL1hYS9Sl4qWR8*V+76!OkK*k_?1Vrxs{ri=DzK;wk3n7C1z<*Pa+ky}psBlYfY-%z#G0EP+ z#C!tSFKGWNdt6hrl*yetckujwNb%h-QD#Ie;gFpyalk`rc>)bMjl8&R+g}JZ#EVV?7oz zYRs#>chP1k+nbbSGG*&JzGmUFi=YS)@?A6N5jX>9K(&&dkj0^iXgf%vq)2EWy#~{{1lvli=}UaBVg>VYAKEz_5Ji z`U}`B6&@(!;-hzOydK79&2GOD-mR(3)H zpA)6le0`NpiaK>m2o1$(TIHDwBs3kwHF$4!%QHQfb#;xLor{F*n`2}&9l6iArU*^{ z&LY@7)sar`cm!TNudlDN|4IQA`q&}^5jp^6b@69RO-&CRW_(AEl!syOd$F;kGagZ!==7Is=11&Ji#*xv{jy-wC zt79>U>J)y@ZGDdLD_9bGiORey?fSeK5ob1oQd%`GGR0c#uh5G-YInZ&Ee3()AP0xZRpv`Iq_y z|DvYr!`NdRlqNp(UJ5p^-j(!s;Ms6#dy;S*U?jxg=Uooz?B2ZV7bso#bHP1LctRKKKcP{<;>pR z-jw;?-s_b^bI#>%)kA8n#QA0K72la|G0eDxWyjKVSE)@?lmH1F=D$yZr(m#49ol~I zicCr>D!f%LE-O2R;{y>&kOVvRw~Vy3W8;&P5`fFGv9SYhZa+qJt<~>4(VZKNMR|wr z6W~3g!}sjnEAQBQ65g+`q@*-Zi>Y3rQv@p>ae@d=m>_E!(yvwt~s)CIZMtu>4J6d{oq`m#l6M+axY2*_&sak7#=sqxN4v zJ`Yqv#Md>{E8P_bQb`$t1H_C8eXsL;ust_`95h!bybpUcC;bJ};|u8pnj zEcl*7t(58q_=(oU{6~*=$}1>{D=M0Rr>X2Yb=9hMpwzL{jd~H#DZi*lpNV^sR1!Xt+i2DZYH*T;foM7m#oZfxxA&NVDWsGfm| zNi-xCC3nC4Qh4L-*DMB1co@@H0T`_AgZc)e)zH_sGFS%qLHAy%niObbbT|YV2L%Q3 zPUJHC)&wQxfFEx}bYoI5>njK!3O6z~&LnO$5xciH+O|)~$jr-;Xshev?v>rc!;;xu zzKUBX9)ZE}wAa|3i4gj_u)TYHbB$w^|4d2HpZA0D;eSbIIs; z@7@_fOr+#7kyBQ7{V@v%`^RJ<;Nw6@VN>)ix7SE6euJ&8`asQ@Yh7GiqCGb+%&?g! za{1d3r+EElYpOUC9(yBwwcM-ZV@p?6V{bs!92s`^iJ$_E@B~Ok3AqB4Lx2pNx z=$}I(oA$^CFqjiHa26k)u^C>taDmmtdwYI;6Uos4dnX-$IlQSLiBnX;*ss}IB$k6b3SVI?0K_E=ju2u;22+KrvM#g8F zH%kkwHZMPaZ!_qAp#EKfOe{P9AkXkzP*+2xf3N^Wh~`fG-JYqC)`bgp;N+VY-wOe{ ziG+yYW=qJ(AOS#l#yquQ_PJeX&ggkH;?OzX%TQ{?=a%EnDyZV5B0mukS`=RMha2#Dfuw(LatdP4OwfI+zV3 z!@C)dC_r*om;Da`BmR2r;Qb!3%)vr{!a}?pb^%rH8Q~pOKJ#h!+LBH|a`5Y~tYAq! z^+Q+aVQ5Owrl+7{4DQ~|P`Kas^UU~>eLp{ZbI#Z}5)84d#>UHu>KIeV)Qq6OMkry- z=SIOJ&mG3Bn$sW;&c2e|yS+u@_D3q1UZ*i@OIM|K5l$quR+8sOg9IHme#{4ky>W1M zW~V)JC9idQ0KU8|GOJ8WNJvP*@$Ze2t8)UIF#INXeTQZ4Jb4}xA}@EZSsLQ-z;z0C z-Rbz3Z^Hz#ZmjI5rCCy2&E^WZp1vAyo8()+M5jNdBx`8JkT72$W)+dN)0 zP-S4KbMUBmOawm<4OJkn57FUo-XE^%S6ym9FQTB(8_cKF*_@=d9_83y<(2PNX*NM3 zZh2Y7HwfYeOG-+9n%iFTU7lXnkp*OXFy6+DVcGF3d8Hh;UM?ad(}8S206@Hmh6ZKd zVcCxX8}kkIF;}qM8VjF~Pk;_CR086__(2V8p=`8JV%}Oe#6dvQv_ZmcMl;q(L}$2> z;n^fuU(X%!>eX#979ZDlc6BjXBhLoT);&rsCM!4hi;;;*JmP{4&E*#swrqS4(m0*2 z9i{-ap#XuK4Dt$Z27Sq7&8mS}PLP}M8-cqA?FSAWiUSyoN#5R=%))JN-GfT3=eAbg z`e9w{I(iP$m1a$|&G&aoEkZ*x=xO#SiEf#kg&3L~N{m)|F)EV3`TH3^7qy zJ}euqi@^|-Fl#0Dj*fByVGSqED%!!T8$ezFfy;ASM~{Bn|FGf|Zi6bQN5pP6^SadR z=dOm~gVxnO4NO|TK49U452?sJPzg(eafn<=>YPh2fsh+7X#ij7 z@Ff2^CB#jDLNToks9c#FTCWV-KRS**Gl^&>xad>2DiEd(v<5M4)IDwuCSMHZPKDz( zbE%nsCX@?aIp9>BqDzv{wA9vDsngJFYTxUa{8svHm+N_5rr_w*=Hy_8!YvZE01fBC zGi(B?KeD#|qn~3JZIlbBaO)k&v>k4I2Rg-sZ-n2I(0aZwY|3igFeliJP!U@DRtO z893tYtFYxsFv{S`dT1NqsH4Bud`ov;RT`hpPVNP90`$tO%kp%_tjSW11s=(^5uRlP z-2ny_Tw6h+4)A(70&q)H*N`|5K(~BQL`3A-VzWDjTKvn;?!Xw^J=)Z=>Dbk39%auQ zD2;SDtr^&Qpr{q&-f-;-E{9;PszFyH;{DaDSDHkg*;d8cc{a7xK@Y#V%E_fje1I0D zlY#4q?+I!Q3hhQ>Vq#uF!MFJ@MJf=t8WDj`&s36d$YU<4I8))j;`yfMtk#0)xD`gi{ zFMzu^%yan#1>LZ@OVATH&p+GOF*j5V7hig)I^1i^v)RHrQFai2y$B8MMFuh48`?$K zmsVX0$wV%s43Oz`LsoV0@E7@`@!z)xKnT_Z4r7LR7uOZ6XjNf{Ouq3FDnOE8Z9nr)M8^~1b z*H>r{JXL3V3k|)zN`Y)IeUie?hn9UJbO0PckTZJ)w-$j!#y<0RkaV~sO{+XXke|O0 z?kvnKlPtm4O-sVAO$)4seRmga6I+~U=~|}~@lu#+9Ui%Rx>fP2@4Gog>^}aw-@)F# zviPx9GS}^3nN*9PzIDQ-hHL2;?T4zo)GWU2n2Wla;1Q<2mebkU`NOunJs)8bP>%~d znu9XfUBMP42mt~4PXNAvRj@Y7fjfaV8#;?0O<;PM1Q;u7;X8hiU(L_xFTpzrN&W%2 zg8Xh)gt@ius4JY8umZ}{^j!ol7ygNtQvP3F?3~y}b!jOiK5`);S4vT6E&U5c=d2$6 E6LZ=Vm;e9( literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9788147815598d537114753726599f27dda572a6 GIT binary patch literal 8725 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4c043d2723c379ac01706984f6a7d67671f6fbfd GIT binary patch literal 14235 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b80ea3a787c3aa541f7434ab07e63017a1b2d9ed GIT binary patch literal 10312 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a4c1d16d820c3541dbdfa92fae304bc77cae09a3 GIT binary patch literal 9905 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..752bafd37a7e393f8a0ddc1ad9a414e59dfc553c GIT binary patch literal 10062 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9bcb6aca0866d5f14154eae7ca6b820f512ae00f GIT binary patch literal 10968 zcmeHtcT`hrly49ftf*WS6hRb0M5PHxO9Z6^rAQYrK@sVp_a-(}n$mj_qzbWsbb<|# z4pI~X0qI>z2rXgux%1wv_1=2#&YCrM=AXH1B@jw-zVn^EfBRR?Q!NdZJv)!=M4?c7 zu&P(IQK&8VP$;GW*6r{ci8k^ue3N!jGIY_gzw6?D%gG$2e#^zd*51X|>h^Irb0=pj zdxH3R$@Ai8k6XI9I5^7)3)}tMKb*IBvJh^eR#D+Yb~vcsa7LlnZXr*mY)qCF3Ux*a zdqqLlBXOqBU#r97cI`Y{>YMxTtb@;<-YHu6YxMyulY%$Dd++BiT%V0sdW~|u7B=b2 z=Y9Tz$1gmUx`?~*a6ED`?8{Y64V$^pevYdx&#%p8+WvMo5|7XQ_*wa|#34zQGmL== z9!{w~_8qt{H+}kvamPNrZ=sd9#H{x(j5fSe<}eF}#hHfGX$ix36zvcbEBwg0WgiMv zEw=SI3U$w%^%DG{Vc$LY8qJGhLZQxHMr}c%3?HMmqEK&k|MQ09f3-_@wXzS3Ja=_> zpCXq!ACa_;J#pfMVkH*})yh)C;k!1GrKYB)eJ3NS`x9$5aRB~DO+#ZZRSdR&ZgBeN z`y;Y$w%IZJ4{RMU5V8Fsf=x-eG(SJji`#=jjqf5+h{MCf)ilSW`|sgDHsRN6YHQiy zI_(ybB>6Nn<9(RnG6nz5mudG->J|rYL7V=a)C2nzEhHQFP!B-i2p0S|6$QWT7Kf>> zd^Ifg#pgjS4UN#{ISOTJqp#fE=GT{}P8Yf2#mt{A&-NX4A&Dv}7yqAaF z%3T+RzokkG3JN}Z@`Sa_?#G+K0-mEN)TN6%f>7iln;5mLSM_e($oU+|X46w>Ro~Lm z{b<)=uS7~mM+Use&CXU;3FUfGI|Prmw`R3loFxh5?D+U2on2kIrKL9<9UYPPLxT@2`bXWpB)?F1a_u9VU+Pphk>Zwr^XAQk zb-IESlz9MB&JGjpr}|19FYnl~LtzNM$TFK?Sjg2)PjfsldW;aAzk4jAR(d+`Gb|`+hVNji}9HOnO8`;y-bHApyr)Suy z)Qem*;zX6%9Ici8nZ-9UJUqTeosw}Ly%t8R{qp5B8jT(YR2OM|D2GZAvq-Ad!Ln*a6ni1^*$+}vC~ z?5R_y;^nGTNVAso!g>r0N7-=Z-qkFx2^-54eLJ#U&M_W5w zjyo))W%GFk6jvCAQSx}tQGQ}~-dM7?hCkK7|JDAJ$`6O9U>Od=50y~ODH!}=VVtg# z(jy;qikO&KM{Dc8m6M@eUHVGOevWU&goQO-U0u%z3wQSv*+fN0XRfVzsVB=xi&%8# z>LF`(bbQ;>+bdzybyniSg}Olp)wPZ8Qd#%e4hp@Gl9QKr6?VjHwsh=1ZiodAig_kd z6RRbBI~9te0)5nn>q8f=TyNQJ9BN^9_P!ITTvy#R2pqA;P^0+3C2ZrrP6;B zO#Ba+P7l>lguXI805m|o`fuOb81!}TB$79cpq_Z~`rg3HI+@qn`YXL3%u3Z{zkI3q z^y$+hVt1a93B?-8azBTv%F4yaGIBw*HVs`R{@Y{n@i;+Q!Dltsby00Q#`r z5|aYl7-i!}Z=!p@rwWc}ASx<)!Oo*0S`$PHc~V z&SL7~QYa=a-udGP2glUxtiG99x|6fBH<@2b3fYR8-eO@944}{X7$M70%AA3-v$Ls& zx_U^z|E4cgh^|T)_nwN7#)6yWOY}Ma%>wR|$nfO+V{)6Swv|;595XU1>eckLt)78F z-uw4Dj~+b=&-fa2*rqX76fiKHFDf$9a(VhE4A+R!=A=9rV3PwMAM|{%OW+d(R@4w9 z+zp70KvPGDZoYA`1{RB5@Q@47a2%@HmVax!H7z`22Rpyz^pCf+@jBR`*~&Mp)vJqR zQ@_3j!F+z+GNz-f{P@U`BU}8xwDt7l*3}80*B>1j$tft%7#SHcDtF6=F$3j7{1zd= zGWy!6NG&NT>CE}_`rh8aIF5@b0usun+>y} zg`rPqx~?r*(MRwMa}p1zt4pVqILxkPAAS)Lk*>nytBWu@J`e^%($Y5?qR)Mgm#`tk zVf-0Bu5NDDEy?l$Z#l*9o<4cP5>~ zMDNUA@|=rIR7Au{08%p)uFB_ztlP8}4%crtL+f1R^9+Q}pVwfM`+d*I*qGX~ zxzSR5(+0R=qK3slbYdd8_yKST)|0%XEgaSePriQrh2LTVW&F`$Tq{68kwpu)(v>S@ zvEtXS&yLrpQ|1J=Fs1T19_%5QJetJ-DZZYrEO_ROnw_1U!Vr7`ekV^D0_K?Hzi0;F zdVrn%!RVbkcgPDXKrh>QHa_y4mY2Wz?b|o6xk_4OLV|b0Pz_K?e*V$Wu>C01@kE4) z0%5IhY}7R~Gc$c%UTz!`5+bi0%QrGQy1gkT!*_jo+h|s1X8nlMwx;=YIuuRS4B8%D zkdfNG3J^xNSM=Ma6^>{REv-~ox4DHyURjwDf=g%5M)IA*RT!Gp1Yd_;;LFL#xB|nW zD^oq;g8Qt=47pT?g^jxdNF*P2|Ni|(RX(L%L_D#u@WQLiOzXZfSJ0N>pjY@Lq@<>* z1DK)0qLqU=(!OVD+Q47qMQ$k)Ux3~hX?^rx!XLwtvHm`Vel0303L%)cZ@(OEj7wiw zaPn&cnKEm0YaV@%`QRM$6UHBVh5bgk3XhH*SIj3hEA+F7?8Y&}((ZW&q5iQM{w6bK zM*@mm=9;Iit&Kn;zz}_%Mw9WU&GyA#bbQIRH!$;B+{;RD+V(#C;On3xpdBRc)a?W5 zm?Y;Z=CBzjZlSBIn*qal52x4_cK&Nx=H{;oaFsp6e^R^iK<)lcNIi&cf66Y<(bt#H z!}uMzHt>LLsa}Yf{o#YYO?N@1K<#dT@iY5tIM^qZzy=v_Q{m~1K4;8_?d$6U6Qv83 zcOlGl+9;YfO7_mLVL6?wqS?{h4fX!fqF$gf1U~~$mZky zZSn;}ESQx524ij$$K$(nJ*8`gwm#w_)7jRRwz9G!D?cq9^?x#fi!A4ArJra`5uM+V zNd9bF0i^!J)U$L3{i@}p<8a-J;!4tgfO1wu_$JG^su3%f&b_P!Pu7w0t;BJ~F+=YlXOhD)TQ|5=6^Ams5^@VKP35yFGP36nP7 zoyS#h7`Dt5$brF0W`lYjYe^vn9Tv_7`Gii<5Bg^`5*hN6Cbcj^s~I#{QVMqmw)WnztMBP#eUDY zn4qVo_6!iu$;qkEf0Kb5o9nMMW*5+i{5;qiDX3HEKG&bR9wG{&LJOwWkI5d2eeXD=+}Y8AfLc>i)3cx;XeTs;jFBz)YR2G%Uq|x3*if^W%nS1Gj|iXbAEn)nd8voP;U7%Sg)1A zKna)eR_`?lIOP(9zeJ$C6DLU}hH)`5S!HE1h&epdQv^Ix$Je)#Uo)92_PurI8PF2B zB_)P4GcySJ17!@8e~UB7nx%9e`sv@RC&T1UV7+L4?$jSsqm!o`_8Nsc?@Q~#kD2=WZ*sFLGLBq=6_bts z$&Bv7KKva)*|i^A2fFf&qr$^a1b$9SOyruOkVxIDwT8S0%sSKNmr6lPA6a-T!8`}573N3H!{?Nglu*K;sgFmV2o~k<2&w~@GCd5P zd(QZSYIs?BIe7Z7%^RYvn&Ksj8&fd;RnTFe;*zU>1apcb<|G`4(+oN$V=ToVC#3)S zIUk?`*lr5F#rECzx9xJ-SaDR3zkp@g%cTXr7hg_Vnu7mYmVfRhFgJZ|?e>_0-v4di zT!!S#edy|bzP~Qz?T@^e42ZbSw9A1IS{&jC3J#9!or&(AnsGb|_B$9zsc$znd^)?k zuZ9~L84WM4Lbk+AlTFfq$f0hEY7O*p!K?BJ+Q;KKgYVmnn-FMf0Qa?K_bTUxAvaf7 z@Y02Td#b1eX0&K#Fk1VlH%QZmnJ@b%8MxnfZY99zFJj2B*w0GsE(myZ4S*O%00I#Q z4ji~&!+zj^3j|$|UG?EqGN5HYh&rVCh*yHn!+bt0M_GzLPERB7JdNP1{-cFfQ4J@ z%9Sgu25y_6SrIn<^SwoWrCeC+FRm-uj(eAR%!1MMrSIrU@|54f1r(Qrb>z#JFFU%r z4qfQ)>f(=S=p2$fACuR;Duww_R3r%gq@{+kva)IO9OK0|>QuMu>cU7bnsDt}@a@~T z@7FwL502Ma^`y^Z6U%B!yS{PpdCnR+4oI2zqM#Y4r@bGYOi}MiK?*N4s;no>{Qf&gW6R}d-@Y92^uHrQ9IK4|khce2yccz>&K!BBV> zyz%R{IS!W$u8uAaS5RcreFhE!kzc%=r;}+j*yuxmoDh68pDG?$GU-m1bpBW>RM z!467B9}bmk#YefpM`maWS(y@*GXgz?7#m(qs{8=!=3R~%HqtiAA~PvP@& za0r$vz$)!G--3wX6%W?}M~BMmWuURJDWZ#<52kW+$1 zk@ncWXD8jt4Lmn60)goWcU)D#?96g55Y|XR=PxZSRT~>7Njviw?ov$IlQ9;Fj9<7W z&STAc*1F%CN;5CDL3Y~+va#_28`=`;vavBvya_@TW*TXIwp=;S} zhcQE8G;x?U!W?P(%!aW=PHMa@y@_2@&at%3;tGLF9xo> zf*B~jfVUROo;6^-#WJ((jg5{z^xmF=UJSx-ysY(w@=iF6_h}10Cff!5(r;4Y@DX{c zirH7pE1T{fv`9^MuJPgaxE#1w0&><-7>}d17{*)Vxhu*F045fKw(5iC0Tz6C9APojT#aR=^Bu!m^Y9+Fjc z0-@jrr2o?Xj0)sg>PKJeqo3fN-hXdAg2GrXMn3OuZRoLpw-DaPBbyECz^w5wC3p&0 zIub-9mG`sK+uihaWo6%&nwsUcrj;lIoG5rPtUio#1IsG5~QlZ(+~gL;INpiz24Bx{prxS}}IX}HG9;Z_8KWDSQico)V6 z3sg5HF1LZOORWM~nkij?To;^28>@eSHyxFfls{A(#?sVOU%zvM21a-WXlF>yWkp6^ zWT=6VxmBY3k;y*V$XQA2_YOyITC8VkrWAk|q!u21{$?)ZMrXhl&(qJ>*3tQHfL4AO zvp$%ZAZqp)`1Y2RvC+{1LS2vht7rb(dT(K z-`0fj5CgfrR5j(Pks!#^5Qy&f-3xOx483MKun0#*WM1*c=GK)>)=OkpxXlCa$#XvD zDrKccO4qq-x*O)^(yI4dWfoY-pjD|C zF)}hn;TMHjva8TpjR{hk1_dV9FJJzA4r8gBf^Ty!@9QaXOlJ&X7?&-Y6We6xDx7=i zH%Wds!Is|b!x#+Y$*rus3H4Uo$1fujzu4%+JXCpLpA+n%QJG5)B2=N`tjQ&g$mgKf zr^SJB_PLec`usR2HTC$LKENvEmYlk}x>S4!by%43OSsTwLi^m!GF`-gf=RoDrl+fW zT3lQQzuwc`(b@S*-g|jz?M`<@WaJ;f7p%c>e)jZf+mrn#XDz*#h)^gtc6NF|d%-BP zLUcM}n!#NeF1@SiDq&r4rw}+bsc?Hw{h&kLgv;_82P==Sug24$pa{6_2jm;VI6=#c zI8c)1y_djroS4FImLaw}IH$Sg<>lQmBD=Ze3?b6df$$ViIKv{vS6}>YBdZtZ6-^sE z0-+0_holl$d=zf}L7IMwPNR@U1ct}QEx~QKn(W9~Tk9qjWM`j-m|!t9 z)B^m7o?`oy@Q4U%-N`U=+lLaV?Q7D-9`m>9bDIp}yZ7&@jp8lY5HWyhRh)#eY&{O7 zVLTACkp|m*!M?u&M+^JyB+w!V&C|XDbxr z6|82#JE$j2W15>aLO8{h6C~{>scL)Swx3^#-qUYuK^J_)lt1z-@?Cd3hp$TPX8jd9 zFJ!t@4g_T!upbfY&~xQLiJ)33Tw z>29th)oT|$JYA_*bTp4@>Ksu0iB7-jsjsEw{*MbZsU9v`{2BHPOtSv!cjr72MA{ks zN<6}6x*`acbc*n;l~3YWdl0>0CQu}_QQg^XvX!xS{XL0VzqKp-HaxgPO#09_{YX;X zB_Z0Y`q+?j?JtRE`;=bqqJ(+uJ9HqnuKodTjn|d>{F+(~ucwOmHG?fuwfnXacRIf? zBRLZ`2m~s)vQFdIq}}$v&Gpi1aJLrODSY+ZE?$C*;oP2>hcU3_s0c?c7D0leO_5c| zkH-HU{wW3-dCjZoE+&ymw{iZngo_t1#>B*I^H)N;^d83aj1_i978e(PY1q%FIIo&G z+5E!A{8Lkty#FSoOZS=o+_+wExK1d}*kau)>D1@X52-O|tE{c9Wqo%bT|Rk*g(iW4 zf!!lMk>7OPns^@wC-=NKn&KVP0LfgIX{z_9Dz7%b0^O6V2n2v&F`<_XML zsknv2L{3QeZ%{=}T!M%FM+|;$2-Yw_Z=fbgahFMCI6H8$^0P~da?p%TkgP^}`B9DZ zcwMUFCdH!%7G}p3BO)S%3nRJmw980vP7`_c#Ltr05EHELpV-ssTHFHn)*keS8yn>- z-$>)_n=f^j-(dat?l;>4w{vc7McNB<0u>o`V)%7QX*rq)OkoWnF0Lx}8X?s^JVhJJ zZ!#uS+;d6Z&cv_yxV7YIz@g7jg*{vvA2(O=@Km&#T90C<$oSKzPZc`+<1)JKbj#XH zlE|0uakCq``s19il*XsGn;iWQs;N2p_Q#3}gBA-#73zi<494KvXvo08z)x;&2SzO& z9F*f6{al|qaaJDjM!$RsnVp>_>LS7889Yac(#7$Tw6Zdsal{VUGXJ^AH@BpDgLv_L z{Gp5A69|WObxjBaGc&Wy<;#~ZZ(x?S{<3Cc4|{QZq~)~)Qf$jCTP4yBn$l%?^jF#D zU$%B@FFu0xA7zPp26_%!T`($eEq@86dMT!UzS zf=RG?S5^IHhL?tB#@h`dm5y!2V9;}IX=$;2amlP(2perKqLB|DKAiaJoCHG5!1}M5 zfFot{gI1=r14I*gg3_rT2xX*Em>f4nJf8x)J$33-b>cA{!?~Ay?y%o`c2? z4i0Ts-$-$lvB>WmXPS`!QTHwKc-u>1T+nX{MYpsXV1!sr_IIN#LJyxWobjvg-tsSKYI3| z{KiJ|yWe)R+&(`?lW(M|F5)gv9t0}>ncmCcMsahS!NQKBO+g3c>PO}fW1iUi$@T32j~`hP|YKnE=lu~{j7lb$&iq}8XC9n>9|x5Le=XHCVGV&n5?N?#l8axh2oFwxwl< z%3?E*G&9^_0iTL@&@az2rCx=EjO3JP=9G*VlMNluoY^`x$Y;(^4W?8)Mv%}f9$Rt? z5}YOjm3|NN-{FtNK;z&n^6K#j^iNjvt{(^n0!~5mF2tci_5>1Ky$&6I#01ZE1_c2% ztEj%GvylSD7@m=lp>XKO?=~s?S#^(jvJ#*TS8*%S^`{}BM3L{*fT+rby;a`P$2oJx zKv1f~ULK?JEX{GUl%|{rV0sl1x*fI;H2_?avC6^t#m{_FRg8wPA(wGvt<(-HTPlST zmK!)mVf|G5plD$@i#*!QVv)F^wuM(5pcYd9-cFQ*0c5{&0y3GLIdjmipaRNSKbyJZ z$iAD>D%g>xT>OAgUtj-0Sy@@V6!Lq?5R0>R;I?{lNVZ*J<-mu8&M8|@PtWP0diAxN zm6~14GBWl+`7?d1*KCxl2%Ky8eqgc&(R=LIC;O_s#G4nsU5C_P6$_b3D~~kzr-BPC zkCZ~LKA(Pzv^~FQI@(&OrO6ic>^*oe0xHzD;t{o33`XEBr?*-H*>;M#v~vrBM4J6q*!+{Q`QtJ#gSWN|<%z$U zYTmA@s#4IW|AaCpR^Z|+u~q4~&!6w#zfXD_wNv}TtKj(Kz8-mbdD~n`fN5!PV@p0I z?eSxcqi)Sx_;_)El0JQJ&dY)O&77bh=Y;>Y0xKRvdvye&^JQO_P3|~dTx+5dfdV3c zQBUapoRETo0#Qp7TQ2Ktc4$^ETVGA>>{DAznh7&fO7ZC5@`nXe*rSa0io3fz2BYmW z(G?QX3`KyhVTYpP##S_Y|6Yw+Rp9_>C(+BZQ0A%QQWL&jW>3ZZV2TO`^WnpX+D!8l z1-+{mGTkYcFF$zsa{du-2)K7-WMug=@KVi$?a1$0KhoAbgUvD~uB%kYm>(CWM!o>Z ze3X-;*#@M*{Nu0i40ERRt5zxpmmE0z*+9H0oB#@Ht@$Z zETty#SZ!nD*`l$IvXcEKAQrX)(p!E{TO2Fo)tlp$JD113$pCIiSQUe7ZZWa3-1|o; z8z{hgm<}b^jQ$mPN?)+Fw0wF#e;=Uc%FccJ_iq%8WaZ>Uf_gIc^73l)8_Cv&I#xLD zbJfb)nyc*HhLMtzVysd?zSM%?GMs$73xlCGSlf7=cVdx@mOiH}pCb^CPk%gF3rB^X zKb=mmsJJcD`yPt)RPr{Yt8bVk5r1YOztzghs-iC4lsr_IuI{Xc1Y4eD21=_Uh>7~Y zA$9*9nfxDhZ*(A{=}>&Q=J-_gqeqWIOts1mA9ZiB8oh%c#a4|HqP}QzwAuD__zNOX zlrh0C)W+-4NB|1C&1t{_?>$|8wf2D#t<}Add$6!=>tM3~l>>GK2Nq^VfLeAlKqV3gD8qagZlb@L{*E?;Egmji zP))q<>$&-in}gTpmB}KFbj@Q7?)R4MpHce!`UP>%mv=@P z1};=Iv&iHR_mAAjN7n&W`5-klH6$9Mob8s27!#`RAK9NlOxl6cePJ(;*TW4Xi&vIu z?++Gk^FNFPYest^E43=i7E65bl6iH4t`@*QxjJ5(1qyj?>B2g7Cs<6Izo1Ou`%alC z2jLh{dbmIKVPeqQ9f<15&nWX$wOIv&&fkWp0}o?JKxNTJh!SM6h$-GX``s4F%}OCC zXhT3COauyr!ZPX6^C}#S>3<)GI#tud4f}x<+mF)p)~q}6{2463XS&v;7rd4T@E9u5 z9=Ut>Zeg_!AC`V-wwcW2&avmpP);=3UZTrbs86{T7XQ0HE)%kW2j&^}g$q9tm1^4V zEqO)5PqIh@)%UpA2(_w(rdJ>H&wNi4O>_fCS#h1MRHRlsbAHn^`CdzFb}v2EawyRN zODz=|hlAj#!Hbumr@!=cp-J`>d1Vg9K-c2}PV}@;awDAI+?4fKBFe6htbcu7vK~6w z9U^{t+RD)}dC%$iD6}?wmbmgxr!jYu{l{O@p&4gBfBt;BCrm2?S~`8|gKj2cc_AHI zaURe;dVj1<#&(@cN;AD~oot*Dp{2mxE^`K~hV&OT`uo#k>d#t%C>;x?uGjFVZI~OaA(<@a=d}`8cyA*;6C^>$E^x!54~o^5jWf)XtN2AQqzm zh0gda+3;U`cZ&OWWF|{bCDwiX7&Trzl0&2{&W@R;r>DD)wd8B0$K2I)xNkUlhxu@F za`G_!%g4jMlYQix=RixX92}C884E+@hE4XKW`M;u-9qma8$mK&tu9j8fcUmks{Izy zR}=_GM1<}?^l~uSR6OG(j)mO34~#da1MncGPAnz`bl;HA2wE8oBI1|2rR(jeWw9$g zS}ST13fgLA6XhF+7CXg^1<=gPR_D(7R%=yiq#wT0RzwH)i+)}a(8)O)pfO^*&K~!U z(qm&FXK~`CsUf@0g+>czLrcs30e(tK4H&0+PiN82U zSn_ZA66fpU*fD_mjv`~#^cXBd)Lq^JeA`mcQC9!NI;*ZG$)LV5+pgXT!l2@LS9br| zhmaKLR`Ra27f*wgkPh{liKhFC9+y5LR0P<92rek0$z!&e>pS33BP88Itj`CgY~-;8Hw{{H>|&8FtK z87t@P{QM&`BTa%pjshNFc4+hkU$ZS}PWJvtF2}Illp^qp0(Vo)ougOU;?I0P1b!QX zZ_S=7Q6plPwyfjzgMd22KG*Yz?RD6mm&#*(NRtrd4(grbdTDuK%0ervOGD1=eI z@kv%zFY0u5&h@r~8N%`$tO1ASB!TeM{^cQ5swf<}Y(*fPPBFwK`}Eva(7ANF&8x|Q z1!p0>e9YtW(E7nPkPC9qfNm@TQ9&(UUiX_@L1XOc)0rs@KYPy)M^HZ#`UHz?0uW`G zarz!Oi<~)sj{Gj;@DQ|k4d>sPS60RD?|t?2YJq<>NTZ^@-%K~mnShPDT5@v$U#vcn z^^K~!J+x^2v^Ic2FC<{3b=FxULIq^a2JPZ${f|@VPm!0Qal4K#$=r85x0e4GhTPU1a zG7%n^95DILmcs}vogYY`)tl*h`7KS?n=>C)HQ=0Dh$`p^zIv6of{5@CXzio|li z@?(Xx-b&(}E^u}*Pl(gw?Te3E=Rk_8mHU1+Qx#v8Pz4mv^jNDd>i4=N(u{$|61==-78#p} z%DlzII#_;D_f16-xW_E_)&fy4ex0N@Wt7{u$ag6r)Vw{(sVnywxcCZ&m+g|Fd-K4Mu-Zn%!mf6cx-4?ef6)p-m zc+}KLS?W{o1(=FdS(&&cOaiyB>1O={qcGqYJ5ehNH8)Z9@})K{?ZJbdz_~0)F0@;q zFBawkZnc4!iPv!<+WU0hpuzG8(ENJAd=Q;T;a`_FR6vy)ywBo+{W$&eY=7UE@xiu~ zm7$bM)Dz{3guSSw0}mflpJ8S&Fbhb8zA5=?tpJEP@C1K d|Apb6SaR>l=}@n?cnJhPr;Lb%oWET7<*$Bjj&}e6 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3f02930d826ccf91b169dfbc6b8f76dafee874e4 GIT binary patch literal 15248 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 O3Vl}h3|{Tx&Hn?LMZe?# literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f505e85aa876e54d6b9baf9e153fed28d0319b60 GIT binary patch literal 11663 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 E0q;#IQUCw| literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5318dad730868aca2044070ab5ea3b04ffc4aaf6 GIT binary patch literal 11921 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

    dt-hp^a5gk_|!p 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 V0&E%OhH%X&jGE550+ma*{|%Jc(Ln$J literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..751c7f724be1917461c1113b24462374e90bb047 GIT binary patch literal 10668 zcmeHNcTiO6mcJmQn7}ZKf&>**1Z0pTSwzGpBT2G~K$DS76U_k-ZAp?8)V!H|03GbI|{!^xGG+C)poRW^|+{v6G zVr;O5u4dpBtCGQ{eQzD^XBn7=v+Q=*PN=)Xn8qby_aa&o>+HpQlv`u7bEqvN;1PF3 z^u+2*31JDr#h8h~+41^f!Hb8?gW$@p1%J_GhToB?K!gE7a(2-%!ap9S--94kXBoH< zB*234Jp6b4o&fkY{3t?)Ap8mlJ%U_)@c(c4(<<#}C)3@_?dZ^JZ)-axD{H!U@7`A& zObAj$SA8f}##=8fE$vBA9@X>^-I72XyhK1ipzR|RS$t@;_64~s*DCel-hB*%g?l(T z1t&FFp7l&I&0^tLf*Bd;l~q(+{6cyjA!`S-%f3_GOShj#kPktPjsx$g_Z{Iw0`~^M zum8$<-LpU{HdZKgb#=}gzc9r&r|f1EJ4aCpW=(qZ=uyICT1woGZY4Lj{JFWgUs+gE z5)-)_)P#hDR=S$~I;JPKAP6z; zSdh?(w!1|K_U+$KqsDIa4#$ZT1rPK;5P zW5zP{33`jueWKT@kg(9uZy)aOY$~a%Q{H{#9PzOnrmnG3munC4mBPbrw>7BjlmNdO zeR$&CZOnBO)XCw`f#mM|jE-!RjD`kPOe-8s5fv2`vwWV*DMMo?f+RHFw?`HzB#qU@8GUo}H-76Bvy6m< z^9K$bsB36wYj`OfJGGVRNNQ;4ufZHLhBZ&wwc}-d9abWfl9CMbuq|1KHg*?Nl`8EE z&4(6ThL_7UnduOs{QW7Fs<&_7l6wjX?{af>4Gq)f?{1wOi!iGo7kqrM`vo_<3{D3> zO2g^u>$BuFhItW4-i_wrp`od7-?qF|kCXP|Q~w37&IGQ`&%oB!mRO%_mgm3ehq!a>O?c2fPmWa^0HyhwcFIC)YMa95fRV@26M|ky6gJ+RglT#I}2JSCRt@=($M<6yu28wJ87&wqGweHnxWg|>eg$` zaWb?uYP0P?g>QGM2Z00k?WkJJIjx6G?0D|RXmO31^2NA*uL*Wt9i7zVv)50R@0W)VdAl$d-N*r2hYQgvyFL*F~dYPKHZoO5H zl}zgF>|~R)W;xr#04+aXzdd?|fzdt@SIy&P#*I=(=SyXcJiC^e% zCu~O$uHJk02#2(%Ce$*leymknLnbNTmULQJSlh4C3}#sQ@@2+uSqTXP_$z*NarN%- zOx+3}B|9lEPlqF<=4ESZtHTrqEymrP-Bo_;E7qGE>)rXb5tfZnNq6qh`>sr;*y9@T z_cVv=8LU!3fj_k=^SKPuU_rO4oKD8bDuC1vEj@V%v8uriZ#ZE#zO>m;6)mG#av zeMftHErq6xM?rh0pFOXVFMeOeyGC@{i;c65d`=(%wnODa_mOg<{Ykr-pLmf0AQu`N zn-v*($iAg+6lMNt$nqh zj{mLw9_ng^TMNOFMCVM@bq5FP*h7OcfRq$U%JAF8d zsHmv8ZLTl!f$YIxFu3^^C0$+J19^?W+`obj5|N>`Y0LNM=b5*Lwjg}~@YS6K)KhQJlP5b496U(gSe-%fgXZDC=)o#%86>+tukAM3`nk)YI_R)r znde(!P8ODlwcgg&*8nn=?U=J6ThqQT6J%*?i` z+grk7V!rd&|3gD$<6{14=EvBp1a0i?+k1;$L~ndz+0B}JV1CO>=)$~^9Of#3W8b;jlPl{p{+xL} z;|(vHnt@VvfT}NraAcX+JWbPxmlb!*1P}mWAwj);{=BudwYazw)P2u(N<@HFb6nQk zoOAi+#wzI03AaLaF}q0a$!{%h@Z1DaMoCFYf_-*_8O8VRnFtk!LMbfR0Y>rbhXbk) zHO9#p*^;u`3+#JbNhTh?Q|1dZ1A-W34CXmE%sV?k8;wS55{njh4DXrJv$V8~4q`)) zLH9l3f^;kg52gcDS1va?{>sTYQ)bmXGMnl$(In~qJrWpQ#Ba?L)#aQ^25Go(Ae?9{n>^;AUtfx547QdsTlUfX`qNM@*}x&(?A^ph2C zb*hjD1AvE$1N0*{)>kQxn+uL%@$rPke(&ZkB^{m6y83#k5f89kp4P>4W1t z>ZJmzBPrP$Dk|EFil0f-CuL+zC?rCq?nks7JK-xqMD(9tlnYp>S{WtR;PIpyH>lO6!RBy31w2PjL zOD=j$pe3Yw8vb*MkXr$w-pk7ir7P4@h!6N^XXs_Mf|yshr3|Mrb>hPz^9wSM94T#S z+A#iC6cz7ZdU_NURF6t9Z%XJJ4crh>uD00Luy-4isHU5R3j$P6~X6;L62Kqv> z$WOlN9H8Up=Wjb1@AF#Jwj*!(Ettx&S5D+6y8TZ|gCKzZCT{uAV_FO9s zt6~zRJxL{^jY!;+=WAjT3pyaTF+%QukHtovn3>*{E3cuJR+3(GqXN<}*Z~WB!|AX= zE#JFx^WCQm?RyH;Jo?=9i7Vf~+kO7@2}|k7YI>KRej1!d{R9<*_mPcf;*d@SF>e(O zILobz{!==jPF(=v>`8NFh|7!LW+j=n&_^ z`1HvS<t2Jz5-=?*Dpv>C z;o=4+bR5mtDdk2^1p2ZCb|dwk_!~@wDZopLrtXh#6XaeUbIP+o1rIt-GT^$Ob0vL9m#_5v)DF_YhI%vYy$*(D~ZXoYLp*sz0;GLbFe?5FS4RpMTOT3zz z+71T#-@AA68QnSe?^oC7A}ZTDvW#fVn?IP-Q&WkkHEwM^h9(36OgnI@uC93ydWQ+(!0-Vf~=~ux!hcMY;DP8gjVJf78O?NfcdQUtgjaWH=o!g{`ueE956NX82tH zK4))_A)8Aza^(5RuYc!nQ4tX=Shgmyo&tMqTic8WyV(w=Ux(w!3(WD^z6AQEsZSas z>9eY6APynC1n0UFZ1fF z@o`I3KfE}hHoU(I#M;N5z_H$o)9vMp{Tbdf<@$IX9i2q<58(OWkD*LQ&LzlgQsqb< z6;yWA40LsMt$^nrb1shY%``1H1VAN0Jw!n{$o#0=C{3K}Vr>fN z8DoFv6yl{KG>G_LjcQc^4Hu?*M6Z8fNJ>sVeeBo;fa{%xjzKLzs9|{g>!w&Ku((R` zz6%CKF{`GS78trw_tLOu&k|r9D9{d5o(G{CuYd$RH`cs%vx;1Va&4l&iiY#!}y)rTMjRNZ-y zpZMwVejZHa+L$0{?M#q~)~$&cNuQ-0F^Aq%8Se$`muE-uiTY-~x+66qq@99g36QzE zOR=C7br9y6FadK8vsYJJdn+7f4YC1Mm@0fCWPm)}+~;ObVt}H71KL2rWEao;QNOzu zA@i&2_{7oC(S)(u+S(?`$^k-RVqyZVrKJU|fonl=)W1(~>E}0qL0E70Gf2-B@ChIV zVkaS_dd0C1Y@&F_5Iqq!*l3IrPHJzLpa8{^DU`b%W)(gLP~=+$#jFwa5W}#G0CC)l zW?~5dN{xV56*%;f`FAqVqkbRw2o2`aUcHiEU6^ty=qj*}HZ(F4wd>4r=M)AS_1;mh zK^HIOp{^9d;Wi$^DVGhy!Ur=@j-$20$%68rhd0UHO04xo2Y>sD@Ax?O*B*8nu+)q%|lVKW^aZp`UZr-H!i1T7=jwLMP{K^1-B)uD;r)5S_)jhp7-c=`>*9s8vLUA=J= zu^u|0x1*w1WfnTkj~)?#7Fm77L_@l-01<&R)(;mK6C=lOF30QY=_Nnpz+J}YIgcr$ z5I)fq%PQ;R>CFtzJ)zI_n^XWG!pke#+U=ztj%qK@Dz>+`|C7)y_;;auIDP0ReK2`% zbLz~wZkTTqwnC$%z%oF)dkx9Q&H4!2H~jRuHR|>`c+q3`^`k0x4M>=7H;_Q z$#aw(MeH{6|w95ZK}Uqs!ahp0;{dJZLr6&GVAs0V={}qE-T;O zgot2?Tw~+o=@k{SZKz(y3d3tu1j`cv`@TV6>cCzCRW3zE=hlZ=Dj8`+AgOLu*VJu$ zPD4V7rb{|kt_<@Bf_G3?e+qt*uo4N>0cRya4Gs>*C!Xgbo-ntwFCm^-RrJJWP{`4P zta)rCt_xXN+3)#QMXU2_H$L9Zr&}7>TpzH3g&7D-;vD2s>=MqS=^qchtrsN&8JGKrsp5o<&u6r&#(A}LbY}J$sZTkeI z_s|!~xbs{Id3hqS(q2~}&}sX4`+m{Zy*9>o?Q0Ibfe$$i7u=?>{jlwp9MEInuCADv zm=NbmN+i9?`!i&#$DC`&oPQBexqKO$ar6SdXKMU0^U=?uk2FVE?br(XmrFl%GvEGH zU40sIWpq};^9u@WKuo~e<>(R6)aQHNEiff;!w{swx=Z1~t`=Ce<=b_gjg|8^)sS7j znfefR@V_V=5v*l}y-SLo^yTG0?ETZ@J!iS&Ve$nX3 zZ({yiS%DrdbX1`1P^I_JYwesnLYJTxIyY{-K6dOFY_&EtnYR<~?_>#$j~4_33H1Th zdk=THNPcJ`X0Dpe5jM4I&!0axEU+_3eR#JAp=0E;>n+lPpy7&_SFw$)ExJPl6N3d1 ze#ODczW{4c@<(R5Hoy!WBclv}(9P|Ek>@>SQW)szP{j*tk`=<{ieO`mgf;|JDE%tP zh}?VDZnouafklv(ib~+?HwykQ(M1{TQ&y%uD%r@d5_b2glX`=}O+=nOd-i7r(E51) z$qQ0ky*W-e^|b74G&6yHZ73vtj7-8v%`vTw@1DLc#Jp~H$ZsMFx^)gOPi_O ztayI2gJ9+e5u@z>{rk=P{WpF0Gcq)QG*N?abQV`Wo)lqvmRWWw!3(ws1Y8XG_T#lj zWPQ$ImtiJu;ufdvgM?7eW;r)nn+%PT3|2cC#Qr!-<JoeV8jH0|Krp|k95kCk1Q25 z#8!a}0zn+KRr2fCkmoeajn%7xD+#V2I}2&^2|2mVD072i=cHLrY0IhZ{3ci+9yU+U z$cUwxRb*F4`(egG>lKbRZymaeeA>MlUAfE#dsrLv=9$!4-+Vz)pt@Tu{_vkLR6N%Rj3YyyC7QS0U+o<{a zmZ!mu;T!70_+l-J*6&e7ts3I#2@t4`Po~6+K`JFwxzbKhh2!u7D-$GC9V6@8-4H4C z5h|l?WMqq8GOT6nxnF`TK3DIwx-8brySWsyiN(>#V{3|4hs;fVX}VTjaWdYjV4!&U z_=HcY$Na|WJOA8kc`Sk;5e}J06fA0lZ+_X6YhJ^Y>oH?0?D|cU+Bf4zf?C61G{7n~ zh&$JN(ESoFs|@f?$|gwRG@?mKZud?X!`W&6Dsed>d%;z z+yq(B2y=n|Ppd`b?!`Z9#o)EbtLr~qc7BNFqjr{Gs z^z!Hnap?^RpZvxgNAV4yaveQ6v1UVljWSDvcTXHYe*7DYFXZI4U%ohvLxMk?USR;?^{q9m1R_Y7EgGV@|(b~qwcF?e9n>4fFo+-GF!3Wj1#+U|xTw^UB zGINUI8$j$sm3<%-G%K$6D3=<}*}_Txezye7TvT*48rEAGsHz4%U}8`I_>g&xqn~kn0VBqqEs}F?kNF+tomWep4%*|t)fy-l0C?-9l{|aV%cyg3rsHF zb#3Vuh%%eHP+olELr%Y|pnJ%DrG@Cm9O_O1w?^u-0vR`5x#?$B0T2fv#Zuko$tsq; z0YzhwTg_!H4$*Klq5^Xo1n_trJ-u;hdF58fB<4}Y7bWf(2hUfC;O4P1AY=wsiWoJF zT^LVlC#$v){MT(^)d`CZRoF71ktGjic6JtJ&-o4`M_wKtMR4nF3G#QBo^bU#GjKUv zhG!OjWn;@gw<;dt@LpTUTj2SIvhfjs5Ohm81+!uRil#R<0KSf6|sG z;%&j&$y2=NzrBLEZJn%N+4|0+ejbq7=Z(vg$B&298|*WW8@rUcPwj{rD0WFfpGJW- zp^4jSXXjPSaLF!h@s*gfw}vm8lzD2gi94*-nTaII^|jR3*0w-vx(-&+#h$x$0Wyx# z@r^TP6`9~>B&m>O+hDPpmo8O{a_(nit9P?3{;`zJaL*WsUc|P8AAKAK5?yrF8_sX= z8g3f9GCxW3G4}B(14xOfK_l_vi8$?>H*XSE%=M|A<{{|Gqv>JA=K2h5dfE*NorW%e zrliDqPiw)`A+UZRtlsnxh1o~}cbC5R_@ysn&XZ52rk5^-DD{vTNyhL<4)F0j$$y>n zv*zRs0{JtGS=smkU?I7;I2Sd*Fz)Gq#gLAYWVSkR!tH}@WRZb4tjvb^XF}^z9-oYJ z>VT&qDAZ;-670#{YS=xn>nk+aOO;O>9fCEQ2=GSvTpiz&r%!(xKA)u@35D{;_L)#< zlz7_mZS^7VIeixIeL-xfQp}+fK8gU!6y3}$_IboV<&a5-XEc26&y~-&ssQ)nMxQH% zzIgElZtK+X;|j5oZY9$r!y_YT;;=phSzz73GjnruT}YKd(FY%qxB~J8CZ$naGM>fE zM+;pG7#c=RgM)FLznT}~R5=b$eI$cY+H3~_p?mdeYD&DHArKyv1NZ_r7N$S1u{p1y ztftlufdQe^zt^;))&&Mfdme&bdDL&952#pqUASXR{pt5xouY7TzO;(d0$4pOER3pi2(|rlUnq74{#G5S$xQDq z;lEL~@x6INRj^`d*llJMDO5g{U99!ylJ$?l_iMRE*q_S^Ab+nAt_mSj`b*KP=#x{U zU-s^1m(&5dh^{)hZ+UF7e_+dmWQQOZOFf6~v*^G&9U2>L8&DZKknbtT@Vj0!c0ru% t%NW3sUpp+z00Q@aH7oj`dvI`#v*qiXqsOw7)AAq*%z+e`8Q{nL7o5r literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..7538af07cc412c86eec92eedec800a81ed06f64e GIT binary patch literal 10983 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 G_x%rNF91mZ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a401e1105d503a7e8e83a70d722786ea4b31ec05 GIT binary patch literal 12100 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 HyKDae{0b}j literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ffdc965bf0812f70b70a8d6778b49d2f06bf0306 GIT binary patch literal 14151 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

    ^MFt@GClyGrXQS`_%rTys+x=(50mezd^u?5 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%0A$Z*V-l3-$L(|7b}@bcHq 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4d3bc93af889c9080b4b8bdca185b7eedea473d1 GIT binary patch literal 14166 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 J|L)R_{|9=~W(5EM literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9eed9505a3f18ccabcc726eb7f03d5b13c0327ad GIT binary patch literal 10058 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.10.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cb5631228ee98fe93bb0e6f98d82e144943e26db GIT binary patch literal 13138 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8cada3d0a65556660e422831233ee7a28a28fbca GIT binary patch literal 10955 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3fc55b5580aef455c19cfecf0224458bfb8bc243 GIT binary patch literal 14213 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 Gt^Wc$Vot6A literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..20249b8410e1597c415e29a40db16a4d9705e200 GIT binary patch literal 12918 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..43e228c20a6004e49420dd354c176d20888ab72c GIT binary patch literal 16115 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c93de31be32117a0777fc184ec9190454a1ff4b8 GIT binary patch literal 9297 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..dc77209f9dc275c61ed0231c60bbc70b0e0a325d GIT binary patch literal 12010 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 IeEZ@50&6}abN~PV literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..266a4b97bb7f2fcbe345f2f96acbe1b96ddc78fa GIT binary patch literal 12198 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 vkCuS%?Afo(jF6KzV literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3bf733cc21f69b444fe503390be4146e85023b4e GIT binary patch literal 13757 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a4c3986035d2bb12b11328fec44a87c3e00904a1 GIT binary patch literal 12030 zcmeHtcTm%7yKPX}Rzx?Vhyr#*1VozDpr{B4NSCe~si8^eLcod&h$2P0(tFqf(uAle zD7|+GMG_$N5Fn6{`}~}Hzd8HfIcMfO^L=OL&g?%h4v_Hv-uHReTF+X~vm08f96NY- zpin3dwQHAkQK(IUC=}c9w%_18Qmq3&;YHT{%1w7Y7aMo4+iun<&D-v-jxO$w_J17l zw06VVyEsdTN{dRIJ!0qX?uwNY6Lb2b+g-02V^Jv1+sGGNCOX3& zg%ZW6UB0OA9X~VZf3wpgk+pDO<>?N)6RIH*&owo`uw350+De#3vdOJ87T2aPe9 z90v@hv%<^e@uNpu)?HC3WkDXRrC!@4At52Pcketcb{{y=}*)`Fj(C6(y;7t+zcrJx2sMP^gJrNzEBQf8HUlmxgZpG&jNs^S83H z+772uelU(jk4iwVLIoG_{EJU+JL{0&jHuYDi08F(&fWtJYb@@=SlR zWAAwbBO_rcDFea=4NrTW#Q0i9s5 zqJHHcy6}pcKh8Zb9C-5N$-3rdquaON!5T959>028UfxttJJAt~>&`cimGj7U!(xjA zSh(?@KTit^s&3`vcei=|{CSa0BQN)X13B5*>WcT4^*ud5G$kqutI4_jd}?B9N*lm7 zPqw^M@m-tDFfcRAJ*g38RzNVa^fwUHig$IMoSeMxa}4Ug{OKO6knKNr4>*@x4dc)A zpmeE)!`ma{<8#ZfWQW$|D+e016BUd@Lqq%iv~>07S7Ad8}a5%W@DTTrY=IriNCfkQkXVf*gW-+Q|aXrjr$XGeMMMAWX8qUQ7K9L z?%lf%c6K)$9jA#!p)Xw7Tb#|>aU(@)X;ln95Qe7(3@PzwHQMJ6UDu;7Uj1#xj53w%kV$43j7AS#*l@r@I| zyytaHcYbH($`Iu&r86hmFwZ1yroV(T9&OoGdUq`1_3QTATSP6Z%-}hiL}X>l28{t& z@~5`?a9um+&seC9y>K^qwwxl`7%Nq8ocQwPTL#0AOleI~&H3=bP}nHHW2S^SMEbB_ z%woFaMKk&MCN`9E30I47;P&m?ckJA$XKtQATr4k_D>KWN?!H@Q#@Cd@DwOEY&CBa- zlp*FeG+cM;DHxFt>z?tX^!#ZxGbF&xoz~NH^B+$b5)z{C>sx;2%$a!Wyu7^Z%*>ay zWA<3Su-Y*hF}3mW@g_fY_2*`y(ZrBuvYvrKBvBf@v1+CH=G;Xnj=m!M*OycX>+kq4 zxGKZJ5i)B5MOy~9FjPO$>GW7}t0z}OdDB8dcI8=Anm}>H%3{+`*sm>3@}9dD7$s&Y zsunBbl2{WafH%l7v~NpQ>-*pow>;fDX7+jK_U)|_Dz!R8;!=_vgu)hoz*Xa7N_w5)#E86hjg7a(#`cvpNnA*-*h! zjy>mWZAQL4c5rmmx3EZ@qEMuuTp}YQh2-Q++Kh~Lh4IO!Th+dpd@h_nFQ4dwn`#^j zL+5j%88=2oMtBvx3!wa$f-M=xUTSZJvT9*xU{L`LtA~}h{GPOV8|waNGRkCL^cG5a z<(uWBnHtMSn+1mnJ9fj8&3FEbk?n8R`$hE)oWBQBy7Ap_FFxGI$0t(KpEp?H<#mDJ zzwXJwuW+-qwUt-NuhesPVA6{qewCe_eTqmR_%2Pn%gsH@r|8>JMkp^gDJv^eS5wmo z<5zU2bsFUq6x?WRY{d2ZkQ2Pz$3kV!Kz021@dNHvxjQE>3iUR4hc_xJBH}a}ZTa}| z_r&D)SH~TkoI0`1iWw?FyC)|zk_-WGqs|(SI#!dZlOOt> z+dtjki~uCUWnl`7Po*7u_VfsX-Z}F9Qi%Aem-4O^gS?8qMO}HOf@<(t25xTeNlghk zSAzGOpF{gB-jR})cBp;9*YsZ8s^+wah~~F%-_F;Z21@5tm=D~4_T~{a1fT!-BU##I zC|5`?y~yV<0$YX6N;#ZLtIFX^2(*s`2}E^M4DQ@XJz)=2aYjU>^VM-xIa-gOQqt(? zXh%y6!ud^Tp#(|0*7|6_xCy0fqw71CkD@NtQr-@3qRH`0%n=7KD&tYoGBTLCp~||t zx;5XRckkd;7eGIbqHk!p)~KNi^d=F&SiS30X+el7Exk}SIO|y=fM! z`131~&iuGCbZ>2`U0ZDSJ}5x<<7^zC+B39s($cOxd-e=h&&9yM3%{Yj-WoZ+GlHim7Oe-a2_{CP?%KC@!BT%*vY zam}LNq{^=ho-f|i&290doH{_ifR^&+b4QO}ynXw2c1{k})WXO}FuJ~zBqti3Q%$D^ zc-q7j7Z;b)NpX=eF+QK;a?Pwd7QM9u3aWeh32i`3l-}=J0MG7n%$czo`SuItKI(>rkEFCBa_J#83H}@1K@0R z5GMv;8bGn5Ax7e)8oZ->^jmNO-G@rb%FVr=W0=F=a`R8{T?gTjp_QO}@#1|T`nI+vFBnz<=6 z8=LeG&V$)$8qp3v!cVGeY8u$vXFcIKL~1x|R(b%I+xYE1 zvguhf+ZJ!WBEF=}JQvVwUTkn&p9KDf@+1H5o(g>pm2XL~c=#KKuDg2?NLA0dp}`SE zvrBo;--3h1tj>@0m0>f8%o-lTLq^BO z`UkYHUHi^n;?)1aA72aIb4w??0!l+&Jt8Ry4{9HTo;EZGHvn_A5*2z$jC}J7NslRg zs8t8n2D9$R4;?M77rXftCK~o}bK8T&J0mJ;2olP7c{&RLe#LuTG4{^RUFKecX}yKE zUfzCiCEK2H3C5dhX*Hen89+1u$d>u6jKsEF<3dR+={g6WoIYUi^JmXmpwX1rkwmhY8LTieHa51LJ140R zui3e|j@X2{I(34NT3u6**w}Ss>ePMz-ZIshgDgHq!d5*zT{|hCZS!w-^u_V;Q~+0d#_EDe zu|wo3&Dc~ZOnU&=zJl8iQ}Id_E*lKG@8~nZh}hWdh=_e6rXQ}Wsj1-vMs)S`QY37f zGSkzq!j8+i4hNo?jK$>Z;4Lbbl34U4V50Un;#Q!A@)j4}m=wZB4lw(k|ATA%fv*L% zy8x2)Z`?S7@6IVIk_7oH>oN-4qGLDFec+hHKc}4O{*N>OtAR&G{S@7PUQ=s>%FIVt z>DaMLh%jTW5XG!Q^2#9lj9_)tR42nPN-MgblSp2Rn$zl-{C z%kUbFB4yWd1n{xRuioVEGBBKz@R}*V>>(|ptN>z=_j*bpH=nDbxbf8sV8h*$*RWC+hScGwdsLt8> zuNKu3?E?e3zZ9HpvojVA_a#=+K0Fp|228i8Q}6pLaWXE37cYKJ^9SLGDu46uu|;tG z{U3b_NzF<4wKZSDIE!YU%E->kGXSl9BCE9YCa2=kORWUCwC~@)&-wk;E4iX5 zmLUFDCGEP~+HMsUcufO2E!_?JZ7D7~6&T8P zV|8I{(YF#O0se(s#o&x{VI^~yfYQJ-0(BiErJVc3jf@h&!e~f+3I( zqMaNCz0b4?Y;dU^FcA2O&@pA@=Qp|dfZt&zY7|E)HOt>kZf5z2_kVoD^ur1eKX@<=p|DffvM>F#IGpX)k0<`Th{d|R=7 zg1{D$3RX?y8*!DCtD(AAuRbxvTjbT$Ty2b()eDydRm;J1PPsl>EcygEUD{){VcppV zIg<8mCjhiH?=4Taf&%@EB2G(BKXdZrmHH?VJzd>!ps9FfS4YPLsOxNiS=iRyhc6sa zD<{QbI&zG}20i{-TCLmvAhH{#C`9rgQ+wi*^_E`!bbV2>u=r`6r7vs`BSCPwmGVHOb2L5%Bp4; z!r%9C(DK<%Irva-uZ_ z2NEK_waC65L{QG^syEV-QJc|Tv-tdc!(T#KhUiCaQv~ZjQ1tXL+f7~FWVj;S`}aE# ztNeMz|9JGiu+Re>IBBxiOkW!4i8C@XM(ZncMxc_R-reViFWRPOW?sW|6%?i{Iq*LE2;CDmi$*xw!ush^jdXdtV z_j;+blhB!Cgn{c+KK4T1ok{Daln|JCkZu^5n4D3Q^II(dm|S8|n-O{&D7|Y^;hFcr zsXraE4Fc2Lv)3AAWRu9TW5?b$BeJxBUGkr|sY@jEjE%EkmqU4_>SBI?%VB4i2|L30 z;J-dol4D80@ya;ITlh|<&8-B&BbVQwS9WGBO}0DO+v@=M5*NRIz04=;mio)Cj-y)O zyUSRN_b+UKoXK7R-rl8a%QKXQrKwI0q*VuNn46b38_gKuMA{Z;kevz4W$CcItSmK6 zP0glmr6hcHEhhjyH#|+ndw}F|GFjdd+%FUGD@@AVtSi_`{pfCrYZEExj-vqGTP`bu zumwjOfT6RqlP-eK$$4Er?ttY3zhi_!M-wolewXv~#d?7-v{#*JLL3?c-~q4!;D~dQlfM{u_4Q>xf4;*Zn~$-uxsR)RlFl}4lWRe0egsC^iG7I-AiB^85XiXeeOco1iqpu?YshSDlv z3*BYdSbJTePq1lt^G+w_st`0UIYxLxE2|W!AtAL`CI9l@cJaI&uaDLUCpE@pER5A+ zI*yYTHm@!hejiYx~8A1KOp0bDuo zyww4Qftrz!#n?E8dg?`NEbrqdIRB$yW9ylgICr+CX%yf2@jLKJc2SW&tPE?jU(_rU zI0{_-tg0#tu*Z?NCa0t%#2m2jz6f?ql5-`^@bQx;Q%&-79k4{ki|~WCh*bTdwA)tPB;(W1{Aei$3W2 z@Yk;m^!45C`JvrXKCpitbyi472W}ChQ^hVsrBEL6ONd_$MH@%0@SJG_Z!a<~E(b~Z z!1RMFA?H2+Rzgo-KUE6Tl?f;fH+QPHFasfrO08@V~q)7rl?j3_(Xyd2hvGVf0(m`p$YtjiIb0JAdec0qRdUHTNxHyCE?V4JQ1Y$EjfQj*k92o51 zX7*YTpQ+&4kSR}|{HA7^aP59e-_jN355coXZ;(5`4IeH-6r9Kn@-Thow^iPo(fj|O zwDixx9LN7C|5YWJYcy&FT0y}KapU8_oG80>h&+c8Mn!}0R~7JIdN2-|iIdX);q|Ac zeACARXD)2r>v&&jD|&re0vdmIPeF5i<<0Z8Hn0~sBSBMBQ{aw+2sKa}}T; z1`H@LS@3>&QQ<)_^gK1PJQr$s{Fi%eA&J|u{BDcpf9=6{b#`WfGl-M0x3_O9)l(h)RtVias^VEIu~O`fKz|I){X`1J`UVV zuDyG25BaZ{+uD44&V5QrX^2r9zz9O(s|N52Z|mynHdwOOjBIUytZblm)3dYd7;~%* zJO~0Qy$mgnSv(#u198c(KLgVSlKmf?BtT-3%E*a3m-HTJ+1c5h3%{WjDk%3>hz^9npq+An<@qkS9_b0%G7&6R)so;flm&kohF>zPs+4+y9%)TE zJx0@89Zy#tQm; zv^~sp$lV=%q{Limcizi2VSyKdX$XX&`F$sjB9j9Eg6)sCb4dnlFm4I(K6q-$9uz2E zlL-;l$jE1O<4^$0pEgIdjERZ)th8^-4I??S+!*+3-7k--NJ6HqrVDW(tgZB44gxpdUUUQza0icOPPZUC@ zfUV|`dGqw?HtHG$e<-QhcD8EW8NxFwm>2Mw%F1W}`=Ifo54CTg8P3V}L=4p4x<~-> z69Xf2Yba5;RixR9Icd1Pr{v`N%&?78HlRzKoLy={4qgq%A|e053$DZL^({2_Zfw&V zywaFEuoA*dr=+F3%;4(VfK*Q}F77O2#gT_g2ug%q=FKZUnxG49Ah*ZWgE?>irMkM2 z#b{>nScMov4^#$i^mQnq$!>g78L(NuVw7f_G!ht6Ytb96#$pA^~ z4wtS0&7z{??r+{23!^oiAJ=CqNMtmtY!Y(k3Svm8xD7bJ$YbE@+uGX`tg)m9aR47u zUdhn;+Askb5NxEhXbT6dDacvUpSAoFMrL;(%R+s~`Yfg*U$5>+JN5lMtJ2+W-YjcX zwc{gl6TmKx0bBhIkvZ#i>eQ(k$DV@EJk-vh&Ssc4@mAo+j(*+#>*~NV4ylnkjVwK) z-cjgEcp+$nB*1S^qaI+hs@kyL4wE6j76Y-R4g3rY^S3F+U%ve4 zpp-*IZ!snsu2k5M@88cs>DBO9RjrQhq)z4FdDU#d3M74f#+6=GH3WZM0@HOCS;4PW z0K!`I32ry%XM3teht^6HKF??5@qu`2NYzgX3H^Ws~WIssTVAfv*oP#M!es zfI@&ed^iala91Nd#Ec(vMpzQP-rL*&eGV%C; zMauz8zt$1y>gsAK-z7UT<@3X>!b(aT4_HYk;$_rmIHk9cyfXBpe!NYjWFR@uv_w4| zg4U^z%Ia-sMm2f@Cfqszaq!R=5BgH_ObTv&UKtWA7i^Ms7i>@0Y$veR2^3(pzH*No z#1#fDsuAwHGMfkLU~+}Pszkiu2M;!ZgnSUT?aN73RI*-v)tbYVt5>I*12zf^r{T@; z!6lO53wU-{z|!~a-TSU&$hY3O3q}f9E36Ho*DMwUB;>|A*4AlCu*aG)=fBNufQ4)( zVbjnuhg*?HA~FE#(#%?T`{&3vqSLjmO(2ly{!CJw%NdwGg0gpNQoVXr{dcmpOlNO* zg#2u&3c#a*v2ibZKer8%5zyiVS=Uo0wtKoS27L5%Aodkwz9-@Hzg_`hnbb@~Q-f76bUwkcqRr0y*{4*F3WLEE^^3WI9{(_9E;0(#j)H_cboQ*7Px_96^+ zwIE$Sg!)SUYi1p5+j0e}WsM*i0*?lnYCtAZy7J9)U=FKTo`|l;De ze){xj3mjB2%ppDw3Zhi4&mv(HW8>gu(^?Y)gEW|rq=5|q4{u<1y8Dsi7gpay5x216 z1k!^lt_-9g&I~+BJ0frbY%eH+u>)fcYm?dmkVKvh<&!rA4@bw{-93mxn;kSoF8&fs z_F2x$`~-a=V)5~2w`D-3bNS>cu#xTI${e71BZGR7b%9jGfVMeMEQ;e9WX8uqi@&kf zO*jLsKVWbxP#1Vi-Lrn+mvrSCr;roxX#wsdzL4C2Qh8Lck7kUtQ|u6K-D%K!EVO*F zPB>v48YQH0_ox>su>*X8%(rVUfOQW-UXK}P;ZvusA^?IAC9?8LUz#p_V$ix}!L9pW zzI=gFzG04|kAvr1R=PFVS?nv1)dT-M1sdQ&Am#&{j)(Wjt)==8?lvJac)${jK9MaQ zASa{(HvBe1kBIW3H(mWSLnK(LzBsG{7y|>BOFdR$YQG!F>^T>YMYV`;+Jk;7nB=EB zSGkgS?D+A>#Ke3wb5dLV+O=)Vw?|Y%u)9%xwPA>@bhbK98G5PzKL({^Se)1wMZZhh TvzB1ZD77nEm-8>(dhovh>|#Dq literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3df7717e2f59b5e52fa3497efb4c6d8e60cc36dc GIT binary patch literal 8334 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5984795c27d7d6f1d22966c6fe8b91e99effdd6a GIT binary patch literal 12775 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 Nr)6+1|IE*~{sa2J(*ghh literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b2bd2beb96291a089206552f5920fd1dcbef5510 GIT binary patch literal 14244 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 NA3+R7%t5~ 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 Y1tI9U3x;Q0;jvMwSGAOLFW-9bPmr+FH2?qr literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c13146c05bb78c7f20b49b6f003c185db3d3c16a GIT binary patch literal 13141 zcmeHt2UJsSx^A$6B7*X(hzcrAL_|tJYD82FNRa?RKu}S7?=|p?T@*nO>8SLo(rXkI zq_;rmp!858git~|?{@xm)|pvz=iD=M=G;4L9oGsjAnbhm+u!@VPkA3{YpSyC;NF2k zq1dpO&g-C1n*vZMra_i%@Dp@P?=bu)>w3Y!73W~?>T$#QHcI1$tD~)htF6_|Bks4I zU924JB~MA8l013D($&?`MNUl2?%&^V%E8$}tchMhhl^}?ymZwCg<`*fyqHokDOML_vmjX6^{3w)wcvjg=G3MmC{)00mH_zX zr|)sHJ1kTKw#%WC$ zyqenMV|>$P`!1qZnVub%PbQH_j#`^hs8zOSJc{X)IYg!2HWt=RgY1qCX!0e7H`CYZ z>IYuZDAb_NmQ74a$;oomA?ahNb<`MU;c0NN5Ino)s?OC(BX`12Hh6&IfA0e%grSO@ zN7U$3UAR*b>O8@!J%tWL%e7>UXi}+%L$UEGI(5L*sL-CR+dk+Dflv|p;zfJ*HTh*< zrNauIr&CAcd}gjJ&h(8q7l*~fWIo{WzEu6}Fl)Nk#@eFW%5-7fh_f&nt#|LyduSi!qUvmF+I~Dg2O| z8y*{*RqnGWhlWcSR`?b_e*9SX>eaMehvkloh^SjM#yDBel+iTTzO(x`|Gt@dzE&h> z{4+a-w6-`vwPoM3i5qPl<~=|DI#%Apx+YY>`^O`pJnQ!K=GdK33HnDWxy;VV22>BV z41NmCzxj0sRtJZB0WY*4!?ht&a_kP{y;*g7MTLn`fvr>b{auIC=jUDb?%i9%^)@W* zH$}$y+bFcnOa8R%Y)vc{Ygp=@RrT~Bc}hXrp+9qK$`&mpbzD&JqFBY!8v;GUw1&DU zA}y^SDrM1lC_F4IH9egY`b?CA<@nK~%5H9MkAs7WnKY=%%D_b`hbfb-tu3iBR(^!G zTyfyEgpN|Y7JPEU4DQO6-MV7ft5>hWZGV0+vbYjxy=Tv!;aN|^Dcbx*n<0@fS$ff$Q$C>Zc)icby4mDfE`*ql2*x1;1Y}usD4)ItRFXyH<))ID_5>W zopE|Y_$JivGS;Yf?OH7D3_PX1F``g2!F-8$6elMq+-wrmRKh}36nAmojQOHdY2W@V z%tmf<^2M5(8fEmv#Kiuf_*bt|<5!1;C~Yah@Zji;^3-pW^nx>uh1E;hMMY=6e*Nm# zbOlN+&;DrnCa!}AGlGJ4hDSum+i7TMoDdU>AWz!4^X8Bb!j|5?eOuGd&@igk-a}jC z2!}R&|HLnj7tdfUE;RN!m_i_H~UQl267-4{Ecl9n|HodH<$f~P(Aru}TFGd{5 zfg>FL@}-<8PH9&c5D=h{bK-H5J`1+(WU`2i z3_d?UpIgbdNKIWGs+}J@-BU=;$f-!bb7vFs23gswZ&iak;1aRHj+}e;%rho)Y`XKT zYQKHczIpS_9E}zp9et33gX7Jif0W2R*nX0@c&+3Ku;*4lSUDEp6ip^w4mU7Qi@!F;)ytDI% z?tB}e_@n_FP zpbQ4X+pg=wSF3|^uBokUZF;)8{ANJ_Z}a1CgRMI$G=a#WI&ZQZA zxb?`yclLtce2Z#mMa8C9FJC72m3oLMDy})m6`VbiaQE((_V#vRC8c!-%Fs>kMz86| zi;oJ1zWosY9=D0Zy=+&vsBTW+Yr=*->pAbO@7}+^BJVL1)-<+a{_)!-=$NnusZy;A z7cOX*^TU?O(jTz%z8s*kr(-W&dR{$b^HdIW1XwRnujZMs|U^8!OvrCM6}6`ug=JFCLaHQCR?#mJR2) zQAUAUO3UYwir&nwkRXgpJ~RF3(WBbBI+r+h9t8u~;kHl#b;F$jPxgtnzR*%SFeeLt zdRGU~M)UGzU0vNUc&2x{ZLF<_-AkkUs;Ave^VV0J)F)`2@6AeRjq>4tDv@|Rr+njfK!^{xf zJCGufmYG?frlqd_qGx(n`t~iG(lax6QfRQAmTw_^$e*EYI*v=st+2Z_#VM+3YT7&b z7#qj@7#a%Xfep3O_=efkSXbAUh(B~F0T=iQc^PV@<_{jRDmQkw-?vfU$*Ofr%W4bBA0p5NEvuBgiM$c37QSi zp7cyjb9#G?+dDd}mwtYSmJ?n#5;{-c`x$C(qWQH-$vR^)aFjM(+OM!S-^N%P3f_D8 za8`f0PX^TW;()*ZaV=&P>TKt|RiyyDhD{FFgtbN(+#l64%miqp^cxpU6C)2_KLaFho2p~Or1_quZ zySP!Pgm5@KCr_QyH!+FZv13P`4fzxs*XgrB73G|MoX@5A6xg*b%?^dXc<~lNHhFoY zuCA``QjZ)Q&cGmbq%I;OHT6<>csQl`b>N2&A6!T44`6ll^umFL%>zJN4OIAf&lHbA zc_(_&MrHj#n>^)4t3kas15wStRkKHN_6w(BzO|mE7U;^euP$(zT|UnI(^G+4!SkJd zromAxz=Dpob$YT^e73C1sIfN2eaZm%gALT3W)B?C@VGdnNgOZ>3k`jv%Il|_Yu*sb zkKnGbFxG~g-CpE06ct+y;4}Z@i5TT=uu>?0`O=RkjP@LY0Fax`P6KRfjI4{Uj?Npv zM)kiy?pCc@0SYu{k$$1>XM9hp@A~XG+c_&|S*TsU>po+xRFq|6@5idDi_^WuIHh=M zG!q{m@NeBKS6Zf&fRHNFLqV*Jka(4R4G2U`svt0Tp5T^h`eH zrw1Vh%6mMwNy(-l`2PKETQ~ilfK-(cXDiC{FA#igWewnLaYf9~e|>CZ-fO)1X!*}d zR>oH`!fg4FuTK!w5ZE;^{1{c(yj(W`uBJALU%2vyKIU(t7LQ1B-=;1HAL4e(Xw12{)m|KuG}mNCOOP!fcey&CQ+jQ-hnYJRwKg9CTP-Uq~xX z7xeEcfrzjPLqm%1_cyTB;}m0a^JHn;&V*&!m`#6~7o|NTLQPGLlw*oXF<+SKO3%r` z+uLVb+t{FemmGn214F|y7;62mRUWv)qrT?9MpvfE`jex9UX%kiM@id70ow@!T?6nx zGCF$y4x}xKCdXK(O`4mq+H4g?2s3vqRM)0Q03DRDE~%0`NTYJ*Xxr$?x82 z*F}iofeM5EYk#f6jIeA_iJBT_W^Z{s2bnZt<>+r{M!Duse=%hE!<=tUh|twP${x_9 zw33;8Ir0stz6^(fiW4VJ=zu23_oh?KC*wgNKIKs~L=-t=e&TIPJi)NA&pjH!=ZVP- ze}LjP&~a|m@i9BAzyTKRQcte{crM>92FQhpZ8{?-s z5rgOL^KE|*eu|lcR#dxune_aqN}e~}`hb~Xrk$mw_7M&iZz#h&bj$0hRZ<#G&SNGf zG&J;1_lwX_T|K?_DJ24t*yT+Gw+A!Oq0^A$O-V~}C13MMgKG9(qm$`P8>>wWXchBy zrt2TN7{KKwYJ}p;GR5JthS9Lv4*O4cwl?~+A3CE=r_&8T+`>L#a-8Wc{zZ0~f4Oh> zeGyfM|IgTM-2_d?OMz!?M9lw+ii%2Z&(J@JqPFjw)blNxc-&@suR1w7VN!Xa#5zt6 z^D>Q%j99fMV!5R(pWokk;LYv2mucWqy%5rR$*&P}=1O0QTicrpPx!Ht=Jm}Fck|`B zPUt*6AbIhij6DhbN3g(7U`+=~9Y*UT4T~IK!?8%p%aal{cy|`sta70v7+M_@Z7JZ) zWPw3r1>`w2G1|Ta3&()uzgq2|3LXsbNuZWGSFc8{kC?7sfIhv0E(}M2B?CM@u+1pL zH7`JHMhsB#-rgl(8^nq^>EiJs5_8e4A(4@h-S2J$jyA>T0Fy|==a`%j7QR9xti?oi zw zF|#21k_o}FmuTc!<+8ZEUx^!hv+4H$Xr1u6`$Gqqr~bV2XDZjd-?rQSwc(#c+Y%TN z|7(o@XOTc8uK+6BxL8NgXCVxf1$d_m(>-E_M5{JI`b?h@xX5cOi{y?hqrifLW?}L1 zIm5%Z@@>ePU|%w`^XyDtrsw!)frQC-7%+*IbF+4jp-`-mvk8V09`KRgX%;*I#u7uh z8d96)?t2QTef#%|h>2-!-MSTAi->JIxe_unPsV~c>tfjT6j-e;&DPe`w9NFCB5pC5 z4%2<5>^@C0vT=gHhFqJJqA=x|t6R5}!hO=FDg zeo`>-1Avb154WGRNxP0~BZ3WxbQM=pV&ZstUKPyrnH2nCSZXKg+e28ewIND6!Yd{6;2%V$Laz_Pl1t*BSPbW&4~x06U) z^2sF9w`q5o(%_!y3d^xx>Kw#UQt*nT! zfkSH13+Fyo$PpPyprs2V!a%5;9=?5GXzAKHEVl|8?JnXc;ZUp1@)sG3b+Hr205TBRI3Q z4GnsBc3Jn?d9zzvbs+Ca5yW6j!72ow2O47NJP-h@;cp?3yR^O(HIj0p=z5i#Al39j zP@@&6rMUM$TDn0isAFM8%m*uTxE=k=k%dS8fXE zdH|dPhXFzhLnB%`&4bzx76Jt-v%tQOJFk!HEp$TxA)yTLYv-1IfrZj*Iwm~fPW*9XSJbOvaCq$6bDbLuKhf5||*Vu+0bq z!wu1ve>-p>4c?bf@fX&uej^Qw@n;Gxt3yRDt>5bZVE)Ge(|CX4Dh!pG#L96BjWp0UE z4*`#o!RFV9Q@9!`1^yQJsv2NNhw?YP5?A577}N||8``{{%dWTR3X-*@>t*m`ckkXE zCF_#B@04+>Nx8SMsHg_(zLVOJ&x3vv!1^)fTj1cKZ`b|?ZqEeRsoqQ9A3(o81Fig0 zD6pCoXgO@Zkdcy+V+~Q6_wq=D${$|AFq7j{=X*J?xkRw@AecqWEP&N9^+N#ikAqf6 z&)xd3y9Ki7NpcPug2K#FYK0M0Q3ZQuRFL8n-KHO6EWY4gj)2sZekMP z=ZCQG6hANXVhpW&FO}1-I^?TarQ+6(gb{;4mO|~UPufKP!mX>K*P$Z*b>g=Fr>Kol zLm3x4CwVVS2}jfk1XsTW25Xu}fG$nxD=h>FXDm{4K(cJJlc_omT@^xW#K`qkir>Yf zz@_WLn77h+by|6Lb{3q27tYSk^I!LyZfP&uSYIhwTj)V%Du88HR#u9*e1xZxW$M1?;53cTu&V! z_S}IqtskTSG8zKxQqu^+F?cp$l|=QWym@mDGEQYX&5dOoz3|~{F_@=J7Uk%{x z+ zci09+5L#h!>2)*d=j}_33q2g^Zf>#$f$nB($9m7@Z);jS_`~LUmf@w%gK4-F*O^{f zK>n@yLIMK$p5YDDMHwUN;!5oFSkEc_Hc(gz(=9D66u>-f4MW53t$r~B9mXi*KL#^c zyKy*NwBo+O2bT=?%^djX{%a%1gJbdj*>~^WZQj+Y2Cc)y4jklzu5KS7XiL$G@5m>c zWIzIZx^apEY5+NnkO&(3c=3Gy%6-1*{Wg_quD4*98iQ%@Jx;Cjt`tg8P!Kjy4UI-C zPs11I(mwFE-AfT~+d@O*DU1&VT7!Wa8$~7541>yR1=148u(FSF2%fzL7RTc!Pgt$N zRl?=w7fC=)=k;C10MY1~pPJv%YX`iJuI+P#2M-3Ru8GM^9(+VvS(&j(PGOfHFn)utW!6lAWv&c!wG>&|5Ut6VZK=fSiP*~TKvYU1?S`RtFc_=S(NGV-9Wg^wRU4Ke)o|G2tkKV*QTx#Z_x z)dL2fxZc7RyG^uSfcD&-YoS$?vSqwZj7aiZ>`Pf%^1N{Vd@9J~URp68x+^MT?g{N!AK=1+DZ`lO-Zkv^*J1CuCj- z(&Ed_rp@bVhD>C8241FT0D|ry{;`&~s_bo0$*kSYjJ$TVMLl`(Of19> zk??vH94tdN@yUwB_*Yn2TRRu{`>+ufmzSmUlrY2Suak7dpJUDk_oec@s%kV+9@14@ zxiCZc>tlej0T$t12K*ND&qP4_{t99ZS~X_9rON_3N^(g_ch`EK8@+E?T>{1*Dvph9 zvtwrBh?t5Xt|q}agE*WfG&t3gATK2VnWf_ij5P7lXqh1}{MySP9~p&^aI{SegWj0e z+PDQ%V>kLehuCPJn0a48J&uh=*<@SIHgs~CZDZrU1^yy0>19aB_dHNh4T&i!(H;YS zlnozMa!K@-dL-~k!Dz%;I>lT97KNw?RGIdcPf@khe)&)8Y|byK1wM<)ZwpvxuA zs&?Y^^llRtO9vvs_lkxQh68356<627gmFRSNpy8EuMD!}t_r`>kXy*gQrNPZ*u6Ba zzQ1{IqQAV9#?E9`v23;-W>!X_&7olw&K!=wD9kIEgZniK(#OH+lubvbIQ%mQrfUvo z)*M_R^KZ|O3Q9`0ahcUem=dgzOY_y(4pj6V!Vr2%9Ua^`WE*h&Zz8vVyeeR_K*T4s znX((@gsoWm!3raFW*s@E)I7AbbQFvyK;&x~v^?5Sl$iJ>4Q3|*x~puv^J=Uzva--X zWr*X^vo1}F7D(_sw(OD9ygFrpkpzpmVt5$?qa*uQpBRTO5Akkz*7yxpw|9_x!Dzl5 zujF^9e;nr2oZyi2jx7frki3&U2ko=-k_1E?6~j&(JpPk5waXcP4#c&Bwo$rw!%#5B zK1h5t9B(2HWJr*M#kf_W(e(Suf@vqB=0a|Pa|6IT)nC4HC&PDt>9Jk%KLt39L)kH_ z+7Pa{zq|1{rr^~pE@XaVWf2By4udG84e2W@A6z{2He89OHb-OW!8cp2Uh(`@vM19#yhD?yR_d(Be$2E_>B({UnmqH;~ z94tGl);h4UHZTeM)B#5K8?)+X6Eme$m}1H${4BDJHgK_2N94EvN}+!ntUUk5=WWQ` zE*P;9{MTR}8DKGju(2|LOzDBM2@w>kkfn03D(Z_sF-&{yg{er)#&VNp5BxD5uAC0O zpXiJSEFBqN1-X&krjN&`Y(Ohp=@%D*kAfLqxK)^?Qfh_$yi;K6(dQN=Wfh7PhE>;x z+b{#re)}-)^5vcQn}+W*ZZyEu*EU7}u~-jeUImya+KBhyK@n_bois(q6gN}8Xc8;y zauN96{#6wf2IFyD(-;nB#`^s?{0_@Hp9g_x{$$OM-j45nZ}xz;`tkS8kPhgOX9zX$4jIawx8Z1L$p7#`NA=mED*zYmN$UGATy)m>Cb*jORK37+_9mc> zpEn#uS8!60K_EuX1|x^crinC;GLswvqb`|kncr_o85PIaWTpSgQEkyc{L+_*NF=`!zjGknT}p$WGpVOF~0BIB_sj> zfi&!~#i?tFh3jac&!RodDOv#r!FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8cc462370aca2ca8c0eef0b5c0abbebdf6b50317 GIT binary patch literal 11995 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 fd+@*H0Q44`1D~TW&MOiQG7yDPQd7h$+x7v literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..62130506fb53a8ad37dee25f8f4bbd6dc2b8d7bb GIT binary patch literal 8234 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8f63ce7cab85cc38de143a01366553e6d7b775f7 GIT binary patch literal 13127 zcmeHtcT`kqwr>F{D2=oth#+7fNS09KC_xJ>a*(VdIZ2k1)aF3Y0t88gfD{>(oDB#n zIV)KZ3W}UF+%A89YOOJ4eJwqCwhJZwz zyehMU?00`f!{V!i&2m!wO_J8?hv~k!v(_Pp;LfrSv6J`1-=R7+)E*S-)lU>Zqfl=} z_b9=8^*^I1P$&VFe}C{tmPGX)jxxtYMdh|uywr<>Y%*sA1Oz(TVPT`+F{d;u?wVsT zm;?01i>AyJbJSAq!*}oz5i0U@DAb(q+S*9C_eiMZJsitPWz-ghjMw;yiAjbt5)u+M z`N$PM%&ziFOMhEGUVI4txn!--&DmK1b}-necFbz<&EjJ>*v7|){?XgWaE!b^$)TTA z#ZKluaVJbsjIToL-L;b(?!MZNx(3dFw z&dQsQcH zXIl%ato+L}VXNHt@6Q<;7^GX2`+R9==qU9h#mAP+I zy*`KUXlY6M@#7knpkU!iYN|{PTpDl9%*p9|CTJF4^zJq_KN@X#_wHTM+B3Yom~i=( z7~95JE=*=dhVHp@x4LpIvP7(F#bv@9<0Sd{`8B=0y&pY#)TSw1nQFC7HeOiwe-sw> zjI%L8*7)Pck5I%dHq&u~v&QD;@s5s;M_5^Js@08pco8-?3}+c~>gMg#@8S+9eVSLW zFTPw!zi)G~98E)Je7muMn;xh%v&>tKqxkS)bQx!8X*n=1F*-U*v5b#={(Pc?L)Pb_ z0zo*5TS!QYJ)HPip*c}LYk9Jp|MY1UU0vNKDc^qYXoel3Fi%*tfR%4{L4yZjMG7dD z>4NQ=;#=?19*unR*2a1`4Bk#cj8bd?Fy#>aGhM%W>B+Ej3r(KJ7hMVgr#1s@P71uv& zFSQeP3|J*yJGyer3ZYVL>(*D82hnZ=a-AI=QuTElL47}}kOwh<2Wf3>)zH+`H!*qM z-UZwG=8fn}B2lsoi^JiRDmkN`J(F4H<>mD#@25ZqR$DPLGGbT!+|4H@^W25Q@?Cl* z5)^|JF2|d>RT?J9csmw^$HXvytgYQA0H-+z+fq&0)Y#bR7P!coV^*w1P0!vD$*XT* zW|oDC;Kty&FUBPKEsjYqi`h2lU@#A#30Y*S+&?(+kSDPP&WpH9k2pr}(xn*NruYoC z$4m~3V~x1o?N#)Z_j|awxOky<@CLfNFBtia><6m?HpWxJm%7Z{9Hzd$E?XaqOL($2 z_ko^YM#l8pw{J4nhk~KXmfq6}pOKW5{CXd{*NN0qx8>iCx2AY+EIB}3d?qdOLgm7x zo9K>4MMWK;-{rn%&@fx?z;38 zJnf$Be0utP{Bm75hcV!%o}OMu8kV)+f3Xpe);J&_KnZ*4(pRqfFgDrTnI`0noK>a| zR#Q{^(%5Ji7+AG3^(`fEdxKX@OrNNg;8+m2xiZZn>y!N^KOZ^70K`aDZm!PyIvzN1 zpum6KgOQ0TGdcO(bWfqat!-LUf-DaPAngeY3(L|%z3}AQU#M_9>m|v*AGIKD$yRY4H0>F{4G4>(A!^3Uthh;nepO<^5@T=V-*6*#+njt zVz!}(4dGM?niWa8+@_{Ca&*i*Kuc>AqN}HeXTLcm(in?|v!bt`a_7#T9E)-z>)H?p zFLupm0<8$_(kpK1v~?S!^!4-#;3;0FrR`X3j;(Go9z9Bojb(xJykij{PTcJ4&chMx z<$v$s=fYN%%lA$Ooc&4|%u&|KLv?j`J3$M9wm0|_GrLe;chE6MZiAMZ(L$YR*tn&Q$vh{x=$9{F93}P$Syo(v z-)_Rk$M;`$ zb`rFDuho8Eq^V>Xy0HGYMQuf@6_& zKAfFTNXUqw5D*{xE#EE+?p|72Ix{!7tL24?p`PBU=z6Y+N&b8Az0TH@^9Tvv*Ffsk zuJqfOATGC_=in6;)dOIFZt;}ef9~C7_JgoCPiQwhQF%6U)IYzg@kCJ!P`lK5qHf=> zMu7HTftLPr$#P&Ms>EYd!+UnXLMU33J^VbJQ|F?<_B1T{TRsum+{Vgu7IgJ}*^;$q zgoU*qK78odo)%hRnHP3kdN^A#aH|ARF$#}QmT>7AAB%G{0{kRTPEu|7%~q~@krI3n zJ}fP5vUl%ZV>cq`6Vvo0>bJ?sr{Li6DJojsT$$3X4%`N+2Axt1ZCV|$=@ZH(YXsfA zr`$L1&6_t+eJ{5+S7p&~3DYY7Qh+=|-~&*z2tY$eh~Q+C@wz}qM~7P zYd{m+#LMWV@Ao-0@Rqm2dFj`u!1#s?? zxXQ<7DR+KEXp4h7l3!|3iIwwPpeG~93L3%vS-9fP8eijKg!3}|J!|`&#w>kHl;U}NTlx2 z)N^pi&?n&Wr;2;obVgP;p@a^#kdTh>{lk5JU}#QV*}6Aw4CST~iB7#mE;2zo{%@s< z2XI+3-sGj#S#hLCA6?1|_Vn~zjvL%kpX|zM2Ni_2`EsPQtIM%16@yRR&%kXD&!@E= za!kxXPcIoDmJHa18-B=B;M6SyY7vV+!o-vYtLxaBtOhMGe;{Z#0D)%^`~ZshCG6T{ zPhnOfY)XPcfGG%U2*z_lxC=g;%Y%9=r^(gAq0yzzZ69H4!hPXK7|7+iZr%?vfF zMNr5AVY=?G0L?u!HMOSndoob{A+ou;`aKEfuSt7pne2DA*2%3Y_a8le+)32tAld@i z0aa(Hr4^Q$m4)^i*NKXZ{50x;+1St+Ku~sRT(|$mNGQc(=~_n|>@Xr>Vr9HD+uGWW zfKY+o18ThI_Zw*;P~8v&CQHMeNJTTJU@x0U#VpsoW$_knlSUQw|F@a+$LK7jW8n6r z6+$pTcNo@%v9Yr82nbB!ZANNC745AMWG(wgBdez)K>2cu3cbUZNZ!UKHz1fYehaDj z*KBMoqPD>hwa>W4jw0Ngk;W#Tki0N zrncgC!A!}>LBwGIGP(<9LK;-%_|E2R_jK`K?%>W!u?+ZKP@V~aiT(>1c@TVHytw5r zPJVrz(&t*7Ut*q{RWu6)C8(=IbvYoQ(r0!+Ft2;FG5Gs;V5NM*!fsx1KsbVN7%)b> z$l+|V+=S+%It)jT@`Ts5Un4X=hw>dB8A02(oXD}PG_8%{cA6xUf2?j&fdmIKB^r}J zkoHtRDrBy6?%X-0o8V`FN7wPI^l!xxnn~H!U%Lz%M{(o~qF1y0YC56>fsHH)?=A>$ z3_liLs<+yC)4K8T@zKf8JcNp55x85^*ra`LpSga2f43=U6&O=tVIkNsm-s@1T;*?hM_1#fZ(2578eI>(S{YrxFpi$uzE<7;9m=j8XI zln?)giD>s>RXXOgO1JmXwY{;a{|oic>RO`w_^2?rJuxCGAhX-sUTUHpJI=WDmFSlH zOt)nkW^o2=PgVU6iwHb{W-GY<{T!(Dy>jngzImeu7M!7t%}XKklB9sm6%5|Bbd(7Z z0K4-XyDu^``RLf?E&+o9YQ51Nv~3KP%Ky9khYAJ8m;>FM9|(*BK|3QOgO8Wj-E}xU zJKNyKn&hCW-G5E~W8R)NhXN~b?Ux~WgC)m>ajV`gx<}8Eo1T6q$GlW8Twx&pA_u8|OiGp)-pL!3qMojmexO6!CCxn5JlhrgZ)$o1 zj-kyTqNay+7ALKCO+jHe_7>&H_)L8rmxAhMK|4nF6uD%91|6TTYBT-xL9b{%nlx*_Ved}6=Z{yWk8^AkhM_>2|1NFSAkn-nwXgMR0mb- z>+9$wjn+qJy?UhszL{fpZi1+onDBJ%937w=}Fqf=WXLsfF>>Jx+w-$R(aFC z#ZLWY-lpX~IZ#HqGl1PF`z!w(9!jx|I00gIO$Ok=Ds2Yskb=l|ikr`o-~ns`j2;l# zv4-a<$nlVo*|@pd2=M_}rD!x7WNT&eh=+7pbHH}y>cg&)-;R8fa=rV(QysUw5B?Ds zHjae|7Pr<~xfFm*_b*h`LggHP1->*iCU}HVgXi`e`79V9ElN)c7oiP3rDIu0z1IH5 z78VI)GC96GuzL4R9XL7myd|`22L%4p060$Oh2=GWowV;QsC_k6)pP)hq{_@p4cFrG zR+m0k-~8pHL6#VTvFNYPEjX1KX=$}43Oj2f_3ZRWWzaaH{ueMUx_56Mf|K&{m8~uy z-Kof283hF$8QK`k)86TW>GPZ0nd#~FZ<^C;{lLbgno$=L6f|^p&c=ajGA{9#cEHZT zBu?OQe?YgtG|V!>;NQQ0kKnnWX~6|~+>(xl#v>*n^YqkIPVlOvM~sY&$W!0)GqbZh zz|AfIM8~uV7WXBuO!qp~JUB$|FE6eQ=g7NtixQ}#;H6hepu`L>UcC5<9^uxX_Q<2c z*yT-$+5{s@%S3+#f}XxU$noL6>$>22&&|0Bss1Ymw}4)`_pIPH~4=(*3i@(FP%brROrmflP8npPo7l1e~``5ixpxi z`^sjLXP1?;Q*Ihqq7;*-PoM5A^|T|V!G4>Td1c)D=~(jI+;t=r1n#Hj?*4iP!a{YD zk+Crm!YWeX;H;a^E+Qh50V$sefZGYdWYZ)7Ga1D9?@V=m_#Lp;apIjn0 zsT?p40vU-?g}*Qf{xMV)bLGmFSZU8RCPC9wNQ%yIajC(cfZoT0Tg8c~#4WdddU_h| zw{Q(&0Wz3Su@Ww^wIRn+0FN0ix{L!HT@WIipeNqt4WJ1RKrKzdwsFnXA zokf@`m}runMKUlCk2jD)+0{+-)fyV;;Mj8C*)BYn=28uVwtZ)& z;X7GofM`Lb7?IjNo+#)+03wbbA2H%n;dp|=b=p{(hy|aSYZ>AkBNvw(0Q=zrM8F}+ zOh6z~L>=5P+|=tjai=Z;j2;#ndie0+0-tHq&|_li2snewunbRc|2CKcp9+b>_K4z6 z3L=F;*I|S!m+*nhSyo8U3$ZX>+;_$tGOkH5;-U-PAl`;(2$@oFcAlb_(F&dTzgF`J z@B+GjOT1zw-4ffG*#9E(GIn)!RWgIf4^9Uc227cVW>Q4=q<2@{$B&R#rdL#$LkOq) z8_4W2yh_l8_~SY1dgHvraiD&@jkhL5YJyC2*aE}~8d+9`!3>70Dj zll?%a|F*GVXJ{C8n1O-H5lCi2?Cij`g-&Cu31F`j+u{_6Ur(X3pbMwg}GS0yIIZ6!&B!q^|f`)U%@&=1O|X4VV%9ny9?3PF`qtNScJWe zh1fQBYs;U3kGSTfE~GEzH)I{_|?>g-*r{Y-}!&6kY>y{5_jh!a3%-l>1esZH}Ee z>ct4cR*mZU^Kred<&70P8%T^cy43NbR^nXd|}1zCH%&%8SGU0w1A$ zj2u@zi_AnI@EEL>p8LP%OSd8Q_J|yWWRcK7DTjghd$-fXtWji7ixALP*|XX z3@j|z$h_Z03yW4GK^Y;*6VNKtB4?9y;%%m26b*l5WTZXh^gVBE9&07aWhew}!0=te zI%~VqnQWL|3EEjC6ha0Cd{YmJMzUxa>@8+_p|BwnYmb-qTmnb$3=hxw5BKT2AuUyr zN8kB5=)gf`>kwpA=*Y2S8|_oK=@oRYUQHGi6+I`A$3(9^_*Uvk z%-;c*R07`s6uyzox9>`Fa&kkjTeS-iBEPlo_py*%z^IS}n3D0wkR27VR!>1#D%o2>_=?cwu3+OJVG(;nrT-i!jERztc+^^0l&ZR;gc98PEsi)(BUp z>d{J&u{m}6bYsx&Y7nb+hzUrOQgFpUTZT-uy?pF9^b2)te0?n1=_1U1t&ec*jysD% zQ-MLHiR|4OzvcdQO;JGAa=yBKIn)$CM^8srZ@t85Xo#8>yP`oVoCQKI4kJmTgusmq zk+C@X5m=1=3WzAiAfg&;*H%RDZZ+>Z1L?9wRKz0q%yCv*!$;G=RKNx@vsyOUn5nlw@8{5%gun65H1{&`3wl=+dumsdM!DN*H6&hIz*KYhA!P5xeY=Bn?XTEJC z3z1Gx+ew}jvMw_OrsM$Re;cg{>#6kuc^I15;5lyFZ^Di&K2o($aEyz>mbnaOlt#NN_HPaVWY% zVq*;f&|PlQ8~AAiO7{K4e7VSN&=oRK8{|Yo;f09Q`a>LwTv{C8023+5O=G>i3o+W- zk}!HA!K0lhj=aDD>+F=jU_Vb2Tq0oQKY#b(qer5X-Fdz};QeEP)bgG=bGFuh@rt>* z`BVptL?Ay1VegLuVBT?H^h<1B+1grcj)R$&Z+_eT{Njqc>&*xX2;JO)QPwT4-BZ!m zcGl_?EqyrF+zVGcUBAA%l4hJ|Nx`w?Io2QoeA&aYIY#945Z~Zy>pECa-`RnBcIp@N zt5rnvik@Ql38J99d_SDFI%eyJth_2mz!^a8>TEyriubG2)vvtghLlf#20g}X9r6w6 z2$%7CZ275!vey}CgzAx#w@7Ms`t;$AvQ3~~UIlyAou zLBQ3Io6KnpleBGMW>X9_m-U%?!kJ@LZRy+Rejm3o#fw3#2}BD*nKUNKn}IX9`)>2W zvr$ti(mr~21e!?RV6j6!o(!_Uf3~PZ!XjvUnMLI4ovu79VGKyV7?=e^XdR|aJ7_~6 zp-__jUJ-}~1E%9-y>PX2Q8RQ52&7y5`t$9yq1DafcL}ILbySUEH=UF&EwPBg-rbqq%|+G& zoOooU6%u}a48)YTk+G-2-JMm9ix&;R=-F7FtUG<{dgmdOyNPSnx-BG-lfpskkK28A zw)`sLgn)148`0bE)s96bJ7s4pMhal`a2&aQm2ZRlNNom;x58M~1`Oz-Z5v{Om%FWk zDgj*52e)T@0h6B_<(PV_Z60A{{1_F(GzAL?qK?vX_UmgE#KlroRZUrj$whpP-!~15 znVVm>R|oT;rDmk2{=f&>U$C-jU4*>n%$XMGn?!(A=-C5~Z>kZ+39*8QB?rXY&?d>9 zS;i5)(9Jv(O>({E_$f}p63Swqi>g5eU4pa|SkcU+BqgiB^_MWs5Z9Lr=nyOAo}6z1 zlnI&do12>p&Z}iv)ZSgvM)n^p-DG6g7I3^1Txz;6=z`$7ECTk zS-NAQs^Iy-P;Wb)`M%s zygCda!(=R4cAsfjeSo$D7|S3pkx+z9?uHIvlXsWPw>N4Wfom@Sh=q`h20+nJMMWjQ z`u)$0j4vnJiB2H#9)*N-6gaet-Gy5x)SwV<$xCkr5H?*8;9xOGU<V42HycQ)guIRxvYDu_rG!_jFIE15`{3qNV#GWP#m|20FUDIk;ydNlI%`;7< z$glt!9i>=)Hwm%tVP^I7EY0wvdB(H1TtSr}Lw^XofVm;R+@X)J>7?63M>>uY4@W)V z_?X|UkOi~>8CHc+u8l>)ZuZ*RnvOPY_t_?Cls$_T1sH3W?!_qq`4RY+nb_P?YvJt5YR<{|{eI8h&))k<*e}M0 zJGbxKjv&a+vp?zoiXfXp5QJywyRGmqDy{va@P~%4fu*mRr;{(?vbQ60{<5!^o2Rea zReNbaM{l32o*v4Is*1|;(k{NfUOt)_jQc;|py=uCjA>b}T!x!$^ZLok2SEfbqrZ7x zVbiW6$U)9o{ZqgBC(I0x?zN8vS2J1$c<%g2IDLe2`6zp>!ID zsh{3k_p`KtXM}&)=}5C&^IZ=w$sYdcxZt6SZ(kp0@uofvO_qM$6teYq@f2}Zir03= z$=N>a@t&pkr;NuuE|a@lot*Pph~xq1k6jgNEwhpaRxyq|$jRe(7c1cTdSj8z$WIaf z|K(ry;M|=c%#c@Sd;4zBie+=(nO>EQZ)n8|BJ}M{Iuy_p#>2z^%357TJ zw=j02*AhJ0F^?Z_JBg?_zF22uouIL{B0t6b@27F@-R7bE7G1Fv!{{j8;5B_yQ&a7Q z4+pZ6*o$PYwx;jouA5tTUdvzRLBx-4Ka3D&`}gwl@kf;SOb{~z`ieZG@pMXEY}NXh z>czcC_4CwA8?wcwDQD_lnWpG6%QLb|k5Zx}#10)gB<0$*3mNjda7-(NT&uIvFC?bw z7P?p2X*5t4L1tcF@eHelBB5C@8~r>tS81P^m`|73zJ0yd0uaRg z@JEU2iog|0cdi5dWxU7ThbFou9g9xQ346!J#!8GF9UaB8e?XqO?{>6`84DETvqo36 zK3{`xH4u60&t}f_rC1kvnEv|f12NZY*Y3(UB)@oZFv));Ont6=k@=+SGyf&H$8>k@ z0oYyswZ%yS$AOQds}bZ@y8J!}!}Cm9<-`g7fPjE_&bqGn!Bt@|D=Vw=wXYdXl-bg$ zZ2z?{Y4mq|QV~MN>d)%}Qd3h+FJA1GG}?@~C~px8kqVkWm5Hm;B?Qwck-1JyPbUW} z0>ugacvEX@G0)0Xr}arg?A?)(5%uMEv-qaDo_uHD+5P}B9tk;Zc8rI$(14+qOeDpZ z*_oLM2@2Aw(b2bdh)`k_tdp~|6>$x`i29Y?qs~a5ku~XdwKLK-t{j56*El0W9N}Zg z$@6LrIMxhJen}FA1cLReYloRUZ!Jw+k2Q z=+W3g-S92Qhm=3IRVQi@DAm97I?VQ$WNB{nIFln6Td>#|d8;2X%(L!7&8eM-KpiP*)>jUh-u_#Zty>q9pM>^W=8B~xN*9uX?8o%$=Y1N35gRCsT1um56` z8r=}PW(vIHPGiui)I`GI-kLiC(Q9jKp`q#{p$C%7%e65rJjgSh-HrT14VWtNn|uPz zob9nspFS1U_V+qR*42@bDRk@k;rjLKCG?3FvXoTtlIgi5ZH*f%vx#Nr5;avYQ+$XE zW=lS=f3wDfevBi#B6#@yt)^@YuCm-+WHaIwdNfYrB!XNtL^dG@&-`6qUg}kfc)ihP zPvXMlqGy=rzc2&5IlOr9OGQB3T@ z#>^eMXBh8Mag1j4qa|!uvCl-asJhps#zd{63slekVkO1$`S*bVwgE*EnvTX?Z_w4-Zlhjn+@`*Qu$LC3NBx490~sD8)A@ur#F-{1~Mdx}Cb($nofJ~-4w zNeWu{_$ocUcP`=c=g&VXD7a6h!ehPu@3Mw1KnXUKHIoxymG5-Ey`#gR){`(ti4=>~ z+DOmHzPnRQwf1_Kt;keoR(RQLsT^_PA-Pti%jRM97%x%~4~!9uBWi3FkVLCGDm3(e z7WIShccG!c^ZO+Or*r)mJ|1xxs{UQcwKJ2ou~Ic>QH>y5axM*S(w#`~k!i@|3|4v# zzZae;U#ORJFFp#CVe)Pos`-=Vrd^1%(%<`K%bpM@#z-P(&0wNA(SbEToa;SS&nt;_ zZcbpWPhh1C#qs)Z;uP3kAt@s3vR0NbB8>$u7s1$xtEi|bIZz@jD{fr>UR?dynJDqS zeTD9>3>Hd)%Uw7rWv9l_x2|0j0pk2k%W{8w&|*BzZQ?PUQVyIFG)Zc0n2-ZdoYJN0 zkT^9@JKry#4++a#ei~u4V7WmNqDnHT3<0JK-=SD6tynVp09)$%9pY6i7mD;(1QIeY zzC8*h?&DBbR|h02A!nZHf^UA}oU|8OL;V)o?VVz1(J>}S8x!o{1PX-$`pdP(h5>R^#b^McCAhLqLv7IC!N#x05ns2* zLSMi3YFeVO7GX9*E~or><#Lv%0iIFmZgcVCK2Rup+-=YgQvT@XnQnh=_Wj=D2SHE7 ze3M6x4KW56E?fxr@tf&=Ycl%y(Ib6*;ArxoWPgG!uLElSgo`78vhGrIq zHrjt|6Oxg!?=Qx;7J1U*G<=-&^&=#8G@V+KBv3RB*W975El<%YVxAGLDTWiLcOlPq z?Ky`;?NvTJNMz5%=?33u@9LsHJ9X3k%jeV*%x%E0N*|+a__kQ`t5-jI6c6A2)}Z1X zqQc+?R4k_rJ2nMcvLHOUk)24kgr@r_HkKMCp_QDOIsJ@As+yA0nq2uf?9i4aG9I|? z9>I>Ut5jt}Y|YMP0}+Hvqlh zky%`<4xn_XySqoBdG(74X&;m#x{Oz^UWJ;O=%{#h4 z=t>0-0S@a2f$~xDr9|3T7d?LECwT8+6g_pYOH3{2e`#ff^t(I=f7Bn}RZHsJ&_8?j ztlL28+a6YDmUW6nj-5jD7ufj(XjtEj#}uuKgckSgK$&%d87O}(zv&OQ;P`^(lQzRX z%7!BU8Hr~iLy0u_)O@R+R#0#POv_VS1mRcPA{Zhl2*iqC z86Z#vNUR#mGC%ioPfy7D&GtWGo6i^H>B%4{3F|M;J{+l784Q1ImPSEu7p=pzL`ewU z=pdafNQj^5F5ITDP*G*4bLAXnpHlGJ(yN@D=umSJ~3>F5hE(BB3)6+*l zmAcR`fXTeLeO%$v-%sqJ>JAYvU9;s{R>q!`bpO*Ux*YIBc#t0s{PV@^7an!6(34#` zIIwjZw*{mm)Wyk5#RKGZH-z(<>%v7>)v+Ri8&`;H`mHS z?Fw80r79tG#5iJ`(Baw;9$x#w@_^Pr5*R#VqNB4Dy0n&eY*V~i(eP0or1#9Jbt7q=8%v=N z9z6J_4;iRF%(1IrYHUQR4Thqd0N46BoIiganB=+M9silPT_Z0Z8uvQeUA=l0xK47k z$YZ7L~(~@pn%U?B=3ij2n)ukiIt(TWJ zc{RooB``z#z_BBGtkeO^8xWBmLjz6D!ay+%J zF9w4nR+sD$QPgJb*o3HW?)icD?;f+AJGEt~zr-g6S4C`vAW2j=$UoDj#Jh?*7`!ro z@3e9@DDoIcMpGKp&eD01?Z6vDBX!}ZJ#uP{69l&q^*b*g<-`304j>d2B&&c(ibo$9 zjeuec+aqVL4@_j^^==DeJl?Z#u^uYP0`4%~lkYH68>V#m{XayHT{_tquZAi0{qn;O zVR;t@3wn}TCG%}g9Vm{GM`p%hb0jXi75scdjDqW5QuDiNU~y{tg^c9VQcX2;8yoSC zjt&6IUGo8Iwr!bxOOj42uyNtV!$|f1=cwU3hN{0@!rUOVEEiQfQ&T}O8?GI}=i*fr zAp2{Rm*M^b5dkCxD8}4r9JXz!19nN?`xLAjyq- z0a!vDSpMI^gI|3G3N6~&vqI%tw8dF!6YzI)cXvl~EkX};uQWR?xWkAY)E**-T;I2y9&xa0lhnb3N`P9gu|jviu!L_3%q+U0zW^Q%IoD{0Trud2_kO z9@3Fq@BnegE}sUeC#I&j#+(sTc5aRc4F%Cmiu%%)Mol&dPli(mo{$n0G?cjhoA~v1 z(||xp$n~=RcYu(phF5dAYdN{VIjs1q)p(~BWv~q_Drud{w9!OPmVp5IAJ`e3UVC{y zzL$6kLGC>JgY~^Mf@B@}Cm;VGX8xP~^zR#qHiTf>^CuI4&QM^f&lI$wu4Sg+S0rQ| zc*W)~jR!Kue)(&MlGji*s`1?V3bX3yWYBisFa#N6w1r*3A;r?kU?eE;s$Y?NR#WWiUlfP7eDneYm=Q zVl;5ei)M|VD&H<^ur}Cph7kAm>3-OsF1_hZMSEwbYM+W5WXCImff(JzCoO1bE@@%z zzi;2Z?)9lo zCps`)q+P`g5O5$BrKVV+p??J$s(#=XNqGisN8x^UtPgS%(yQa*Zep)z*EzII+AUp%@^xMDjWoJL+$!9~1f@bHt_w1>IuDwukFx0lp zudYr6hwi=UZ@=w^Zrrl+z$LY2M#XVsebv;;YA=|3)Yk-I?&yUe2e(1>RGdg1xTVTIx9BX-1Ws=@WCt^mqV+OIjml8X9g#YDp)1=-hyu? zv|cVJ!lzl|NOtAg*C0%!_R%;TZ_V=~4SA?L@twTKZJS2r3Op|rI@FW7)K9nhQ+={k z2L0)glVApByG-C#vQ;~hJNVPO9+j4scIP{r*!U0MY6U}tKCi*ntfk>QQcgJTT35b9 zl*VB>1%)QC0{63QN{$oQ$}QRt4fG4a+e}9&H-FIdn~u|2Y*e-a6O3lYnXptVkWG0I zl{h<-gZ)&me{C0*ng9XWAR}W9&LE$G{@0NtfBP6mD<(KJM=)niHu|tuP-cE(!iifktIm$40Z&5Qp2XDM7|*p=15xc+5z6G;2bhDGv(Qh&bki= zAjY&ZGc%iIa!LFf!^^Zt{N(D199byS9thvM+<<-Dt?uwkpD>+|Fr#+wu4gPHl{ zrk{8TOGCdB)^+ahuW4VC-2^W|$b%ZB=eFp0Xk;9N7T zhkU-qofqKVTZZv~b>5Y;%m&=XarC(X`$f|O1X@$x^a?ft9O2S**pZ|UojEvi1$(xv z2h!5}=$d+<5*}B;Os5CO>A*QcVGYa)&|!tp>zvg3z4Y>P_v_srr5rX%O4zyY#E*er zQe*QX#nhZkbXTu1+sGRQb?n~C;6Ub#CrL|-+3k?8U|o0x*4a?#-WOw_?*~g6rKm57 zXHVF~a8&1`G{3%b1Hko^UZ2X7;0=&Whg#35Z76DT=@6g7TSjcGJ&k&JJ!Kc1vxdG1TBct^EWtbHTEeifF~20P017x zqI+RO5tM?wOdd3`)Q)I9V$kQVN3U4p&3fDK+HD2aY|qVD^k@eTq`QI)7-_#W57fXl@WHc);5MmJxBe=5`%S zXX7Qbd?!Eka|hpC)&r$^1j4WwF*yt-x`ni{$QM+eLtM_tz1sE?KrJF8GXfBcRBl#3 zV5~9rC^R(g#MNI>v8Uwn=~*$%5l2=h$lUgp`+7$E6MS&%BO)n~c@Zk01mG^XIv^76 zq|Np=C91fPh>h2&eo(K1g1NA4@NEWY%poXlb7WFP@mi^o#p-c>=A=BSH^~g-!%VIC`|ZOCfs8tlcv}*j#fT4?ZS&~SqXPdR_;4ASgxEW;J1buXjmhD{ z1hDJJVxTx%a3^GlWhoYr3>OXfS+B23MMy} zrM_3iVV;2sNSI1uha9{nU1nVCp)B@_*!r6GL(9qqgrHK$y z@Iyv1`XJtTu2vh7x`( zHc;y(gj=n*;P>Z>U({`Otp}prSH-HsjAZ6F-=#-sDXI}cx>5B6basOPwOg8_VNs!s zR({a%4qW$K@O79_fHM(>HXA8;;7l#L4dEgf-61+IaON%gsJvUh4@EmYq%pdK569kE zJc6$@%o*H^fq4B4tuojF@(I5FkH6nMBsI~mF_9ny-_%%W@o0T1tY{-@feU`y^4&si zz>YZ86_6*j&|1({p#wD*v#3f!@G{}1Dm{T${TR`Gli;MZ9LWBu&Ym;U%K DuLab7 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2fe2eb780f984635c5f888792c301a1d33629966 GIT binary patch literal 13746 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8e8cd2fd782a0f73f73b5bd9990b66d48ef1247e GIT binary patch literal 12765 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 Pq0ndaPUoGvbp3w-MNuI$ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9c162feba8ea4cf97b3b091d2aad1174e5e1a6b5 GIT binary patch literal 11987 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 EH;tYfCjbBd literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9c18bf3827482e8b87a58e32c6b26585c97ebdd6 GIT binary patch literal 8209 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4db7832cd171a37d8c4b8b241b3d041e572d5a1a GIT binary patch literal 12030 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ǯI6E`Vy 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 OO84x=GX=b1C)il*xJt(;p? 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 cR5SUmow2J-JNOxyAV;a4*Hpb%7 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5e3e5274bddee39c32826a1343b919d55342af73 GIT binary patch literal 11988 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.11.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f1a9a07a0b04268f96f40098323806cb7cb6fe34 GIT binary patch literal 12041 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 P4yANc{YK$6i%0(h8uUJC literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..422881ce5b84a706392626a8b81c2df45c762bdd GIT binary patch literal 8615 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�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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..beff1259617fb9a055a81fe8f2797161b51ce4bf GIT binary patch literal 12008 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..439218371cddb77d5443bde5913405de2be9e1d6 GIT binary patch literal 10941 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 NRzdxG&b2!a{|5(ErSAX$ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9f8e9f6f324f24d498dce0b60e4396e34dc2644d GIT binary patch literal 12023 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Ï+x6@SJMjrHn zVDp9)k@)A*$;$ruC7^EY8zO}uJ!}Z)SNzOt*J5hpe|^Ynm=g+yTstVJj%!g+PyndA z3Fp!_Qb^q%c_6-={;Jpu(tgx!ZA3DHS!8D&K);SL2U&#H*Ov#KLx^`Fhc`DjrvPBS z`}FBkd~1@jI*Fg3|E!;%U#JVAO>;HB0)|&oR>@i?Xe2zd^DJI-?cUOQF9xqcQFcQk zo4dBTXroqPVL%IvZFFxFR5>~x!F-}8EDH;Too!2y7au=DhRu!;D~6bxV`%$_;Ua$n zRo}PNnKCji6WjkwpR-uaT$0{K1%Cz524S zj=8eEOxdvmIjOn`M2bxy4BS9@FdY)6)6w?C(n3c(@vM-rYh*Z zUoX;FS2x(5JheCpX%kEVt%WuJn8%JjGo6f7pKWiJsXKyJgV`cbtct+!&>dvv3^^B4 z`O2}xn^>~{((g;b)^&YXOM^j>tDo2?%sVU_K{jHE>xOrz`%t%=z?WHLE&4cvn|j;t zOad@EfQAVathMNY2`Y1ziYS6{@YX@brXW}iyG3Pn;j!Xw5Uh*_r9KWVi;TdI(?IzJ zWU>Lq&&1F$iqi=LV+;Lc<|SB2h%%9hgbLjq(yAMF@Qn1`EHZ(v!CY?8QX?VDg%B~& z?rK!G9!vKKSk{HvDykX@rnVN>ndJ4=u>NGAkdVE?Z4@Bc|I>p8TN49eB@hj_(&`eB z2GERz8a#{f@OBk$(nG854VGZOwXb;&dFw$g3wG2EPd~V<*lkPP1)h~eHwX(Rz;OVP zuR`JBoJf-Q0agYj>VwQ#j5O}70eVcaBKOz?7C>a8vZTfMc>+l!zP-Cku{x-v6g%AF zW;JZi&Q=98ZZ{!lK_a!TDo+)FlFLj#vtTfsR6eC>ol14b+qFxEig0YN-Iaw=zok81Ju*2K^HLJg=gQxlVCr=o-l z%F9&{g7-33&jIPsB7iJq*F@$=<~ElDga}p$5bXHFIFC1CXjH#EWxy^ z!1yug1;q@gY-D0D`hb2(;CcYWki7|I*PHkFGv*p9VU(dW&s4@~u+jwP?Sz=zA@T9N ztj*s2S^&cKY0 zj5vT!N4!>08$@+Y5VmmtonbPyAjlQKHMJ5d6iI2Wug*LRZWpy?>A7<)-5%LI;zD}5 zSk3(B!<92{`xU@lfgErZwWe&(c!iq$+Bhm*s&-Jy3`OWZVQa z%4Z_6TZH+O^?Rh?^PnGiUTL1t6 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ae1f14de15c22c034de1098e90faa7a44b316b25 GIT binary patch literal 10419 zcmeHtcT`jBns+E3^(ca3p-52>1rdA8@yoqN}J=B)X?Kfak+>$=3aLiWyEp7;0s%6?#MsLk;^-|r|C zibLn@nR6%;^@Qz%^*AaM8@YOu;YwCH`H{hc86_mk6U$1MPzSmqX3Hx91 z_Hps_kdZtgDRV^F+1J<0M^Q@3{qG-;^z?R;YFnsXfSYXgI&0;FLUCS1epqtUvRzQ9 zL&7>|G|U1MDT6rUn57#Hvz%&|x9|G!f^qB&qbKLV+1u(5beiRCq#b3@CA@NmnfivF z`ppv*O%8=S#aV1cx(^<3OHRbaX^F&E)mP{U%sEQY&MrCazHU z_t`!a3kr4QGzxxm{w|6gg?hP_1wMU&mz4{JdUKpz7=;SG@~;d2dX zF5@J7>BFWww{Nqf6;Pk-;jQO^wF)JJ_~;8XO?Ni@uk6j16VWyAMy8EbHdj*gCcSJ+A%Ib!DS zUU;=RE-f)}FWk>h3EQ1xvPvhe2b-IlPozhwp0l@4o|~JaEe?3n>#q$}TMd-Dn_5{t z&&$u3yY~6m=*Y%99e7b4}JXfsZ$`}YuZ=}&c1Wc`ZiB*?^lAs z)6y!lAGmAc9e*@GkC*pMKH=Uk>KGm!9Zd_sEd`(%vkeDy3JVLvqN4f^6RKa-J=}w% zguu#4OG~@DyN~YCU_)_I4#edx&5OhAscRFNTLrdi8cm&EortgGs}pJ;~_muObk)U-Tmd<+-&CJlH1?k9}^pUP{+FT z+VlEIf&3RQ_UkxQJ4lI$oaR1gXcin?wMZGrc3@6gqKEJ75!KnZZ=dz+s}afARTqO~ zWh-(+R9}4rKXOzyY}w5|Da*`Io=s4fVqr0}RF-PjL!rK=-V{UaIclBp+NmuMDpW8^ z+r`BtFDK_G=6-r@t$kXW!%+J*H@7a4DCHMzs&xI+_qO%Kh?~;--3TrnFEneVr+N!b zZEO-O3eKlJd$xPfug?yyHokm$Bs4_`PNVwfcoN%5o`ogq_V3$L2g}(up_sQwY&@b= z763+d(!a3suNwrrIST5?PF!3(EIi!I!s3~$t1Eghy;DzWVy22}aqU{cB}d0mUqu4X zI$3D_JQM(S;A@2soh}R2%_`x{`m(y(Rx(x($~&*HuqT{XCg#bL^sKBbj|NK%3)jZz z1L$?;5}en}k&(+S&tz?eR>Yod~s0t}Oqk^rZc284u!q@o(S@)dds4up&h zQR4kXr2xD=X2Bdzp~`%-%qqnbmrth>9pH+=R+ImL4@Qd-a2a9scWgDGH;ip<3siy^ zb6&kV_xSPSTIRz&Qj5%>RoaBEfkDrQ2i)dXR=IRo{ji|9`FTL@kf<7asqN6=ZyFkZ zWeI=y(DeNII6i)U=A!(G6B7IO4d*p@e0il=S67D~OA3gIk4N_uaf|80*Ca*?sSQ!) zx7|D4(b0kBhXe6)a~LZ8{(WOKx{|c~x?#$KQSi4lMNLXa5w}*|i?_>X+qf+Uk2mxvvzZ@j>&wu20wu%!$Oq0V&nAs| z!8e)@cTY@zc`b41(4z)2vf}`aAwpYo2?R^$@mLl5yDd^Vu)S)GVNT``@gqmNO^sAC zU%otsp>=5YSNLRGTU*BfBq{j(aPG=7@IJYh4efzovG^Yi>%!;)dKWi$dT(zpHc0Kl zCvM`zyux8-FcmVGM#XRXFx_v!zEGz)4BW{ZxV`{2o1!_IDO zH(RYPHGH>DKpo!x|3D%C>yY9ZZla-aV+S|4obNc&)&-RO3y4N+a8Qu8(bUug#cy{0 zd`^GAbxWM|X$1uZK&MInkSkX*pB=G!u|&c-z@Y|a)|;r{~ZyXwH}sfJsCBEQ*SfO-}ady3YzT57S*T*asoNu#~wSA-#;+WGc+_4JiUMp z#%zPFy`>50P;Cz|(Er*gYA9sh0H`CD926E7wv(HiJP`fl3Ek@{e2`7#5bH5XNyCd5 zFS=g4MjIe~{+x6B_U(MZsw+*qckS6Tl@u^!;_8~`xjst9Uuk79LP|5f=9QmCKixRphaZzyqS9%PkWN zXmdNeL2}|h1JTkiKso2(fj@ryc+B(Xxt*QoN=iz^rKF6ai?4k-9wDG)p{c1Eo#B)m zq_ttghW?u1vUBIog;1yXRYS_}ath%eJ>n{~daY%o#w->yN-mfsH@K1OBXo6jJ8y2- z!s-_flVwUevw8uOPz+uy`2F|aM`iySF!M*I|pC%uLOILBCi)BK#EQCbHUgpwZaT+uwegT95$7 z30#&rNB$Ob5Zg88vp=wVSKAiaj?hrDU%Ll$LGd$*M7*V8T)hz#8VYmouY2;pRNgPl z6@!hVFH&@MbWAQ^&Up3em6@q&7x{CP+S++IO=i$rPMtbsW^IkGi_1<%>;9r9Kpj_S z0k=`V-GdsPn*-S+xoh|CywXw&nXAplhK7;x@$r=cxZ!sj4C0Pyz**5fdv^T#kd0@J zIR^(vErqnsB+;jKB6o;@J48qCIOg5q=GEWC*XGELj<>lesW*i$LfpqCW zpKb?SFn4gk^~_QzlsRy`#?&$C{&l)2r>E!iO zAZjot4gzVvAUjU|FP{C{K_)|a(ODMl%(g`8>(V^C`dXAsqaLMRsu{KgW&FK_77 znrH&Y_T9U8#g`kS-z18{x1fOP*cLlKZcSFnzj>22NLdg792m~KrMHh(SJ8LwVuNJn zLD^R_7Y8s=W!JvEIBHYsyg23$Wj{bLeGsrfg zej@-TagQGm4*eU$S=}6fg0cNiH<0w(*}sAMd>S47;^W7&SFT*i1y#{dB!puW?UuC7 z0cQj(o1EfeTICop$8rd#_hfimR2d}$1ABwpI_uD7>$H~gV217JA6yS-ULQqlrI zBc*vW3gwl)DGYT)T)bm$wCQPVY_>~RR&GH7oFJ3_B1i2qGPRt%jma2O>jTGQ)a&Hx zWkg5w*QIj4iHzI^XZoyRc2}7ch*BLcZOP_9+JMt{c6OSXm<-dov@w{PQ>Tg5&x3w6^A2L^l-dTH(rX=XbJ^g< zYvvXfi>|-c&fJ(iRkYB$L^t1}aB{Jt$t1uEKs;Q!PYwZv2-kMvAMNqszuMzp8oAtN zEae!we`ZF;q2tHTfz_3ln_DrtEI$-@+B8caX_i?=DR>NhaYf~yMf*I`*I0oN{pX^c zN+LSwJv-9zo>Q#=kk;+(%?;KsFWgxBc~5OQA_3GcA0J=Hz!ZU~%9Ra7o$DCbiw6!I zu&xcM0OL^ByX;%L?y1lFc z)cZY;^BJ4SZI!ut{i=4Q|vve3o>GRZreVYq{ z;%AK6FW{`I1B<9_UD-yKK#j!=6LUU&(j5#SVJyR?z_~NR&ONzdyB`#G%9b!8mWH}I z5T^PO5fNBAKR-Y4f_94Z=FOY?WbLEH^y5;&5EM|uRu7EL&(HVt_fHNOCMo(wI6)`n z3IvOB`}Xa+MnY_qnC!_nH!(>ov?-e$ z??^{a=4R90ZWMBco)(<}(%cPp4e5Dcw2b&y$>G*Q4B};VK!vd=Xag4B;F6`X{CR`b zi29?!et8`*6qM~x9V+DDKQZ2TFr^#lN=X3Ke$aowJv!sBH2dGbgXNG8;KkhFTY4Vw zufvNf%inGxT&7Au4OC+d(!48_VK}K=vTCe=z3L?4{|)W!zdf?qoQL{ai>U(6vXhq= zI^U6=?rvK@2ES)@nz(5ef-F$$eYF@mBU%1W(uI_4IB{HFf0-_zwUW45lXLl=hOs<~R#CR)wi1jBpsFTyvX29u5Ys<@l0xIa@0Y_y)qcXCJ zU=($wiH_!*HwWpv+GvFJu3H-!85v62B2_ zjM=|kc$|_#4X`ZA&)37PcBRk?Ju!NqiCApEL^OazRZy_XHcUDPQ%;R#+j5;_e|!0F z^eAbq6x><`q%y2EF`J#R=EsQoTlP7*7qYkN@7gnO)Q9=bq+aKEp>~HSL5&T3)eC8< zftbB0@RA-p4O*I`-L?nA(H$Dto@rA4Fc%DprY@$2hb4D;&l?A$SaAT9PL zMQ*fikAoQmZ>LV527<>oK6-&m7Zmc!3?8fa3 zJ|1=<$8bd@rCox8%T3eZS?lWScY|%jJD!;;#F6EOmp4p2nTEt*SQW5->@MuNZNDX} zF9zCzU8S!Moc(!vEa8Fz8?6(PzZShX*EN!ot!K2f;&q;gJ^!WQ9l&~eJTd?gmJ|F0)TwS&eT#14b!-Or zxdq}-S3wNTgj+zsy>_9{^EtGzI0)HD^Xuz;j7f46{n)Z?o0~2avQ?Q!5~(&TON?7k z&;v^!An`ede*tWLF6$C~{p4OqT&1rLzq_M?A03T#H~|Ugj~00nO+dz}b+4&|12uRp zzpux#PpUBy>eFbgO5>+6s>2O8FOPGCli3Uq+}t39yXNiVV*q)Ki-*UF`jC~DlX7xB z)$^@NKbB|7Srrvu7(EWmr@ZnWi9ytwrDojP7%ra3Xd=prXoZi@CKO56U%q@f4(6~- z(K9kyq6C9kZUEl8Lg3F-g`l~NAUKIF$OXPimU?;*S0;>bt{#;WVqNX+7r-;oH#L3o z__95AND2W4ASNTz^)+ZL3BFF!w)_H=sESA<$h|nI=C01p zORrwP{xycvr*9!+z^%=v&=-lKThZ*o=uyVXJaWIQeR#WC445=x;^K{vcz@xUAC)K9 z1TU@D2iDljT>i*4U(fHkyjW6P9G8=mlaG~ItCPZB1pYT3%;-^)bYtsPkMTwnC8#eDhlK=LTBvXy zovg~rejdl>;rI6l&8Lk4AGXP2~X?@3{u{t~y?tF4K-Km*Q3Ti|VTA*?!d z^r!(uv0ZCSI)T1dy8P>=zOMnb^8$cP%Ysf$PE((Y9HFH#`W>%3@!KwhgXdsl7;2SX+NYVy=-FhLBIY8_IVc|={EKSTd z2oYxp55IkoyLaK0@5DJ~mm2d4GG(~d4N|svRZOL*3p}-f1eTy=@E<;$*|l@0bA323 zBTSg4z{*u~{QCDZnrF_8tF4jMLg>h~w>EORLMEvqD1Y%CI|uLaGf=5CikrK8502S~ z!%+HcD}8gJF#$Em1UuRc$@GG;wDArQ-aT%Fnk-->HE=Zgd<{?E-8yX8EbK30>jTXW z8^yWzWGXb1!$*!349o)akN)7tn}Mds9|yt>$%VPc{>*Iob`h;Z^74HFUm*`gA{Thhf+!T>H?~o2`36z~PY+v8 zO09jDf?#bV7!OH47=4usy*3a*;LC>4Q+ZPUgE~4oj|V8dP)I4I0vMgPZzn z!5@H(cnyYY4aN+5redtvZ>m?YA&OT<3sPEOI(HDLL7sFG6Z?_pz;;X9)4>!8Z{V>4 zXDAp&?~(hE_(NBS)#>L3cseYXHL70)t_e zBptbF|3{edQV%pD@*oIELi+{7ZS9t<*INdIsWrNKdgPSBQ$+OWQ%i(R4T;=$tB(rp zpl%aVEr9zVbAbe86}pCm&euV8;&41$Xub$aTDTN^RU_4vGk-|hJ}P!e30(ILXshxY v*IQWB+m^Q<1MzlcnG5W!|0PeY&EwoRvL+NN5p245GaP!{)qW@iA literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..7884af23f55bd4d6f3c22c60d7dd7a8d9de9e21d GIT binary patch literal 13748 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..027d5179b5c2c6f1518654a9898cc67d594cb58c GIT binary patch literal 13060 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 F_#aHmTs;5) literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2ec2c0701a381f1b995fb6ac102287fa95f5cfd3 GIT binary patch literal 9802 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 AGXMYp literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1583fd234860378c0ca936360a3750f88dd6916e GIT binary patch literal 11948 zcmeHt2UL^$mT$0oET~v00-_)S3L;IAq9`EJl-?1MF1<-hRIn0S1S1`!x1iFbD=NLW zC{?9ILWvMs0))4}bMBk=-o0zy%suPP%(||C3rN25|Mvga_I`R@Q)SO@?7yK}dOy72FgWpJW4vxWp(w<6&o;ofzo<5fD)+h~2PuDvxo_FkT9rLz!_po7U*p?BZ@K(!N-|2nX5edez7Sg<`fuzL>HUGVM_)VK&t( zmvryO&kSJlGBbI`s+UBk&3&wQ{P4@iCM5jjy&8Cv6goLtfwcIx=ysaI#hQx98n4aGgx)RjB z94<_$=8t@Hp#4KT)y<6L{;qwsx}D@rd1x!;ialG$%7j9_XOB!VhYLj!gg5PjAJ1($ zhCe1E}%g7=-ijM{`k89qX7L7`snX4-*5-DLa62maUAAgi=4a;Bf zts(M6`D8|%Vih*x7^>#c+-SWTeR|Wg@Nnii2Y5>3JGN}Prm5*&9X9X;wZ<+SFd!u_ zp9s(9X4D&6ed+XCofI7A^WXU?A~$qTP0eW0Aq#(RAKBPoADIsd=f)rtQWWZ6wtSmt zjf=+Nj^mrt;Z|n87TSKHabEDY>o2l*FEfpm_Q>#_=|8kkDXOfer*}hKO?!KL9b8<9(_agt zladNX>%*C)N4mORDTN%)PD{JO$;mlS3xJo*-CxOKh3IuZczd8H$0lbY2bis#1qa`*}jYCKpwShOzKZ@;v(bopr5g(Caz zld4_cz9r+HKQF%X^<2JjG5Hm(wpMX*dD)TFme5vG=0OrXapLmg;^MiwQvw32;qvq> z{X9b+Rr1u7j-uj&66c|uhr5oD2g^LJsj7CeXvwDFaJYh^*^9@Hl@8=rSId8{ug9cY z?S7oZRK%gMc?ar*Ray-?d>c>A=DQOuY%?P@7Ul)SuZP*#1PX|`eSLjA%l1xAdt&iv zYij|v)rEyR=o$sPx*2aFe*XFxdsrY9?!dH$hO0y9)fr@&ec%q0E1p=0pFNv=@z}lv z*ww5~id^^jwGw-1R8n+A#J(aq9-d3+8cajr8hYb3^$6pr^TbDHg(%+jm3jqzYwL9H z*}?3mEc|3b#cWr$PUfS4q1agVvLRevDtGUeR)^QTnlk1;FThx{p3 zO)V`wAtKdTPoC_Ufrs4?C@3h{LnM-9!;VV3OW=3IW>5;2MZtySWo4aOTv*uRM46n7 ztRH1_=MJwIn_hdU@HkFYT|J6dBT0V9S6)(5zjV+&q`acyalp`*FNUyk+vVVPl;a|{ z-&9w}o)Z)69UPp#!*TSeu7^jVyNAc)L4GMIDLZqVH)VLHB{L(VX>@K&>y}MS#l^+a zVlgo>&q70c;Yvv@@pAt9W@cuwGG63E7ZhOsxUwAHIB?b1x9r)oXHn77>C@A9di(lv zYHBP#fBuY1<5PQK*Ayj?lbs#O8yy{O&sd}NzqSne?YG~GoCYMJVzo?4?nLq`UAbaM zn;$o>@Xqh*>WYeu&5>~IgF0#SO{!U0xx4=Bv4XCbS22{Agcn&?ZhfH}m$o`vK_PFz z=0chBS?<60@Zm!lw;#bdIXPp?tI?5>DH$0jN%-@y3WwNewAQA|N?8eU@vOIRwQ~&$ z^o@;U**Q2Qtm<~#+Ke|vlPMGfd;4rZe}4&=VOa?YiN@kU_ZqNE1{f6s?Em7$8!h-eSiN7oA$(f*z=qU z=zs>=ix-E_7#CgT6cW)k~?3YBnqKW7qcG1Ne18DP{RxBxw*Z`&`KiE>3*RcQko)_ziK0> z?Q+ZUhffdvi)bvR0?fcyVOLg(o$8z zbKblW{b>mJjISSc<8pIzI}un8b;EOL9wqBBfnB1Eh!hZ~?u1~mQN$@dN5`p%)uNJ; zZLMnBfYD+jU%v{}jBtyOdRIh0f9}yKO3XLOoGPd>2e7V4MAPjPF8It|OJIkqH+;5t zag%1EY&MnDF2uvbW9JWmyO&c&d`unzGvAsKiY&%*Al-&{QbmCtInff6s`~t7c6z$f zp+kp|m5_8EJU=$IclU0)n>XLn&hOh{I$?y6KseyZsc1a@!iIlep3$?XPdk~>zc%;w z^qi8ETzW+V?30`O#A4v_6mHAFw4r9Jtnd77B_*Zo%uIeee=V(WS+4eo)w{BZmL!oi znsu0fD)5Pn&un~odHJJ&>Q}E60|NuwMuF!)CUU@yod3-iRrl%BDKRmf*4Eaxk`Es) zNk~ZvNlE!M1Okc$P4L+-&knT(I5_0Ua%pv_AKQ1`#AJXkTtIdE-lNxV-%fL`oU7wW z3J(p{3kV44*bMrtXlIBE6CRJx&C0rJWMtIT)~4^|luut>)iX6ct!n)C_R|dYm{)Ko zs@g_IF%#`c1$#Iovyzi94wN``R|l>ZSvMb6)xL5i_=SiCq1cfqc;<{oc6PRLp-m|8 z*BF(?8@Lq03*1@`a3z6WyIWjRLXK47>KtLrj5q+0@X-7buwbt}j@q?rm)DO^JAw8a zDa%5@mKquwZ6a=-K0ZR{=BaVfzP`Q=c6Qf+XY>oq^NWhaB_t&s>ac8WEltrvy(1$9 zU0vFXOG^&JmA(!R4!GuV+``wPN~eL6$$ACGn{C^+A-Jl-<;(k%vGEE}{tuqrV7mwxYHIdhR{OrXTm=^>%xB%3 zn_|96G0V~HQWoB|^~c_0KvVx;#5#*4(>q_PO?p~d!??Qu$Tt6_X*O?keHdq~q*JV^ zFy5vuKHIFqd#jua_J*Eb^Z^zY3GZn`-zsxX`GC6(R(p2uJ_Tj4fB$|N*KhBmWq|AM zy*_xD>0RKeH*CAy@^a&unVDEQ{}Kee)>h_tNG8U{MRuLXqobm-Qd2L>CuzZJJ2RK3 zO<#dUL3z1MFOis=pRWOE)70Khob1jNkr{^Sf%l8wB5g;Z_Gv;PN;wZ^rK{m{-n}#I z&eSpp46LdP<;Xl@e%G>rMoRS8+;#YLhgG;-#=?T9++vSTte9<>q*FidWMKsc1Vc_< zUXR@JV5(7}&15>>ybDBo@0TyEo_UznQcSmFK~;urqOVPw77L*FY0x$8@zSa5tIN$( zi!uYpPn-a)+uPqSGbW#(pMQypi%LqOwD@>?H&K?ix4s*49v>Uq!daM^sRCHstFYd! zU_bcI&0xL=9(}ET!{%ROjn8E;jLHKC4m>E~=jCmnEHjsdk5IV18MR3tTUo6Zd@##C z^zY1=th~IuX5*>%@9%B8fAKF^;EQ_HL~U0n(2}QJ0qnz9X=!ML4my`ouWD*?eK-V| zhs8#0{|4uPzosW9CMM6w$;r*%mAyPWI(PR`Ld`FdtC&mW+#_QXlS3RFxj%o}4S5eZ z;nMQ*PQxem(8}REC|(aPm9V2Uob4`Ha6caA_b*?vTHDyCb2NJ!{8_T}Bs z*2V?MC-F{B#JTJ>{^&(C<5w+T>@)G|){rtw7lU$oNB=W$t(^QvsUF9Qp6m%>&EItY z9y}yEovu7K@IfHgyy{2&r=Ok0gkwEwD8;b$Aa9QB_Mj8%i~iy}XzeI?ir>h`|KZpF zN=Q+A5+&s_oCiv)%v2b5n_YXN+{ZS`mp7NYGc=wzk9W1ihyl?Nl1ZVWAhxw{-Fj6Q z#wi4*>*HhQ?X7FQ7VFW@)ifLUG~daS}~Y`uy*0QwIZ=hv*~>!?tR9 z*xzqF+F;?scJ7}pj0qRzwE#GyqChRHm15Nsu-Zdz^_*a`pYz(gx?XQ=Y&0&p6QiGR z?9~}yX_*3yU+h8Bv>gBgikJtGcWhQj_5dzXS4clEf)|vc0N6j1Qs>^%o>ZC_0B}4W%q%XJ05b-loJm=RU!w$Z7_3DoP#E6JvH6seYi@YziT^RE=QEtqd8`!c*`c#2| zk54IM(PCo}=a>)XY+%Nl3)TehgM&j^@{TdFI)uwDy_AuWS?G5x5D*l+h5$u+wUGIZ z8!6z%Np52ek-3$|fG`CjfG{s*ec!%%^{S`4o294<(3vaTwjmJY9paLwCns;*x^=5V zU0JzKsXzfV;Cf@y+S9J?ZU}SoN{9W_%F4=)R5{ZYcp@xr55)iyDSTbdop^`%bOgO;Oz3t}#^X=NYso67&F zd>k?;yCa903=IvlSok%wa&oSrYb@B<*g%}Qqo1Z$RG36YCXM8^G&k#9z8nPLTkN;! z0O*?i=FJT;n-*6aeS&E=TyFG>7dfS+2GogG9UYzLARBlQ&ZCcuV6w?%2Z&gNL`81^ zCxbHN8=2UOLJ^DpwJnur?hjjLIx5ZcCuul@Vo>|4we_pm$$ZCx%li%m`|U(2@9_C= z4YI)+DCglyBLM*c$mN(mp%Hfy;yc*A4n%_4rFIT0T|K?@PoJ)Y za$e9kFEDt_%A(ORLRiA3>=pdR7DGBhWeefCOu{A`jC>d_~wlp)KXKqe_r&wHC z>bNxh6%l2SV?K^|vA6Gp$WB*V`&C%jUZ^#AamwE9h%u@`R{{6yT38g6lt{v67En;I z$ka-D!OJP*c@=gEeNqdP<1_55(k{Q62U-J)ik$1-2B%CpV2Kq?F~6dz88-WFbT8sg zapE91#>Q@+F)2~c)z2@ttA73Z`uh5Mf0;*Sq0{VOSyMy9bdc@R&60%YIfUmyhoYLesr>6B=u4Q1(hi6p}e|G!4s#vN|cn9o2C|Xii^D( z0s#=g*TGGW#89TEqedvqv2GPZ@HooGMAO@kyLF|hT97=E1vQ7{)pdSMH9-MmzH{f! zO9Lzi4tW0TNa0zYTV220wz`fc(RK|8OHh?4H5=857>2JLwM7hXiby~(NAcmC@4x4> z1wt@X~<4 zpWhhhz`^>_x!o5q-`ks|CxH9BmWOtJ+`XUn-Uq8!H%I&mzvUV@pq8-(k-dB^;l=TtJa=~$?XJk0E#!5gj;2=v`@LkhL zkkMtAr@Ne>7$OFP*6W6vFL|r8R1yUqP&jxdPH6;{d*xvZ}&fk zYXRd{aF4;)0EEI$LKN*@G1PVfg0UVosN@qliJpG^xTV^K<5Ls2ZaN47 z;8h&_SscR%aQgE4($=k8`%9eSfb24XXRhL)#a9$SbI&)c(6_g@zowzl8!O=mTAMei zomA-zx>PekCVh6+83A$#?jm>*4_!W6K1Cppz-7GeJ@99UDlr}4@TB!=+qQZnLgk%o zl^W?W^BIz;wS}B{AN#)}EOXss9Ok$$MN*si?J8!SYmXx1ADw`|-5!s5z4Lu*oRknB zpAvvP6nQ^@#cS#X@97TcDUP|9!9G+6=`Hlr*9r@6GwS8btT$Hmpbp5tzJI(VmZ_Q0 z_2YBMA#U!1oh&D_pubtOu}=B3%;stHN<&H|H4M6B`4F#@rD|xQz*H)Ks?%JAHkSh+ zTz`d6!P~cQc~v15riaw5>{_R6FbW`KX8bJQ{J#T`gWTL0K8E0fv^>AXXWT5QD#Y>! z*G29-cDS1c?I?~c-=;#JTDIHAN!}X&hu$(!QhHc;=G-}LkgX87U7qdk@6VZ^pHFrI z_;t8*CyLkW_v{Tx=h`cNkKeM2i}iLL5!Q8d%sr|8^4q5*UhuCV*&tQY7};Pfi}(%Q zzt04=_&oRW;-V^jT9JKc(B`DD1~*X|Y>(HXwd5EE~_0=Y| zCmARzDt0Ud2X6s2YxjGfHG+z+8S!P*mVCEC;`?M$YHF&4eHX9oL-u6;d{fM2mta zPoC@}O!tGLiUKEkLM6=5-=8bxv&56@qwGhe>sSNl8~O2zqvph%zn%KoLN5ct+aQ~B z=g!5)h%j)C(C_vn_hhS8|Hah?m1w*?Yq`SmiFkmUyPaP?_#p9^VyL6*?Js^L%7ciF z!><2<#w^%o^2|&xV|_ItMr!!(Wl;Z!F#aRRbyh@gzm98aZr0P)Me;{$TiaY9J`neU z!on|j<VEqLZP10|HLo?7Td6=nWAc?cvb9emxmF2KFP>f&Fi-LwE&X9HSX8LhLVg z1RI(G{E%-{sI0203KImlGzfst7{0!Uw8g+Av?a>rKITRnLU9z)Uz~;XZwdNlhYuen z!>9smUfc-9Kw0@wY;0`2#gCt}v--EkNK!)7`T3rXj^w7MYx(9?#y|*Abv;-%vG|y1 zAp@k342~GN%SvBrPfrgozInW*a&5lZZ{_>r#Tge2c<9J-$bLXO_$+E3#UF&&75q_1 z_4r=XGf?yrgiF{ou)`OD1x@AtiUWTAKvWq{6Dw|ykdx=P_xG=h?Ci))Lgzr!+W?|e zh(E8pxVU8DgPX@WAqMTP)iKEob5Gw?B2 z#=70HgXpEgq{-5n^?YMvW6$X?qU$3Y>mylDc47(b0uUQ9E3Ccdf@~∓HAqNWDNi z=@2?R_OsuS^7<|Zt7#lo6iKyTrC!Fw1cDBNfdyT2bMq|xgZ&3JiG$-SkUW6WnXP;X z>tJAaB)C~JRz4FtM^i8c0+GfJI`Pd->CL7Ykmtu)H@}GCaDMjzs6F-qrLr5|Qt!(E zx)aB>5X>rC02(0BvTBKQskVn`wG1S8D`+ch{irC1l(RTgij=jr_2ud|SR7m47?5UC zcB>%ATF;aY-olDbKteUaSfxmTOpz4EHxB}PPdq$g&N_b=WP>t}`clR#Ck6%xlm_;p zm8T?Zv7*Q!ndKHDe1E1qRu2fMEMw58G@#GLcJ!!c;>Je72N86DB}Z*Lkrt1Oi*tlr zgso_1Wp4DOj7CsVPxV!ziZ}Y|urh>lDlgmRo^=v%rRmo)i*l zhHz<{Q*%p;XNlZG$K{hJPJEmmsvvrLd&dq{_{3Rk(21A1a!X5zve0*)$cS@32mK+j z`fzS3$ z-PqbHfgA(*8ODpkBX65y*1c^1SiiS0s^dXzmAbIOa}z7tuCP&A=tLQ=Iw>gFBrY!g zl0Xpd9v*g1gkH58Vf^zE3vsJDtSEFwGt$#PPY;x~-?p`l1I-VoOG4ALeb*O>p}fG^ zTpm!>-2(%T(1&g9N>^(ImTp1500;@w76)p%n4UDxua0aC!`7}tHgH>sm~Goj2-1)l zB&!yZ1(pK@I4IAXuyL%sr@wr^Gc_|KF$#sX6f#%XF7N1EwWv=T6&X&U4KG*QLia+% ze;q=OX{8M%;l?$xK~4Fz)i*Nx3~>-5Pz_MW9Y^T!=myg=GcR!CqocPDjZaNai{sQ) zRO+p3_9~9%qBYB0ODPDA7oL%lBFZvWM(bFu%zeiXv2b&{Y`Xv6I)Aj5vl=4G=C4b@ z!|bXV`T5X9LXM#1Lwi(lV(*1tYRBH4<_`FEAAvt)JAIY3X<-GlodVOcC$_bz$(^wb zu$Tp_BzWP%z}E@yip5L}J@aGrFa*gkeU*+xpk1~bcSd06i97X+t9Au3%Vz-$3qbb| zal~qB%|v;XV7%k^*tiQm1i+~Ha1Rd;miW-$i4XtyO<3Y($=XvQ&Usjn2lx3Mkmp< z^6r}waGQO7`hma*#_wD$JE&5Fu0gPO7pO@areG$4$eQsonW9#8uKXvlX1j={CMG5w z^)6M5FCcn2c<7MCSOBmuubWwzHhxul9E!gaI-_7?JUcOVSCfW1seV<)kh?Lc3L82w z{p2?qDkbb&=|O5kc(SdYQnj22qeIb&iRi{aNV?y(otBar7GmN#a^y(ncJ6@dNR)n3 zBQ^~X)o6-XKtz}YfJSXr3MK*|5RzUUx;q+*%&*+OeY>Ny?$JCEvra?|?;-#@87fa7 zT5VKQ=n*4fPpC`4<;|NnLr6z@oizOjj`RvzhC{xj1Y}MN5UZw#!D>XTl^_lc<%17j z|F&J>I!wkOnHLzc?>H)`g;eO;9kY~3B1f1Y9KUQz6tsh5gJ`D*$#$>>hEg;$x za>zCh7$)gKir58Bjf*|+_6lYc(?5LpV2KH~1g=0@DL}dhIXUwY0RRiLhc5agrLVuQ zF9Q$-=*;VPZaq=Pf18C-5ZVmmelp1D8!};tOv)g!4jmrovI4s%aEz|AGl4NLvVo{l zh%z&wRWR;e_Grijdfar_{F&g;R$px>hCzb>1guSKY&vpb@XWg)yRYt{-2vNK;X~1P zcYo_#v%Vx!EJ6tDM7JWM2ea~#J1QX||1p=}RiH7T+p4huPtPKxq1v6q&;@OSBm(MX1n(-YoahqCuWv3QX`pMVlcd3ZrQ?gN?U(LeAE`ye_iI zdy+ySLMyh&^5Y{*${5Pv+9^U=#ca76v<%h?O;~RrttaTg(%3Eq*az%lJwbpD|Kq)! zhzo~6b^(TEuO0A_I(zHg1nTBp*uu}C&#sKrCX{4UOicC&W2rP&*4I4?|Im?@cob#I rKC%gBxnJ+D*#gPJf0I$=HHA-OdO0q;EslerL#ZlhULh#neDJ>jh($W7 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..61a3016751cdce1b420779a7feb0e0098ebbbd0b GIT binary patch literal 8625 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 VPF=FW+Y$Kew>e~8@aNMP{{z8NER_HN literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0be49673067a4f0b509684056695cb33b803d823 GIT binary patch literal 14208 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 K7hbt}?|%TqkhV1d literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4658fa227fafcaaedb6816d61a48c14358aaf189 GIT binary patch literal 11139 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f6d4e3ca726c42cb62cb4bb9f3b5cea2ab2c1983 GIT binary patch literal 11143 zcmeHt2T+r1n|82)1<=E>ASD(MMF9~o^r(Os5l|3gp{O8LiV!KG1Vu%pDP5!}RX~V^ z-XfMDU3xFlg7jX}*!%VT|Nj5%?6>>P`Ofal?tDxFGnw#~=eh6ezRK%&UPqIA)9y_u z6p9;nMqLkuTH}pEarAL*fKTM=y9VKp0zu<4LEqk-;Bv$97E1dD!Qr+&;kMPyJJ~~D;2;|v&RlUqp?Gf~Z;sd4R4Wup zd>*HM@}g_ZL^tVt6YXC43@`SOOX7O`tckbqy4x&o`9nmPOW8vOUhHC?^20FObYXoxIyzA$U zW9%PT%-vUZy6Y>A72WR@Q;WjQEgH?|I z(UhjYTgmx$e&n_t>-sE?ntj`fi;p>>lPXi40ozlujcZ+4NXTzY1-t!gre*SHY)n!c zaj<3I>)M#J5=x{QZrCyDzj(*^1SZ$_wdmnX`6os91Vo!uZ(jNhg<3k8^}nE2_@p`V z-R8`bQ&K8_I2;rc)8yvnR;leRa7v{HqosU5zp4lovss$#-n+EgzmxLaG*~5N+y2uB z#l_G1@(2}Lp(CYCT0%s%WN&`q;ucoE>@-|`!Nz7RR{03*_G7+n9Qmf@Jll8f%y{$W zTwq{e^s!q{9G#r*E{?a`(WbhK@N>g8`ZsR8;t^Ip7+)tAUzhsXmzR@9AP_8D-dv&k zl9qk1sZQpVE=aICDXbUHlU-@O%wde8Cq27#F^AkeGq4tgdMt8*x{Gg8V{mZLvLo9H zUZEmsP<)3D9lBabNV}9}=+?+&GCl4R2(Q!A#pREC(h0ZB%w8uX>@%}-a{AEF&_I~( zI|(1HEAQ;=l(TL+XmIJ$D49J<7Qtx-3pYR5$afKsPyN}LN*XO(d(YcYGP0wybBLh0 z8lyIKVYCu6wX9lClBGoLoD@ZUR7oR~yp}j`P}aB(Rc;rOcQ|28#>npw5|SXdW)v0{ z+U3E;ZGJ9=D<~+)i|LJB%gHk`+MKbM!H@MSo-CRw?d;%1p-zyHs*Ayrj9bYj_?tIx zesjHfGa*P=rDNi_7lqQf0>4^=$CendxT&wyd>4t>*x1<7@$oHQXs&fcmMb9Cvwh=u z6eDzY*0I1at4~5yRJ2PA&@JEg2Jgpb`!&T692ib<>CMf}t(nIOD zjBjdbX&Ga^xteo!Vq&7KGfhABUysPK3r<*FeXhBsWkWgK&c$oj4hNSvP8=5w7Bedq zX>Mxja`bXJCL<$v{iF9&mY|aJISC1gye?f2kKz~|i*L}NFDV-tHYm}w{QS%7*RQXv ztkiRM&OLs+?PX99kAz|V`H<}EWorWYWlj$b4TU7ZHr2$bTpMd8HGj0!Ib2dCnvP%z*| z$oux8=H}+^PIf7TM?_RkEgjy!U#+>hxePRb}Pb@USq;h0*4- zy1K1dMn$q#4M}}5Cah6>nRi%HffMa)2weJn_mmetWPUV*EUu_{6)ArUi&QA_h0kdA zw4|Uk?Bufg7aD32@4>T&{#*Q7E|jNF9Y=t7D*_&Ull%S`OdUUNWRT{EH-+0ja^J|6 zIJ|T2Q^^DO9r*v&dpmG*jRU~RS#9m`&p*!V=mhQFy_*g(+6i#Qza?3pu9TgRGb2FlfjnUgM*MtxnCWax~_p9E{bA0lHSZ)*7+%pLWR z$6OzUl$>8f$=4>p#X}WdLaH9} z@)q5NcRTX$B#MiRUod-h3$q)|F_X^$)xi!~7v5=u``-xQ=B zuWH24&!7JK^;7B76%`dk_6jY>W5p4t=k8wg8y{beZRhctSS38IF242kg~a(Cle!@g{RE$keOMBKj#%j9DxrU>_P%J0tdzadjefw|)Cbo>==*r@Y2TBeporEn10y4&yw0ZP=I-Au0p!Y7w6(Qo z8LYid0Gy7Fj`y8T2kd%P=Q-&_uh8{MfTlMpa@HnO*oCKqg)^(GtCc*X0KK;DKi;)j zp2RNBGNELB`SRuI%$G0fLMp`UPFtoIDR0i6Il4$~jT=_i(D<2|*Ar4lYecAqkWglQ zq9y?C)z6Q(#}@A>DJeC#xAQYqw{mq+pFy3fKYDAzv1O-eK*W(N3GmgiZkJvIH8md( z)%ZA%SzN4wQ%a|8WmVOXW5NBru&}VAVr!UXb&}&8@{WUNzJB@gIwwcYtT-pfz%H+- z)3(dbC3w!>W5TL7PR0GAfkE;_XP(V)_48=OyXjubpV8ub_nySEXM&47y9_cerInPZ zxGLQpZJIzI1!#zRsDc{k?+<(aJguXnqwg{vA8Bo4Gc@B`*i9Xnc~Bjh6dfJi$IQ-_ zE$E(ns&MbbiG_uQGKEMm}p4Ch2D3% z^ycy_WE2<|U$(Wijh3^CNYBU^a*!ACoXwz(j#_)tlzQtEgH_Wr@Z`}~zQPR@_87&w zGVGAc5=>51pX8IrbsXd5Wx*5kqNH;ToozBNngw>Cn!bRo_e~p9b@8W9KLQjt3%KCu_&$!rc9SqEH4JI$=>cp~x9!Z;cB0ib z=h(D{MMtMkc}}^DA34JO&?3aOZqTs+z9pI3xMDGpDE4<^DTiB0Pv2z%A-mX^44_}w zosyL$3G`}ccz6R1BPUlewd7lUr@*kXqGDsM6^tWIv}Y24fhT(|9eqg8p zDmH&7U`$;+mJ9^yu(Y(anX1%yE&DEfbp3plDa+azh05ycrk2cWum{PpN-oYt+HP(z zJ@C^JAt8>K$Su%snh#V^nn8kTQBk{ca&sRA2qp1kyud-Pk?{E2w90G0h@8V`z-HMZ9EPWV5NrN&^PD--u%D+SW znH(vCGg+m#PO;H2ojw}HvY4h{QtYiH>Ak=z;aLH<#a?0!DDP*!3Mu6j_^=BL;YU)enbtwBq>&ttWwj z%}7^ZnLl`;bn0Pb$=+^zTjVkgo9l8#9bl65m4-@?no;mZ)%oNOIH4FiZ6-ikQQk%V zsDGLwf658k#^?P4V}HroI$e;*7YI<(_wU~an9wcO%;gzJdBJF9xA)FdJwlEY>C?zK zJ$qK~)T#T>`9WxG&qS%Bl2Z7yXRltrJ}9I}7|{`e@p?l2$zxR4J5yg!IZy~GRO)H% z=f^aFY$?Jp&zl3mp5Zn(oc8wZc}`y8usT{Ou%jQJeSMsuRZ{~6FzE>ir+`ZAmbH9} z=<$`=p%;sJH@|KY6%$)(pZULx7jNvQ;lD$o;nTy-a(DXG4K7}^1e!;$5B6%BV4|6Q zoJ8hK`ND)f=^EdGbKiSe-Mv=OsfYki(#>Mqw!J+Gnv*!1mO4NEnRiSKyW*!4ubK&i z{^9so?<%WzVa#OpsuYFkXo5zXTOFF)xWG{Z*f7v??jQ|K&8o2lsQs)?TL8gR!&-WF zc6JV4`ud@OUEc&FtCC}4VxD?}g0-$s(4f;uYzuBd`Dy*uj`sGn6MMG)(bk`Yy%Em4 zFxDCl5OgdqD(WDmxA&KfE?>cvF3OhgN<ofAzCbwEj3VJfz6m2`~FG|O6B~tshRV5+bhZ{gF;CxhbG>N`!B{ggc~L? zCX1xZxP3TzBSciDKduEoZ`?@H5rGh?eQS<_WTDl@>RVZ*F}*0qjvc#bWF+Llr>Ujo zpOCof`p%IWz@Pr+4ahUUOJw8B`FYStIa;9yv^UjWd3W<6LSkKKZUXpQfkK1Yi1_>? zf2^DnxwnJ>=>uK1^-P?_Aj`@zsnm}KZmmGDZT<)0FVu4%mpUQE|%_VBRz_8mLKp|IgoV&6T^ivVwj@mcc~zfkGP zU#-I>K&a{I z>17js>SY=h%%-fs&*;d=c>@Cjhuie|pOxRforhxtNQ2YeGFOKs4^@HI0@Dx>=rxc< ztI4i{?yQ02NaF@9djLB+SP@!s)n(7tr{GK4RcdQzJI#+zY`(*W{8ONJnJUqG)!0}vvTA!V@R)fI2ROvG zgX0{#HmcG`_N%a$2k7)xN)`-{ZpWT>gkWn7Dta1I9h3WkL@z2P+QL=zM+)V5UNB?Nb356ePYyRDi#~ zzPWh{$Ymc>*uM14%<%GopUwio<$T9XLaeQ=@6RZysSU4N!_nN@>N`FMnz3Pj zuyO*}m$u!72KDtfRtMn9N1WdMF!mNfY-$j+SFT*CtgUT%#4XTNU;hg9!`YA>M=rmV zHl@BUE;bCgc=2Kq=n@+ieF02@#>I)w9MUSgZ+kJ!XSmRFHmz9(K*+#U&Ni>v4fC{$ zHix5|GGXZIz^Hp)8>_U_ur4!88OUDO=Kn+`$Nnjm?D%#1iyxojo&E>ZAR&SGaa_x0 zf`GoNeB0vJwwVC68`1LEAn+;BY3mOvIFmxg^I(krGw1rV;od)lc;8|`TUfH0E8yPj zRwTRz3vq$byUGqiBZV&F_gB-rzL=Fc+L#Zo>UnMLK+v{`4QM&j|MkCC7lWrN3j`8m zk}kAYND`PhtRWM2G8-tHCRj@Gg_9@t>;XQvxabT`t~8^$ZQtFY7cL(0BiKLkHhE5o za)rkZV;N3wf5j`%u^<1i9XWuGiT~StMgPv7JKrwb*=2z+62$=;g!E2D0;lYmax4f7 z4NWX8R7AW`u+Cu7EswHAD#jKN10OgseH2e2HX^Dw{lf>DWlzB4Bwd}P((lb~X}XL4 z>{sO4jLtFzOHA#_2iHtueK3mx9IYQe9T?|uWi#E3C|*W>etvrg;FltC-ZHOqnZ>rF zF<9(A7KTcUmLblMJY|@gnnE}+-4}y3FgDIY>;g<+YEn|y=(IQXg^gN19@Y5^>gj^T zt}_WBr+Zb;JlN!pS`-6Gys2Qe4fr5ZH(wra0|Rf&)+-6sGkqgIWYVneYsHtR%d53NeDfkMyzcx3sdlK$u5MU8;?e zRtpag2QE_&Ngm>sg2sWk2v??X_|lv6;3DmiGJXR@z9w2u3$i9)Mr8{2#WRoM+$R-0 zSE@`dfztz?aUu+fo|3iY60q8kn2x8I6s&dGOxuG%wdbLI;AO(Hxaj^3L4N5d73t*N zsvh|X2?>Oe@2?!BHhu>`OV*-R5OOdL4UM$SOo=Y7Q&J0gv@jS}2Sr7}P^brUSS>%& z2N>d~O>lJ`xwbC=83@DG{Mym7xC<99l##HzxqQ*9%jLwSZkHS|h4FUWzpGtn8e|1KYMjZIei*16e^*;JWb61yO&-z!b^hT$%APkUQDK0L4N)p-} zA#*~?sMMqVh*4ovz;3z9FXiPgp37K7KYH}2k7Z9`(x{Jc5>8c6n|?;rQzD_7B={V|l?&<89LWD+CoBMa-Dtcw_0MUJ^x`8U@W2 zl^XBW5g@40ATP)>*XP3LsxU{x~)OYtPDw!_`8PRl?%&2;#tO6oiC<0E@&Nt zXvJl)ZUc*x0u za7+AH>5q-J5lfyIs5#;wx8H*D#z$8=Nzi*JmU|xV1GUo&4M1)Oy z;oS`Wqu0GFDl3ns zQkiscxv8=1kM&ST*wvM~z{a1l_fEXTkLBNaI90OLvpGme!STzPV=&*~*5LrIjRvK0 zS&u*S6mMKtGW)|9JqpMbt>9$taQmY-2SR{hW}g~1zjbT<>Js?FcNaztZdq7xmP0M7 zE)~=*EV}|m8o=WdJ?>K~xOnCVPyJM#=H;0IQCyuW;|-G22Lx=%1UnLzo>g7`_?x3t zj1yv{1B0G+4=zs}C=VV3|1`c(Vp2QtbYKJWYzd~vRV@U{DhV0T@mQ0P`JJSho#55R zAg-{=T(t~wAP__N*^n%}#4jL_Vbz$jo`Qx4Cm!(#5gSQjA6GR|{Xqhv-0<1!B>Gfsu0V`6tbFKZ5q7>JRfOPkZ_%Q>i`cAtS!RqAP)ElW{`a$@idaE zA+3>f6SAmC4?vAzm#IDX^0af3qxG#1&lHhrUMmCG#(~E}3Gmwn! z=#5Vjd4B%>1Iix^SC`+cd(aJO%KZ3;x>2~F+(*3VEND92v6jq6m?sx6Uv{mU0EkGq zfB$};Gho%FD_5Q;fKTov*Ah$ioUkD-wp%P9|BXnvkkC+{B}D3jY0s-N{}lX8(8CiL0s_LttB!IZ>ZC`Oql~tnRO0ztX9g(pS*XC5s(4S1DdB30knQ z%2jX%!1!rtduIxvAjB&~k1gs!aQ9nw%brn<*R^SRQ;!f%`<~)HPdJmJ+iX(l@>eNq z2%W%r$b+DV=&|uLv?-$BkpSu4yLZIN0-CHReg0|WNkU!=olca)U~H!Q%6?7L#DW86 zeC*!SA94KXW8}jM3RiSh7A^)eG|dWP zX<-P-M`Ev?rPJ#n-}Wq5K0^6_0QUKzFLmx;vfA+mF(_%6vHQ&W~IGD9I=(F#@5pB`B6fJO%oO!fEKJXPvr!|6c%(%xf|L literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..caac3bd33166b0036d5d28afc055b1ab338da121 GIT binary patch literal 10617 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..742925f3845ceff0387d9a0d9964882c543a33ff GIT binary patch literal 12004 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 XjV$5i(ZM-bGYWG??{tyY)w}-#g%11e literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e5b2b5be2955f39f5b1b03362beebfdc11139df5 GIT binary patch literal 11137 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..84a0868a15a9b0e91e7cf920ceac88593a3544a6 GIT binary patch literal 13723 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 bw$7lfu-7NrKpqX09)-T7s*ri%#=ZXsZXBcn literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fcaf9834ac545d394f66c023c25afc013d56a6b4 GIT binary patch literal 8628 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..130e6905fa61af3558349fdd69382caabc7a6252 GIT binary patch literal 13106 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..282949de828a7bf0dcf3893f3e5cf9dfbecb26d5 GIT binary patch literal 9305 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..01db65d42ba44f105c6586420cadbf622396ae14 GIT binary patch literal 13097 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 Cr8<-V literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0ba9ab7726d6255548ef3013f93652c8c4bd319e GIT binary patch literal 10618 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a737470836039ce53d136d39077532a7822e4315 GIT binary patch literal 12011 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

    G&a>gQ_J|lAC#4O$GN4U_o?b}=C8x!e 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..051530bdf136f672ceadab15e7a55120152dfb53 GIT binary patch literal 10074 zcmeHN2~?Bkn*NbiTNf}Qf~*!?upmf9_N87~stA;#BC;tFkph7bRtdz`tA^c*g34y0 z6%`1wNC;b0HU$9@ktJ*rAS@vvY)M#>d4KOcb7s!;oH;Xh?wp=E!#M^CA^-Qk-}^o9 zvn2L=dz&pA6*eLWvgO!!mOmiKx+@4GG5p1Pc;;|N|0sMj3b8s9;uLr>B>a4^H)3}_ zB*;H7#NXFzSD1G&!8Z_hNLyd~kk+nCAt6BoV;!A>=V6cx)`(o`PyvdhA-?NwmMggQ^>>>qtr%ta zw3+)9hD69;z0dT7zQ2}}W4QHUp|aBH?T$W9qVE}n+fxHt!ZgxlJ9@)X{4;>wts<4?jX0nC(#*G{2YLt*+jSDV2xV0;|+i7Vw z=g;5oe)-vO-c!GB%A-e*Uh%&{t_;;p7tvMnvSTjSru`zfZq~_ABw(tK)X6-ms4#5L zmq3!NU0q#Io;*3~(d4unvAC8T!*+FZ(?TR3q#YB^xcZ8Q6_H)%*KI|1>HZ@R(Xh8t zfjt5ASNv_Sa+SmF-|)8~f{ftL|Is)8M;7%@`CGHSh-$>}PxAWyXSU1ATAey|%73t0 zNS^O5aFJ2BNlM7c$&oj^98%y(ukBoONwtcOj^3NB@D!!`c_R#R}Cd@(y2bkp^HUi!R*vfiFb?Fi=RKokKJ)@6tc2aEml8D zW4kHt#bGmj_AAS2Bw<>_LWd2LQpK6#)P06bVCGb=Y>-w-fJQa`@y8#7vDdC$b98c& zv9q&t$92Ac|K2yo(lQ_*04G|SVdVb)`|q6@w{G2f^yJA@S-V-(QvI8IhnT9OkE-Y@ z>4d@!QcC3V@^X6vc% zPhV}JC(woI^w?r-lSgy*(9f(FgG{%C_g`*Og_|RnA@q4WWuQ+lMP{E%!N(| z3u_xGB#6C8Ml$q#f2bCYr#pIjsvbCSz|qBJXJTR^&2yxOM)29bLp1I+Cg3r#W6gJp z&%OA$Vr_|mttVs9mNMj4&j%CGE}og0(e?XK&_fOMbh|wHdq+=?yp@$z)2aZ0oBdg< zrG%)HL;cauFCMz*Qb52=Dqm8nYDO+wXg+Bc)^DUcWQz#gra0Z)!ChRg#AnEG&$cTF z5{vn>Jxr!^KS!Q_+ze|MdaR2qW46T#Jzla>HUDf2{iDiF>PiTnOG?*2Jztme=#j>g zCr`ZQ$6IYO=oee>%Nqq>0N8Ap=*Y#cEiYzr+Do*irl+wJZ-3Pd8h-xh@#EMu&lp-~ zhQ&&$MLaZ=dR$zb7yK4K^Q^m(;$CGwkCj9wj$O7yC>}M&<87IW@jDL06}nOzKbLdc z`s~@W;&ASuHY>2NZ2!X(_qH9n_=X(7D7SKVcYoj2)c|0ZmR@?{^{q2-cJ%c0EC~d{ zW))LIXc??nv_><6i$|_9EkxMrg?F~RlboSvGRs@^7^nC@WD z1O6tyxVoX~^}cK+lWGDKwN1j9W zUE|Onl{k4L@p3vzaANxlb8<%Hi*_Kxoh?y_)Xr~q14PLHBu(no`m|?hXlhOer;0=A>u%V%xVYpQ!Qwmm z`-wf#F$)zKRna4=rsVp~Ia-nP&UyA;FfDiJrKXNv~<@z z`m&|viA>|e_9ioBXR0IcmX>d_%uM#4xVzOhO*=7GW?$ozQ~6%-@?x)sI5Js7LxXHY z7_V0j@5iWHCy-$gO)sx)%B`+O+X2v*Ml;H~JoUH&8k1Qs~HK9IT0|%AospKD_&l_whG(b=AuQ7(3ty zIXXMbwVUzXaBa8t*m?=)#yZ}<-P+pPsv9voj564@6~2vSeY{Ssyt1+~Z;eZ`$Rde^ z6|AhN9H6W?`q~mU_zi*xf4J%GlFGF@dFoVym7M!_{t$^|X&Dj{VhMA;KZ2QvX9Q5A z{YAeWOUbFJG5b*HnxUnC8(l#`t))amM<+QQSGgZoD;y`2fdnK1Vnql(-oVa{ zzILZDxgrjCgew+tna{dCOrC^NpFOiWcI+4m#CSY!pBa0|7i5g!4gVOo_|w>3H=4iqi3WpY zl)BdnTLT+`G)tQV0Hw|sU0q%7I45`a0bup@ z*S9DJ&))#52zn=TybP)hGdC}~me;6=@AXb=05vo6>kXB-moL@D_|5VMcg4lWn+yP- zORuJHIH=~u>8I%i^p(k*g!v~Z8fd2;aNU7oPxSHvnT*bljIci6;t1Xd{A3mtcH-{A zuTr($6=e3=C!ESZ-2g8ScAf<_?bViHgl|#~2TG~#C7AtK9Q5%e+A6@a$pX98%*gS3 z_-^;`hV;PNd#>#tDW*^Hh4lcgbk<(Kd>gN{p;&W7& zNAWo`!J>zD>0ZsZ_oG;hvLYa;C{H!z_Y-JFwy9dNV=ZYmM~@!WGcafxesMLoyj&lo zVs<(K;72fSK;H@d>P}TvN4|CFP+vF8sp2NxJLJ>2FxkoMC$uMCzkXd_@6z|Cg5j&~ zZFK%%6f;hfLUzT`_E;w>$PTS>!kI5O=_Gt&u;$gvRR7+RGf&SQaf7DBi-fEuX_BC> z2VkJUy-J^&9Y|VX@CpN?HLa6XqP3)CkOwxeq7W6+h=W-%%ag#{Unk1$*kKI-2+B8< zX6NMOlqbYsfRNLK3~FF9utj^q@#DvHK+`{6F;)1lN%$1@{3R`qYD0K~U@FYGp(sz7 z6}N!V*@045Ei5dgF~A7R;_i_^h+dJ>&%Zi)-7?!e+N(XwEVGf%?v(-b0Zcl5I;>u( z8ojm~R`74B9GD0_bdp&9(8Uw}{S~?fs1*ltJOP-OHuW)u!qKx(^QybPg(j@KA)O2q z)Sl4S*9VkL_;lqnm!+jCuU-bl^U!%mNo3UKNUFC> ztz3sI?El}VYgo&Q#EpNiTMReIu#|QWRZc6h|NN5tkCg78^SS>K{S6JUk3t*250Wzp zAnhxd@ff;jvB=_|tG~P52zI98)p=BiouT5~SLf2`2`;4*Su*GU3{?$V`8WUZDQP*b?d z$%hr-L#eCfJbQNdIB>3yH&l~er|fG2k8>*!Qk?1HdneQ^1NsQ#nb`MAAZ;dBp=x2_LO}NNe>@B zH2nBinP8qA2DMMYMFoATG$d#=Fkh-bAr*|}(b_;Dy<};J-#Bma!!@{GotmTJnaT)%GHJi6Ke(X$&;^f6(?3yau_d{)fOvTZG`!(N-)JOx|TUIhZ}`T#H^= zN=&gg-fzI79sn?|U7HCc`B#Hx54y2|PQB$V^pJQ=kh&E(5G@5hY8BAVcQw-Qj*gij zQ7Lfa;gxeeuvcK_*=G>vUIWbCY`POILMb79Rg0FVUwdTjqi0+lO(#5E`CIV8ajY4b zp8uLFVR+%y%?a?U*}bKCodU34bHEF234onVG8E?)fk_Yx4sh6gCl{A{>GKTwg}E0S zRO?N+)r6iV<%8$G1!no6v**iw89}3xqfYy^wU_E`Jd8HHHej9Of4A5?WHTpneGVce z8KyC6z!I>aQ;PA-#z%nu!Rasv?B~_h^!L)H6rZfI&DU6(6rFdV%~o=DBS> zVlMtCj|Ll+$lW-&q@dZkb{n)PzU!2817s7)13wYYpi|c>en&Lhh7(j^h}M7Cz+;rV zB1n_{;E?1O$n)Yohy=1t{cjJ){*vmATE2#$n@|Hf3y3;V=gW~A{$PAQrSfY~3%T$# z#0F{HJ^0&~8H8pqt5G)&P8qhh1e#LH>U@$@*Tuj+C_b?Zz@4g{h z_2kR-P0weAx4m7Ij6*b*ms-WXOH=tpjWC$8FkOWn8wVck%Ouz^yPQ1}9doV6%wPTp z0$k|6)uzzEEDs&U=oZ~I#CzqDl;i8YgKncNZveDz@BX}uTU$U9RgK=VEon_RU~xzz zvHMEMuRaucX1hmxyyilWSu5F>6`|(m=hs51U7qrXfCQ{7moN~EJ~Dexyt>$)H893R z-AotD3p&-af63#a>5s{DK`9uSB`C~SEl=f_0%5uUr?3}TM2ZE;G2lN96tL?E+*Vg5wne;UVea#j4!4jCn7g!ktdwnpE*zcVjS}B!NPwFURAP1X) z>6K)!v3+O(wM);6yunp`GazQLx&n(V)JkR;RMK9O{({Q7o4HF=(hAiDxKTNH9&AXX z+JRQ5W=4#}_A&zLnclsD9trIh;#GEsjcTh0kX!Z)b*N1=RV4b_Wd6;e(k7KCt(A81 zYCBtTNMIed%4(DWvD@d)ojbh%g?9o#+A|=OSpu`R zx+NNxqqEW$UYn8$RJfNjP*n@|-yfsH>9c%__3*gv~^Rk-3ElnwOqkY3D#@dvJPJduSl4r&~t8#hbSBN8HdLe-- zwM*Ccb}jdR4G@=>sA^%}Qlb^bt>KrTWr!#H1Lga40|52jAme+X$x8>S!hNd3xozgq z7VS&Yu__Ko@X469X-^+;@LNf%#Sn7>HJ zm^M2Q^@1?r&+$e; zz69VIDL9OL*(cfm#y8D_|kTgGFV5R#Q)I{It$Ygrd^h) z5fBKBgSqg6B~j46gdSGi;L%rPas{Vy+Ne&3`Z72KKqUaev-YfNF;QDAv3d8{=Xk@Zr%9*Z!p3;oa4=$f_ z67^)$ZLq0>7=AA`aHwJ;Cq8&68QejTrhiRd3tuO;ka*>T0~wipSrvp4Z%l_|beiI} z6NAxoro1sbVr{v~Qx)S^`6O{TaoTk#&b=zE!MS$s4$7M>7Mbr%j93$P=+y;zq~*K_ zXh<}-)4jYffo9*9mP({mUNLl_fR{{Cg6JR-jUw z#b^mpZ`%+WL%M3f#V1o1t#)44<*yAs^z|u-7d^#`CaUxI{V1`JaN2;ltX}H#LlYBw zes*y4e$*inbR@@YN8NW>&C|pj>{NGAwx+IG59?!w9}dS^SObjOi5lw=-G&%}*b`we zZ7m*Cm$IEG)pN}t|44fJ`Y~)B1&pdkM?M5mXrxYBZ6ehtDVvM{ELgBb=n?2C@wVlx zqwf{}fFS)9d4Lsl54e+>sWNUL4=-4MhcdLDr0;OnUe7pA*)(CiBh)fQ$L2I%mw0DLp4*^-n0OdsqE zw1R+q@n|_VZgQ779xJ9A{RqRy$1Sw$)Tf@kCg&kvR6Tcmbs84T-JFL`DLBDQ2l0Xf z%9gchqqopcBY=6PjITmJBU1}8 zvVpg41&zRK(23#61hf=)FxqL4o$?xC%8MH+@XQeyWXXUis8c6pLI>-%m?)eRi1>6> zs6YBS2Nk?{K`VRIXbkN^h+OnV6UibCbZh$sz$&*|tW7#FTRcU<2?~e51}A!?$wGuD ze%$0~$gW+#MPWM_y?$;GCE{Q2Nvj7VQZC=Q$b5u31o9kB!qCoVqK7=wBs`|%>hIl} zf6E!avyF<1`ebp2Ouke1c>PoRaq~7>i*}XP*P5DZrLH0QH&kN`A(dyE{Y>?)+ z0YXhIG(kX6dKCnu6G{>wB=D89`PBBM4vrckAFMhnu>;z&{#ZdS+hd2=-pSm#^9(r!RY5aV2=UI@#>@ zvAgQ&L~vJDP*qTt+wJJ(b;VOtQPJ&RUr-=ibx>?vpe?{n)?Ybp?uj6Rm(jm`>DV+U z1o?jZ3Ea{1e({q%#Cwqo*IqFkE=LcQ)aiBDjbC?+x$evNS~x?W`g4ZB`BeGH3(oSk zUu}vER~=fdp1V&b<@oowANL(i2)@vDa+}QwVfoad17dNhWHlMXOVK8j(hYWce#-{? z(#+T1XzF=8H9hx8Lpi>0Ing)iMveo$j3}_();wx0g1q~BZ<-H59IaMuL3S(sefi@a z+*-sume(S2{3iP7SpWI2LTlHqUBvJs>TAuTDodwn;=;nhO;3)+w!K-?pY}3{$4$@7 ze9sa?UJ)+!(E>eM%^ik_VP#u_lYWfA=tvESO8<1?#EHZ-KIDuZ9*;k7VlqsNNIQ;@ zHqbe_gcB!1kTt=o`-Z55XNxxoNbt?|N08u(@BYGN`!EqXGc{34x;HIUlcK}wiJ2Bc z9MdfM)*#2jkiU2_jN9}|)H*=Powhifo}Ny=e*L-`#r`y96846(IG18gCpA4g6`h`) zeYedzsJugWx@_)@Va&nrPo6xP?9iC#QN7Ezf;e5?cBgR_vK!lJi(oXpWE5!Z0kcBa zj`dVU%c6r(a^_p>q7@_LEedf|_a2-1uT36bYJTh1-L}t=oWz|^V@yyQt2zr@1}jCa z!`?lRrna6#keawR0fIAeMW25aANW<=UHx;RT%8SLpi;?qs#{Fi-Vle=X13$cnwW^V zv}T4d2CJ(Z614C=CEmGiU4>%00e(1~oK=YmiN^}UV*L7lfwyxk7+HmU=)9dRNi$Yh8(cHM$ z*yP;Y+>Xu2<18m%J~ImoaUmf)JG=VUy4u>SUCu5pDTF>+eW9p`i2ihMx#x0x&Goe# zlk@Xcd^0jLIbmu1h~u?M1;nB`Uc)o_$&>GWyQl9eejrV= zNQ(PT$8JZDHN_yJ>eKUccn+JP%eM*1C%PR%to=uyu{k5yq*AQs@Ov^jM%}|kd$wke z5}cK~*Vms66SXzQ#>WS1Wpl#3$6NJA8WKDs%nO{24HGmEXO~WueEsm`SeUq)0@P0P zSmRpcae*)(-4Kyn_yS(@lO54T4CAmBTjVXj?l#CbXFZH{nXq?@4D{8 z!W=;m-Ne7zAAh;Q{_G75FVpyu;0GGZ*^*y~Yi1oA1J#C!H+|}a{{nLS3Dn8&LbQD* z%-+YTDWWHBRpJ%m*{Gw&UCQBU=E>DfKCm-?pM=FOEsTqzpFy|ytt_<7sUJp;)VWak z{CF#@>bHVe32WX`8y-&41O369TO0AC&CiMhMHDQ>PDROu4An(fN6A|xTTtDV0D;x7 zemRbjhHfxNvH6*6cac(6*p6*#y?%HcE=_U><%uX>l<*vB2v@>a z;cylB2ptjVxm^4DSTQUqpw}L5b7GRYp>w;I4&s;X7}uWzK_tM7VD zwCA$NOzAsOj3SdeJ3Gl_8Ch8uW>H>VUU#9Oi?j2c)YR1Om8z;Lkys4!cnG~o&@weh zJi{dGPD_Sq_1#@s15E~!;rtlC-I&1nrapGeMiDu3b8~ZdR$kt$a=aMw*cuivqGAM@42WPKk&%&6=eGP(!*dvS?AWoXLO`3S zz^w=(|F~ye|L3>2Q;yvpHp)R)54}hxi>Y6^^e{TQ8V=91OI%zWUl%10xZwQ;FCr>x z03=2cM~+y0bnjd3H&?G#ZAxEi`PxShiVxy0GG^-(tCRIY2NbyggHp+lAMgHOK!J1{ z4&mseDiW<=wG#yk`cek{&JBJ+eLX$BfX^GP$%}I%Bg{vKT}&i^9rhU|N&q%_3`Lq& zm3WUQ!{J_wmp~rd3ER?_jPNrda1Qza$to%;`85$Y8foMFNsCHOTFh==Jk21uY)&(# zFv@?I>*#c!+tJcM!QBWVy$|6-w(j}+@`pY6n7w+&0lRF@8BO9k&5wSRF7X=ODtgiH za@lxYhzDbNi;ehC>1WTLKfj$fZ^YZqTTJ5Z5Y%N~njdSCr8c5H z{_g(X+M2brEL44wk>Tm`?AbG=t6yr`^PN7fkLdXHX?u8hc)dGF113G&aU*EZ!*{;l?*qLl7h#_>SSkT%26lZipZI5 zfjbsk0Lawou1A7JKDe)*VKWAmyuN;5cec?)qA&V8q5Sm^{^Ny5XgD;)J32bn^e`v8 zSUb*aLOy7Ax*^Q*HpK?5=`wqlW4~?+DJQb@aky*OuHkT>T3QZwrDbO;z~kNc;9^QCKw)g%Cb2C-boPj8e(W6HVlXP{a%2~bWE^LxeKR8?;Ckm=p z$!DUSBOr);xDLy`=+j}xnEz;04dP@VkvJ6s$5k~@8H#^%bA53jz^(9Yfn9e%of!lM z23i8V=DPQkeC;mw{2j@m`}at>myD(sji$z(DJciUm?|DgEE-89Uhp`81aq9J)1X-U zE7t5rj@bNt`Qskk|L)cDRH@>I4I6Bh=0}SQ_88p7oj!f~ThIDVV+O0jLjnIeo7W>B zPId+&?p=lQw8eTtm7b{8C)Yq=3dYKG5H`_&?0Ngk%g0cg<6b-zrF|N{@89W-&_K&6 zU4CApiVY;nK>Ei z^f9&ag>eQ-2}vCuBkvz=+q`*maThIcS(kzbWQy|H5e%X^0=T6L6k^KDmj^d&+=zes z>*ieBclTxF2;Q(v!2tfb!zw|KDiaKdXWN%J&Qb?ALA-sj!Q-64CLWCqv0pwddmTZP`}!Obrm6 zpFVxUCFuqxgYQ#v?=DIQE%mViL9$XnJN>#@JUKOWAC$gCqwcb+gpR*THl4eKIu-Y% z9m@6gaF z#e+z7bat-oA-KA_=01YjJGs>q0rfh7Pq?rhM5|yHqN!Yy5kQY?VvKa}} z0n&Xbd`Nx_1VQ%{r|CSBYadN#`2C{?7UKZ^=S@wkQ%}d8VaNQd#vL8OtD%nU5yS7} zXAunrw_~RgOp|VU9&~FsI-B*Z;k7kJtu9YQgJf~f72!7WI7Sj$KB)YR&5DkUtjx%v z`M;@_Gkdw4HVforTMlfZXa9rSv(PymzUQ6-_X+ZW0yN<2vllLO=2?GHiG;iCgB5Lq zw|w7&g^&>qYMRoFl4N9LY6fj5jed^^s{oFYpFaJeZ}8skk=={K60REm4j&gWdkOb9 zzfx{c-=pa>AqHJv-#Y#~bKQ*C56m?%FktVZLu9%>7YZTYzrR&6;7g?Ey#P;v!m#r> zoRy#RBv*|>w{8+wl>_QZvOvR5R4=}G@nTke2RQYU%ng@tC?nwqDngV3*fU~EHaJv< z3+&R|PVFNRX$GqiMA)01%dLI3y5{hN^4&3<{;RO&ko8$y=kv8xv` z>j!2&zeO=vX8-;W2prRMavE93z7>d7G(vm! zc&1gUs(^(07E#M9N4Ia^UJ-lPWmaeBdLn4~K?Cg4SyaEEpQGlb3upMD@Z!0h;CshD zJy#+!C)gd0B#{TwMt5DZi}!(@O`LA3NqNfKDR#jm$__RBGIH;EPR!vrfCB;NB(l$|*f zEQT$(92cLe9S*h$TD}dstl~zyzQqRLGk#?u+obJ@>521`)TQkk;ThX=^ z77?)*S9Ps{a0pN`Dsaj(sSZpG1q$3AG?Uh-oUCc~dkE+#DE6~r#&hVpU8TMR_vPD- z8G?yxSXX3yQSPXSz2*2N0`+MPrq3!(`BCx~1S!@+b|OvRYUAkNC{=zn*{? z2+jz7l`M}Xr;HKHs1>Q165r`W(7f`*g%(rFG>KJe4kShamj%(J9f7{$qw3WBG!wKU zdYf+xg}|#`N(x=&RhM{@ZoNxw8=bq52@0YZ`yKq2JS5cALI|ugA+_lkYssKMo7)0b z)^LXj+~KE`OrS5>0|#n<6_iYLgX$)ZK8wy1+M{o4YU!Z|$L|9Mc>;V^9h3$juTTH0 zUozo^GG4r>1%LW*m-?06-xl+lUoxPOej=W^W_Q{baDsJ^=jIt_m<+Y{2Ju!hlar+^ zimqIavg7gU{lJMA2SVRafU75-rzO^AwY0T4fD~S7CsYaQ%>U#A?=w6V#NJR}uhtje z1Hhf8%{vC4{D%F_0LKIqnKY~9XyvvNU%E7wLHYjJuPV#>Sm;1k&_2b>kh{6~L=qs9 zgDqC1b7uDk?V24_3p~9z)Ivjt5mXan+Y4VJE)GRwuSQM}W|JSRlU()rVcFtvoCokbDv#W=pu_aT#Duhbr(6rC z0ed{@r13230C*WCn+o!`_@Bch@R-%4a&(RWPQ?bEAtaRR-10(9)5~!aMq6DbVwO@X&i+U>t(afH04HZWmHR= zLAZ^>P4t#)p;Lz6Q^mfOp1yFt)$1xWM&h?odweW1FBBXQkksYmR?C5vsZ%JG^9_P( zY@#?cMsR{w(N7|?kHBSgrRnNJB!D`%T>phJGTE%$-+OB9At`iFLgqnsdj}P*+?C}) z)aNJ$j-EfUKB%9Asi0&YY)oO5m>I@JcJj+ zjY*Pl9JzEUa$`L52OwoZX!OdU)t3l(Q4&Jy1B>E-YLL#eCHTOdF%q zC1<5GM+1DP-|RbSRK79*-6{cJ;@q%v@4rzIqi33=hUUAFR!QwGeaZfz8; zf_kB&XE?Apl7t;)=(787_(9iPW%*8aqB9XC+nRe1bW=f|Hc%=G!s)WVl%dYe@X?{Y zG|rHs0gP@^ph0u5e14-Iz`lZtP3b^O5TQ0ep2gJ*lU-_4paD=NNs$assFA03Z#|c4 z7=k8CBfvZ`XsU6G!v>L1K5oGBIH14p6u7jJCPI5c&~!T&XaX(F?U2IeTrAgZ8gw$B z{2Y&>6Q#Ru4TZWg6JZe*t-OuBCfbz}{RTpe<^wPRGq3%a9S$jZd509r=bMe@%`O;NU`MzUja)e{ zD~P9tw({Y_hn3tq^JBEH&7NQ>La)G!RH)Gx>(Ln|3-?pzpHm7VW zeNKzM4Kj|HOp;*Ju zrs(UzE)2etPU5uZ@SZ6K?nf2cNP_Rh_-n(DQ2%1Yv~`->0Bks`v&KmS3?rwNuwtSO zMJGwz%dacDs6LWiJRDo}<^CxS#Uel50CVjJ&>mAd*8^-wYYanC=o)M>wGIbRM^pW7 z7{3S!WxIc{iT6Y#jgaO8=h-Wgo>kC(3h7wUxjjQ{`u literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..14a8380126bbe6ebb2aa038063d836d3ce3800c5 GIT binary patch literal 13089 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3557b8c9801a5f59288a27f0f8bcd03a99e7bbc1 GIT binary patch literal 11943 zcmeHt2UJt*wr;SY0_s+`fJilpihziSbW{)n0@9_U2uSZOKq3|pMUdXhmfn@#qoNe) zT?j>b2}KB@mp9igcbv2Dc;~%)&OPJ3H{NyxB9N@Cwf^~k^DEQmu7V8R!IKA3C=?y$ zwv;jowd*koMfH9EKKPA5Yu_k52{}mLb5OB1c5uFLXM~c!?_gtL?Od_dS=N#O)WSNByqaJK1!_%r+G2KC;Ty$!u^4 zc^VK=ykA9#UN7`kV)x~3B?S?_QY-!$o$*{o$JqvfBikrq0hczHPTx}e_$SjxpIO~2 z@eZylVm`hhE{8l~{Yk=MRUQK?9^yrAyrN~EhQWN*`{4|`UL0E41Wqa{?{A+r+4W=RmI}~ z3j+hm8b9XtZ|@C%hJSNoaR0ard|PW+@tMKF$E9V6uDrge&4Yf-BFP;c9X7nXQ7HEV zGX5-`@`C-x=Zv21rCR;jmsv!;ErtH>g9i`7HQ)u=QkNK1&CJrtj(xZGeAlp9AXfVL z_#kU@+P6`n(r7}k5?RGt|IMoi7lhK$>rL1ARI%q-Yk(sSJfl8zA9w!eYUUUpRk17C zI4LQqZp^NZL@{fQ6}#Cq|Ly%vmE=1C^}udmml%`dAKbsygse6QqR)TQug-kyVtLK zHbo1KG?Z^H)|c*VZ>Z_$WEKrz

    -7^A3X^D|8!cuuYz+z*c(Z_7j|nbDypERm)y9 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 JeZ%0%{{W+y7Lot} literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e35820b12823a703983ca04f34a18d293b13c763 GIT binary patch literal 8056 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.2.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..73db7dcf62de7c156b5e0733da572e52a3b85a4b GIT binary patch literal 13084 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2a0de83ce5a4c2a939fcc9ed2c5bbc0df0ff261f GIT binary patch literal 11914 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d676909a07b63944e845556c0b1d2f4ae15fd160 GIT binary patch literal 12028 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..35006e5eebda09a786b26438d259ca5c41248531 GIT binary patch literal 12021 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8af997f30edc462c12206c0ac7bd65de64a8bbc0 GIT binary patch literal 9626 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..52ca2661ae67be680cb2d2ff8495989669d295e8 GIT binary patch literal 10972 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..07d8b3fc930a5a55dbcfb7ea68a926d29299ebe0 GIT binary patch literal 10298 zcmeHtc{r7QyY>=AMU;9>87h*9B=cB8OQZ;y>k*PEGt014N@c30hz!X*EoGjUM`dQ2 zS2Aaw$7No8*WL5H-}mnCc=!Hi@8j5ezsLKB9BH|`@9TG6=XDPEiyPO~7!I%>K%r0! z=&M(>QK&tBC=}Ho-9GqnuKKiLDARqooP21RwrBF5K+4sk4m;HE54!ql>mdHDgW{IL79HSlC z*l87Umt9Io<^8fyW;Wg^-Rl)6yH<>eDJza-I~63V3b*%3^Sg<%&N>289~Dz-sQYG=fe_N)oux*6ekcW-#L6%EZm2l#~DrJN)}WDW{R= z)j@2`Q`Y`8RO@`ae0=E5;k_eH#h2wcP^gE}dmj0v>AAV^h4D%3@Yfg2XV0F+ zHH>OIIpvHsMkeT_TxTGs!86dOeWI^a+#X_#l5tJ{{rBHj#@;(jRX(D|>}-sS|NfQE zO2gGPUoXorsWU@ABPmJc#fum9M54ZyR;XBVYU3q8$iKh3GB1co8 zyU*V{86d*7w7IH?{+P8nXp zKz3P~oK;NEY}XqBosQmKA@l=#dp#%%GZyzIA|j=>_G*4!9(`XOQk>6F94&>7Dx)8*tYqq716t#AM)Sw@A|aU*M6d}yvv{`-odHN&>cTNHIoO@<#_oSa#2-W;`R zv?8yro@Jt=k%x;_Y2Nl_9E4tlXIq)cC931>OJ^l0nm-29H1o|<|C>beXqUVBWM8@bTYa4IR+sayH^`FpdrnjCx+8XGmxZQnnekCHK+ z9UUXKj5K>5SX;j)j)(DXcq_QNx~Aplcd{)v%g*1wb4N)hS)+K+aroy?n2*O?@GL{8 zg|K_e?zf)o^Bj-Ctae+GC9%trKZ>1Gx-tzC;4H7=PM$oO_i*U4&+gU$NmH^f@w0i& zR2_fZEkna7F7Jg)Xl$AJI^2nl^LTS7Jb&lFKz2^fg{CO+=^OhL#db1v+*V~m22;qq9Mj=p}xT*v2bQA&i@uzNJ4Y}neC!+d*5KYmSWcP=g&XX6gdt@&&tcopFMZ3v-b5V zaqsnq$A0@QJt5)Lg!GS|9^D%^KKT37Bqb+5Sp4}-#(AvqMjX(B%2x+_c3BphBnL9j z85Kx1w6^ZLpAG!&TpNc&S$r^uWc{pLMrNi4basc=d^tZ_#%ne6z<~oJWK6!#mK&$6 zn?|VI(sKl~V4MzZ6eAOx^ogNzV&cAMdH-^kySw}JXoQ)biAhYd=KIrV!&0}boSd9I z^O{4WV`EdZg#%rWsA=;o8h-PXZrM@l>su-TdHp}SKwB0v84VF+zIkrZLt7OxzzlArCP$*&dr zW?)|5);1Ft7WQOy(L-)&i-H5>;y#KUFNo`L6V=t#1sH5TB`;5@k7b2IGSM}dQ4!yX ze%V;|-_Lx}qW-9brR5ZYfa12_KV6cwS5bLd-_Q^Gv2vj^q(i5ZYZQBYdi0J{-^ zO$$}nylR@Q@8jb$H8pjBy}h+{sLZNmnjE{9Ht5{If-xJCc64-fDmK2v2xIclS(9ck zO($h#v4-1bWui6eqBRZg*e{2@n!3Q3ZJQ&8JFsd5)$>JP6D#B zUbW+JiSuu&mh>w_53+G2`H!fd(tgWMy@3HuMjI^`mb1S56@~RY2?z2CVxOdlUqR!vF+_I?>_}e6zWJanE z=E!%Q*5j1N+yc08DTtHz(%ZXtFYuD~)!CkW`#zb@uC52&ITp%3h#pZsn@PRUk){Kr zs7=dvi8+{6w8~(huP-aY%-5hHLWGoO-G0%!jW^4rRIjJdffT|i%Zqj(Pznwmm-?V@ z>Z!uaf4w7!O>Cu6jF_67tO}D8FT)43afzji>NY&oJC zfm5fHo0^(%iDP4y!Q6_bT%k2=VR3QUN<1GZTWgF>`{Bm?m0VK!7gX$EXuVcvTJa{O z%{^mlTgNy!GDb#5K9IRW)qDv9Y|AN&?)F>7b}Vf@JsJJ|rdHBSbl#CVZ~?j(pUS8` zMrseAyZuRNnv|{Y?Y;eqvoJkf-M+BLGchHFvHLUN5B?1>8-OoYH@B(P9tV9Fm%NV& z2}lXE4D;1nTU(brv~!%9IUzauv{hU|fkb{`VZ-<`8V3LY=aSOg zeBDX|_@l9KL{4t5h(~WxkyNoU{sUZ3sc3)08tOD3-(1@n^H3$uk<<-fu`z~y3cpPyslJIGv43bq2Ln#9Z*ogkPl|Ap{Xtmc>HUkIMy<5N*w|ATQQX5L#37KSzuh>GQy z`KvgE^+9S23yU<^^2No)nB^u(@~i{a2srxNn&H>HS*GQN*TRKb=drt9->R!kyF{rU z`SsctmXwx`Iu+yBrA>Cfa_DbMA67V|sLwPdfI3k#{h@E)wClr9Sl@srFuCg~&9U+s zAl@ccCflL2AN;}(!qU=GwCHeku#T$gv#9s)`OttP?25i+h-UePAcMUsKwXRUR01%2 z%sMK3wnmmWI@;S4prkhK$(r@e&0YQFUVnp;#a}RDhNzb(Kj(W_oqL3nft!?ZC%~B_T^+f%7mIC4kU`1SzJj;$>VBw7nj;;vO2EJblx-WfI^|S zedE(xw{E4DmiBlamv$Pdk3IT}&h((RGao&o0{QfyEfM|l#fzIdI$^n4Sy`H}9-uBb zUYJs!t<|*L+;+D1@88cvG$esa3gkK^EZn>?73utos4$1mQ)Q;6wg6JUdHp&*j9)7q zkH1dX9u)x{=TJB6X44!keO5$7UtRqrK+qU5P6RI7+iQ$&gYv(PiOK5DwaO?dG4v&v zU5gObg+BfH^XFx6H|WAAf#=(d-~1dp<@ zrBzj3Mns^ZqM1m=`o~=Czk@Tk{*=x5$ayOIy%n@fPhQMZ(Rgs?aSl*RdEg`05I!-u z^gqfQ`lu{Vh0@QSj`KLxp`%2{>5J#-&_SKQT7*!b|9)qSIh^XYu5Oa-T#+&wjRsxb z`Gip+wVj0*+Isv6LDzryBz-{Jx ze08-d5PzG^l}Q<&%{(#7){iO}3YnDeIIL>dSE37e(AgL%7Bg!_jMcq#>CxuqW*#UO z#4!K~ZdhPzaOOI)kZP|W<9bC|S-Hi@&Mpi1PUnvw>80}(MtyyKn2pg0U48u&>-J2R#Mq@=cvFaBVKz(8vhU*@yws2$Bt%3E(1VZD;4)>QHVGurPw^z}(?sYT2P|iFiZ}fvr)6XaP6*#oQwu0F%@(s9Z;rV{bf43y8n5=&Gd7Nf!Ne~Zz+lp6 z0gm1ex@lk#DPi{`(Y@bO&AcXr;fDh7xo=;;rlzIU8IZcVl2=#VKvJNQMFe=+(cL{6 zWNmBv20Su1x7C(t=wT%~#7}B#(*~U}skpnW`1Z}4kuobH;Kuh)cR_(giCKk!ta^*X zodo>ZSRMy%BOocMkGtrz>0)7JWwScd4TuvyFi&brx~6MrSZ|^LGC}iT1Il|cDS{Ub z#+XCPX1)z+YJPWTo)0akmwDq)$D$L6-S)P3`TEbm=I^PgXF5rwjKst%3UONCzyYPv zv#=Pw5d(Eqx(cj@-F#=}-TJx*XcC~KV;{{gh>7KUE{_RHivu=inBE3Nfzp^A|Ci~^ z0|ogvPW%1_RBwUZdqjyMcJaxRm$S=P4O`sIgTl`lCATK1A%_j8+#bN~%X)F_A6ltH zNaOjd0xy|tPjQ{jDolq{c-)hbkpa%rS%enA0!0)h&`pp%(V{9UDnAHV0y_r>tj28U zbnE^yPi0p`o19?goZ9bwSj@5!*;~RzO{@uT1@#|Hwk2T(AJOuncb7zVPlnbckW9Ta zb1j?N{&+&$+0ydCq|{A-pI;5PQgu*d!f0SK+;{y8H~2Ajwat5B`ce@nxF+o~@oL-m z7oBhgjSaruO_+UNgwNE~)m`64Ynz(Jo;-D`v#ssIh%>@`)$e-JE@;E=@YW44(qyf9 z$TdsA*n`;rFbgt49gTLZHogif8sp`K*b5Jnk^yj~C7_D3CGl_Z;VBpr^lI|3-ktXYT)(60tI_>fAmnuXDX8 zT23IGMnFKIzP1)YG%{r#YbM#}5>_3;nZY0Dt!-^>jam4EmJbc4>*kmwA+6YX`~i8Y zb83EGA8^I8De4=)9~G)nTttZa;o4l^Cb+nBLJ<)W*KjWb19gpzGHST7#wl8HU1grj z9i5#?rE?|Mz|MXd8tT4kK=3WEudjC*@L3c1Q-~Nsm%NHQ2+ZdOKtmazf<;jA#Om|s zbh>(a={Y$|AI-rBxuvf!$=Z%cjdT-dU6 zxF94Tf+tQ~Qlw03Da#|cdI_0Se|6xtuvm3(-WIehJ+))QFdd(E-vf1M!!!uzqR^^+895lO09-XhTI+ z!FU8i#xOPI$c3(bgRUf#6j(g2E-o}#^Ai)VNYmwm3Sa|5gC8`Eh>n)Kt>e!d(eUjc z_vM#x7uDiYQnuyG?jiZydtL+wcP6645JxbRgO&9LaCdJ7Gde4zutk~W)MwC8dSr=R zzaDa0D>f7GZ3+lCQs}=bYwn8LnH|{4@`d=o25cL!`J$v8KeDs4H*ejcdu9p?KNikz z*?061{V}K_JBeqXj{oNku@*p?-*Q&v{os4S$-m3Zo}v7Y1&KyUI>f>#As$q@*V;3T zx}O4NMF+fU#GVA`H!(4Zk3Ax+Q&gUuX^^W5m3kQz)KUKyip^=fmrm(+e0=;R;Be{L z*(69bTpG?5p80EIK;Hx+3~#<-3t!+cfCths$%tK7zWtS^YFeC+i7pkq>|g58cTE~R%x=2NA1sm9( zF9HL_AoCNKb)R!7*!{^uIFD-_YkJ=V9=JVtw~ZpciwBwMXd1sTD%u`7awLc}Eel=Kt$HPzkU0rid(L2Y`hp589AQyrIX({TiQIRcs$li18B6sxpU&e5e-4drQ3u| zN;>H2>7{yhSJ<~_mWo}AHoYTBN8^ZA5b`X3aE*zHIV~ge!?v%alhs@Urn-2snnM#> z0IjJh4n7V`Oao+w!9BAQ?LnB(Mb>>HY!*LmxS}?w& zkU)~f8xLDb$H2fELT7W(it6Bb15x0lDpDZ$3LZZLQ(6ltI76`46BO<7l8e_-BfR_g+8|vAb(n zNoYKpJ&ziqYKmpOW!+{Tc0u&qa`ggmifUH#e(Ww~d2Y#MDnx3gGC=8}fx^zZIU@I_ zI?|d;-o0bhjFmH>W#pn~e;*b$yuA^orEn9AB><4kWIC7jZBFSEFm=O_WL^tk*KlpM)u?#;6)Ic*K1{5M2(eOZRvGQIkxp5SY z1hvpEaMWCY11}xBRP>Wh$v8Y4j`k(21PJlQGpFb0NnmTgiHY%PrPvn@?E_7AAAZtY z0(+7ITx%n@MhO0+jO>bZ5T`y%b^KA{HhL|qHxpFTii&P$mo2^2!yBhT$n1@G24`sK zdZX@)VbK_DuE*i-AkN?0m!NOnyvcH$n}b6TZ5(lT%E?TJ%VUs=yt0xSA3sz^xPKK} zmH=!m1$vW0!crm*aVunkP#phAbRTPELtdpYu!kfI+8y#jFnVomg-DU3Rl}u6n4A#( z1+M`7{1ynh?_*F9J&5#a7?sXwX=mXQGi_~z0>)54%#%BGw1DAVn9w(8x!^pe0rD{w zG@RM)CJB7$F_tY3mA%nl%2KfY-&?$#cse0onqDA

    qI0kfM7KbV*+o$mtt%kx~e1nz9SbdFwBR5S|K2J+GeB&iUj zgQS(5uw!D0vblCG5GfV7ih|&gzJA@yoU?zoz_B~lYfc)L=mXHZC6v`3a;qBmBsgK4 zxkGv08%`jzeYScA^ne*9Uyp$xUkE6fnG*qC*y)2=+w9Etb?qN`Wo~W`Bq|rex88?6L z@amthz4)12k5kAZtOpWWmWhhkI$7z;w?|&u%=LTCcY=Q07_h&41IeR?s-BjqF~xBZ z_EdlH+NG?K|Dff*zcf+@jt%JhBwj~%>L<@^4xxmDQD0xJ4>4lFzLEfA8SzAs7iwJl zTuDzchDFaDo2V+kEehTN($la2ufzOrd5vsrmx|+>WWgbZ0p!+EXqD?%@R#pA{y%U^ BdV~M~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..19ca2b5acb31194e4e548e55f563cf33ec4fa3ff GIT binary patch literal 12013 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 Xpp|{?yI;TnKu(#Oo4oq|(v5!sH|K8@ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1f574031561dfddf02c0b641a3518e2f3b13f2f3 GIT binary patch literal 10972 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

    u}>!TPCHTSnIjuGP$kFbT6^4P0a_bseD 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..74a8da8483f21d73df5c5027a1e6f2a6805c6964 GIT binary patch literal 13141 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..58cfc664533a90a02ab800f64ec1825cca82ff18 GIT binary patch literal 8866 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..59aeb81d65414b5c0adac39a3f64b25c70ea00f4 GIT binary patch literal 11123 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..bd6b8270454a058ed74f00ff509621683bc8a6c0 GIT binary patch literal 10405 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 XOFWj-V0Hk8j?z%oxtw#+CgeW=?0>RU literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0dbcf4c2f0feadacb7623b974473dd96672bdfe8 GIT binary patch literal 12033 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3803515d8b6e42978bf1c55cb564b25c521e657a GIT binary patch literal 11118 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

    |K(2C=fD(wKR_dnt`{r1PT1wNV5 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0e3d249afaa38367bc3e9281a8f66bc549e8702f GIT binary patch literal 10074 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 NFtISs`NPFq{{~e9Kz#rJ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1f0c99bf3802c513e29bb2fb163f0cde089f6000 GIT binary patch literal 9911 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9b2108ceb35bb553fd579c789ba4ff4a3862bda4 GIT binary patch literal 13076 zcmeHucUY5swrv0v%ZI2)Rlou&ARy9_rl1&*A}vUZh#)=Er3Nb&5Cs&aH|Y=yy(Cxw zkzOMKj8dhe5K16$_v?K3oSE~?%$d1o&biN>JAVWpjCu3E`?vSnYp=DvXP~FWwv}%y z3WZ`rpVc%(p_oHZD5kHQH^JY?w)G9cABtY5&Ag0o_Fld=9(E{Q8?UP_I4>8+OZ$B6 zJUkt7ZqgER64FQaIe2+p^;D9Sbp5w~Ac6C^BH2PC(%>RnuAaT%i9)g4ATOpYwM<78 z>iBiE=1Jpg@l*XlSB*^)YkwTxFR5ECbWtebVn`M*)5#l5v6{O(1>Q+W$6hExi6mzo zePwpB`fjD}*+3gE`MU>B@$x>1$-ch-{lh4mgK@HFoS*ZbdV~@^`ZD<gqQW5g{R=&m9o+n72G> zEvhT$?%lh$m91#boQG+aRUvq_G%_;sh6)=BHLJ4sgwHwoFV}2eX71d*p<3{3`9wj~ zeAkxU{QUewJ#aJ)-)R0%qN9fb1WR_phf8N);k>+Ln0BB-d}>G3sITX4;^0gl>_ox0 z9o0Z>K%rj#2JfP(k8eQr8icOFkKz~^klp%H)iklP)mszpUKZ{PK*rQxXub+ zoZ{Z?v>7VaqS)n!1upD-a4>P#u3eq4Y_-bz-T0NfJ`zUOR%S2}0xCmS6`~(KO5Vb8 z==;)-!C={$s>Q_V@(BsJfUvM|_RE*E4SpnS?sDy>g+1>k8oAwiLQ^24|ct|qHlu1 zIM+uC`~R#zT;$Z1Q_cSyL{)Cz2Oe8y#gK;KcKB@3rJAj1Lr>2)a4a&mwZApR$r%NWP}yrz8r?%hX1@UA|DMd|9-YP+d8@`TB`b7A8X z6U*WkQ7FomFC>=0jW4sa(Oq3#9u@sqb{;;_lHUAJpFVMwWas70=fi z`f+X5>C&Z3Lmp)kJ)_U1uM`F|{OvAZKBBDLC*R!fOP$(==dM+}Hk+)-i_?f(4v2!T9N0@o>&w|SeWzE9=H2aZq8&D~mpLFt)^{@NUe^^6@IvrnBm zMa1AAa7%U@>8p4@x#H(oHBz;f7Jj>U^!uB%n<^Vo)v}_=7}VgvKxc{uYgczSy@=f1 z{b|grxHP~IFU;)>s#D!2d z9g>&Fkd~Wpg>L;yQ&bWba?wOX-x(NT>@JE<~p1dalur|D-NuD~n?OufP&$|Z>9EeUx$PZds$Sy54lO!&sdU$%W1f7K&ydnA(&!S-8 z$djPtt-ZXw3>l}bt7~%M!t+>@v%j_(=(s5^|ANbFyWj{H?Wy>&m8o~9Kc3NQfnj3N19soHjJG-86NJwZX)ox{B3gbHp?S%3ygtdBL z;L`BONKSIHdWFwadk7Ot^z-N0QHS-5%}B1ja!{FiJv}{?s(=!}>*yy>UQ`7v(w(+$ z+g22~?7_*&nVplP4H;=@Z=cbes3L|2w;vvKW#Bi{WupSnjU2jiOsI<3 zn1&bcL)oz&K>!)4X=w~DxQ&HF$xO!%9606Z=$Mn0HCrSrFQ1#5dTMNJOx!IhF>x9r zi5?yvCenw7E-NPJk@yJYT!2TCs@mF;Z8(n<@;UQ2_Ti^ANCB9|$)2=Zw{D41w0>Rq zt02?p$cR&WI+{<$;nAJncvI~fo@PTUhqQevq#LhrzQ4kkJW%sM7!9!332`g}unrec zG2bKa*4dnJA_z14M@TIqBBHIQ*ZuDHwkOY?W##1^MPoxri7El(Wuu85z()e-%C0`S z+F$Ms9lo{tI*TxxP_+cV)_pks)rsbK{ow6e3aMa9JC zg6^edWYo@#Tb?;{N6zJQa%H8mxYQ8{)wr&_7kb1= z?%5TTbwerpKIVHXDCWxTl!q&*P1{KuffD^|68M{Dpb@PtA!3*UV}f-RbVp!cg|>AM zO(*1CDd}IT0vf(u&BCv*QC{0Up!(Z}A-xc|@k9O-pQd~!T2nNLG_42$6Ca=A$f&3; zK<)m(xhBygM+}UNqOfXzhB;5kAk3NbAI+SF(X89|8UWw5_8aD$>MhZitem}Z|Ni~L zi*K2+f-mHKr-5Yc{qlai)Cm-t?b;n zGcw(8ZX`QBT@&uSG%sk*zv}+Id*_3KssK+U*OM(Xtmmvr<3Xtm1^VRoi~3BPm8@B( zxU$G^)k*jgR;DWE&z+s=SiS?o&-3k!Qd>~qil^_8d3oDo%0qTrylJK&i4PzQlc zK7E>T|Nd621tf#0sAzOz;+FwAz+h-!#@5!;x%zr~PdmoubAR|(<>ci2oR}MoQ0uEDRgK%0Dbbp3~8NsNH0F?!v{?`K{Q=ymG-?&qeW#gUN1pOIHGQFu_Wj} z<;q7}S;Baw&t&Q)7{X`^4I28siK*$x%DdCLy5ZEWvaqnF4KX{_^5=LqkJj zL&MZy27TEH?lcXE@bJ)3RzZOtuxTUU*f2q-6AFg-RRhgJ*#*19<-dHFPuk{N1#^Gf z9$aOLV@HOFxVSDf&QC2Z7(G3`WcDpk+6Eg}RYS{~U&bGBh!HqU1e}jO__30o|AmKp|k9X21hny@Q>*^V(qk3)C?+?KbHF9Vet% z^efZs@@NtnYG20h=VjVdF9t*hz~*)kYAo{bKWeyTojQ*ov-fyMW<;Xj2yef89l!aj zOSd5b*TgM~&q2=mf4$D?wK7#QQ9@$mKNM6efH4oNrmsSa76_P>0%3>LwG598GdG

    KUI=n^38v3GCaB@9fBg6nJOw|1{;NOe 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..54281585f94240dd245937048b7d09db7f7902d7 GIT binary patch literal 14199 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8c341290a8929269f00f30f99ce3c5cac1c01c0c GIT binary patch literal 13121 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b1deea7e218b500858dd5c92415589f0c08eae58 GIT binary patch literal 9899 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a3081b4a64f90fdcee6b89acfb1e097f59521d26 GIT binary patch literal 14205 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8214f922c1853a85310f72ae541a67cb0a32ce79 GIT binary patch literal 9934 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3f9d7e4737744212fc7e1cee9504aaeff15842fb GIT binary patch literal 13100 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 ON=ZTOQtm~Q!2bda=!d2N literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..91d3cad70862cd0373085d52aa5374232e24056b GIT binary patch literal 10980 zcmeHtcT`i`x^EDyDA*7b0TmDxq^N+@h^UD4B1lJ(E`;78C@Nc|Y`Sy-=}1734xyt| zktQ`LCG=jCklZi(+*Ul4xKrKKp>9D z-@l`dK;72)_3v_N&Z@?cpXm?-75rJTQOnuX2A~P%zh%0LH zcVsl(;ul8Hsy*gUnpYU#=fC)5707q#kWkUD9lrxKGM*P*J^epcmG`gT3kr%T2orzf zf1X??V{sg1S7~ve>oT6>jl2qj^-}PtTSU|Eic9H7Nv|y1EwcB$4dS=rdlsxos_jNz zvn}Vbo4BwThTn}HI4?=`!Vrr3$_pcNFpR@FOuP2SHj*3bM zzkca^wbXl;`S|#Lw8He#8V7dqBzdL0d`b7pf5`o6AcAz9dQ3w@gRuZD0zqQ$NJ3)X zoZ#8#d0IvW;d3zcUQpQjz`>KOtgI8gumI1Ocf1}bDz2kBN{-QNa}SdXP|u$6!8+9( zHCbydnJ3kX!cmQX@-nsM8w()36$ZCkjRk0AoNVXn;1jXT)W~!T3gMqGhnI?o#lg=C z^78TyH_x`Tw0uvN^(Q1?(G(x01o4Lq{<7E2+Efh;3~F|pSR$jMu1HH8a^4I4eQ2R? zraOanii?|@I-_I7&U1YgKF?qX$y{7}>~PiISFT)9*U^ayW|K(QDKxt*DykjLZ!qiZ zV`7pT#czCZEu|IxqJ ziNw5R79gNXj&GWo3E%e8qgjbMx84aGAz;b8QL?PE%by4mQ!sp9^*lxPCx7R_V)Gd zo44-CRC6fPC+jIHwi$EqBM`S#_evo!M%cVmxsa9x7h-c=ef^|MMQ=|}&zy*ok`m1t zH{4x668rh{Lqm+Had7vHrj}M88*#YYIcKqANm^?Cn=IicBRVrq6gB!$7HaE&eEo|m zUtaCJ>AsJ80dL>ZvxK~T+nuG6;W5%Qx3MXXo7*5PVWs-|&&m_XTUg9Mp}F<^j{>V_ z&ou4r3-}EyGvU_P38f<=BeRQ(o9M;0oqcW*)XC?ZreRUMd-pDxk|^eweu0y7VEkbGq~80KKeg@{yc;9@xpA$ z-MxERL_}l^U|+E3WkZPX+kk+G=;(~Vz{93yX4xqzx1j`Kouj#~8dd9`xTvV=?q0@~ zm7lM=hVSg(Tp0Rn_wzQa$n=*`&cQ0r5-uo8MeDxYuBfYe5n*8|6BAEuMk{p=9z3|} zCK)D8yc-53CPkP|JtJ%t5gQx3-gdonT7a@DAZ*t5?!6ZqOy%M$sIbPj%yX-gtyivI zjqIO$sH+=0J2$tBZRqOjOJ82@6wsQQn8++I*X8Es9xSp9S65fp)YHp>jX}ic8et7# z%vUa5Qk9eQpK6cGAP_vn&N9d+8MNnQWp&}m3%Klx3O$$@kEs~*J%-G%B+Cy^ngt5g z8aAj-uI)@XiT4f+h+RT5D8p{As8%`5hA-wnym=fk#%r06MKkV|K_59s9qHA-+QKcE zhkqXY{&Dk+`TbyxL50iZ%a`Q=2X%CG#GR&9v1?mPI1FsnmY;SOO@XJgb8_fQaV)9d zzpFPkH(NLScFdt-MBJO;gdxJ#)Pj%c%`MKjg?^?xn>qhaBy$oDJdy?Hp4?hlTBNrW;Xhbu;ccrDJhHZ7!fRz@~r67 z^W5it>##9kndkO0-Mf3p`03LR-@ChezkM6yn46hVla=-RR9NUaa#2D;!nm4?P15Zf z5-BF8!ynCS9NdZ5aC9t0E1R08je0IgQ9-gfgkuXE)K=|HT=(N3jpea({;|vird#sV z9&2crcgsN{Cn1f7N>KfEujn6Y zXryw=1zT(_j)Z;4&lmitQ+Q9W_?g;+2LWN>;h){t%(%I@zKpNj54)%odourZD5uhPkcL0y#xRnuZu{OH0da3}%aRTux6fuC5-5eH0TO zo;o{g6&Vp>(VedJKwe(W#^z(XO44Fdq0g=dj5F)~`&(>mY_X!KL;%%EyPJzUE3o=6 z!vswN4{ly~eI==rC!;$H7Ob(UX>?Y%L6Bq@-Mk zjEtQ5QD71)Y#rs`=;%E2J$m(#C?gOqriq2jDhpVR@* ztZZ$y6cq!h=PV2gQ{v?~yfrDyjFk6`(%ZL?yE7`zoAWxmjYg!#_Z$MST?Aj9Hc`xH z4vmaV^XKq+B;mRk!L_lzeo0734Jc(_QxNOYJFMHv6R69Xn&-6S0x`#_OINQ_q4QeP zrSs=yI;DxZeR&4F^0V{vn)>?joAU#y+zL_a<-tazU(7%%0POpgf7YY%<=)as@yZ$E z5)w?TtVH5j4{VqSc{Ok8glu!!M|!_1x^vTR>_tPyQj83nTT993rnUcha;cR>tn}E( z-dr5XiI0z`X$0V}QDp)wc9;yX9Vt&MEiLt3DJ{JTplevN;!(BRf!(z~M;y+7?Dyo! z6DOSaR@TRlN|bdKN)KMQqM`!W#vWTJAX%kvw1Pi?lV(IkovPZIiVOJdw{O6Idizxx zTU%Qvoy2!bKp%Nl>H>HQ2u#!5v>m>A_s*Tnswyet%Bm^@fX#jzeSU518VY^(i*$1k zYX)-L5BaU6dgCh4v&_6a<)vz(Eha?o@35E_sS1DY=&^M~U|^u8hetUuNRo+^l$4c) zg{q5-3ufr4x%qzRC4T!E33whJp4Lf+y=^NyUQh*#j!7jP+Jt$zs;V~u0qW15J*xp) zYMgoc)coH2>S}7CtE;QfA(GqL6d!78X6EE5?Ck7>eVA;Gwyt}5@QQ#yG#AsUQ&zxd z2dlj+PVwt!#>Spu6LYvz;kp#X_39O<`B>q>Po{5y+eO63=K>Yxg>nGR64o<3oLleD zXgyl#e&)JaU`L`<4*b@-CF1h#y$jR@VLnb%3N>X=?WL2JmbU6q^*}*E!`r)x5`A-U zaPTBMd8e@@KK|@OZS9;7AMV77*r)>rTUlER1ACyvZ_M@Qz;O5O-8(xy{jJh{P1DFo zz`y>yJhhj1`fOf@y^{q8tgNi)<{LkM@ZiBoCMIVT7M2mQrFy@TaZI(5hPI6b%Quy@L$_Ff`v<;=3kmI#V>SYc?J~`5fNPe z^~t%pd~D)QnYbO|)>3~@mIgGv8zxPMdwYBL4x<9qEG@HsjgJdIX*f_eVw)iCJ&2~1 zIpT|+G#=vS;h{3i*lVT%pvRnc2^%tE(y)-K$DqVeIB6y(rmWmt#pYnP?p&S1h`6{M zg=qc_acn_>8hq&uVB+oh{{2EoGiOM1>Ioj@ZTz#LVkM}b?CflHpc{Y*)N`!+^W?*n z6U5UJ6WMpC<&fWrOIS>_p@%%6Ajq3;DKRs+rt!h+P4A2aF7WayFd|9$E{nsLs!PuL_1{Y zhKv*Z{C0OeFC8E-)c^~go9;>l_DwEWUbcfN6c!fVC|3e9TH__((%!z&iL$W)8F%E} zxRW^Cd@o))t@DCC=xXm#+{nn)q)ui#(B>>wFW7yx^YpvGIylM9%q+;x%*+GKb56t% zQ$pp0KB3;At?ywfR|68gR=-O3>lzyJXLQeCxi4PaMBBmkJAVmO_#tV+H0RYv`L}Sy z(XAqf$rfom6Eky8VPQ8~0!=1K>2pH`jsWPL{RjM$;b{`|&2On8(%FC%3!_yPxX<_g zUMmC3{paO3?dDFG9LG$k9J?Bzt)b_F@GJlQyHrz5aGL6ug=uPPeyFUJG=2K?()H^a zP+hQ?>OMZzT$Velld*!2U$nHga?1lc#v;+x#VB0fD|+Va^z?gj!Dm;DYU%0eyP=~O znYNxv`|#lsP+KrQv|!~W*+V{bj-ys5zIv=QGCS|Ano>Ln<*R=P-=qH!EcfJfO#UlU zTS(GzDzGD7ES2ixQ+wk2Rrd5olIWnBiTI5{;%z?T#kx6EzqYqJ+mfL<``m;``R%mQsozs%uo ziS3BGzP^5q8&Fh0auBirTKzkQn0_>6p`dz-Bwb!n(K|A-KpDob?T!-Rx(A}(8_}G7 z06Y3W=$)~^K?Guqp56ly%qpsU?AS3Y6pE1rg+fKQPR=^Bf2R@Ujwa7R-!;)#g~?Z5L-Bic*y;A6tDH16GdeeL@7hiYocd3pSkc)UVb zlz>s*!4nrV!PgAaeDo+2E^kfTT+l7GOSZDIa+>&Z44_gk?BuCa>B8217OhcNsRGo& z;gbkzH2398I;aK8c=6}YGqb%pK)AXA>cOJ1m;dg^D4hv{ceEP=_fk`J{2zkSzsTTz zCTT#8_Zy){C_A!@Qe5&L_ypJWFPtHVSJj~Z(8)n4MCW--HnI~R4py?cIsQHA=1t3S zfhB^pkW>6nx!@0lv9m>I@#kLH2`&Ep$VjBi@@U6f)Jq(_}F?Jjx?3W!TKMLT?r~FARqv8gLISTV9UN-9Uv^dX$sLE3Ai6W zGU1C=V*rztrDbUIIJ~-`osk@iZHCfYS{?v9gDs>ZBqT&V=d*P`$q`)d^er6PXg?!+ z4{)&c9HZR_ASC>JDxpYf|K>5@(b9@y_t}0-jYPtFy1P>w8t!~FtkPu_wXHNE|7v^- zv^0%&Kf`u2BqXUtMK|C&Us+ON_ec@v3w0}8K5}Ih7HZhr+Yc6+heYw|q=fURSOHHI z_u9?}M~X{+V`GC5j@&u13pQWL@#DvR{;M|j6sfrKj1weD z3J}idetP-_AoPaEx&@jf9|qkS-R&X=ej#{p+C6qO=ndFla?)xQY5W8gt z1YWJ9Xp#wkH3F*ajEBGTyv@82RjnU=W)`9}-^@867=W zhEJ?8krWatz|_C220!=m5I%=i1pQ~|@!+D#T@WXNe_ z412w|Ml$mA^UvkY=Kx$@2G0WDnN+g5D*58A3k z)ID^sa_eT`V@IuC`0P~;gKPiqMLr*TdNiqI9DHSJ=eHd$P0mR2(FNU6KnN2=Ahu`e z-yrlW-3s`Ps&m21cds%8&7M_VJxWnH3-lVF+)+OoqpNK{JHYIpFES80b9ZS>7ja#((nMvISvsMN(29c1x`x!)*l30p6be ze(TOeDRH|oUuv2Ni4`v&UmImB^|`Uz?neK{oDoGA7*x62N(vc|CY#@HpnKit7|@CD z?p8s5Ji;n64U$A%M&>!Y`@}JDkT3pFkUjdUVW?&-2QWgf#Mbgh{#cTkd1vB7FRw}m z2Zt9`Cl9BnisSeFnja{9pro{cebo!%_C>|H!#`9#lr5nNgK{jg`&s9U4c^;&+SnIl zvl$3Vn?)?e=L8dz=~PF8H3OUY1eTKEIw};VXkd^KBjs6qTH34B9U5q0C;oZ}l3e;G zI2g?PR#0{IZAnNRP=HOsO%AW+=b=xP6D3azR+}_4tkuvmvX}&xfraKyT4`>F{SsLJ zQxLqv_wF0L+MXjuV5)~sV3iUj2NV+}cY=jpCMJ7yoHl8LgS17VI4+kUu~M(Ut(hijfXCksRYBXtZ&3d9^$}Jx@`e$mm&K$FZmbP> zh6SvC+xE(MyGe*tA6}QL!a$d{ccRIT6cHSGvqTB3bP5?Kjq&l^4O6tXo-^1PG@d?( z5HiM5$XiOFr@;QXzJ#Sze{F5OZqgJe#DOLi2u-b_ny#C7+@K~k;9>^uY>$Vu8&Nil z;=YFS#FdPCw33?9B>$a7SFH8DpfkOAQ4^EEuV20h0zIcO0p3O~$Vl{P`H+?t1MXHF zL^qDhV=`-RjYui|-cVTY@JZ-V#rT_Duv@zH%bmVb-}kR!sy1WMhm*}S6CInpPPswC za0B$=6u2By%}8ht6KP^uTWRKqi{#agou7Z^xbo}nAODy2XE-fC^|54hHRSxd zR}4NPLBcgwKK$Yi<-BpA5LIfU=fPdQc;P~wrnYvRBfcXB`eY1*S!JD{D>nzN&9;|+ zUgYGgzab(L3)g-JeqVTaxJjVU6cns5s%j%D^eI%&Q>b4LL z>7E&J#YL_UBrU|jo}+RedEL)ek zQ~3`>jeSeQr;L<f{)ydfj7Dmu;lv=I zru6Q5x6hUsG*Kziay_{-LpdS4D^(7+LOC%;;Y8T?!y_VIGv1~8{NCfNI8|ro&s9S3EF!+E^v2sp6T z5aq@SnY`w*gvURqV$x?dJn0fV>;hc?yo^(*V=pU$5e>eIG1u;fhK3SK&_q$n4}dJE z?d8YN3_f-)P{)3RLt5XTkz+H&*~MiRNm)ap@h1Fw#fl(Kz=sN#hB>~f^NDMW4Az>F zySqDKB?O%dJs0E(k)Ev^O1$j&iMr}Tczs7l#~M6%<#}K{Lo@H1BYpXDU;bC+*_3^R z_)ivH7eKNq0mE`7$;uMu0}|nZ9N>fNOBC{wxa(s4s1I>LddqcfN(s#D2FlKU4zKsY z!3=5X>6>LrPoHw(VWFz7j4;Y z+P%l|RE)wyLRlaJp^U(TkARt8dsW;#Mz|912%Qx&%6|BHx7TBg#UlNEiv@JyyuXS6 zUVh_o9i0uXx(dfDRx@%u&~cIKAL{C!LA%iVSpk{QEi^lVIo8136yhs14auF;Y|mxt z!#f}nI+2u0E_-KMzt@fo2!b5qSE3sjfE%^@IWGOpD!u`oA!F@Y#$nrr}eE~ x;WS3TBOS{M=iuYd3pW33YwPcy(QKp8gx{IC{M-CNB8(X!e^>cV-fiO-{{~9o|GWSI literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..04cbc8c9cb37227ddf7e2b013b1a6c89dc217ffc GIT binary patch literal 9273 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 GtN#XB3v0gs literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.3.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fa8ac31dff92448d267b64688e296656672b7878 GIT binary patch literal 14163 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2797e824dcd8f3ba73b289deca575095d674c8b8 GIT binary patch literal 11980 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 DnSpm# literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..de9ffedf55924614ce04783681a01415094f9120 GIT binary patch literal 12016 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 Wm731XqNfnJPMDoBE&A@lwSNKU@7xmr literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c7f03de7883f8775db4063f04078c0e771433d48 GIT binary patch literal 10309 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 UlIPiidq$wN49^vvxpMR00K&I$djJ3c literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..54ffed2529a10e759b83adbe9f01ba244cc6ba0a GIT binary patch literal 10259 zcmeHtXH-*bw{@_iAU32}Pyv-9ML-}(5DN%MF9D^9h;)$Ni-IUf(MYc%y+);XMI}di zM@j&t_Zmuo`eHZNmV3Rg!b`m9eWgt!4UaRlOdIEhC*HNk-I6a z;Sx7X^nM&hdO}!K_IkecgI*fPDH5Qa%dubW`dOYXwkVukW-@1`gz$6m=f1JJ*PjI4 zw)cJeLs04N=Lf!FCl2)A{yIFjVt!Nj=F9ja*Y~w0`*3mV+Tj%4S|08WRXj7enf%3G zZ$niBXS`8mAk<9PyzG%koHt6e9=KY5;#`oR4D9Z`%)^We@YN^j7HS6yrR|T}1;3=D z*@r^iXW4NGh5B@P*BSV;@xE*Ds`^7d@HyfviUx(^z46Z*{w7L(Rw%EnMFKgtdgDYe zv*7hF{`BoXJ{T3cuUVT^3(6=&@^xmYCJS5s5MVrZY@#LUhIFXy*1BzYSlDl)c3hmC zxAIMzy8@10@F#0PxcxO8GA=CK+WN`h-4e#7?yyF5o(>irX!-3myW>R5S$Z~1Ka0A$ zda`D=mKj`$Rno2CwEK)88IxByT33<<&@fwXXWM1 z;l>071l}gghH{IG>l{9O*w-!(g&JDATs!eb8KWvAfM zH^vjO#>T0XMK-GHrAwE{l(lO7k009M5fOFc%W}B3_IBS81!ZOD)eR3!YHI54+0c*> zEpziMp|Sj|>}=B4qsnpl#8JD$P#k_Nu~Jox5jGwSbabXQeza~=ndvJeytkhHcvEMb zxP8H+#u#bOfvhZU(&{Q&K~|RV7Q+Trc7IZFKyn4P`7Z_((;NJeF)9&TjOg+oqH zPfyyYtgI}~^K_^zkw}!@R8GX?4iiEpj4(WWd`+c&1U)Gf>QG+IWmNi|=yyd$MQ^RD zH;MCM@$r}BkZibmI+XRqiTG`=YJve-j?XliIo z6n5*Y!$}9ed|7DT$<4{hsn>RL%d5KIy4cO#-Bp4ah2@(2Ux0Z>PfgLHP>;`cZx4}F zlxfa7j7+{$QU00r?GzHG{}+gdjAQfOvb}Zl=B`UdwL!M4iD*ap(a}*>!3Tag98N=5 zHzzMI?=8X9#s;gZ`ufO`BViE{X}4Y;pIn)2zv0OZm%G7dN#%SMYg47uS7c@1m7Gka zY8>a&&FD7p){7OjiRhcvx^?T>qlTy?11h;2mm*}+l#!8f8%jaKX-37wB>lA8#My6O zzfNSPC$KKrLtkQ+H$36f+Sds@#^yB z%MRP5?(CG5o3pdCxRkCgEz;Ur_S?6gSR@`bFdG{iXJ%%~;W|1xQa%_FxFsctEb7|Y z7Xfy*H`f?u1K^hFKD@8kDF#56Yf!B(N_2RGmXJU&WFmHOE6r=OZxBF->&g`^E-o%< zLP~miJ%T|V7z359c%rw{;ImyjXm;FFT@oHEg$xMJCoP+V4aSNZDV*SC@w02-BjeZ@Xh4M5JS)k6HFF9YTkVOZ6`Akodu z?P;xpqoa5t%L;_fgJ*q)yn(^GXlZJOLv6*UCMORsB|yjfbf|=T$HLcuqvVAz3?k+o z7vaRY&YzbF4i0Xj6ct@5EH18}CduO}^zo~+ed%*^)+Tpu-0;=qiv)1vU%zT=Yin1k zD-Cdbt%SC|*oVz^1y4*?s%=?b-Sa#CZ=^d(V(J zb6Hx#Kub#t=hFV})=LNS%H-JuNjRI9{hKIDGqcuauT`Po6QX>kn>Ei4 zka{ifX3JxZ2)771Et$n4^hj*8IZizJ-Me#e%w~j;Q@!sEeY@}m_*8|+gCs7bL^IzX z{B-n!QU;Vcbw!z)0xU$L&)wafRC9pe^jjcf4B9bkX=w?8li431Zb&%Kg>h7py6&ML z5BcbOEZz!clhTKh>;@K<+1q;;uJddv49Q77?Y;M1T}uN41A)>UDyS?h)ZE_QmhK}2 zu_Wi@@B+7y!^OnJ2s_Par>3V%7y&aHUE3`5rc#o`A+>xCy*NnPRh6L_d&R6dLDJmJ zOxz@~d0gGnGDl5K?P*c^?{Fb*L=mPm%}JHdd+d1P10VTwYn#;#$esD!)E=OjnV4wV z+E^~M9hUhM2Mwj0U^K}@`Q zW{euJZl6rO0Z!yP=_>SSzbsa|;W8mpe{QMMVH+zX?GLDf#F(YJ$k7g>V00!hcSp0Bk)d z8{;C-*Z}_F!?jYsa<}TMxIRXgxn^UJ6lY3WR}fWZ5DV_z2w^d1}q4P;`TDo zk*21n+e1!C6c~QlgLH0CarB*BaH4e4`;3BUNgRC7p-F)zl4@J4T9XVuDX!+|=tv$| ztGXcPM%`WufAc0eE$#g1`1tSY&ADp%)G0|fjmgPLT#ATAmno1A^7gzp2#+5MZc5dI z{Kb8_0|WY{x_R|pN(fi0r$p^z`-6)5yc%|FvGygQ#ePUtf02fg-cmPdifc_%jCEKV zk%J%swa==qHrTy;cT<$0QSC(@9tA~3MO+H(Ao!F-SAdipH!pA4;JowPIcQY6x$kaB zKH)bXtnvhTfCk_N`nFQXgTDwJ)_rYG^G|%K{R3bAmX72@IDn40?_EfXwQd`zbnoo% z&-wWAGAJoTi~5q|;FRpjiA}iZXz`3@L=iC8TtOKb899ET7rn^OuMB@L0~{s2N!+># zpzgCP?nxpncq;o9JKAi$Y6 zp40bmDd9X=?#q|efW?4-g)`~^2^2pJ%}T?-01u&rv*kR0KC7TWqdteu$2axJ^q zp^g%`U4jJb|7Lpm8Ka;JaTe!NYlV# zu`N-nt4@rJj9h2WN}HLP-7PSEt(1t73`>Vf6BvQ>FSZ%XgLlpLm;PnR0HH(**QDWZ zFzD|Ii~lc#SNPx2rm#lk-YeddiwA6itD0L`b)ItWPl5`mT&Ot!K1F*+raGtGbXTsr zl2VA%Tz}@)md9V5rO2u;ZDqv)p)Jaojg;g3`Z)wPZ`}_cJ|u~WKnh7SML46RvWttc zxUiTQZaG+8)7!gx|Ni}PfG$C*T3QjnS~%nYV^}4ea=;72W%#2qkUbXoH|prO#7#e zGdN$Zn-16lLX2_{;ZKN6GH*{)^rh(j8=_1!Bf_@ynIlR|LnEWAN`Jm$IV7)g^{z?z zziAw2N5}8Oi(*EY&D^2-dVLK*S*lJ}rqh_14!< zc<|ss$B!QqmKGKk>hA94AaXdqPm>VjoSK_+sudO%Mm#)G(Y1=^6HH7OBI_9o;C%dI z-*3?&8%KbIjk?GtucYLJ$sY$t3tYfbqIF|}DtYcAEQ+o&QLv~V+ zu&|S58T?6vYrr9#UJ{4Gpi6zfb$kJA`<2go*~F%wGq8050}79c$pT?_N&EdZDX{Pz zhl54US0-BBWsy-cjPEHsHG$HeCGRbYFRn`&uMq|7L7NS(Pz1mmkIIRVuPJ&?BU!n?4sBApJ z9SQNTUk`Hc7MlOoj8NeWM2tCh>s_wZee4Z-JA&UJ4P3%p2|6dmkiVUilmv&cOm~b+F8_8R;-r6UfLp_$kuBO9zntZjoj5 z>P$~ESdf~~DWQ2BBz3?w_5^p*lsx#hzcE@!mO*OkJz#&~qefOv4vvX&DXMEmItWey zQ-rRoOioX$TUdb9&Wf`_Br6O-)YaQvL;viWZcqgr-{;pD>Q3(6k$A9f_}o>xE=Q8< zWBT4;i$h6Qw7Z9T2qLv~b;HkhTI^i#ri^<#j5V-;?XcHM8Qf4vP45Ate+@V!g@o)? z#`cw$CeoAW?n~rJ`}N*8@I}aRzxCP><~w6uFKX)?Y(_&zXEF!I9}{4wB2F-X+;y@1 z?9jn^?4w6%Xfzt??7HMB?H90#S`jgqAVD&iu22kzr!xJ53Ta##MY=D72Zy*ledT3k zh_B#&2M9Wp=+mOqloYzIV`smQ+AY>RfAx#?W`-^O!Grhax8jXwBdgtS#4<}W+ulc*l`(UVYmmgrIzr z5{~exmQ<$Y=#^_lM@I(+1$6)xpO~5)+J6mIv;SVPbtjoLtqD4ysY!`wSAQw+#fz3~ zd==|d=H~~9)rn|;v&MPmt z|M{tkGX2?yB>a=lLoo1bh!zSAIk;`S`tv!Pc}Iq7*=$kYbxB6LcRZ6Z<;U2()|2e) z>>TPZ72n2%oD@IOOZyY|tldH$I1m{IJsKJ*s>w3X+|VUz%tJ?zw$l(R+8lIJyzT3^ zZ_!-pX;FIRPU4$`uH&cJzgzZv{B|cw;Pcn7U!$A{TnX#jUduzi3^9IwyM`BC8Uh)4 z8seP?%*L7%y$8n4EG&d@4WE7Y`WE4}Kh)@YZ2xgL5FD5Wy=5 z)66D{ROKG2axbS7c~=d_M7~XvVr1Dog-!1{I~NCpgk0$>wh^smR=;=8!n)+=9%S4J z=E5CY+r{1EAHe~Hxnv^`zT($OA*){D_JM)98S0E9sb@psGW38dUaHk0%)V>7ALqTP zo9EftzaV!%Ggv(c?JNcwWULV(gvE$LeZE*?JKO+pV2oKG+G#)YLvY#Id(9cRSD$5H zQR7TsakIx-`Jl-6@86lW3@w8M!9Wv+8=&oth>RS!X>{-Uu326o7lI1-`P&!O1BGJiT@z(TXG5ak}fT=tN2F(FYqPTFSf16}*bZm;6(+snl=p=`jNn4=`vR!AM31*HdT_IXN>U48>6khazr276qw~>;VLorz@5HXP_+V7cNfB zwg$;1@O;sIWHR{+NL60u&2T`KR-7;oxs7tp}X>Yu`Zma z5nD~xG}+E~Hl3?n(_aQ4Fj(5c=IOdN4gSU%jn#J@#j)+Y!PAc~m6)$+9~l|hwf)wh z!sP=TgKgJ%b0V8Vw4t@5O!I@cGU#VqY22vPrA36WP`K#gHs$EYNmY@<56GuJm zj%^XlxJ=tpA=iHkyXm8;LLz$}FZPQ_WMU%z#fyC=#A(tL%w*B_V-1Ot z$Fb?J*=5baH|;I4P3D+{yF_O0;MsCa-Ww!GK!G{JD9i#F3-SVhv-X#mM-C1JRg1wk zV$+B$l$Wm)r%KUKj?uiR=MxlMRFLu~47Y*~)x=^i$U$qd*FVE)2E>z$r;_6WO- zhMw+}TD=Nao~Ms{4*QgF7;H~rVTPBDOb(lhfK(M06o8?%_LQIpAcD9<@Ss9|E{IxW zTuzy>j|dB!7>zX0QdfV2Ay2S3#)%7=QsFTRL?JO5c&IjGHgmf2^fpVIVBX~~A&7mS z{WHeG+WO$#K{!lg5)L+Dyt4cWwBx6-n-p0hR zZjXCY(g8`|!7~+`PeYx_D`v9;m3=xkAS{)YLji30T<%y}@^(j$)(ksyo*6-;nwAza zKIH;;TSrGHD>Jh-J<%(xC*Q*MItzSHI?>faC=iAr;~k_m!DK!gfVh-6_Y$)=?_?x71_v4h;kTiZt5F9} zU(MKi+T~LZ7TQ-RhJ4$(-}bpb16v+U%}np#A9}}T_#z;n6@+iW9}|Xb5Z^H8lVmSVZuAFjhB zVQ{0#83rwHp#fdIa6xu)agj-q4~7P71MYaQ<=DZvWzi9M(gU7FFzYX|EgKGzIL64B z3ND^!-m>dhv`I%x%UgI}#B+PvfT~M)VCuIivIfrGBr;YMF>B)hvSC5l+JNRhx0@g< zD{BD?jNH@gl?Kr#0s=63dg$t4nk_)?1R&S@ea8FoN$^f_v<+mQ$a~CH(ML3AkOuHVS+*LB*0~OUg=nj zit+)hV4gUtL||YCP}28w20Or@`5*G+7==M^oqhW~%~^1uQ7E}vN;mVa-+%gF{#1Yw literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1706fc60697b05d8c792b6bd2fa15ca1a2ef43ae GIT binary patch literal 12006 zcmeHtcTiLPwst@i6cNj-2nbjZR0O0$6cAK2NRcjGL@81w0R(A^f(1mQfT2cuN2J$a z1Ed5*5UD|tULu6hLg23L``z=+`^|UH+&gpboqJ}^9}z~f_x|nQZ>?uN>v`70OFHMd zw(xC1p-^0y3upCFDAphpie->v6a0_d=f0otLkV~8GS0xw4(Dy-aUG>?gL8Lw!#O)% z-S2hX1MBGKDkC8;A#;4c0}khoMN3M${Ot=8ZXWiMt@Ii?++?%+1yd{v#chLpSTa=8 z9Z@I=1I$@9!&`CF{ekWso&oi=}BsOi4-K*XqWzw7Rj5$sNI~`me62y}fmhYrjbL?EaU2 zE1~aAOw{i+R%}ijwY3Xv@}^LPDw$ri`PeCucYAHwU|~*YLm2P_^=s%LiUox_eg?&g zLR}6)!QWnQW#K@fuJE#MN1!*`pu2f@El2mW=z-`%CNp$rtd@atFO z&d$!v+lw=g9z5V!{0_VL_)6I4(Zs;Kq9WOI8a+PZVW?G>iHV692?>HT?_p=xxfA{7 z9_E#g#JCG-T;3j}dU|oD|FFM5>tSKxd&>@R8Xq~>ST%KZy=x+RAHclj6uF#)14Yw23 zf{Q#SzY-bYQpb)R)4y>es{%KEFtIf~n4KHFD5T_Zc6oWZv7zBow1g#&N$<)oE4$p% z(xN7_W5si|3+nR;D$mXWcs*pCAwu2D%>g5|E z>XU8Whd6d-8R1jl^3?Qnr>{AtF{*)UKD43w2onQ?=OxbFKaTUO_?5kR^TyE3?3is> zdwctQ+Zk@hnZ9y-N?n~sYD$U&Y*EY!8}-=w0_SdN<@HtC%2;xQu)qJt6Ne6+sr05A z8ykOJpDftO%5qplB&(p{8HtS*bz1c8B6Yhpi?gfiS91KxVcK#{x6QQ_Kb6F+?Cf5P z^ok0!gB9Kbi;Z7?AIjZCU1V<&77=M2nze9`ZSQ*at_`|nPHD(b zfP<|kZUYK6)}YQ8B=Gig@_9M0smuNFtr&Tin8H&^N~ZVk-zRsy58*Pfw2Y4uH}`sr zvUqdtq2TSQf~P_Ml_o#d_?_vF{;V{D1KCXCF8dash7@uzWq& zveHFGUN4Im-$tf%+A>S1z8iTv0^--8{8if#^R zh?^B%;N+1&9t(LV=RSDa-fp1E=f;g2`f6%-`1tr_Z*&|nGBj)$_Q0&HJo^6XOek)w z?SLh=MNX}rHmzIj^W&lD{A|6D7#eK`X<-1F9 z35%ktCMwUW+RUG^5ZN@0uOIrnFx}f5PpR@LT%k{jMmMFZ1#fbk{FH>2wD^T8aA7WwSiD+$Yrv6abulbbgSVq#;1OK1bPspDVG-Qd3Z zzP=Tjnwk=nU|?2bM0LTS>({RzJAT{{zUwvJllnH8T}(m2q&`B(4I9u~;u52HGYRfm ze0$LqaOkL{q%IUtPdm6pk;kwmKzvqOng&!5BUjfvokSIJ4BCA#$jscF{*F`9fl}k| zJ3_Dr)Xuuk$%F2NVp%bnSJ{!SD>U6#ZqO7Z{v|m=B}>lf>%E1|03aNN9JXPbhqs*) zjDTcHGs-r`;Nf182?=?og?5f>tIMM;5s*XL+S)yDu0JkxUi$UDv9VF#(J?bjO7r5y zFK4)wQ_8WUns`2b{zyDNi9Xro^zPnf7s2{B*PG^7X|0p+JiPGl`p}slaF|5N|Mu-N zrhRppW@KfRw}E||MTadXlyogELtESAojZ3*tYOM8_>Yo&yGtLEhZ@>%epg}JKXpr> z$UMV}{S1>?DZ??oyLM#64tXJ!L~5*nhDPHkEwiGcqQw)cNbtzvqY4UL1XaJK*Q)`6 zZCY2aCY=&&-B^0mU*Mtg?S-v9tuCegBOfT`Out`m*;l3tTP3FN0QJKiJit}^TvRtJ zHTB%lqes=64D|JXE;4#8>ZyyRCj)0F7rRFw_2>Jrt>ZkTrH_jL>dExq*0x7w3X{Iw;pzttm%cK+$9u%v-`(eoBoH#^<~+E79}ox%ZV6DV3@=?G zhJdfe)Kpud5)ZHEbq)_=!*8`25-(1_7 zZIbOqsez-MyLGCk#{YIDEmpzJm=wVL=}|80(6-;Dzd~*-z%~r{*o&B$EI{#wQQG+6 z+h8>r(i%Nq4r1nGeZAPxqnRztvuDr7dG`Wg;r7jelN7LQ*zh_hM++$5F$syUd6t#3 zw|-q29vPWfnjLZ>yY-f615Ysw2&nO*4&+u208sl)Csq7?E9*;vgh9$Qm&1jYQT331ZF=`lp%MdD9JOQRwISU)gIG2o zNWZjn3z$zy%d&lVTf7N4X{?MYz1*b#%m|T%y+&s{YsmAidDq z^ps=M{ZuFlC&R*Cw2m6U)v=R?CMN7H7xkeY$pkL_vRP)X5ebkbKBp2mT?>_E?3yom zc)aoO@F?<{HsiIGP`o|T%)62G4v`;W?YjgT!xK;W=!=VsYho~)%@Ux9KvgIze?p)0c)KCZC*~x#Z_pWp#U6j`?17HMnN!2Pbnbn&gZP_=G>~J5^9G z;RwwDN00cY5nf`WoZG8v#ZvM{H(7!cTK&bRtE0f%~&`Q}YKp|zpmY47y5n9Xdg(8`q$ z%1eGtP`=%fe4hK`$B#_nG^`qT?ZEmDcN?2mXF=UjrGEKMi=7zRN} z-^H2S!xy72;Ozimp$BnVo*U*_b)H7jZnyMdJ? zbNZm7A|o?jzrF;i)Klyfy@^{er?1aKKsBJMW!a^-#PP?6hmEbRT{Hcakf5((RDb6?r%yk8`0$3av!S~ByTi(oJjs7IEe=$(euEc{Kj{qw+Q0C9 z!-Zu(6(bXq(sCUD_O>cvC}(I|D7R1)g~}a+(b9TRKZF2RQ6e-(O0(Xss_;P2%$%_C ze__E-Hw}JzF521NzVi=L{0lt(Ac;cxt-|~}mR|pp%z_{Q%O#5|D>IW8p~$r9{gN2G z_!=NuPF@~e3ItKOFBF7E_fLSZe@`~iFY!6bSYA-65d)oK^XAQJhz3X&NnzOw^1#%T zGr+M@6ZAFk^KgDw?+Dr|UjcL`kVN8_!@{rQULn4?z6x$q2R|zUw;&`O&}{SZeQ-@0(EGPV$hyh!j5x4KTY&kmPQ>n zJ&1`>zFndbA()FuOAxux2t44A9ER$` z&59hJ?UAs^Xl~Ymv~U`%y+dxU@}YHfbfnz9%PJ=;>(G&*mz9z6v}xGG4meVg&HGKG zlfUJb0Y92HqRBwTL>j|1-9(A}u54gIHyU3Y^;y+sSJ}L8DM7tg2dPB%e;B#ZSr2`<* zz4c+-2Jzi<>YLPPRD8Vuaw1?x&^F7HU2vMOV$ zknf~dj$pu&4V_A{);%?Q&$WDbPp(<9W_y>(x^d3sSLYt@8Be%9^SMQVl0#V?Q9zK_ z$ERG_aea*mdC~S*vgQZ~>Uzl<82}KY@ydo-_gX@#g=V{4uSS}0c$ir?h`lB$DMJz11) z!l_I^4-o3v#C0(kKngdk0Ko9fYIz{ZEe)!u+T!{1=d+2gQRKJm;R4176xA$5 zSFft7@;c-WoEn4~oa^}bIA!q(?id{%W1y)t`fHo_@W$!ao1(^NDygp6 z_>G)<*m8Gqust{p3mLyRzvT*W|D>cOLu+fHqAK8)z^Ge1`&_*%X`^e*8UnTE(@&`6 z?ErWZW!4zz)6k%;Zlp&1MRoYEOB{8CS>I}eWrE8PPf!@Rbp~J+?#^>+05qT@a&q)` zp(D_Li0+&dV&U1d2Z1daQ?7p8A}1&3IMI=bPk}m??M)pp0~ue~abc>PPuaI9 zO42&-=1`p@oOe%wZ7A3$hcMu9wZR$8|9q}{Oh(24M0PW1KK_rSftjF?NOeyHvf&b> zXv3y=HWOszY~Hbfz>UGnJAWgBD#pbteHK4I*CdGqsPF7Yp1)z}2KUvaS@g{x_W*=J zl8TIsOa*aeRC`}>aq*+D)e-fd|8*%_Nk+1I9&bmE%REV~GI;jvS;gYO?P8DNMxyQQ z|3J@P;zbHfKEieu)o{jtV;fsPQ8z5auTNa3h@c}5U97*)*sjPfUa$1PowHME?*x?+ z&l1SF_g_}(|6mKUtjFq3pXi+EEzP%(hz5DL#EmjAvpUie+nH~z3dqmJCwl=H1y==S zZ!!p2scC6h7o#QSmi^EmW3)9xKFT__3xn-?>I9gu zCK$}8VV_#S1%b=|cr^s`T*MLd?5v!e4)D_EK~2vj5^Kv3WIz_~st^U1M%?h=MBU3vGqvF7etT_WR(vB;I1^fOz%cOBqDER10|y|RhCqBt zfr}NJLb!$UKr94hy>V|ckT7MiI%7_H=Lu&P6zD;VUyMC&Dy$yju%4Px;fjrW$t zja|a%pF4MdZNY8bI1s!ZxH=7tZ7b4BXFg=;Zhn3-44A4lU?_P4uX^nJS8mSjo6ytl zy_OyAA3JvH$#DUmnKOg?iuR4}eWUy*%>>nk*StBb;iu3B`_-{^kQix)45!?0yMRgEK{oX0IPm}KT?RI$RBY?FK< zBRM&_6C7M3AuKG6R&sNuri2wKF^FtKHcv=M7#Oi-33%{f_jeW6Z%?q>zwepA{-U+2 znq0kl)xo=6?Y=B3Ul!D5jtX>lPfr#wk@2kTJbe)6_C`!KLeYUSf;?y%KJ+xvI3&qx z_xMMzjP13ZUmi^qgBGqYbf-Kh{6BwQ16q?=Q={VGtcupg;(lU|<4&c{I=AWjz*C%RFGDu4X=@dpnNPtkEi5;V0CgkGcS*MS^lL*jy8 z*-S=~u<9!kg8=5&?d`L(vKmdl!b-EUj`>s%$ag_Wf=UnMWxUz`+O>vhFZLETRu%|E zMH#Dn6D}?;L|v1i)$zM!K)@mdz-KbI6bEI8$n3i{6z;ON#DhW&KC)4FhT0<{AwkZu zCJn5D7$0%;$dMCp&~;R>s=|B*@31$6!xF!&${g1fL8E(4ft+p!q$RDa?AwPAA6_m} z0x1O33S1^eQ&V~!g7|l4gD$xE68a%pG->rCffvXTuk^JCAlXQ*Gb!sX(lRnFp!~!$ z`1$y>paK2;7?@IM0p6nps+`aF`#kE*7lQ|7<>mP>X$1vReW9!uZ*Du-2m7OWfcrG8 z3~cx2;w~$vtG2eEIR^}ZIEG(SCI}?~Wb0_uBv*Snw-F`nH8G6s3#_azy?_;yk zHf+n5EggmSy64WGMP#$@D#E9&1C~=~su!&gm^^q;9ZnGb*CK_y5c9^ag%9*aF==Ui zQ1D>*g}7lq%H}>)?Obb;m3fKtXBf|r1*;kErWk0;#}UfKFFzI$xSCwz(whb%?s#FV z%H$tXcgXaZog8ek*byz|xrRe%-}ww!hOAxlUa(L^`$9ub{Lp=S;98i}4M#^k9BxUs zkXv>25*!(y)YY?P+#3&cJR_Gsp8XywlohzX#;52`6drGQcIdnEev2aVe2hLcnUIl) zwxSlO#u>#qYTri0DuDz-0IV!unaI|*u!!ST@<{2f@vp?L$GX)x3KMe8OJmGk5qA6G zr2@t83j{G1TIN^~qKCXHTfXS3x*$gi3T6LDfXdR~hC`pGC_rnMk-q?Tqiw^a(skmc zAqq)ACFLceoBG_}bJ-!h+|>=3mGG`FIfqG|3Ed_Kp41jI=v=0c$AYW$sj*R-T19)J z1O{eiPL6DT)tqK*FL2ot5vprtFdF6546)M;I&2Gk!i5XLD6r>6Cy;%~yfn{2u=84) z6O?=RDZ1CLE|ikwW@l&ZKozco9n1-UW~gqG9s>bJK-TO`sp-EUoljb;DExEpOrczs z!}{abx1Sh^RgG%v>A5lBGb*ra_wMWRu6+(q_9)y1lgFXzQ3R>p*xyZ>gI?{SyHh$Pnc5z=H|M5|9sc920XYn6Y0R zr!8K<^u{|Rs-mrYKbd~*>vIMMjTk0UBe8CEppKBW_HRESB_(A?8)+fG0k>|KkPu}? zVaPtgr_LgfNhfzvs?}*<64yGk;?eY^h;@Q}f)bU~aG0RF`kkAnnrpQT%}`SCop<;` z3S1|;%_I8RIIwdXeX6@KIB!ls#qZk%X&7Is8Ds80wMNQ6I-0kD*rH_V{4OU!pPxG* zc1i0@sI!{wblnc_(IMnU61d^LOKqee=;^* zN{JG#o^QWcF&t&y0rU;iK0p4Y7)EDclE4uny$3LZJ0NWAa^5|xD>(GfjJVe<_*Mgz zBbu3+)p%Q45b|nPZuEP0S^AErMhjy=(=+z;EEds@5yq@clGdE)<6q8qS$f9{-Wp^< z9<>5(NN>L#4p#(o0V96>@Kl(oieFq8tu5UVR5n%NHN6sC`rWJ2vtGa((UR~f;rt3{ z$*1^vg+Q9Z3YazY!C>yJygVK60iW~{ay%n=@iF-!c3b?X6wLGa{PmT5aGG-5 zO^~bBVGY{XQZ#6BuQG;2gc1~kq;<=XpMzdAbK0Z;9x^T15qfv zc$m62LzVSk!D%O|SRyl9kR@>p#KZ(UKi0JZgHSl&%su`EP8WefgY235?9h4eDRq>6 z=gU&)JIqYpDVYHFzk8?7{J}$N1K|#tYj6ZJi6@Q<*a&luNl>hi87GA6YiT)q3ympC zEXbuIh9yiV{`mN~IB-2cJ5KR)xf{%tAp48!bt%n+$%38=&umazdzrgKz{COUxhQ6m zX9%%`belj`*_nK2&Fjrz@(jWo(KRQ!3)2rCDi^u7Yb`(gaS3i*zyCJ1+81aHu1UOf z46t+snK+$HI zpbA|pr{#h4Asu`4{4Jz^hoJ~$^s(XTf#@QMfPL}IxL7dP*1$?U0;U^ymTiCsMwc$R zzg-?1b3jHgC98hjg?+{WM=GlH#~qKJi;;#7sTyp83cv@?>EbSQ({udq2L88C33Ll_ z7AVXa?+Rct5@oqiACV$n0Rs;R5&%+bLk3UJ1j1Y;oL)Qlxj1^KNp?xeLc8E`boHN& zcC7>m%)fPIN$Y``$bEwzo9mSnfC0d@v-YLi^}&qj0_|Z*K+QrrfGzB4Z}sg`WI7b& zY0%LpU@$FOIL~$eHN{aB(VuO9z#qEG^cP53{`lwINZ{&_5X>>`n|c3kcNh$nNQ4Qo nKqGZIMBxq)qJNT!=yi78;M72$2PV&9%_z({owIrBSML5B*gHbT literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f3f5be0ea500f7338c0f7f087568a4b2e4647759 GIT binary patch literal 11107 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 W@7QM5kQXp!6k0_~Is2m3z5f8fZSyw( literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..631c32e1c075143f0e62aeb0c067518f92b51760 GIT binary patch literal 11924 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..770d3b23675c8884c6a44263290e23ddf3618efa GIT binary patch literal 8627 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..26c1bf1626ad336ee44c8390eb07a54fe63141a6 GIT binary patch literal 13100 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%0Dmir?mUK&ng0=L%k9Z5CF0e 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..49abf41d3ee0378e7fd5882b501e4ad1946fa8eb GIT binary patch literal 11122 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 E4LciAng9R* literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..016c0c5b0a2e71b57e02e42a61423174e4913dcd GIT binary patch literal 10590 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 NtE7G@>w?L{{{z|zQ>p*} literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..568d0d32d17b3f4fb63cbdc749aeca26e567efac GIT binary patch literal 11976 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 STELo7O4sjR%T;*b^FIJp7&6=d literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2e8edc5120c26cc4bf5c82cc9df0b2fc89c82717 GIT binary patch literal 10517 zcmeHtcT|(>mVQtaY@i|n(p0dbAR=9eiin6x2c;x%kS;a!uBaeY5ouCXItWn#0V$y< zNDV#GL3%Htgph>UId{$d-TPbjoS8MV=8su()*{JTA>aGGW$$M{&$GYhYIl|P?LM*_ zfk5n2zIj~(f!OAUKrjq3?}Tr}Tl+@gL)uC4o|C4XnUkxrqbcH!v6KBnJEw=1za4ck zb;MZO*@_8E2#cLNYT@K$kC71(vHANCgzX&7MewWTt1!qe`u7lAaJ<&d zqbab`Q9Q`RsHblq>h8IdGGnD&uVxf?j}&+$I#|5C@kUndP` z9F=Hc%f2Fq-Me=$uR6lM9_2JyX;tDsBQKAttaL%`5kTM`!*9+UJ61_(fL%scJ>A1` z$$j|&TBQ0Ea|PB2E{>3wd-VSOd#}s9`V|9A?mC=KOiR{F~38KZk{A zn3|5=!PGZ2h`Y`kgmO#XWjl3O%hooxIZ;kFLGM*QS^El60)}`K~}f-i_I&+;(pr`f`S&S)17)aAF5yP$&)9on&QOu z^30n2h`9#E@1L`snqC~P*86Bw`L=7!vG@=#Z%%XbT}4I3eOBBssy>Cn;wR)MY1^l! zq7wZ1^XJPZm6etC_4OK>n(Z&-RL#xP1uZG0C2I53{Crfy*z#A1e#SU8w8&7fL79hk zSy@?7Xz1#Z@X*lCSTXZwqtbo0gaAVD(w_Kjz+CdDCF4Cs2-q zg5S6!U5?s@7?K!U*F`8*Woc(SO?RB>?C97lg-uDho{*4`*b5PG!{RAyq(bci7E$x< z+i5|;>vMB+s1bOh`c#bQ96Eg1YKulCuVQ_3>Rz2Ii8O?t&3}uTkjJ))UX4ASoHMq-Juo{ z6de3IDG8gOe%Av@YUAFo($W zXx*zLvMwLy%hplKNwl8AuV3}HmiV{cIgHfQO*!3)c%PgsZq;#`pXUUG{}1LsL}Nok z`)eUxEj_)n>Ft@3k%u}vJKg0u+q$~ahKBGWW~i@D%B=FFw-dDSrZ)xdL^D$}v+0(1 z3K1#%Tcp~E6xbdQIYNU7?gNfCgX8NOfh8}d`jPmq_=@)p3VciVo2yCpV=!`Cl=EX) zZ`*ds1JdG zfycT}L7>c4Eo@(`3FWr3v{cv8i84PYC3Wxq{rgr{R?Ba^0Tmd7{wNb~I3@M>_fOBy zul2bW8=$8*{yiheua=h`6_u1cZ2>>aQ3v5J=ZTw$kmt|UZ{7^->Fq76>Fw>^r25s` z&*l9?E|zx?w<8dwh(RVJH@6~yht8IkAudcwzmi|S#{R_`0vub)19wtfbXcfSRN zCg&HS1<*&Kc%`PMo{^I?eEs_M^z^jG)vJ#LExSLP#$B?E0QfxNO+FSrNLwpRM50UG z)K94;naXv&;)aRn+Pg?tOu3M^^&3P?WMy}+#L2>lj=<=z6$_h4N41N#|@OdAg8-1~HG$BrF| zLe76rKAiK6jvRS1S+B$;Cn6$Zg+jzzH^)o&e6e|Be%Hh#d6`Houphp50;=m+{p(wI z@6xJ-f?>!<&3}}h)0j7DX(zE85s?WAbK<@OrS3h2c1gmh($gj(C|{~`8Fj6fUf-Wh zT!C>Y*E6sji;B6ZvaEpt)c2YikI>qhn(4+^F>l)uCz;Lo1t%G~b+pISi5!DsjaR2s zbu2709{c;Rifk>5KyAN@vxf4laez!mPKclwv5}N5w15fI$B6ZrU#>P^Co8{J7o9XeK_1UPBymW7cce~6c&1h78Vu? z2@B`qZGQdwwKINeb8rjAE%C4=QO+~+)hhvIkD*6QPRpapHUp&_X=r}mG{6f$yu?l6 z=wN1;0|UKs|H~3AU+5skgCd^DEH57r!=FDl=|EMSnW@cpEjE#-W%E(Z=dp8Vl(uqQHnEUxjA>t4_dun6j?Ht1r zo#Y##Z5^4K&ZI?S>gXwCYt(stFPC^Y2Z3Wpw_OksQPs^gP`9+qjK7<%p`oFrt2?pr zR!Lv~4WYBtoj9HerJY;Sw&U48?n~Zer@8(TU7%abjhUI5>dMN`ql68!SdkPp&GfsS zNJ=$wvSg4tAIQ%SID2#V#Trhu$Z@q|17Sem?7Te8Js;lqB3i+*!Bg96|3-?2Fr_R# zHbp3=fXxZlql=sCbfsZraljAe_m}wiL&df2B%;u6F!$TH>xwsSoD~pIXliQO-aJ_5 zS!mW6^X|uwn@x#w`b;c5MV8F~4y$u^zWPuKj)<9sj5jA_fBEudSmwV4KCXk_x^V0t z>335IV3}%?9PGg0<wDtF&k8T)q29RLB=C$*};u4 z7Jm7@1wAPG?7X~l#h_fgz9++oobE7Ub>*CkN(7(htf=>b=b+}TTR~k|G}g|C_$Cp3 zU_JF8n8*#QI@nKzlO2RTq~oHZqPutPQup*MA-KUC;1s#5|JFpST)FTdcEe+s-P$OPPMWwB*IBDzXWMyZo zK#hq=F>Q#lY)er-D>5YwzSyn#Y zK_(M$xnIA^P$zt8=|EvdgB9RDoT9)U-QC^4I*tY1Qc;2JejO3<9)5;rlI!W|ImAQR z_}=&@*yK)Gs)aa81?ne9Y!v&tP`Ph!IF695Y1#%h(TH!C`Ql{R^NdZ$cs}lv+U`Z5_PuUtm3%Z^q}l z^OTgrc+|bTDE9n7z5VbzZX;~FKPw99d{6_f{WorPHk40JPu6vQ7DMaG(O;cR4!4@? zDY$j(RvQtI#7bkvEx=De5rLp&bY|;X6LJkfA9FuffU{rB1Og5PFC#To5wu6*r=cMu zz!4~SnRuJHxVX}B6%7}cF9a{p*XfBKx8UMV>iQt^axfEIEcUJ(RblimtOCfeDW^5* z!6_$?`K=KoE%};)!fK-!eyH-#&jM3zd>;Jz~09t+q^QNe%h+zV^RKpGCOH1S#%|l0yWVN)Ym2J^B z$tAc=Sva$`VthozL1z~i4_gjl1JX1TO#ea^csSM7)vx2?vcNmQ$MnwWC@A>zuqY+< zO7XA&ztcja7h<9Pn}W{7Z;cDp%l5y z{ye4}cft7a$=fkQt31ZW#<03}@AZDk&%e+1F;qd~^0L!dJv(4g{gl&Ls2|SG&WWrZ z`2_`Mq)5a)am4W^O=sr<3ERGmecTcjsUS4{V==SUR)rBp}1`!QLFf2v@76Wp{@7-Ts=%3q+yD|`c<=!O++1S{* zxH7@M6PJ`^mGWJm?~fBTd3IbtK-_cfA+MBu1@WG$YB;24dUu|=bz_WZP{9f4eq}?%pVmpL}hU$HO@H|QcoeN&%X-P@l;^JZ%=jlknDIgbCHa4AfLekZx zL#0e032+ZO3-T0X-2;j9Z3md)SPoH6K&?1g*W52Qy(g6&OZso!yxB6{nO)#RCBGS; z7#quk!nV1-upT0}(xN~Y;!stR@D8&-MZqbXfwU(;a+TZP`Mc7FIPQqP{F!#*pVW4R zw1sr@RZ@?Af`2uYD7&BW8~c9@F)ldJ3we2(ko#Xp!epO4=!Y$#odz1f83GI{tFTb_ z)2C0U5qOiqjNgU~O=y;%kfp!*F4vvXE3{3BI(NTqVQ}Zyl9JB;{<-1>$70*D3or`h z+7$x^9$OG0f0$P*~Vn-@$_iZ`i+vA1VldLO6Ny#<63^tnBR8 zkJ#DS=^7XqB=vp+qsNM7zO+u;T*xjj_o-Ol78x0tk(bwwDX|}}ioSdtt{&VKh}g@@ zs%vGH1vKNb2{0~jCLN`CK<3#?(Sg+4yNp1=|5`|J9cZoeXA(EAdcr^eOY{F}prB&6{-k7&A)9Q0Zf2M>U`y+90rR@eT zYwPM-kJNsEK$1hjz|Gx6FcEST_u2kt~wws41n?S@CAm` z%1@s@J$vrlEb$Yt<^D@+-`G?qpPx#c#Q1>Mwrx~sKUAJ)T31S$puvDp2tYs?_^UJX zhwZ5UEc5UqjMQ*KX_%fbS?J18PmTl~;5y)LF2xGlT`>XW;}07aKH!5u`n(@&h@ScO zoUOj8NgK?Uy9qL5vBau9B9q@a&|2EsufzD{vP4a4PRq*bCwVQ`-Q+zC0|)MjLG*n# z4c7T^@7?3a+nVB~H32t{$a&}O7>vz2djNwL4JNlO3F8}!#q46 zK72R_b#t}&j;7`-sFP(ipY!tM99-x7q@@$?(v=WjcvzUujT_H^#N@jz{d%+3-QS-x zKW~etLW@K>0-Th#T8aIx>#N4yBHOC%6Lbq7V_IzE{TB;{Wtfn?SW&ZkYy8Z>5U_u0 z+=Tl|bPdKMbx^2We##J&WaueD!M*cW{Pg!5PR+1axcok#JQI>UDFChj>%uD%Fs>`U z>KYoqoV8o$TxP0SksVKVu^l>eXteruzmI`%G~kibaMccI<7{|Hf80ND)GHKYPx^aP zZGfP%6bq~^CWiCrlP4KvW&PHrWo3r+K9emQ2Z!Vk1y3u4FF>>w65;`;BJ9eV*<2&7}yyLXjh<1Qs&0v`>iZk>=| z38=O%7wjYuJjVy2%)ovV<3=2domM7WeSWvhWtjto{*#WdGOVk3i?;9O(l)U(%(8Qy#L&3xmU@V49y-Z=%hjGunlOUcbVW7dY|CEVldsAf^`{|xPTd4b#zCM zb$uAGY~+gY!iXF2*kFpoTFGW8-&pUO`7?Se0Ip{X0PEk(t!WfNkT}M*H1D zM5pKGv@J3gRP*RY20bpI>ohTwYQ(wGE-lFkdNCJ_(aUI6XBx$QP?*{O@J;L)u-~Vr zrqsb`BlvFYjuNXl>J4?)47!oyxh3-#p=_DaC>v?T#oa{G3>IfA7`vT`B?iPs%*T%x zh~yb8cXWekqSvyrn8%6*#HIO{huyzj6cf9nuCAVh$E?lX7pRMu_wKRwYKS^-){}2p z!)YQi14FYS~XUfLw2uCeh_ zwocAP`U?g&t9r7_3`$nboQo&l*4D%j|KQfcy|jt!(llW7#MwN&N2s%tQw*pB3>bta zA)>v7c9QD@p4jJsffs;SU4n+twCi~h9Od)#urLYFwb`YI#2*6TF%Vn$5nnG9b%}f; z7N)eX4#~~PvTeWr8pxU$h)@i8-^4C`yIAOnU?vh=C_@*L<5i-^IVTh=ur6qk8C=-xjiJ!Eybz-5? zVt|KX0N*sxXge@`2@~bHh9zb`q-y>+2)Q>6(IRic!dTi{Ta5){qtQOyVmr6kGA80h zlXeb3&jq&qB^*wO`)a3d(`0LM6GS02PP`T?nasWiv4bHJLmz=Y=}VH5+{)uamHvsM zq$KQe+-I9!2{F_9LwGb}i0F7~G-^2njE%-8PoBg~Pg`LiX4-pttU$c=Ea;(pHcZ(L zA2w@iYr73KMH+OCvZ|^i=n}CSP7Iaoj9DDIDo_Wv_)(qFX2 z0OZ~|q##KSHg|ccmj4aJQ=TlhydFy~yKyPpkqiq8)^X~%qG}P2y zOq5p-x5zG(CJzh@i1ZyUOfQ-LsuF&AInZUU=Y+Bhtdd?Qou)LD+mg06lIR{-oPabH6a`In}MKLCCiug0dG`^ z0GCWouc2Wo2e6LkBVunz6I1BtzH! zR7lw}@^p6AhYuZaiS1Mj$m61eBenDmgj_+bhx16khl(U5D42rZ7#<#u_~y>_cIRf? z@=ufSsaLA<(6a2mrjkM+@Bo+-1AyDTRSba(UUO%%ahZSeDvsHP)=LL3dze45br^c0~)!`u=Uv`CHhcT z_!qzDioo+N(9>-JrOyte03w1I^`&<4D{pf#ARIdf#|(JTcAe1kjz)PXgPTchP6Dg= zM(B}LFeL9JUcL_x&46m+Ta+F`!UkM4YvhF5JY77I*iP@uLH7=CLa$+-3uWm$_8gvU zmR;z0w4G_xrG&|Aj{=;D4i=Tef%Z~|U;>HIp};CPx+)P^-sQ0}sZNh>liILO($WY! zPowy;H;Y>mJ8j@F_3|xV(qpkHR!oVGqAS5@%C9}umQXrCV3EfqahX5}o05=d*j8vp z^4OOEVVu$*Bu9bAJlMA)ISSMU=;!1kCcc)(JN6tpcEIv8kyky#lM(K|w+Jj$`#c69LbjO#>P3KyDF{u+6A&xwW5un*qMX zuL+U#FqXt^gwj@2x3o0VZZCxlI@I!#H}Jl>c3vag;KykIhxQ@2CryKnTyRCxTa;g& zXI7x%SwStOKVo8KZO!CGTkzf51mn9E>}_X)p=)MN&RiGEVFr;OoF-mn%s*2>r_&!) zQB?fyr|anV?pH9zcDU*(DE47w$y4LidLgU@JSbGEw7)O}&0z8~LCWEpd2>7+PGn?d zSF8DHY7s?W9~oCmGaFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..90c4db4a2e2ae379e34f3619eadbe11838f115b2 GIT binary patch literal 14166 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

    G0>WRB?x-FO>g&0 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..563306ed215f2f4cf4fcab9f6d3ff249c59ad235 GIT binary patch literal 11994 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d7de0068687c153d6962d08b3485cda4cbede5c0 GIT binary patch literal 9254 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

    6OMctdBQ;6a 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 Q2>d%{bkZ>W>kHTZ4J5ODV*mgE literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..147dd6d86e80fc59b8c2a1dec6ade924949e1bd7 GIT binary patch literal 14185 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 d0j%g9`XME>&h$)Y;kD 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fcee8442f204b500516cf8ddee172bbedec23045 GIT binary patch literal 11968 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..aa4bc05f73d6f6f6003a016ea847f0fc0b038c9f GIT binary patch literal 14190 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 Ch`ks9 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..6b8754ed8a67d4c30ad5f90f8333354f81ccd7f3 GIT binary patch literal 9320 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 sk0~ zyh;VFiLCU(Cr_R@EsVAIg6k*Hh=EJJ^3sJzhyf?GKt>cYnartPdtwW$v`{X;>V($R z+Yg1H%bjNW%X@uCQxYsebFXb^h@W(7ke0Tf1O-+umJ>#AQYF2wLi$$Wo5O)T%XGm=n8)n}+mj3_n<8n0ml}#C^O96`{dHR$e+4<=1@^1df<_MXzkKmxoDRqd^LV>n zkP3xufinbisEm_9VNUBD*7jt(_B4I)x#mlp!I)7g0;^8M9=55~nK$RV_-#c-npWmE zcwoi*bk6}qZ!&f#Ad6&#V#jiZFn#0;;PqXDxtUXtm`vV{cbNQ^4N;K zNv`BS(ARsdH@d9ts1k&;OA8&w_Bh^3TM>>sh-(EF_ph<8hsDX9iE2P|Q7=aTMqBQ= zRBdz*%}OB&bsDUH*b9S_r#h@!p*5Y$;M&0lknB*tf&waa0-Edv6cvRvYZiBxndblWg@KMWqdAYT~ihFCdvajad&qVR@cDHNC!#4Ejw z4LU>ePP~5PUORBQz2Nu?(IWSUEiHO1V{p@+80du-0pwg$(m{`ZolvUzD%2n~JjYDkh$f zQh+RV*+TXNP&L$E@Q@pKC!c4=9GL~sfOx-Q1sp8E8x$Wxx)D@1x9DhTx zdg1dao&P zy51i1xT~kf9=0F7i9sGauwU5i^MKKQi8zq>a_Hy;z*k-ZKoiw)zX3@enNCKFV`Com z;b790+=m)A^X_%-ERRd&R-wT;baWed1fboA#Z(8R+B7^mfWf%Ix!0o}1N?9#1cpke zZ86@ESaBK`80|N=PZ8d_b!+(=B+e}Gq_tnG{evfM$5W#}2%(V~L9r7D!Nn{;<`HXnhY*b+ z7#hsKj=5lNE(R5GUEaL#ptN+ny!jLV-=o6HhMpKP(dm}BOWA=^7y3RCOOFcy8qlSU$Kbe|}@a6=0d*J7zib;Jq&V(6fay~pPj2yVOIbZzt02_^tsbCn$Ebcfz zZ~C2E!w-4_A6Zl^7A6%@!Mx?*wp7YRUd{6~wG|OXQd6=Y= z&Ji%+8wsJVK~Twrd08`^0j>(2*nN6&T9A_neOj~a#~xK~-goRgW1{Zn@v4zo578kV zAha%7gJ82fLw8&3GR4lhLG1D{T)Qt-$h9vbl^Yr$m^OW$-@=$IXjqwOb*7L`YIK)m zYk5nO8nxJ=V>4gOu^=hTK=@b&9Z#@~2Q$z#NUG6r5uK-_k_&{$QUNZsEjl#t91Kj2 z(Luz`)?_hI^D&Bn<3{D^*fWyE2-0eWo~_OdlVL)ije_41IAtIT&>n;-P$bNv3_t{- z(z{i2GRF%W`h}6RxVVTCojP>9bQs|5*l8*BYdEh&v5{GI1NZ-&8=&WxakK-lR||f7{W~7LbPyGa(D@q3Y&=K5|?*BsyiR?y6kGviGWhgPQKHT5M%N0)e36ydR_#Rz7nfrUQu;dzNs)k@YEF;F$q(a{V5_af?lRtHU5735O%a5ox(!b zm?zTHPV1na&vW7;5i=w-zxQX!nO6x`5l}nFQDp|P1DbH@6as$? N_0Qw;{&wx|zW`Vdfnopv literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1b1c10529bed03845cccd001e8819b0c1af4d097 GIT binary patch literal 11985 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 nUy*s|k=vqfjVj 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f3c828d5cc92140325080904370a0bacdc777141 GIT binary patch literal 15188 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 Ui$8o8&K`xnsC6OloYkHG15}%*@Bjb+ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..215eefe7036f4ba43336db4a071014ccbecccef4 GIT binary patch literal 9814 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.4.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5dc1ce31c1d31babf3d1203d00103d711684dd85 GIT binary patch literal 13096 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 OQc+SrpZ&YVo&N>-+Og{Z literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d1ef4b02f4af0825e81142a797ba681bd9f0b29d GIT binary patch literal 11997 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 TZ(acnh|*BgzEGfg?e6~omarUu literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0037dcecda1720f17bfb30e103327132448e2d40 GIT binary patch literal 10284 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..976b27099ee217adb50d97ddd86c2961d07cf893 GIT binary patch literal 11980 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d3de6b7bd1cfd34bd8e68a76ffa297c605ebdeb4 GIT binary patch literal 11093 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..483c913e98505007533a20f977d416cf30af4ef4 GIT binary patch literal 11975 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3cc91dc31e855406f33b3196b4c9a5b35148203a GIT binary patch literal 11913 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..30002f4acfebbd74fdc04649f13682b18e3be7b3 GIT binary patch literal 14221 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c55e663e36f6d37f9ccde329e8ba301780c7fc89 GIT binary patch literal 9301 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8a87a7caff3929ed21d4a693c0f6e6bff836751e GIT binary patch literal 10305 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 E08~kBAOHXW literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8636a62e8a4c364ebc4054411ae9dd898e6e9576 GIT binary patch literal 10622 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..7de0cbd57882e892debf86945d520dfdb4d6dae4 GIT binary patch literal 11997 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 CCmxId literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..522e660385b5db685b79bbfb4e8cd48cf70ece30 GIT binary patch literal 9817 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..919362f40e176d08cd20808c3cf6937860aed11f GIT binary patch literal 14208 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 lvw7hp60G~@$(>UK#JvCj literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..12f7e8e04f2bd93c179ff76b44868ec0d6084fac GIT binary patch literal 9922 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8d43d865d45a76edc1ad665ba7b22d89b9effff9 GIT binary patch literal 13121 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 VP}~Z61hkqtiQImbk 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..6c8885043fe5de353f2887763c0eb154c43cebeb GIT binary patch literal 14201 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 VnaBP*6@YOl^cBs^g%_{i`!B6RnG65` literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..11a0b038868d4734f8682230fc2c182ceb5dbb20 GIT binary patch literal 9656 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a1317c5e9d54d4cf761fc0fdce1cd0726f2134dd GIT binary patch literal 12034 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 Y_6)N`_)GMg!9AnUa;i6Su9*h@2U`7GVE_OC literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..89af76063637d3cac7a47ca751c5542237b3ab7e GIT binary patch literal 14175 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a74a4196ce82c5d13568f440f243b579f0cedbbf GIT binary patch literal 9915 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 BGF<=w literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..766b4b1627fd428ee2ebc8ce8c3353427d7e442a GIT binary patch literal 13070 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..eb3e7fef19e127a099e3f1f215e5b524f9469e99 GIT binary patch literal 15222 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ac813d555123f0f7312c2c73d61a14f821cba80b GIT binary patch literal 9803 zcmeHt2UL^!w(p1NU-P6CEkXtHL;_h*XJyNDaLv9CZ++#0sbs1r-DV z0VSaYP#_8lA_`I?gd&h4APEpc-u|5P?mg?RIpwXl&Rg%?^;nDO0`eu_fA8P^m7Vxs ztSr~9mS2q^$ht#+GW!)lmc<~5*yoi$z)$qr`-b5k!yxlhK{kHwL7`^?+>oPZg8aSx zg1kLlRYTkY0zLhFb+z_s>1wK;3kvcNG}6}g`OiPl@(b|LZkwge!bMj3|H&>8L8Q*0 z-(q>VTu%hqPCaCH;CNU%yPxELV)pjjl=`Y|yOtd=-%$4u=vL}# zFRHqTJDHZ)sB}ror>V0v_>9+BFZJZE&L1CEW@qHzDk<=_-2CKGseS6s)jjzI)TRA- z*OAk4zxmvIJ-^gG&VICGqfEdc(W&^hE>k$19+_1@zpJm#kImL>DMb*~&5iTQ2oh7j z9T7t|Z2kWae{}}B+Zf`C%@L82Og4p)jM-{ocI?0(eJD=F;ex`Y3MTcyZ zk*V=B=2p-AKyZbIv)wC3jhdf6=jj>$+Zx%X%HT=Y_YV%~`1CycRO)uPR=^;MgeBoK zqkX&=YqZS{9XhngW-PH)ttFAY)YUr>**&K>mbt&ZGCDe%WHa50@_^^@9W($H; zC=6nxL)26w;nSJRN_jeBh~(;n)24MxPknmJzl@K^H#aw9CvV-lH8tI$EqcxDdSWN7 zUH$dvKB9mf*U1u`T6II>72d_T}};ufI4(VV`-TA zCJToPVST#RyU(ZR+qKajkXM&4tgL(g{(W9SK|*=7w zljGtx>$*40O)+zxKY!jv_RoKgS|9QJykU_GRiJ5 z-*>Xe;kLl#Ra25e4wcGX(Kb8TMVGcV!Qkd!TTko!h>(7MYpdMKUpd?!J1HDlEAb!o z%U#SG`YHnPaHm3|&&T`|TzlieOVVmBrQ#+sNL~Fy)dBI9NF5Cd_b=+y|9kCU)+MC) zF_Z&G-^7>T=@w9rsOcM7i82}|*S>#-AoDsfW?0%SsoLa}l$2AIL7pgVHfcL4c04+o zfF5O<4t{_l;`CQB(*s-Mb?{9MWa76RIUF&ndVch-&iM~{^(xAU%X*n3h}P+6JKf*j zk$L;}Ee2B(H2ywpZtya`yVPy!R&mrwv_RXwTyr3r-+!tmB6zKm(NAh>=g*)2A@D2` zQ@t}zMT|R8W87KfsBrY?(Te9oLqq4zpTEN6@rdO4DKbehDJe9>9|WEgM=@P~aspT?LKyD+-{*fq?-zUH2n>5tD_- zY;9#ba;?e5#MuJ$#>B{;K0ZlTu3YIm>F8)0CoPV!R90YOaxBTo*RNmy!eX(?2D-a9 zpEz+ssH_X`&s_i)$$A;$a&@B_ z0)?<}baVtvjda5N&nYb2Bd?$!Fm-Rfxoc{opx6Qc=gYoj>-4>%o}Qky^qaSCHNLvG zRp5;vm+t^PUY!$xk|4h>#bN%o6kDxe1)Wx4`R;@EnXW$|%o*ysrF{z|<~ny1z)DJdPZw^z`x zEqW8Z_bjt1>6pXf<$=PYqGU_u@NKlYM(w6ux#=62bTS#{XQN)1!;Rux1lhY2#^zSF z(bfzFfIFM-RdBK}f^iy;$D7O#-;fB~jl^6$T)((d4vC5WHxmLjzlc%KzP_IK_;LL7 z^mLj@c)%08GWWV@Ae+{myLV5N-AYZB8bZN#?C-HoOAH-G<&XRP2GV;6qGsM6NS8xY zaetR=6uzcqXJ_Z-=QsO6+g~)$LG}}&fjEB*Br&pJwwRQicq@+MZ)+2?QGy62i0NvRH{goza!#`v)&KJDz7B3hi$0pyACcWG!Ofb!vWBZ#ElcUlGV+Mw&vnz*pA0OT0gm>^4U%`ncXs4!Gh zbAOYDL3_8evokJ^%Bh?j`qp7hW|DE(au}nG#Zi6cTYW}iTQnzdK1v=zBpm9OfBrV! zfuHOwEODv7@a4;wxSpP#QxySjoQqo&^nDYDhHwsF7e5vgWl+Tc$7-`k=Ds# zCnafht2bRX2qL%9+%Cm!UU}%3j~_qEz!wbbWbtX{=R3tF)eP>9gY?+Rwif=%tD#O3 z9U=FeB&5Faxd#s%sFqj{fKmVVQqF%2n5^U~{y=0-Ufxcv>aQ=vja8Al1NU5(`Oi;} zv_rwx$Z919Pj)swICR6c=b2}TTT4ofGUd$6Sn9$=0rQP+o8p5*V#ss>Jfl6^T*s^P z392dLrPZ6>KRk^8^z=-LcXz26c^u?ai&m8;jrY8`v4pN{9M`c78MZ#K{4-D-p55~t zRM|~?4K1zYM~@zz^Yc^rN}VjK(rQZFEN$yRXmm+jh4}v>cbzN7yA0yY96Igz$&)<0 zVn9r)GqHk!&kP%irwVz!%!;wh-m&ip;cz&8Y=DWBo;I={E7KrTCp7^AE1^ZZ*2K4p zT`p%D@eQle)zc#ng|8^AtXx2>;ALDk!e9OYI{0i+k5_Rc2+pC!nYOmVSsoAc{naf8 zU4;v?ggyejhD(L{Zh83dVNQsxZR*P9h@>Il`{BcfD31X&E1XB(_x38l|8zn*eS9`) zC|aC8Kr^#9X*ye*$SNwR)^u`GR?i6fHH&GPBrk)Rq6H%{Kim96{bul* zVzLbR26IvlgT6H)X;=YMa{gm}jdJ8zMkq)0X8`ffS};1cSs=^)ogN3>z#0Un!XdH8PR>`qQy7E%eSo6G>7gGW^SFdUXQ(0w&bj<&hW>o(( zPwXjLJC5Gjh)T0P_T}HIL>Nm&jI(gUHm9b>lsJ{(YzB4sNnfA7m2C3ks~h6T+M)}q z>dX^1H3B1L!+hIel`eNURVxW#(^%@(vd}MLm9-_e5qV`gXI@+~;82;a1J&V#=3TiB zAfa{sa*367{Z*m#p66aUk00-%oOEzd1c}x@FtDUfZY$Mp34*oYelkq_Uu91LX4kVjx zfkC06DsdR_Y4V^v|7lQQrmFZeAG^Bf1iF%Je}8|8YvYxW*JjG zW0Y1dK5G|1vOBVlWs$wGKGdyy9YVY;5eQ>M#Ne!iYO}?`~Cd z1qRk3F3z0;-xU`}nolLguUNCG0jeMkg|6VQmQ=x-#7e1TQpUs(|9jv@t+KGD<-Yy$ zYc^@df$GXDEKItkVLOVID$ zJ7i^zLyZX%e!n0wCcD!R2U=7(8r!`1Z4JJ^GFZp+{e!f9KBqxXJ!A+&**!9J_JtS;;t{7n0Fw(+xm{QRSqk*y{ zOgzpV^<{)HlL#mTKRmXM9u*&k+5mc6>#$AAgYd}8|b8HIihiH0yvM^DiOFqMbeZk3FEx*KGpTbrBzd4 zu1&3s+0W)$LutCdOQ$XK$}Xf&f609z?aBHpXTjyCLAnJA^mrMhKhMIx)=Nl4rGr=a z!r`>`50v07&CEbbMPC}1=ZuISiq(kELPSdb(&l+U&%{gp`gR%dv4N z%6k7q`o-biKVu~rk=z<+B-W_>?hgmB*>j1X<+fwfKspmOEZ&&FFE2IDdd-(tA|#*n3)0Zyh%6I1$xQ3 ze}4-aXBvlc5+SXRi-SDVB2fj01yTf70kx|WJn?}#{^;%y#5DTZWo7iWAX=0%VOt;3!-8e_D^Kfds9}ofgT8n;}gp zi5Bpp$PHMd4^B3|HM5;)VIVz4*^@>eR8>U|y=cCr!E80=CSF#K*a`WPBI?Xw$g^j; z#8`1Q8WAqCJa7pg3vB75Z|^c~YZpFl!AL8fF5U$>BWT#MD_CA z3t8G#Zu_g83-fw=6{AWu(d0<($8DnAZm;5+O&}tYbXyI!GIIP8r6Xf~v@rJbE)*m% zVV{HfSd?tQ8sBuXLC+6@$@rO8W9_D7rMp~$!Kt%P$;6qvjI&vy#j&!SWTV{>=C(XK za{GFrUD*!)EULj0;=CKL$aH(=W~8ix9654vie3gS$$EcS`z;W33goVC0N&$4K^bJMada zNfBRhk=a}8%=|oa%*h6_+cIs^d`om^xp(*Vb(??OCLoLE$glwQ21D3AMOVp!@Xih2 zl=xb!@=LauM+Gz4xD@Km`m==cE2ThA#h5$fNN=KrHr$2!BhlJ$H@ptFk63EbWeA)JL&A4h2BwgC(McfFHmK#!J3xkW)Y20 z;a6&@68)0^a``@Pv=4)3S_S5#6!u+4z187?Z@?~>9~KbBMd zC~C}@@fy1{MIKvHz3OHc(z1s#+?h#S7=QBM!M3Wg%*fJp3j5AN9M|$a!}$F;Ax?CM z$f6qte;Igy9bV_oy=paJCZbj7Dst?`lTB01&CnO~o*8}H&13hL!D#UY{n8DH`2KEc zg={}Qw|1Lk#Imc=)1Y9D6pVt-h4A}B$2vo}0~u%yP;pzTDR`;RM3GOiwzak07xd*F zizeW-6r$&(u+RIGQ|)Hbq&=fK*_cD^W8-K)2g31tz|uruBBIb{3;Du$6SY!MCZa`Ib)xM^ zH&@b_^^_c?0^?%pc3adAKw2h*zVIRe+E+0c)MRY-qs_ZVL9&tv>qz6J#Ws;i5hT*& zMXKVR^gzY`(5hmU&b5ghCzFAqKF~0B&iB!<6{;SI!Mek>t>Ui24;sFBh+< z@{Gk^VGSW|$$s|ir=`i-B@IfsM_VQuZ{UX-;>DFiStazQclQr6$8)n<3)zrwIE9bg z!p*0pI)>P3I@3@W$^`F4hI6L2b&-uG^3n_g-TQ*O981EchEVpxy$h5#3d+;aktq4u zU@S9Y;xU$z6*c{Ou0b7(0YVmXoPks^gViQx>`AX?bQ@3$g4}ha`4(4j(V~G{^aYGn z<2wDm^|i3naRucw)seLnR3{Ly{YVOJCNoDkyoK3Gynx3>!y_^Bu04B#Gq-cz%{i_b z?uSM8CbZ7l(c^~+U|bvMxTPs7z{3^bMrf3=T^rU1!^U;=&Fu;%ny#YxF3=VhCqLQd zEShzuv%1UhJXZIV2Z`r_I@!K1bo~S>VCu1T^ln(%G4Eei?wL$*B*7Lj8vTW1qXuO0ICKTJ8(i9wBre{x2F!%c<&BMHKI-Lkr8|nO%l)$=L?(NKWQ%) zE2$)pvKF(Ku@tfv20gm%f{7WCMLFlk#*0qtBACk4ecd9um$tE{!Tklw*+9l!X|S$N_nD9FuSHYkxov_b1)S|rM0#P!GRM!Yu`*l|?95&b{{BnPO0Al}1oR=m7ms1Lj| zhaL~Q2{8;DZGh>FiVj78(Uya;4HTGqa|3*uEG+sG)@V^(iurBzBNwY5p}3ox$r72g zn#{bJo1^10?N#*7AMb-W^E;McT&+iwMwO+nm(hZquM^1c^FD>f5(LQIn$X(-GAMx$ zVboxkKH55?B2kAh)PSywT;bJJSg!+KY5X2yJ#ZUq%|P8hs?&H8+a-9ZQR#u`$2vZA zb}o2P4DNA2yrG)pv+0E>7vl0aVtfcTn;>9UT(@o=nrWb`95pqE{?9RlRxwrva`u-# zFi<5#;lj>6dy*~98S|B_#%iKLDm WJ$D>FaIpq~uS4cmW<@`{T=*a16Lv!Y literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.5.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..775bb63f47f41a31cd299f6cdb388c115c0587bb GIT binary patch literal 12025 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 YjFjZ0lfH|O;h9k?S2QjcD&7kCH~FqyCjbBd literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4fb7449107d6dfd986ba7dd0804fcad707aabd11 GIT binary patch literal 8629 zcmeHN2UJt}n!nhvBO=nIh+Uct(xgO(HY&n%PyuNQ1BlcB5->oVaRx(Iks<<77!jpO z?*tSGN{NW{5=?*~1R@|cgzR^Hb9QInzInUn%$~Dn_ifJMa>B{Ix%c~jzwcN6g#N|E zXxnD-%?N^QJN=#h_Xx7)7J~2%ZQKBVQElrVhF_Y#1{S_%o=(2FtKN>txvRcjZl1nw zF7`5hj@~{lo*pWSYKkiIGS_^4y?jn6DY^ga2NXTMot3C_)pKx>Oql`QxMK-(MNt)%P?%*{8Qm zYX$piM1CsE*H_c(?dX-Fk}U;iTolY-NR(&(rPO2GFD|XaxWv!!{JT!gA7=T#ja~Qh zK;Fv@iGlM*RL}S`*RuB8%>-eja3n1JBJj+O{=H-a80fFL#R zcEaO_3jY7$cQp`u$mR7Wu-Q?9YNN%b#w@K zbaa%_7)N&AV!zh%_%(cIZr>>l3G(9nMwi^U#SQ!})(vLaKsD@;uEo0vmJH*Vap4j74@ zriUwSuP;TAfQvi${D*3O9Q*Vspi8(CE_Th+6EmtTz54l%!$A3sX)14pI$g6?K;P5T z)7rPqU^<4h@+*zqFwe|Lj zZ`-zQZFzJ`N{au-Uqt8;Dy?HU();)C4=X9L3;2+&>icGOYC_-l_wU&vq8L$LUY?Pg z8{LsRq|I zJTd*;H0UVFbS-k_ov<;|O2S~~*)-{_`Qx;^Au1d|1rGimP+$sU$AT zIqzCqDwH)E%V?<2vMiv#IYf#OQ*j!eID#NsLsR9O@&g5wtzl`PL5tcVwIr&ZH!~A*baYgP2I(%pF>x!ZuN3RBOIW!6qPdM~>Do0&(z?wD5q0<8T`esw zdG_^T-PJ+(<|Iv((UwOdocT$uDQtz`WSEs_m8xR(B7JY-E<}b5XP9SS77pL75SE^v zo}lbtm}OI;W*99cInkLtv5)|LRtnv~2)A3YPYRmv(bG^sPOk3KN2D~p_ZPeO?T(C$ zEGweZ>DS!cB8rQPgQF|Zj{4GW8ZF^ji9H$JJ}@9@V`CGfhTQs?F0chjs;amNl$FnSFcD-Pha8P(SK(@++uy(6DJ(2pmR(-H9MrN6xht?<@D{tH z&yy^v-tVQ?51&%L`s!ys>5|`}My&1#AF_ec7%1Q+Yn*UwuVI9!proW^P^Z?36R9s= zjN5R?GjHYcT)T2g>0xr-D4qlbmA!`>yUTo>jURq9Vnd0Ii!*d_`LroT3b}GkxK6m{ z{{8z2s;-v`i;G7)Z{qQ3MMbLO;^Kovyh4|D`Y$53L;$dE3Aas}dp?lmARP{G2dyfQ zlc(f}a<>Ep(S`8(_$nhaGkke@*`n&^jXfuP4<{xj%F5c;{VhI)T}IdCu)kMRf)$Wj>az?cx-%poc_Vg zG}6pO^T2giSB4dBxpRlfmcO#nBQ^K1(a}+hJbME-TD6W-Ym(UPXiInyXI|2WH_f0> z>{dtYP}*5pq+p@|KG&{a4`T?&k2;z|zLaCsbu+ zq0SDJD9JX!c)ab+Ps$5Q3JQ_HU_xr@$VuH@e~7vbff$qm2L^OR_rb6`zL~!HioU*& zkB_`{DY}rU)z!L}a&0B=Y?nl58Ifr5^2#aW#N$UUU%o6$HzzSO0ftA+()DpToZDcf zX7yaQXT5s$bY!6JHssbR^J9D(gw>U9GJzm(SFPRK*OyjYtXAySbDv}1I5kj_R=U_F zqAehKVi#%k%QMCy%+l$=p|#RPm-h7fwF25ZW|>rKml@P;r-5ah9!ep) z=2odm5mu(Jxw?kK@|3djo9L11gQD~|d`QS8xWbEznf7g|25lcc>{4-RCKkDNHH@{T zp#qW8Pv9=kO@A^aoIpFcx6ox8M_9nM_4P?)XJ`Kgc_O0iJ^YC*;o%vQRc0{b4dBXyk$JJn0&PG+R^BtQ~ z3kp<9CVL8)LDcQYu@9iL&z?DB-lh+TiU>G{e>=OC>w+c%h`jzRQ4HdPEhx>W%ZS?6FAbk zff}v49F|3ywGh5m7KPW&A6Hea2XA0M*;}N1^UIh;iN}EQ0&mO+ zBW|}k6VFI=%?Slg*qgE&ks zMRRk~OU{PBlAE4mPrhSYPtU_XFtjo3dk8XEaBoR!NI&7&)o&w2m1R$yII*0C^Yu-7 zr{w=2E^fI}206z1V_7((A%@hvc_x#C80w>SdG*Vdw45Bp@renCx$zF{*t;jFKp>*- zvF_K?F{w|V9*_;5tG~yCHhs&T1-&dt#qa{5DhJa|k`qgqe8{nG5a>)QNt(03jvi@> zH^SrbA38f5;uNgB?Y8z*;c>e}c*{RAA9+@bpS#uHA^#)NJ~HjreES=yPKJU_W<1xKs>k}X(au$spi}xH3N_z=%gw3q)Dkbw?+iaj@DNPaiYq2F{Zj= zUAB1let$;fbiWT3b!o!pHa9M=FbS*79i}i~3;&_{(i&a0U`>22;Xv`{EEkMiiof zfTXO?zK{|?Qo!mdIP|uuX;x?ZChzU{JzHyQV;n6j!DFKI7#MwD9WEnu&=}$sLw$%= zNOMt9Q5i2@oETLGrenMCh(t6TQBasH@B?$T>Y=A115{ITJTAh2zz;42{2tiPK`Q07*$2-zdKCPOE z>`Z^;Ju56c4zb&GPD%gO3=RG_>P(s2&kvtn(s~D(_|g9;Fz@dF!E(3yfUjAEG)5Ps zDt(DbqAq;5A831-=GCRrrMlYVdr)RY9Sx zxm^z+T(hY3$I9E3A0Gs)lzvKoM1Ox)DH8q2l2jxR4S7RIjA@)B8XN308s#0wkHngz z!51-HvHUPC?HJJ{-N!@57Sg^1-JqLOxuo7ASMy+g`OC#|VG3TUv zY^;Xm564cDp-Jo7VL?V)LPEUy((TA*}F54!lpf7DK)L};j*zpTUHG7b`^Q>kS zYV-Wmz@y2&5+%r%?V#X63j^_1jA0dPYMDIe;!q^8r&azBr{|%E90jyLpHu^N!9t-1 zVd4a0LBY?H$8(@_yRzM6M1Ds$&^LjZ*p_Z zUB0CyDj_9OT=l3GIXK8;5>~aRE>x&MYpQf#Q@$PV8yMwxd^j*A9n%aW-&W5ivxhrT zphimRESHia$TP9IKR~MRW?;2N?zp)%)}ZslhvP#_=-(?ROos*U>40%qTP+aM>4jmU z{dSI|TSZk`etI_Esr{KLb-)&?NXiV%t(w0KW%i-!s1H&0VuHK69^i83xg0VN?~x6i zXI1X&0=ruCro1nvmH`0)ogE#jk2MF&UM)bdGScbC>b?ing+S0579FNXe?`uWBs)yQ z<@13Z8-`=eZ9@T14N00l-mdTl^abY0(C1u%tBwDK;M}L z(uI@*W`;EY(~J-a58~WJ7v?h%m>+qji1({x z@3%+T99LWn?16tYc%4niUlT?w#AQIZnq?usXY(}!&kbFKqxRmP?6yo)I5<( z)>VT584T+*T6xtj>vksdS+d_{G-HwSANmo^FySV2*q=0^H{Zr4#8^O8O)*?wQXf3~ zg}^aA=`euF9v>cLr^JoSkz=awx*o{oR(=ya9d1_#!gX+tKayx?)8-0^G1|?+D-3B$ zj!gyKjyGq=sUoBLf0|W59ra*CwgoLM3hl^VNVtE0C)1K1LZQW;97Ictg$+UqQ+J_E z6cZenbfeP}OOeFY!KyGCBs^IQrD$>m65NN99K8Gq&BG5XDo)LIcIT~3OY^Y(fwL`N zuRzhA&qMbVr<~Ev4a)+jdL!MLdt(r$8A$~Umn!*DzK7r)RDrT{YZ3^FNTBbkXACjx zU%Xl;!F__bVxYb602T-flYnA_8|YxKJ|hL+{F)EJK1tm}=M*uB?jc{p_EUz2m7yYN z;+RuD{$eqcyqt-4yfqBnGLjAu=-1L8h_~JeO&kug&B)V}jm5k=1`}qn*;!Y}j?>#^ z53yjL|1`by^Q$eKz^!zP0$uKxb~M};RdF)@O6TD=LT5sGMPe^equ*g}_cc04VKP0_ zq(oV$UZ|ppo1i;yFoqUiV^&_H5x%C+Xx*1j?P(B4lu}?=tD#}}VjFaL4rXusg9mjW zFzJ=Et>I@C%l4xQJMciDDV3R1F%<>^={Tf^jFnj`!IbjN@eqz?$(7ol7HK>#4c&!8 zM?7%lPE>G^Ik1KIP4#?HZoN8rsRdmCbi0mHMKDohkEo8IoiEKDGx{3!prhCdGxx!a zQOhqK0f=BI2Q7cGsPJQ(koN7D4}#_8SJUJs6p4o`7nDt3>?`5A1h4aBoBLMAX3 z^^eP8pOaBQ;$~4d&ZGovNjSBDD*CfZRlDZq=DFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e1ae41f1febb8857cfb0ef8a544bf535e476fba6 GIT binary patch literal 12022 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 WX}XKDAE)7-QP`U*H}d3-AO0_yuP);N literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..78980d066ac0feb01b5e52dc5ad9a4775f93180b GIT binary patch literal 10309 zcmeHtcT|(xwr{Y31(mICnt%lXML+~pK!|KX3{|Pp5rlw9?=>hEP>KeSP7sg|Q9%eD z3r!$&A{|8t9jSrP?)-K+=bkstd4Ig|?ilxua~%p}m}IT>%{Axzm6@O$YKqKzIQF1W zC}zxcc?}e5n?DN0FvPSA{zsyw3;8)PdW`KZXo+x-|;L z{|+NBr{xhp-H&t88o9qUr|$RUVdKMNF~?5@-Rj2+T;F;8q>fNps`!!>#+|jvtn1Uq z#CyNp&k2-dylEch(YELCMWt@@`!e|N?@CD$X5#YCxOX!=a5-%{ao}qU9#hhC2XzsB zteF<(SKRx8N8yy%zUDPoa{O>Pt=O4hLkxGHQAxX5!*&vmck857-y!&Y#frrre!V=7 zVnCtJUPWz#mmZ^bpipo2F)*P}rtI4eqEJ=mcN{~Z{4JQSz*`#*`oquv{lLGBlG!Jj z``0g=JC~HA7m;|MRs4G1GQ9+@{FV^-1ae=cLwEZj;jCS(F?Z|0g7d z{5{m>jC*DK;Cj=b)ymIr9Ov%@)`W6p_m{d$_lAh-m$+nJ3q6{7{OV%?G}?s6Z{>E2 z^HH>)VRd!2Q?a3vs%qy{cfRZVkNO(~Xc_NT{^=2_X<@9%b=$u%z5Z)$2%Qd85Ble_QbW4^<*WYaV+4LZGCC$!5_8ywztb)@D45IL#woym*CMuf=tII)FZlnV6Y* zSv%ZX;yNkrJgUNV+2clWadFRknI|qnrGSkE>0drS_TFalS;TK{?~%iY$3(W~ zMc&)?Uho|eG-*Yze?nW4<0bK_SD);!pQQ<+(SzN!({45ple>5Cwl&6xb#`>5c64a* zZ}Ogo7`C>y-nFyqqE*n!pA%S7$Ji>FdP7VeGOEj0>|C$sCyYH}HEvwcBI^}};Jrm1rt@wR@ICgbDda=qr}=8-R7js~yh3=A0W+;%^S z5$+*1s7~5{`}XazmmHH5{pi-1HcI8D>js@t*)`Fbt*xPP-m2E9@Lo)!&wRa{w;%Mb z8-ehNlZv5Qc6N3xCGqh`-@kv4!Iv2mc{5W|PFkrbDn7|?nq11t&lj^=8*fi{U0-p; zHe$7Pbh1iIdp(azI{kPTe*m@?fD}-RIj@kLn=3czw-7fdAT4cx7x!AU@+>!&xNt$L zcl&++*tocng;idREJ5AK$mp)MwPQ`$QkMY-8(Yhd`tWA&zK0KYKw1CwEJgmT!iE{W zcBQK7=#7HS3F4-bwEIj)tb|R0WfKQRLrW{-*R!{hcs74NDf#x86WL5=`K$Sty1Eu$ zT0j4InESrUjcI!uxF`K`ulMw|HEm<#ycjX8ahnNhI|?PA6}Yd;z`k5N?xMYpg~jWv ztSn@WT*G1wNK10GBDbe}x>`b8U$Jv%XXoo)`%0swr6na56_=WOU*E`$jEt15&6FPD z;>t};&IK!}6qSypBIb@x;-9t;Q~qEQ}P1^uSw`{!l+S?KHtQusLj+rx(Z z9hB_c=R;4QKHcLL%q~{bJ<#5s^6uSvW*%8XC@AflH(y9eNj*qR$<0-L^yrb2l9Gm( zSIMtJ`l;>d>QCre5XIkwFZ3N+NwzDSyJp*8(y133vQeq2M{;;&>^&`E+f#tCD>8r^ ziWN0~Jm5VmgK2|%*Sd8}fJn)n?k&nLFE=_MyOQ+%`}f7gcJ(LghRBkq&98)VxMOP*7P_RTZC_mc|#tC9T69R?Dt=<3w3@at8zJiu}{n2{Y>pB*$TKSl9xKoiy26GLg7b_gqfe z4oc(9nKSVtSB_oTu?^)Pc<6;Y3N0uhp^ckk#k~rXrC&ED>iYWnPE1Vf;b?Dd{pMrY zGP#tvp!)$E)l4h?nE%T!zx;42e!vYeeleQGR29yzJ~14I?y7rnQsVZ<9T1Ytw{Kg! z2YPz43JWi+`p9DN&D8b^-?fhJ?(tx2E34-XBO1`5>ZtJe2bEY>e}#aebG&DY6}!8; zrMwn1xN+-_)t^6)ZLZBm^-gyIIzbM-Dku;yHWY4(yQmHw2W}0YYTcf8`r<|1e9I;c zSJ(FtnwMwwk|FU<@$x=gor3f2(v{yeWRF`j=*MksNV!c#Ukhe?g;c(@+f+*+%Sm30 zpia&W7ncIa-HzVg><16F$!x7JkT*p|MFHhBt*tYCWC{52aOk$l&`=x_eu3^-2MKT2 zN199SJ#^@hwx(uEY;5e_(0Vet>!px^Fs%bN&hyZ%#v*LfVf^2iPZ}O!SZNe%7C3W8 zY45LR9lDkl7c+8lR6ad9Kxuh(Ra;9dH8eCdX``p72WmMZHI?^udb&+(vVxQ^-6ar< zWQRTrkAJD#belSkt{K94QP^tZYQApNy+)MNT#q#K+`-u@F{>5Q;&7kX;}ZS(cbZ8Cjk#;$zj`!oFt zpW-yNgsk0%_^hUT-uG1amby)SJ&yUSFO)B~DRZFx%F@&cdFhE>N)i$h6O)sBDG0CG zR}#3t3UcnqufLu_qtRBr%F53Gn*zGR*u}2t>FEJ~!1KZftf#)do%gs*j)olDxs73Z zuyU)cc5-@J``AGyFF2rl>{kc%p=UiL$CTx%?i8a^w}kvApdzxe#+jL!a+5N@*S^@O z`ta=3a(*uv+x^bMYrdXeg?cK1>-+`U?PAw2; zlHrN-C1>4ogu8v9+&iK6bI>7eL&K?cXG6ny4o=PlUws3E z&aN&#LNh;Re$}U^$eti2EuA3B%*+hD^Gj0`^Qt7m43*^lcAWzaak1Y;v!&$6k2?Sy zeR^o`<$I7K0zyKn!coc#qfOz>R83>!L|*Hj0&DniXO3RJmXVQAnd`)<;Be>;>`B z(HXI^9Kibw9SBoX_iQ2F&#@3g2aBM(W)w)sp=T%mef1=O*2>4dB36AQN4QJ)3m5FQ zu|!FjmXVP;BPiJZ^V=s0m$4g1jvPU_=a}R_E%FTYodBypASo3?I9_8DJ+BD~3H6kF z7a`T?JzK83Mw^Y|6*45@+V&QXkF};CL?D0b4-$}3Q6XzPSYb3tAyPm# z6u6AH{ne-0%~eSJj*_XbUym!I=`Sj_HfC);2eM@4=62F5w|p^ej66O`zyqK@Pm74C z6Dv1MD%SdECtwGtReWk^wyw?G_iFmaERMLcvZ5?y`JdH>1v=e^$9MW2n*T)YH|(BI zGCPk=0YB^oez2&wHrnI58vO5KUyhle8} zNyP_-=jvu@h`PYtSWoEpbL)MyxV)TIR7BC+zhhg}_&uZp@|(?~{HAS8kYerZ>&t0t z(};|S7^}L!J;1BcqTyxzw3~ETV`HP73_yF8Y2a5>a99{+iDE)T`XZ!%$?9m_QaE8< z{y!0f!PeH}M2aA0-m9FtuKlxnB;TBz{_dRy5H9jCFoGyrDzf)6v+Y0gckSARfGn&g zAS|pF5)wi#?CR11jZ#ltz~JElm#2Hv$z(OG%GIj@hQd)!&dwqp!Js0j*;ukHEOSB? zI>j4U9eAUzj?PQ9_)D*Pdh|EuqbfT%?aPiA_2zcxW3!W!f3vo>hMbJOXrBnn&d<;D zVgN5R?dbcbS!;fV=kg2=M>{wOGSx zKV~pUf5~fI{q)Gw&`=#wLdX?RLmcqha~>rRy%;d!+_GwgZvii)4amQ z<(GD@PZM?SI%)fVongjzV!H#9W*{OX@%ZG$MVEf}LEpQ!w#*#u|5Q=b6uf_*`R2_H z3xEOUHVeNVgRpE+z-kLuFOQK_NkO+)%ydzVS9Q|l7>qMun zNoSgBTmjesTwqZ_K{^x?B%QB;Mge$lhirWBx8a5Ga^)!Dzg&!aB>tZY9TWF)t_7f=`FCsDU1yzPg_kb6o|yDva-wNP&-l%L;i(!{b#~zQ|5+iCo|I% z+rC#nTl#!RT|ib=_GmhQ%ek==^ZSReuI}#2__nq-Ud;c!UqsdpJJuXNd|2QhlhxMd z#_@O=cycR+A6!*v3Gn82?)}y3OT_7t@w7Nz40sK5b93PKFmp`Kd4Q})5XEueutkJ^ zH(8J)6VubKFSp;X8j%7V^nV_-BJB^Mqc0J0xj?-3)87KOvfFG*;FEvGAI4dZqX=|Iixq#l%1b>l?UGB3hdc2SQ#Q$r9 zppGLA0x=j^jXmV>E)*m8ow+8ZZn>Mw_FFpm0<-Ep3W|!^85!3hl4k@2S{9nov%w)j zK{t(z5|osc!6%7`kI%v5e*vcPXhIyK_wmGu?JaBz*jipbzO1ygYXCv4N5c~ma)k^E z4au3XpW)nz`QO{b%J+X`4FOuKVu37OLQV8WjKYizf%5q;f^z@D*Ng`3o=qa%0>%iC z8Y|;nsFrw{{bN1^oGA>hPcvO@d^FBpM^&}Svq)E0*QPT|8*!7s%Zh{x0&Wf(<&yc+ zXV2c_w)`Z-#WV8q)Mm>TLPyC7oLQR4GI75{ae~2OyC`%QU#@?5Zm=QK@4hL0IBt7b88!T-muz3 z1;7I?^@0v=Yi|!ItgWd5RBB>({)h68y?``FLsxecWBcFD14|NOcKs|ia%C7>@;Zg# z;^LB+N!Gj`P37AK2X*EK}oFd8>$cIUusq4k!*OfpQ{Zh3K*hkIXP#A zZoRpJUjKH$^%L_&tHrTauc^1SNFsn&r;d*Z4^IJk-y1824b>qU=WcHLA-!a@F=l<| zIl$Km0D+l-a)ZJ3(TfQq;7?&RFqj}j82)QFaJl=5b7#Eo$vvVGc9~gP!-3dUG$HCvfjP(V>Evb>k&6&85w$D^LPwru_sYw98T09IR zxcdSOU*#}YiGUZS0Ro6T4_P0|gU4_kCZ^2@v^c~w6EG#W2fFT2N!Q|}hXNf?E zVUDAh|297RmZUC|hT=(%Q<5P)Fs;Rk#?S~_PCI=w;cnKPZ{|Ad{t}B?V zj0_-8K`>g$z=ZQzk9>)ga-E3a_8NQTpbj*^wB;6;KW>A9%N^X>q#<)8=q)v2JVZL3 z?!0+!$E&F4&y#9-aO?3!efMvC9dsjCa6vD7eh*Y{5RwkEfm%P$DF3x&*|;G-2eTU+iQ- zN)Hf3F)#@N1GDKbaYalzZ|_pOl5sxx*m$I_@orj&>021JOagc81Pa$VFp!7z4;Gd~ zfjN{2aA4=>orH|bZdHQN6L+66?02OY>Ax|RBc(q+_l|C3dX5wA?e?y)40r;BH6T#*vPu00qpV1eJ+`IKD-QCt^=H^Xc z76psefFB(_Nvs@zOpFGiuBoNv@}W4#sI-gJZ{AGVzA%C#J<@E!FYTuTJvUp#cc+&nl2W@LKr?qFIgp3jPp(#r_&E+x0gTQ=)3yY%npR%k@8aeb3!3j_J#uutCxYs!#?CeCqCX$+ z=ej%EOt6<-8QQ+krYsTz9S3Y?4)b8q+E6Yr=g~${SweF`QBfRnwghQ+4h(WIB)%1m zHeb*i?dTW)FDfg8d9de9F*V*5T+H*}DyJ0|b{&=V`3jzP?fMUXbn%cO%pz=Ha?uF( zSra5|(@cM9Qz|CB(YC1HGFWu9T^%i9P-G{8ZzLy3t3tAm!y~}vFqEuC4zRrJ<_xN* zVNGPW?&WOTe?kmUEc1!z!AMelw!`_zb=YiYQu$dzZIM2)*O@&^Xs^Ymn zg!h3;1m}bTL+N-|sFhf8Ydml(HgUJ_pM%I~99W^q%MiGDR~QzVto2ZYy~@CRnSk6z z6dotVhoNudxHo;_ZymG%Od z&dST{LO^C5E((!=!Ye*7zv_ZANEiWs2(;vBetznMwa>M+&Ix+L=PLvmZbt!G2meY) zzu-DpJ&21287{lAsM(Y#v-V)^b!sY%6Fzr~$jBIlp*Km%DJcO19MS}s6l8$$i%jH4 zFIHv-2k*o7w!KzH##a3v!y%x7wT+DW6-=hc)E*n6wz+vqno3MEI8e--7p9!2!#=n| zdf3|90&cbpZfy+OG$+b!XT=>(L&nhc3 zgsha~3Ai+97#A1ky7KcjGnbSWJp0qo(ZuJfD<+&#Q!&^?_!`a&#NtBCeIDP%7X$EA zXil|;D3K_b!MRti8G(YZ0Z-sdef>={v+oKtWelbjG)aod#)K|){qa$lHGcV`1d?A3 zITSDtFfVJGU1ghP*K)u_iHM2GB;qzE2{tAVuceweBV*T18g5HBoKIClPcH_VCb8I= z3c$mR>HPg zz&VKoP7l88Bo)0?4D;Zcy|RE|_+Lega~Qcju4tyIw8HFYX}&?kWO3yHdi@O?F(NK5 zo8{!SjNIJmg@m&wjQ{wi$(sfk^)5ydeH7sAQwp;`P*KX4@`_7mN|Zs!P`BLn2HXV- z0ocz#VEIg~F{om5nXTNaKzhDvtT+ZNOyKr--Wfa77KbK=s%jR0rXWPMfg`2;C$$29 zN*9t|m6ZM{n~ic5WyogF0KUep$LMXK;Qxnwy=;@Gkp0RlFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1cf3ae540ce104f787a8fd5d547257a772c66586 GIT binary patch literal 12068 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b7e3d1daf89e60fd2aa8022f3871931f86ee8b7b GIT binary patch literal 8057 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..39defd1460ee55010c344b1f3124d1cf564b03d4 GIT binary patch literal 12761 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 ah2!GI+I8eyG-7|F(C0K&GS6JO`F{Xr4X!f) literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0df47556471a068a393c2397876760365a6aadd7 GIT binary patch literal 10302 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 E01}jdCjbBd literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..72ba98c2c1ef568d743a1ade9751148209199638 GIT binary patch literal 12055 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 L8Vb3WZ$11U+2uJ* literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2ade8c7dddead22b2bd75a0ee8c913a1433fb473 GIT binary patch literal 9827 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�S|* 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 bg-e!XE+;Kxw>rVwRM?4QCI;z8E?oZ~#b=;W literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..20c025166007df44e821fc747e31b9436214aeb9 GIT binary patch literal 11005 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 Ci6ycC literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3be7ac5c37fbb95474410b47c65ffb98f7251f42 GIT binary patch literal 8633 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0f654a3713920b479b1f0790e4d29c28a6e076b4 GIT binary patch literal 13132 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..77ae571b38e341d4d48518f2d7b6cd229f0d7e3d GIT binary patch literal 10310 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a36f8bb3a800d94dca3b5019f6e727b6c852b220 GIT binary patch literal 9641 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f70cc982c0cb02cf230443058246b0337f2779ef GIT binary patch literal 12018 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 KQn`}G&;JJ;q)qJr literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..62e0a96bf6cdbe54bfb4a966d909ff37a11cf2ec GIT binary patch literal 9820 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5a7ab8e000c422c6b3bc01059b50467ce60c7730 GIT binary patch literal 14219 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%0AKF~y=qZhe&OzBM4#Z2w_-Iet@@`d=6t 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 W-KAEmYX*;v!d_9moO99S{{H~@*TG-_ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..43b9cdd43ce20e250a5f5ef1d39b5194bd17ae94 GIT binary patch literal 9910 zcmeHNcT|(hhy3a*-jfN@a6kKHWg&*yFF>KvA z^iS-mahfNF?bvn{f9PaT;z&2euVsonBe404g2L^yKW*51HF;{&LbSpbQY-F0)i^aa zBgHLFPdRCsq@ARm=>`9Soow8u-+vA{{od*)zV-blYj5;dm>pd1pK*9$#Vbqkgnc*5 zsZF6w%5V@XQrtwTXvY|vmlzT=y*S%t;n)@yJo(9Ytn!L#O%8@BNMDeQ_KGHga%o6x!GhJ3IGlU@Ct*o@Mb!4?(8rRn9nckOyJxeqI6dYnHW z_5Atst}(%;)#Vx=V;SV*$Br#m!2I^?qJ*l{=`i6icKoA*o9#ha1|L?uX?Zxh?*>9F|3_5qx+WN?$Lx)ry3NO&+ms*?_Pi@+?siOA2 zmVJf~r$Eii+dJj=-?s-(kILCNkW9{VnPr4ktFW1G`)`RAy0Bw(KmNMWxjs=Zq;p2ggHJWlndN#y3r9M>A>u0j%F|6Z)z=7=S8)r{hi=&h0| zN1{82jK-MrL>%B9Z+ngw5S>IYsdIvLfcA~$#Bv5@xQPIoGEBWQiJ=U2H zMQon-{{1E{E-vXZ*g@0gUCYLW93NV8a&lqc1Mh&6vdm2NIpGM$E92?Yop0a1P0q|D z(%4Bx8ub!Yb=JZJ zmHIR@GiGjX&bBPr|9k1Z+Z7cbhRqFlczWLa`1%H8z81qqo*iEK0iKIjr^Bu7c4CE* zOBW_;EUm3KFV0WXjL36&ohG|&WEeC=woPejN(=;hd3tMzA zoJ}MPJ4o=nm7Zxyo2R=2o$RB($HwnA{g8z{BvncO=GtL2#ya=W20j1MDAsI2*1Wv)zjEv~pw{N3Lb|6(sW|QZI0bx7fK(pXL zW8@5af8A(K)${EOb>q}08MxFv*stk7_}(_x&1|7pibeGwYOTaAeZ&=XW)&1@I|90F zbACChdOB}s93Y=p744mshGDmKOlIXjL~hydbuwz}elG^+*zw~oZ*D7Pv_b_u+@gKn z_Iy{N=G^oc4r(O2GE$2D{8YMgf8%2~^bp~&?pWz$Z;Zhx6#%16S&Lz_@8ER99M`N_ z16_7~S;%w@mHN5np6OUmnXf=f!qUoW&0U7& zT{D*pudAyQ)cJ&I<)}tN3!grY^Lcw`S5sr-tr9|Ko~QAN)mS4_|C2j5U8yXXhCWi! zY+;;KG6ze7!nbD-3Hc&Z9C;I`fDj2cGnCIQEYyvNjO3hmLzv$M54C~fQz|%eVCub9 zQA(70NGvaA9?8N%1YRI85_q-uC+-9 zIu8;OTweXUTGOp|3m037>6fjQ4%cALI454}yI(XPyTdGkO3ij*S87bS0~?^gGqMSXG^_Q~qT_vKpky4!M8 zIXqz*VIFU1XQyiW@+>801=je3-`fUE9DC{h->m)r)35!z9QU$Cs9NI;710D|(%+O~ z`u_d<3K^f$CNDZb&V)c9+_`fH57o+xP|2i@a2O0;E{0XpVAl--hN&CPb${rqy`Re& z(Q>P$+U2@cb`|-$e13bkDc8MWi{8awhCB0B7#47u(z(I(>|fs8w$1afRJAWqt%{au zbF>h{6nr8k49lf7z1}|s(7h)zT_eGpkvxEu54Olt9bwK9@iGY{;&L1Mu|kH9+c_>(p^reretg=3jMqX7Uc zr>3Tc9x;F}jXg5-ul5o1;W7<-LMQ9G7N>^V*fkm~S=gW^7DW`VOLFcC9?BrSw=}JU z8#oWXe};sglv5}PkN8PshU~22WuSguf{?J zl~TM~t%lle`aaK}@%Sh?18pP#3O`<#ac0NJX%f2%pJrvzn#~Q=HfuP_Lf>vMbX!`O z)jap=SKayH+!PQZM`-eLxo&k{(|mEPvFFYZng0efV=t;Ex<|qes62kFhS}`8-@s@e%oeRm3gLQLRSw8bobk7 zjPMzhB`s3DcxSz_Xn{&a0*v?ghI|C5;2%KN4{|~D@=_Cs5$H3Dit^wMc4}zQu6-v} z6|d2R2v>(i~!7L1?-rE-Yd6q8C4M|7{-l}9(uogM2%BPkoii*yQb5oW!Hd6cd z?=ND5a;zHv_}XQ5;`62Zs6_obRl;?8f?W1#Ygd(DUY2tFo;vFP>}i&05%K+3%A-=@ zwmwsZ0K%>U3vVy4h}6{7uEnaVD(wgI*rO425sGM;_2d!|*Kb4G-l|F|n40STPy)j3a>aP`&~8re|~NXJOHQf=M2v0fcmg zd6vlYd!u`>t2@=yqOV`Su6@a1W?Y7n&!rt@XMZf1oHP{wl+^Y|UVh8aS$oma=r{T! z?jT9q4aL5}Zf*JJdWi>xgiO{#2Yu1*%RsYo@RxoGBt1)KdLxTQ?BXi(Je!lj8~`KI zo<4ha6N+>jZ6j!_GIN=5*5ZhdO9fS;38-j>Pg&y6G>8@&3McCgc#p2GefwX9AF^9O z8Sy$kjzmIvxL6UTK1bE9K2chy+t13uugL_!^x^8dBbP2+0yny+DoVO}R121H!#rfg zIG}{~`0$M?`obGJp35X7;~|KpFKlO!|Ae^wckkY9F$xVrY=_$h-;IRj`>+-RxwcaIV50JkP`(g3@E_lcfdaU$3$bnkUx z<5#IvWONq#bXYfweEC)F*)FU`P0)k#-1(kqAwM4Ud1kYt*l=5xlPvj5Q%38`HCs2y z=n$i*RM3@FYI~0B@pLi};%$!5(<=4EO{lys0<=ED9@MA?^Tc$WE2y>%;+gb(u(XD2 z4TfJ*XSf=_o;-Q7;@y+uz8o1D8KgKY&zvdaxNMe^GCg|q=wB@@ER{K0Jkevz;p=4w!$BxYHkt!5JGN$^%?`<}-t*20e&GV!qLZ59R$_ z76qVETE>QD*}$$n$~XY5m<{g0Hs7lSQk<3+69%z6IdH5eqqU}{2DBxFBIo}^NsHPV z*ujv2J2sdOgk^1xA%t4Gv2k(W7?T@gK%V;o&9$x@P%q?Ui(#F|)4nfnNw;CQX4vz7 zk2Q|~nYVNI?g)1}SsU&tX<}kx>F6kr3!6FjzO9WB+yzz@KH>~H%%7Qv=MJ7kGm3#sL`NZUbd?0)0^0o=g)T+2aIe5c8!LHW{R&U_8)Qv%Zo6><{`|G zNTh`NwOC`TzAGk#STDv<*lz8ObOR(JpIWmDdn4jO<=we^*972&vMKnkTw3DAV@5}S zO?8s?f|KkHh<^)kY-$*cYs0`)Hp5em506=1YVU_Hr*3>T)k*J%?c4w za_G87YY^65gG-CkTpYw9(WsOL(&+MFI|R-2rG1-KZP&Xe`CCI;n4qJ9IVPtqlL_34 z*XxWIp2TRmzP;n&;ZfZUNnsv+2O!TlNvIW0M;Y6{#xp2%CYFH*G6Fb)sqpcaya2)s zvWjeui{xMH*PaIWPSqcgEC)vm_FmBLLaRikXxYl|J@U!bw|+o;jf5(Z0Lel&iB|=h zj5tOD9Gaz-iR(gt0;7Luq1kxR3Psz~MNFViWQvh)m9%k?K=DFOP7VrVAj{Q%o}Nx# zwgu~dj|4dos)Pgz81hcjq3bNn(nVl1yU5esmbSKAKt{xXYDJcKq2JWli+>dEYLm7G z)*8k)f=#1Aa#fM2=i7Ns5ev_{Za$A(O@PHeAtZLpVu=84*|3?9O%Qk?`GHjKto&;1 zk(rWQIPJj1k0&1N+eKu~_Mvnx@xrUsnioG+qhOe6x(xHsI=bq^nZRyI6!|znN<;z@ zU_-9J3tzUDN?#mypOpvsT({|SNO7a$cCla3!|Ogo_rrA~_so zfrJ#$X$>$usEIRZsFXv;Lb&s_!H|6?)c)9c%)Ku}{Aa%Gc5dgK>;fpYWXRqLlxmxk zIbt&=C+_c6+F|zKP6-#Vf?_miq<9!C$SV(pLdu7FG8(5SDJjj$-&n4<>WvQnEay#* zs?p4ct509NsGZ(uOjpyBLBS((ua5k|N5wha<+ z8ONDw6?mRL+4C~b9B1e8IZomOz$+*P|7&spstvA$k^^~V*k=1Tj$%<%)YXx5zrI#( z>+9=lBJXRtSD`Q!=%ZoU1DwH*0SqCcc_vFVmldx~IQ_n*rShio!!40g8cVfOhdn5; z5Yl9w4y8{m&_kpC&_tcykM_H(e_mR<4?B3}_Tu*n*um#81Ul&ax0j>UIVk>-0*8V^ zQ4Q9@MW*SM_99<*l*Ao7b}aePBZa}Cp-ICH^G{RCQo91VWXn^hBoVdv_SJ^cUfYCY z+gHQ=W9G+L#+%hnZ%WYdiE*JBYJdCfx6U75U7MAU{?%~2e3_ujx1n;f!5D|$=Pn5u za*8|pZL@YkCqp4b{DDgsOXo*RP*S1Gi_&uLt+)waJ#cI;>+)j)1W~9AHc5UK?F$*o zU?4j{8hn=47qY3d(Pki#Bjr;zWsQ;&M3$grU!FT0w#u3A|9jh=Xc?U&zP`SRl%-h| ztf3{Ftep1%KImw%aY~ZASp9_cj@1N8-+lKSYW2gQ-kZZ91l|H&KR}74 z9n5C}z!JKxlD%-y+S2kjP)27ubeMwZ;ZE7821mv_f=udXxF9qK6y5$0!+)#f`I!U{ONXgKglYS+li*K2E#pl)~}Xlb@=D1zCk zPbg2OV@ANs74X>ZP*rwxBXSN3R)nbzisjk~9IlrHTOY>vyc0v(F8jeTM z!CI(c{o=!%b^H2z%IrPLeYt@4a~)O|hIbd|+F12V{j{Z>LoMlT@)T)zySO!S`uj=- zQWH*RtN~;&w4v({S8TMXwaz$wHv@8MdzcCcL4}S9ZKtNDI@B0lx8;KSA9wWCCFBCZ zxuHi@RD^!-uQ!sO)^>LH>*6)H)#QjoH9-KcA~H0vTnLlgXhw4$#0+pe1|Pzg3Fm5NMoY%( zV-8GIcP&~tJuZT_p9`5|D4ov&m>EwhPf)AT;ggM4j-;p1eYrDLIysQ==g*lKUz+%I z9wu!?^QhgXr-wo@G{Cx{_JyosheG#t47(EckY=JBO?*Ip5sdEg>USA$|OPOXafAY zP6H@i0K3`n73=x6P#x0^$RY33(P6(l_xfvWEC5MO&NB9aoG2Ui*EZYP1SA#cdUO4O z-_d9fk9Y8IIVAuxVx!im({xydJ`@0r0a{2=r{=pcxW0L4?$p#$1nVWTR0>OwM?pzF#S5yMFCfmLEz|AJU9c= z#2aP)=sH>5JwO7B_eJz_krLK17Azc|eL_Q19HjhUbfKWA2s-dq$mJ+18f%q8OhH2a z3QhI_uK}UcCEUe##`j|0=$V@SY;P|k8eb<`58IP{_Kz#NqlLU)7%_uW26#oa(P_tujDMC`E_i0K@1mteR0U}~|u?b#R!{8~IY*y5t9O(=Pn;j(RZCE(8 zt(TJ3-vY`2X12Y?OFUy|pgO^qW{WXF5SlZ8O?~EvS~DVHbi8GsN25HhIm2FuZ`Z3| z#l3s5X9@Ji$as5u{$aQnUhIKH=#cO7=_a`9Oc450?AZW$5P$3hF=={q1}UI9i4I? zZ^_Qe+J$Ufqy|$r)jVk{%8Gr+L-s|4$jxdI3~rc#x$)u`-Tp^cd!cfv@Mj@qVZT0x zPm!SKvR~Ncq9Of`6Y=Yj*Gs1z8YZ>^s;aK9k?DoBC<>`zRX?+xN=t2S^zHx-0hzzT z;hdUYWM_4_p;`|^C*E+S&5ggq%f#?rh@#xeUsVL;EbM zQ5o&BO09s93ztR@3-*HsC=YtFVJZ|oF&f;SJawuP=IzF9E}l5K#l(3bgC!@LG!|_{ zA_lmNo!{mt1MI@#Edf?Ey<1<*2xt^pn5>hUOr%DpWOH2R& literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..33b9c7a36cde98e819360f85e911b40f306f3a1c GIT binary patch literal 13121 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..63d4c4346883638b9734cbdd1256cef1f647fab8 GIT binary patch literal 15222 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ab0c17b6ec0d08820848612f96fc0f32f36db53b GIT binary patch literal 10416 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..70acbdfe3c75099125e868605f413bbaa1855fe1 GIT binary patch literal 12016 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%0DO zatOw&YgpR#bSaCQ%}-r$Ij}!v3Re zq3?L&%$at|voqJUlaVMPrrKc!Ws~`2}A9{M1u~OL{ofFbAxiW zP3&T|-h{xywJ|Y_BXko2X;;a#wygbhXSzKw@^P94<2#x3xT)yQ=#D@M>DnmJ-mwt9 z_)pMoB=iD!ID*V>+N5qYFO1gd8W_Ct9SxPCpCf`DKdz~={<3&1!n_G^SJ&ISaB6N& zI=o3oto$cu)#QPUi8u)iQyHggQ6=P842YPhMCyzKB!dJrC}7E(icu3yfZU-2v(l;h ziPBJ0BwbuwG{XDJ{R@$M-nZr}rrw5D(52`zH7ksCwjpcv`sfkP0XzmD{N#yvet!Nq z^c_;l%ZF}*?*Eoww$!e3LQt@wDM4u#@+>C|}(|Ro=H4*|2Rl`2YZs}7wh~AjRZD0Z(j+YXs*{4sP;#gd_ z^7-+war1&`ec9$ZQEiw}!#FJwMT;Zo9HYgSoO`mR;4j<;h(ff<+H+nNSN`bd&!6*c zaWT}H1nR9(oCp|79cHx_JY7>rJc-(<#4XCi32EtWpYmb8tWmO1fd9(eawxZQK<~vf zV2(@Ha&)w{-RU#J30>d!n0r-#bx%ELagV8Xf#yUNg3KW{whypIw9g~wX8Ljiw4+Up+2za*%#aAanxD9&kdEO*Tt@dBD17N-j!}$T7aN{hq58Mh~r$j__ zTNTM602JA491#7h4T?ZKBJ+LRBw6;hT&*- zDNM(btPE+6Th2n#6kIqUFwy_s>trNmV_<#0ie;Hf!dRv1#kYeW_?DOQow0|4+7}}` z!KzLBRVop`nMuQ&{(dt!b|EMwWfXqabx;=0QxLmMth$o5UO_iI1>DI+Hr1jzrgMAh zXA240K%uDC`Vz*$G&m32zK(xI9MM zB?h{M^eth}pGWYwG_p!{PQ0e^7N}7mV@K^U-(GCGsf$6gqg7?AjArozo}S;@ByA~A zZld9+0#6;47EA&-qO<_2lK`^(ys|bx!vwWvFv>@0Z;jMP=+=;7$ z-plKR1n8`k=mZ7^f&tXSmN-MNrLBDxe1h@TL@dBvD6h(9MnT>Dx_lf8iYJhmb}MR^ zRXT_{6-aY%3FRg!5O33*gw;n!I5|BVMGC+EaQiytVY%R7y~Ht%YJht3CN?&c<^s_U z$-piIhSBstZ@~QBx$+fD_z6p9X67Rt97Q9V9JDxafBp{LS0-IXZ?b|^kfmBEY% z)Y4<5dMC}8EtyJ*J;>7{#TPrjCH?63Xl*F1lF~vEs*er{zlB3DJhKXLly&LP({e2| zC#aNXosr^)H(0vSU9BeS%ptiQ!^7fHZ&-vjSHN}TXoO5 zO*|Ffym1eI-#kd zFP*_0@;Xht=RhN)!J&cv*Ds89`H|7v8=0Myg@J(eAXxMdNb zziGgXvAFe&xe{Ww>WY+o6GztdQsXeCUs1F@0hm_x^z<~Ltf{P4vK-vEF9|@M2<6t; z!C|6{Tll=?@1A^)4yfo8`UxLlmxV0r>9QlO<4|CRBtn^3buJYDXo+64Q=%?)1Zc3D zgcb%#%*e~jdqD4)cIG5C6-q{17=LgkCx>(#3gKqQa8#oj=1L$=w!H_t#@NrVWEi?% za2{a0zv=3c(YS3vl?#W!Eex^)>;f+I&v6QHd<&7Xd60^fzO@BoMrf()UC2Ifeed4@ DJ|Qz3 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d88a9c466a0bcf341cb455489bd2101f4f5ff442 GIT binary patch literal 15263 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

    MVWShH#L#o}u4K?eJr#K2T@ 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 AGXMYp literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4342fce2bc777145249824d3818bfced7fbc9ebf GIT binary patch literal 13125 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..00a378396e2c9898c6ce38e62304cedbfcf39833 GIT binary patch literal 8075 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 F{sW^yN`wFa literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9cb49fc9f4eab110bafabc47bc98009f35711c25 GIT binary patch literal 10974 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

    AMvC14tBCu{a{pFpUf!x@!OtJ@}VE}5B>IF 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.6.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3da76f0ae964f60b2b87fd8e1b62eb41ba50d717 GIT binary patch literal 13067 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 N=BCn(-0OEA{}1;GFjxQp literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5c0cd304e87d2039a54f09f68cc4db856306e37d GIT binary patch literal 9808 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0205a097273c091929193f2fcaca39ee71945512 GIT binary patch literal 13093 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c3f47274945949bf64eed7df99c621d384990224 GIT binary patch literal 10975 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d5fb95c2e4d6b7a180244d1291238bdf4efd5db4 GIT binary patch literal 13099 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2be744592069fadebbd077d9c02144a635f53f1e GIT binary patch literal 11184 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 C&tqEv literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3284128ef75fefc8a48002856a0725ae2e747aed GIT binary patch literal 10970 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 wOt?TsB%x_Lcv(jp0l5C8RQsp5s4J(MVcU8 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 De-W@+ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cbb64f54ad471bde41b2b5b6d7787f7b76c87ee2 GIT binary patch literal 14183 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 j-H=-Szw=92O(e=F2C~e3A!r+5awvHj_i zQVlA-DFH;9s7MP06MBoGB@jsNyXTzseRKb~-*@gkYu)vI>mJr(v)C*9w}0h*pZ9s5 zH<3SDTI}8-xdTCv-KT#r{VRfOia-#7k!@Syj%GJ?6#nS?n_cv`@xJaKbk)xlId|3H z2j}gNb9Xrq=<0`e_x93I)l$_^K5)a|-v@tEP0jOveL&UQ&rPjsxo#N-+3xd$Jsv?s zuA;vJc}7p&5kz6+w5jp=;Iz4+khp}gum%=QwXO8d>}_NF*J3W;ZxQT&*I}k~WT@); z4Z5TUM&_zSevAUKe=BC|Rllh#>8F0Y`j@Hbf%DsUox7%d^@q6pfOp6I)ISS5Wy!~u zj^sSwf!W4gAw??=JwI@)t)H>D+Mag06Q990=<*m&+nBGOkd7)xC)SNh#1LiXP}h#1|UAF8&XFs&XhEG+1kY(;eT zb#!!CU$~IK)y;OK^~yU`XF`~w#EJ^R}?K~&$CtBWnMGEyPz`Irj@wqwnzRg+nH#l@YDV^Sw> z{1`2xr!`-**hx)$VsgK^x1P7m`65CHK09;M%PaQ5g9m*t+^pi0k_Z_lI2(u#Un=|b zm%hN>*gb7=|HvF`i?EWz~uc)XaMoe7X!qe09gqBuWov&8&s+!8x;m*Fu{{8nu52B(Nnf%pE z#)mU%2J}lSOqv{*&FmWT_VVH>-xoyU>|}U5u7p%F>$vo(rXlk0l z@fO;@IKnn2%?*~9SEXp*{FHaG%HO>`MN{c|XWIUawdJS;CA;Rw#&`Yji7F2JG_JQ3 zXG-b~hY9?R$&XL1);DPUuu$$G&G1W$5WGW-!bSqm*9pa~jD{cr1NWH%%5h2&$nULc zZ`>E7e7I9z(`Q;7krMW@vckkZ0jK2Mq3{jKa=}dMp zTVm3T(3@XJUX!6-HICzksx<3XJG{-In)%OsR=Fo4Cp%c~?OkGmAd`D`$RkN=&ax2N z>TaEBeKoi6yY_!~XnK0urMKA8v(vdgJS9a|lDqC6CB3g#c&m=v zPOghJY!(uxF-7ARrk{Fx#>UHEzNDyyv!XbU zj8-4z6%<5ibm?oD$4c*4vMa`wGhnN}JsFDB0cQD5zJD?acvipyXfwC5u}K|-?2!rJ z6+2eb8%2zwtLLkfiYw?3I6WodVs?%J7eZ$oXb%)KLl=l1{q+RG32p82Dgi_^3R+^OlqaZF(suzYHn%iLf&G?(j?~a;lt`aBMr9rt-BN;tS_{oh@w!Ob0$d@j$n9tEAr!w z9dxS(G=#3c`B_2>cQIN*U4EbP#XV@birlMcZc5>>7})@3>Hy9}V)Ds=o6)icC&xQd z#j(xNkx(+5nq#D}tq%`ZhFPX+sWd~WOLDsH9=crM9HZ&+nNrW^*0=1n(*KoYB8cc* zg`h>NA+u)DvOU8)_1pz(!vz#2#5P5zNZF8UXs_dzO zM@#|1lDp3q4I<{AHr5O6K_VDukWI)T^Z&0exrb;wk(0%BLF@9gGY3dzLz+iuXOMwN zfaw2jI6j*94+EM)=f+BTy$paE`O51%jGCKBL~PEL|0+KdPUXH;AW=SA8OhY%UcSj} zM3A@DceXdIE>5(>Xb(&5RkV!$X|qr>y(uc&qqo?Xzrilo*_|)d+X4^#td4SzZ9o~SBQeG7Y(ZMG&2|UGOET6a0O{G%*mTK|{EsQ;+ z<3IW1(ro{Wo?w8&>}SuOb$CJ=82a*z)*FpXPoF+by**RZ@)C`26!_wtaa6&AvLp}=H!5~iO$MXQ8wr|ty$#`ySnij;Q^hQJOYhy(5R#AiBI`A32TveiZ+ zzPH&UaPiV5Nt64+F~F0?ngRG+hN=RrZEQY{YiVj~qEKAuSgobazbEBIgq0h@1S_dU zb|p^go&zsAV`_x{aG}jeoEzx02J+1tH;CK!9-%zH+UPg%BN>G*rmyCb?@OC361M#l^x2IwY;bjXA+eoi9|Sh152ZgCEKoU*eh6G z^kSzTlOijPG;BYATtFvqwl5gK!3FTM`_m`Uo}M1^^^O#(kU^O@O}43tQ1MvzKjujb z0oxEn=KI%zS4=6Rt&gw^qphBXE0n!f(prHXn!Oaw-plxQF0IUS(CzYmw30?SOeQ%F36f zK4O6n}Y#Ju{PCS7+!1s*gzQEBAKB4cF+Rq73C!>+2InB&cXdQ6iS{ zws8}p^X2cd4~x$8KPmfSfgF^tN_QD@acHR>4ravYOr+rreb1pbgS9m#WMvl3yRP7C z7N6O%&eH6#zv}!A-+hFSbn5<4_o`R7Z`i1Qr?K&60ezp5Q@DYbM{jy~;IU0jO#n|) zK#f4F0ZY0WZfff2IE0z7Fa@+x1gxOP+gR$V&TK^{iGNwBjliIlJ$#)rIaD3gp01}YFQ03fE(sHly|p;rl&p?*=`VF9`!bp@ zmR>t;x^BqhO_%VFX?YJz7uXg(0FWFTmJ1$me`*FAGhA2{d7LhG_W!KdEPPpVsyAXm zo`bfOd~vzwUK6WQE zVycvkL=%(sZ~1`}QrXdx5loM4Y%Z=GPpKGB@fb*>m3z~^jVn0?46Jwu-2hmEw9&r| z#6KH||Eb;BA{G&~Pvt>f7#H-CeYCXhcUrhUpHHhwwuMCA2G;^^?vmBlu`O{Lnr11t zp#{kIv%Oo>X~lF=kT5Ke3@;}R0<&;@EjY3;)|UO`$-(jV-}a_zd&eF$xd&P6I6LsF zpkozP6A)-kzn^~O(w3-V?d&YKyu8eMvr}z!oC;LJms!h32@c~ow~R=yp(->7kQ*20q&bH&DQUHxdrIMQOR4YdAa9XXxzwxf$2rRr@xgaRJAGr2~hs-U~ zQGZuzF3r*VE6H>^9h|5bphjBd?l@fZy?gg;vEWfuR)lOU_X6el1F%ST=g(6>U1pQX z>czDy1C1+{1U|11WY#GN#Ge?_@Vb) zm~i;l*Fpfp-E~$UjDbW2ih@&eBj5r#C+9HgmFR3Neaz0w`2)YxwnLQJiS2MegynSu@t{pzm%h91{JhG7itWvU876dHxoge z1-JNaIWC_Cv3KNb@}9>={r#x%2|I~+MO%L1lG+m9g zUsh5|ueCnR%g=uRaendn72~=j6QKjh={GP5`fDM%Xs~&k zz@c+_|JWEFjOPZKm>90N)vuq?U;bo64&PYoBV#SrnS7qNF-7o~<&+Ops`Mj8tJtZJ zPg@+kYsIvO{B14=_PhEHdX|rcxQ|-D4&A-$7sa+xR5`@QkMd81Ece(k3SV?Su+BCg z3px5SJJ!EbCd$q^OcQK_IPUFy&%v^>AYGWN;*|*zP>4h*z9MJj50K}wcUCh zgB(A<^5`urE&VRlh!Cy?W+iU=(=$)Qt}|-2@n)uFAP;OAixXX4od#^Ga$D)_2AkGZ z47N%kxVQj|_A3b`p@*yaJnkTs_Vf0=rNp;GYfDp)mZv^WJXb%N@x8$W*iPmo+4Ld5 zHkE#ra_Yl`q$Ibenc=s!JU$nqG0x`jjfD6dUJKS=KXXDeCpY&<^~TDeL(JU3Dx%i+;A_L?%D?a1Ec>S*aEsj_O*@?6JZGQWmwi_iIG3UV3EEbw4D)4| zg341bc=oInw9&7%?BNjf(BTkJ1D+}&(=~DHoPCAQ)j-gNqv04JbAYQ{KP*aDKZA9R zoBEK`50a-8`Y3K}D!vQTyU?&%hk#oJ_AV7i^=sFxEv3;T|gdexGMK(k^ ziiiV@>4(H91!Cm}Fx3w-J$bH=tS|`quu@IinCI|JvKseBNIw!WT0cHRt;DZ@5T9rk zmez?|1{kRZ5ATICw^4)vX7>0vxN&ain{5j({wg(C8xn-ZW;X9Qk3}M+g{`(ZcMkCx zN+)QXX6;h&vSb(62~%| zrVmUXqk%`B0bva`7dBjWf$^d)H#GDW(}=%lgvX*Q02%TEVl8uH*3BMT0-veW(6cif z&JG%|&UC54ssN9Dn11jhAGz8mdiIx&Jue8gsFt^s4BhrKc44}p1nn*`=uv8&F#+I| znnz1u9Ll{sHG@F?RPuQP9wkli0W65*N-_Yf4%lX~YoVyIiW@9b$p~MY0%pkha-RW= zAR1*Jrj!nCnlw;_CG|XyN20VP{UiFsUUI%>q!>TY5F%aFk zPnmf5Ok!w0b{f=+lDbTv_?NVh@!#Ao4H4F+o}wlt+NaW*NJ>mJH`P(w`H5VYd->K_ z0tMDtWx6ml?F`t zQ5BVdjKjsp>y&<~nSlyV4PER&Z55rlmmleA_|8bkQ9ZCu#UC9xcak0m$wdNpWwcCh zv0Ve(nWk%f`7(9d3hTN0xx7vcEFwHQ01F&$O=vPCgy4Xkq9j5GS^%hBMZVdSpIz7Y zDhE!O44kq8nt$1F0KVWEh3C(?J3If3_u{V1p)FMcx11n_vR1Sq2%c~dWz{X?)^)Ub zg<36tvKDL+CMUG|Ie&BpJ;yZ3boV%3#=VI{9v}o6{VmQksgs?vEwhOE+dmSm6-)~#TR6%YyjV1 zIdfcd42?l&{#q}~jj-Z|dUK=AR=Q*HoYgLZtTT6@*QFss0Bvpm5&5XWh++2tCA(-D?f#-Dt ztx4AQ9=0wSZD2hl;pa=+Q~^6~@&{A~dhUuCN|X-;rn0v!JX_s+e9jAig#~EUj5ayJ zyku=K2}bg7dUg-Q;Dtvf1rI1vNa0J_!BaU&SubCnfXXImWw3l63_Jx|8+~WHu8_|) qp5QJdP6F*7{t%4_{=aZ(=L>AtmZ=zVyW51o&uKGD)8g;1-1#^7FVyz{ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4b384b4c4a77988edebb72ef7b10f7c87bb30548 GIT binary patch literal 10977 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 P8G*W~DwlcP`00ND4V^4Y literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..827eff6152092e070ac7000fc39aee47d6d4d804 GIT binary patch literal 9310 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ec2a99e7c793bc5caa966bf867f13efaeab4dc5e GIT binary patch literal 14208 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 B>0|%^ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b10f37d0001505bd5b0535bb83611f894d0e001e GIT binary patch literal 10472 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e7ddb5732294e8ca6c32999853880be8c578cf7f GIT binary patch literal 13775 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b3570d4ab70f57ea1b07089946947f63533eb639 GIT binary patch literal 10427 zcmeHt2UL@5m+pt6qNwOW1wp`qC?ez_0#akgP^EXGA_NT(I#Pokj~tbvsDMaQq&Jn` z0)l{w^b({6MS3UH5R%!S=bt<0Uw3BKy7!;8X3f9G1)`+A-}~~CD#?_uNO zdV}OBBPAy#b9}#@o12rXA_n8|f1V&kav@+E7bpwxCYzlunYtnf&sFrBBL$m$13``+ z#hpK6a4UMUm+aKG5K}u#9ipDykG-^CRH0JGeDj>3=xdX$Ve4+|skD@=*AtZdrH=FI z^^BsP{Q^lcS1&(q)l(qsDt-LNaLlzA-t)^ZKM3QNZPeX=C0zS;{?eUI5gB)_aUX|S zPMyVJ`;We`S)%)X@g*#?I!S%R@?PbYDX~*Q(idTAZ!Z2(z6pMwo<4|hAjt7^$T|cu zxrcDVLt8nx5ai0e~aWXalf`#4AC~!*S%SA3v`Dez(&L6NE7LXvZifK7G22913SZx&7pb&draH z4zPr)FkBU+1Mu1wKEBItZn<&E@Hn+{&_(?4;cB{H&qdDu0;d%R+Q^6IyhufrTL^RF8ljaz7Gtvmy^jh z1VVaZV)b}rP0d9~lQ*XyKYpx!=~5HMf0oo{EW~}1& zdheCNh&+dGxlGHF4iTNr2og_)Qm&z$^EHq2TYUb@FTdo%tLvi`^c@@=1WwvL`uzFx z{D27CBy7G}O+;K)*6`W0XHlwt#jG_N+Y-zC#^XNLCcaHr*(5C2rf$#f-MdF~8dder zpZ`Ghw~VMujEv;Z%gYm2RAk)4W`85IO9cJ3IYW5I`Idb+5iWHKizURhZf<+OF+2+w z_Wk>JQJh-HK3z4nz!NeuDz!nvDrV;bw;S5nB#NfKd#5*06HNaQCt4q)WGoe-A>zM$ zwE$l`=}|Z6;w1@9bz7`|{hRc3jdbJej-b6VCp{)iaC)w;IR_6O+$AVD?mp4~{-*z_Ml&{xTK_^re+WUhr<=UZv^D3SX!rw(CPGr_nSoQYD0un*=E(%)i;Sm z`tc(=vGXfbDB8m2N~TIh!CRL>^=A91a$J$G;Gti6t=W?S_`zV@!JF?YTc0tXbpGhnXy&&DBQTzm?uid4x z#PySoDl1#~EKM!gr)OpwT3aWyw6-3`jgF2oTH{!+Ta$HsLcW&y6ue4EkhT31+2?f- z-p+r=BTsbUhDJt71%2Kcy1KftjT6-$KBSOnln3|kH@~x~GcYkpDJ(p7K~0U=o@S`7 zqeGn^g*SE``qCUJZS6K)wsf=V-nN^LjvZ05#HVp_jh3nivZHO?2_%lp^1|s|ym*hg zm}y=xMp>PDBC10FBC}=lW?c`D{2s@Gp@x`rJexs{wLW+5oS~If)@})-qbe$vYm5bb zN5`y=OmnKa&U)Bj%$@H`2!p$P(+o93h}^I8(nf050YK7aMtprqNE> z%oZ!|U6yb53sm|?-t8a4a?R5luUxqB`yMHa6aXrPecLB{idu=~Ro_NDyyiX~QK{W3 zqRM=*Hcri+9wY!~G_ArWcXxNoUajPG=qoMiUenUjvZ~X-l!*pby_}e^&mMps9Cq(X zGfelk_JvI<-$GwPXy=WL!r#4n=iL(*899>2>M$qW=*Tb?P;hxoT}(+ykqFs0# z@Nkcp19{|S;7PB!>(B?I03pYuq>S|SpU64(bPg23!NV7!chF_U-Vs)X-^@UKM-wBS zK6#R$>c_a{fH{7Ap6SJ0o_+AgA5FjUsHU{E=qbcBI5rxZnWcq={Sw!}jUfHRGi!Th ze5T8iySmI&W-8X>eeBK5q7;>s+`oUgFB~ckA8Bs>f}r3v_hVc19zZQm&IO?gKD@84 zev)SM-Oap|#m=ZGf#2`mJ$m54%UbJbZ9=H$CMbq=7fx^NFLE6=Fg6}GCE3|s*3t?F zlsV}(av6vBRh?d-;;F4VSikB42?+^9OUq2t99xua0OgJyJ=&z>KgYX`|JQhGEU

    p|0~Cy2Wr^Z>QQ!xhpZ|tq_n~QoKgZZV; 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 QP=yHYg7*2Wvsdo?3$J3l2mk;8 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..751d510e0e520eeac2367ae761e632a51c83e7c3 GIT binary patch literal 13128 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8bac24ffcdf90b155d0c689088947db21f082808 GIT binary patch literal 14230 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2de3fcfe9f5c94c00f9135fb64a8c8529a550481 GIT binary patch literal 14224 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c5c88f6546807a6e21a9b8a0d346e78e08ea028d GIT binary patch literal 9184 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..33f6eabe20fd2869621b433ffb35595f4fd2d222 GIT binary patch literal 10094 zcmeHN2T+rFn}5-D*|mTX1(fDu7X(>RI=Cyyx+p9v0@9R-h(ai#x43Hy-3llrE-0up zDN+Oyg#ao|M5Kk50HKG_0tAwK{(d(%H#c|l-Q0IOb2sxjhg1$IZ@uL0?LpL5RdxHf6I9&2oK+iVsk3mA?>&C8CSsWQdGuH0 znL)Y>hVAS;X86--|HSbwl841W(mdC!A_sdkzw!k6=ub{knV0tdvi7x6XMtzj_@nGj z5%23xR&73?Z=|GXu20L7lRdN1-1(H?x6Z7Mv2L}#yAw7wwfn|O8-BEt^H~;&Q2J&m zcl#lg$Nj-VkFw>oZ^K(WBq*&{22CHa_1O&eM^?GJDM4kGb*z&JcKFBD)8+7t(fdTc z!){Ce^YHK1AfCElf7ty?QxmS#cRZXGW1zo!_3Ei|S*&;W1#3wTl~1@I7iWC_{G-;2 zZ+g>TUTMvK_Uzd^-jCSTp32c2ntVDXG>{s1M{337DNVsVYa6pt;#qOAW@Cm37Jbyl z#^&_t)BW}}r?z7TH)2A^Y;0|nF_Fh{#}>wITm-!`*w*ta)?-`M{*gln?5&u4n;Y#N zZ^OG(IX}}n-Ue(w(QDN|df|WMq5jMNtG5$V@bCRy`jD&D#!Z`yEG#TsyUP~H)2*4- z65EWUBU4gRr1b*5GaYEu=4Im>p?R^P6B;6Q&k+do!$4m_}|USLxc43_%D@vYf* zxxV8aru@Y?(n6g7Op`GyyL4h?qVgMT2sb5vRa9I)5{gax^5x53_!~EFn4dZ&apJ@Y zJ3{m4&!1gF4GrDg+z5iX@y^tzPoFj?-o1PG*^3t=1&w+^bM(502UrS%J_YoYG-8&h zm@K)lu+UTkyV|{zBQpQR#=Yv#Bezlt3JRM2U0ht?t9Qu>6O&pTn=~`~3o%bQg0@sk zi=-_i(86-@HS#TIrBv-@ckI|vVq;`fW$q@5eZ1GNhfNPq`4bU-Js}!{jTF-7&N_;L z!C4y{Vo|FDsa(eLJM5z#yvUK8Ys2(I7U{`)LE2HA_WWHRK74r1NXyI|BTpMF20qb> zF%bBxA3RufRb*v~dk@vKL5po@NN>x<<2wpm?DQwl=f%av&FiqoMel>KIZls3b>wCV z84W^Rl#jPJy*f%J_4Vu5wQesmGIZ)=$ZaprA0Y@P`zlj2Gc%hL;mt1*2o3et)ZhSJ z{#ZV@?m#0dqkDYmhbym3Za1Pi>2u)&bdC?TRdtND(#Nox>nm2C=@J32e@ zi!;MGoSM(bXU*|~W=Afw3cd@P8;jq6{%2*o*Xlb>6QwiGWQFguDWr#QQc_e*dHi_m zVBJFrKZd7qq_mpiO>qVJHBu^(Q&UsVGBP5_s?NV{17NLtJ50-$KsP*W;?d2u#rqA^c-WONii^zlzMkKQ-Wo<9$Za|kVI zPBh@>8$>{TZ3_<%cZ8pMj=yTH&bBMnpT@7mhK>aqV%hfP+Jg;AG7*yd!n16Os#i(b zu7CCFRjwbWTZQf3QLrcN_`?kcF4mFVItz{L?Cd_bv{V81#Ug!4Hx14Tt`ZEctWii9$5b@6y%r~V<*rzgjny1V5^zhu=$*#&c}Q1P!@x9*OU zH4NvP6B=C`HF|=HhK2=&g+~FubeAS8)dHsaRa&{z6rnBvJ@d`)E1Pm0Xgwtp(Ehvk z>Q@I5Dtwt zjZFg_N4>o!TJwGvMOMdeB9bIvlk~^Vipy%Q2aHc5z;#Y^uiW2*225L_n~m<`P-;`U z86{rZ=d$cXIx|8_H5wY2k(H9dl+KaFdYfy5FtN=)ZU@AY0E8M=r#d$#?^aS8^-9Rg z%lp^c65rkafh$Uy6y>($gdRMTb#~KeYfj8AN^o9nO_BjA6xMc-kV6wJHYx1J4vXL6 zVPicsQsm|XI}Z^U@iL=BL*ytKjiWw3K5?C=EiL^XDd2L?SKeeS^;O<7wzjrT*Mf&{ zVlaZ+LPBSXaSDQGMM^8bT}x&%nO_G{nmbi$Jq}Ip_(N`IBjt1s0gg-6#_o%lo12T* z4+%6hJf5U|&{SuA8+o;bije-Mh(J z#6h~89|O1TXe1dPqNd`;n$)r~R1N^fB_&$Pfg{h0p)gr=3A0E`hmeDkDz?(jl#n^x zHXMwWQJjdT%cm#))AbsuRI2{jvu9KC@_yVRBSWOobBXMR-O5Y#RUf#lnwk#}l<;Vt z^T&&7$hd8e;~lR&y93w*gLMfSs%TVv$+XUeNrrBgnwzTzO{l2&l`%9^1nQFe&Td4& z>^=0cm>I5wn1R~4H&^j|Q4I4~J4js3xX`*}h3&BQ$(4_kqGxPE^a zyGsA=pNIdYHJFLVf_r}#bp*m-e){xA;HJ3&(}UX@9P%%oh?Ld(5rOB-P*ZN`@}eov z*;;aTb{6fLw5G>7;9&GxRa#;xsU})Z4PPB8tsm^aR#tO=gFb%@(NS4l|Cct=;@IQ# zA)H8Y;Ot1ejvqn!Y{BkALe~~4TaTYUfB90~T^>}LNONgUi~rH-*SdJMZG~=~lF(7+ zmX=bDdOTY~!`&Swjtf%*O&>q5udlCH^PlWR{C1hoGd840s8Xfn>=?pjPfzYHy|Eq_5GwO^yknf)uVZ{ge-is` zflur7IX_w`@7n;{3V5Zr{)@xuscC6DHO^RBA==*r%R6ug*lyCGu^}wf;2?C99(1I3 z{T{$_7$21r2bh(==ng-*r(fTPVKe@qimn!Q2P%olX>SBVoK$UMV#2DDav1vxwJPkQ zf`a}D;iWMTVrZvQPT2-tm!AW}r`7J3-RSQtMbW${;dFL%i0MedmVMxFdXwB6rO{1B z#GblP?_Ld*T3p8+SfBaHlXpukPM?;ov{-=!ANul!Jep%S~#MiN0$$l?r{jK)c#Z-+~+KbHyL=>_>7kKg}8 ztcu+hiCw0V78z%%;B+s`NzluV4T)NwHFADHIJY^@Pxj?{^i`lz0Txc4Ke3b)F!<23 z)y}Uf!JYchrm-(u7gkDs=I?OY^b8`aCMM>Al4bQDtJW~*I^AOc%IO`iuCU6c8*1wx zYPj1M6cyEETIW0VP(wV2pT-@<UK7K*(u{+} z&bbc|v0+nv(e=9GX$@@5mja8i9=nP+0Z`q3^#8^IjYDk4wvxa%qQ)JTA1@|4QsXdh z2}?`_+pz8b>!BIHV)A!Uc`^_KBXe_e1Vo@qVl+whj}EGN^}pM_cW-!8s&UQY?5Iu` z#mV|}YirHNKab#h-~5jBt}1QGD_yIH-_1jmO6}6e$C`cDCG*R%pH?5f+6ruDqn;uL&d@}>7V+Y7ioRZh9*=S9(k1dw*S@W~Ca&K$uoT28*T{xx zUOW(MAR%J2YK$XI)Rdh&vwQeBlqcw%8Ig|?&W4vH#p{b+eQE9ngag@fR zV%XFUjz}AgB$PgI@wh9aSWN>Na3J6#ft;xnJZk~(+E}BYpdhq6ii&BbNn6sBe9tP| zmuV_0UTjR3lh}Ej{M00_njR*BZ+T&n3#S7R8yOlRODR!{$OIJ*Say^St^vNU;)c1s zy*$j}lA10M+kieghybFc)Sa$7fWsk+f{p<2xNt4ltPkXISMTjS5e}l{0LU>gWOnRT zQbNp+XY!TNS5)-aX383b24~uq{3xkxwZ5n)GzfVDU$X6F*hzl&god(!X*7dDQEHjVOO$CcESK>U6(K=Z$5C5oc`wzeerD#h7sz}asg_c37o&HPtB)4LXD!qiA zEMulOdm0HsMMY=dPNdKFs zx&s-nytw=K4M7(md$Rxiz0~K=_n5*6vRyJVL|6=vtgfL^qe10H#pq4^8;^t-0ObPD zb-ZQ$b8O~JI3MlUExY<;k0%gs2ajeGCsUW_u3kA8aF2%tk7gAyVd9yeJ=@_@R#2dB z4|WGU74ir|fx=D*VydIn*`H6DjeC=T^{}4YGyPD%;D$86JBi<^Ad~a#nI@y}Ehp=O zHP!O)NaD4A8$ZgmuR+HB``(;uGrt9hzv;dJFP@aG>kD?N4yQ~4WWE%ySyn7(yv75Lskr`>srWgq^op8#_J`AkWJr_Y=j99)`HeHc9X zR+QVI!;ziy6kRL59w2;3-M8ZVU9t;MN3e5x+&h*HKTXwZwdtKKpW@vq6H0o3iG&9k zl^^;8>3MHrfw-C4VY!~5}CYC=1~8jxPrbej2rEG7jP~I2L~C6Fh!8Zsk=PW zT=LaUMjFS$qQ&{Eg@2+u2Rmw5m!zYSb|OI%UlSb#*RKLo9szEe8ATq4JC$x4)oiM> zPZDfy94_CvG5ULno%BynP4G;5SnlPP7j1b?CYe^bii(PVhyIdL1Yqk~wMmUQScgag zh%N&{ao^2&-2ksoao0tzHq!pualyW0EFUIADE@&u^&kh8sI53j8}dvPxgq{};az9A)Kq*qhw{%x1U?EnoNOppvQf@DpURI41|}>@oSnpHt3b zzR1W92RjFS3>;)2=$P!&?zzM~Fk~PzBSV*26}nneI9RZIdEV873Q$DKo6#5;lU-9f08y1pe z*7+B!oZ{>xVSV58KD|qo=c?@w)_1a&yd@?VP7RqRJt|)u$@nVNVd7Hbe%2T{#%476 z&$d|Nftr=XyzI!u8;45K%|}l(?m>nd+9I&;+lC!#6g@Y~J_UL0tkLa{_x-RZ{Q?y3 zJC&0DyRP8EmhdV5%rIreyxGxKXDNIC^IyPY91Gi({0;y#FC&MlEu((vw=-wX#CC=7 zy4tUQFOk=t@9ejrsaigBQWDn=snAE4rHN8bLxc8cCiw4T0Q2v&sf#17;Ko@)8~OsX zxFD`Se=d#>5Pnt?SJL^=Ir$+{R0=Yw?BOi7ZLHJR3qu&GUkdyxA9i4@|DIU`@QT|I zhk(izHool<2vXGolg*|RPukff)hB4=G`E4uEkEgw+@7& z&g|z?`5D=-M_yhD82a;89vF&a&IWvILPAc+_?7mCBpo78I2SP6IT}ND1%^U-Pgz%f z3+sQjJl-R4J7aI3oaI2%4-zb}^TE$>+Li3@I0q8W*?KNPiZ$J6U=RceSH7ivz>XlW z&GKoB8MF@#z^2A>YvgMM(+0u={AvyA9XZkx_g08nL!Pn>Xw*VTHcav0uDp-31EFjU zs&@{c(5bV?z44H1+wJ8gwgJb>0UoE8I-SJ1fWq0rAl`&4r@Oozy)OBkeBjWZ3~4mwj&rFB%e&Ez6++3P-54+GX@H>bp@pTTbEzMvp*xg6j`rQ! z@Is8qSJ$`F1hcN-6&sfeARA@l zN!wz`Xz$z2IoI$RMHC{i=XXb=wzLf25P(-*5C43?51kupPs*Nh179YB4DqU)@v>%r z4TqmN)zm_D5KP6Dq4VJtL#OUhE>u-jS=-ojnrE?6m4eOm7cLOSZb;d`Q&hYH z@f@54=GRvhAu- z2pd9KlpeO$7iTlTFOprgYE=m*BO`+aJS-Y~`{f3=g<$Q0`=^*!9QbE-r`~PD;m}%M z0^)!OnxZ0gu_dP(x^%O1lFu32pz&ASciUpD|aG4_>Hshz8#SxCdCvM6=sC9BHYBBr9C*5&lgTLRidwkQ2NE`EX{- z#WSW2T7mb_-37xG!Jcj?NUIVrr$~7{?V~aBayVR#0x1{;;-O0{1th4Ep$*~q3I!b9 z*%b3Sjay|Vxrzd*-ilkWROsWE!s?bZDC`0ie>Dj*?7oQ8zWJAKP z6CwnRss@dfVn)%oYv91m4X;n<#c6l2?}H!rBc!?tkZ&sRBaVWbGXvzy@%`N$Tm>Ol z0TSqF|0QmXcqt89U~8dk`(3`^X`FpH>_XKu^Hj0Y6F?l2oWn-tC=U*IuY*JiZ8Fm0 zOrT5QCt!cG8RUa8eBrGxBUg6ynl(Dhmok+Q&y)x2%FfoW%g1wJ zAkH`-AYg)uC^|^j;J!5uWcXzS`fH!j==lq+55U)`g4lv}*F+^uWaYPX7zOiTh3P>d z@(m?PI)2p6^2-l5+*9JzXhL~>F z_4hz=8{`)(Xb>{+`2Go-B7$AnT*npeQ`L|?rn+1@k`F+0WV!p+LKGMw<6fqQNIk4c z6dL|2)On_<`?aCVS>PL^71RXe`??$zKet{#$rQRpcfj!3Y-#6Xfoj&X?}k)0GDhKP zg^N0s!!V_yp@Zj}4VIe`TQ*TC*$$n*3Dk=*V`82a6NBUkcPzg#bj|W21Exmg4@5T@(@@iEgK79C9I40RO z(sxTC8j>gfn5~p}1(D`)WZ|RXg8WtZWeAo|&w{Dp^$Zzr8Mf@3JKrCU4ujfMvWGYx zH6Y5>tCO>|94aA1(I=WsKSOjZNFjg=a`YH KVfN4G{`eQu8*PyQ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2bc8286a2f1b5860485535b608a738b5235fdbf4 GIT binary patch literal 8346 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 bUBK#Am?G!<0|oGZ0?26-OHAQ+SAPBvsL1z( literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fea70139273c23606733b27b4b6f39148315d23d GIT binary patch literal 13104 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..363736a01d8eda1afaed81b3fe5b2047c76fa840 GIT binary patch literal 11375 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4d529bde9c6c8893441e0c0be5d203b5535bb4d6 GIT binary patch literal 15246 zcmeHu2UJv9+HIj?226;eh_)aND5wZZ#%xJaas~rgaxP*UFd|wiC=yk2QjnZf6cr?g zQm{ZpC~_`xc>CHj^Y{F3-prfTJ@c=5>$wbTQDxP==X_^>``dfpt0z>BvMuFaN+OZi z$j1(;kx29WNF)L_$Pt`(_JgXL~0pQBj+}yg|gy(Ok5WS;)kPEU`bP>qH`PoFe|P#L356l1Nfh zX3D@Efib z-1F0dN*x7%7x6;t5T-;DLKx98@dTmPfx20s` zP=#H)b{WcSAd&31O#2k!?Y)%_t5=eWE;$)bmArmUY+J`ErCH_`Ra~~sg}H`A3KmQu%_EW4`I8otNG9v%Z6=ZYPA&FBDfw^tT`%14 z=Od*U73f`9#1T~d^;T1F!)R}lbaG3!!()GT9-+&{Q7g9|u_z1L!P32>Ol|-EU%s`r z)+cI66L&SyrWY1xqU`vrxHvb(o#*&F4x^wTabS-r=i zYIA)S;C0iAbl{AgQydslR@Q4QPP&yl&gQqfPI9HWMNw6B*PsX90`;dSlCjk|np zZEf-S`36&?y?K$|!&5VkQejqBR%%L0A6lHfq{R01-&1TBpxpe^ZhuKz(^J_WzBx{t zq_3~9sjn{__;$F>FDh!tT_zzV#n$a%S67!Gga+BHZWRCGZUh8q>ge3( z=H{N)xPhDdyJJoxy`;_2MbEb{BRzy>>}yzGUw`e|H8pql?3990J#tM)^<#1G$q|*e z6J6_!vn;BA5*HW$RCasoQ7L(BDfaZle3P?hpQx#;YieqmW@Th##3v*ix3skEwY?J* zwDyE3`QE*IuHI^DR09!hg@BfRZIq8;x?|h%f|=2##tiFV*WN}``6Dq&NlHc2ZKAyn z&0fRGVUkYUOhUU;@>FIfnbvN$Cr_TdcJ=BK9eg7tWWa>u*29O1owc#nBOTS;(ymEb zNjg#O?PlfocO9hev1#1Hwr;1w;lqciPjZ|XR@38yLV|+TPsn$kpDJG1`|(+^kBs86 zV^`YCAI3&21`A0_>XON1y|lAeQDfhk6n^sjMeNJ(AB>Rm<|7~UUtTRvGuTSb9c%Vv zzS|o3v$VASGA@z2K6)OrPF=P0y+FkB(JkmA9cueI{B(77r5wIpT)K4W_u&cRJYKuD zbjttw%S$YbV;;S+ z(AzVXxnZwuT~*YY+E}+qcun203cc(a{O<@h6>~ zpYIkEbD12m%xfQQvZM9;j7j&l6d8*aj8L0B`(^3gV{}HqSfh1n=f`JfMyVkolui!Z zy29R7r*(rkKd^kZ%__OE{;_7F7Ma@E*m(E;{WwXd_Mb&X`|~H0lD3QQ-D^GEUhdkI z?a)fpT1}0bZcy~aiwk52Ud#`X_bud$kB=uiI5_C#xh8K@4gcIHBVp6Xmr6^-!90BE zP{+X6;^W7Us{!cM)YN8U{u?6J9W@{CDn94MWEqgN$Tcb8SU5GDC$PAS^F>307687q zb&gjWnX-mU|};US@yK7-p^87p9U!?_-~map}5iC%ryng-qAxc4*|BFYDev%AR z@gyrLP5W;Jf>g~IGz9+QG4OJcrnYu0akfsKIu#;e6H?*b%CliZ;^)r>Q^H-QWkH<; zcxQM`46#q?KexCY5)#tWhC*nmPr;`c?B4IaTQl*-1&b}cZFBW_}{f9Op~iI9YZR?FP%nE1JmJNdV5vqH6@vst^H%W6t4EiGjq z6A%(Q4xHmjSp+aya-PDvbN6mF>|jDdLRu5HUqe%~{?uYcMa5-t!B0v{kLSq=3X(;F zg(FM)#}Z>=Vv6M|1BAT?J-v87Wmsz~#DVN)Z)Ba>UzL-S6C&rGdn9mE^0PBL!o$bF*@8vfAH; zOLPRZwye9iZ%6seOm-HGHP=%475AKdw?djPML$dB_U+r;;#PP0I@^Mc8-^?8QyJl& zA|Ef~`XUusWl3hHrk$^^uEvSIRmmV4zL1bm&%=FP-QAqrlWmvYjf^-a8y6W(OibwI zyFa7exua=hl=8Lsa+CP7wcAfPIi))~I@W#s7FH^|RC`{}o?YJ9`=uNlG~kA&mR3Vw`aGO^5rO@_>|fe$Fi1b$cW2-H zVk)xJo!w->puvr0KB%hKf8@mACBS0O?5gLMaeoTj1E6HuwKQAKlmu)LckVbLxsg3! z-L3=rndg@1*y#qLZLQ(uO*JZ@yl)-sc=5}87IC-F4wo0QZ~PeqbbQ>M?$+WhMH#VB zDF5H+W#OJ5Y$gC3`bW~sCh@EmpFE$jycWy3*%?Y_bnpnEv$HR+Ka(~!w8hUy{WoaO^k&8CDD-1I#gZWV4f+8X+*0hv*z*1A# z+Zg4CAPV(0HIJ@bSu8vJL5$K7br}$~X8n3Wa%owax`#&&_`BQwsrIp{HfO2&y1FO# z@87>JCBk(YZ7n!ob!6k^VCAkZL6YIkvHj_+-QGJtMzqN8Kaonx%*;&4%+%Tx$S7ku zc(85IUBl3j-X{TG#=@lDeel4N#w+D~OfEt+vZT|wwAa<`BO_itcI4Z2Q6aF4l`B_{ z?#pVXB=XEw1f=`U`FKwczV&TlM+J|N_Otm3sD{^lN;l`^;^L~>#Kk2LQAz8Qkc&tq z0E?@J@#@ktP9C1*#FX6QOeS-(n0Iy{pw-LeMyj=?Pcq#H-$OQ!TVWpOLLLAD`|=HCAWZG)eI=63=+i!Dj2~>duNDy}7Z|zJ+Mc ziTK2K?~X;s!~hvfZLKjuXlmZ8si|qCZ`-kB2U?JjuyF6>lP7#R1}T2rMJ=fSZnU7i zDI;%a*^Cm8;qtvM7&!bKQu6wwnBZe{xkry4ty#T#^;2B&$e#UkOZQZRvtr<;|l0cp%W+}}bbI>p)@dS_{sVba=QX#}|}^qv|SDCV$!dy^-3Zgz^Fyk*Ol zkiB-{K_Z3;$`2(vad7INTh^kgHmA~r$zTW737Uz|t!W|z6j5fFG;!0?HEip5zh=J* zqM7>B)~)x#!jfe@N8`YYRb`oX9i5ymcpt;{XtfwzjA z0*@|Y-}scqE9a#Ho=DIv;40A*aas~GGQ=ad{e^S7GKjK%@CS2Fat(^IuAw2uJi=Sc zbF`=Wj;dTdDB=#I{PFxjBhOxO9%gtNJv?LSuFRppwW*^oi>t!6L z694`6>qF%a#EyD+crfbCO-cUQkeJ+ID_EzK&lOZK|4{80IG{ zD=S~Se!Uj6ow&!)cUQ(UuL;K=AUQWP#_#RGx)Zzw&~cnho_IJ~-al5>>5KzGhUDX` z&KtHqbgY!Wf3@t}ucmi$DN7ZCTfM8!y`=CiA7!|yuBa3COHNKsNKU@@wspesMb!xi zAYgG>dCK@ig#tcPGqXnKWp*BFC1Y8fgH#yC1fEer@0F`k^M^`@8~d|c*_r(<#^8pH z&n?wsr)q0zeky9={nNq!2l!aaczIzFbEHXbGsEak z&LbTscNiBMpx++N^WLHN{AZI5MJ=j}L6T%u&=pERAh&N<0;go@#b1s&2EDeejyY1v z@?(@O-kTu25q+|zww91v>_St~^Kh-w2E3e{(dayWtRP#lOCSK;xS@e562E%TXe2PR z3+~vFOt%4i&g&4-U1v8szZNqs_)y-NAH{BX~{924GEkVHf{M@aY4-B$~! z#6?Cb$VI3M3JNB~#XYtA7MGgJku4Sc&ts&q!7ds1fk^gEGI7=^IonL+jJ>?ZU$9I4et+Ez59Xs03`3RD1B? zft1g*dmd9i%eMZmp!!|(OH81s7X0pQE@(;tXKN_EC#+&9frD_7QFT7&FA_Us;k0S#Ysnw91#*12kvRQLezZ-AiNtC)X*mZ#S;8l zLs!?5Ccw}CzRi)fZhXcE#C^fY#MjHbU71a`>Htn7_phv%{1^6F>FI_1L!t6dsAxRX zrLC7`8#dZUPt;8}BRZ&<*@s(vAco4<*X~H`W>kbFf`$>jq@~dNhiHE0Ej!(JZie~< zfRmEVDdQ2T77<{bIxsD$@b_=@Gi0SwSC|a9*ryaufIUK-H@WpMauVBmwB_jl( z5^evauI__yN|zwCtc6pzhyso$^wYnIjM={f8Q)9)6*4lyDNw?h|2${x`N0_#Hvi$$ z1B55hBn}rvFUK(&LX@Vu`s0oc3-G6|kcFy>+ft-fLN(ph+#vp3FM^W@#IP(On_kUl*{qInH=)k_KrZ4ueXs&nA!WD`&oO z6;)kXxm7C67>AohnW1-w0|1m&bT~Y&Zi+$MpUruKtq|hdP+OVwaz7k?HG%-9 z!xcGw`g9co2A#biD^vK(-AQC);1=PEFw_zg{}kio<0E8hvwJHW-L=W)+LbF+UG<5~ z>&DXuf=r1^%;439pkgn%?3t8j-x8^|KZ`tT?zSx2_}8sC^n!ou#zWf68YI^dW};sa zD@?yX(mDRO^S}v}d0(&`;_d?`5Ds$awl*z=1+|j_8}?dtR7Js>;of!nV&=I|tDZKe zZRcFG=4UxMD2hz#+t%t|<}aFOlnDi*zR1^CcKpkQ z$?4(BqJIOl(H$znWfRGFw#8>;Xc9y+*QNWpYp)(I+n^C!OsXm;awM!yB&hVe&XiaX z==B7H6QST&gh~Rfq*LXDg%u&0H0FDx(_udBBP#LvbB!QV!7W?%bI1(%wO2-nk_n?3 z)^08;d|4>M@ zXXn1@w8C(Q4#VWBe39q*NF$bWHa40NMrAft2G95Rhg}nwo106wfmt)Zi(gPotTsj7 zx#JeRW`%&-&bv*$eNQWImaNC-5!zwv*c7O7xN8=O(SIp_|3&#&wkT3z&is`xb9yrW zzC)o@3GFu&jx~^AUWWEu1BZ2fqzV1xIBHjQ+&^!1<&{H+4HW=F(WUa ztgY+$?C0(`BObec$d53ye=o+FA8pN_>dRws+p4XlCA4kZ5xCtmtYg^Zs@jW-JpJJM zC`ZT{K0X@Q05>iJ?TPT$(Aua^AZ}W|@MD25LFFrl=m!^28%EPM<&YH8+xh~TrdLkMtgJ-T~MSt_h!%%R3qd< zcAh$)QZ!2;`yERUp+;X}26m89#H5T+-m(j|{M*^sP z1%o9Ua(gqI)f+ToSFe5yhDMO@2%pLLf?0U1OP4H>wEF}}JG#jM zTWR}q2g_5ay0GOS>C{z(NsBvvKSmI*@xj*K20MDLrh1IhNmtiQ#7kf^v@t0eo@2Io zG1=KV!rCbsmX`6rk~NU&k=hB9^KMLeAmx$(W%e;lK{y$@c7+o$@Wd)M^k>kFYGL{H z@QaHxYk0wP{cQOrM5c#Oe}TDK`f~_1Sblqbl>%LwuqtIo zKc30$jCuIOJ~1|!(SLUO($Mg*3nR>}t7L;+U8?VlHIe&5Yo$H`q$fOjbf8jpEEHA~ z>TCpJnRT&08(|u~aMw0;xo02}TyW^np#@BLViw5&p!}0=G8Q5?R}XV=J%+wsZn*nZ zRVRMTY2I&n+~R!aX3@{9Ku-$kzq%g(SER1OYI3Zf_oLY5+-$+TtSl{``HoJ_g!Lf_qu{otj`T5%@Ok&{rOkSLxW9{F zvoNKaPmv%9)@%hIG*n(mB5nTp{3NIS-|>xGG=`ZEmE`88ox-rM#SZ-MdtJLRN%N!_ z{{}#L8VKI64NC|1Dxt~41EDuSuT4l0LjE8lPZ^Fn1X1{#jZEZQpct}<`xF^NG;qaB zAyEI3XtJi|gSaDvbqDZoUzq3GtLEk9b-DZT-|$1QBs3xo@hw7VAqff~xdv?+Z7}`^Ei>|&FqNH~9;RSEIsYe1-v)c>rmg%XVbJ*#CLgu9KKpgUv1zs`|4(*f7a6>#B=y zOg9gNeVE}fY*sMQ{tzAW+5eQ!oZ;4QM8GqVt=I$nB&!`hd}(&Jf6mAk44N>g&BHy8 zaLA5;!bQL^8{f4(^|xq=e67 zM1I}3sJi~V3;VCR9u70cug*$6EZ3e)fa-6ol?>RA^BWQELH0s~EcJsnMj-f8(EP)L zP6Q%D3e<9O$(S7NwZ1G*MnrNc8ygW7^_i@VNWklVHl>IA=Vto}8L>XqxM;Y&0VX=) zNK*`CIuZOm_OhyBNcY6#;mQ?B!(FHC*+T+;Wwl>&d@gvgCFw7-BFT6RJt1g&c6PSk zDE?wkO`Gs4bnW(*izt{i&^H&KnHuBJ;oY<;ML0EocjPuf!OncSiezh1(ppZ=&f7;f zNv6u~+Vza?%~Ht5xRw&mqV!hsO3K_id(YoS6Tm%?t`6i?#s5H_n(- z4Uskih;_btVCeH}DA@(!0BG)OgXAdSLxyWt&{BKewCY85E_|E32gh_E$se1l}^CFm| zpic}*$#0@pu3lZdfj4&zV{C5eIoSEc8>?Q3K>nG?;NpOL!L0TK;W?JTSB_$<^(QQXWrMYg9DM4GcjEuq!=NR&H zpOCA`A_PfmPzp%4QJgDRo+<$Gb}dgcElWae>Je$JB#8ZQbB8OWlR=ZaK_U_j#T>pJ zvW7mQg`!~=%}o^%zBOTsdwPSkBC%jjd{F~}cFADfI^Y_a;ohU4VD}jKp?DOjAOVo{ zeu*N=df%dzO3=iDOm$V|XP%4Oe^C(Ly}O3Uie}g}NqExHq>>RJT~s&M=T?+nI5*R; zk3QOf@UTh2P^mCWH#R+qUol7r@i{FGjk`=lA*vcNohp=r2cJd!?@d>2Y#`{~8Kh2& ziEW=})$B86gG5^~T4CD4uPrfs~Z+Rgsl)Q%Y`hmtX+p8hB=K2Juso6RMu75SIhs zoN#h;CvXaDIWwKB*jA8EU4*opY?!A7*R}yaAlt6g;N!F}xe<25;nbiYvmH85H%IoOz_h>)nDTSO z@~FZFC??6oHxab~s%b}ep&9a2v|ZvddJ33kPPNQ6H=Dh>xJ1j_yP#mUn^8|=h`tBV zR`E+pbVx4t%Qlgpo2X0%8~U*f;j*4ds9$}=qtoRkJGPdk6;AIg#4;r#&sZ-7EuL9@ zlvj6dx^nIu8~2`f6pWflI6kz=PE}tkLx(q7Y{5Z}Q69;*o*R)U$**?26kDr&Q=R zaIvIfpl$e^PmB4-wJ2VdZ(&Md(yH|X0Hm?A=?i?B`>JFnci-p@I;l&<(#snD`z zqWLC7L11vt%(SIj5dm-FoWl#U1vmjA%zu13IStV_TO#vdb?)4A_}xi>I=vsaLR<<8 zAb50hRMS?{xAR``th5dty2u0pY_vgF)H-nBJY<=3x(&g+C75(vkz>z7jx`CQSECIS z94&yI^vq75q4xsGTMqhvl=q!kTCVCdw3-kQxMb!K%OA@3y{(w$gQSzOJ@2?JbHvFO z$@GS&r;6vvb#RFoSm305nDyxUoWr6$!OkOfmYjz9PsDwrb3hSOw(WC$;ocUnT3h5l z)7RqNxV3_j8bvK7r5iW~q86JNDFfb2(Q`;E(Wqwug^;auk%?d!wsrSh+xOvx^5*Q# z{RLy;P^}(6v@85%dmXYSp>(+QH~Tf>v4W<#8Iav>42Hz=(c7J+Tu`JgQq54rUB(Aa z*)(M;Q;D2eSIk4(8bl}g$%sYOpg9oXW7cJBEr2F16yE9r19rw|2)96|({rIgK{1G5 zci{ZAWbY7BMR{fr{wkNT*GVeMdkY*1YY;E$6W*DQque-pg<}Q%orP0eE^aY(B3 z8%}Ktm~xZ7cD{)S^gs=?`2Oy;%ukDhH?pkYI{WU{7CcT;7cn<&p4W@@A{d%8GF)!i z^s&M*St44UoYkDx1oAa9H`_8dRk92605K)tX1jr^G%V@-24mnH5zO@&e%NAxR4zoM z^25FA7>>11=RPa@8k&gs#kdC%6o!_gqob3@M317r_V{$ru*0)7%&j>d4JGl>qi^}X z7RQVYs)yZWARjdl*-SugHZc z_$7B^MGhX0AfDYJA~l3@6&vBB2P1)}VGKDP=*9%=P04BJhSn?@R-y7%Vay?_U$DBm z8mb!c&<5eE3aZC^?3S==PQuV=Ob|`N%0Tyx!`ZDhK6M3^9xCbd91opbx_r5t80k=+ z^L*GI734J3)e$*(qM4`U4;{bc@2LEaZ#p$#85Hc@1W4!h7funzRVVIXlHjg(%T-im z1}_3ZMhL|gNiQ7CbR2_imy4@AU5N+ae1`5sbo6Gm$n_h)!1nQz=4$3{32iEMab+5tS$T4=5WlHR*>r}mULnu%75K|GP> zf}}`LC+S{ZdfA)&Sfwy2O}nC*Oxv8cwQL*rRoV78Wu+2R^30b-@>KvBL|PMCW=FGf zzxr>G>Pf_b*F%1u@QLYO!{x-SBef#MOryO%1ZATBx1C=lvO(w zk$?oPiKJ4gDyiQ|!N;{jowDez4-uLjPuE|ZkYP=;YR>nVzPVY1+n8l*2jC0tnH+H^ zh=fr9_WV~9H!S9^kR)~B9JO2p+c20K>(~DE`5|Vk{0td{*-&C!vWJA@KylKXu;JLl&g=iZq+_qS)}H*+10VKk4i8 zZ9A|H!!SO*bJ~|Mj5`p+xca}_0`Dj`b`QZ{s_r^h-7mY?x_jMlv%xOjaKCfg#r?K} z^+8V?H==`!vx2OWtb)uzdw2IcL^U}%r+@u`tc#nST>TPl2`;kr&N)*ehV8n6{&2m* zr#N8Pk;8i0r>}U&P4|%9TbBG+7$!d+JoxbXPkT<>OHRR580o zbzJ0C)$1zNUz$3SM94oy{C(QN(BO2unN5_MNYY+qE?jf&PKLmDx?695KEy3~c7B!J zILK1kwqN?Aq7Pndw3}EmTR$2wU&L&Rl}aSZ?Z0UnwHd=c9<5o1<>kn6eTPK|{{NS6 z_8=z7Z&$;E+?<^9_1QAdTp05#fk3!oWHcN= zO*w}JY)vegHoJ650^@piS8sLD%z?(>!y^9n|9Ti`{cjUQeFx>{HMxCq*vy3mO>Qhc zQaTXBg2p4b3f#v(7tFoio}86+V%xTD*6)7VOzK{CVUM^ZJ$rW0wkD?Wmj7gHnxUDQ z@ZrOU8;iYW3kHIvt-JD^oYYmYw8+SS~=FDxu9 z%^AZ)FQ)8xt3Fd885|ru@YFHAW13l1R5aF=?~*&ttsZ!nd4x1?b_2~ zBO{~fra~^P^GwS2w??VP70YEDmUsWpys%l<6U9jLLmwL(8X}6Fx(i$r#l*2^n(jrI zAA5C_P#tx=v5d?)dhA#*T-kfM$7^twJu^GdaAsE+g#zE-o@H}BmF~a6pl5naw!V7x zs(mmsBqSvHx8Hti;lrLKk4IQ>uWF!sY;JDOxh5=ct!?hvVdJ_w9IdOZ?cw3k+}1{a zZIo&~*Z&TOW7H_rYo9-VeuuEqn;yF@n7x7M2`t~KYrjkBlJN|?$YXNgv593+R#w(n zUm1CEyeXxHZBgtQ1`AnPYbz7O;qGqX3ntcUDyNsse~MAC(?6-KOkZIP5*EiAXhpCDwD1I{R0=ygaj||MQFUgYUP?eT9vq zM=6`P?;pxjguVSu@6kXEAv`ESlXTX`#>Q{btS@-Ek6hLwpXc0jAU8MH@Y1C{rKII> z>GT4LJg2VKy82DnGnPjc)=l##iFkFp%9EH=^|!k+3A%4AOVwUpc(NzeBqKbLHD#CS zIo-K3h-VKPueY?eRyt;s?hg@=3;%VyKqV}PFx8$py|fR*=3gG||Q#5phR#(oPIkRuyKJD4wQb`Hxjw~AlBIX-9+EB;ZH*VZ`b2U@K;4(Ls zL*41Kc`l^AkZ5<|>B%2xtFlZYq+Pj#Q%0=WMrjMnFd8w;lJFo{DP|N)R}Yi`0?7F*RNkQ-$i2BbZXO< zeksQCOz~{xKt%}Agd-tw?AS4DXwWn!XJwE|KyYVhm`Nw-Cupc1IB>u%KTKFTuVVwl zoL*d}ZQjt^C|w=!57&JI zFU7$(7q0J>(hsFjOFeXoHA4u_+Qll@ZZn(I^9u9ZS|+S=tMJ`2`x4OeD| zoh}?h=mEuJwsmnGvI{)e&}Be%g*p| zB~AGsyQtbtOcvNkwq)-8t2b{#f!447as71aG?WhDSF%-EKx48l6;X$BpI>&1mRY`Y zSZ8PF(I0*Y>MbSF`Ay7maFmX8J1#6j9HFaApBP=#%e)3UIKL~!AW=-gt}axSI8q+W zFP&sppCE5tPC?b}oCufkp3ZHvW(-th-ud$WYLUA`sHl2gX#zKPs(0ToDX@=T^+1v^ zRP~^^C(6dOCPrS;xoG@l!B|p=gv7w}`(nZK^Ydu6p<5}MZ8z9(BsFCr4H#64$5nU0q!xBO`N)xG?vV@v<224#C~a5!3W7 z|8iekj5D{3v)eRknE5eF=B0l80oK}52>hS+#fuk90FHg)4q(rwJvyK;V616mKYo9*uvRhjmmxlvHiUyU9FLO#r@@yz2UfpZN)eQ^GGm4z$>io1_ zu4K1>g}Y%KnZ1g`xsE-*UkOrQM2@y%t-Uca(HAPDFz_NH=y$2P*e^6HY2ARlfb1C;5D|Y^Gyd`pS$~nJ|a}91eXHhZ`Oq zP7^b+v`pw?I>1geHaABW_qDgTpKSuRiPtA>o)hOV#0kA6KJsMt#??|^4~>=nyRIO| zD(~*nS|N!OzirkJLC~zaDSU4yGs?7_Vby|~zV0H#8hO_ao9GIUHVc8Kmls36%2f)b zy~Kx@N_XllQO%!jI%1F@!pFx~*i{)O+{M%bFZr{+aG<*96y^QmcIWqanu)lU-?`w+y><{#fWJxr9fQr64Z^^2=q%6lEU2hrr@D?+1+3%4 z-U)neZx?*=;swb2h9fS#;$WzltMcP2t$hIjG~K|G1+|#GJYUhQTuYhErW9aLGOE zbXLWlrFDa&G&C~eCyv(Drtt~>?cj1fF!TSh@w)tN0W=#NGB7Ph`Cj>(RS_%M`1Ne$ z=i=_X-^xf9XC2M=|EBG7LEs81-M%VgmM0?)jx;9(iWc0Zez#YjKh%_NIkKWA79K|C z#9Bp0|J_|@wYC36fWGEFK0eM}DM*PzDW?i!r*xYf`na7z`h9=qUimU@xs*ad)@Z<_ zY|RMiw#rbU1(GQ0IoImr`BT;MP@@(prQGcqR%I&lRgz|DdmVS(i0uFn9ki9-jrBFZ>#r*BYkKLYK zPG9#Ukc-FqQ{)e*hXkzrTm$aId7X(@!VJ{LfAa?KN&pA!I+>PViGC377IK5wuF-qK z&J+|9v}Y2MX*4Z;&86n6IrfI`v%Q+sN3iW_uFB_FK+C?j3A2}q*TPKF&4utAUv>?)6R1wP0X-gV z74>BHg7;J=eE=Ln2v|nEY~j#Djf-2ch5$7W%(*M?_$^1rL0$Zs;n)6K0u`~sppr$P z#=YV^T21A>=lWyRy_^AXw`cmT&THuJz#5qF(Qsj9**ZLD12nKhF6~y!YkOyB=UlBj z{clld08Mk7N_YHL9)f+$d8{kua|pQ@X_NGgnmm-JfQnn3=_zjUg?<4uH_eDaG-Bpl zXk$g)hBc(C4fDSRi&dH1W+{yH5d7?H_TabfYbKijWfH9~6qst977Y5ZJV+`*P)A3{ z5L9Qq=CXNBoT>uwN>WLQhSu6x@~eytm!*Q*SY=%u9f*9)%*{n0z4|lq@!P%v-YwjU zJs+LcDqFTOFQ{_oImI zVq;n>(hmM>iyzahTr2qHT?fjMlzjN`VZqu&YBDHMeXZ3YzfjmqXEhsaCX6&wD79_- zc0%(jL!jw>NOg#B^z*KYfu*WFyf=`;p5^pT1OV|6m{T3d%x~=2ghfcj&z}b}nRM4}7@*9PH5avO-TPejmzD!7U(y7J;31%B`=9S0_MN)(C#79l}$zJID=aT!eko z0x77q+)YFcff7X-%MulEzJqbZx*&j)QDz~6uTeb5M}yf;V007fD^N%qZSJNgmI9d< z=_`@QT+4aY!r~S4KDfr57Dn~cq_2J)eEk3&&vu2p316o+`G!J4EwBU7H%iV*Oe)dO zO{)?vL5yc^>rYWUc~V;&*>ot0Yq`f@4aqNG9?7pq!i>yeXWs6}DyjJnYYviUR4nqvD1d;(09obK z44N8vGk+dIY^)j1vlmbY6g5N;IoA?l$2W$p*f!eQaCVx8SFZ{tpAAEMA_(aw^akF3 zR1X-^1S&|TI$%@__K(_;ZAYK#$nLr!fdyvV(_a@lg<+lse??mNmqdX7?xIIlu{ceV zrwG`HMo9ROA}Imexhl35dv@`#XdqQ<&Hh51io7#zbp%QHuVEhw6Cg6C>GELq3VOW# zJzjmHC>}Bgne00BK({hZm1teYVumDc3`wnuL4;h3k_Erjv1F<>7-V^ z4iSLodJJs5{jFP{dR*-7DHIB-$|spG9CTwvqQjr3)uqb4SB+5`J-FIxJlZcsug!XM zF}x3VNH~zQUd9nF_MAqcgz+Re62{tO#w=6*Pmmv0n1tBe>4c<%bo_(at>@y25q^%7 z#5puOfx5|KeQ#y>aZCR!k`4$(yIE0DQSC(@j*v=A!AN3W#dNd@#5Y_d({->Cit6LC z%AqRNb2L@nF8wGQ2Dn3%n9_7V#@^(a1IHZ-xlZ{=ZLC?E3kW9&_u$@;y^xi4&TWP8 zG4H?w3S5TqUe{8U_oMRY^{#VEpZcU8vi6+IckV#}`ah!u$j@a=vkpP|E~p5B75F=I z+jZ@7F!uzo_DEg|s=3>va3&9;pJ=N9pMM=jB4;&`&e^EvpeP)=T{axgUIEF|Xh#$L zaa~$gHaymawyNM#c!uP<^Px-K>CQ{1qvpMyfnSK6vIEC(>F_tULGQ;X8+p&EcEm3r z6ugHYo6KwODGwJ_w+6UGx$x%Ao1yg+XCJhm7oAodM%oR??5Kk_e4^(?LBX zxinyZP~_B}<8T?Vm?0>w?fYe_mhBHsz2g-R9Ze)_S$co@75)DP3<73$%b%wEUUay9 zI~1i9D5OTl0HO@&;5Zz>9DH=h@H3fjhm&-5R(r0a$v*yJ&PmexbUupETtEGgGDOAoarhq(ZoX8McW>cyX{N_JSmG3pE0kiQGg`1|J#68DfMBBmw ztc(o}AM`*D+%cY#m|#Jg&MjuC0?5@$NSI~YUQAsoo~5a)PyO*BOQt#t@YxpZje{pl zb8G=<>S@f}3>*CFM*~k%31q1^aSw_`L0xxze_v$&i6YHcZ9+BL#?*6dJjD(Mebr!m zqaQ~`-b9K3g>`RUyf~cC%CCQC(8swMmXRR0@br>}MSRbl4}58@dABa4y^y-=Zv=s-FkX-Hr#rr>Kq1(!|1+x2i5KxucUAQ`WL*86%Palg6K z%z+R&TigRp)?!m3Y(K5W@e`C{?9yx>ewp`YI6*M_!>z{Y=1)AvKOc?-hRO?It=(Rl zXz4&xI?cKhu!c8q{2h>zW(in&e@}us$$Ea~zHLgJ+uz|B@(A?sDJYdX2?-LTLg4E+ zFD)&Z0)2Zz&)LQ*Iek)c>WoA~x^<@29xEU2h|(;luDq{Tg*@HOQQUvg(Ad=U$wdg9 zsE7*k7q63hA1*EpwR&Is_;qspJv#gn!6^B^}$Fl zi&BL`l2W$n5Pf$2>HNnQ+KcniBdur`^&TC8EYSvGQXDE%n1GTL=~5;uAa@eXP&@3$ zbwE&!S^+IV!DLlyHdw`B?(lBrCs?g$ZEdYQbYJ(iwsZ@^Si|#7$kUA1cM6?2v|NuY zGnx-JJU>Hpgph=>ltE?@$-STn2$0huQvv!)*~K!>dmu<2`~!tjF!4Hd;DN4K&>$7B zg+dqr9Rb=RaVYhLLL3q4FPIq(&6t>&&;crifL_+(sV|6XW6$mmApHj#QAfKRZW={q zXgZC|H5cJxZc%;(NW8Tk`ibVHcMM~Hiz(n0k!!xrR`g-^P(-*zaY5P zH9lyDaT=c0gx3M^LQ*nZbtFb*B!&R_lu3qVrti{(_sW<12nppqCYn`d3I;d$Pfrn{ zZrtE~U7(u*JZAw-mA#sp-L~=|#utG!|-L zHdEsi3waZot%a*iyaI_543o=%nUJ0tB$>Y2H7!5yeF6e>E?$wjU&Rc%CU%T=15~1c zG-KL@td9I>wry>2@l25;b$uBS7A03`Y69S>Qsgx&234E5uCOxE-qjX~mX90?8UZLe zww5cGt=4wup=l{hIQOQ+dtO6Enlbdq;OzPH)uRFbcn+xY^~nXuc#>beI$8<(9F=e? z_4Jf;D{OxG+R`KeM&DGVie=m{9zD!%v(4xUSf54)zhEk>dH_f)6paNFU_8(#q>s$` z6)67A0_M9RU_z}Y2<;A$35zJ+2I!0)+86|GWYr`_6njkWe8nrYjKNe_ z11iaCY_%IwTlDY+Je3l>7e@8lHKUk~jrD~t{*z`5GH01A?>^QbsO)TR4rq)-hUSbF zcxp7d5@*ld{~GjIxHpc9C1ym)%|E>aot8mcyS4E}oPA>vpf|r41l3AMeZYRZcn@Pl z?jto%_U^)O+!66;HY91Z!aWK+I&v`>rXwfs?GhJ*;v}OQPF!CoTZo_4j+V6;sFI|H z-rcE&g0H!X1Q}7w(}2db`v;Gsu?c?VE}jAhH%ZJGdP{pqCC-E@)KQ=ed&!<5N=sz4ye=+TkTT*tPve`-C( z#zH;)XI`I3h+GIer}rEMM94-CyFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0b62f441552ac5847857cf61f0b5fc3649377977 GIT binary patch literal 14217 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0aae90dc823c3cae6a434a27f8e703d095c8559a GIT binary patch literal 11176 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 NQdU$~$d$La`)@}BYaRdq literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ee26d3dd20b58aced2a12663b6ebf130966ce9a2 GIT binary patch literal 10057 zcmeI2c~p~Ww(dVlEn6)`LGWap;mDL!41Y zg_1!K49Gk=gaieGfXsnl0%0Bl1PDp){ye?TI_sXZ&Ru=G?_GWG>OYJ^V)A|OyWeL& z&u=H{S8J<{>*dxX2(t0`&laZ<@7ZSar8`R(nK#Yux&nKamN0AK9cY(ZC&%eEZ^TO?T&hU-saaz ziw(-anLJZ+SNJ~JN^$G9+EriQ6s?t%w)|4~(Cka_qxTL@?dFbq)4V2j=#ZWzDg}wI zfBnmKvtu3{WKZgpvJ$2y`vzN=N#%2}3={7@zHo`jk0ey`KdR}+-_)otK#-j~eqVBh zYotF$RwF;h{OjRAtiefExb`#svEgBoOGR+)3|(1y&6+h!uA7jnTMIOzLs${|pX%$= zUmtArasO`GuCvI;{>+&(1Na@tTk*TG{2HaqRUAkh3^(X!oWHBjV&ENaRf73;o>_wDA`)|mahKFw5w$1YF*|WZVl}jXEN3NrE z`mxwMX=!P)hc2DWb*rgv6*@k)jEIQ%L0(Ve`%Mb6hYuf~nXT6jDa&8Ac9X@$ix;Ag58g`-IO+N+}O-yD%@Ht8Q0z2-C08v(--tH zeU8X7SP2?>|4Tp0~W z%*e>F=BcV&@$td&N-!)XO-;>Y?!$)3T<>fo|q9uwwS`u8TP*Y`#<&`IB=jG`#Xa4s!mB51P*^5 zZq2kA?<&k}T}&~-r{(76*86?>^eN6joStu$z+2>yt?caVevm!5b9rGx-YYdC*uo-4 zUSBKYRAT!ehmmS#cHYSeSJL4|6iO>;B0q@+O%MTpO4*Yh7aJ?D&!rg|8F_GMv9>NQ zy@PsfZEeY1D+}Mw*SqwIRFahKxpVE_)^ORn`uam$4Y%qeDG>`@q1>ll?5AESA0uKK zM%!{Y0+yH%Pd5JT?e%?HT9bjW*M7@fyo8h#Zio@<-I`Hbisg8$EY47Ty9zF2FyxWe zOe+iOmux%E7dxBS+GrX032xDoO^u=ijE_LwPY!um zGqH3E>sBYxtX{o4Kn+fNveGDc`IVvjb+(O2kR%_!4Sw%zSEu{l$ zdv@UC3^x&T3{J$GH*e7T*VWVG5~4hZ7|FH{i#^egr1zdAJyN%)-CVPQz0iXp-&3`s zbr<tFmV8X5_l(3FJFu_p$${A2Kl2 zG6)iR2yT>%UpLSkXRJ1eUzh5X_s@1$8T8ftt0a$X{tzii2ARxy`SMO7_Yb#g-`-f2o{_QF6*S2jCmL@OX`q$1@4$gO z=(9x~uJWKg%MIj>$TPJODT&gs`OzoFA^sZY-|Q>)@0A-$B@({0x6}Hn@D)ila1csI zU*>qwVs=pcdWy4ha-z%2%R?v2h5~SpH5|9p$7_>s-@bj>-#_l%t+iHuetzSu8Z-T& zf_klJ;$kF`6z>|gpRnATO3TTwmLtx{5Su6H8<4v;YaAb6TyjM<%Q^Jx@87i2!oteR z3K}CdR=-cSq&K*S&b3K7V%Xi&JD2Cj`1p?A_V(?2_Uviy?v|^qtrf?c zo27j%5zZcBsa4VctqAUhq^xaicWJuSD_riC9}uqZhkN3TWTwV}_%a>b-QB-@`CU@nVp~Gg}VR6;y&kdrtSi!?qk(t7Rk` zb5cbkshcYPlM0tO`Iqe}_UqYBHeJ3vH`1z>VVx`&Dac-A*G8wqHH743Wf{> zvr5;^BR9pGMl4f7iH%~Xpgn*R!^h_4j{o&z6^sHeue?)UIT}8n;}&~1=Ugo;80Vu} z>i8^ns3}$X)vH%!Jz#1Gb8FWlpUnsUcePkKI91uipBia4I`Qec#HzH?($ZEa!jh51 zsWlcB4avs(p#R%J)}v=Qbb7(X`n0MllMI_wB`GPpOzT)X8Jc((j;oN}e@WoN;~6S)o)6&02B>(_fQk_C2-ylPC^hyq*{=6C)o`9Zj4TaYi&TB*u)#JyHvvPA| zXfzsA8#~S{JG6cS5l;zt|Ce=?fWc1=uYWtrBnT!@jd!RB_DjM~mX#UuxQ)>Z3ky#U z`_>+b!{UJZgBfYF1{^cY>bS-zkzn5CwA+ zHV(n7r>^=rWY+L{|FwfbrfXjd281Tp;Yp{z$%Osu#ebuf{`+0)&?JlEY1QyVNA*~Y ztQ6R&m_mk;`gYCpTh~e|jXy>^@O~(>Jl85CE+bh!db{SGS576grJ+=1XvCC|sXnbC zO!u4pdF7)opXhiV^X)0t9334^1Lu$e1;$L;bK)^|cCa25!-T{{R5d`0nuCB%7i?*(=O8UKlc1$=UQc|d< zzIgFsX8MC9{o#JQa%VbAG{K^=guSdgAIw&*t}|}BYg5BxUTcDdn_Ignx?}f6X)RY!P|C4?F?*(}I_`=dB z^?WM0TN&1JdkF|H>hg{sKR$WR))qT(3-;^==&8v&c}%5Lyc^+KI4_YE^YoCHQgGkO z5-+`|=x_*LINw43dO!j(mA@wW_PKfFu~gFtkERrpWEy|GOB&YC#ozASx!`Y>J0W7S zyGUKDV!QzQ#GgUF*d!mtgTMW>RYoSHTmqTXgSQX~1@umerzgl_86_?*uCo;DdB)y8 zr0f)gnam|ADS18Lx<+L%mk%F33QA~&CfC^5n7pt=lgChB#JkF&o;gw}Y~T6~JP}<2 z`8@Fta=G^_ZrcC)>t@JBQO1*{s>k9Kc0jF@KuM2XyLRnMTbm^n!hTa(kJqh%&LAZqueb3k>IT2kD=dvHSYdCB! zVG-~#3Wh(n=efuarQrSj8I{*~Xm7aGn6OQ-FcE!1t8BNNynK3A);<-}N{>Z!7uEAC zx1b?BbAIl+4NU?W*84B@G_)0>jmPSp@DN7DBR5h$l36WWzdubc4X#Ij`R$p1J^TX} zBJ3n$I{kK)PWa+9>P5jPb;34E4dpu)?mZSOx6RVhQs+{`6Nef?M5drnBN_@rR?pYr z2L%K4;Ijwg-6nO1(9m}B$-!OUZt1kB2HEDX>hShCCq>mF-j&z)%>cd z+BGuHoB1pv(IPx_9@ABDk@DNSo2BeK>g-A$BU)KFY(??u$V1(OzZq+Z5yI|aiGqP! za2*u>9vsl-&cCL+Nx@(<*z#n51gSdJw`%%TN#7l?gqGgk-kCEkEiI^X4M+r!qskBu zkEwMHH9J&>Vu2?N_;1^`O*|AKfef7JTlHH1sTq;*rns2vpI;*itBzldOh-X1kKCjv z7qL7SWrAM_lw%co*`P91cFNJQOKONXH~(OqcNxw3ccP<>dl4iov2yKiVv*2uypuw~ za%fBku>8KvQk|DMITg$dFlenSB+^ECy#X#+R!0R?!Kl$2S_hZQ{V*ww?A!)a>pF>4 zh8v>2@ox11NTEYmS#&7&bwsl+SYcHakI^sL*wO4v8kk}DX<@ue2g{~9lm~jBOwiqb z?$!BiPQ|`a+tkllSXdlAdbHu`AvK8Lak7R17h>Qew`)1e4h{|iEsDo8lZ``Y0Bod< zLndQj&1!)@NlQtgyh0%aa{XKrg7iB;hBCM|I}pli)K9OjHU(3kR#5OG=n<}lN&%R# zPh(}G_R~7)z0^;S)IHzbT!R%%l+aOYI?-K(g(Su0HYDn6qcNvF*O7u@RhJIjKaobE z=s+_Lz>SWLaU#uD+$ROvkZGi(W~kCOsIYf8T5Uw`D*rV{VcPyZ-E?bCtyLiOXq)jO zTJYngxYO0~{R$_OaCgJU@^G*JKTGrfoGjuW65ac*4JDUy6MP^i8QlJ1$Cg8v8c3`a zu72tg1-!v-6BWch-&GN%RgfcU+g~|xR(MTh6k}F|VB&fDe%)K`U4qV{9u&=rU>8sX z3RckBpK*WB36G`OL6l^IThIxe?nk+)P{1GJI^!A-&%is;Z*P?MfZRQk<0d=+own`& zLT=xpT{-<{6tT_#V?zO)iVAuTL<2UW-6BDa*cjj$ajLwhyE_eHE-=FM($dAk#q{9| zz`0i%_{XOx9LDh_*PFP5SjN%WR~3wZbCam$0pA^ynMyF?Hl?QiC!mS~kW31!9jd_= z7QU=%6Z9MdMhPK;0X%c|tR=+$lTUx#1K!i4?(VL##b{Dic6QYJ_wUg_i3#V(E905q zH>o#Ptqow66c-<(Myj0-88(=9Eg6sRdtSlFv3YO!L~m&4QoGAgzm;G@qT}uC-YJR2 zb|*|N7{xSjv8|z?%9V@k=x`6cZ_%7f5~<6 z3*%7$n1T}Q937v+_0?RMeYaMb3i65Tq@%7D+Q75c&bzzJcCvRJ1M%fVF` zSITx>68zjp+)zpsi*$m=J5iVGpPQbps^`y?1-=WW8Bnh`!Ga1^8NjoGOa)dtnTuXI z4u|u%hU!Lhb_!v6gqcKFCLV$OllJoE=pkcM=-PXy>=9KJG-$z4AR78k?cxl_6Z&v- zU!M}7YRF94cA2#7%oMq38EwExU4>qBYLv9+NXrWy@0LFtimsdm47}%Du7i}66ikA2 zyckK)G>kn4>h9@yP)QD@SKS}R$6En#0+J0~AIb`hCi3c3$<&Sd%*}2~pX}2h zIptN(esZV|U!oXa-Q@H3x&-BNa~fG#rx>^G+xq`uJWpzpSdH{|eiYyl3B;iIKRVvy zbp;xz(^g9f_4w-u=E2mSqm?lDzz#mLKZeC((O*Mp&Q|S?JB`6xJ5oF>f#X>KFw<}< z)?n2?U%UDG?&olll?aPp9ZLLN#`~&_876$@zJ2@Zgo5U~l4dJkB{>~6q99)gy}?s` ziZB!rx2k*G?3+(&f!2nuA2V$16=YKk6__@=<%D*uA&xtM_a3k%FUrcArUDa0eGRL6 z$*j>eV!jP^kEmB%k{|9dJa^>=9j!xLzFw@FmqLZRpvw@v8pE2|hZSv?AJ=l9{ zbS~fXUg-~UEs(kjA?4{9FAY2>lvwrs1&Gwx;%huEQ)qK!#$vlv7a+324O*o;$2#)e z7N8|x0FTuLC@FcPobEn#b@lp5I6A&C9O!}}K}C2H%0Z(^G33~0-dsCQtG?jd z8_##RrMeJ>^Nz3s!GH`eLZQ?_-3Rc+;-UU2g1A}Mq$%^7b#`7JgWH(c;q5!sSLFzS zxsWLAAT|R3SAx;p_;_IxV+a- z7(0{+i2Tas-gzsFVko($fu`Gi=19O75f>xctFEox)SmB_Y685W3%pr@w6(!5JUE>~ z4Z%e84D_;iljY&`F34r~tAqxyTYuh7`gKMYE?0 zA5shi<=gFAT#z)G`_(@tC9@<2=eXeBuL#Z!-IGF;k_cwV#3XdboSRH(*T-#$w15)>`f2`RB5>yDT@B)Bv$PBLEmO<*C zUtgu+w;KQ-m|I?Mln5eHjOS1K@+W({pe&}lM7x?f>wb#+gdy+}VQxz3QY9a`FK-O< z!gH>!DVi|ZtS?|y%jUaO=;>#|a0ji>VmQFePB@|kM{j+vI8(a_5a}bsXe^h>ufhM$ z9di?h>4A$+cNN2-{xr(*i%9cM_4Weuoa+8@>^&*=I(NKs^o#zAJLcvF)g!x3H@-=Ro8{nR)VB}+HLk!(A;ziWyX`(Oj?}2 z;|kOdozjbhEU^hV0x2@+f;*p&dI}h*2e4}9T27#0N!BE6&b?%WRa3*$z*cbzx71a@ z)P^3^;Ua@Z@FYNi*yWK-I#^zI6~8Zf$DvCK!4({`nJG*g9`{T>w6l&vK|D08Oy$_1 zLG(^J#xi`&iS>={qGa(zyq3xMik-FL9`rj7(6O=I-kFxRwziPC z6=rmX4dWIJFQPOTy!r+itr!{C&|N45W=4#)zl!c~#cNj2z0j^*rw@EFD% zpk*-tY4x;9`)`IqLub2*2Hgl4gI>5?7_ci6motfS@MR3_OsxzZzTg0uZJ5-fNL-nj zna?MhptE(daAO(j+=!wT12C8D6K>0=(YX|)?fIxUFK|&5u!dP#StK;Wre1c6i|r#Y zP9+;17V(K9ChGQE~|H|wOsz>~s8v(X{Hs_Vxa zO~05j%1&rk>B1;dSm+d(gU%ee4No~HH^V&$t524|cTJp7508=wly^@N_!Ux8dH$dM zl5mLCUc_+kB$QX^$cy;2zq;K;SVu(=nnr%Xq5_T~p^&01u?pEu)4qZH(@fjBVu?v! Yl+llBNAuw;W5{t!Ym2-;|910#0H*2MhyVZp literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0f3421d7295d6da75dfdc14ef25b6e95f4114704 GIT binary patch literal 9798 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.7.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9d0944a9e1150af18127f74347ab93293443dc31 GIT binary patch literal 12054 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a29407d6d7691b097aec2f086258aa5e7df03449 GIT binary patch literal 10426 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e0f2fe0d11c8b73e3ab5517d8269686d391d17e4 GIT binary patch literal 13110 zcmeHu2UJt*wr;RtLv*7kAYcKcvymn(2qGGaD7~X1y(ygliHZ#cQIOsR>5z?pbg}B1HLZKKi zmzA|psBL#qD7xX@yWoE$+6Knpi?rKC12=7FD>u&@E|w^b8*aB9oZTF3Z=Ue5baAzH zb`leo6c!UaVdLg@+f_zH#PRQM5O#L47HOeWQs5$cZeKQZMWGmPATPRfg*00f>TEJb zSy9I;c5V=VyOR=Ev!Jhp6I4(~o$lSSUHKxN;(fYs2HtezkL)?AX$MYh-yeFK{Q&Q= zL-&+UsWP%DAG#6P`R!8LRjn&AyU)Wv8V=rt zzr#wsniT5f@cn zE|+7Fr?j@V#xEeCy|FwO79XGMI@v5Owld%vytP`RFw>fJ0ZZx9r+j3ME%~*vP@@X0`&9gXs2%1LjmIpMO11~rBrE#wvK_Av3rSgD z$8vLX+g1m%M9X^4bCWHq1Fval1if?U9T8+Zd+Ujome#9;1QCnCUznIEUoC=dm%sOh zq|D6NeW|Ijhm~NJ^>Fa7Sy-PX2%J8Bp|G&8Idw*VafABw>C+IdrZ`#s zhYug}i-=TZ*XWs>6JXJ%V7;^r489(b7eS#Cy^mQetxYBfh>BkO_RV9W4cMeuN?u+b z>?-oUUr{ab@>vXQlDtAf8ZTeIY{t!3ZaAIU5}u!ws#*&|Z+sVXpXr?T;Uoqyoq=6j zssIE?9GAvz7CV(MR8OD-tq!%L`o%J+ z$zlco)<<@#cSh{Ubh7l~O%ug*|54PENVV8(zFfyq2tD3zvBM{CW5iMfNe#m#m=?BdL** zk@57|Gwmx^p1*zjR*CuwAYMG{1^&Qrq2R&Yypoc7U0q$9=Z>N7>fI+1H-)dm_h|KS^{$6}tX$#1ufN=-b=;J{-Ps#xXD&i{c;BZ`w7rJrN;hC?1(JML09x?nTe z9H-IjJXCI2fu)21%va&41@5!miInPNP!qf-PbxxrhqX+0eEak`j#BfSUE9hkH6%2& z>z$+Vpf9g*m=;|L z%Bs{T;P_kd^`uQQbfz7Yj;g`b^Yiq8m%h0!>=Zl_ThRNyKBKPgZW(j> zZTEIf!s#@6`(oF1wI6k75^OrtuVGieJ(jSnKWy!7Vq(%7Rt-IP`f~u2QK_44GF|bl zx?hBh3V6qApi>`IJ?Y1E*~BEaufR6BzP>(jJS;5CrECxY7_eO$ztGaqI{~f1twnwX z>26v2gsq`bikF;>%h=`Q*~zAuH0aQi9-FHRq(L4O>bx3LJ1X$$Q!P8YOjT9YSW60p z!q3O|vS${$sTo1a#w-MYCvI(Q>{iL(d}7r36N!L8iH^9%x-+bzHy>zeYZrRV89jWA zr(GB)SIea?)8_Tids%U|7%HPTa-Fkv-lJk(HXN5_(26 zoJ%A2+%?lOkFF4IH7<;pb#v#BZ=VVsdd~)N$QvOoDc7_tR>14VjT_Mt_TkJTX4&!b zKKxKb`;H3h+`Rev?AfzieoT0T*yOjMv!Dye*0?V4e_N-_9yxO44c+!#mqW~a<|J|q z^Hm7ti>m1fzd*fP9a%&j7qbeyl7P;MjXl0b#l1;MNl#C&^=7&R*xcGxQcxi7I8c0T zAG2U9^sBCXYt19f%$d%_%I3ycX;&R+N!i(gy1KfyUw^v+4FKREWQlU*)9Fjkr)poG zE?uZ*^M5|spMWJVb!g6x1}o?(D?h+eX5QStzfFFr^+J-b3=~1MX{`eN52NZy)Tvji ztK0APDE2>`aevW5H|9yV9fA{F}72S>P@V%}_F?qt!u3D_EW%%nA(LZ+YvM4Q-3s ztZrr&ua|9*w7KaEXE?)eV;N!pC9acPnDO!POah^&0Z8$7`U6uyfAw*=%88Z)lEdkP zyKTm5U(O6wlzEVba^9##%m9dV&U9s6*mwYsBcA`OMc|(C19BX}yBJtg!UXhHLuO`Y z!$5nmh*{ap50peS2D6B%NJvQZy|sLn?@;^Vq$&n;4Xz(33QVcfB3M4PH{V(AaYB090KAgY?D4#Rjay zz4PaRZf64Gs;f7SEAT~R)C@@Fu1mIIkNa4;xpHo6{qDtHV4QA7e}PIZlh{3dsJGBxpih=Y?;q>4!V3Fo2YqqOo6M-FKh zWs%C&*SLje=Ds9cWkoQ_=stxMOkgxkB3x71&$F1_1$qagQ>#^5FhCCzq{}goykm zMCio(%wIDy>f?5vw{cJ)4%K*GymU!`hlghhT#VMf2jZyY*RNkiM`wnF{9d0nHL1n#hy~_B+*&R&s=`$q;E+oP1)BN4<1^B7C#;)e zGhV+wC1m_g9m*36_+Mz>Bdn2tHVrw<%$)ik^X?Sq5rT1%6VfByfj%QUi0@zdKhkYp z=;NK5d!TLPKiy3^0MauV5MAKRnM_R9r7h{ZJ!jGM2a`TeqPCSE=zHEmw?EE)%k(|e z#BP;8EtdbZuk>HFSj=hbJ*sMI+GQSdop}~DyH=Q(nLX+pJ5n_irt)B~3fxXIzK0HL zX>BbaC8h7P{QVjLEn<&or(KaaSLL_i0TS&BNW8u>PXbVfS1(^C0oRrl^Y->O%Dee+ zkxbUr(@O=$Eg&y%3S`mMYG!6;>BlEV`0xID< zUot5U^i3mP&d_gt3Bgi$W1570xA-|4sK}obZ*!rhtIX3`p1RagN^X`dbQxF0n443L zD}76t1q~AEIlRt$4%~T+TPY(V+>c*S(CuBmP1`AXpw2Tr1oP0Eo;-_7C4)|r6D}pW zeLwYh0O)adclW*upCVs0QA&0{Bd}g=TU%TI6+R&$1R_8XSZ__WC4=9hDE1czB*-bB z50*?DNF+kW;3;d5bxb)pI_7M+5N=9s{ppO!AvOBu-)G2;Jc$E zBb})lY_KW2gb3N$uK+%Opq+}!>eim&&FUmYB5Fq4pepo%TT2$BWn_%NLQ#Zmx!cW? zLU#-ZAfO<$zH<%G0(G^tP7!+ghyBXUoLkGejvPHIO9n3n$g`pt^eanC%OEGR%Upkv zW}J+>mYdrWW8VSfshR)F1hxQ6vBQ|-J&4(c`2}7JHxaCYI~x_>P6F@DAN}#o>(@%w zE%CY+FFr&ZC7=SB5T}xHX7{O9McM)*jzGWv*a-}FGR{-{=I7lPRaES{ zGIg;_ZI>(q+k}b+MtpBU$-FNVY!s)IoUze@Ep%|m2JUcSkwoXy=r@|_%#>4;XRRW& zauU__yhpJNDDJPF#46+MxTC+qPW`vDtpjZ4x1(BJD3Kc~Ky;$p{`%Q>AIklgw2Dn$ zx?;O7e#%ta1t<@W;7efEI=JBAOaUj1FcFS`O-#!%F4~nNRm}^XbkCkWKn8Mr(Fq4Q z(Z|Kfv*t7-Kn%N{+&CGJ?_Y;;&}7B2OE%Emub7s)wSjoaB~-4@(97$=ZiNev(HUI5 zn)v;@!}!F69r&m-#HygdziJY*sfljpM+r-q47XDf~b+0nMF!DOeBw^Br7_GTVcA$@O)0C8e6s zZ_n>zvI-PU8n_1sKT*-Y06|eLU`8P!A>tO*`@v3L30V`hs7?p|V*JkGPB?OGfH{Ci z5+SM*5DwF8v+RJ;a(6Er867Qj8k7lQmzA{fneEQ$fCH+dt9ztiQ-MZSpmZc` z>72O|dlk@+i%&tpTvKl00U{YeDU$qt&vC)4j!6DD9CtEt{2YDTfRg)xN9!A&_6OSq z{-3})kGeG5(-KhiY-7)kZQ$m-w{!+H{T)c}xERg_u6q`w3m-OCsav}ysko~At&z9Y zR>GGoHrAHWm05rDn(v(-e!Bt}Xw~{5JS^}Vm|CI%7g(5jb$He4&jsa2BIsC!D(09!Rc%IGTSX~I> zhiBUN3JHKcv^!|X5fJ1EVZe_;w)x-VaM;V2-@X_910)7< zuakiG6Tk6s2Qc6|(uzG|_DVWNzfMlRKrMjJFCO!P{vX)HhdH*I9@hSGYr)0J#l@un zN5xLg{xmd(yeHX%j)^Kc_7$|jM-+FT(ebV@D|9BBh4N^$Yir6MnMniZAkpyQrYnkI z>3iUWQb5b~3$CNbm0d?&Q5PQn#a{R`7yQqMp^d@6+|AO<(F*2}2O%-G;8g&L8_%Sa z^H8=~1-5S7CBwW5*H`Lp--@*egxx~C{CAH1^^@djFtilKpu2a0JUqh0l>D4smLKrZ z+;`z&{?^w#3n<94v3C%=WUahMg2BXpelQ3JwCCP-dN_R9pxg+`@==7lAA>|`LQeoQ^Ey2)S_2c6{RtdXT9Qe&U zl=(qpO$BPfd^!0_j!B7DdyhUXT*N$g=RW4Cd-NQw?4AQjMC!b!%$<=3Kb=`fbabv= zduir9e#Bdj14%*<%`NHJmx5%ab0o+LBl_n&oFJ1s>4%2Li8j8x{kOk_ec>&W8&;2h zpY;Ktyo!&XZ{(E6>fovrYibmhy6dWG^!( z$G!5vj%^xf9MU^^Q|P{i0DI9e4 z`sv|+*Dfuz{#^!9S9tR31XuZENJI9V64iD zIag8N0f8Q0@M4u80&>cC@?=sQ1){sB0Remd>afrb-3AKJqY<3~g=Y6-_=6D$8weQ0 zy%%p`+Ck8C724|y!KVxncb!mY;6$51fY$-a1UwQRB)|iwI-Cm>ylr>3p;5V49+IGe z>nvnad==U@#2zoWka|O`msfn+NKKL_TkO}DrXgp}1{%$cne8FyL-X17ldsMd_7qq( zu~sbB3nbxGky6sF-F~|gB=`@fI z1#AOZ$xLs48q{r9k+ZqARdcL#W=6&}J-zVE%uI2IufM_%!MT?fW0Q1fU7GH2C;F`* zg~o_pO$1x-kedT?G|*eC78jM3)Ab2v{Jgxa7Z~Lak60tv?ER3%Lfw^9+5X7x9f#T2 zvOs6P*gRMKk151^(l&60{v74_^q7&pDOTP`4?t93T|E#;aym?9AR<>$j8sLd zoG+afE-?{?v&APOLYk4g4o96?@SjeT8=-x;55K1a-D(d<2c9kll9*TuNLPfItjrG< z`m8t!nU?B+Lzx0phrRR+gb0Z{cZ*d=UY&mr0VW`hQHjeNt_;ZSF&Ip=sKuj+<~X0a zO-Qy8H4eSuT*IUNEU#a^It+1P!?EPgpOxj8zgk4g`@G}IC@nRDG|Z^TDX#iCdzL>v zW2R;T8oM&+iQp_o3xItKwCXiHb=EvAGBQ2F42!8+?;^lSgQLQYfhm$)I86|w;S7U? z{vKNchO8;JXkWnoUMt={VD#MeV3Ux}2@ucQn>-=i@bS|pnCj30 z_jK3~JfX0-IQ9ZTFl_)qLQ+6L)RR^qA(WoAu&@B!g7;;DW0YA?paZ$9+lXce=pVQQ z;`SuaHYZ^!r0Z`U^5%q8RhxB!Un<0}rY?Vn@!Z^8h~xtf@1+!)Ke|;6RX1b?Y zvFy%)*Ch{Uj+Yk?9yH%>-v*WpSfyaV$;nwDhelVnWjWxgsy=vE5lPuq#n~BA z!ltD=a)O^cxe6AOzZFEpBE8jL+!=Nb|J5&13qQlnEwO5Fm-Cc|w<{-|Lyh#43FaBs zALJGVeFp~z8_#y7hvF!L1gN}yr80&vHk46H979|oF0(ek2P z^wG%^(QK2~r~W=mlUKs{rWXw6e`K)e>FM#GJbBWFhnxFL)Y^QEI;cQ_IC&pQ8(D_A z$^MPi+^H!WaIEQtW`V}|=NHS|ym`~>+lBlQgl8V#&tOd0G(FtzNe7wQKc)M`M*V(% zWOD%qgx*Vhdhj(>BSziLt-ug!bB#!&numskS;9fJ0W(CjI&u#aPbB0jGGzQ(gSk2+ zao*rXH+}G@*MPx`fWSa;PTwE*#K?_eEs;RZqVcp9ycBY>y@&77t3zL0>nCnaGzPLt z)bBs`>wB2vh@!0}&_uyS5r=5UwOe0TH)?g&OALfTK4{&1=x7~ah>>CJ=kYq<2g~%_ zT*(l1FzQ@6_X>W2t*n-Qaur+~R*S}GB9%6!?z2|Vh#EoBG{OC2-2rl>fXVNTrj2sa zY@8}6dQ3--SUOcvJ;>E;&O34l1cDS;bK-Csd1Pez20V#=6EO0nD3*X*&tQ>qik)sv z@`t7=3It9v0kZ$rMjujzHF!H#AXPMaa!s4WTI5{aInQl5K?RDHl$1<>5^wV3{q6A2 zLOG$tH8XgsiR{j< z2?_)djr7!ALI%0g3jVut8lZR@16jlx8KefT!wNRRVmCnpiKCFp$762~E=k1d%_jR_R3 zh7Qv$w^)0cM_9PI*hJX1L8vGaF_4QZFrhpwnC2YtQ&Qm-A$Xyo!>C2tqH-&+!?q(e z3VB6F9&?3(rx@TZkwEXPsYNXxNI1VcEJpF1i_s$#Y!igm_rt;0tXEc6j-+joXp+^( z^1(Lxc^^2&9l(mo!~TqtSV0ic65te1XyVsHT@zlOz7+lR>0WE9XG<1|ql(LQX{s%2 zaUhX$0(GYs2j?jodPKhatez|MCNbM~u8s`tGvw*C1Xhd6H7nm5cF#yDqHo7>X_wEw z>(gly32<~YpjkB;J6BkuSBJNg$qBRp6VE~SAe@+FbtJIIX!saAgw!-N+{0n^sR^8k zNT~3hn0MO=7XF}X!>>*jXj)t3gFrU(`|xrn5MJ@oSnz~fGt;4(Ga%5 z@KN~WXPTnNTB-rA|XqN2H6$`I1qW%%qywQ0=YGU zC*V(r_ZK-!K~QlP`lKZIYt_drDmNF^$lb=yEEp>|b;v`*5vlj8FcX8PaD`X_d68jk z#B}h?9w838Ck=~Vj+#f-)?UuP@oAT}A+$e?y1F=I71fc>l`Kb@nPtGZey^;e5)Bcg zYy+G(b+}{nrq$*qxg{pXxw3a{y-eQ*x16641)tD-c|n1;NsibIG6`7&Z_BN>|9x;) zVS+1yHx)iB2i8?+aHt}ODtu(k!TuMU;wQpE2;$23Bn>qTF-F%AH=-g_;4fU;%q5JFAu#gWcIRy$ zEY~1Vao^hXW?+};G-PIB$p9#x1@u$QhlO+7+JJz$eT_UR;q~LXwIR645Lv$CS&{Pi zZUD_&UDo6K3ogg6zbSeSd8Z-l4HGTno{5M^pe;?{X2Z(UJ_H{UYAC$jjM#sGP|ZDN z1pUX1oZZltD_1IuB?oVRVqleaNs)B;dIBSZT}lTIA%WZU!nAAR7Ma{hL#9%LZlTB& zFKERn2;v=FVh$ZT#42v{g6t0Sz)1e2wuRs3%SQJkD;G48f)|@pkugLe1P~Csn7-mW z$>eQ(7}^g;T4J!mmO(IjJ^f1TxulKxGEL~!TOT$q&VH7D+mCXl-3j@e$^kwYF>qgCd2$M`H*7q%thU;_k*$HKzHXOJaEnszr479v{Q zHUvl8Alk1jj>Aka<%oPL6kYD;g6lmWrD1H8d5HpjsS}1^K&+*HSVQvuk#dJO!YdNv zh|ULiguKD6&Rjf&K$u$dMT0#yO==B4ga7U3Po2(2hwNbs?{$d1=cMb$W)inI|svLGKl_bV3@%7Q`nr#uYt!7 z;HWXbU8rWfGPM9aH<-;vk{l#B2kTpU7U^cN+m`{eie%hpQowu9tgNi8!+$&orH%|? zz|7v$Cr^+j_H!y2zpJe^FFY)48a4z*xBX>2=d*v@&fU}dfL3^?H{N@KMSgYIKl;}j z_mL*U4wDKriaCu^@oj0qwWV&BGLxo2%>X|8=m2{roZW_T7YXkw7&*V9u+iJHG~`1v zU6dMwJwxUckcbf(c19)>z~L=@U6T*PR-h>afGuv{wZHiF#z;+DUrPztsWUK$8-qlI zu<3}S3Z9Xj8~W5KCGhcEk=YbP9sGE|UBih}s3EL8HIP%mj8w4_j|d`|8fh{dg21w3 zxzGM*LI~L>Xo^{+nt{nIs}v!bp*$c6cI@RPWJ8d!Yv<0L8uNG6Z)jxINR;@l*{0O0uJ=9rc2ATNMnF=m>|LH$5Z zy3=FG+|A;m3j>Fo0gP#2XEM^b0{bVg|b1f@l~iVz?|fKWq;j$N7tks?I_=@1nV z>DU12geD!N1PHx%&a<7lbLOo3&AInm_n+^4>$0#c*m?Kf@B5Trc^+QW)nMMmu?vMl zF{3qA^--wpH&Liz~uUJk?Cl&>k0!`eJA@^7Z5| z&Z;%C``9wy7~cA>E~t2D}-@otDhwCRo-&3zMgrhZMr+7A8 z=}eamB|c3TS<$)(5k7H|YYHB6-URH)&xfr8;mNK9ebdx~e^LEvsO>1!<$EXw6zcV! zZA|d1Bir|(P-PMfyeQO78zvRFsCwT``1{#0)HW3A)cODafxp=$RU4Ftrzftb$eTmr z`h(T^(S+S%MHfR9W*-EK*TKFE2?z|W=ma! z5Ptg)zx{0b_WDEPEc4W3=kM9U?W^kR+p;VQpGHTYLc>kE72}l1Kg-Q+)SC8{sjFga&ILOHv*7mVPk@fDbUAtn3R%IdDvPIj82!fr}DS7wFyg08zra*xt0$O z4GGG~7&9|7ulBQ$yt=$^e|YiRhZls-^{u?<=g*%Hx#kmb`6yJM)GmhYRW&t+@ZQH2 z!yY`WLizUHVm!#iAmui4@ynMlsfC4R${VA4Muvv`=-IUmGJi+~tE+NI#lX?IwGAyj zJr-GR9v(_gjuf^g+{oB?tp7fbl2d8*5FaGS0|^^5z7dlx~!6oLW#|+L?!M zs|pid_{^$jH&hi?OzfGRb#-@hJ8MQD5Gb)MDAbEHszYpL?b%rREk^E!M06-W`qMq; zCJi3H#HuPSHg@)E`hphO)XYp8B8cXnnVHEUe(etbSNcL)W~RuXO9;1O+HFP_xuvbQ ziHUF)Cl)?Ff}H&*AVfj=Z?4cP{BQ!IqPmKTisVFyl1lhoR#u%XHxom1Lj!MIy#RW4 z#n%Ck$5>k@NDeQwSz+LS%L9+F-ZO$_RMibFw-v1nKVN8y+cbpxw7v?rOgq!-Yp|PL zv>8G}WRx;BS|1^PK169XMYLr38m+DD`t|E0t!DTzej6;7Ue1YcZca7GbsN=pcXvit98 zC{*;T_uK!bB>amM&PzvbLT;8oCI)wEX=|TAYXl#?WN)9kW6$9i{u`^QuU}t;h&mS1 z*xa1>+i%+!COR>rqoYxZKJS9L6*(RbK?vM2GThPEnrYTTrGCGWo105cBaUp{*D=s^Zj+@h}q zil3y0F2A#_iFg?m#WB%ch`FVr@)P4;LwEOFr@{#tG_`Q5Bz=7R29o1v&R{4-vyYq# zMo%Jl;11Cs=RhdcMoMbL`OZE(z{;vOS_GemqR7R?1=Td!&w{2rJ!?g`)IOddUacnPAuprGJscsMQah@4x>4i@flhAV!4 z#rK#whd;;h57B7piHWN6o|DaN7;~48gr9H!3g0vj-hCs*cekOI16~g;2RKhXtjfDt zYB$l53z^gwLRz;*lY6Hy*RI9u8yK7~_g3JBDu%6LADH?!V_l(}^!Ba3Q(kAggruZi z?>Qt}`Nw{mZpX&8+}X+c^vRP(I!#DS45OiOKU@0DnWa@(XurC7DgL{c6GD`z@M!ae zy&HAyv;|^Idwc5Q;^O1AC6B%!kZ7V1uasjSxO4bXn zrx`doW%1juFV9qc{n|MAH8l6ihwZQnwK4LTSFc`~_y2@KVT)6k%a}Q3Qc_dVp1poc zE)|DFOcTF-yUcdzkkH{hLdwckddeF)1O+Hy($dmGf`U(AT`jFgj{*XuNt^4=qOdW% zeDN}Z_`#1@3erjtEbV%}CkY!wdf@QTq2mIhQzZ z@{rcwY_7y@nf$b4&&4<;KdBqvPCItKtCe*MyriafcLy^^qLSb0FJfYPK1-9#-hoiU z(^672;gnKSQ==qo9_{6lJ2?3YHs(j3TW!v=2XV<8@7%eQI24A-!L^Aht_+6C(V_{_ z;=2!>Y9OD`M)FTuO6r#rC)8F}R^(g&I zo$M~m_1_>mb{8OBp3JYf&}^{!fyMuYK&;ofBS(((TO5SdBarUdyS2H*A?@(ge?Ean zP*KqWGWD+iLb{b~#nMElKxr?fs7L`D*E!J|A#QDGWhI7Aqfjso4r#0;GGu--1RT82 z9lSW~!qr1z+m@lNk40i*8^5qyWnirQjG(I)&|-aZT!*xfybkC0R)~GP2G2^1fGj5x ziIp?U%U%%GveqT1Aa3_D-MIm4HJ%je-99-w+L&@FVg8$S2%4Pr{`;=txjK2%0=HC% zVV{Yju&^*9+|OrX215DcF=*O*Iixfp-;S-l&CYIVZU!JiEG8$mwzfVNha9gHr?jQN zd-v|~fJO*+%ZJ;HG2&LnmX=w;!F#cQtCU3Ountpl%AT?}))fx*v5LpmdVHo7ZES4N zt915rMV6GYv9ag@sF(nkp!1XYj>G;Aug&?SBE% z%F2e!ydI%Z3T6+!Xh!`)jGU2nxTp~Z6AqnQ3V>Y6wmm3RodYx~jD>rcrSFVdSa>*Y zbA1JY(uc$>Gved^>qb9{nxjx zi%t!<@;AY?W<2SfFg7uXJgFOaduYOaO;JfI#tLl*dHJ zE9e-N12cA?AM7U%KGBfE)*V%xZ#b`|qqAqp6&~^wz(+HZ zNe(w|K(h;F`mc9?Sjs7SHZLhC>8l3Tp7Kf4sETJQxfc0Vrl(^6KlK0Qf zkPxPCuH6;QA3TtolQRPKq1Cf=%>qefpb2niLnwQdehS;9$uU#FJtf9`!VP!SxX zbNaC1>BDYLjN5ND}IuhP=eLW95ljtq2{nju{3ys%%eD0l?tv41zsLsoeE^h^a0 zMn@+Q(02d0JoIYVbm=Q)D5#!#u#*msj?DR11_q(P^qceWR)7t0i{tHb#Cf|2EU?pk zmX~;Ln&mmQh>=#bnR%2Hu5Z;uN-j{f#q4XNq&wcbB69y{N4oYh zZ11&&5JTt0z3gEy@N_Muv#Kgq0C7h#USQ|Zz-@CYHpoGnLeDTeH zZSord0G>x|pl6=xa=z^`{_SO653#ykJ&5BKbW2)2pf@O?gvo4dJvZRyue3Qd*;gqJ zxe(|zRtI1j>G~*lxSNU z^$KKbJ9HQ*)ss@g5x--o=oA8 z)dp|u8u`AIm!|>Q{BY$W6j&bl8lu(nuc>L>}v5; z#?CV3&6$v6d4I{=9syxtZF*}aeJB!+KH4OHR`MoXygdBxmbr*DH5`eR@?Ca@J%{fV zU!~&ND&e{r$dQzs976=|m-=rQUcQ`yK*I_<2M7IMf4#N3IFUX-?^YYDXa@L@c?l$L z)JIY1{6%whO#>myS>@&GKo2eqlm|758AQA{rWaBLt*-U)i<`(Pta; zNuHj0NL>JqdEvQ?J?K|R69iR;FP9%0!t00P_XxXiwX1x^1iLbQ79qOWGR|iA&o<>A?Y0>sD zYKKSq+9g=(8Cv}!=6?+EJ=Djyi|iZy7*s8>jO0Z8lno}Osi0_A?Le^ z^vsTItX^frKQ0mC7cN{7`sJ64y(NBOv9Vc*;ylur&~LsA;pl2MD5tLXmw>`{6nSU= z;Tb@Ar%(5Ps*Cs=sV~^m(=#2ILQG5y@Ul?EhhP&nPJtG5KpP3n=gXRUea|nK`ukN* zz%PCQW)2xzu-JhEIrb&QmoYdK9A})O`Rzd!sH&@L9j<*I_WXHzo2Ac%LXQbV=>klS zbbiIz%HvUz*kEqr$gvYAPpV(DN3uv1(YQ@OCgVqxCvx+*Zz)+>qKI2yeQz&U8n9!e z^pJt_Q?7ox_jO?Ato7{N92*lu4umIbtiWHX`q)pe!4;9Tt!eo7#@fBzCLB!$ED!o( z7>JY-tphWaQ%myJC5K5B!94OFd;owUhU=b1MtVnKAblFv;+0U^+S&_s@>6yTV=cx0 zS$|df<5)p(b_)P*$!%b4oCHf2&y;h@O%=^WZ&*?=u!BHrS@L&%>*x@ow9y0G-`Z$b z4sfkKn}*i^?CH})_-ZPGqq;f$s7m-|`C)|d0?%%yQ%bXdYu`D_^G}I+CLmjbm>6JDI@XjN0(3UVbE@aDI3o);;O!>>?Lc*wwy8SECFk}_U^;BcgFwJxpr6oZ ztHm%zMlCx-#Gp)TKReY(eWl&f(C`9i7;+rYKI$SMeYwhYfIw}Z1_I1QspoqnmXnjNp*+dw2L>t}6%*?EE21JlC5De-fSV2=K zR}by_^XBL8?Rf%MSy;qmi|u1ddHM2Jz#?S86wN(72;jojAXy5kdC(Eblj8(n10c|? zADRX_G{3nvC7%Z>WilXmZF_rr1hXK{2>5@7>{h;S?(I1e?>#px2ucQAk3H z$15R8Hzp166F@C((DtIF><{#!U|~?y_mly^8};d3izWC#vnD5g|9&m=@|$!2*hr&* zVop;^H_p@t-NxyC|BgR^I>g4#HB;E$k0O8`SLu{+@!`Y@>ucAfNSnU3amrhX)>JCh z(88jdvkA$;gc$d@Z2+puF#m+B_CG>5D_=!rq@__;XmQA1!4ayPy}R*n{weGYF|1|V z^2gm`2q+>>e_%uiB!c5WoWMZLBqqa&G~hD!mfhXW?l9JzT0qY#d)aT7n)=uTzkcrHl88lh&Ky-uTv#MbXV)u*c1}!ohep55U@pVQLyCZ;A`oda(XiRgU@(Jy+>rrPdi6 z2Q_46Z_UAy!;oqjUwX~?WS(LoG%qCUdPs1+2 zPT(Jj%a9lW*O#4Z_1}R^#TfrrarO0Y;_Apa1t?vx8wgoYBWm4L+FB=obyYRwDhL<_ zsQi=I1G<-Tijz)(L>?I#`6wu;<@=X_R9@5MYj2P$x&HPA*JQMpAdikZMA49|3q)8 z@>|xAf&ocwPm_{PB1S#nI?xLr&AT}#oh}nZT%JfJzk(w`@1XoiSXTr~LmIdQZ^6XH zX>twtY&BsROM9>rYj`%N8CjVaYPdYRt^yy$f#+cI-uY$zWC6Vf#yosJ&W*QcS7=H= zci7ur3epeZ!_Vw6B_r!K{UU!LSiT0r1xF4ItyN>UxbD9}w~CvdfddZW$5vNWNtl?J zR7`w|6flh=lpiK^ySGIGf`M~zfVOu8f-@3?MX<14f=M&7%R`+Ni~Tioj+O=>G30}O zdVUewS|pe?*HYg}(S$nLVUQ-J%hxCF z&j5a|#ZiiFdq`V;bAWcDNGstaad-(^(4%ZCg1Lt8E3dyC?JeCxlMZuQ*ML=2)0Iy+ zzZi5>mfDVi_fii$eD$4Ex5MH@Cl-Kt?G$NijaA9m$EPq-nN%VR5K;%meC%;JNk>OV zb+So`Z+3!XX-o>sOARK9F*ZQ$kO{8v*W<=oR|R(z9Q zz53z{s*G**GZA%i`|GQ>ku~shQM351MZE2F--kLYhCuP*)Z|##MbOAvK7aWV3G6VN zwB?@-Rc|i9YW;g60l7I^Q}Z+!b`sBJ93?v6IZ8s`lmQbh7sP^k<*lw8-(G*vlz`X~ z2O5|J^FzzNN|NqlhD}uJHB(d5n#KeTy(toZ^bC_qG#NztNN@`fiwA3k#U_8PtUL`a zcu1I;o393 z3PW?e5+$R!syFF=;A7p(uBXjK$`XblY*#|ImRSZ|^L2RloqgqfwD4n|_na-Z7wpR* z{-%b8E3j+G0+T|$7>oV)xt0$w>3(J8@qGbI1)SE__HdBn;iYj)likOxHG(*X)>l5U zC?h_FdI; zOSU$qK)cjNY?G6Eu^Di|=p39|RYf4kl|~qgp)PKilK_AjvbMEzT8)8Mw-CxWe&aCE z7*Lg9z$}*^s&$9=t*41QSx=526AK_2Bcf8b^C#wlsgkvl1@HYaUUkQ!4zjV0_HJ$T zA_Hm=OyKM2ASx~Y!c?ynGC2h|ru=$)M{0chIWU-HOZk|RxwbtpaP7a#E(GccX>%?v z#?QjSqNBh)9Z@rhrMpGntAP56{2-eGZW3s+J-v!pK*g3`{XfG%2_5#f8K$hx1+yGI zi_Cl>+H#K9%r$T^$8nj0$Bx|+7RSEM?w4(AXxQiKGdEmY0CfQ7uslD`fF?}-JSU+Q zGlr`|)H5L3c2L7BHq_3q(%Fi^Wk%Ewc%iM#jkP5@3{xqO4saENFm`ciP`Uk<#+9ftb)@l$?NK2?>K&cO&T7_59!Fi+KH+q1*Sz+f&+%tOEx z2Eo#^vUH(r8-cA`CrgW_xRd6ykk^FC9~j*jMFy_k;d`@^V~JXNN-Kltie#7*(Th_u zE%h%3Qmb%6K%jcUgES=TJbbpL4Qbto;t+KPAL}vIli7(c?Upq*Fh~GwaS`}?Cfws_ zrdb{`cxJV-{~ly9q8tOPyyWX!1g010Mx3+a4_Iq+0WX8-i~%+C>9c1^-!5nEY`?RW z>r%x{T6ckN>M%R_wE(2g1%S$Q7#G|q?9YLw0fJ~ZsEJk8)lERy5tndqaF9}D1+#tb zbG2vaU?V9_;w$0EV3ei}%CP%HZkrI8Md=vIrYYSUzyRR-^qLwS3zsi!R`e345Ia&` zw>K?jwRCGu8G#bOdkdftNQ0jd8XN-Q55o`h)mEGOQ1KDIQ!+c_V!I+o5rjET;@U*s zLidzE2Bb5O#pI-YKut}CK_(H40z=55BGKY`YN(Pi)F^2%ExTPRxH#lJGJqi^ zvqN|a*OOodMi3qms5O$H&~{3CuI*p=-Ne3WfsDbCmhY1qLg9eIFs?V7P8_Ju2X0{r znco-JeU5^l31AN&unaS~GlxzSyP@=@f@Oz+B5Vxk5m>bt+PqtZ(l5)1vI;_}URId- z%nGVe2*jhb>!2nKKa!}>e>q3(`%je<_M&uyk+C_{sZZf5fTjLt%m7DjG3s&ZcWq{k RASw|Gt){D*b?(Y<{{dW&ZO;Gz literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8216cf7b354ef10c495f1ccddc888c5e0927fa87 GIT binary patch literal 14250 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 mH>Otm7oeK|eLly7<9`6CsGY9> literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f202e252bf3862f86f09e5e4afa8c2748e7eee05 GIT binary patch literal 13430 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 LI+K0+(yjjmQcvmB literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..7ff9f2917d988d8b80bb0edef4085a78e2d13078 GIT binary patch literal 15206 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b6798296f992cf7db8d41810ddb3b468b9ca8eab GIT binary patch literal 15271 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cc67a118bdd26f19b524b1e995130e96ca2c2796 GIT binary patch literal 9356 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..204c46952000cfc6cb68ae543ad02c0318661391 GIT binary patch literal 12782 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5dad6fabf7e5cb1e72e48f41ff5ea1de6c2f4388 GIT binary patch literal 14197 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c0e08d9cb4dd71b39614579eec5e9b2b82fb8cc3 GIT binary patch literal 10201 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5de7d41054003aa120b0dbb7cee05ed929c0697c GIT binary patch literal 11090 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c414cf3395e36b01cd374c50589519e125a606c8 GIT binary patch literal 15252 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d95dc48668fda31a671670ad01ed931328d7d83b GIT binary patch literal 10509 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 OBTx#e*YmHMJp5nxQvG)T literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..92dca56373bf23c7c8a344774c0263f74ff6da10 GIT binary patch literal 14230 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 F{}=WR$DIHG literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..383159cc8bf95bc316853671bf3a95cd33c08bd5 GIT binary patch literal 9920 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 X{_!O_>OCEUf5!}r_0xVjd--1gW0|*Q literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b1e46ee72d83bfadae6868b8f41d4f869aa731ff GIT binary patch literal 15221 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 h!`*+(`{aI z?S}`kJHOvst0ouob!RR{>cqLP�Yv8?)u$h15egEaWtlauki;lx?uv$e%s%g`M_~ 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 MlV-++UthZZUt%#lEC2ui literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ad49247f9156ead0de976dacdb7052d0e07655a9 GIT binary patch literal 10063 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d7fef4d8d031aa2e45af1c58e518c87043b5e5fb GIT binary patch literal 9915 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b6aa1af9eba6ae4609ff49a3f57d6a828f2f1c65 GIT binary patch literal 10077 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..5c39ed20b3282bd447e8ab5e89c7f50cb5f8c483 GIT binary patch literal 9817 zcmeHNcT`jPwmzVaV*}AakuHj;G#TktN095NAR+?N6hu%Ulz;&f2&3Z=x{V@LK>?`) zC?GA2Ku}5$=~99O2sIFT3CY{Xx$CXF?z{J{``+9?-h1o1mIqeIIr;teZ|`q^-?tNd z!N_pOR^hD(g6uf+C;f{E!W)PnJOkf;1FxvG^bWxf4Q~SrZ&UXh-neUCj>!3I-X5;* z-mW+8C2u==VQ;!)jw`4t9G8=H_V)I`YAPza{pTAL+`XI>n-?k<;2~Q){$zbD+##C!LoxvQE>?=`FZ z+|bc)t4m6K^z*w@1|`o;Fl&77r@WJEkQl!m^{yl*ENi=b+PLP~?^dqalyNdcj{U$p z9(VZCvmpX^)OW2(cxRLc*55Yosn&w-k_JP!PJG%Q>*ap9zCdmpf;=)wnBIgS9==;n zAb~aC{`>M5F_>>$;@xVA$Kzf5N>w5>$1@HeJzBryg#_Mv;Alx${u0zeCUOre7|mUY zMcBKFFnz)sHuE(ueUAhxUTuh$_xyB5W*EQEZ$Co*IW3w zJ(!u9nUaxlc#oXL%*&-M$c&lEPM#9N%4|knUgTRWgYwG`5&IgFfQh;J-kxIjX>U%h zP1)cRQ=?!lX32r0va#qmw( z;->q>+}zy6FbHx#t!MK<*>t7I+Tv7b!1}6>&~#^>owAymM2Eksva-H`fdNz1W1vcL zo{b$o0e0BLvYchM-qDjln+VM_UeDxpGA_toZfo$)#=L zHgB3gefqQ>khT+fcENj1Hc(nxTIp6>hO?_{WB8lmVnYW9hqksh?|6S+4&zoi?7GHn`el7M=boJxMbImPLRQwu~Oe3*67l$&o*L z^k~YPH!AfF4g4#dEQ}xf!Sv&I`M;-GmH9<;GI8%+40qoN1mTna18Mw6O5mTk_iL3P zlg91xkqrEnp_VkQLqqs2c9#F@D*49+_qS_^hoQ%wsaCrF{=s2c+0ZZ5L3Q;}vRc}l z7DI{J`LR~|i^oPG2O`v^{#**o`cnupx(DhcM$t}uVPQcD$L#I;_1dX0AtkBt@o{@d z>_nlC(8)OUE<2N<1CTC8#SMGD;9qteC%uG4l8KN0UOFF!P)5%5V&wBH|u4 z)|y_I8mW7ygl`)nsrXlAhtF z-?qI9jZK#52PbN(Q1!U%jLggsm)y69PKODxo|^CBLAKfy^H=HM7i(4*CeZ3syKHSO z`sU4>7AT1^)$`}ii;WoSx3#zX#Oh&sOMK^B4C#ru{$RO=!4ERYVV$;kd4-aJyX(1* zOU%BOj*gBm-yj#9OZ}0`HD+19JFRjQN;!xHRc(O9V$*vd|A`}P{B(sH8atUp?~6~K zJgK?A*H$QWk9-J}kUQDsrn56CBqXHQZJ_EWyTSJeGMn17`KtNbrG7lU+bKERP{Loi zBhOA^Zlo!6BDYK-$#*b#9dq2JBiq@{t*NibwcAU`d^_UdjCK;;v$RTosAKUK0D)`e zFJDRnuxa(B6%@<{&JmZ&Xtg=T{lbyjvwu1ldu+dy6jgh!(f7;!y@R=B%+S+Uj4NP`Lg^sX@NNQSITC3ZwTembDBS{t&cYH7$ zKu3q^{t6T8Ue*kLepFy;YAR^?TLdYMK@nzvL^@)cRujmxA?5jVSkR5eSOI!nWTfBRNbS#CcH4IsIOYRfSQK18qp$xYCZ-O6 z!eONGsb`IVVa>CX_Xfw(lOvMZLo!N44!c}T2C4dTVJDCJ%}+17@*NBtpB|Tqi;qt& zE!Di7b0ummrEa7tUdy^kL=9stXH%+tqd7^exc`pJc5!X>%h?tJP6?i;G1LOb2K$a| zOV3(C^P073vc$b_c7za@gNUSQ|7m>C`Z6F*dWu{_0YNe40^|+=wgI5?X+OV}{WKyJ zxWuggMRnCarTw(Cf#q|Wu|>Ie#3sj=rhoW2rMKZ*r0Tge!h`HO@bAm-F)%&GQ{vo` zg4Sw5L4lCgZP#p@vcEi)03#E+Ll z|7wk;Q=(wJnmaS|4}%g_#JyaAk%Y%=-}n7N=xDEeS+#rVMLn2MSXQ-<1%mjQJb}hE zZ9s^I21h|Z84xFoL|R;26jJxNYE4{U@NAGTCfwq@IP(~7p{y>4$YBaqcWp8wH#ed- zbg!X)jbn_>o{BpQA;h&};@Z23Tfotv{Gpb^XJ=;>%ahk%l@7B`RT^)t`@Kgzz}aqY z?J&!`XS2?+`L=Xj@Snl2;gRCv;yQYyo;YzW4z(eIHn&9)q|X4L z5J&S@Tb%0IyAF7GtUu3=?2N%Mz2iqlMmA6ZN$>Y_Q*p6p4c00J zu$PUBT>$VTI5R;(ZixtD^Bgc{@~?P|J`lY0o=cZ6i+cp1cm}je$+hcOKI|`iVt1OBH-Te@bK>hO)_AkwVj=WX}VE(OR8aAtdfKMZ+AE4V;R&~Rkthp`sbd0 zFa6DSp`AN+><|zD#uO%`7eHu?S5rK6E_Nr7@=%|Nj@n1kXT8=EG_W_$#VH@5YE73f z15w?VbvY-5yBx_S0cScY5%ewM(e<4^VgzpiLMwnBX$*$gqsd~Hb$PgQG#_yAumXo( z+vrKB)P8z-)?sn7+jAnPm@@F&J@hC&Df^s;Myv^}+I(NupfiM41XHr#NNei#a(8pU z9!O{AH9cJWZ#E}zXR7(@9_&ArlASI0 z3%`W8ta)zlbT8T`OfFseZrdI?^_r}2kWt&MhyJHz=~McM?(F*mtjWUW(_GGa+3GQ9 z%(xGg|q>_P;(1D(ZJw5J3`S|=4eX++q^5FqP z%Dem9v>Ne@MBL!&L|$Z&_?^Rd7RG(l`8FYvc|f_ACcAe}bmm2V{`|Su!qd|el+0;U zQ&V6vDk?s)5~z6UycPgz)!J`3N(s_ceSN;Q>;?kW2#L} zO^H-@42Igrts}DQM!O50dOfOlYJByS1+{x>=*?qKin@eV9KBdjT77binT$n|U4bh534+IIaJh}1e znKNg?gjJ3L*TFgfm1*hf5>io7NyI=XTCWA@*NnGkVdwJ7XY0SV2;g(?`&O5xC5}5$ z!|d3DdlQ+3uU{*JV$teFkgexW62AFwh%704O4vRWDPz^#ZBdpMEpN4Fq9Z3%`fRkm zehr}UUI1k4AjW8WmN{S~A*SR_ID=Ecdb`~yIdc0=;S;Y!vg^Kx4_xibM=i@5}>S1e!u(h2?;3>m@oy`Bo0_OkDU(=rb zExY1xN-b>UR9~4IrgCLONSELXic1DfCeyTY!8umNw->mrny5w3uM=+wPxN2xMpFz766U-{5|Oil();rD#U9Vu4>H7&IKYvV zloTmw)~V&?>}}%R9J9XJ<^437`wqY3FyrcA!o49Y^Tglj&DO!K14%k~d*CA`R#x#M zvI+_j@C@f$x5mBWL3Z%X9Y7`KqL!W%Y6<{x8XQfHWX`hyMGUR1tb#<46VH#35W-R) z&H<=H3s4$9Iy@~D+Nx3UO$>%(J*UT6rkAXY#5>FmeOOy>J#p&PsY{nG4Pn4oWAhqr zKpxm_5(u<$13km)B(8TpbhKp8>2c=*7)^h{J47jFyoji<&Rj*{y_Ua=K^ZH_H8hZ? zV&v8KJicYiK#*l%8Li(nlkAd&VRzfptAr~Yz3rEBkgwkUG7%(g04h?cY5B|s#R$*Wo95Hvj; zB6aqFhHvoKodNzD4l87f9!5^=mHnge0&Bqa`^kv=&$p0BKysKf*2cOk*ApObf`&^# zRu$jf0y{#D0H^{j|4DF!R@=HDiG^cq@7zqE%L0q?THVd(wC ze2*{hNXymjTE) zD;@2Ofgp(hAwfYwo3(>|mw=<-lmPVk%msUTdg$v*v`Bh{mIC16Y)L_05-blDq^{is z(!fIIDnxe;i5{dS+_RBsC|Cx{no8tyR&0Ol2k8OoPYrAt0eN|OF^bidD=8p$TisAQ zT%G%v>js1h@*}@G0Z`Xy$?|u1NQ@GpyE@v8JxnkH&1Ad$UKW-(B04Gj%64T<|0H3{ zix)2ro(>ll3=a=~n-78z%;zwOCGfIWuf~q)N!c%qx4&JnTl?IJeq40|tk;+Mma$l7 zj0EQ01^Oo>VDhgJU{X@(L;zFHqAahGxobk&z8-`r7rW3NOqo2|V|U9KHFjR(MZDhv z@SvS7LQKn^nxN6r+bi1M-kyJ}J+n7PUDdr`w6>O5{!9ZrL5ouFn~h02T9}H34)l51 z7WqYJFDFsFa{g|LkFINy<{PWI5=^4)rhmTBB|+FjC?trIFQ!GBLPP8L_A z5wPW8S9&(7bk?jek|osoeH|)ePKygR=Kb`1=DH=?FG7=a=7@0>EQ*NdV6Y6O#FIW- z@m=W!oF;=0?A>w!aB7>@?_{2jR~^Qk6n*`}o%7x0e%MK%J|LSvesQmq^4ur-B2tf| zUIx9c5X=i*S$X*;ssZZuOJrsr}PA`AEO;D7ddOwPBC@?ejU)g zvq8UUEwq^yf_%wqT|W>0aVV+R?c=kP-C#26s+?Xj&0ttZJ9b0=EJR({GG^&S0T?!u zCG>~}un`ksw89YQa+`nS;<=BNN|P1m;x3w+KJN2wJugN95t6h30tCN0mR<nqlNaHLP zcf-pu>rFKFc~$3+&nAOqlHPNmEVRm&2SW>CczBEKPO*%31pAl@JL zR&Fj8Wp|U{9@k&avrW`l9ZgMSPTb?yeIGEND&dG)+eMH&u8;@a04ar}_e?UE(<{_x z{5%P3xfoQX1tPW(7|3;yO+PLU+~dE29v5(rM_{Q{fZ5&MZf=*@-qv;<60`x`0ea|g zaK_p!eM}gW(NLZyXI*kk3r-wM+zF*o1~*|Hn)SGZ4p_45*r%7>AWRB?!CVL3xD?Ro z#a&-=0;{e5bfkDOJ11u{v#QlTXDv$|me1^l|pl3A}_ zeaNj`9e0J5e0`C|?S_{3)UjKF7G|Dp z@i4x%qazwHP8JUXT&#lxVdi89bdL>{`?$+>delnJLLP(3rO7Iz$5ME+HBD@OmB^+` z5XX&&1Rm-@s5V#d^X2`Z$Dl+?B<~Q@d|fTF-lRrLfM1nyMBsU1xwDW9RuCVc``V+7 z{d$$7F7-0zYaF1e$JH*QsYjS=LU-95uvnN~Uak!?S1ZGZ;B|i*#tKd073|ptxV>3t z3G&*q2>c~un_;bwf}WoS&Ps|tfeJsc$m|ngBw&p&+2(n+N)R}7R-@G@rgO)enM{Mn zca`DX!}c9Nq;}cFL;z&yXP)F~=$D~T=6yKyj0^ zDw500%A%*mV?tD1ItXJ9FYqfz6R=Ln{36p& zkkEijN%h~E$N@bNBAZ(xB_+jSH*>YW*&+NLTGgm2!TNZLzZMRbucR4-1ZvVomFdA~ zOC2&+Z-KUj&D|&&WSy+*UpcP}U_rN{tzJe)0a8-Y3N~^0pTbDXq2%RI-?gb?I%;5| zV|mVGGe<69=AHy$jPdfA2IKHSb8AlnHq;Itg)g{KxH^bG5+-Nh@0u8j38MNenKPgM z6$rrtMCZ-{20Mci(EM4Su!{svy`0Bg&Fk%g$q5}0HS${ZFH^WOQzH#&z%@ZMt1;Q2 za8QS`nLtH18x7MourgUA@$M8bkvqPyP>4haw~(|~(U}TV)9l-bS8!OlHQo+(_p#7{ zk|sR3=okr9K8%HQG!yMEUfd<{rCjd9=CwGl7K6PgDH8>cV6{y`8NNMWkOu^a31E*} z8xAm`VP)B^-y*NAtxpprz=mk(BcjR?DxdWHR1gyv|LD;!hUMT^I!^il&VO}2*d?z* z6&=jgiQ`=p0I@y6Y@(o}_ROr@&(pUJ#e6QI1Th!wIyxWL`&N5*fB=~h67ZnA7 zTg#Jtk4e93XSzB+wi`%67)lUq16GD(wf(%9Aa(I_{gCeJ)8%u60IF3P`_p$ZFFV`0GiIyX>{2giZY@9t@S+=Y z=Z)z@kBzC}5+LSSbIDxo%7q;FTCf@&!02bSCUcaH^w#IsnOW%AcCJaSZaBtH90e0m zzoCcu@U@H$x?Fy!Db%~$E}|+I0jj(U&WNF9vDMZD5UFzS$tx(G+VIVG61d=EGe7c) z9$isqe4Xp&<}P+(T3(6+sVM=%;eYx;b5msCm>24OnA`eEqe?g@Cx?|Pv3^+UUHgvG zFf89d6;yt$4X#fxuX6PkI*83MNgaIZloVX)zczxmB;40vAdAhBfiRq-pOyUIBP&;k ZnLqEcf9lq^0fB#K42<-1f4F-0KLDw}+im~= literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..dfc9aa08039ebf20af18fc375885b35acb23ac41 GIT binary patch literal 15206 zcmeHu2UJvRwq_wBDhetp84Lswg^NheC}5E#OH@&!FlExqwQB z0+ft|BB!Dx7qgGI`?a^{O~2Q3yL(o@HEV$`EvP!@|M$Q5m(C+C4dwlNnfIblsQu_m z7qwBS9RVm5#nA3u@IS(BeWUP~I7ZPBqvL3a@wn!46QzC)<8;drbIa!XG54D;t~QPi zLi{59LT8RyV=zvx5&{DD|M3I-jxJULEu<$d~%Tw|+(1gEHgJ*XfL!kn0?hb%|JU@=w zfkGKRKnZE}m|EaiMG!r+WD4(XP%83KWX)jxkwNX6+&x zjowRFOf+JoSTGjDOgzPfg_V0VqfkREt3!9`FttYvFr@QkJK@z5_;pS{=N+}RwQh^I zP^fpM3maQ18XB~|A-xY#t7qfLJ)->lA+T+7bQZ*1$FFO(qOhs8|L{$HG&8klXl56~ zt*I&ABpNnfjDmqC1hSAD({RmE~A$M zNybID+EUPA;jyt<>+9ZLm1giY+gB>2rDJ52Io1%F_4>71VPWCp;9xy>_acorF=r)z z;&_vewst$yEVkObc)&Yr*M8=dvNDOYSKeNvlUYsD&o*)!c4vprX4xxL7o|lzaedMm`zgO#>VC}A77ZD66|}~ zeAUKzk2w>xwySIYp+koXyh*m|abkjb{T$n?%3}n=bS;B9zOdU2x%5}BUZHUb*mWD} zg?E%oYrc;|LY{LTIea+%^N#oiK0`5>@iWHCK8HMPdx*4FmU6c?|gq@M|$ zv<}|lUN*dyg++3zW@66vYUsAs{6M87Dh=dkWcz=fq)`|8Ehwp+sff^1tY^4nnVPIersp|6E+Iuw4o&;QP^!tH<(#i#iA~# z?d{D5e0%##n~qd8E>$i1B?aZK^puo~xbr^WZw0f6YN$r?ci!7WU*OO$Vc%PHcER&` zUfwTF(L%~k7zFffZ8NpCwF|7MHC{_Jz}+1C1yp!SmZAEsjI54g5!zP*GuF$;ry0nd#}5WD+%@YBOKI z-q+{U*4mo1upl6C(bCe=cDASR^qDjG5BF&zVq!8MKi<2aMdXZ@kmG<$@k*{8wRn;@Bt-K*Kw?Qx5*oZ~z6%cjf|WCrq$?|1K{O<9EJ` z;4`pY7=av=&XXiIXj)OS|Pb!^~lr&ZjVV%swHatHYbKV9A+plMCE|A;Jm)o5cFX^$% zRz+2{5b8N1A|j)xNdL{7H=moEyB^W=><}*Qb9sVYDIc_f4&c35%RrhdpPy=$oR_kw zFfj8{45Z_rJu^8u$v{2^`-3@ot&WlYGew_6u~H~|_7Oh)OSqoi-iWxk*H`i_Gm?^q zg4W~WSfNI&N9uxa7rn8lM>_q@n>WwZo#N$1uk?E)jyK2ip^;Xmpm0Y&*DM>Z!d)yB z>g(e)DYLLp@ABo#5}pf5Q0}_s=D7t01&#%d(5*Gnbefu)U=D03`C%-b-lx(G@OX#Z z4b_;K;zhkv+)eSsA;;`cRH;8i9(W#zr;R9jff|*`i*2wZA`HwoT20{e#xBP?X-d zr@P)+)Q3#sGjvogUD|D{dFj&A7Q(a>OJYm6&DLbM>!d4ra}B0V=gmmd)CUiCZ4J}; z?|wbqkrw)#-!v1MjvcAUp}}=e&z|2|R8;hNeuerhtg3XAq94P;*2-Wm41>zerH023 zAGU_`>R{Gc=HVp4w4knfiCu0}CWS(;HhO#G)0GWAUfyRNll#tm`t)hAGY8(p2nB-_oYgQ+yCc>-h#x7&=Y&3bblJqjq!rL- zYsbY0-T|ANzUuK3ddW(`?NNdj1-HJQLyD%Szy_DXtCMQ|E`Z`R+#zREg0wMIQb+qM zRpDzNc4iwFYxEY`cVy~iaiRe~#0Xi192GEojmPW0N=dP9d#R|Rq5|t1!P(i>HPs|K zsH?C49Dqrh$Dp6VlcQ(bBMi)#c0aP~dVLv#DNqVwzKUG#b8VUYYL&R3bR6m4 z+HlCk#lq;SL1GPNtmH0#3$g|j9lS{WG` z&`w+PuGQ=iMj(c&>XW6VB|ILV^7{1|J$?Pp!%mlQ-Yaw2k!Id#0C~1HHkaY3*M)NA z!aKm^*tzaC`b>G5yfM#r?wt082m3C2d3go4?1es95_NA=Jb*zcf%2i&H}L?}0cI)c zg%i~@jIileCw{{7(N70=?m)d0t({ls4IaEt%a-%gi~j~-|Bt~+ttR{8{?yx))Uej4 z1O+dz^tp!8vPm4)C4TR9oUUVWMB1y1%UkG#0*$mtFSYoW_0oN>S2niF080p4w;t>4 z?6moWR%qLq*~+#L=CZ@FMn($-@qpghu8Fqf!t1qr(b{m>01gY=b)5k$7xwDSen+uK7s2&*4ib9uMmf$ zZdFpcd7#pVv{=vKpU(y~eS!iSPbiyYs!o~)@A2cu)1{9emzPP*t+9v3okmJCZ+X?S zMkMfwi0DU}x<@lJGcO0qZVo&CfPgtLM6lJezX37+sq%pN>TPUiclR^^6#a`A?;+sJ zkr?cOMn8(vu)2!Y(5MQ?hiE&XKd`#C8HV2 z=eH<4H|cEVzvUJ$<#oamX_{ZEQv4sO1@IL z$9z{1lhE&wCiL~4Q&uer*`GhFoHZ@e1y0d+mrf=fVCLk2&wK>u{rmTAn&ZTcDm>qa z-1?H_G2o@Fld5)ETN_tlmdlAC20s1Qts!iZNQ0X0G%)W3-h~;9FxaK=t>0rXdt$=H{OPC({&#i;D|pdEzoa!cPPuF8~6-A-7rhVcQO~lW)>C zH8$dV3hnd^4b$(_Fq{?^)`Op97P)1ZWI0gbh4e}@vxJzKnDB^*S8xl!InmmHR!Hrt z0vRPGhG);71w@5kT^vE)0Tu^s-X{)IRKRY$FZI z$mGoU_U$?lYO2nA_wUEQsaULIVQ?qFz$}Y?O8stW$pwH)7VJlFv19kcgC_xNWuH_I z!5CKGY&fbOa~@q$ z9VxxC(zHd2800?N^NJ_IQvuMJQHj$q(@5pgXFdr))K}4(nsiOKVGK@igX+Z{PFd3L z5X>%Z1jYK46NDK)adAMUP1^GE@0mz2(4msr>VjD)?E%Jt$`Avedm{*`a)7)tP4SWj zIDB8<>wEWhW}8(S(er4`II*ifKhxHsDVx1A;G@~jV1NSg;J=SbO+!}X%kNM5{qhH} zX*d0G2Ujvf0_$OB-AAG{CPk>Dy7BGhYPbCEQf@?Aaqf z3x9x+0IdsXI?}pi{N@I$%{8S-;n?r_iBvu7%ah5kR3mMn7yxsHy?y(3l;kbB|2E7L z5E^cCiHonjE`*is*Sle$c?>VJxo{zvL)Ofr-z^d(19t1s&`^+NutS8lWMxGE0#N$M z0dOacg7`@{_nFxZPg|^Gg!g9BVg@t7dx@lh>(0Wh~NG9u2AdESb zjvc)Ttg|yy&)@Ygc=UID?h@ryfNbp@9eSpwY}R&;js|XSh0sDJ`nXS?Jeh8W%goH& zLE`1*g_bQZ41@tHRo)M~IviNGHXe&0SVE$|+3>KxkAcT;sFc{Fj0h9lqvjL@0>KU> z1ZH8|@VX$THi-)Fuui#o(1czzE(w>2^WitLSt z_L>)||!|zCY1zk@F0rh~^A3>h~)_napd7;tc5XvCO zB;);E>V{#bkF)M}(_Pu|UAgAfW`Mt+)eN^T4A&HT5yz8Ab&QCb0iY5ZA+CO;t;%m> z$21+gRC-^Z3Gj||5I4)9De0M*yarmAgdM%Z7}C)v6jzrIxr<5t&paLAdOo*pB4!&jjzp;=Dd#wO#r zfO*c_x95P@oCef`h@j5j?s3|*BuLvjI(7@SNF|$=yH7siNzl4-CHg483FAb~{K|Bf zv14bF{9RoGgETJH=M(R#Iq<-p6nx~M%E}C*1ncg(po)95;S}4|J_Z2^@Cg?W5AdTa zr%#;{OP1l`QHEmbDRH()vY+|#1}Q^$`yfG}S?zu+{b{AH1QlFNY;45Sr%9bz26o?m zeZqIWr?;(kT|;L6SEbR1I1@hnSO`Ork(~-6ZDotb1ai=H!#7 zp1|^U1-o{ri&A|UoOJ#^*Pj(COD?IA`B|dm{@XGq$#=c4+P^x%dy02!#!7Z0cEr~$ zDEB8K&ejFP5M#x#W%`Z-yZQoQcja?ssvT*X+xmWI4fEsxoZlV;=Kwuh(L2rNT{WxbmZ2LPkiz-mxj0ayYVFpo)E}^O^QA=K9NpE$a6DjdpIko^c9>uj@g4(hpmKzVhjW5bHQBHr>NF%L{r!stLc9Uzx6Xg>hZ+Ml zTpvyZ0s{bJNUx2Cf%--FC#L@F1^Y3mQRu6n8$I)tNo;R#hla;gGW_zzi{lehCVxLq zU;m~u08O&ce;bR4s`5nfEj&wFM@FPM_KJ{Ivo6TU-$q9CbahiIDk}aAa{seV*{tZ# z@C%%?I|u(|q9*;)dpQX^0uBuSY~TDt;OHL%m%79TbFwxJ zv8n#@;&teQ!(yQ3Se=0myrI7V&TVV|eJRxQ$Vfg}S##hzJym|?NF4hbCtz*<$f8 zr9n(!>ym}iW0u8M%mJO;&nBT8Dz)@5r<&}Im_vXKx1XOiP6aimAG_zzt31N_78J@JCb3|E^}zQ+bNGk5f?(c#tk zXD5|20W1Mh7Pmv0ju1gsJKk)}|1>e)t zGrazXk)PEp(PZ|^n+t$%b=1@vi>JT|N|K~mGk6EHH%7uOQz@AFm7qnP_1CvI5n51S z)4_=b&f6A1L8+^)eF7aL?NbC?Aq@e^AMWizP*w7LHQ z34`c)PE?LbsrFrJy5}{+PeF_8$~KnFHm}B3KG?@}BCzJga7~~c=)3aM!Ga*CX@i98 zO`75gtxxvb_)gWixfEHg3j+rcdI2K3i)mcAaF<&xDhaf$EdOnC**1BDv<5UJ%MTIP z=M>mc4Gj$uiHW&DtnCM@OiwBWX@ON8!YbZ=Z427Td7E}lpx~KRRc2 zgqD?_KJftzZUCd){}jnFiHw*!;;!TA85z9kTcQ4&$=J;i4um9vF!_`d_^S>0B*=_^ znVh^m{$I+Dad)4OuwFEv=@kD17_cQjSO_{VqBMpK&Vx`@F433zvrhOIy^-qv88mXG zKYKgGNuqBZBJmkOZ%FH4G6Z3^#S5IxfVn&60WCFmsAxbsU^N8Y?`}>47_INTXux#- z+bu8Axk{q0`}el-|DD}p#X(0!})1qPE*9AKq&foc4UjS2Aco7k`v!X%@JU(7NK2@kNAYQj) z;JrW*A2q8->O<`y`2a?&&R~^a1cYzER5<@H zGONRQG{JQ%2h;HtL?)(4-R1^nW&^*M1gjUQfrcfq?D?m`x%-?pD|7vjn!x9`$nXJu z29r;kgx5hp0%AFx9{>lK8}xj`m!QgcLz_UA8G(LfY#a+ND%k#2tiMQ^u!kx`!Lm7k zOhd0LfCff?dmT~$9|=UNPO*56(*8L)Fj9g69cMwpg~}Fm*$*`}U=Oh1R}iZUI0_$B zJB!Gz35@^WLt`B~m*)p%t^ID?NZ|+VNlrac#;*V~sSSh9ELOx`8!S^e)oI7`Af2L- zCX~m?!?T@z0dAso_M$s!XPFA<=|3=DC}^z!aNBWQs+eB;Vz-he=!18Pzy-c12R}V> zZ+Y)k_}LRDPT;?MVZ;x7`En|
    t6(TM|#G%E}^(<3g-LNS|wk;_~c(ghv1E)8G*ut)7p`s|^*E zPX%$z4nnH1J;NaCf^yaIlRmSO5N~%Lcg2TQ2Bu#Tl>G&zvO@(5TJ%-$RqHDK7LWv@ z^rwU70+X&&x}6_mnQMK=$Yd#ZxoNQtAHsC>fawABNK6N8pQ>KJfV>PXb&|nJx<-3uq$s zrv-IHz!43TS)aT2bMijyRE3<};^u9(ymcBPNH{F7Mw)ZQB{Nj$YNlw3h=frTDyDNwzL%lES zydS?(z{fIe1k1s$Iq{JdE|7J*lDEFr2G2L~@wpM7z4yE$*lysTpqfLDVr%<>Z*#xh z)}+==1V9qRvGxO~m`pquxmdvG+v}L28>eKkLA&aGW_m@zfzTVssI1fmKe8_zOp&ar z^s@x0Jm2B8C+2rW9y`4Z`ptiwLB3hD`SR7PUn0o?pgK<3C4-X$l@MvJWb*nEA6Ari zlYyNfG(zp5$~kx@oE&{nuRdsHKnwsiVk);Hw-wPLjdNRuQaHb-)aH@6QwYETr|Mqb zcn6>;Dzj$&7pXkhi)#&cIjU-GmsFkF*{5X!js{5u4{P{gTJYp19@+X|{nOCk>>hYZ z3D?pCATLvmGV~ENi29%3Efch8__3n{XoIfj z_wtskc*Y_s-?~?&12@~?NuZ6HGCZb?`@5YQwTI)(_h<}w8a>T8!*`hL^n-(yX>1+n z<<#GPn~UrDyLTMOrdla2UUAS%$#9zW1@B2q#dmH#c`l$>}=BkeM`%!si<(4y1(n(c|A1<($@Z8S^h2;0i zLCZbU;7T=uL0y=#zL;SO7Ls?9TGve|0V-(2f&fO9Mg?mmtPp%IW+tTvWZ#!UJ@7-D z9S5x9re@sQv;wtY8oaEQ+%o#(>7sUhDo~lnNgmB7dIU+VcWF2p*gFN}_jrL_lJPqw zHRo(>0@p>R)Z%PSy`g8?gL7mGD(zrePL6AhP_ex#ov*2 zIbF3f2oFahi3@^`41ftqVF`_>1wmOUz^@hJspye%uD|-KugKA8nL^@FOrd8*vEOM@ z3!K50>q$J}(Hp)Kh%El9l~u}47^(C@dq=A~18wNR^A_+jOJ$IN4`5kkt{h5P>@XCfgp~W=rsO3y|d)0IoO*B?g!D=`BfXL+8gY=2NMvay;ori|7_^;CST z2V5nCY5XDF%I5u)v3G*_jkE)POs9Y| zk%CUZ3>a6eEpP1|3y55^Tl_ttpsPIOaVjc#DO~fy3L`W3=ki z9zC{kwt(LQ?k%L@w?E6QN%#?N8o=?nluop& z2D;VPKh{_7Q&9WwV@ZNEZ2eae{0#=)bOHsXU48wH%J&D;xMaR!X zO74X+I+Ng{7cL&nTc}`EOKjOCiO`Tv0cA4U@6p1o9kuZ4FwTcFxK`q7K_Dntlpj~B zoO>&N+~Ioy0S#KDNgSrQy7RSu?>-ka{iCrZ*?}ka=9Zy}50Kz_DxCkI|5OfimsVbx z^3e=j(CUUL{`}#YkWfBkA9OA<@K=}*X;d>K#5HgKkO)wq;y3^4TDhlVAfQk)Vamx& zli?oI$8#4^7eIWRsJr`UBKD~ij@*h2V?b7&GBH|43&6qW_DND-dp%*e?3+M)bMW=m4qg zr|0CSl|jU8dW#%YTzZRGt6eqHuybl&0)!6D9-E<=IJme(j8WrABVhw=iGK7)`7q)T zhpYtWjPg7qdG+~nMo`j@E^|=Ws7tQ{H_^8A8;bz}vSkG9vlH}Xv?vnLSF^7P*(bW6 zL6i$p7S9w9BuX-z&cotoYcd(%hb@K0wH6UY^^G1gACZjhl(r~(~|5cZz z1dmJONdfwWgIiS!Pl`03CVd%-1+jaIAaQQv?;?;vp2Fe;RtG-rdWcdGEz6oTsoBRb zu;YEy%4CQ9I?w?X7_Fdeh`cB5e~h@8CR67(p5)UwJ_)ei_*hLI^;C3H$P-KU9SJee zURNyX-(ykk8PeO^I|2FvTv%fHgJ%<7e|YI zykBahg2r_PpYAXaPc*$_E~N0Z^|fY-zB34W5bv~WsJrru9q{)vR-5>+v*Fn0{|%Q$ a-WCUoJ-ZV0GQ}`>ozvAPFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..41ad2addf946671ed7245e790c4aa60d02c8a106 GIT binary patch literal 15252 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 NeO2j7*5#WI{|_({kuCrL literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c1cf4efb17bbdb860d160fab3da21f0c29c901f2 GIT binary patch literal 12444 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b6c914a66591096acd4ee4e8a55548526844b024 GIT binary patch literal 14156 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..570dba2b48bf9c6debc0d2ff3df388f783c8b1f7 GIT binary patch literal 9095 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc2.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..098aed353fda8bdf9d9899fbfb0b904328d1793c GIT binary patch literal 14175 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8cf538cd5f86c15c060cbeddef05d2af0d7932fa GIT binary patch literal 11132 zcmeHt2T)YomUe>y)GOfSA}CQr5fD(2oK!?b1SCsr5k h{b8sDwsxMv0O|$*Dn* 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 j(-boFzhe*P->2xxah9=X}4P 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.final_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..443f16e5f09a7f1f67ccef4e90e62a46e96697a5 GIT binary patch literal 14187 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 SiA=Mi(3jOO6<)Y;=YIhyS6$u! literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b3e6946e15f4bca26334f7b557c1173b9f28f264 GIT binary patch literal 7943 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..178ade4a285743029c18dd862963f7250259ed26 GIT binary patch literal 11139 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 R9D%{-go(Lv-q8!!{sS?cYAOH# literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.k_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1f7a6d89057adf3a6588f7050be0bb2df63964e1 GIT binary patch literal 10087 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 ARR910 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0f6be259b63edf69e9aafc3a3d06b0a6e4520398 GIT binary patch literal 10726 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b37fcbd56ba62679e5e28d91991da93153ffae04 GIT binary patch literal 15220 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 Cm^+C8 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.out_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3856efffd4499edd2fc9eb8f7de2de28b4ca43c4 GIT binary patch literal 15239 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..059bc002291e4a9b4a4bd8c82351a195f495e4ae GIT binary patch literal 11930 zcmeHtcT`jBwr}iZqlj!Zpnxb~L8(##NU>p1KxvU05Rl$`4T_2)MFNOG02QPcmEIMl zND0yfDIz7*AcPJfZ!Y({cbs#^z2}a5${+8IJqF+ql9jc-Z+^e|EA#OU6~#Tf*>|H* zs6E)Lm()~DTSai`&bxc6WYnE~C8o7Fl6WhCN9>y7;iM?rNMwVaRV%?=upjA{fe!1zvw=a+6 z+zE`a<#8`Xlg#^G<8*J56Z34vOf#iIj%+5ND%a~3EK-BsghIV%Zy7Xz8%13?xM?Q} zWyrR9AN*2e>roWS&vd6e{Gnl=AN+jAje=L7xro|~Lfv|Z+KNKGVfyn8NB`a`-MLF5?JLntOG|Ss)|>Mz@5wc5eoAwr_NI-u zr8JB1AT4-KBv!|Y5!(d znKiJnSXi>u?-f9Ihmx&2RgX5VD&LvYmGRBCR9UycI*bSQ~v3l16!;dp+ZDNL_=4X-#CaE9==d_Jk)$)qJx;!-*3Rn$7i{=IIZ)}ZufUA?VFgM*1T|`DynA(3We5QUw>9}-)oaub9~1JeN9tK zYc%MxqGAJumX@FI^2J6+S65Rs{%8mm)(^09m? z>V22SSHd>$iS|?aMfM7hA3x?Ef*-rLZuYlj-MRH4i7-2P!%24i=S6I5sPFu7SWBy} zZ2g#X7DQ^%(B3#%AI~qf(=#(TAv9AlEMkzj5%YU{HZ=Mv5B;Oux<9pI&DQkJor&s0 zcnuAW2v=$^W=vdDQxg_|e3qBjlqZS_%3SmQc~r{v=vU95qg~wG0)pJ!+!}^vnM#6d zhu9o9s&g(jVU?7KJWV7_Td|ygfQm$)b9hNf$#$RKcke_N78j)o6BR=Z#*F}SE(N{W zVQ6igDIzM`(c3!}1Ur~oT&#`3VEk>v!^2rc@I=>{{^>^5YuCbShjvA?GHvhZ>>O?U z+}Nn0r$_4dnmKPqE_R|g57)6M$BNs0sSSSeME$~r3w3({^zwGC#me)f<>hH?+qSK~ zzFy7MwIDqsqob=UrK;)zwsmf#LCj@B10E1dR8msPvmd-*)02mNa!63i$ESR8`df<4 zw*o8?&Uc<=$7!3dZxqJI$DzR6Ru?8CNu()nGXBDad%i#Yxl-S~Q#*C)RE)SyOuX-^ z1-AA4Qm^P70gxAUoafkPAvrnx3DtOw%a&2p;W0Dg<2ldXdLyr_tPDq%OiD@c)iJIKYVld> zOBrBnEWsi6914~=XVIDzChZP5!*Y-%VT+{Bo+Zl8Sz#g9A!9?7q5DsaAInd6dAOsX zGk-P%WF7vh1B&wX{)R$*cU0@DV5jmP4GNLTm+ZZ^-1B4iQKT6h<3knN_N4ztFBJCk|JkuvghXJoPT_JtUxKu%QGKueGL$# zrl=UO?pq08dpTvs8oP@e5-lw)0mm{53dE~xYxxBQRn5qxUEN)*sxmK!YD1+9Bl&TA zC*Q*Hy03d_>-W*7*!ZXgSM5wmJUg^d^_w7*6r-3D-}dVAllig4P|KPi zHqW`wC&cXfWo)|NU2ZkQG2pOhLS2?pORhPMHnv<7EKf474M}_XlG_B&%6I)~?T~}* z?Ck7EpCVXJqXUa58L!36#hC%Ygl5X$BI3o-Yib4t@uHQvx$1Z2kD7%1Lc(&B1Xz=Z z?D9pOKF`T4&(-l1myPw6hV1;xO8f^ypv)M?whnoj!ZkWy6b1!UP5fchHvxa?;aJS65f-i&SQ2o-v6v6iSVVh+xs? zhpyYPe-Xb)HCp7du(0q1mAaR0hDv<~i06Dbv{rO@{RzIZPL}ucU2x(a~w6qj$`#4Gra+nwsiAe`a%zC6P!^SBQCDOSWddIyx~j zoT_ys_~e3uf(EKOaqkhy7h_}Q`ULs{e&i{v^D&)E>${8oU7&WRazJoASAv+ApFd8P zo@u|oi?zL{Cq016_ZDHTkdT25=X)^H486mU=h7wAD1|Z!OP!vYdgJK68&|G8jERXM zNjNyWxSWz&r9Fu(E-r=|QupvE?#$9nnV)wSJ9o~!GgF&Pf(DnGlcNfYJuyDsa&Oyj z?d|P6Q4PG~xp+!vSJ$MX+-lhB+8P{>WcX~!VKHBLbiCrt8Z;~Qa*);s!yC4Ry5;5N zALl&fH}+gFowYOEEW_MmTNJ+|V2!e5zHhM$;k1S(EPn9DKWXlN!R=XC{d5a$H36IS z1ft3ea)9_jA;(F(S+35HL#K&3?^VEl`0z!lL`^Dy7Z!_Um#`%Pi`mO1D>GJs>`qwN z%hc499Fq3mEjjiB3%nHguVsOH?<%2CPGT?~UqhHtsG~%vIotj+ZGNrH8%9Pi?~qAp zJv}VJd|VfDN=kG_Mn*~| zvrEsJk&l$mw_cNSoqEpB&VFHW!H%(L=Q*9>=}B`z)wC>Xa>uWezOfnA+!X=y2fxb!wTdU#DJ7eleD zXJ8=5Pzdd~1=yoa6{p|df|>kLp)v8h@`iOQhbs4q)uIzC*Genfn0(^XQcKVSnCbRQNjGB~$RYn}{OmA$F0-F?7LT}vw&xGcqWeyqhvj~gKC=T0w_ z%HKh(fEZfMVY}4)d`$-j2X@grLAJ#s2eE2eTF-Xx-VJoEs7R8Rhv$AT9H1+){}@pN znbCrf_bog2j=jITgJ(;ZK;*yUr zpIf(1Vs$FKi<4F2(gByTYFO;!g93V~K=dqTe^jUEUb^GBA}c(D@w?#6ZO*~O#m*w!YAfy~3UMMn2SK(QGPU;Z~>nAnfn zUt9DlNSLqp2|DZEhZj&8o?c!7BMW|MR`~LXwNGOX!)evP?Dx3>XxaP;T2NwtMaTYI zL*kzSts^3ooQ;VbXCTY(}X-nHpYRrK9Ay zjIuJBI7x@wUsleZJ*!jVoE8`u*xu5@4Slk5Ajf|Pvy_v#ZEtE!3_B!>p0!%<^OdRl!o5p)eP_Q|Apu0Ow z{^&lD+G*E@$pr(~gcQ|;&IZBC%--H!{y;f+!j{uho814NUX7fhy{+X`_x3JBNT7?0 z%Q&8~fEO(7+}QBl=KtX-;&_;|E~1zU6}fygI5;>EjQ*XKHF2aNYSOXt08lpKw`o^f z*v{i+I`D}(0#lnLP3wQJ{`4uev{c%pth7{@Gt}&hjSMFk9fAN0J_slh=1ve^&3IF! z0Y`Ag#)X|TZd=eFN|*WSIE!L*LO`g#D!a(!j=0!{!2y5#!B6GRn5X8 z4G=aWGV=A*l(i-fhwSfz2M>rz@Jv<{?P&maM4rfq2=l?J2R(Tf;Rgi`GFMkUr@s}d zek-sE=ed0OvPDO_X3rZV|JJrPgd;6XcJX5{+Tf}X+dDgx%e|H?Kiu1f2!Gk-?_09) zl?D<6-n6G-ph$&!{vDvli)EMdE%Tjyf=9HlkB<)s>Q;~zh^{RvDhi`R>qDUxSY|PP zi3bw4JR1B&K_P@Kq)ixS^Wh@McQe;KzWtwa_CNP@%^F-VjT#WMwoK zvFhMGdmCnf(F1wg`5wS96|_ZUWTd5?T~}|h6XM6Qo={2W_B4^7)M+Pqz4z1Gl>+N9LJ0<(N`Iy7p@aL%V%DAY9@u(7mwliJ`K{k#cT6zhqt=cpxec_ZO6pMUNLzsX#e? zdoE%cc>DJ4_P#z2k^a8Evmj8%!~p^kcIoQo#t%?wqH^WRl{(kj5RSGuxBj%=UOlk7 zZ0hoBK(h)6Py<7LTbBC1fO8#kNqygigJw`uQ*&BWR2@Vs`Rn`lelfAJk>TNRS+MG$ z8CWb)`^f8gdFMQ2;-6wboY~meaIdX{t>9eC;dT<Q&;$jan!)p{Xk0Z8wOB zRea;d3sBmoW@Z^c&0&|p?2X_#i?7gAPf-D1E|MoLDd`d{Tzj%|Y@YkD(5;!Zr@7x*z0_H#MIBp!p(a8zmIAw0mF-x~l1>8PMbMr5m+PNf*RcGc+ zJU$`t$&-$@w#03}9ZXG2!@`LJn}lhA!0;(&Y^)*H{)JA~O$k9z+CtXHemJ2N`DJ(P z`*>=<0ihaWE%>tOY_D0i&xEQyath!D^#dhzMgr>C=@K3(FFayI`3N-tKf|3Wrh*2SrxgXG?j8gj>9DNpB-C)J~} z1rvw5DUm1n`PJ?0a-5_+=f|S@4}oJ)1YyEIVvNz0KK+%wMi=uVYUt>s-@CUNB=ae0 zY2A*Fj)}=hb+8F|ELP@5Vx(MvR;BY`A<@z)vVSRV)00&F~o(;^naTaD|TmyQmg~LT5s|JepDiIOP`c6$^$5+i@ zWrWm@9YfJ*G?%$yEYg1W?L2w>_(ibo$+40Ufc(xuU#YGKsD(RAD=X83POc8n1@6N+ ztIjiKWC(rQA)5H{LPq1~*pDv)_m1f*VF_ z|5H)o|NjZ{KM6!mtMe9TbqlWV+O;c2(%}^-$NAC$IyIdO;9s8SU!ItP%asg@Q?b-- zrZZc=bbb=g&;f(>qi-4P_2BQOLEyFA2i9m)*q02qb(Oe%`*sMYUqN1A2_b1zV{>ye z4w@Xu&XJ&|1UWn#8yhIvNZ~7=KY#Wd4pYqYT(HEd!2#aS%9`)9=6Y89-KCj|wQR(P z1IclkpZ^*WeB7kUs1IXKQHG^ccSb}AHF*w|=-y;FA! zvIICeJlH?XH^`^SbZ~^BSAaZ4f?Nn;#T}qwVIu1wMUOJoNp~YX)!7yX9(VN`eIA+-&r^)wL_39u{rzh1Ldz>_ZmBru=2C=1eRJ4*toPyCk#(3A09P+yN#U5r*DdzvPVw{qRy-#uB=n*!MRl^r zDhDt`1C3i;fYdV*wh2;G9WM{g!D`GS`=KL8WNXkqkk{bm9dmLrz^IHkrH;sADwXn?MVT)CVN5*X}TZYM~(<)~piHFPs3cC$F>a{ZPZQUwAnltJ{HtshGJ04bDB$6;$BBUUEiDQ7%*LiBxUV>{ zbnjh9rASY&I!~qH5^t_6UEF9qA z$SR$w(1js~<8I%JGQm`ZfdPX#emBD;dng3S9l|7pDI&bsv1;SLOlWU?Kqo?5fU?qt z7A0l>UA`!4>sXtrTn7wDWZl2N6%2v2l#~;_*QyS%+ccj7Dz6R_3QQZgbq?yt(arn( z-ds>u4==DA0AO$(hXfG1%`;GgB!V3K&VYoC`IOZrJKw}-&kiDi8DojSkT`vNbK)e1 z7tJ*BGJvzyIP`on*y>lISW1RMq#+Scw-?-F^g9dJ7XO?R#z9C=6gI9R#2^+Ih<`O( zTic?jdq%%wDZP=)-~E}-8P_mTj%S7(!R+tfHW(P3Oo_K`BLivu3HcfjaoYMFvzaIth?8_O}PebtdbyWLoHu25CxNH$g#Nb zY+>(h1NXrP3QM>fHw<|&g%)ke(eSM=@~}=+rx{}$qz!z*10Ji%pIO#?|Ni}r`CSH9 zP!Ua_gq#=*!rqO+r9-v*JSys)fGvb*=iX7S`}&ymMB{T|<3_@IEdgyD)Lr6|Q9SZY z_d3ii6mP6fHX*Yu-T7t9Kc3V~yT;--=Ay{r&>Y;9fnYc>xZ-hyB42EBZZ0i-z1wj9 zD9WMQclje%4Agep*RSUN9uy9BxLrQw7!%ozWn<$;id+z-G1}O`Yg&v3GBP$)ZsY4Z zeSlFO4O0mofK5#VdKV#jhQL_6Q+0n=6y3-=NEjUVWH2~Q&WMV(v3bEGDnp3ZUFw!I zJ~ed?`iOYtYDdoYJ{%Od$B)M+8uv)_8isJm*{YBvjgW7i=tFq#7PgDSY*`eNaKg5J zu`WGh*!{+r7XuobeHTSVeb?P{!J;<~66PYTztw(w`vEi);o49x3FQBfu7rk}7!c?# zW=vs}44D+`?swI_?nA+3{MI1h(G^O9Tg@W1&kE%1bvT6>$Kgj7c6Jh=fO}25=6*a8 zjDZ2G7?6-)zugA$Zw4@;3=J@+IbXCz^`ve zYjI1=yI4X|pAM|_&G?$tgm73H_^z0mO+nf5VKCh=q11w=tuPP4D36&6)EoGzVvzhh z*LZq*Ho|oR){WMua+_mf?JBxgHkfn1c+YqZh=QMoE88$j@L42QhFue>Tptn4apyv7 zC(=o}P)^ap##ic?S8F-F8lg%)u2g`A89t4NNue+kuvfB|9rkhJ7cnD0Ix6st)h_Za zs4I`Dx3xjSHDz=4{CwQpAGZ2`;Mb|G=J&QMUw9_E2xZQWP0q?{LK|OKRIKI2tvoC_ zwpaQm-#)!CX4z$V3OTNAx^RFR6wD#5)!p6g3Fi03(L1K57zQ0Yk_qs7AbfGHfvjR< zUX|foSE~zc6prhw!hTQCxeV)pG7s805MbEWEzB}6z>owh#=I#;%+kVQrM~u2-JFXg z1#zfBnp4(Dq$4of zHJgI<>Vbm-+{dGP8o765UA>m5E;SJKEDSK{1B7|uDEK7AQiF_*%Xj%Dc=P)m87^J= zDWFs6Q)Y7NkadCdSbPv-0l}Ew21&`3D@=LZP*Av= z+qck#&#A9hf-$#%bxUg@1WK|%_sTQN{Pd%i(Nw^BkzPVX4|qKT%QX`1ka$9;*|TCI z@f@aRz&f8?{APy(@B_q}e^5~Sb5)Au1Vd0Tg7Ite0%qaPGuCNfcej~R@G$Lwgv~Hc z;QVoqMBRwv=V@2w74)McumJnHxRB@tEbmDumyXug*W%WIvc87xzA>;qDj{ak$^)}F zmWGCgbx}e=uq!YTsG+PJ49}m4v}GVa%pPo?46SUetlD6`oSVeD%;E6^Lq=nsDlg*? z3@E07$1@&;m;sgPDfcQ=Q&V%E%qsMKX(KFh zWerp4z2Zm*j*5dpHBRrJ3Q&WoMMcZ+Xti+XkTB7QPsrVLbbLpJ!^FK5S~qt&ULC3B z!U11h!lD@=`LJDC3tIw64aA85buy3?9E@4|Iz_HaqGC3!#BAg#`;pCy*_AigWbK;5|a= z<#6kL35nE3_gSV4$S15ImMFWj509?gT=Qmf3|R8TfQY!bEC{C0&wgShe(Ko6beN1m zq1iV*Vwr`ceXM+`U;U2>zy(;ME9%MDcP+j9DOQ8ofr_fl@dH|P=3}fp2$=sjhLocj aJ3Nl+_l?C*Zi9P9VK1v(%D!ND@BaWu`}MW} literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3492cb765793cb7f3d7b74bb9c63b35fe3645ff1 GIT binary patch literal 9920 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.q_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..b899d00eb8e10aa1b8ed8e48a01ea82739d9c631 GIT binary patch literal 10988 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 N6(x=9xmPU${s|yN0cHRI literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8d2f89fd590bdbe91af62d1a3dbe04ac1b321c48 GIT binary patch literal 9779 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..85d6778749218cfddfddf3465c6eb14a6bcf0650 GIT binary patch literal 13092 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ea7a5d54af5983c19bd69beb3d2ba28b319655de GIT binary patch literal 15239 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ffbd65b6a15c9826fb12411d1c72e3d48a54d439 GIT binary patch literal 11996 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cf9d5da22526fdbad10567f405ee8dac7e241bf1 GIT binary patch literal 9810 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2d77cd1f68578903886d8b466a82ecd0c3887c9e GIT binary patch literal 13093 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

    !> zi?1~`3}@gyv(-Rb03j3ZEI4U%PImV8I-t*rii$?}@tinuBEdBD+qZ9w;Hxgtjy#$PlKDP zV`=%`XJsaRWaOsY=FiXP<$r_Qk;q~dB$60+(GJS(;NiomJv}`Mn{wuVEp|EYH4Jv$ zmv|`4^}i(-{-1}>yVAU2oppyt!?5!yh!;G3_>ge>F(8v+E=+j1!(g>!fVJwoGII?V zKtZw%?Wr14*Kz(E9xqtMl)JmTd&)hrvYa9CwK6|Ak3D_n3?9k_@&NC@eY*mbRvigZ zV5k*1tC_A3h=>bqiA-}uiUVzmN`lV({Fq6<*s&i876_PD7$B+|P#D&V`|wFxwme|9 zxGK!(Tx!e)z!D*3CWy9$X1{Xf8Msj?(ykN6dJ14!Ap8i5oLcnpJ|n+?0AS=L(V9~r zzG=uVJg{ntJ&i^Tvzs^Hb!J^p0_}?kV2!Yxfq)H%Jx7EUL!oyvFq^d){2+Bj3LF&T zc%)e;Hh{zr1n82AifZV@_cuwfK7#J|BV(m;a_O|7pn73pA<#IAX>I!Hzc%5jrLCob zhZyEIeKf~miWy#goT*4mJYViP-wCvf;xIfs>{8yJk(LJV`0UwEIA?|e;DqVmc!#?E zk}gbPYoU>UsTYDUq7Y*cp04TVSD~ri+8ZTE$dORx(t6!7x!m@e?e5Qq+W14I&;U}kHVlLD&}9T7mb19Z>8XgnU@ zKrSiBNk<{0L5{NA9$A?B{=ImqQ1$BmVsX4!;OwvWkY|L%g*I?-de4`K_+T2b* z>GOis1_q;azw_rkKw5VVe-H2j9T)OBZje5*6KXzDfc$;z{f`zwt*P+=8DnE(ni?l9 zLGoZeaNywn{fVHf1g=a^+e*J};wio(^A>R)vvP9u;3X8*U?al)aiRnUME|}gAo+=# zH@Eb_D2>VbO4`rP-mr`7!ZSdq8tEe(MW*ZJ+-ZYbg8x>U-)8pu)vLtlXtvpb%3iaj zi5RC0@C*eb8_e<@dL>OtoR6Ew_Bxhl*N0%ByaU9qzI5oy{Rrl16xhE}G|C`N0{VhS zUVgx<($peI1R_sjuCdq;p6*O0V@SH`qJ}5Z-99% zO)Aj3D>mlJC%`%uhv_#lkD-<0tiC+ipMs%LQ}XiKHk)aiAyeSofpHjw@rOVK`s!72 zYPMO2Q!HK7^L+`e((KPdjUlAY)HERUKK8 zVD4X#JE;hqu$0s1$8q2nd}q#F1x+Y1?m&)~ov+&UQkP^Xq=THCIiOlT@{zHo+a8#E z0mdbQB#;dt;?uRK+fze;=WgOe_B{9mgPRnI+q{IN#-Kx%>v`h~o(bRWBt?%bt&6)) z>oms68FBe9zXBBuF)1K)a{{lew0%L_c{`g$5aOlR)wRT1A%QVaFv8xvVVzDt_QbGF z+EZcxL-R*?Da2x4aUWF(kS$>Tq-&>!Jq;pSne*^HP%~J6?lR0ZJ~e;-e&;xxkX28C z%|s2mlQ`Ha6FKE`qL8Fp#$t%s#X;Qp?nFJ;$+w=-kOo@A&&=RRnA9wDJ-aY;!s0Yl-~ zoLEwIu=cKMw!5ON{OFB@ot|RvRC}r#(2n(a8r2C}0`euo#REQ>NI|?k=PAh~x7@-q zndd{YWj=iPHg!2wVZE4D-mfG*BV!RuoA4$zuB(cI+fy!B%aF}Tw@-f-Zcj2=U0o7B zmjom|gu#RthVm8X!fbvJnaGqHJvUeKxq?b2PJnAY0b;Zy4cf-O%$;b3 zg0j-f^V@HqvdnM;90~z_khQC=fOSVdwgD0fYC1Y$titAj-BteO-Jl_`id(;||NdRP z=E&0eWPFU&fY;~CNa={Ds=pP5_5hOo`D(OyeJn&`kcS`Sy$Gwv62G26jb!+(bl*mx zDa)w1X|S`U#T;Y@wHr4Qe;qB%Pz)s8#I9YtW(BB2Eds2Bg6p*!3^D_Q*R?^Qcr6~Y zw6n1pLvk1P=V2994(*0%s~d8^Wi1DLIx=Sk4zO`B;?=7gR?Tq^K_U|&n9Zc8FJ8cEFrP7T zXKLpl0doUk1^O$+b4T)8C&jIgLAke4L zpaSNBi<3}LAP$0@D!>J8VB<-|c&&5O9!^<<8#iuHCqeL#aT$98n6Q@JJ5oCZjg0>} z{JGGvUk2Rs|rRvA?84V43;ycwx`3q(17S&BsZw#1GFut(X^jTv;+ubXoe_IOOR!5V;*M) zkXcdp0ZJH!l)>U) zX?QD^!-v7)xxnT3^DgX1M{}vjIXu|Gyj(s=Q3o}w<6AgC)+QcIpppaa_b5l2N`Ynu zPQsaM!qx*Eq1DnKwngqcrbSx%8_|nH_nD>v8(~|ooZ(`F#eNx*!!Qm=bLI2XYYU@3 zfNj{WL6CwI;gHtjxge?vMGt*KU@3kY96TYLZ%i!F-*N#tL*zapdV%{i9u5E1g+iC7 zZMuR8Vs@t-A`I4_9_*mb!gienGBWH`jDF&sVHk2MrVS#R65flJ{ooZt9&82M(A=yK znxZ3);?Y4MAbHissxFCS2yuYCNHFp2Pll1{KGU@jU8LfSTxCWEA5h0>u;k@z-5K%PB+Zs)PPfCH|+4HRhz!!^b$m?1e)2sUpLC7lMc zz>QN}?Q;#0@t8@2@&VfNpr7ON#^vtyYzgyMTyC#ujEeIQqwv2aReySfUi}E z^9S^p2syPm~Tc;nw?vln!SB~%KNJm85 zJWF)GzDpqS0PpNw)R({)p5_(~&Lb5LaFc84jYnELK z;=bd)_55dPMpPpJEaO6-Yx5M~z_Z`kDRnUt2iE3seEX-6Ba<8`V^%IYkj@PrL8kRj hNACX%m`>}M>+?P@4bE;fz{f_RFR5S5xnO?p{{ZF7Q`i6i literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..69f0410c0d8f78b048982021df46c3fd7c2d8ff1 GIT binary patch literal 8065 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c25fa98edc848bfe33e8b1d484496b01f9b721e3 GIT binary patch literal 13094 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 Xc6ilD6I`f3-%#j_S{E|To8S9y5V~c^ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..bf2e0ab8bac7a873ceddf5ea3e746447ed66b7f5 GIT binary patch literal 9653 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 Yc;{V;*UaHhsIU`Sdeqn7U-;=i08KQeJOBUy literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.0.0.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..782bfc8cc94d4fef46998ff80f9526afe18effa4 GIT binary patch literal 13094 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 L8yEh??%rPkFRwFS literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fcc78bcfc7616782ad66e3205ad4de7fc474e167 GIT binary patch literal 14200 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 TXjKoljY6yIoXbCZ`QHBl%X4lM literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a1636e6477a7c1790bdaba9beba08b0a7123da43 GIT binary patch literal 10456 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 MqFMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.1.0.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f01db23f0c9f324a8856102a16a45c04f17b4c85 GIT binary patch literal 13097 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f1aec7fcc9ba88470c2c32f9dd57141e734ccac9 GIT binary patch literal 14175 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3bf9a39b07471d08a003aec5f0d133a6161a9588 GIT binary patch literal 8327 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.2.0.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..aba1e73b8bf7a36b0e4031a4755c0f2de006fbb0 GIT binary patch literal 13103 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 H;?X|==V3C~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e71b4e169dd850b06d7e5865cce09a84804050f5 GIT binary patch literal 8635 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e76bc72656ebefb33f247bfe3ed49434fb303ea6 GIT binary patch literal 14183 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..065dbd9b28f79dd152af40ad14409747f826ce73 GIT binary patch literal 8330 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.3.0.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1a89ae94d59d9a1b3c855e100274fafe63fa7bfc GIT binary patch literal 13098 zcmeHu2T;@L+HbIzMN||;ny#V(A{KhLfpqCgR}|@?_avyRC{i?{NS9s$M5VU`l_Jt> zq#5bG6G}+nKL6cw&+PY|Z_dm)=iWPW=ANAaXBSNJf8Xc%J-_novm2Vqth-pirCqQ7D$5JGQ}p5o_)lgg>O*uHAIgMO(Rf-gdc%(zxyBWRG^Ux4CoFo1%|yWAIPq>*UwB0HU~-*QEv*lr_VENKdSCQQhZ_If0AWuUcmd>AS(l5#a*Wb)y{An zKKCn{eZTqJO4fv@H>eJ{<)(V2PPsCIJi!!0*%KiInU%MKnzb)$h77A{L{ z&pY1iy`41m+X7Rs*LJOkDmT(2<5|q-n2HWKY#9Wf%p$nSLJR&xDV*JO6ovA?x5FR) z<;^kFCKT%C6Vwj)4bK1k;9ohCld|90t!pDABi-f)Roo}PYacsy>{IL>6smAj)nUx~ z>WHekx}J4f4CV6E8u!{STE;1Rp;t+bB;}&UY#7OW%vyp_XjZ5~ECN zsdtXg^0aWkm-uz&nq7Ck19l?#{I}X#-OHCBcIDZfD(KESt{k$`-hC(A3tIn|M*r0|Ucey-H*-{H8i{ zls9kt<%W{d6U{jJUVCN;kBlgm;dSrcJ)4;yW#8)R^sKB>mS(6k1cB41n*t9C>D|1U z78tlI4^1`WYX9eRt~DdKLUH2bC`Te}NEH63o`}dngCfT)1-qSr&4&UEj8XFr6eEM`Y z*mb$rbL}&=(s>V`d}gEk+T=_(prOC`(RVDflbt!X_V#*yex>HV@J*IiE2rB_HkM;T zMBYp#Zeh4ycWr6P{R^u^T1JK{j@}wa@{C4@&Y99^w0WO0>~0iF(b&}#w|nK;so16; zWxllGD74_2GwQESYP7JeR`}N7`QZ_1!YV2%6sLSRd4&-FZRLf9l8+xhPA@L*B9;{w z8)>HIbUH+9-hWOz#79hOgr718PboBO;pn;!UAZbygRKoQGRE8^-Ijiohg)~+85>U+ zYeq{tcVf0fWo2zTf;xWu`0L2XjE^5Lm>cWrzWVmzt z`KEPjkuc{|mXVfLXdic|`Za0&@N&OocLAF6c=sVjRnb&_cUzI`h}GKDz(5^!^&l!> zaZ|?@#_^xg(cH{o334-?HsL<|^O8oCxQ4sCd*p?CfhTNQl2nY|TRb3QJ2GzpC^Ub( zSL-&~bWCn_@KsltZ-G_a+hZ!bcJ6G3!_M=XyW`OL@fx4s?1PgUkx3O5SD{)|@q&Va zxh_MhQ{4qxd^pC3AJ{dAU_J%2f*zOWA}8eMza9?^3eqz$c(aFF@?Ap0uVpL!&%f2w z>|8tsShOQ!R*~(T$K=fzDOV+LZ|`|8SydGkZ55SgGrJGz>+A1gWu6R3NlmpIs0#j8 zU*G=u@$Pnlp~%5QhY03mEGZHmI3qh-v$L}^BR#!&w(pC+j?S+EUyi8+hJ_SBN>mOtaCFR0NJuz=Vb=FaQ2lgUQ?(3jZ8Q4&`@_P+Qzs`U75VlJDAq3(?v?+ywXAlP{D;6Ym|sqDgq3vTNSZ%+NTJ`p9UpWaMtR#ns6w`s>+p5Ft)1OLK0c!R zM2AgJp>utMx2j&RRf`ebz4i($SwNQ?IPzygBo=ZjMW>+5J2^(LwuyKBF zp~9cBl)VY%wKRE4Ok7-0Uj7GBPF~)OH#D`=0f6~;bWCZ47939wH)}}@l^?g8Xo`RI zM%Xx|K1yODSmH+$G%s9D=barUAMZYchr+1o=(OCk1CTHxK>Z$Vl3yKU59XCKVpCwe zPtlASw+ns#Tvt;wWM=i}r$_EUlY~u+^_HnPTnhJ2}BI-SVm-UF~^(#+) zX`Uad)i*Ru70^w&jz`eevA5U;CK5jBR*scT#nXL8`SuZ2L7a(z<~GaIy(A$oXo^TV z-+T@cvrMxx9|0+;ThBR!b?)3rxNz|zKZbqXXK^%sB-U5+ena$J{Ybz5XW9fs=)wh^ z&D-~cohVzUPZ;G`1)E`L?f)AEy-?gT9+?f%Qi-LdvM{C*7Lk-xvCJQmks(MXxWbU` zDs)bCadpje>bp!EZ&$0VtQ@Bh0zOAjTsNaec(9^GdPS@%5z&_5D1jMo?cP_ug~ch0h>{%qobR!eB~3I%Pd!q zI`b*|Q!aHo^OcwP75GD8oVkL6`+ffl%U%?!{K6Kb5o`CN{{Q~LLgJQkeS$&y{l-`q zNp6=S6Cl2Z&uLK-XahLgAt%W;G7jg^onMbGJC96U)$7-90K5)*l(-Lm-AAPlREG)) z38~f8)Yww8V;qZyIEF?>2=Vcsh;h(c=AOOo;Xs@5c)Z??8%|RmM^LDDuXlN&&Ik(X zKrhZOEacs995VB|1hmVj&?%nCMx+q56P41H zLwPeYGuv8{)o6pSv}~dN9>^Vq61c>1C+PeG?(!iQo7tbAjEY>6ParP^|3pf;rVKa6 z;Z&I4KUgB&m1SH&?|QO_Cj-ROK@N^@hZBL+$gQsoL|(ifaw0uH-(YTT&ZxjKrYe|= zGAaA!tZ7ELIrbJGX7S~Tv7vDD4kDH&1f6kBNl6tCuT1Rkzr!Q#HX6884;o8c+yJ52 z&z=>{KXQ5O(|{X@Tz-~6u##i>P;TqdQ7@ic<9BA;H#66JIkqhBvbb{Pk)V*!kVgrb z^PH%jV}bF|&``aju9?}ip@<5cCW&rY9a1wex6)owRrPJi#WY`QY~scDWVJ(N=V{WK zqxnjSWJBMV09xn$IMdz`pnti?SXlj`5cDlA6Z;1Sm|X({14DCOk-b#|bGbKhb91(I zS)au;GoLYjIr?ZKRi>e!dL^4q_wg<>BX5P9%_^EEZ)Je|uwEQ(_F3r*5OW`I<7=bf z`PB|^aZMOQ8Duw~fri7%!aF%TJMY@PTi4w^&)gTj0V~ewmW*lm3n4$H7277a+>^Mt zxTr?zaV~Nu$yIp*P%FY2k%lUsvDbIN3*}nD3xV8F)zHwtbt{6H1vdx6N>xqG&Lb)} zSCs6dA}B0OYd>}BRPC4>z1^$K4De!wwu*en!LP{QYln(Icx0SR00P}b!jzmfDf}tX z;84(;0!&;&rXVftbY(@wiZGOlgGRZ+riPlDW;AwzE6bd0ww;Z)E!U=1@6X7)bvMV# z`2G6GWITR9Og(iFKrOGdUZ6M9PCxwv0|OWPpNj~>Lp22eq8&~9yjiXs zYSewWjuWZ?F8wq=|22Moev*iZp1%I7X^fhd76pp(byO4q=zoSG(M<5{Spzbb=_lqo z(x7i@8uKwHM_*Sr5ekBklyr4Zz?Bw?;d}_MTm~|QQ=%N_qZ%tqen2UW*Go{_7ROo< z5d!)J-cLYAM&>Ucy4&96nE=xpp{Px?HJUfaew7YT$_Z(rBM#N<;F1lS)Rwn4CYSxFa z@89oI^Up zGc(Uj^_Ca{(1IP&25tyOZ0pvoMj!4xh7Q%&){bAA>J~bF{K`mU+;Y39sOV^40AB|b zzELz4x(AwEfQpZZ@YY!30u;yteD?#(37TI|BjUm}%-WJZKz2f6VxCofq}7DE-`q8X zm}$w*{YGCLOS~WJt>pQ`JJlfDL||-!fU6A`F$Cqs>-CeR*SVU9K83~+UY*i{V*5^M z)YXzpuIBYshhsrIV}VuULFfwa2^ff+k^yRDcc2ONy{YNlw{NONz0>Gzzp%dUo-%;B zmD3HUx7Mzv12znC9eM@nEU^zCKETKepUUA!w4I4b^pjsW6U6K~z8-dM$H4LB^7lQM zWc)YhU=NRU+oU+cReeIM2aItard-4f$H!9RI?9%R5JpF>%T|Y@=;654LzubBL-ZjL zT&Fz-gDD%In7}lana$`2gOqPNvPBe??*Wu+p1EB9U^6maz`HRMN1eU(@v4>_tu0hc z4n&y$j#1_EzlW3>afSfyV?-R2K-DLqjX|A*CcxB!tA}m!f@k=&_n)AlmG{<4br8}y z(hvhur+t$CKf&N&%_}kMrlYK!7p@|g1}KuE9`UP6q^J!ZT%r_ywKv!CaOKJSjw@Mr ze!O?&qE(Q%Lst@lgfM>bB$6lfFGc~v27yBud@Wc-Vf3i4De*YltIvg}V zKR-C<6^6$r031`pB{MQI4jiG^KmH0$E4>pRoAdGPLG!qA|Lx-Ln>0 zj{n51r+uVTI0;}M;8wMFbZi?O_!+xEEgZ%qOiBLXX6}$S+djpSM){;j#uaR3aDZR; z4;h>PW~TY?zJlUJyX!jFr`SyoNB>|pD3;F$72($Y2`bJw&EnLap+DZ4lL{mg#I(m$ zSNk32aD7yJi6>f$dk<}fY7U;-f-yQs+srH$+}pNnQ<!FzrGj~SDzrKgq!5Vp6_S%SAa+v|`s~$z+<)yO)YR6tg5Qj31oP~) ziqA-lr>M)|b&zm26CGKR;tr85EiH)P(}Bo;Bb3JFw zAQ(V|{@U`)a{GY;2dpat4??t}2X+`tej?(`D&T$?UcCKz3y-9eVsdga;)>>@so7w{ zt5x|+7g`nxu1x*B1LHKOE5i!s1=`oR;E#F)`5F)eKOCCpXRkeoR4}5!ehBNHTDK~1 zx&b5Tb$GZ$iH5g#k$Kq(@G(}#!SFo^gwl|mi%TfHc8DM#B4U`T86ye|%RCrZthIF- z*d7czX=8n@9b6h#K6w-4eEZegGEnVJ+kV^raUth^V+KqSfJE#Rd;@FY#_u7Q)r1^x zD4JQB|Hii1V`{uWURKt`wAgK~9m1PSwQq!5-{1an;K-2-ikYtlhyc)r9T09(CwqXi z>YJO-_)gP&jC*iEPdZM&V|g$3{BNz)#g8mbU^x1Wr>9~w1>g?0Tvb%q6!Ldqblq9`RLB|$MUeUSI0{FIcFU=Rri z3ukpY05mYh`O|ZA+YIBPqtB$aju{Tnd_cAI5x{2E)zAnAp9CX@CNuNFf`vCZD?nvmqmS-?1jxrZ$ z@HCOigc@%HIWB5h^-D09gyyqn&+tkAlFRz|3D))41vxoWE(u3H&`=y_P13;JO@|zo zNvAEe*Tu*f!sC2vXfS|dL40{&#lVxy>z}Z4As?gHlZx5J%GwSiDh-m3mHMfO`?1Z{ ze7MZnStmr1LQDIM#s_Tjy9y`vP^jWCm{ZU4zx~y|Vp)|e9AQXgd&gPJgeb_I{I2_x zJC}Rp=tJQfBNj-~y9vAd@PF*rzr%L_RZ`nid71ChWV1iZ=CGG9<3SQj7?Ull_aN~s zSWjIgo@tLQ+&4X&Z6 z>#%x#oWcg4{=u>uNpOt|9BFy1Jkojs0s_!QVds^gd3+!g5WC;Nt)c^a24G<3Ird5; zeFZL^9`GF6bjgfu)4NOfBq)03fWms>I-NomJbzwWgv|Jeh2;grI0KsvFN$0DgUlEr zrz?iJ|CR2tNo&?4xv1TbQ(YkgjUhXi4oGenu9kXgvAa#`@aXbP{!!T%F%qJpX&*o8 z?B+N#oA>y??lQc7^=g3f296ixrb-Ju4#-n*(=ij4mX<>7}J6U~bGm zR#0&%>4lC&q9N?ubMrL#0rY5r2*Z?ngt|UOT?G3!9h7o-T^4X;2-rv?;E>`;@-H{V zr?1!gFFwydc4MTy9omrVk2d^SiQVkSnu)MpS>L71BV1gNAkI*D`S@_11p7bv8d=Ga zuqZ>%VuPS1{H!U%7O14i*g${r@TQ+&=`ObEYMHjghK03Fl28g)C+961QTYShSKn`? zb2DJ}9^~TU`hLkM-G5v8L_O>>FtRnp#l*&-K8yRFZ~;r*UlC!7gGdrC*sZ@}r=3XS z@j^sCL_d098Pq%yhs&<0sIbuDw+6yL(BFT6gCk{p+?Koq-=tz1tO}f^V}v`*{W7z& z4Pax(9Clg)iNhu47gom!L^s$BA!8%CkVOhZJ-sl<@flsfS=#J{vx8xO$!uk>Ui2fN zjGxNi)4ox!u`oHD?%qv;dV|s&wzIRf1-CTxaOV_OYqZqi2#c6Y z-Su4P(!K&xdV0+nquj3*)zwj8AGuO7%Mo7!*w)(p=wqo?5V5C#M1?i8D)op9m55`A z6`Ltrj^zZ$tjTNdJ8|A=4sA8<3~iZ7cy?cYr97@4A~7A&D7>lhgwi3!_?3SC@TKpl?@R9wiLM zw-A71e0;nS$LUYx)D9uY&aL6YAe<9yf@Ca{E^y*R#WGi`;<-!+0dVUJad`lf z(66d-a5qsq*sYC;0#G6st?HUey%!cCY&Z>W5-gLof#3B=PHf9Qg{=Yp=d03yto8MM zQm9APx%f|-)Sl znDb)Q%%NP1B8wl7wmHFS_;{U)g1BRt1z>>&UdKmhxM9|MKo0UfEH~I&^YW6q?j| z*s>1RXX=iJ%HDwun4m9x=L&xK5FlRG$YFvk>%2ZMEa$U$4!#PLShKW@Ab1P z6hXcq6(4@W<#-MZw-l(0g7xl^pPq5%_E#nru9)dUqtyX0FuPzy&f)WyFZH;MWgM4f z&@J%Bi)bCj8qmUHuu9-P`)Rv~OgLEJ$PU;-wZeLHK|RbAbx^fvre`BzrokL91@?)U zl(@Cb4*$YCWX6z)2Dl%c`3_N15S~PUx&{o&SzT<^3O-LQ<)nhgJPetJCIiQAek%;A1uz^V*yLBr8U2UI=U^?QbTaD0`Kn)zh<+U$9;W9dr=-xkQb5k==;+jy z%#iG0v(E}(q8?(M$SFcfN|h{gv2_^2lMBG(FM#k7N51fN;F)6_tTA2VQupg9EJWx6 zE7+$RhH*3ONnVS277`*(FeHjs`C)SC>AI;1%D95QSpbhY67m5~mEo*{AM<(fwAEuo z0U^U|QE*h3nODl+qOoV<;c!dWrb|wqIa6ofQ`pR{fbD^zt1bn_6CP6wZ>@3l>TjH) z)-O82{O^RNEzS#fpQ>nSNkE%JXGFrS)?U8=8Sn2O8XQmr|I}lo+oNHH1^M!$wHs2F zj>fkiNA(B#f&N2E%KrQNPn3?PCJV4{H7;FxaDF&S0x`1`BkFfLb z^!7*1!Geqhk`_}JX3XMOR~vDTU>&HkmtKfhzvghGe>aJh#U7jxMcizj5o3Z;=Nx%T%Sk42L7~#Dz%xM|q zJ(WjMhh~R$I789U=Y}gJ=5Avk1)_L$n5tl^LC$RE@|u_|)c=07`KC_?S7*PlxkHDs za*5YbIQH#}2Py`O1NxKi7wf_3z7%3m>u-Bv8K{!Ohu}6{zmXKi4 zDC`8Xm578I$bzW~VqhS~H+UuWz`!BlUiq~4v}4Feas)|}0h*`_aK~UuUInw8S|XgS zCGo=xwmOd_!$-J|hq_9cpLfxCd+ri`u{Ca851OnAN;VTre%mikSn2b%BF2*!LDa#D z=aSq^Z%F}+I=7k)Eq^pzQluS~#AKWPGUhh^!*`|~azK6+5D1H9imELNj4ukKuuarq z87h|o!e^YcHr)zNI(D|uI!bb+>5V$PDKe_Ekp~95aGXje)0byNRK~x5NJL~kbz^-Q z*$M!E71pTAg&#WA??X9XLoOF`?r{;^>T}{0EaLgVZe}}}UA2y$3-uC0zy5l8hP0MV z%!1S$dVOQL%u*BH3iO4bhzJEaVW2^)S>(AYE-~11VNQFJTVcrsVT**WR2YWY6}fjP zU!)8{=Pmnzf<(No&!0a>W`za?g`H@q6(3hM*F{1k@D9u%3k_#nxdQtnv7n@(K7Zgg zFvw+rDqOm^wg!v=@z1CWFrT1tm7v&)CdI+-jK2TIj%!&}u?gA6ZB5Z=W!I98KWkc? z1|=s5>$;Hdr)Oqn);dx?SSlkhSYS%YHhm3QTT{~wa%ffLg4V{O7E%D<52W}`7byc# zCAlM;6c9a66;P4<97u9r<)M<{#mP=xAnZrP?cV}|BkP%jF5U<3a?!4^+XzldGi*X- zK!!Jp_zkdndDfT;J^+#j!t)i6r9=%nNkY)x-GA6xE_+cd8B{Kk=OtWw?gopTK;wTD zID(%B*?p)R+y((?V;8_8sA3}q`x7`*#7IUqEWEr5VU;r;mfGk{&a1AjS!roaa|6}w z@mIFHkF{Kjk2hiexO2m9AW&{?GRFrnSqzqC(14M!vxj6%-~`on1Ox=wfp_FH^x81&?c22N zyk74r*PDw?>g~S$wv&Aks(&oIWLgITcFYuv>lS3?(|4xK5Uv~9t;24tQ73@Lk?qZa z7exZp@OlsKgBDZ=cl3s~w)XRZMljHC-@ZNGT|jg!ol}B)G3{+gsNW4JVxhIkBOSJw z5RcZr^CJgw5Jgcv*HHBGxUwKW|Kqsc%ZiBQ4j#=gdW&=W%8tV<1>k+bOCuXx+Mrot zv2+`i{_$;_p1AHo87ZMELi>wGVq3vsI{3#P854lgz{JGled^5wl>g;fNVDIfFL6K68edvjY=bGWLFRoSp&!xLQuLjvc(k;kSII_ zTOrN9C)h%wAm9cFge_r{Rkkc7ggKXfGw)5+ym_yxYwGn(4OLz(Ozyq^`OkO0<-hU6 zajW%fH?KtyWc`uDmM0KoSu}!3^sZh7ztMZg>W9CKf)Abvw)4Lb9C|L$137jsIKan0 z*vHFlONd8cke9!ou9m)*uI84D!NCDR#@gDx|M3AW|3FXe<~iCN++b=#dV3F#gX2}t2%Cmx1T@mB@h5}6lIeZ95lSGh* z#5ER3bnWW@zx+)N)-~~v<@Q)CwrYXfsT0ZnvP)gPo@anQHJ9%F8cVy4>Tk*6O~Qe81V`^o=xeW=tLq}7%#7*#vSiWuB;XerY#ui zAQn*@k0NhY+Q~_2Zf@>fM@I)I3L|W9c4ODxu(h{WXmceJszlQb3p!ee zg^R2uqGB4h_jrb>AWtJqR#x_1Yime7!CcfQ#q22d=1|0+DeQMvstI{{d1de|4ih8B zk;xz0+ZB|RmAm{9Wcji0R`gD0=H+P(Hd9nvT3U4Q+_A8+e5Tvjr~Ih||Hv#RAvHBM zv#QE8^x5<0W6T>8NK-t#t&TgR_ThIinbprv56hI_cmA+b;Op&EBhRSZ zvc~t1tvO%%UY2)uSL1uySWwI#q$SRrIPs0HXH$GqQWDDn`n#y8$kN%_nVN{3?tdNj z`EfG4YNlxvm-hbsdwCr<%Th(8#zNPyXL~o=YIY1;-yQmBocn2e5Y3BSV77@kMEU?gLlzH1KP|qf0_bi{$uvEU_XM) zJH1%Z%PJ4z)LdDf@6%pz(c3$2WMt%`pI;MU@A>8oGg~Lo=vNt-h0iwbeZT$$b={P8 zC?WQ~t|udDkE7fC>}Np)Oz(wEbddENSa%ZYY3t&ma$QPw;*P2$me5z}DN0$VREc#; zo0LJ;o^T~Ds;pkiHiO2W%|KQlhvWYjUf%RZN+F2Z)A?URXUvv`7vbxQ1uBoumM>e4 z+?1F2otKoWYinAbVXaP`I(7Hny}IZ2g>Iv*xz!#1FR!h)J$Z7Y0W07@&)2JwfK9tn z5LOw^eZRgwV|t*$9Uuwa7@wl+d3>ygzE~t2@2)nPs2I&Fo37UodYwR`Md~StQ+c3= zrc>EoXcu(*@-H-|${Pn?eC}LX!XyBK6lMk+jjEbmSg31kViLqNF*c6M4wpctpKi%RXjpWx zJNj4a(FBeDj1(RBh-z0mJG;Bd$wPiHkO+p`5sRK(B#mfT?~U(bRviT7mCkXwTzLaO zR%HosytvJcH_?Uby4*Iox9Y*pK|$04|0RdC4Cr@Kl}Bs8CXwbe6f3ld#;)7tG1!7P7Z zZZqSa`S|f;?W{vA2<(W7qxOl*9Q&;?`jHS(4Y`-9DMQuslAomRIpJa~uGa1wWnZk+Tn> zkxj$CoJ}_k->0swUXhDEdD7C+(UB}vHjgyCwq9}5_U+qo01rltl({^GU%NAcMSJ>m zcYQ-cP$_63U9J+4f;CEpm-t`$rr2@Xj1u2YHg$2Hik3v*znjJ3S|@8Iyu2uH!?E7tNB4gO(;1% zqtfQ@b|xn!9rE(}tdORNY*AgyUVHY)kt1)?jdUFx90I+84AFI7zI?gb{5TL~a7YNZ zj)Wkd30KRO$;-U^^hy4!O`0U2<(%Bygj3H>*S*WK%7WccQ$tC7!;Yh*Cr_S`_ya=0 zrAwFGU>Lmv!cWupjrAvtI!?_|iDnd=<;cTk*`r9)0~3R-vl$7M;~>hy*fh z_IsJ*cT>;*$PH4UH4sDmDUbpJl`Ezl)$EQ)GBPWJg*AV(^&emCevl}Om>bFY`RCYz zf`Sx1@6$eA6~#0TqguM?Ug9=?k61BO|e(<^B-mLvTK0IkAex4PI*znnW@D&}*5U0OLI{|Thb-KbvuyC6MYIZ5Dk z$!VN^PRgc48Eet_><@m94i1|iKYl!kcR`{f)q!kbbm%}8{ZxDTEt1ACH6vJ)-T27_ zZNg{kcPy3?kluohI%3f+TPs^bBBAyFWV8k3hraf%EsKs^R6fqHIGWFj% zb7S15J;noV=o}jtPjpoZmpJo>@2VuF!4Yowm;13lE^BJjMS-j^P6F(ZEEu=^OD#W( z6*nSV$WU5PUGk_ai4;sjb6dSh(b+oq=KcmDZxS=W1zj3<(5nlkdk_op ze`^i#_2VeBGLq?{fwIp}(lWstQL}BdYYA6P%s^@tcX0MZ?r_X$&am*88EJcN~`g_LHsr(n&%Th zlQi4_7I#C;s`as;E&WEv$HzTqm#Y9My0up$>%vyzR{rwmKX1Fxl&-L6&z|yPu$LFT zyl#NtG(Elw3E=Jq(8$RAvv$ojDxjY(9;F8^ieM7e#c9*zLGs7#wtLb)9u9V?`0ARP z@}MEcmF1Fd?FAmF7lZi&z)KgNeU)K`&n)A&$(i;<3CGL&Z(9fQCMzdtWs@|a8*o^D z_{^YKMHPA21BE|i39@$Al7OTxT=)n^<6x487|pDu}b=U`i(j-scO9ZTK0rY1qr;E=n! zyQVA6G-T|PjP8XuB%`3gTJeI=rhEY`GkY-2Ke5xVa*s<`-%n+I*A&^;6#YnxqUOc1 zq1O_~JQn0<{XLB(v;Fq1^oML4vYvNq?b}BO+{ZhLvsvORk}9O0#f2VnGhre~$G4-1 z|2~b}0QtKmrjo=E};+SrG^Xpu3Df3dl%^amGsYA-oA= z-`E)uncmdYG(0x;rVA6v53sZh4i2s&f5x}Agg>`QY^ZsQ9csb%DIHA?ILuAlhDixTdPC~}C;eE$LT7G%)_Dg z>)Ze87QOTBY&}V4Yt@%q*rxBM8;w30oT#4WX{?<3_U7%|w^NLQF2MZhM}1`GQ}oG4fR9H_?Gx`A^$F8JYaBDRzn(K7>VFTv(FhAkEo=Aqx4rO2n>z zs7lTLs!9a|$;|n=QO-o=WFls921Ax23?G=P-C$GulblNmHM?ff4rsg~S)15KW<8=C zO1?H2+Cq4`%UYoO7GiOA5)WC1yu~k*Mz-kucDcC?idotdg^yP;GmedoW!K5MzTq8~ zM#s3Kf0Yizr!p{2aiE4G$(Gvdi`wp@FAe*W1w#LHuEV`aoZ(liEpERBNr1+Prh@)E z`Tjk$vM;}Wl?8D?5s{}mTTEXR(#ey=MPa^2L(->Ge^(JIuBCNe)I=Qn48iQdxJ`Ap zw_CGwOS@w`{pn_TwD}SKm?tJ}^4+Vfs{*~f>4XB!xH~&-7`-n9m_`@;c(LJR)eL*O zLA#l^YxYs$=k(EpHW&P!C&$u~gmZS4p_5IM7PB1|5ywz7ooD```R;Z zUBu@h%wjnAeskmwMUxPp(+&=)&bT_+_SRg-AXnnxea`~YD}CRNyUq{R%x;a7g;14%wmjdp0Rf_oa+3x%G|O`Eh`BI}v$#opLWGVS0lDs!ojgr@EHI+5gI z&%HwtZL1teax8$r<~+#H_Pe|73W~kkGN!}8(!5er3r#b`x#@#S49&%H6>^50l04eS z+6xO!CaZKSXPQh3WwstVuPW-5EQBF%GCDF+Pgq!_#L&YRvEJ!~?q=`rp+UKVW+JV# z17=U*ix^4IMXvuMJUl5EhFTgVg6Ik#Kt$M{V9@=EqbY?E1)O$q$uI*2Sx(3+A58Uu z{I8t4I2b;cHe+SUWhnZm-y#~UQ(AV@Mfd@;@WBVvRy&lpAlWs_$PuKT{-uvOV-G^R zUl)wE^~6KM!ya=L54aY9;nl+rJqRtZA&l6y*WTDrh^kCHWSj*yfbn+7M)9Hx=^pl{ z?dM>c|5~{of~Slz(M)qQ8a$8p z&@r75MMJ?~N@3C+Ib*s%G?!}%J$lzG>T5byh2gmM8r1V-^ZASV!NYII9$i;K{aSbU z&;uXHHtnHe;J0Z@3xE(j^`Iqp_Jhq(tD&%p(sq|h824^pDd%)k7-IpO0rok?5njtt z|Ki(+J|JA%K};4Zn}nQ~GW}vfE;JQ=dAZajAlH4sRkp)H1f`|5^#ar?9CiW7A%E<1 zHl;~Tt+V2?_tJx5$S=JF*bbi_8ljy=5Ei(K*m9m+*Ka({Bo0$W(EknB)+yZ1bu85? z4T176Z9z4!JI$k=N>{)D@XLLTjg1SwJ#g(j%2R>fXqg~-i0JTVxC-jA1)zwACKd-} zQ%CbEwY)E09G(-Qzwe&gIZb+{LKIE8sK$u(-Zqy5N<2S2IX22ohywS~UgY&5kSC|@ z!WviaLAL^`^XpgIv-7xD^tSo)m(9X$fQinra0@8F(%D6u$2#x$evNCWEoHM`EO|yw#vqa~+o8S;mfKbpX;b zOG@-ZCRpvholr~`hAy5TMg0@F{>I#UV6(4dM13F3yN?-kZ3L7jqR&uM1K7%;tcbdF zHMNN{P9kcLPGYf4fVtok*bQM+V!HF%zH|u48!~fpc7@U*{ud7s#XHf11V`TEy$Q-D z`X~_2l=?YaT2@Ul6w%NJ4M<5On@IKs9e9ltfHW&&G&dhSp&{(57ug6r9DmpflUj)Z zZzyjR*k38eTv@b10vQj2nv5oe@*GA&9GNiYo*%U^Pa>V6M-e7g?o(q+iF>8kU`*pN z!a__Oj9?RU$Qqc=pg2;*>GkYB%F}f z%Vi?(8@g z3oTO%Q4e&ClxpIlcydvkOE!YXeS(M?WCLTAN>?%H3breylA$bU$cZ8ewRI{H!;g5g z>Cl+$@88%zmu>=7;`2He(2X#keI!)}2PDVK36Skr{x}mDJu>cHKiB4}3fs_}RbDP| zCccG`Mz$KV`#vScVi){q+{HMkcmI7y%<9LebHKi6#$k;C=RpW(|bUJgq*^I~H*GQU6 zH#Ron#DXC!IBtWCh{Dw|#Lsf|2GAf<(XZ@V@wE2hKInD@gPzEs32z&7!TBn*;ag5& z>vC+f+yIjAT3Rl5lCwCEPcL3-ZU%#RrTm`kDq^xVas!Ppc7g~H1vZE zI+5+x_TvdQUB9{nqJlE$We&KE1Z(Z;{Vs&L7JfI6#&dk>1+j-M7AprGMwEx-5tfLp z1?YnU9xD>AS2Z`ytDLCd_el}?d6;jL@7}FN&$b{XOoS*>ebxHS8x{3^!fcv{#KK8( zc1DCc$O6u7Yprk_;d{)gc_RZb{(MxvqLCd+X26q5sMsKPN~xF{(&k&J3Q0E!ksYy5!k>7vuhocm8Ge)AaA{_OF``aW*P=7nb zx|sy!V*I#f0~;2B8Na7wXg7^(a)u(=Iy;Y3yE1LeAZ(v%Z;ookuLy4ztxhrL!6>ZN zpjLfTTwII;9F_q9)YP219yS{eA;)cy_u8P(XrDk0K-bp3xv$F+_AExlE9ma%aks5W t4?@glww{Hff4(%BFSiw2{ty?jR7Fi+K4WqJBmzH24j#A6`_tL0{{|f^rq2KX literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 zcmeHNc{r5&+kd1|Ni{{3Wklt4C`tD1bda2i<4BUwF-b}o+h8zGooXyYE3%%nj1ofD zVWz^25XqLz*v67=7_u|o`*D8Pd;Nab^*itHegAv^IIhdMdaik%=li|C_kDksyYQba z%)~bA+<+j6nE5f2Ul3$f7=j3Oty>FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..bd980c1dc692d74fbfb20e1df32616e5b2d6fa86 GIT binary patch literal 14214 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 U$CIA2c literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a3ee318d314c856853a357ee447e4a26fc87c2ca GIT binary patch literal 9119 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.pos_conv.4.0.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..1b9a32e216d8274d033b1f31a732daf01498c46f GIT binary patch literal 13123 zcmeHtcT`ksmT!RpP!ZG%q6mlzUQ|FNrvgEgjAY3wk_yQ=n-kF@XC-G;KyosG5{jIo zq#~!HNJW@^>^t-Bot~NZy8HH9>%G-~P_AW#bI$ke@3((pzr3k@gZjY911J=VT2A(w z8VW`J0EHqOrrZzz!{5?B2LA{<%G`2Pw=s2exnpmFQo7@4d*8F0{76njf!XNNkeW)lW}P ze--eNpvyqENFiiD_M)}5^^7<*3bp96zCIf0)X3j;&Hdz&tEerqoT8Bfaz^ozFJHbq z5(l3sqOHDt)55|6M=J8Cd>~QP6XD$b4Rb-HotV7SBDfn|^=xZX(Zw!guA} zR!>TOKq*poTO%nI?ncpWA1w-1b!D$4R8l=H3ZC(jG-@vj_3jYapY}#W;89dKr(Q~& zxJTW%{r4FnW~MVcyEE6Q(y-iPEv$ZAZFgt8z>P2wM66+;qo=>X#wNog;utiv(DiT+ zg%oDK7|(3rF;`$;tS>Jo*RsAe>NNK4bx_pWpodD~fOE7yS2%2dhQ7Y1g);*R^@jSO z2kH_hr>3`e#j97Z@{MZ`Q!`wa?CI$dah|>9OVs;#zoq-VacFdOW~`{oh4bfc2n!4M zmU|SctLy7$u_=V5B_&VVhUz;sLE^N%(|IZqEBpZMKzZ&~d;ZcUU+K(w{ zI$M(!*yI`;8|4)g+VU;hG;ZFsRo(Aun6w|(hzM8J+Ht9sOWls&N!LhruGML>Dr6`w zg&*F#)-<2o_q|I`m+LFE2_IV6HLaR7-`Mun)YL2}Qi506@^dC;W}?LBhndt)(^96} zl@2Vsm*eLMW8Z^y^Gy9eeE9Io@#AGiY$Ll*|K~`d;6q{ z&t}_N0AY@&!g6P8!@hI?hYbtsyvqc?rsu5Vb8!8AEpr<#R+QLlnajb>e*GA`Vl&Og z7mwB1o{ZdFm#{#Io%N$QdK7B7_6Q>m7mUUJa_m@QZ*OnVYHzQun^+uu;gYLZc4xd- zR(7@~EWNDK_3JglqvzS!rp`-jyxd%wO3csaE8kx2Ti)=*GvWJ;J+-Bz9vwY;w8AVG z4o&aJcZOtsfq~klrYW%Mu^%TUOf|K%>hOeuBL61*!SwK?SFaAFqQ%7xm;=uzu`?XX zC@I-2^NM5A-rQVR#|02N^=zhArrKCX`&~!Z|O+&*R8DDyfp$aeeo1WR-is>|Nq{+t{XyKaeNy7OFbav*wB)~0OfSxo>_ z=1gwoAk|A6^!ghpDCD?^d#tAA=WB46Ek0T%5I%d!LV2ILki|l#U^LV@4(Ia1rAr#8 zX>UUL*45X?a_hIZxBn`#8GR}$G&H%uvI{fcUmV427T`{tPX6%W3UQ{ZDLsVaOrp~r+D4kHs;`j`V6h1R$H-6MZWLJ;>gATNMx`jn zW;8S?vazwHzk7Gn&CTrx`W)QT5xP|p$`DsXbNbUu5{g{X)t05IeoLR4s$cmO>yXdEF%Bsw0rLmRMGvOE5z9zb*^v)z%0E& zYpVk9?M>qJKxrW$?dIA-Zez6I^DM!dG+1*E4vy*Ow~x2HD-WL%8qSjNTz_Zp;1C)Y zmvfj&WO8#RR~xo3Dk@3}laP>r(;4(8%_)=;U?Z#)yZ79-utj^`*kWE8kkK@69s{jPu!X3k?Y|$HfTa{np@KW&me#*vQBeaeLs*HebJX z!dOv=V$r?)q?qfwFfM}&au{oCEnVHH6s72tM~@ykOy3A(&VKf6zg2%xiv^>IW7?G~ zS2Wbr&KUctsjCww69X|54UyQS%}sZ<^XDx)GBi)}nkxDdZWYjRa8KF(Lr3tVAq4{9HSWh@sS9f+@~xxVjlbGC^5T{C$K7<%{-PW_^rYyA!?zFv)S;-dGWZ(o+B1oAPbd@C2l&c=p7c|kz|>m0l+yNYpI zk1o0X)*+aM?XS7?+dYStlkd5)ybzn)HPcc3n4+l^&B}Te*w%lv8U_}YT)+rGV-YLp zyBS$oAx(HoJI45?<7(V;baZseUheKCV$3SCN|zZloSd9w_Km40@pW#p?b(!=F~+2ye8iV<%zb1QTS z_@?l4O7Uoe&(CSP5@dY&Fzvs>wkY>~v~tK9mXVRMsPQ}DJ`riwo~g~9oSJGmSmq|L zq@)R5J;~;iQ6RJU%4}ZKG$1R^6KBY#U+!K2P|R;TEGgFtzn?*OQEM_(+mLFF73%p# z+B=G>mc$z~e+|TT0K`x9W9#ecT6+sD`CaDq8zXsdl)DqvbaWy&i8J{2hA4goYHDhL zZFK{KSg4egO&H;17PEOUz4@1ch(W*Xa6B(jlC@&5gL1QvkHIPGq) zJtx@0!M>*7y|BkscohAB^8EZB%0&@#(fK_L=q-96L;q4HzZYwfENmz)y^o5}RzvE? zu~5LB*?M}}MwQ;>?rZa$;q}Qo+aycEL?i2rKM&Gc<>gF6ks-u}3wv zwKD;35vWdAPdz6`TAfpOaL6d2? zwm+oAH^zc>D?Hs?X`q2gK9Tvq0l`WC=iK-Q#W*?fkKFi$kRin!eNI=kZKY2k#hr5U z?)LVixxT{sg*6}E+m89r`!X^zbo)~>GA<+;VnH&*Zo+HudoiHNB=jRn8%A*%=IRB#d-p>`{dh&zc5f^ z2K5f=Za4o(@7wY>XZAXW)^7ujv-sCnqFI zyL8|QQ`v=sty68O(ly0PHH;m=73uL|K|yc6eEITQry|{`f}-6d=K5rJWNKS3436i_P*>myg*V@{Pf`Zzh zCRBm27`p!0H;%_YCj}v3r*XfCfYmGy6Yl2KAp`qojL zm31lGpj68NkL!pLc0hnWG&D3F4!Lq;mQG$fw2ZPcF<{^p-S6(eorePwtPn%XKr2o| zmn@lxvXq)|Sj`dqn<#JD;oble>RFS?F6V8y%_nD2|A-;-|Cy`w4{=;tHA1G*w!Dsx z&UE+t#1hA;))669RaN{Y@H9wQNnlMjcRm$Ig@uJ(kdQEf7T^2c`1$@r3~y#-qTU9O zL&5ASsh*-};pBZ$JEt8QeJqepJa$$P@I#Mo6}8^)&}6YZ_C1Qv0=v07mkChqG~2Cu zQ7g;*{m#?lhRxqzpCxu12d1mUqun>BQl08K3(comlYyab7P>CoZHyJw21_N^x?;n0 zdqS|X1>}~7me#}yq26dmEl_Ov1#thN=`DEXGl8|Em$<@buydlw#eeBU{T-Ot69w(# z0tbg2!k%8yUA*U4Jc)*4?G5g>b@u*G20?G3jgfEPULdD4dmcW>+qvJjf#GUbR}oJZ zT_{tBg>ARYEl=^;?(*pXy86~=Yved*r=Wm9#{2gzZp?@Fb7RC1%sQP#_AWbG&?b&B z1T9oUTKX|Pm%i&DO2}u&b9*_wa_fBx1qww=e`lLg2=0uBhbJRDo7y5bJ3F*?)WVK2 zu(l1e-Bas3MUZkUH{1p^qAspmv&u7T((>{u&-2_`s+BNDt|UuoiTXSI0K+tcQs;Eb zt{iz;S#vut#9}yhOd5=f2dnI}EM#~*-g4y2%aeTOLC+4INcie|JoD|_tHJC_*mFt| zm#=CYc@<0m6_<-bdzCz+VfkqWw5O@+7Fx%CwCYP4uMbz)+#K}cHEn3-Z4yf~EO+Ms zM*}_mh~?4{$qQ65{M^(tM(dk+Tr4qucOxDaqoet)H0W~;Rn@mX zq(YxI_}sr60kdSbE0ZlE-djZn4j!bV+#B-x^;=+(c!g8^{QR#1b|$3mX=#OZ<``ra zJK!-OI;J}^!|Uqm+H;L0QcXLvbTH=THw_KrpidyuA~ZbwdH<(m5Sie6ILFbP61s_9 znTWQ*e0g!?m9KBx2b21hZ)XF)F(fit7gZOVfV)~XeyPrOD7aGZGDAq;9Bhf#E%f1e zop)2%wU?`-i;q-a$C1<80XTB%=RW>vc&-1$$A6ad`QOU=zx$2%uj8PMGeI(fYj?!) zFYcXWgzZ1o#w8@~tum<(OE+tZ140RwUvG(%WhU4+x!TZ&p&HsNeSEA2%Y^Th^IU)W z^eMQss^Afht&yCDs~!eL8EsE%!#=Ck1~7FbD}>Y6f`8tUrkdFP-uMP0P6NePBPuqh zGgWd?s}v^tHkc6MonIPbMR}8VE1qs%2X%a@ql{kNDM@0MDm)+V-deKCMHWWQ_G?uf`@e*v2Nk)-83*TkR>5lHI*u{ogQ#X zI01yWoErQ9v(J_tLOzz3mWE1gAS!^aPb3oM6&1_UM(tVM>F<|}c_nNM{q*mvgw2I< zSFh<7;rQ-R~xW0gJ(!Gzb0)xjtB7vGTx4HYdXXE9u^NwI~1O>6lflK>eg7BA( znvGS4p^onEG_V%%ZkHL#hL;c+KTxsH^9TY*zc~Z19rwzcuw42nUiLC#QnqA(@p`gxT&4J9Ri#B%|xm%~~Y{n+m` z->>5`nLIE=oac0rX6`W2pqgt~4m~^t3_M}}Jkv%s=y=P^%Np9+ zsdqjxCwcBZxqJ66Qr}9ES7gxfDzPF?tzTXq zBSO!8`WyBAozAa*COdlST9O@0)#8tzKI^|y$-hqUHdM)np=q_}nW=!Y0{p>hproJ! z?3b=gmxVz<*6E?jN&%a}Qy&Hy5u~i8kXHciobkqFf-bwLZ@=0(Z&(%LJ&@1^3D%r0;?!ruDb}G=%m2?2t&^$ z8N^k)5pas?#6sQ0+>qK)yRf37qIb-I=MQ87aqeRn(g@sBPHS~d zO*$|Efn_UizmfVSr=F=wpmiRM+Iy z)Ue=~$KsJF5%_sNI4T1UP2!x^ydY15tR7XLW~GHJSrlxF2ryeCA{aV4JD=rub#~T) zz%TL#7F)10JG$24xu(Ew_Ss?Zf|X)~R3GoBZVh6U&Ib|l`&?^sIy1Ku z7J^N#Emfs!@yF)^^OiIIC;8<;YPA8M1>@KL527A1G{MWAXpBy6Z`T0pN*0SGcSvjm zx(K933s?-q#m_XB(2k)~hn~weEZ2ozds4{u&ABNEn>wIASD=EP{5!<$8HUWjX=~jM z$)#y2e?5Cv8uBSzxDZg~UzoNVpMLw>^}Rg?xNhQe7Vldw15V)yiHS}_UTYTLv23gk z9-zyJEjL&=pg6)9dshG8Ry}lR zwvT!IBHuRl|4n}TPaQ<~jde@Nqx3)Ck91$1AmevoFCAG*lU}# z)&)f*-N|SStS~JkPXTrwfH>aFl91#O#l zKHgKUKAf9os2Y&jd{2TO4|~iW*K$K@X0cn)MMBR3i@M0ksnnLDq<-~kwJ;F~h8C~{ z0qg$Bd}<~UjT0wMz{z>da~(*#`%23VeuoJ~IWuoqut1^_TH-}oHE6Eb_xNh@fOSV# z*F_$lB?_k0us;qb{O6JeUh1Z<9*hiI^yHa|TD7#aK#K$m7GoC;7A)e;<%6T0nU$r8 zb)0Nwg=@kPgIRgsTv*o(zbqH1C9XE9gOtI{%G!BH@USbL!!+gOy9LV-0SZ^`}C(eCU8wC6e*b(Exb09l7=MOGQ7ahOhzW*H){`48ne*7>#-iNEOk7@8~ zZ`!;4RrQUtJ$ceO$^wFdGcb!$0=*G}ExPJR18=GAklgrZp^R03cmoRc8JB; z552qP0KD|N`-LMgknuk>3u7y*Y&A7CDGY?4F;NTN-^U<&Y6UVPy=h?)V-vV!fKX{! zSxSo;7;f<`DB=Up!tICjHM_%ST7@V+f9|~KWA>D&R|P;@*U+G0Vv^j}+25a4S0}&W zSpkz58=jD309kKf3g!9fSy^45IwNJ0XxmN?Dyy!)TKRD$FpqE8T4-yU-Dk zJ;=_wY^jD`Vh19}qWck-A*+s+la;-ksg-?Ycg<(l45+SRIG2IqY1+#*47}c3uIe{$ z4!7@)bNlc>bTt86%MYc?4=x=$7Z(mu3CfL+_8mmN(-6P2a-INZI?`jIybE?Fx^jEY zM!6A8w8pB3dz74<3O1lVjM~7^<%PK-GcU-^$L9UCs5?&qD-dDKC}@qCnjK&U z!F~u=@=#y<1fqn9m)O-oMz-KRN~Khnr&psu?B;u63^M^Xh)*DqGu zX|Hbma_UnJLn5yk?pFbU<k<8>wCc4?^_p-(;qv2+-%U3pmgle{>H~NXmgl3GZ$kHbb}$b2B0vFFs7q-$_xhH zu48*jU2J4Yz~0PqO6Nt4{dhnc@*(3ka`N(5K$rE~ex^44`ihQoRS^S&kYZY&1aH zAk_sb_tL@Os3;8b{E!hDvn$7#mpIR1(Az8O z#tnitHG)H)d2VwBT@8@VH>SpWV|K=kcD{m9__+*}!^HO5kf6lwMpGl5w!YnMw{sS`_!u4|iZXE7qk;HEL$`?>+F313fr!&|V|lzLBG*Ps!fpB9 zD69^Y*U!8AXgz>A7ujXxGhiXzN02sDhq(|;PWh@Xo`t-|lVD5*bao=vWe}`k9@Dwr zf(h7EQ!utBz+o3!(1%M~jEsylyt(?gA&gV60cdIiP+LVXK6z>)01H}?r-r>Ramqw) zIz2O!7aiZE7$??qO5D92`ST=pXos(!e%p8!HS)-F>FaR>n_%;5EG#jYE6{~gii)}! z2#wKp5Z`s1RGlR>ZVK^W{- zJ$m}e&R|zao;GRFeTFl&5l@J$W%21}Fm7PkS)>S#h%kRtJ-n}Rbe68dX7>{^sOEnT zh6$|vcuc`R#_Nw;&b<+|3HMw{9==R5=0f8VK$$GBz^R@)t>3)$o>JF{9i3;Pq`G78uf#mEGwnNAL1 z=U{TQ!oqtmq7$r&PvMF|){aGXokt>B8dG}!Ap=ThILWDAq>(i~t^}@RnWEK9X7YaF$ zhf5UE1lA@ZX#}tZP!ooP z_z6Mln4M9H9qCk+_)f6gJHSgNE({rAk;!9osI1L_1@BYVFzLhAuHs|aP35p+Ho$WGdZQoc6N5|_*j>ik3d(pD|gp+D_k0YHl{=R4^=s&>*6=fm0|P+BD>3=$5&@592oSRwcn4XKiSNz^uIx9+ACqmC%w9LkmnH-K@aC z!0>apdgo~=BlY?6HAC=*gbp*IJ#WD@VT~J!1nnjt<`MB5 zFw+3NJr&9=#wB`v-4(}MUl8cQc6tPYt|Siilu4N7L|Td?U`7TQVMg8?$uLsZR5}0% z@fI4QNFU-ELyveB5O8?IJc|v%vMl(fd0hxc$!LIRNL18x)ru;x;vaZkedmFPS|S$ z06ds3EY2yOI0?>8@xZ)Rtz@6w+guKKay1y%K@=y*H4MahxDv!2K?)d>{v43J7>HM3 ztjwCI!T`X)XVuGxOs_#Hxx;iAKM>R)iO1#^Ibc zK;}+LR(maDSHVA-L_{^fWjgFPGFM$m8dz{_Qxc3V%thuqk@gK;GEL8>ToWebK<`>) zjyA!xGu+>FUtw-e$@B$CqxAc62?M@A)i1fTg}He%{AxD%CI#+n6h#_m>~Ki$2cfbx zOaBQ2V|YVZJ_D>#_|GRUczt+tSyA)|D WZi_mCKm38hq2y$gujNSHe)MmUGnTkg8ZvQ5Xhk0*M7=W)K)eMWjTDh)M|%ARr~EqjaLEpi-hR zic$rnHB@JauqiQeGbr-p)G^O))ypa(6ty6U4;LXr$d!BB@{U~+*(tWShMC*O=hsHZBmtGyXU`kJPvtNBIzJ6vt=pu)<*uzd*Od1^Qq0~1KswuKk)rQyV>gpyd zeYc`6eY#6_FU|^Kw9lI?eXCo z=*?RaigKAYxtycc4*oYtf^dc`{YWR6>E@fe1!GC@z!Qg|uu7|xFv&x7RIG)Fd zt^JH3gXV8m^j8E-u@=U1DSND+(dOAy`n{QUo`!{ z_Ls0z0-ff*e$Mm!{8nP>mtTHKO-)rH8O#sfrTjVI;T8SDrA7PzJ;ut;E>T`hT|Ks| ztLxI0E2BP%&z?P#nA)x~Iy#Ec6g_lFiD>jsjD zjS(&>0lU=8$MY>eP&M(#4jecz$SE!?j5vfm?%za{eq9y3c&yl?H}&b$r#1d&W@aZ( zp7bd*H!-PAf21tsHQVW8%B%_=m}$pxr+IO4al6&j#ypoJyAQ0C3N;Fxjh5Pe%ovZy zdt_Bs8p+Aar@=n7xL>()<=_WO_?dFQiEV6CV?mQhU|As&E;d(_MQH_|Na(dvsGtSAWNkS4Zac3|EteLf+b0`1J01b&Wo%6Q{pY(*^yn?6^DWQJqqJSyXg#Gw ze0}_WFW3;qt@ZM(;Y31gcsNxgU~2|1O#5?6*-m3^+31$p*n62I1#(KQY-|z|@GB6# z&1;9XLO1R@9-eGKqG#C_q?VTIXJlsL8y;zwYFu^eF4`X%MQ$y?)1xDvnkCRbJk%P1 z(~G{gT%2BaUk(56_BJW0=4`uS|1VDySa(d7B6`b7j8L)VtjT%}3QVL5@iOThjUbF8 zR`JfZRWer3AvRJgDh$us*_97Yg+j)TJm=nhn>W+Pn|ECHntj5ink;ku`n>cH2x1zB ztU!K>{^!0NKfJO()g&r4BV+F`W@h;5k>)%|ike1To|DOUatC&!H%I<>l6Q4x^l0N! zeYK!|_ujpc^HXf)p;G|hxV5{G1Pz?h`t|EIA%;3$UAF#CUS}U}?BQ@c zNl){cMY3F?E+H1M1BH+TT*&-JBGsQ2@hyH{hl)7_%OXgC%@1OFguaRr;ldcc?%p0R z;XIqcs*Oss$#vxQ-;ne>NPcsDrKU$u$pcLA)$f!H^&t9EWHCYh`|L|z)>M#~!MYx$ zL-GF8&8BIl6eR}hSAe(-$a;}*DbH(w{yaOoAx2t8#uO0YfVQ@8nYp#Kb=bU=l&`O^ z;&5?sF~hgrL8c|$lCn;{q`x=^4{6xk*4FlU74qw)wJHc{qDxv_QYjj?$XAvN5CXVC zDl;b%rwGYpW-#A`&*>eoV=lBwW#b!@^sO8nQ_4@BJ{?lGT?~0weSP)ooR_eQGcV5_ zHWYlVv4X5O?*8yVb3249v6$2skRD~T2JxJhHbwxpbjy6lHt*lRUy*Ki_AJ0+YK!~c zy?Z4LM4c|w7)1j=8X(>l$OsCjx17;Us8%E|wUZT3ojR4wDfs>O9Z(?;_8`bwbIAIp z6eBz>Tndu(fxIh$K%vv=&tJUw;*=U#`R zyDXSvU^!(sVEqN0dB@jxu3Wkl{{F5ind9+8rk zmiB^Duh@NKIihz9f=c!HgAE2GPPA>oMHHb=+So82X}fykraOw zh&?#E_`9cDB`K&X0r^_`sg=vT`S@H8vh21Jc6EA#`lTyLr&(QkG+7S#o)+cCCZr!@|z$nnqt?ShuC?=aB@A4o-EZDhr#p=5( zl4PyZEn*rHbxnhVgFm&mGwL;}lM<%_tNDQ_L73}o3fU~;DT|~a%DsStFdCB$D6QwA z5)(~q7fOQ$Er=nnA+Ld-AhPdSX&xNCph?Z5*%6>Q*bXWD{Gu&n13|0Y{1ksn7S!8n;+Z6 z|9&gCLgHC=rlWZI!czGLw5l&H@)`6P`Lv=U9o^IR_6miCh0UKnefpwfZf>qPY-;?e zwN=quh_adYaXSGUlxl9RH@F%lj_5U_6gifb<514(e{-Wb7gsGYu(U7}wcoA?cmc{# zrVZ zq=t)-!3AlyW!uT1{Du%Rl^7xL<=P;Gb_uGp1Bg48wY%YQRI8ee52yy<0S?F zdVni7f6;;DG(AvF;`Vs~+|p}ha0*P3ke?RF=kS)esYj`R7^}vY2NJY>?Jq1Xuunb;uiotKVVgyCb|m4l0;*ROEb7BVcEaoIlL{e!^6>7 zF%0mIR?z?PSd5(X6uXH6?1y%5kF|=5)5qU`_FDLo&VcuTPhGDrYXV_?U_kPSR>orD z_uFlj*KrHqX%-KZ29BG>6>_*NdFI?Pbldy@#-ldxk3{Q5PT6Qig`z5Q$VTk}lJvv* zBjY`#S{EB0NjEe!SUET-y0&G#4{pYH7r9&63o_R|`iEqtBj4E!=UZhFw>=b3qznBPxKk$c|%w=ko0FGSB8z6RT6Fq=7YSLeV%=9kO(uoqHxvWz~AQ zP3TQv;AbkY`f~D?i%ZZZikV7B!z5z*Dg#l@hz1M~q^0i+xCeu$K&MO&)u%mqvh8A1 ziejRUdn8mQ69)%}@s7N-mU&>bQ4t$e>7QO$@>8jOescI?&e zK&pir$Ko-RDK@xZ?J8ajL7~288KO5FnZK`ovNC)-y3Uf3)F`LVZ*KyZ?dwyzfB(K$ z{r+N_BB_TLF^`gCG^R67WqRWwO})@U2aLxcI9A5de;XS1gz6=~q=4av)xPGyT2R=? z&d#DMRe7iSIm`xs{tOjb=^)2VuV)+r4K`M1Fq0gf0?##Cii&EIRzse+|(Q{3sMoTZ#_oxOZ*J zJe?hRLtJtgqwHU|C*2rW*%a|Hf;eP>2!H$Anmi)A@qxDMX&{xRP#8fl?c$qI+`EfR zym-0lmtwbQ?TS}-kkfK$j0TOXwMs%kR?Q|SdfU-k0CMHrDtSxH`~_oU2qBVx4$!cJ z>Xp+U@!s~JkIudU=|^kOWh&@0gNW%Aqp1&CRN3;;j7(NWX3nTj2o%&!@2H1Bv}LSi zX@OOuU<4-0R?UC%3$PZnP=LL%d;k8J<}_2r!pxYY0l79(TJzE$kI|b?j)u`kTQdy| zg>wTG#!v!I31o2u&~<-atxUNm_?8R`F#nabON~!`eKHQT;!B<&nT`!UVA+OLDN?e;I%Z< z&VXXb5==EwYNKRKa~&&LZ^V_yeT3Inu5;=s@j?ZlaQQ@1$if#* zFnZvVj{DhYMFXAT#$@>c28H5WA72Zc)d|R3X>iEbH{yAan*Q8MzKRN~)dm+6j&n2; zWZA40Lt6hp8<>Lc=;>8~DIW;}|U!N)UcK&Y5k2`eP?^UTER$efs z!O)6QQm8oxDZbdDAd4JQ+62O8C{XHVMt1i8y88MwV47wjiuS$?O6&q=kAfXnk;>hv zC%%!bu!C7PsxUsv=N|Ed_uqhorkVYns{6M}^#8Jl{|2K7V-)O*LZvA92m|YIb4O5Z z0|lh*Kdo(uq9s0KxuoF+)Fow8$rw~U0r>NpO_dchzi|mr!|aAcnRXmG7**MgSdrjN zg}>MIXseo1(APH>Y>hK7w}S5Y=379mW*G5%Hr9kmQf{u3IY!gS6*f?@*o%!xTTp+_ z-v9GW-VJ5JR-i(a5Nt!5hCd>q_{_j68P6TFe}X_XRMtUyWKkx~RUECK53;=agj2wZGfY%ZWiB|$XC^oMNWJoO-oZfuUPTN&dv$H2in4+4? z%;I9RS+nya8B?Pzo)XU*^na@IZPlOSg%s=?i(3LyZuRSbfGlh!k^lIw#E=$%5f(u> zOu%S50(H0`zKnWgUJ#TU`so|_!H8qQTmiw)?NZgZ053&JeZ`P zKC*<%mm?x0BSFkOf37z!poj{dKHa$hD0ZNX3J;K1Nrp(HjZ1MB?M;Mrg9Ru zksqgbwz0?O1Tx{DdGTy$Ib+*`MT z{0HxtvQY00?TJ8n8z77LebL3=~=x==S+Suuy+Sy`>O@=Dr+-^@aZ-Z`77PMKwkag4n)eL6L4Nr{3iwPiwmu(MxdjKf*jX(ctG<|9ExbA_T;#ftg=}(4vTvJhCpbd)m&RSN^};!d zNY8*r+bB7IG0E9h$9wRd+wg~nigfTf?#P#ad6t+D*7x{L8OL|9fNVE#I6CiIVmiN6 z`EmP_gV_em_l?labOXxM8LMcJkG`(d9i!<#j+Sc1VsBn;bnetx&i!qp#XHcI@$Q}Z zI~PAok{`?f)Z2k;3O$Z*D?>}cX>04d?$CS-gaT49GuG|`<3J>!<4}jRok4GQfR?ns_>T4v?e`DOX2d>{H1{=jtvdG@)ML@S@Tdao;nH z#NJ8G&o_}%&`|@yk0;_6`P?QzlH0vx(UNWa(rAPKP~H7feGs*_6eXj4=vWTY(Lv#D z$6gZX%q0$~fY_+7N)qYj{t>h^hHH9u{Gm5(OvE8oFGf(`ZC43|UUICzvVz^skVbIC zb>ty)!gLoaUlIg2hO72&PJYs2{jbp&hsPJ)s-6jZZ7)B7085CBoVj&l_=C|#W zba?^|T2?GH|6GA7!&x12*3W`?1VI3myM10K>+cW zZIR*?<_7QY3t60)%dB3=M5!<KRqlmUX*spI8&q45UOWMnWL`l$NNPzL6pliAeMfo?G*RybJ7 zqTAic@Dd=$D3G=?-gt0Ccudg}vwB89w{o`YOjS?-`r_!ugE8Y9#sH!J3H1^MU&FA` zXn}-^hiTP>)2g}uV4#EjIVli&O$I$=I149eB%obK3pO7dOqI6*wvS_{wTB|ra>6N? zh22o;rXrLNsDuQVsClqZ}b%svK-?ES!+CcOq2f zgH7Mt$dc8rRg3}5^#IzV8clELo;B-(R#WsMw;DUk>6Hf;+-T5GHO1cvE$qd;m(!Cs zqY413l|;4N*axcMJ@s4P7K#Wy2(@_O8x(^|iC`W?%WA4X@9H|R6(y$9@KuBZE z)Ju1)l2lTF#fJ5AXd5k~bID6%ycVi(dLwoldZIuErNCS}A2eT&i-o+Z&3CTHwDM3+ zg!<_K0KCO&(IWMVU2Mz|EF0}d`br^|s;SctJDJ;2@2t sCQY`&>nCU<{g6}8nicW+SQzIVId}d40OBddjQ{`u literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c418e5fe6a83a1760745a427c02b8b4441b2f3d8 GIT binary patch literal 14188 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9b2aa4b10f5065ed723a2f4c73b36c6ce2afe5f6 GIT binary patch literal 9615 zcmeHN2T)Y$mcFPXV*o@@aEQVvq5?8VPC6tV6+|RSXaz|EO=vPS&FCnNKx05aK~PXc zNkh({5*o>flA(bnsKh39LqqqTJDc8az4vyjwx)Ks>RILODs1k(|No!!rDMcJLj$gz zKkP&hgzM}X-Af3vB@970M!w$;KT+%)9ET58A3X~n6Awop|7+e3$c1Y@o^BpKZZ3A> zeh%I^7Z0q0tdgw4adBrKA5WZ`oSgf=eL>d4+exl{rFsQ!vcvO?B@RJ&uAzT9GPGa0 zAjpp!XLV0s4oI3E!h4#oJY~>~_KNfVO4Q>^{X{I?(sb))2jgP7;yF)i&f;!fpPj9x zr8+Mo6KU7H_}ylApShp<=>BJJt@EcX{LP)nYOkL>!uoSPOZ9bqx5BZXfA4Ryy4Swj zIYl=h4`6OQ%XmAnj<0fTYt*C%SFed`4p*v{3Ea&;-n<0~yUsrq%z+@nHe2=};`0Bv z{N)}zU91ZGxtPFa^%lCA_{l};zgWn^>C2|3dR|^n=Q!b!B9niSt69cvGS!;vOSXn;nuUVvReMyB}K<; z=xtfRF&N}(&7kEyVaUa+mqM9lPqZ1^kuwR%Hsnmy|KM`|Rft^J)=U;NWg>XTc;|Xw zJbWS{r^~i}kK7aF_}{rC+}!#0yIuQreSLjnA3dsXyf110`Hd;3FmvPqnF>z3NJ#adfiJ6{>42x&Pu7)}}x4W7wM z^HM{QK$8<3Djvg?2^xXkpL%-8Z-3otKl=W5XOU}Hpd&Pm+JsbPLyWUjA3$~JUuA|pGyb@rI7 zEUCZ0-x-V5dZFq!+rKZEJ{Qerq>(qonrMzEe~?NMc6#b-cK-2Chl}7Nc)s zVlwF4V?&F?Y)HsfEq_FRDIC}GMDbWtb2H8=MGLRRJj;QMpM|m*aZb<-_B(DwzLfFu%BvsDpcUqPI5{PJiMJpG^8UB&s>eRtqQ8Q z@~HYey7cnp%g!`|7(XH8)N^SfGV}4}x!poaSwoyETC7tB7cR7N#3U*>84dCVL!x74f#`|-3N;G=7+0zn#(y5lHPZ`VZ6LtTwFA?Y$Rhe_PTawMM#^Z*R?%W zPphuhl8`uTm?Q`d*&bapol`NkI^Yqb7r9>#%C4}mQ1{%qb0Lh;a9&>8Xt-Fz1?3_B zV`f>zmFXS>*u^Ljb*1%{X#x0dpsE29miGMW@YaCOrsnm``5G|=#};B-T%4eqkMl_- zrAaNp{A;y$j>xif+J_13%{-^}WX7a&O&>P-v4T^Bi2oq(p+kpg{jRz7=vxkyc*MMU z^9C(Qbcx1St^{3f=R!uDk2V1y(ZC>{M<$!)6plCCN&c7S#hfu% zXZjyJk|4&h74Z!C{uB~c_kaE3(?s8bjGTG{OIfqs5?C0z>ab?}ULZ~#*fxUq&$viu zAlAQMJ$>2S+`!V(GD=wWC$sD;zHjq*v=~>dLumD#P@!M?3Ys!s<=bcZ>y7s^GBYD(tcrb9 zLZL#1$l97=NR|Mlw$Dej77PRiw3QZ&)Cdt_3_kWMOQPZ_Nihm{JL<1 z=@vv-1RA?4XyxvM2M?S91WRg)iWH9?JH`_sV`^*7b+xGC z*Oze{tZ@+(>X}QM*Oq1^z_Lva_eISskzFfHfJ}tsL|T+lHj@J zE~A*HrY1jJaZyoy)1zZNDo!pgF3Vp!(}uPq7oB&GY5p_F$h&-eA*dA+5G5!tG1;CX zrtUu%wZ6ViBqpeM*(G^5Ny`KJ5Q(J#G&47ax(6ixE-x6TUCTY0lnk=Vm7HlU54k zn(2GR=PS9>XU|k|i+-J_+aTYy3jHe*`Oi~7Is5FazTAJ$H_$AxpOB$ z73Y{`Tcvhq_kq1YHF*xraoptj{-R^+tFwP_D3s>bw&2x1C-P)#B5r`NK_&>lHbD>- zN6;8;iOO<^jgo~|R#xOaN8VbLdS3IH?N{6{bLG=01GJBJD5F-afkC6D6&5asE%|-> zBn^Fpv&yxtB7KsEo>U;MA%g`@MwJ_j&437r1LoG&C`5D)4sMi9hAy=#r$J|<@6uz9 zyWrOQ`{*;O|6fQGTnp#Oe?|qM){x0S1CsCo9_-6G zr~>o~lwZ3$bnaRUMhp?hz?*1XLM2P-V$(7Eg^_p0=H>!M+M7OZlxj^DO^i(oBcD&v z()63@y+5FY9Sq<%-wo`C5(_I9w1wW;vu6vTss||j{Xrc(0U=kUl01Lj=u6qOtX%1~ z;uJOkp6#IXZ$bEP+OxQ?#>?8+_5OaX^V6r;ff6_x=NmWfK6&z_cGXvFW1%*HIa`tj zD-CxyM8fPl_rF;D`L z_}b)E!>89K>LGK~45kIt-*rpBjqB{Gnq{kv^!8u~nmN$*C>nrCNzf*+rhqd?B2&e;c=qKxbar&?L5~=e zGWp&?oz$Eh*oV);NtT2+GF%lV+lNei{K4>+kl1*Kv7n3AWh)b&xZ8_GHpvu@|)=L~aK%Vlo{&|J{c4 zen28mm*8h&8e6&a&jCF?j+vKvjR( zT(6=JN19{siXc|@Z?3PXzfk>^_^pO*Ssi~$G&=Iausl!E1}d`yYe@seRT9h^ps@V-_w6eh0I`Jo z(TD>PpWk^HiI=h34~|YAH`!uQ73917z)wGZ`}WNa*iwW<7`-iE_x`sXUb96#4aagT z_kw7OgsQC1C2UUnQQr?lGFHy`3tk3Y1Rx``ttz#2H0F8h|bTnl5M7KY zc?}0n)#K?yJy>hdftSt9CW|475RLBQKpGSOwvZMP?HU{$#D?fX2r(qpAcv{eFw|Nb zSDDT#uxpBy&I9LKOW1-Sr|wr`*JmixNS43x+nJ$kf%Ha8=K2vLJyzEIn-kO^2;w;@>6p|754PGp)xXPuZf)qtm-EXGR9ipv`Sf?$>JpweD zO}S45xL-Xm%~%Q;l(g5crElE0p{4=ZNcs?iNOVfUuZF?RhGAEGi`}i3;l*pGV5#7e zME^D65adOH5;bQUi;a?bK%)siIs5{GUjcAXQo?SmE#D{=VHVzT(}?)is4I7F6Ptc&l3~EkQ>~&8OSqY zYHqV{zJ?tN!HMLRD_8yqc6xggn9s;}xP($m89bW7@4geLdvNI7Sn&Wh5`qiGHjSm0 zfW;3|)FfP61d#}w9RQU$cHclWVs@a!0D_n(QB5_}T^x~-X>C>oHO~cVo|o6;m0|19 zJElFH1G}yoD)*_&(`;QDbwtYc{z(|F~mI0&i6?odhKz zd&AY0+Nw;^c<>5A?)k$p{5`>4v+#ZwYT-*)`(3Gz%xxo3Q~@tJ)>Fgs#kM4=;>L!9 z=c8}$5@-O2NM%rCV#>?Q84$RUx?MOBVPCla(qwDohlf%Icszc$u*!-3vetsY@X?Sr z`KqvzgXbc^&DEhH)7I^~iR$x}3T<#Hov&s}jM4qssG}?y^0Pu?Cy301W3<+t-TDiq zlS39iqy;!4h=Dnp*j=3YmsBx93m=5VczJn2e4&rS;ljx$m6g$Wt^yA-uB;T~rVW~L z0W{35EiNviCI!Ah1}~uf7svtKOe7LPHMfUgISUB%9Lb;LZjYX^F;BVUdcr;D^y2Ip zn_FV-i4J|dk8AdTD;E3VEC2<+RpZ+6xE^5r^ECh8jLkQmg`Q2RfnJ?#HXp5O+A zO{<#6&+{>v%U^NMQd?4fUfT%C4f|BK{X>Z)o-1_W9jCFaZRquyM)@~@S{7(?`}yyq z&r`%|HfKGk=P>J+fF35i955QN2sFX%E%mYoUoJ^$K6n~ltyM8#{NF?PiD2nK2ugb) z3O*t&9nsz0?Z*Vs1G#K|tvwnZsIjO7Sg1Zk9Rtw^Ah-)h#fm;)d<7ny!uwaM`?Ow) zY6b<2O6FSM8c%dxXgsshMj`JU(-HsgK%9~?>tCY;dx(1NAnf5xLdDrL@i|0a7fp{| zoPB7=SQwSJt0RI;4E+z_=G7$qsxHg2KtjTESs#vliY>N3*S#MW%CX1sZG7wUFm`XpdnDWpo7Ips&uI1*BG zeW-=Hj^{dQd3o~mgCs5?C0#F?7}nX=^WAr7Qc*fvJTTU6(Hch+w71`R|Ion_rDrwY zCbq*W&iU6QJ_Y|}37h5zO2!fFLz50V;$$v z2Z}d;I=4ovg0((f04;DGv;HwYe*jw{GXOc`+!~wx!v>WsHc#zc3bZu=ZqHBjs4g3- zhWPXPQ`n+V7&lzEjC0tv|9B&0=JAi>;vA(?LcIOz_n8ZO%J66|Uo^9|g|MoQugqRQ zM)awB@9zic8)6u9LM4mX2myk>1#9S{$~N)v84vcVM**bcGhbh&wAn(S;s)lx5|XY0 zP*4t*tKl9Ew>Wv)k^?6n&t#VjH^I0hZgU00_Vw#`dF9ZqNw;3buvajBn9a`^2XH>x zBg)j{&H0e^IidJkfv>&8)ja#hN+DKrl&fag6$7Zv^f{%pvfw^NwPnQ~lw>@cNohCK zT>0b%8{ZcvW0j9C77l8;L#GTc9K3VoNpn7h)3yXVln;u;!L=u+HFUiz#St*SRWxAa zS9qoy*zZ1wbqm1t{Baw2*L+|w2e=I=PxLlg?XFEAWa9B_&6u`Leeve}8L~FZ3rm5h zB;iqP?DcbT$3K9MNy&zcsA4KPn7cGCTr}v&Gz6ha;FxA^3)nW=27P_$R!8LR`%b|6 z9>jaI&`scIrt*o65P3gxhXxp^#s{03m^{1yzH$KCr5I{v#=nL+G`bmICvSv!pFu;9 zEU-X*WA%|ZCV0|^pl2LFhJVPP;h{vO045A3KvDkj9U$Q3ffA^>ELb<^rsGDM*ya&+ z7#DfRuo>K~6Y-ej&pkb2i|d5tG%@^`|2V7|4nJIj)4=>W2A8HE-L!qTV8@)$CbZ!L zF2NJx^Z-D;*||l?No6C6Gr+;BBQ(G4rdN%o=tu76W3=uUV!9Ej9K=J39#- zrNZP%{e^ExNVrG+-F;Z93~#Xcf3^GE}xbJcE}v z4-$Em`O2kKNR7awIyA+ifi@b^pm-Soy{$!8^>$m6u*PB5n#@x(GLFzo)6)+Rhb*ZXaZhP&S*S9wW6$>9k;Di0j=xX zp{nltjUUYb=DgUfP3muahKxG4)B>9?OxTYsM%b82MhB7Atd(3cC|BT;4-XEN2{aOk zz#k`BQv{Y2Yi^z;i^fjz*4}3a1E|p{%;`%B);RtLt~q6gSzl9F(yMbrLQr=Rr*Cbq ze|GwoghVP#EAxU@z6H$WkyBy&&|F&Zr|U#*31Y1w)J_{r3ctV*Zv!6Sgry8u1yf;& z8};i}PSJ(ZYCKaPQZn=>EwclV(r*A5(^EE{po!vftK#EN5)-LU{f8r9kHHqccxZU{ z?8C$LMuhb)lq6C7Px+PvXEkHkB0m%9*_v%#mOn(@cg*aM5FG|y~AQsihmdAV*ezSL7bE{Uv z$i6VzhhQ*PeQx}r5eY_q`XJ0I#G-x2g(wVtbf}Bo0CFLMC^S{s6sl7Jh9V2vwbao; zuMyzPY0Qk;B^w(NsBtf-AXJwu!#LSQr2YPiUg@NgTkjrp(y2^XQbv!0L5m>>L(E6# zAfv76HRwe~T~QLyA*z*Oc*D8*gRnaHisA&SR#81WTS5^<2c$3;A5RYc_WIQry6d^2 zE1BphEMWcXD|@IZPW&z%^tdW0o7h1JFFS!O6V!ZfgiIX6xX_h|r0#O>i6)DhP`uA{ zw~Qf-agNCP867#qa>X?|wkM02TYKq+Oj}XzF14x44F^qUGuGOn>}p+xD+7&9O!x?E z@q`1AFr$lX2;|BIm!3fXvw#Y7rhrGqyeG$o8fS%#0QI6KTe~8+aKFa|KmAucBdV z9vEXI|9t++RN#XUxtoQk<}*~Ch(*O6PmmNRcYFw-1hc;fHK4418BzwSYCwx@pXVJn zS(3a;DmAwaJk*_IBZNW~jBD!XHSA5|_x{Q%cGftAQwmW%ItlZ3k4l<8)a@Z~uls8@ zCgjr0b8Xjb_hYW+sD^EY`@oEtvFH2$JI0bFR<4;ulufZeiol<FMG#c2w@JGkj^o*~y=S5$_uih@m$zOfF+&z8W z-JIq9UA%qVJU!G8XdX~kk-y~Y>*b@Xs(SUmzi`0Q+f}uGiarGoS?_hs&Ids@|BC(! zr5jP*5M-C5xyg}J0ZF4A((R_ckT?8#&Rb5nSJ;tgY|2)R^;;xXZ_s&e)fm}ycBj3b z@qNrqEBAFzzEUve_cL@QhF9-4I<{}`rHcx8_EId4?%3$~#JqanhP%&X-zeP1-Pij; z)Ky-tDrCWIZ=$1i)pIY=g;Ga#J+9$Gh<|ExHqkSMV-S(6QnLyPyC6P56haW+{X*-I z+fsjj{8J3#J?0$W48F|F+}{zvrF?D9uoah(=p*VNKPX+W+wRF&^53}g@OKfBjcn0v zVc0j)o~0NY8=E=DwaB>P2)kIlPG=w~SXEJVb(hG;4BKq-?CAPaR#tZgnh_+q;nSzB z@a5uE?!K*X?^wrlW_tRTFvKgte2#1HM(2wmw-5ebP9y%>`ZuY9Z&WpWPleRsOFzR> zE3GXJrpyLj+U4y%O4%vl;^Knuz9GrP#TfX1YF&@q_FS_qOk|S`8KZc#qNg%a&u?*h zw4M9qN;V}UtK@r454Kbx$KRgqU9+D*l2@P7`(PE)Yg-ts+GSGQpKzro;Y!xvH~#Th zmGI4^+47w8Z?BQbQkw2(78eJMVs2qWwfCNg_sWfh7ZKLv3C}ue96oGv^5jWc&iZY8 zO^l7p)dpS{6dXN%{5VY%c{BLzyg$;J@$A{N^p`K)wNBgF?byG6KR>Z^ac`YAH|lYJ zZK{zGuWY6x>#Xy};^Bt}h$}*l^(Ym8Bf_m6V^WeChU@jhlf@Rn=Kz@NhdN)3HqVMMlQtYXu}M%j%%e?6A|aE*cVPEsrR2rywDYBCT~4hr^kmLEC5j ztT%d@Jzyx=UT`&1Z>&^Z)3ZaSbFp8G>$E)O#GP*UtY=LKAtfi?uI{Q)Wyr)i2DzOJ z8hnbuSlQc4qyMT+)KXPY@E`s1Ao4Alj7F4St6pC*)SQ8p^}?W}qmk9fv8ca4{yGLHj;!f| z%*R#T-eu+JD92?|BK?M2WM^hgBez$w45xD-_0-c|y!hUOu{0epkW47Kl#d{DkPk)9 zl@aNgnUs=}lFzSxHI9-}Q-E~eLL-dv#%KF#;#dv@j)b3|UyfVjv)SoFhOF}Gmt@tD z!Q&34-jGo?@C2{!ckzZHK_?P5_ut%%l|u_j&LF5F*QG{RKXmjn5mUphW>8WdFN=z_FJHc#_UO^0a-BE_f4i4X3`5Ca zG#MW#+cKRNE1i7bCkP=EPwnZFUJ4@|npU)o&ejJH9*i=Tm6dUm{U2oOiqUtCb(Ha` zqjIWFX;I3n()9?2;z_~5A_`OT9WyjEv}r&_KVUq)N_pSDa57n? zMmNd&^y%$T_@f69gqnEmvrrTnJ;CSJRA#&y&Uxf>PR^xRk0_*69U-BdR#2cBt75kmZ478j_O4lmKIo> zL&vX6=?8c%4%spy3`6F9mwKSx{|xQ^-3?LP{I@~1t6yG|$!BsenCnm0s^_@3%RA0}2`6 zU@BROmZDj-%-{+{XHdC^#f%bBr|`mo@BTQYbXOv zOSaDK>QzchOAA_OvD;>LBS^_Hcp4ph_3Bl0^JhwY-J;|SboWBSI|(M@aPRN#VI`@P z1dCreGy?Az8=K}E%4-pAwG9f$!ql+jo;`aS*le~(X>qa6+Ko~lyOVws7Ga`6|8C#D z_Y^T{O_hX%gr1L&jAiQ{{u6o+gcG+yuX!TB>Mx5t3TtFo;KA7mD=W^ibqdi~yGcgs z>C>mOb^DZ+Bca;-C6TbklSfvcH!*?l=ucEB@{`Acl{Bw@5m&!hOBNQ{)JvDpcd5RQ z(gxn_4)u!__MT-Dd9L-*=;P347SQ#Zh;x7K!?_@k3Jz)V^wnE2YHpvNe9m*VL~$F| z?%Z2-C+BkW3$~>3PHE}KMYA(y_BJ*W^@a=X?9hc#{QEs|6(Xqv^u3k0#)zh-j#L8$bC1VCnwBQ zY_l}6va&iy;P@#KeuEYo26S0M`81jmP0h`fH^ro#fo7@w`tJA7WyBf$!06{3MP3m% zx@d8thIZ*Gfd2ms+0i-!Rd*EC0w;QlW;%%6#mV}ycg?_;Esw13dSradd1-#i%G&y# zwDN%i(U2~eE?v^@M*&uKer61-)fwzVm80h8Yn(lM_KO3YyA}XEGy{sFS+oi8b{fCB zy86=P%R^pu^(4XM3ZaP6pEyRv{xiZ331>r<3&Wys&P(6>5!Dj)zcg)h97@^52 zS_B^ZGlN9p^!)rh z`;5K4eN$_znV;X36>GDs?%~k68Yd=`BJC5$n9pED{6k-S&2&Ki_(K91!AfnONY>S0 zM(x;!V?|TYZVNra`O9lJ=!j6AXmdq1Ky^(GH!bqOWi5tfsv!nrMiEBD6W}n-@9nKj zF(5j3lm<35HHkyuqHHow_tB+3ef}&}S-B>sdp$D#oA?Rjs0l!;^2HAc&D~d_^mKS^ zmK<@ULUkR|C4S-fMnqn1)t0|M{^uC1kqC>FRE^$ceA6T_FfdA5>p)AUJ)std4eY&x zR?K71PI^P3XJ`8J=Q=z-g4{?uzsjpJLIM>#C@KE6{HBzev&o70gS-64Iyl{YIEZj* zkD^^EB*7fi1{vsL(fm*bcdFHCtmlC+;+qLad_z={`E9Tf2RWe@JUfnJ>9?;9in06c zTe|r%MuLD~!DMR89Yr%H014N=bN=+}{Cv}pkPyji8RU;E5+;b8uJ3m(*-lsu4UOWQ zo}M09U--?NH!V17CYDEmoBT2q^&C?;9W-M=y4<(_FP}&sz~}6n1%*g@T97%;#dC0VYrlpSWZ_LTFb$1SS94x;LLb zeUdT=@};SIE%HQVo12?iNi!dfH&-srbYe43XGW;un2Qapf5pP!wFebYYV*t@c_)q; z6`q4*G1E*Vd*1ve{3lI`KjiY$Mmc@${`yob2DALla#C-y5Yxg1(PnYuie%7w$>7m^kVM|o5rwSsP};E{6NCgkH&c!r_^ z6sAPp#ScT{1)wcn)9BC)?lI(%FzcU>1h3tKgw<^WX&a9D`{O^vU|%|Nt~3C@amS(E z&@yrCB7BYqr-UoFyfj8Ky17YqXJ20*o?j`6^1nX;&iX&7+Waf6Opu^kP_!zYs8+^v z{8}shS{)?8;aG02R9?Y>ZDFF42ciZWsjSy-jn1><-8mQD-~HO~*i6N~;AJ_NG2fic zM6-Y;$(XG~-6A$=c}eYZQ~E4Zi{9|(LpT##n)=22GmuliO@Obq%+yNCO` z-`De-tSx0H@n`Mr9|L+4LY4(f7z}u86GEp+?pHHKEUTBigS71inu*;qClY;b2kY4l zbdB+}YI5&+FH^5W{Q%lCp=G22oN)pGYTY|Zi_3LDRLjbBHZ}RyvK|_dLfOQzGBb*; zjZImMO*wzc@&1^^ZQTL+Ise@HwQpaLXLl7CS2`k=DJnHRqlKN(N3O5!Bkl{dhR0+( zF@PI~_xJbvb3c6epa$;MrU4Y14P>zxD^Rkq)=?%1i%G%ulT>(IK(}Ic()Hd%pYh&f zegk8K4L!%@fd{JveftWExSo>#XD>WuYfI3kf^EU!V=&-K8uqXBXHfHs3YV{3!3{M% zSG!mnFQw=2u5$MEcbjCiw=_OG8A&FC$F;&>LDB;vgUl`JiBNWadu1>fGXjSbfa_ zno6vylN_Nlgb+M<+$ka^xK|N9)k;%Ihx^&oH_NDM2h1=l>)Yf|xe_j&hY`8=8N%R@ z{_$^wu=$U%F8JZhLMC)_2?%@+p34kYUEc%j8^1KwY6h23Z67LCF-27PL>49iB)(A1bzy ziXJ*ZOGBo;z%sAZk+>gKE~t4!k9%kC`+c%cG9SFy%2&UZdow~Wv!Z3^9JVC;>y|w` ztf|TDF2A+n)B;E9C+Z}9f9UHILPwy|!aGU&?c|W@HZV2qG{Hb}2hvvDo(iz4qL2$- z(8b3`Db*!}u@r;l#YsCbU;Viht&0Xh->N{D-QIt$=pYS_HMcF#l`yMqU*P^;L81M% zn>CFO;Cpc(l@uE5VmA$P)kUi#00&UYcv)JiPaA(Hn&(mz>lZ+>rdoVZP$1}xl}_eP z*6EFTmp1V0@z0Ao`BP?K3Y)M4|a#ew6XXuXtj@SH_FyAko%S)ZE*Vl?wpUyh> zaA}6LOwjZjYI+H*r7h8u{?Mguj3njc{eDkd3~7<;4zFLi%mF97EpQ+?&R~Y^)22$A zs~O2&p3ly6EDMsIyoHCgfscglh{pL0Ezbvs?)GT3%)_#8pN_YIO`HcK1XonI>y~DR zEKIx1a0pKRFeSJ^^B=7SB9x47Hj+HjV21rb!4K&;)EBEPT@8uQWpI zT=HlEp6x#P=_wixbiF524Gl7~vg%OxxNNRJv8}{!IG0?NLgW>*rKl;JClV$op23QG zuxuaFma1Hph51%SiZl_ttlYbI@4C-T^tDCH>g9qCzu>eqWE)c)YlaOuJPhPV6MBI= zn2~MZS|?Ft^)zWCxiv63$^~caBKTkDwqsV_=0NjzS(qNJ0na=Sy1(nnj?m?R#!;Gf z+Dg?II!0ZD*Ve5hpJ0|-oMU`zlM8wXazS4osnmonm(M<@rc}!|e)@FRZ>+;$K`_He zm2NNebVB#b6&wtm?Y@;KdZ0+2u(X+QX|F|6{K-Vk%*J67T#uRG7HD$8(s1qqb?kbU zUrDNu?K!-uru*kt{zhL1Y9HQ1JqAJu$nR1AImm?+Qqpk$nVo_Oxju%?892R~{RiwuLs6AlF4_^_t zydY?ki}lNkmNGity)ku952B4=#X0827|CHU5Xu-}yYc#g-X8Tx+x__dK*Z?&BIW?2c*>8=C!YI87Fc|&P) z9=HK|--^!*JjBezB-^pf8TF9M#zIulUWigom`%+}97*z8b=#u2>zZg9c)bE}OBJ>J z;r;+fV3cF9k_dvi0kat%hx;_nv6?ap!ym_xsb-`3c=UCs&NntTc89>DK`x*z!8j`# z^?eD91Ypf}4q^!!K2sbI3PN*RD{T8^P} zee5YzJp=GK!^nV@WPSGRkp6M@AfL9iil$z#4{lUE#%ZxflKV2RE&}XuEwnJS1IEv@ zgC{?*l3D?+<8}QmdpH8ic?{G!A~LeQOrzxvV=j>qj%G;I4)vZF8Cel1jqpg+@^nN! zIzs_J#td4l{?fNbR!Gh;OcRXL=yXG73>FI<0+neqhg0umY^f_|GMT6&&RC!^BB5R? zS{Z_=Gq29SRf`$xWRQ~Z%pIu3r9F`3lLlQMB|U6bS5re<>wR?jSu|cr(Lf5(8TbOe zTuiIigE&7(#laAQ|K2k6(ERkMw6bkh6gc$U(BB_{yTQMq8oY}>ou6$A2DdX<-H^z^ zX&jck?%Cl;RXR|R5i&^n6(Fyyoc{fn9)@P}bl3IGOaN7^7RT2*YNy8csQCvr+Xz;S z3K(@1t${u#flCt{29zKULJgyxP1;0aOKDt6N(4~^V-CiOT&jJjj(T}0(U6;* z1!i5@3OkvNBhAI3)7RjB^;8|+lF#Kp)$Dy}4x;CZpX-Zb6%V8&N{=;CEf>dc8AYKr zqy|k2)w023#Lh?*a9E|;=pYDX4@_y#C_a~ER-a;k1O3bjS=8edDS}&rragYT&D9Kt z;}VIvNz>>!f1+&NCvTXUpk4`VqN_+x$1AOun?wV)jst^I@MXWn3vfGBJZPhushC~^ zFc+0L%Gsq`Az7l)J_Y)cOJCqcl3&r@nsbwcwGD-i#m!dR(zgN^2>*xHT%kQc&HIRU u;s*z0-sA*|N`YfSU%l%8&Ho^XUluO?fwv)$cl!haKjx+uCRsn8zxH2Tr^Gz~ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..49f39e3063e2dbd97a732fbca21c00008f535bdf GIT binary patch literal 11984 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a7f8cd2d1182d4e8576a7c466b60d7d5416ef09a GIT binary patch literal 9600 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9701644c1f751353c64c58a06f78bd3576df294b GIT binary patch literal 14228 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 nsw-KT~eV#S!Im1)5b_d56Dtohv`E3 zcaY(i;j9?@ro)F17msB|8gaT?BNF3eFh&!Q87=}KxL7UnBPHwux}Cc*{5g!Pch$nB zwf8~&ME-`ZDwI_#MnIOSPo@>!p(}(g20C<}G^5&)$)=9~-peY}}h|3?d zO#Q2E|uchSE?QgKDQXuiF2nd!5q#%0Nm|lt(bii)JD0#d%&01Kj%S1<-T~)pl~Mn zu9U8i?Am17Ol8u$BhAtlHpu3TfWdeVc}y`xrz0Ik+?jWI5a!#I`dmwN=JS(S;I@4^ z0HaP2$#j!jjZ$rLb8{P^F2fq^>qtf`ZUKY0#73thx!anjDD;f}aCU!=As^!Bl_<pWH>>>Bv)-OWumUoXP{mN#gnvRA+nE+Y3lyNeIN zABBQ+!r&8_7c6VcZmRw4V?7YTnLpL7eNX|Bwl`X{o;4h2D+%T5fMSt0o1G%lnzBFLq6rv zSIW}Bn6{{T4yIMCjOU^d7f6NENAEs#!O|3lD|>zd0FZ?6gpgad(#0CPYpRogQf zkP0*jlQ+#Yp+>9@{UWGJte7rWLfyJ%zD=Q7WDp_@xt3v#-SX3Rc*GY(=31&^?YG-6Eq_B>tEd6AzQ=3#h|D=^m zz@?`VUMeu^;$ov_R#x#@$D^n_z)XVGkJ=h8d&nuw)px z4($Dqp#9R15O&EYLP83e+IurL6Cy2C?V_m)dPRv|e1P&jx2&NXnl|lz3eC!4B=p9m z3kZT+pUE}z>V*k1(gO#gAR<qd9W-#ib?cToDEd;U z;MB11hOlHW=qXVCqOe_Y=-p05K*820HT<5mlFc$8c{^v0h+xHc-6wF0ALW0=Ee{WEk9;``&=&%*!;s+($_$|f44|oY zcBFCb5+O#ddg(E3yswOay8CIUR&jL)tlw0R7Fxg-Jg!>!x6|lUOTT8t3_(@I!HGqb zE1u4^gv;eb=Khn7z&b;ehzZKjJyU7Dk%WD^7PI)4exG+jsE%4{^=iwL22Tj$Bc*lA z?DJs3WEVD?o=+4~rBQ%dSy@TOL`GnL&6U)Y9NYK$`Br1=ns>sOeL()v+og`yKr}N% z!|?EFAQqRUW3-#}Hv9MvtlNZ~j8*#?LB2PE8128oW0Wr-q}8iZq@ueF|B(VQJ8>3U J@Z;5A{tcx{u`>Vw literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.post_extract_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fb2b5e34a6e8126ed5562c4fdec482c7cd733fcb GIT binary patch literal 12019 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 UY?eO*jYFxcT)t4KeB<7K0K8o;Hvj+t literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..19e975f3e948a90a5df82d40a2babf08cf54ddfe GIT binary patch literal 11945 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 RVPJG9w2Ic{f{Rx7{sm@l1r-1Q literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a727eee1d65439d327ced697d4d3d63f9586d110 GIT binary patch literal 16132 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�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%0D4c^R_0jMY$K=T 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 RcQ|{BvXa_?r0-5#_<#Ptt0e#c literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..64676c0cadbbe62cd83648332ef855ed6f8aefbc GIT binary patch literal 8390 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.0.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..aaaec35c69cd9e54af003bc8af3613d935c7b2a4 GIT binary patch literal 13120 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..535fd2e543684ecef345f1f19b2938ed98d5804c GIT binary patch literal 8463 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.output_layer.1.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fb47be7728b01c61ecdb9a0c899cf9bb59c84576 GIT binary patch literal 16060 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..d094123da4abafe630760a1703831622e916c6d4 GIT binary patch literal 9137 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 R75EzpEw6SX`v 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..274fe7b7b6454cebfb6a1b459d8139f7f76b695e GIT binary patch literal 8688 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 TXA6IQft)ooHOT+^`yc-U8Ej$q literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.decoder_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..01fa4c5e03c82aab8c3c94b0b433a8c996ea6cc8 GIT binary patch literal 11778 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..cf28c007fdbda46c490b66591dcb55fa2e8a4698 GIT binary patch literal 8258 zcmeHMXH-*ZyFKVQb}=G|v@ocnNE4MNO-G7~iinCBiV`Ub0--}7SY{Myu~C%fhzd#* z6he=VKoB$tN{K+i5FtQ-5K00B!hMe4+`HymYu5cU_s9L#nzi7t5>8Iu_bL0?d%ri2 z9kpD<&|uAgd1^FguPQi!LLGM9;GC;T@gkuCMUNAi(@|fUS>PK=3&~SLDdK0ADYk z0Iv%!%0aGv{ug|_cWLTs?owCw2ng`?-=n2<>3?p}^zn1oYMQE^f`=^kJz(#TAd=_M zUx{qftP2Q&EjVbl??g!INO$C|&wUZE`Ayvf)2qIhCE~H^Ob-%bQ?~4v)X&L}H(c<% z;5D)eW05R>P2Y=LZ;kM|?LAkWpotwjM>uPLU@!+ZAYn40r zdxm>gy8p`jK{$d{)T{EnW&68~AhgOYs4hYv8aBys7BY=0i0fVL6PF;!yKQvgA_N)0 zEn15xYyWfka}4Ikt1eI2+u7Mw&JN{h`}Vxvwtahp&=0xnR9~dd3}MH~>RddrenVE- zh942uH9O}Bo##0@6IH8_9>)%fkF!HSv-ymZh10Uv!m~ZEuVDC*TaUTAx~AJLMkXzY zMB)iMI}Ry6>i|-{)Q38Pv$t1;>NC1KPNTGhv*i)xbALM*Iq#37Z7*rEnJ&|^rN{R^YQ*$0cN8trK9EC-lr+vvw0QQ5rk85b=hk=o!(J$3HQ0Z zol_Sb6O&n8ZBpXJXkn-36jbjixzw4svf7v^sJXsczE^T#OwxKrUr|x9naO01EJA#% z2a|Y9QkUOYqZlo<^{Cm&lP4+s=g*&al=-`p{oURtW6=Mw=DS&O>W#g56lOGaI)?AM*R1KOD7^6LX{nG&Wcw@#eDET{2tN}$zfCD}j$g`2CmuC$ zZ+>J>_*#Fv%av6f5mD-bT;7$b9E89($ZgrOrMa!G?NVi4o`yxNY%@F6kXO0OyLzU7 zx{G770fVt~Aebu{hwb*RnrfRKvZKn?)^4Q`LPJCEB_(CdY(B3$Q(Ixgx^di?f%g^U7;eF z7muzI-cMY)54rr)i5(L95wnx}A!BFN?Ta>_!QnDXN_2I-yOKpN2du2DD2mkDm<^UT zHa6-`mHJMheF?I>UVQZEkqVl69L3vs zgnvU48y`B+Ut52BQ)XqQk;&w*lC{ufvmV6=GSjTZTB&c__6Iol^))0Lh5Dh@g@Qvx z&`9*}Z*OD-guA=DhtGb>h=*4+$;j!qXt~WneMi5!wp2LZD}l@&d-L5{TU*=r_jhfT zlao_XLE(Wv%_h@^T65U(hNJp})2%snG;RS^DMimGzNMulDk}Tgv%$tKi;=J9`zn`o zF&G;=OD@IC&dzq7CJ+b!6tqMQTv+M^8@r%CG&JPGtPHg|c~UybnH1VZ9>{_f&0NgrnWft*r_2M1JiCJanDSsZ(w2)ba6gXushg2}GZ@-VCuY z+pVixcTLhnmNh>bjHksbY6p*Y>4!~vjN;zBbo&quU)&d;VHoUPDW2sPo_%vQ1Rlrc z)39U+t6u+yl%#?zfU2!4daaZ(7jtk>)EeamoEMqV2{JiEwues-$4qeB)Y03)3g8ng#~=<_oIu(nV1&Wd24 zE|O@3@Ij}2viT6qq@1&hUOaoI+W-E(6igs(@2=9*Wqz)cJeKLH0;h-ugRMtXqweo= zuX7CUmQHdCyMWCH77_`?ZD?qShbFgicFvGj)6|TIX74C+ZB*rSM+m#M!>7ke`x0?s zQ~x&lRihB2fPrJF`UDji`Q>qTCr_GtdU}%m#eL4=Ex=TGHBjpvT-u+zl4Q;O9;v?p zyd!uhPLCOt;!|y)6h8Jwc29su0Y~G^t8MWL26rlkJ1IQ%{B=mr@W3~M@fR%&zy(`S z6^wSve|mbPF)lDL(A><7N}6|R&vzs+T$9pv7XYj_G&VMk4FM3I+Bb|OCM4AUyj<#0 zS($-eTWhN{40;xH;3324O>SUXwaE?me+oQb_?r zXwgUZ{;Hacq?$y8DHw(9NL0692WVr1!^z9*dB2a)e*EOgmgtz3E^nof9%HyMHY(XP zlJq{qluGN=z4RsEOPQqU+}M5RwNMrHiL%IEm+zGSx%}-Itk{m&<(|gq=;#2c!ra|z z9iNAzq>pzj#fI<5FYA9GyYu{kRU3D19^!JXiAIpaZOMoO&~FsRTb@{<995e%H=VpE z@S=jg??W0}@6wm`dffrGMpK_{3tbx%v-9)gx%m~EC|NUcGC=mSwkIQA7cWK|`1hOb z-@iXrUQhE>zQe|Ok&p~iSQs+*K*zIpB4Z)^b6Z2SkXoa- zXFb~c(5K#PAnAqv9J*6C?YCc6;y-8GbgPW(1^#K=R^WCZdzDa5P7Gv42y4p&xxKe7 zm2O5yN82hTbKBA@7Q`ZUI&t)7oV;EgFo;Ml8_2pP z=v2x|JM$T4+x^qsSG5 z;p;_C=oOxScjt6P&?Qu-0aTfpt&-iL{QWA~TNI82;#(qp7&)3@V!TGlNY*M*{U#`i z?7X}<`2PNCSs+I1YHO*?vAGJWsA6DvIM!73(v%xyib6AWHitUY_yjid4D?u36iidv z+{^^A@)AH(cRsJXLO86o4Czrgu{HyE@I&F>F5Q0~@COF|bq@=sv2#63wLyWRGgd9X zR7KaTW<~ROMF;LY#N#T%r>j;%HpMAMx=@U4}?!g^lCLI zUF(`m7s6p4uO_@*tye=`5K)Ev26UGE8>x2bDkY%&bAUyS%yp_Nr?IL0IG-Bcf|y53 zs-AozYZ&C!<={0j<(zD>5Yw6wxYoh7GVdDwX8mX_)R*5E-L8`Gg` ztpI3(MIuYm*9J7$wbWhQ%*3Jh(ucO(AYL>4T122-=a+v z3@7UoTn<0jt(piXjU`zr?)vrXQBlb{o~KZr3=&5MgIOt~9_3k3rK=RubEOnWIUYzF zA97jy{AAAf%x(msmqR%Xe#)YO;KIMVv!(gV7dZ%OA%R`jwZZtznKO?{r`zSz!Ga6S zb*#{p(Q;C7o@ub_y@s7TizbyY)0f2Is*WuHw$WgwScf$#&PIRRpP#O@t7_y@IYfEi z68^@$2oh$EEJ8M0{OfY(XK+;7a6WN>^*aEWdx5Id3-2hSBS4QCfz>?N)*gym3GEt>KmsoUbvsYKCwi0Rj_mJU2n#+QC9$gWb49yo7 zM&0#0t3}_{aRsmGw^5S27z`oSq|@QJK}-+70Ksn!{%74FSt0raUlE3K;a zpoc!p&pxXn3j2fiO@5h~e1JkOI?bTGOf2FR?(_P5^XnfbF~cW546k&a{s~(8MJ`ah zl%1}JN&>lUT_e`UQzv9F3{cTUIr-(=)ig9dq=yYX%dM(1PSM6&w1F+=RTG7=2SFS( zQrzwa=^fw`f=0e1n46Wr0=(Ja&@i4PIXwUmx(f2mh~2oW2qdhVw6rv1sma(Cuc@I{ zV^tTYWS#QHbQgwf$sj>M5-MrG(k5lDO2goFf!h_xX0;`i2~ zcI~KOA##nle~LoW7gi><--AIn+~_R!qZBS)y5>A^{YLR%hFG<+NF4`mqTq^TxU!m- zR?~G!Y*j5`z4LZmGKtB={|P@C}?!;czL& zqT!c}MlEWpF*F>59685U;&I1*f6M3&W~DiT=gbh#i(aBT1$VPvMTI!<>kU7ADv{pq zuh}Tp8bb%M#_1Qzo!}k{s(2AvTmaOPi>=Sq8;gdE+npLg*W7JwZFLn1c}?g_y|`_8 z_GaIf=?w`Wh8~#_P^f8+;r!Y%(`D!F6C=1dRzn=RF8hNA50*fpy?D$jhG3-gr4KmS zf5bB(G0_bQ^u4YRGu2qw<<9^nQG~jmkOwgSP7A)?wRXeYzSLc=(@Bkt44NMMJvTpJ zGX*@?l1NA{Gz|miQx)j8u!TUEx;)tsxgd;mfAZuB1K6A&9uS_9ZIf9f;!#Z-i<}pB zkS3cg{b_*S-|mqlja}>N00ZYGL?=UVgWpaSPYo9}YBoA9d{BG1uxhkgx^!>YH zGbIdT6WOSRD|+aY#^ZEBTvEUrF6oq<{bl6_H?)f!onM^YM{%qML&hK`YIuf|!JA^= z!tw+7o7i z(fGqtOfMwy0t|Z}ze(CVkbr8hc&w?C?bE~W;vjb_qsw;r{@twkXj^TY0VNCJQIleMK;4a#?)=j2Cg5vs=UFp7CI z27cbEKl_j3v7*!KrKS7w+gn>}(M{9==_7F+R(yJK?rm>5H$O(lvkjgB1*m{4@wy2* z*TSqO%XEIQ^y?j~-WDsZI86Ha* z#IMfL_stUCj0srDn2g!aSuP`AiZPf%D4(vC=gn%cb8oOUsOeNXQqtMmYUdos5>>Hc zI(?|~#-^H_tsDi;T~uYGhMYcWE(8Vs{LorfkP0(73?FK1u%6V$Q#1vji7!}Ef1V{vc)R%)vMj<5dub62Y6JywHuu0 z^2i`3-lOLNz|FUS8!d$fxuV+y@G;q#7!=MUvSRuglV~usn9cs%H8hH){MV>KOz*p= z4+hN-W@W^qRcLekcng~k1RH~)H%^@Jake#?xZhL*QQHVI)o4&s4zobXv~zaG3R#hn zbDh+A+;De=9@uypY2#vM7&k9uw2b4|9z60z8Z|cy@w9ZmqxSaqC)5cX8t;%YPqVb= zYBKm+;e%Gr(dgjPte);IMTve#A)e5vK}q#vzP_>;b=1p3-``8r#tJY1J_m~ETO!&h)zXqiW3N@oSa23Ac@exARCAbbaD;l3*7o@L z@RP~+oOovSQwOMvZ&WZXn7I+4Au7eYTs628Pd1hTK5-L;Jni%Kw>n;&+aC}Zm?qe? z3Q&Omi&pp#)iWP_EKqYoJU7EHBuC_S(v-u_aCbEsNfCvkaT1HauYmzBTU#sm`FJl? zw<-t~USN>O>aoK89RgcV7Q$`Q@2pAVxVO*1;sIvUOBN51AHi`AdcFgF9|tVp6J1{4 z_bhrQK!O>ZI=S^LC@Yj(I>3D9^U0A$hYlTbffnNp%)pKpqs+(*I6?SiCN{#-e^8zy zGSGu#i|LGonGEzm<9&*r7HSz%Aib(&9-LN%Po%J7Q7TM^_}98aiF{(3auS2bAMAuG zoUYX(VcH%1k2s(p%m-FPBan%JflZxYpHI=xL4xSxFI1+=XDjp2P2G z2Ev=x;VR&R&KKiSPl99OixQE^jr*9|J`(-Pmq>j;xh#RKV_PZz|2d_cah@3R WpzTyY16&kA4w@e|%m3-@)&BxVEJ2I_ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..d62c4465060ed8043874b2aafc4d152288323d2f GIT binary patch literal 8692 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 R!kAGyXADl~p1gef{{U1>Cb<9r literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..65a8212eb260a8856ca32fdedbafc909dddd9a57 GIT binary patch literal 11091 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 XCd_+<6_IpcdnmM~?u7#N8~6VY)6Ou# literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..17b5e163cfe5bccb1fbd20d7b4ee723083366193 GIT binary patch literal 8680 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.encoder_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f5b6096d81121a8de0edb47dcb4174aa4ffd29e8 GIT binary patch literal 10531 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..ff53b81fd1b9984195375313528c7ec048ae80e4 GIT binary patch literal 11930 zcmeHtcUV*Dx^L`VR79{)RKN-uq$nLlRFon}QCdWXPUyV_#sVru=^c>{LO`hkiDd+p z5_*6TI#NOrNPy6C-sPTq_MUsr-RImpv!DCi`^+B^m1M1z?|a|h`zzn$n`&2gZ9lXf zg+lF8zIIs?g<9{2LapoDx*7gQys3K#en>hi-FCiZXXfl?>}ZNoHFmbQv2(VuyvOHi z>gZ%?XDcc!AuM{9&%)W+-bo6L#{T;ogzX&7(If_e0Tn55$DTN#NpGrGRdY!qCXi2_{LT7&%fvbSy9QFOb)d_t+F$lwIu2}!{% zx?4_(X>L5UkK)Px^yU5(&hpsnUU46WauPVp4NUBFZrwY^?;db`zj(R*ht1Dwg$=JS zJ}0gA7q|*MzPYVpX3o2A!k#&`yi6rUFH3kVslNV|%OnV%?rw0$H8lK0kvZ3Gg?}Dg zzXyeScWxse3gu_IRRMlcyT=dyj5>;1heDlIM6E}mZa+e8M4<|H{`CRAf3`}3a?Lxq zKEJJ~aG{TC?BbTv5)l!3ZnPVPDqCO8l_=+ zZSREiOHK+2sqPL?EH5v&va%X?BD{U8$9_UB;$wefYxb>TYjS?U2*z_vfa*#juPf5W zt?uN*5L5eh_mw-16xsF4c~tc@mUML7_NX!v7ZanGsVgcfc2x2Y4-Ye>aOuK^TdO`{ zbakWG`zv&8fQ5hY*d3K5(P2gFWVS4L|6^vJN4vg~NaXoRO0nCt5tjN^+_~;n zrdoDYmEqM;o=ARfDd%g=C*0Vmwr(fa8WJQ^IgQ+pPDD#x3FXOynxHXt;m-Ed%SxyN z2M&z?`k4LnnKR*}ky~bF8CKTTip0^To}T=U4s|;n`0y=lZSB)SLTz2e){)PjrzA?d zS$&N-l@hCKj>qA*q^9}UaRK;}r=jX>c*x6H8mlrUuL2t}S zR%6ZS2prj#^>40El-7mnCeIcju%q@Tzz&V(%UbRw6Isi|T);!(GIiP+MuN{WrI+w+ z1ZhLndqE3`@9!jGfZ>a-@Q)8Z7KoU z<^-O6xa+{-!)Ng1+((Zd@hn(cSZs}tPOGe}G#c@G4QQ1pkCU6Y02tr8I5UVJzW|H2 zK@}#2{p^skVWqpqmoHz8DdFMaF5mm!|G*^KhGlQU8DGO>QYOH`uEP=&PeNPT+R~x> z8*BU(`kr9e5Fmzb?^DqHJ78V$REA6I3Jt8gVAXo^)2B~{^OVxxqfn_yg0!1jVq&7M zcY?Te`{(I}0G_KMN6H7tfRlj-0P6l5_>=Ursi|e-i;KoJlFp;gx+oMcS+#rjUM8rS z|Aw}UB-C|HW#z|Do;-<2Ow3D2ID+ji(|CXP=F<7!&JM?k znukc(bi7zu@y7NN480bn+S>E<6>DT%#v|b32sKbn{xy;QB~iYVA{1Sl4igM8&f?d= zy^d0edL=foGCU-X)y+QvD^uX$SaQ=@BGb4}T$eRk+n=3u$_?2Orcuo}7@GFyK=7R2- zn25Vg8MwH(oI<13DUCOk}n zzJC2G<~ng(KtSLNjWPbc|D&-eZt)|pGi!Chx;0A!iXcwbtHcPm%CPpeh1)gppI&cY z6T*G^)F}-ZCUNoc;@B=R*v>KNKiP)q&No-*Mo7924ut>-S~qXL_~n=N+!yTm#NPO> zdSbhZlp`Y}t!!*spB+_p$#@Oxx7RkdJbSZ05*!fm>p;Ik|S7o>VkSIsiLSA84c zp3nE01Oauu4BsR}JvqNV{``$F;I)x)aXG-*EE(f%(e<1M4xHxNnUj$rScI((I{3A& zPRrCZJxJubvU1b$P??vJXLPTJ0qTT>hZh6uf@`RsP)}+dZAxWSAGRCK#jNJ=j{*3> z7tYDe4JXr9yIr=dUsrA*%v|-AOl+{8(OrjH6t&F71k?BJxrkLCTBvnkE^%*iLy;1t zGkuolA8yjMv3XT#ggo?$dPP) zyDDwsQX78%&do0UA2tDZaXKVw7WDe{Yfo=#e!lRg_5KBb%2h9U&VQjbs1*QNr?6OQA`PXSex360o@( z_!OZmaLfOSe=R2v>E;+w*gPFo)!-7l-uydn%*H~bry5DPH76*nv1sCoX(&EECgx;j z%fWfrP%evOJbv4@ZG+;|^zrer(1&3&PNNOaxO;Zj49+~LzoBVpXlNlPD{E+5Ds3aU zXKPkrp@^8%x4MJM$t#up$xnlWwcXqnIORovl$_+?9ouy6k7A;L&+MGf8J$;+gQ4>I zK|wpyGc&EJZ(X2%G%jBBPg6hUxcI&Q^y$-@ckaZ7g@w^ctQC?K7OU;+%UWp%?yevf z_yl$K?Ag}G>?gEzbOd3()YYi~yMN^SIJK%uc0!F>7b^| z>s_1dg+3{wErTXP*>fv>T1M^GstnzOqN97ZG}>0O-DN$7Q2}zfZ|T?{*UpIe^6Qxi zeL=}1uI+UO5&1)P{a=^s?6CEyK%;+X%d4K-P)pm~{)DgGy0I@xNIxPfN-*GKN_V#b zC|-sn#?UYicKB<*y~TKIHgIj-j=5?s05!{rj>7BLuZNLoZT%ku(9#XLctQ?*3L3x? zshpE1%c3$j0oihSc?{(?(UB4swl6X|I=8(1PD_UBEhD3(5MKG7!IdOgFEQMjHwPzY zF7!0WNcdzUXvIsSG%}u?p&GAs=T3HY^_5)*&t3NL@R0JFx3Tzkp2!U5@&0~MNU!MH zbmd$KLilL@TX;qn=HQlrX<)WIrXO>3auWAha>n*l-U(}^QuA6{wLmhfM+& zr}C~|144vr`aQRE4k7@vW5n^YZ@5ZfXFfMtPku36ws|k;j9v2!%fgP9||m3_6xa#K#|wv$VBszsl>A1`^e0_zb40 zqtJv=Z|5sIAv|D?P>4NSAIL&aY>orS0!`^MGoU1J;zR&eT}>^DG(vOWO(u~?R?_8{ zBn2KkN0VcSoW4ge{f1=M=pOr;7b zFZHwGvOq7x65Sxlvnm0FwG0iZgL2mGub%f#v&n{lg(4fh6IxUCvJC2K@S*gwvI{QG z&JVEDqodC#lT!}7r4;Jl9^;_2>nncC*`Y5fBkb(#E-k9(K_FJukU_sjw2bZaf-kdE z?7zVtg~gJSl7ves+!E|tH@0?kaK(KAdmW)or% zJxhZ!2tCOes6IW}Pz>U_<&g{-N=D8&$I=cgoi_Hy%tDlyWGh&lle6dE)ls|R;ye>j8 zfa2hLzW}>5FxLQSy8+a0;M%WV1xK5a+WfO|^Zz@OQiI)3zr;pEPcIIXEdUA#!qyRQ z7nfo|wS<#^lh8U=Jycqhke(Ei~k)W-)tJ-x1`wwscakZ=}YY*0=v z8Bb!~z|D)B1U2=pQhUcLdROybzj=eV$b+TczHz-Vs98UML4@>?rd|0Pg$R(X{IFh|71WGybbQypuC!qO%tY~V_a#kc>6e39lm zV9OBJ)j(RK-eJ5VX!*;<;zQ9Mcz!u`dHDchb3%o`uY+Ol3L}pU`1=s z3rmZM;mW&RcqvqVt?b;na}h~N`7X5fQvw3W>RyCkZeHMMzljwY3Uh>`Ih)dQS$~ZZS6=HFU78tdZs`B zY%$W1714pSVcBCraBg*n765EQBAVjol5spYSrARK+e zmq^4AxD!g2+N^z5b{+xs0W`gz@ivx&Ig({UKqTGD7L< z(lRi31ui?HYQDwW>A+kA1R$e-xM)IuHnDrfKi2pD{`k~XJ3v#WTd$8U;+6pCfMV*R zIsWUUF}}t{2IllqCT{73&tiXoZqbwiA76B>0I?UH+2T>0xmpe>jAwo5WB=62$1B&+ z{??6-2KNJt*4}PjUZyQ5?3t1FgGz4!H9y4gRHT5zGtBU8Yiw*Bl-spym+@Q}h=0yF zJ1jPmG_oV!q1*s`(@925^NHsd?)@5wc9a5wqJaj2a^Zgxzf$hs?}jcfLclQMBZnDf z-k^BKGhZ$A;xGujC3%i#8ProkYerH6gnj5$x;x;V{tklU zE(QXiw~P1AppJ-JMGOoKv^F*EEvZUPRkSUwsPXBxbxWR$UaJf<;en_O!&)MXgVhC= zele*S1n(7JqCEYA5fF+9^7EerdI%vy3YJQx=HT(sHG^XgyrDJh5@=;$ zswqsUq;l$1L97Dbi|Xp?0ux_))77_g4bmVd(npeUMumkwEEj%3!LMV^kACB{tet-- zgy?DHuKcHfCl^fI#x6LD1XLh%F44v&8;--eL|@d}c-PoCMJ?e%%InwXnBH=xW@b4h zB@*--M+2`Wwilkv+ z8iG^tjQ)lDBeHYTL>9rea;Ca~arwRUAnZInKFgi=o&S@Cb(e7ivK@OYp|-?&wiK`~ zub3mk&faIQAH40aQ20Md!v6?C+Z`_nzVLywxA`(#vW-7J$}TIrjawPy#WTzQ2aV#E zcFls33x=N+=&&No7R1FHtO;GXKr|=u)F;bhKnhw}S|X+ia5d+?cm9oaOAK1EWs4wi zt{h066d&!>0J+#Fp4!=DYY9pu!AF|C6)^6B)3ngqcDB<2#utS%-6EEl-TSFY5Ei2bs&pO5R6JErr0 znO-;}DS3xdf^7lwncm|yji@cp<;l{>#6%%wsKz!7i-DoxSPQtwu&~*3+U||(fgC{y z33ecP0DnxSYg`x46cMp6l6}rQCSboyFT{G!^L7mRE)KWKvvuHjm7mi{gJmzlNAHc9 zs)hdVjlhdAE{rL_O^cjH)RZ-?t#iHQk}HkuMm@lAM~nqAF$>VsRu&eG1;!sQ&745^ za$#X1;**vV7X58mTTBn2@LbDa8ET-1p)Z=kqUK*25Xz zj}AG!Y2n>5;Ct@>GyrLwi!Nb^gV2vD7#SQK6bI04tTTu3a`dYFQj;kKA}lXy**^5Q zF0L_-cdkFMov>LwSq?ISHX?doI!NISU*g2AKTOHEy1CInGXIvRA1ix}P6j{&bAemZ z@z*ZOT;N%FxI^T-ERpI_a9DNegGLw~;D#EhS565Ft3iljOp%t78gi}h>aLk|T|kUY zpuxf1(h@d;qN1W=bDfxTMgarWuING%UMMUVFf@V1{P%$ zlY)X*fXRo_!%&HmPFJ8&B3s4~2?)gZcon}vivPT%DNyn2s;b)1IKbh##)kQ}@9`_R z1lDH>mXZ+{cL;DtHXm9A|WBp(%r}uczsZK)T0C_|UYqgiPD=_BWyQPGE zTQ}0d+MzXFix5LGufw^61%akKpLOgg+5GvxH7W>5rdl=Y z>jKZrS55nn($dmmApMR7`byrcHNr z2en9{F21U zOn41xxv1~TVk2%Vmr30llHB30`FV<6JotTZBEu8}p$a$}%ubSTJ54VMx8@;g(a0B` zn1}@)WCA9dH5{6$gJd9Bq#A6l>dN^p>nmZFR#xYrs6`=6t{$9;`Sg@C-lQfZ7J2R9 z6gHp``7g_^-=jMeid#wjQCBmcI29>CxXd**HIZ=}ERyUi(o^naZUNy*%*FegW5>tG z8%rQu5Ox3FCr9LxpQ{u71`=ks&q}AX*aFop`A(5V69=9ZYo1g-LHsNb8;$X0J_+@w zS--$IA@vz9sJeam5^FRyG!7h+hjK;)Z;uW`LVLT;@h?S1MFul8zH@8Mq*KvT^Hrdd zQ?RgVGE1YW)m$dNbMd`gP=o9J-*My(Hggk7dpyq+O;#=Rh=!?{n52qS$3#U%)lSVa zT&^B*?Tc2hS3*y@rIH zM1(2DfKE1Ij!*&O*pBHL_La%_YrQSyp&5^I-?r% z)5Y^t=WxV!uUZ^c$a(}5HkCU!6 z$Z<5m6yQhbGJTt77=c-DH;!8y!O>TzaTvr^LO>V{_t_mp;mv~ik~{f#95~xZT%!@k zSD15Pgf_#t6^9U4xw$b#v8}uN6{1HF07KGTNKbo?Z6zOp26UXOKY!-v(ThaZ>NJ!G zOq0@HUwtr=rd){ewr`d1Z{F1mt;5~*ZDE-aAivV@gmHTR%cibElK}8}=r9kgfR`AP zLV0BMz-004f5=(nFn9%24VKjZNnJ?gVc!{|a(Gg=Nx2F`5Nc;af)|jKo1NVRgFOrHGiiND z&btiseEQVXlpOAXF{~=WZY8i?X<)L+u6+L(Ct`A?BlIG@s2yS-$OXs1jcN?sdwl=l zTG^xV-&t6L!V^jEmtd~8-Di`_lAbD4MBsF7PM$UA^l=R4OH|EZ6EqugiUzV-OITOP z7Ja79!?{i>;IijPqMPtCdI%U(9!OcJkqW|mF&-gjlu|ol&Rl1K@qNIL2ngKq-os~f zi_!U^{=W6dVH4a^OL9bbcq&X8D>!cgewH$RZf0f%$U}IN*OVlfu%m0s)6;W{fx^0T zlBQ5z$nEHDcwcSUJvJ<_giVYQawOA*Y#1kI83y(SgN9-0l~P^x@im8FNb>m5HDtfP z+W>4c3OOM)*-@BEB4dErgGxud++ZkA5TUwmuerYe?Ie?*A&3GbynypPbdM8T%5;u7 z)Kfi162W{PN~T^Sc9me`bza?mPue<=Gb41DUJ(^_fLq4>CS)MM`j=pGoK^0oDiHhQ zHuw?t`jrWTvv3MIuJ^apx*3Vhfxjww-dWr?2=D2EivS&}{eFWFe*C{7OzT)1bZ7lM VR?GAg;h9m&N@|z$FWvp+-vA$Y_yGU_ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..d62c4465060ed8043874b2aafc4d152288323d2f GIT binary patch literal 8692 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..bd377cf2fbcefcbc33a3683cbb2c8cafda3ea202 GIT binary patch literal 11391 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 AxBvhE literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..e7ed4c31b3730c0c15983fd96e10a68550793cc2 GIT binary patch literal 8687 zcmeHNcT`j9wm)EDY#>7&kYX$-AVsB@;D{iD;vfRjl?X^Lp|{}ZXy{fz>Ig$o+R%Gq zfuK|sq)L%0HG~>S2yY+ndvDEM>#n)?{rCPD*5c?2c+UCuxA(7ohW~7!yKlG9ZUjO0 z>7CcUj3De`2*Nh}-A?#K;lt-K_(R3}+*NNQcYANY>t1%q#p~W4F7Dngj<({yc3yZ# zcehhAiZZ99#cz6hd*D@NWnKUG7i8SM9Aw*9NGouYT^{Gn@Cd?n9sOp@!Dc%m$U#dz z?K4;WljjBq_d8cY=rjR84?hfcp9gc{agJkH&i>!-KN3=?JD+c7>+C?3do35SZ~XEY z<^1{k&ZRa*23i+>{7L@INuKXcE2{orC-+mPUeocW*wb@}$*tjIenkElE%k-@rOiX5 zSpuBDG!48aiN!um@f>0VP)VlPd5r+-{DE3Gx2rQlH&(rHC!#D89UX0GX!wAkl8RxY zAFN#~caIg-*e;GF<1Vx4CW-FB+mOQ-5O(CS&R<@#uCXscZyB*-1y$$3C9Mb#%l zBGrF{tF8Bs>t~}5sGR&sUw^c?StgQC%A}N`%7!fF!#{cZ;E;SUec@{HjdzYB(zU<5A;oX-hl-)lAob1Vj=9>)NElNxfxLVEuCN)$^+J35Ko3Q%8ue^x$}NnbTTif9e;wQvqIj7?1ijE#-+DU?_-F&`hF z0CR3=wqpq*FV}KOB+aJgW{c=2@$tGi9F94mL=InSQ={Hdxp?v7htAH&HG@4pJ@Yf$ z5#^4D18huje(9_GHG)=KtRy8R7wZlqVQVLPMP9Nt8M{|Uhhhlp@r3Z+5{F6LI)aE~UGqh30;e)7=c{MDx`%>t zeWyF07uhyM^i;Up$m~3X(cJhDOEJ2n!B^tY9&=ADR2gj@dYc~!Z?d^t(4Cyw+V4K> zBj;ny(SPaH_TjQ_Yhkmvl;zcOR$Q!eVVz>R+dyATE<2*k;BB#Zi6F_MY~LaG1^>SM zn;Inivis!`{kZz!SGP0r@}wy-BEm_EuBzj-NCDZHSORm@b1-1?9DKE;YN)|qQ#j2} zAX=fk7mxz8lA}&ePU+?4isdf7-@m!X6-yg!Y=mCyR}cO4!k9KLOHgrgcE&MQ=V$}e zP^GRsGaj4uCR0`aap;KLYwR8$($C3Mh;1HA4V->nNhL81R2^RZvf~4^^yf?f#%-p15f6Lb zdd_QUnjz_xmC8awLgvv*r%!8du{QgY@$DLG_4yTpLMZTPYg>9Y@Oh5CeNZ_Xqc)Oj zv+2akm(oM|r>Xu9NyhKC<@n?G-w*3V3-Qf#7q&;2m6q0TtjuH-7Z>x+U7$7oMIx zvU8sh?;d_>B9XX@=V*QUxyX@6Y0Mi@B5I1(0pm|9CsTuLU*FkPwSPNuOnV1U7>|TO zl+sY}sfqS9v6Yn-dE0v8)e1MO`N)F+v94vKO74TTUpt>0wInIYTEmup?XPf0k()KN z#UQK)f)o)+zs4?yNw2O}eUY2nU+enj?!Np2zxmH-FJ+XMmv1xKiFm9YBenx8cx(V) zXxaXK`FAzgEs4ZSn|*(qgDVCaLr~4v#ig%w>T#o(y1$%#Tk;RvcJ3tt^wTr28yQz? zd|f&6`4Mrf>SPd`LsO!Hb9z?RQFJpOcjc(o)g zI&^cR0T-*me|zV?2%F7m(+|0(g)uhjh!%%r0%BQu)9^x?rbgDqBz|sg{dk$^?9@QX zI9VG}8`fg{CFRid#c|qdzk4IheFprPn_J$0VK~O}B%)=_TW|5QF-9b^HAzVqsMIYl zC+8RpdwM}ZL8}UuMT>=QKZ!15e009>-|*l$23hTl>jBARwT#ySqZgp}W9})`N>ZhsWddtZEeJt0q&gR(f1#zQHoz=!yM# zhDV|_xsb4!pZBxT&y<#yYLi1ZZF`IDN`?_sFR*fV=RKk&&D5r7-yZ{r*kHnmfKNjBQ&wtl7}gGFezy)%zyARwJNW z`tQGw-BHQR%rrDN540EHLf*gn%W)s2L`Rxh2OI&x=7p0bGrjf-%Kg?#--aCH-N7Bk z&8?uIKzn;AwtkJYR@Xxc32I4@KNNF7P2{=h-7H1~vBSDTj%f;|StS{KbEdGRAhKKAbj@ z9jr6FvRpHmpOZt(P777FZ%-A0*RtCybo!WmYa$IpS$5xBFKp*ev&f{*?Q(3E4;>b(0-+*~r6BSV8FDol6vTKeL)C~5I62oe) zQiljl0YR&?;WhKsQU#=qX-@Ow!1jC>5E=8*V_BEdL_4xBMqYn&x8Y-^eui^*K~eDf z;-fZ4H@BE~k0ctqNvma*V-NLJJ<1Sd-Dp3X|7=fDPi+AHim~xHB_bjs{lyE(>FH?$ zRq9|6^&4KeRt$7;H-o;F@@`vWZ@aUNgHs#E@Ns;6g^;YQY^;cyZ>h>8Dy@UpYKEdg zo2RUfp8gXVbC}B_TAF3;TA}`@*+Mb@Cr%#_Q6>`6MlL(q6&4Za+ND@NV4m>wTff2%B(t&M@;Jb49qyD7? zB_N@k=g;3+xx2XV-a=lgWQ()^nR+)R5=Df&hCesTrhs3A#$ioZNz&Ru!o zV90Xv^P^8#l-DnOd4prpX+?xBmSXG>Sk=#7%_nG|@$KiVtgNnFxl+H{q+ng#@bYQ*)ivaSguim@|e4OfB1fAz0EH@GxJDSq0P`MDGuc8Rp5Ys&7$+A z^P|vvp71)A!@un5bAAd9@oU?<^~8OrX!B5nKQnolZ zMs;>_iU5{HeI|vg{2CIbE(s&XHFJwYl=vyvv~e^RD+-7tq2cz=T6h<#g|(5@sSXJc zs2R_mJ^SPjCU%)RwDlNIW~~%9ZsStlk6nLvX{1T2P<sI^jS*yYH zND&d~YwH#u>a`QD*5~@6-L^U?JGz}ab9hYH=pLQU_mPY&2 z*!~Ygr(KU_jbc%r!-1_qRY^`^VJwm8Hc)-8!fjx2RUJY4EWni3hx3fKDh)-gFHP!( zgoL0Q(Uorz&#-+9t&oxP)lWEeYx&X^FS-e2)(qLr2MYj9TO(|(iBx$bVVuTtY@o=k ztVDnkT?fknXHB}-W_vqWd%)Q4;j4E*K*ofy??=St|GxaY8tmW;(~px5e|4Kf7hn@L zEQ+pu-c6$f`WrC{U~@Xy-Ga)Ih=0gkUPPR*`zX>49u-uQp@oI8MY&5jfc7`73;xVi zlvxpmOT%j zzBszLL;(-`&y{tjgEL*X=G^54uhjNx^^u*~0nK1#i0=}pnPV5vZ2#8|xq}R&;uEZ` z4bu!(wp?iDQ*Jkh#p&!!xSciqt<XM_RE(qf1jZf9kDXgJ&7{9 z?dHacp_y6lL^7bZNu#c|`clg&2@O%?x1Uj0uB{DqypW=*03KNcM~MnYtN65KY0dyGBri2a$kg0_ew{3&XF1Wy3qX3+l3@ zEy|@KQA`J4#V>1}Oda>&-ye4P`arc0n$h_$zLUTWkwQ>wg$BR|>weg?L5#sQk^q*` z+inZCqsV=TL?7DP9KvIcDpyz=2?+~lfPkz5#6CI+DVttva!*FO2#F(on(R*~%4&2;3Xe9`jYoskm!2wBYN5|`Ei7Gv@gwGfLb9;oq4dq7Z1R@*L~Jx68DQ;Q+Hw+9X1%3_eW z)RI(voVsfKsI!njH5JeLVWSFb7n^1!usCyBVciY_Ho=~&vnB2JWahYR z37OeUZmIU8hJF;Iz#1XkZ<}aM>UMJJ%rUGg0?%jgBp^?6zhtGoK~XrPFiYA7SC4P>ISrRf%vdD zMntWcO4wqUfnzTL<6;MoL|;r1HUc${5GL8Ic3HUFL5A6c!33@LI^c21A(}1DO%f;e% zjX>{mK>pdxcut9@o1v7GC) zGd4zp{d0_|ON2z>+`PONXiz}pxXl?d%ef1-G_Rp=C&9V?R29P!ak8}=`ywHwp9sFD;^aHgH%J_z9j)o8**^~Jt>SyhQ9=PCbl; zh_I3y^L_h+68(e8__U4AY!uL{W}x;o?A8+Y!{^UTj>*dj8>@4|-8O`fJg7DX<4YYB zf%6ynfW4;NgKQ(>|}a zBo+v}wAw0R{aa^;bYUh(Po=G2$TKgK#9&PF&7TC_iXv8ixhp(kO5QO3mX*V47`+3# z*-<%DP@}m#>gDFu<|*@3J-|zSwFie5=xUjh@wbq-fzMQ1TN}pXTY!99j46%+;nHM# zEa(pg-RrR`dS) zb1ieRnXn))aVhlxYCAwO^prW92D6sZ+RJ=-NNfV`2|?m2U<~Vh%`({zd8v*X3Xn=fEd+*?#JyR^LQGdZ9R050sS_57PJh3 z+{h~qv8XL(`&Ja3QPq<-`^hQGEOY?;;pM%$!9V{1-5mAo?7dWP13kU)C27w|3iT&( zY8yNY(r2CEDSexWJu;QzGSy$x{TE(we6uC}t`#ZX)@Xg;t*Zin#3TFq`i@CTI<0hF zwO~ybvLw;|IAz~Lgj&m>Dx$^}tT39&(d#8Nxq;ScV~;MSE;baLKqFAl1C2lp>7}Ko z1J~v^NfRBU-CvUXfmJ#?JL`v-twZ&3CoD!#i~xRL_`Pv$rdt-4TZ#~6wFjmm&0$BnY;-9wj> z1W(ytXh~K%g-RelV0OJ&DrmmoQQ;vXoU#zmBVo#<=314}Al4y%Z7K023>+QS$_*6n zW9j|jToui_F0dgsbUB0G;-JX`o(|1SDO{lox6$qL{K%N@D|2pndP?Hx#YA2-)C8;5 z05P<|I^A!;$COt_GpP;4$dHgcWwXwW6QS0BD6YI WJGf|y@SiUby>kZI1wUT<<-Y)QgicKW literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/joiner.output_linear.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..f6f7bd7cac7d138e886f123b518da3d339a1ff8e GIT binary patch literal 11793 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 YHeAhl-OcL0;EGUM8oFl*r)_Wl8;tUj;s5{u literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..e84d16d24529a971a48e1ff8437f411b3e7d40b5 GIT binary patch literal 10970 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�-X1jWB5fUGQyupz5Sq@Z_=V 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 GU;Yb%s3v^? literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_am_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c9e82c94943ec57eac442f10aa8f791756cc4783 GIT binary patch literal 10728 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_am_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_am_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..0c0fce8e5c4651409da05d2f814f41726890c0b8 GIT binary patch literal 10384 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 BM_K>? literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..c0909d132c16193a9738d70fffb2bcdcc40131f4 GIT binary patch literal 9926 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..e254b6c9baf6c5c4dfc1c679c45cc1edf5e57e2c GIT binary patch literal 8689 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 L*3J9=>h1pm#6UgC literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..2b0d8785d1e30a04114c6340141f8a296b5a51dd GIT binary patch literal 12455 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..8cf5fe9a6340ba5b307ff651bdc8623333cdfe28 GIT binary patch literal 14643 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 X!|kTL4u8UxlE}wYkER|zed(V7I;L9F literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..6ab47e3786172d9a374ca1157edec4d22ad6f305 GIT binary patch literal 8686 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/simple_lm_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..9952b8d96e1c32fff80afd95e26f9a42c831958e GIT binary patch literal 8819 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/prepare.sh b/egs/LJSpeech/ASR/prepare.sh new file mode 100755 index 000000000..76b6a6aaf --- /dev/null +++ b/egs/LJSpeech/ASR/prepare.sh @@ -0,0 +1,158 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +nj=15 +stage=-1 +stop_stage=100 + +# We assume dl_dir (download dir) contains the following +# directories and files. If not, they will be downloaded +# by this script automatically. +# +# - $dl_dir/LJSpeech +# You can find BOOKS.TXT, test-clean, train-clean-360, etc, inside it. +# You can download them from https://www.openslr.org/12 +# +# - $dl_dir/lm +# This directory contains the following files downloaded from +# http://www.openslr.org/resources/11 +# +# - 3-gram.pruned.1e-7.arpa.gz +# - 3-gram.pruned.1e-7.arpa +# - 4-gram.arpa.gz +# - 4-gram.arpa +# - LJSpeech-vocab.txt +# - LJSpeech-lexicon.txt +# - LJSpeech-lm-norm.txt.gz +# +# - $dl_dir/musan +# This directory contains the following directories downloaded from +# http://www.openslr.org/17/ +# +# - music +# - noise +# - speech +dl_dir=/DB + +. shared/parse_options.sh || exit 1 + +# vocab size for sentence piece models. +# It will generate data/lang_bpe_xxx, +# data/lang_bpe_yyy if the array contains xxx, yyy +vocab_sizes=( + 5000 + 2000 + 1000 + 500 +) + +# All files generated by this script are saved in "data". +# You can safely remove "data" and rerun this script to regenerate it. +mkdir -p data + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +log "dl_dir: $dl_dir" + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Download data" + + # If you have pre-downloaded it to /path/to/LJSpeech, + # you can create a symlink + # + # ln -sfv /path/to/LJSpeech $dl_dir/LJSpeech + # + if [ ! -d $dl_dir/LJSpeech/wav ]; then + echo "download not supported yet"; + fi + + # If you have pre-downloaded it to /path/to/musan, + # you can create a symlink + # + # ln -sfv /path/to/musan $dl_dir/ + # + if [ ! -d $dl_dir/musan ]; then + lhotse download musan $dl_dir + fi +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Prepare LJSpeech manifest" + # We assume that you have downloaded the LJSpeech corpus (ver 1.1) + # You need to prepare LJSpeech according to data_settings/*_list.txt like below + # $dl_dir/LJSpeech + # |-- wavs + # | |-- train + # | |-- dev + # | |-- test + # |-- texts + # |-- metadata.csv + + # to $dl_dir/LJSpeech + if [ ! -e $dl_dir/LJSpeech/.LJSpeech.done ]; then + for dset in "train" "dev" "test"; do + log "Resampling LJSpeech $dset set" + file_list=`ls $dl_dir/LJSpeech/wavs/$dset/` + for wavfile in $file_list; do + sox -v 0.9 $dl_dir/LJSpeech/wavs/$dset/$wavfile -r 16000 -e signed-integer $dl_dir/LJSpeech/wavs/$dset/tmp_$wavfile + mv $dl_dir/LJSpeech/wavs/$dset/tmp_$wavfile $dl_dir/LJSpeech/wavs/$dset/$wavfile + done + log "Resampling $dset done" + done + python local/prepare_LJSpeech_text.py $dl_dir/LJSpeech/metadata.csv + sudo touch $dl_dir/LJSpeech/.LJSpeech.done + fi + + mkdir -p data/manifests + if [ ! -e data/manifests/.LJSpeech.done ]; then + python local/prepare_LJSpeech.py $dl_dir/LJSpeech + touch data/manifests/.LJSpeech.done + fi +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + log "Stage 2: Prepare musan manifest" + # We assume that you have downloaded the musan corpus + # to data/musan + mkdir -p data/manifests + if [ ! -e data/manifests/.musan.done ]; then + lhotse prepare musan $dl_dir/musan data/manifests + touch data/manifests/.musan.done + fi +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + log "Stage 3: Compute fbank for LJSpeech" + mkdir -p data/fbank + if [ ! -e data/fbank/.LJSpeech.done ]; then + ./local/compute_fbank_LJSpeech.py --data-dir $dl_dir/LJSpeech + touch data/fbank/.LJSpeech.done + fi + + if [ ! -e data/fbank/.LJSpeech-validated.done ]; then + log "Validating data/fbank for LJSpeech" + parts=`ls /DB/LJSpeech/wavs/` + for part in ${parts[@]}; do + python3 ./local/validate_manifest.py \ + data/fbank/LJSpeech_cuts_${part}.jsonl.gz + done + fi +fi + +if [ $stage -le 4 ] && [ $stop_stage -ge 4 ]; then + log "Stage 4: Compute fbank for musan" + mkdir -p data/fbank + if [ ! -e data/fbank/.musan.done ]; then + ./local/compute_fbank_musan.py + touch data/fbank/.musan.done + fi +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/prepare_giga_speech.sh b/egs/LJSpeech/ASR/prepare_giga_speech.sh new file mode 100755 index 000000000..6f85ddc29 --- /dev/null +++ b/egs/LJSpeech/ASR/prepare_giga_speech.sh @@ -0,0 +1,142 @@ +#!/usr/bin/env bash + +set -eou pipefail + +nj=15 +stage=-1 +stop_stage=100 + +# We assume dl_dir (download dir) contains the following +# directories and files. If not, they will be downloaded +# by this script automatically. +# +# - $dl_dir/GigaSpeech +# You can find audio, dict, GigaSpeech.json inside it. +# You can apply for the download credentials by following +# https://github.com/SpeechColab/GigaSpeech#download + +# Number of hours for GigaSpeech subsets +# XL 10k hours +# L 2.5k hours +# M 1k hours +# S 250 hours +# XS 10 hours +# DEV 12 hours +# Test 40 hours + +# Split XL subset to this number of pieces +# This is to avoid OOM during feature extraction. +num_splits=2000 +# We use lazy split from lhotse. +# The XL subset (10k hours) contains 37956 cuts without speed perturbing. +# We want to split it into 2000 splits, so each split +# contains about 37956 / 2000 = 19 cuts. As a result, there will be 1998 splits. +chunk_size=19 # number of cuts in each split. The last split may contain fewer cuts. + +dl_dir=$PWD/download + +. shared/parse_options.sh || exit 1 + +# All files generated by this script are saved in "data". +# You can safely remove "data" and rerun this script to regenerate it. +mkdir -p data + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +log "dl_dir: $dl_dir" + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Download data" + + [ ! -e $dl_dir/GigaSpeech ] && mkdir -p $dl_dir/GigaSpeech + + # If you have pre-downloaded it to /path/to/GigaSpeech, + # you can create a symlink + # + # ln -sfv /path/to/GigaSpeech $dl_dir/GigaSpeech + # + if [ ! -d $dl_dir/GigaSpeech/audio ] && [ ! -f $dl_dir/GigaSpeech.json ]; then + # Check credentials. + if [ ! -f $dl_dir/password ]; then + echo -n "$0: Please apply for the download credentials by following" + echo -n "https://github.com/SpeechColab/GigaSpeech#dataset-download" + echo " and save it to $dl_dir/password." + exit 1; + fi + PASSWORD=`cat $dl_dir/password 2>/dev/null` + if [ -z "$PASSWORD" ]; then + echo "$0: Error, $dl_dir/password is empty." + exit 1; + fi + PASSWORD_MD5=`echo $PASSWORD | md5sum | cut -d ' ' -f 1` + if [[ $PASSWORD_MD5 != "dfbf0cde1a3ce23749d8d81e492741b8" ]]; then + echo "$0: Error, invalid $dl_dir/password." + exit 1; + fi + # Download XL, DEV and TEST sets by default. + lhotse download gigaspeech \ + --subset XL \ + --subset L \ + --subset M \ + --subset S \ + --subset XS \ + --subset DEV \ + --subset TEST \ + --host tsinghua \ + $dl_dir/password $dl_dir/GigaSpeech + fi +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Prepare GigaSpeech manifest (may take 30 minutes)" + # We assume that you have downloaded the GigaSpeech corpus + # to $dl_dir/GigaSpeech + mkdir -p data/manifests + lhotse prepare gigaspeech \ + --subset XL \ + --subset L \ + --subset M \ + --subset S \ + --subset XS \ + --subset DEV \ + --subset TEST \ + -j $nj \ + $dl_dir/GigaSpeech data/manifests +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + log "Stage 2: Preprocess GigaSpeech manifest" + if [ ! -f data/fbank/.preprocess_complete ]; then + log "It may take 2 hours for this stage" + python3 ./local/preprocess_gigaspeech.py + touch data/fbank/.preprocess_complete + fi +fi + +if [ $stage -le 3 ] && [ $stop_stage -ge 3 ]; then + log "Stage 3: Compute features for DEV and TEST subsets of GigaSpeech (may take 2 minutes)" + python3 ./local/compute_fbank_gigaspeech_dev_test.py +fi + +if [ $stage -le 4 ] && [ $stop_stage -ge 4 ]; then + log "Stage 4: Split XL subset into ${num_splits} pieces" + split_dir=data/fbank/gigaspeech_XL_split_${num_splits} + if [ ! -f $split_dir/.split_completed ]; then + lhotse split-lazy ./data/fbank/gigaspeech_cuts_XL_raw.jsonl.gz $split_dir $chunk_size + touch $split_dir/.split_completed + fi +fi + +if [ $stage -le 5 ] && [ $stop_stage -ge 5 ]; then + log "Stage 5: Compute features for XL" + # Note: The script supports --start and --stop options. + # You can use several machines to compute the features in parallel. + python3 ./local/compute_fbank_gigaspeech_splits.py \ + --num-workers $nj \ + --batch-duration 600 \ + --num-splits $num_splits +fi diff --git a/egs/LJSpeech/ASR/prepare_librispeech.sh b/egs/LJSpeech/ASR/prepare_librispeech.sh new file mode 100755 index 000000000..542bbcdd8 --- /dev/null +++ b/egs/LJSpeech/ASR/prepare_librispeech.sh @@ -0,0 +1,385 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python + +set -eou pipefail + +nj=15 +stage=-1 +stop_stage=100 + +# We assume dl_dir (download dir) contains the following +# directories and files. If not, they will be downloaded +# by this script automatically. +# +# - $dl_dir/LibriSpeech +# You can find BOOKS.TXT, test-clean, train-clean-360, etc, inside it. +# You can download them from https://www.openslr.org/12 +# +# - $dl_dir/lm +# This directory contains the following files downloaded from +# http://www.openslr.org/resources/11 +# +# - 3-gram.pruned.1e-7.arpa.gz +# - 3-gram.pruned.1e-7.arpa +# - 4-gram.arpa.gz +# - 4-gram.arpa +# - librispeech-vocab.txt +# - librispeech-lexicon.txt +# - librispeech-lm-norm.txt.gz +# +# - $dl_dir/musan +# This directory contains the following directories downloaded from +# http://www.openslr.org/17/ +# +# - music +# - noise +# - speech +dl_dir=$PWD/download + +. shared/parse_options.sh || exit 1 + +# vocab size for sentence piece models. +# It will generate data/lang_bpe_xxx, +# data/lang_bpe_yyy if the array contains xxx, yyy +vocab_sizes=( + 5000 + 2000 + 1000 + 500 +) + +# All files generated by this script are saved in "data". +# You can safely remove "data" and rerun this script to regenerate it. +mkdir -p data + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +log "dl_dir: $dl_dir" + +if [ $stage -le -1 ] && [ $stop_stage -ge -1 ]; then + log "Stage -1: Download LM" + mkdir -p $dl_dir/lm + if [ ! -e $dl_dir/lm/.done ]; then + ./local/download_lm.py --out-dir=$dl_dir/lm + touch $dl_dir/lm/.done + fi +fi + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Download data" + + # If you have pre-downloaded it to /path/to/LibriSpeech, + # you can create a symlink + # + # ln -sfv /path/to/LibriSpeech $dl_dir/LibriSpeech + # + if [ ! -d $dl_dir/LibriSpeech/train-other-500 ]; then + lhotse download librispeech --full $dl_dir + fi + + # If you have pre-downloaded it to /path/to/musan, + # you can create a symlink + # + # ln -sfv /path/to/musan $dl_dir/ + # + if [ ! -d $dl_dir/musan ]; then + lhotse download musan $dl_dir + fi +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Prepare LibriSpeech manifest" + # We assume that you have downloaded the LibriSpeech corpus + # to $dl_dir/LibriSpeech + mkdir -p data/manifests + if [ ! -e data/manifests/.librispeech.done ]; then + lhotse prepare librispeech -j $nj $dl_dir/LibriSpeech data/manifests + touch data/manifests/.librispeech.done + fi +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + log "Stage 2: Prepare musan manifest" + # We assume that you have downloaded the musan corpus + # to data/musan + mkdir -p data/manifests + if [ ! -e data/manifests/.musan.done ]; then + lhotse prepare musan $dl_dir/musan data/manifests + touch data/manifests/.musan.done + fi +fi + +if [ $stage -le 3 ] && [ $stop_stage -ge 3 ]; then + log "Stage 3: Compute fbank for librispeech" + mkdir -p data/fbank + if [ ! -e data/fbank/.librispeech.done ]; then + ./local/compute_fbank_librispeech.py + touch data/fbank/.librispeech.done + fi + + cat <(gunzip -c data/fbank/librispeech_cuts_train-clean-100.jsonl.gz) \ + <(gunzip -c data/fbank/librispeech_cuts_train-clean-360.jsonl.gz) \ + <(gunzip -c data/fbank/librispeech_cuts_train-other-500.jsonl.gz) | \ + shuf | gzip -c > data/fbank/librispeech_cuts_train-all-shuf.jsonl.gz + + if [ ! -e data/fbank/.librispeech-validated.done ]; then + log "Validating data/fbank for LibriSpeech" + parts=( + train-clean-100 + train-clean-360 + train-other-500 + test-clean + test-other + dev-clean + dev-other + ) + for part in ${parts[@]}; do + python3 ./local/validate_manifest.py \ + data/fbank/librispeech_cuts_${part}.jsonl.gz + done + touch data/fbank/.librispeech-validated.done + fi +fi + +if [ $stage -le 4 ] && [ $stop_stage -ge 4 ]; then + log "Stage 4: Compute fbank for musan" + mkdir -p data/fbank + if [ ! -e data/fbank/.musan.done ]; then + ./local/compute_fbank_musan.py + touch data/fbank/.musan.done + fi +fi + +if [ $stage -le 5 ] && [ $stop_stage -ge 5 ]; then + log "Stage 5: Prepare phone based lang" + lang_dir=data/lang_phone + mkdir -p $lang_dir + + (echo '!SIL SIL'; echo ' SPN'; echo ' SPN'; ) | + cat - $dl_dir/lm/librispeech-lexicon.txt | + sort | uniq > $lang_dir/lexicon.txt + + if [ ! -f $lang_dir/L_disambig.pt ]; then + ./local/prepare_lang.py --lang-dir $lang_dir + fi +fi + + +if [ $stage -le 6 ] && [ $stop_stage -ge 6 ]; then + log "Stage 6: Prepare BPE based lang" + + for vocab_size in ${vocab_sizes[@]}; do + lang_dir=data/lang_bpe_${vocab_size} + mkdir -p $lang_dir + # We reuse words.txt from phone based lexicon + # so that the two can share G.pt later. + cp data/lang_phone/words.txt $lang_dir + + if [ ! -f $lang_dir/transcript_words.txt ]; then + log "Generate data for BPE training" + files=$( + find "$dl_dir/LibriSpeech/train-clean-100" -name "*.trans.txt" + find "$dl_dir/LibriSpeech/train-clean-360" -name "*.trans.txt" + find "$dl_dir/LibriSpeech/train-other-500" -name "*.trans.txt" + ) + for f in ${files[@]}; do + cat $f | cut -d " " -f 2- + done > $lang_dir/transcript_words.txt + fi + + if [ ! -f $lang_dir/bpe.model ]; then + ./local/train_bpe_model.py \ + --lang-dir $lang_dir \ + --vocab-size $vocab_size \ + --transcript $lang_dir/transcript_words.txt + fi + + if [ ! -f $lang_dir/L_disambig.pt ]; then + ./local/prepare_lang_bpe.py --lang-dir $lang_dir + + log "Validating $lang_dir/lexicon.txt" + ./local/validate_bpe_lexicon.py \ + --lexicon $lang_dir/lexicon.txt \ + --bpe-model $lang_dir/bpe.model + fi + done +fi + +if [ $stage -le 7 ] && [ $stop_stage -ge 7 ]; then + log "Stage 7: Prepare bigram P" + + for vocab_size in ${vocab_sizes[@]}; do + lang_dir=data/lang_bpe_${vocab_size} + + if [ ! -f $lang_dir/transcript_tokens.txt ]; then + ./local/convert_transcript_words_to_tokens.py \ + --lexicon $lang_dir/lexicon.txt \ + --transcript $lang_dir/transcript_words.txt \ + --oov "" \ + > $lang_dir/transcript_tokens.txt + fi + + if [ ! -f $lang_dir/P.arpa ]; then + ./shared/make_kn_lm.py \ + -ngram-order 2 \ + -text $lang_dir/transcript_tokens.txt \ + -lm $lang_dir/P.arpa + fi + + if [ ! -f $lang_dir/P.fst.txt ]; then + python3 -m kaldilm \ + --read-symbol-table="$lang_dir/tokens.txt" \ + --disambig-symbol='#0' \ + --max-order=2 \ + $lang_dir/P.arpa > $lang_dir/P.fst.txt + fi + done +fi + +if [ $stage -le 8 ] && [ $stop_stage -ge 8 ]; then + log "Stage 8: Prepare G" + # We assume you have install kaldilm, if not, please install + # it using: pip install kaldilm + + mkdir -p data/lm + if [ ! -f data/lm/G_3_gram.fst.txt ]; then + # It is used in building HLG + python3 -m kaldilm \ + --read-symbol-table="data/lang_phone/words.txt" \ + --disambig-symbol='#0' \ + --max-order=3 \ + $dl_dir/lm/3-gram.pruned.1e-7.arpa > data/lm/G_3_gram.fst.txt + fi + + if [ ! -f data/lm/G_4_gram.fst.txt ]; then + # It is used for LM rescoring + python3 -m kaldilm \ + --read-symbol-table="data/lang_phone/words.txt" \ + --disambig-symbol='#0' \ + --max-order=4 \ + $dl_dir/lm/4-gram.arpa > data/lm/G_4_gram.fst.txt + fi +fi + +if [ $stage -le 9 ] && [ $stop_stage -ge 9 ]; then + log "Stage 9: Compile HLG" + ./local/compile_hlg.py --lang-dir data/lang_phone + + for vocab_size in ${vocab_sizes[@]}; do + lang_dir=data/lang_bpe_${vocab_size} + ./local/compile_hlg.py --lang-dir $lang_dir + done +fi + +# Compile LG for RNN-T fast_beam_search decoding +if [ $stage -le 10 ] && [ $stop_stage -ge 10 ]; then + log "Stage 10: Compile LG" + ./local/compile_lg.py --lang-dir data/lang_phone + + for vocab_size in ${vocab_sizes[@]}; do + lang_dir=data/lang_bpe_${vocab_size} + ./local/compile_lg.py --lang-dir $lang_dir + done +fi + +if [ $stage -le 11 ] && [ $stop_stage -ge 11 ]; then + log "Stage 11: Generate LM training data" + + for vocab_size in ${vocab_sizes[@]}; do + log "Processing vocab_size == ${vocab_size}" + lang_dir=data/lang_bpe_${vocab_size} + out_dir=data/lm_training_bpe_${vocab_size} + mkdir -p $out_dir + + ./local/prepare_lm_training_data.py \ + --bpe-model $lang_dir/bpe.model \ + --lm-data $dl_dir/lm/librispeech-lm-norm.txt \ + --lm-archive $out_dir/lm_data.pt + done +fi + +if [ $stage -le 12 ] && [ $stop_stage -ge 12 ]; then + log "Stage 12: Generate LM validation data" + + for vocab_size in ${vocab_sizes[@]}; do + log "Processing vocab_size == ${vocab_size}" + out_dir=data/lm_training_bpe_${vocab_size} + mkdir -p $out_dir + + if [ ! -f $out_dir/valid.txt ]; then + files=$( + find "$dl_dir/LibriSpeech/dev-clean" -name "*.trans.txt" + find "$dl_dir/LibriSpeech/dev-other" -name "*.trans.txt" + ) + for f in ${files[@]}; do + cat $f | cut -d " " -f 2- + done > $out_dir/valid.txt + fi + + lang_dir=data/lang_bpe_${vocab_size} + ./local/prepare_lm_training_data.py \ + --bpe-model $lang_dir/bpe.model \ + --lm-data $out_dir/valid.txt \ + --lm-archive $out_dir/lm_data-valid.pt + done +fi + +if [ $stage -le 13 ] && [ $stop_stage -ge 13 ]; then + log "Stage 13: Generate LM test data" + + for vocab_size in ${vocab_sizes[@]}; do + log "Processing vocab_size == ${vocab_size}" + out_dir=data/lm_training_bpe_${vocab_size} + mkdir -p $out_dir + + if [ ! -f $out_dir/test.txt ]; then + files=$( + find "$dl_dir/LibriSpeech/test-clean" -name "*.trans.txt" + find "$dl_dir/LibriSpeech/test-other" -name "*.trans.txt" + ) + for f in ${files[@]}; do + cat $f | cut -d " " -f 2- + done > $out_dir/test.txt + fi + + lang_dir=data/lang_bpe_${vocab_size} + ./local/prepare_lm_training_data.py \ + --bpe-model $lang_dir/bpe.model \ + --lm-data $out_dir/test.txt \ + --lm-archive $out_dir/lm_data-test.pt + done +fi + +if [ $stage -le 14 ] && [ $stop_stage -ge 14 ]; then + log "Stage 14: Sort LM training data" + # Sort LM training data by sentence length in descending order + # for ease of training. + # + # Sentence length equals to the number of BPE tokens + # in a sentence. + + for vocab_size in ${vocab_sizes[@]}; do + out_dir=data/lm_training_bpe_${vocab_size} + mkdir -p $out_dir + ./local/sort_lm_training_data.py \ + --in-lm-data $out_dir/lm_data.pt \ + --out-lm-data $out_dir/sorted_lm_data.pt \ + --out-statistics $out_dir/statistics.txt + + ./local/sort_lm_training_data.py \ + --in-lm-data $out_dir/lm_data-valid.pt \ + --out-lm-data $out_dir/sorted_lm_data-valid.pt \ + --out-statistics $out_dir/statistics-valid.txt + + ./local/sort_lm_training_data.py \ + --in-lm-data $out_dir/lm_data-test.pt \ + --out-lm-data $out_dir/sorted_lm_data-test.pt \ + --out-statistics $out_dir/statistics-test.txt + done +fi diff --git a/egs/LJSpeech/ASR/prepare_pseudo_LJ.sh b/egs/LJSpeech/ASR/prepare_pseudo_LJ.sh new file mode 100755 index 000000000..2f8e4ac44 --- /dev/null +++ b/egs/LJSpeech/ASR/prepare_pseudo_LJ.sh @@ -0,0 +1,157 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +nj=15 +stage=-1 +stop_stage=100 + +# We assume dl_dir (download dir) contains the following +# directories and files. If not, they will be downloaded +# by this script automatically. +# +# - $dl_dir/LJSpeech_pseudo +# You can find BOOKS.TXT, test-clean, train-clean-360, etc, inside it. +# You can download them from https://www.openslr.org/12 +# +# - $dl_dir/lm +# This directory contains the following files downloaded from +# http://www.openslr.org/resources/11 +# +# - 3-gram.pruned.1e-7.arpa.gz +# - 3-gram.pruned.1e-7.arpa +# - 4-gram.arpa.gz +# - 4-gram.arpa +# - LJSpeech_pseudo-vocab.txt +# - LJSpeech_pseudo-lexicon.txt +# - LJSpeech_pseudo-lm-norm.txt.gz +# +# - $dl_dir/musan +# This directory contains the following directories downloaded from +# http://www.openslr.org/17/ +# +# - music +# - noise +# - speech +dl_dir=/DB + +. shared/parse_options.sh || exit 1 + +# vocab size for sentence piece models. +# It will generate data/lang_bpe_xxx, +# data/lang_bpe_yyy if the array contains xxx, yyy +vocab_sizes=( + 5000 + 2000 + 1000 + 500 +) + +# All files generated by this script are saved in "data". +# You can safely remove "data" and rerun this script to regenerate it. +mkdir -p data + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +log "dl_dir: $dl_dir" + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Download data" + + # If you have pre-downloaded it to /path/to/LJSpeech_pseudo, + # you can create a symlink + # + # ln -sfv /path/to/LJSpeech_pseudo $dl_dir/LJSpeech_pseudo + # + if [ ! -d $dl_dir/LJSpeech_pseudo/wav ]; then + echo "download not supported yet"; + fi + + # If you have pre-downloaded it to /path/to/musan, + # you can create a symlink + # + # ln -sfv /path/to/musan $dl_dir/ + # + if [ ! -d $dl_dir/musan ]; then + lhotse download musan $dl_dir + fi +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Prepare LJSpeech_pseudo manifest" + # We assume that you have downloaded the LJSpeech_pseudo corpus (ver 1.1) + # You need to prepare LJSpeech_pseudo according to data_settings/*_list.txt like below + # $dl_dir/LJSpeech_pseudo + # |-- wavs + # | |-- train + # | |-- dev + # | |-- test + # |-- texts + # |-- metadata.csv + + # to $dl_dir/LJSpeech_pseudo + if [ ! -e $dl_dir/LJSpeech_pseudo/.LJSpeech_pseudo.done ]; then + for dset in "train" "dev" "test"; do + log "Resampling LJSpeech_pseudo $dset set" + file_list=`ls $dl_dir/LJSpeech_pseudo/wavs/$dset/` + for wavfile in $file_list; do + sox -v 0.9 $dl_dir/LJSpeech_pseudo/wavs/$dset/$wavfile -r 16000 -e signed-integer $dl_dir/LJSpeech_pseudo/wavs/$dset/tmp_$wavfile + mv $dl_dir/LJSpeech_pseudo/wavs/$dset/tmp_$wavfile $dl_dir/LJSpeech_pseudo/wavs/$dset/$wavfile + done + log "Resampling $dset done" + done + sudo touch $dl_dir/LJSpeech_pseudo/.LJSpeech_pseudo.done + fi + + mkdir -p data/manifests + if [ ! -e data/manifests/.LJSpeech_pseudo.done ]; then + python local/prepare_LJSpeech_pseudo.py $dl_dir/LJSpeech_pseudo + touch data/manifests/.LJSpeech_pseudo.done + fi +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + log "Stage 2: Prepare musan manifest" + # We assume that you have downloaded the musan corpus + # to data/musan + mkdir -p data/manifests + if [ ! -e data/manifests/.musan.done ]; then + lhotse prepare musan $dl_dir/musan data/manifests + touch data/manifests/.musan.done + fi +fi + +if [ $stage -le 2 ] && [ $stop_stage -ge 2 ]; then + log "Stage 3: Compute fbank for LJSpeech_pseudo" + mkdir -p data/fbank + if [ ! -e data/fbank/.LJSpeech_pseudo.done ]; then + ./local/compute_fbank_LJSpeech_pseudo.py --data-dir $dl_dir/LJSpeech_pseudo + touch data/fbank/.LJSpeech_pseudo.done + fi + + if [ ! -e data/fbank/.LJSpeech_pseudo-validated.done ]; then + log "Validating data/fbank for LJSpeech_pseudo" + parts=`ls /DB/LJSpeech_pseudo/wavs/` + for part in ${parts[@]}; do + python3 ./local/validate_manifest.py \ + data/fbank/LJSpeech_pseudo_cuts_${part}.jsonl.gz + done + fi +fi + +if [ $stage -le 4 ] && [ $stop_stage -ge 4 ]; then + log "Stage 4: Compute fbank for musan" + mkdir -p data/fbank + if [ ! -e data/fbank/.musan.done ]; then + ./local/compute_fbank_musan.py + touch data/fbank/.musan.done + fi +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/README.md b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/README.md new file mode 100755 index 000000000..e8c0857ef --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/README.md @@ -0,0 +1,57 @@ +# data2vec-transducer + +| | test-clean | test-other | +| --- | --- | --- | +| greedy decoding | 2.88 | 6.69 | +| modified beam search | 2.76 | 6.37 | +| fast beam search | 2.82 | 6.59 | +- train command + +```bash +./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-prefinetuned-model ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft/libri_finetuned.pt \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 3000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --accum-grads 4 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 +``` + +- decode command + +```bash +for method in modified_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoch-27.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +``` \ No newline at end of file diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/__init__.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/__init__.py new file mode 100755 index 000000000..e69de29bb diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/asr_datamodule.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/asr_datamodule.py new file mode 100755 index 000000000..6cee7bb4e --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/asr_datamodule.py @@ -0,0 +1,1005 @@ +# Copyright 2021 Piotr Å»elasko +# Copyright 2022 Xiaomi Corporation (Author: Mingshuang Luo) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import argparse +import inspect +import logging +from functools import lru_cache +from pathlib import Path +from typing import Any, Dict, Optional + +import torch +from lhotse import CutSet, Fbank, FbankConfig, load_manifest, load_manifest_lazy +from lhotse.dataset import ( # noqa F401 for PrecomputedFeatures + CutConcatenate, + CutMix, + DynamicBucketingSampler, + K2SpeechRecognitionDataset, + PrecomputedFeatures, + SingleCutSampler, + SpecAugment, +) +from lhotse.dataset.input_strategies import ( # noqa F401 For AudioSamples + AudioSamples, + OnTheFlyFeatures, +) +from lhotse.utils import fix_random_seed +from torch.utils.data import DataLoader + +from icefall.utils import str2bool + + +class _SeedWorkers: + def __init__(self, seed: int): + self.seed = seed + + def __call__(self, worker_id: int): + fix_random_seed(self.seed + worker_id) + + +class LibriSpeechAsrDataModule: + """ + DataModule for k2 ASR experiments. + It assumes there is always one train and valid dataloader, + but there can be multiple test dataloaders (e.g. LibriSpeech test-clean + and test-other). + + It contains all the common data pipeline modules used in ASR + experiments, e.g.: + - dynamic batch size, + - bucketing samplers, + - cut concatenation, + - augmentation, + - on-the-fly feature extraction + + This class should be derived for specific corpora used in ASR tasks. + """ + + def __init__(self, args: argparse.Namespace): + self.args = args + + @classmethod + def add_arguments(cls, parser: argparse.ArgumentParser): + group = parser.add_argument_group( + title="ASR data related options", + description="These options are used for the preparation of " + "PyTorch DataLoaders from Lhotse CutSet's -- they control the " + "effective batch sizes, sampling strategies, applied data " + "augmentations, etc.", + ) + group.add_argument( + "--full-libri", + type=str2bool, + default=False, + help="When enabled, use 960h LibriSpeech. Otherwise, use 100h subset.", + ) + group.add_argument( + "--manifest-dir", + type=Path, + default=Path("data/fbank"), + help="Path to directory with train/valid/test cuts.", + ) + group.add_argument( + "--max-duration", + type=int, + default=250.0, + help="Maximum pooled recordings duration (seconds) in a " + "single batch. You can reduce it if it causes CUDA OOM.", + ) + group.add_argument( + "--bucketing-sampler", + type=str2bool, + default=True, + help="When enabled, the batches will come from buckets of " + "similar duration (saves padding frames).", + ) + group.add_argument( + "--num-buckets", + type=int, + default=30, + help="The number of buckets for the DynamicBucketingSampler" + "(you might want to increase it for larger datasets).", + ) + group.add_argument( + "--concatenate-cuts", + type=str2bool, + default=False, + help="When enabled, utterances (cuts) will be concatenated " + "to minimize the amount of padding.", + ) + group.add_argument( + "--duration-factor", + type=float, + default=1.0, + help="Determines the maximum duration of a concatenated cut " + "relative to the duration of the longest cut in a batch.", + ) + group.add_argument( + "--gap", + type=float, + default=1.0, + help="The amount of padding (in seconds) inserted between " + "concatenated cuts. This padding is filled with noise when " + "noise augmentation is used.", + ) + group.add_argument( + "--on-the-fly-feats", + type=str2bool, + default=False, + help="When enabled, use on-the-fly cut mixing and feature " + "extraction. Will drop existing precomputed feature manifests " + "if available.", + ) + group.add_argument( + "--shuffle", + type=str2bool, + default=True, + help="When enabled (=default), the examples will be " + "shuffled for each epoch.", + ) + group.add_argument( + "--drop-last", + type=str2bool, + default=True, + help="Whether to drop last batch. Used by sampler.", + ) + group.add_argument( + "--return-cuts", + type=str2bool, + default=True, + help="When enabled, each batch will have the " + "field: batch['supervisions']['cut'] with the cuts that " + "were used to construct it.", + ) + + group.add_argument( + "--num-workers", + type=int, + default=2, + help="The number of training dataloader workers that " + "collect the batches.", + ) + + group.add_argument( + "--enable-spec-aug", + type=str2bool, + default=False, + help="When enabled, use SpecAugment for training dataset.", + ) + + group.add_argument( + "--spec-aug-time-warp-factor", + type=int, + default=80, + help="Used only when --enable-spec-aug is True. " + "It specifies the factor for time warping in SpecAugment. " + "Larger values mean more warping. " + "A value less than 1 means to disable time warp.", + ) + + group.add_argument( + "--enable-musan", + type=str2bool, + default=True, + help="When enabled, select noise from MUSAN and mix it" + "with training dataset. ", + ) + + group.add_argument( + "--input-strategy", + type=str, + default="AudioSamples", + help="AudioSamples or PrecomputedFeatures", + ) + + def train_dataloaders( + self, + cuts_train: CutSet, + sampler_state_dict: Optional[Dict[str, Any]] = None, + ) -> DataLoader: + """ + Args: + cuts_train: + CutSet for training. + sampler_state_dict: + The state dict for the training sampler. + """ + transforms = [] + if self.args.enable_musan: + logging.info("Enable MUSAN") + logging.info("About to get Musan cuts") + cuts_musan = load_manifest(self.args.manifest_dir / "musan_cuts.jsonl.gz") + transforms.append( + CutMix(cuts=cuts_musan, prob=0.5, snr=(10, 20), preserve_id=True) + ) + else: + logging.info("Disable MUSAN") + + if self.args.concatenate_cuts: + logging.info( + f"Using cut concatenation with duration factor " + f"{self.args.duration_factor} and gap {self.args.gap}." + ) + # Cut concatenation should be the first transform in the list, + # so that if we e.g. mix noise in, it will fill the gaps between + # different utterances. + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + input_transforms = [] + if self.args.enable_spec_aug: + logging.info("Enable SpecAugment") + logging.info(f"Time warp factor: {self.args.spec_aug_time_warp_factor}") + # Set the value of num_frame_masks according to Lhotse's version. + # In different Lhotse's versions, the default of num_frame_masks is + # different. + num_frame_masks = 10 + num_frame_masks_parameter = inspect.signature( + SpecAugment.__init__ + ).parameters["num_frame_masks"] + if num_frame_masks_parameter.default == 1: + num_frame_masks = 2 + logging.info(f"Num frame mask: {num_frame_masks}") + input_transforms.append( + SpecAugment( + time_warp_factor=self.args.spec_aug_time_warp_factor, + num_frame_masks=num_frame_masks, + features_mask_size=27, + num_feature_masks=2, + frames_mask_size=100, + ) + ) + else: + logging.info("Disable SpecAugment") + + logging.info("About to create train dataset") + train = K2SpeechRecognitionDataset( + input_strategy=eval(self.args.input_strategy)(), + cut_transforms=transforms, + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.on_the_fly_feats: + # NOTE: the PerturbSpeed transform should be added only if we + # remove it from data prep stage. + # Add on-the-fly speed perturbation; since originally it would + # have increased epoch size by 3, we will apply prob 2/3 and use + # 3x more epochs. + # Speed perturbation probably should come first before + # concatenation, but in principle the transforms order doesn't have + # to be strict (e.g. could be randomized) + # transforms = [PerturbSpeed(factors=[0.9, 1.1], p=2/3)] + transforms # noqa + # Drop feats to be on the safe side. + train = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.bucketing_sampler: + logging.info("Using DynamicBucketingSampler.") + train_sampler = DynamicBucketingSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + num_buckets=self.args.num_buckets, + drop_last=self.args.drop_last, + ) + else: + logging.info("Using SingleCutSampler.") + train_sampler = SingleCutSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + ) + logging.info("About to create train dataloader") + + if sampler_state_dict is not None: + logging.info("Loading sampler state dict") + train_sampler.load_state_dict(sampler_state_dict) + + # 'seed' is derived from the current random state, which will have + # previously been set in the main process. + seed = torch.randint(0, 100000, ()).item() + worker_init_fn = _SeedWorkers(seed) + + train_dl = DataLoader( + train, + sampler=train_sampler, + batch_size=None, + num_workers=self.args.num_workers, + persistent_workers=False, + worker_init_fn=worker_init_fn, + ) + + return train_dl + + def valid_dataloaders(self, cuts_valid: CutSet) -> DataLoader: + transforms = [] + if self.args.concatenate_cuts: + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + logging.info("About to create dev dataset") + if self.args.on_the_fly_feats: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + #input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + return_cuts=self.args.return_cuts, + ) + else: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + valid_sampler = DynamicBucketingSampler( + cuts_valid, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.info("About to create dev dataloader") + valid_dl = DataLoader( + validate, + sampler=valid_sampler, + batch_size=None, + num_workers=2, + persistent_workers=False, + ) + + return valid_dl + + def test_dataloaders(self, cuts: CutSet) -> DataLoader: + logging.debug("About to create test dataset") + test = K2SpeechRecognitionDataset( + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))) + if self.args.on_the_fly_feats + else eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + sampler = DynamicBucketingSampler( + cuts, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.debug("About to create test dataloader") + test_dl = DataLoader( + test, + batch_size=None, + sampler=sampler, + num_workers=self.args.num_workers, + ) + return test_dl + + @lru_cache() + def train_clean_100_cuts(self) -> CutSet: + logging.info("About to get train-clean-100 cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-clean-100.jsonl.gz" + ) + + @lru_cache() + def train_clean_360_cuts(self) -> CutSet: + logging.info("About to get train-clean-360 cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-clean-360.jsonl.gz" + ) + + @lru_cache() + def train_other_500_cuts(self) -> CutSet: + logging.info("About to get train-other-500 cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-other-500.jsonl.gz" + ) + + @lru_cache() + def train_all_shuf_cuts(self) -> CutSet: + logging.info( + "About to get the shuffled train-clean-100, \ + train-clean-360 and train-other-500 cuts" + ) + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-all-shuf.jsonl.gz" + ) + + @lru_cache() + def dev_clean_cuts(self) -> CutSet: + logging.info("About to get dev-clean cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_dev-clean.jsonl.gz" + ) + + @lru_cache() + def dev_other_cuts(self) -> CutSet: + logging.info("About to get dev-other cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_dev-other.jsonl.gz" + ) + + @lru_cache() + def test_clean_cuts(self) -> CutSet: + logging.info("About to get test-clean cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_test-clean.jsonl.gz" + ) + + @lru_cache() + def test_other_cuts(self) -> CutSet: + logging.info("About to get test-other cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_test-other.jsonl.gz" + ) + +class UserLibriAsrDataModule: + """ + DataModule for k2 ASR experiments. + multiple test dataloaders + + This class should be derived for specific corpora used in ASR tasks. + """ + + def __init__(self, args: argparse.Namespace): + self.args = args + + @classmethod + def add_arguments(cls, parser: argparse.ArgumentParser): + group = parser.add_argument_group( + title="ASR data related options", + description="These options are used for the preparation of " + "PyTorch DataLoaders from Lhotse CutSet's -- they control the " + "effective batch sizes, sampling strategies, applied data " + "augmentations, etc.", + ) + group.add_argument( + "--manifest-dir", + type=Path, + default=Path("data/fbank"), + help="Path to directory with train/valid/test cuts.", + ) + group.add_argument( + "--max-duration", + type=int, + default=250.0, + help="Maximum pooled recordings duration (seconds) in a " + "single batch. You can reduce it if it causes CUDA OOM.", + ) + group.add_argument( + "--bucketing-sampler", + type=str2bool, + default=True, + help="When enabled, the batches will come from buckets of " + "similar duration (saves padding frames).", + ) + group.add_argument( + "--num-buckets", + type=int, + default=30, + help="The number of buckets for the DynamicBucketingSampler" + "(you might want to increase it for larger datasets).", + ) + group.add_argument( + "--concatenate-cuts", + type=str2bool, + default=False, + help="When enabled, utterances (cuts) will be concatenated " + "to minimize the amount of padding.", + ) + group.add_argument( + "--duration-factor", + type=float, + default=1.0, + help="Determines the maximum duration of a concatenated cut " + "relative to the duration of the longest cut in a batch.", + ) + group.add_argument( + "--gap", + type=float, + default=1.0, + help="The amount of padding (in seconds) inserted between " + "concatenated cuts. This padding is filled with noise when " + "noise augmentation is used.", + ) + group.add_argument( + "--shuffle", + type=str2bool, + default=True, + help="When enabled (=default), the examples will be " + "shuffled for each epoch.", + ) + group.add_argument( + "--drop-last", + type=str2bool, + default=True, + help="Whether to drop last batch. Used by sampler.", + ) + group.add_argument( + "--return-cuts", + type=str2bool, + default=True, + help="When enabled, each batch will have the " + "field: batch['supervisions']['cut'] with the cuts that " + "were used to construct it.", + ) + + group.add_argument( + "--num-workers", + type=int, + default=2, + help="The number of training dataloader workers that " + "collect the batches.", + ) + + group.add_argument( + "--enable-spec-aug", + type=str2bool, + default=False, + help="When enabled, use SpecAugment for training dataset.", + ) + + group.add_argument( + "--spec-aug-time-warp-factor", + type=int, + default=80, + help="Used only when --enable-spec-aug is True. " + "It specifies the factor for time warping in SpecAugment. " + "Larger values mean more warping. " + "A value less than 1 means to disable time warp.", + ) + + group.add_argument( + "--enable-musan", + type=str2bool, + default=True, + help="When enabled, select noise from MUSAN and mix it" + "with training dataset. ", + ) + + group.add_argument( + "--input-strategy", + type=str, + default="AudioSamples", + help="AudioSamples or PrecomputedFeatures", + ) + + def test_dataloaders(self, cuts: CutSet) -> DataLoader: + logging.debug("About to create test dataset") + test = K2SpeechRecognitionDataset( + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))) + if self.args.on_the_fly_feats + else eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + sampler = DynamicBucketingSampler( + cuts, + num_buckets=self.args.num_buckets, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.debug("About to create test dataloader") + test_dl = DataLoader( + test, + batch_size=None, + sampler=sampler, + num_workers=self.args.num_workers, + ) + return test_dl + + @lru_cache() + def speaker_wise_cuts(self) -> CutSet: + logging.info("About to get speaker-wise cuts") + + # Get speaker list + import os + directory = "/DB/UserLibri/audio_data/speaker-wise-test" + speaker_list = os.listdir(directory) + + manifests = [] + for speaker in speaker_list: + fname = "userlibri_cuts_" + speaker + ".jsonl.gz" + manifests.append(load_manifest_lazy( + self.args.manifest_dir / fname + )) + return manifests, speaker_list + + @lru_cache() + def book_wise_cuts(self) -> CutSet: + logging.info("About to get book-wise cuts") + + # Get book list + import os + directory = "/DB/UserLibri/audio_data/book-wise-test" + book_list = os.listdir(directory) + + manifests = [] + for book in book_list: + fname = "userlibri_cuts_" + book + ".jsonl.gz" + manifests.append(load_manifest_lazy( + self.args.manifest_dir / fname + )) + return manifests, book_list + +class LJSpeechAsrDataModule: + """ + DataModule for k2 ASR experiments. + multiple test dataloaders + + This class should be derived for specific corpora used in ASR tasks. + """ + + def __init__(self, args: argparse.Namespace): + self.args = args + + @classmethod + def add_arguments(cls, parser: argparse.ArgumentParser): + group = parser.add_argument_group( + title="ASR data related options", + description="These options are used for the preparation of " + "PyTorch DataLoaders from Lhotse CutSet's -- they control the " + "effective batch sizes, sampling strategies, applied data " + "augmentations, etc.", + ) + group.add_argument( + "--full-libri", + type=str2bool, + default=False, + help="When enabled, use 960h LibriSpeech. Otherwise, use 100h subset.", + ) + group.add_argument( + "--manifest-dir", + type=Path, + default=Path("data/fbank"), + help="Path to directory with train/valid/test cuts.", + ) + group.add_argument( + "--max-duration", + type=int, + default=250.0, + help="Maximum pooled recordings duration (seconds) in a " + "single batch. You can reduce it if it causes CUDA OOM.", + ) + group.add_argument( + "--bucketing-sampler", + type=str2bool, + default=True, + help="When enabled, the batches will come from buckets of " + "similar duration (saves padding frames).", + ) + group.add_argument( + "--num-buckets", + type=int, + default=30, + help="The number of buckets for the DynamicBucketingSampler" + "(you might want to increase it for larger datasets).", + ) + group.add_argument( + "--concatenate-cuts", + type=str2bool, + default=False, + help="When enabled, utterances (cuts) will be concatenated " + "to minimize the amount of padding.", + ) + group.add_argument( + "--duration-factor", + type=float, + default=1.0, + help="Determines the maximum duration of a concatenated cut " + "relative to the duration of the longest cut in a batch.", + ) + group.add_argument( + "--gap", + type=float, + default=1.0, + help="The amount of padding (in seconds) inserted between " + "concatenated cuts. This padding is filled with noise when " + "noise augmentation is used.", + ) + group.add_argument( + "--on-the-fly-feats", + type=str2bool, + default=False, + help="When enabled, use on-the-fly cut mixing and feature " + "extraction. Will drop existing precomputed feature manifests " + "if available.", + ) + group.add_argument( + "--shuffle", + type=str2bool, + default=True, + help="When enabled (=default), the examples will be " + "shuffled for each epoch.", + ) + group.add_argument( + "--drop-last", + type=str2bool, + default=True, + help="Whether to drop last batch. Used by sampler.", + ) + group.add_argument( + "--return-cuts", + type=str2bool, + default=True, + help="When enabled, each batch will have the " + "field: batch['supervisions']['cut'] with the cuts that " + "were used to construct it.", + ) + + group.add_argument( + "--num-workers", + type=int, + default=2, + help="The number of training dataloader workers that " + "collect the batches.", + ) + + group.add_argument( + "--enable-spec-aug", + type=str2bool, + default=False, + help="When enabled, use SpecAugment for training dataset.", + ) + + group.add_argument( + "--spec-aug-time-warp-factor", + type=int, + default=80, + help="Used only when --enable-spec-aug is True. " + "It specifies the factor for time warping in SpecAugment. " + "Larger values mean more warping. " + "A value less than 1 means to disable time warp.", + ) + + group.add_argument( + "--enable-musan", + type=str2bool, + default=True, + help="When enabled, select noise from MUSAN and mix it" + "with training dataset. ", + ) + + group.add_argument( + "--input-strategy", + type=str, + default="AudioSamples", + help="AudioSamples or PrecomputedFeatures", + ) + + def train_dataloaders( + self, + cuts_train: CutSet, + sampler_state_dict: Optional[Dict[str, Any]] = None, + ) -> DataLoader: + """ + Args: + cuts_train: + CutSet for training. + sampler_state_dict: + The state dict for the training sampler. + """ + transforms = [] + if self.args.enable_musan: + logging.info("Enable MUSAN") + logging.info("About to get Musan cuts") + cuts_musan = load_manifest(self.args.manifest_dir / "musan_cuts.jsonl.gz") + transforms.append( + CutMix(cuts=cuts_musan, prob=0.5, snr=(10, 20), preserve_id=True) + ) + else: + logging.info("Disable MUSAN") + + if self.args.concatenate_cuts: + logging.info( + f"Using cut concatenation with duration factor " + f"{self.args.duration_factor} and gap {self.args.gap}." + ) + # Cut concatenation should be the first transform in the list, + # so that if we e.g. mix noise in, it will fill the gaps between + # different utterances. + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + input_transforms = [] + if self.args.enable_spec_aug: + logging.info("Enable SpecAugment") + logging.info(f"Time warp factor: {self.args.spec_aug_time_warp_factor}") + # Set the value of num_frame_masks according to Lhotse's version. + # In different Lhotse's versions, the default of num_frame_masks is + # different. + num_frame_masks = 10 + num_frame_masks_parameter = inspect.signature( + SpecAugment.__init__ + ).parameters["num_frame_masks"] + if num_frame_masks_parameter.default == 1: + num_frame_masks = 2 + logging.info(f"Num frame mask: {num_frame_masks}") + input_transforms.append( + SpecAugment( + time_warp_factor=self.args.spec_aug_time_warp_factor, + num_frame_masks=num_frame_masks, + features_mask_size=27, + num_feature_masks=2, + frames_mask_size=100, + ) + ) + else: + logging.info("Disable SpecAugment") + + logging.info("About to create train dataset") + train = K2SpeechRecognitionDataset( + input_strategy=eval(self.args.input_strategy)(), + cut_transforms=transforms, + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.on_the_fly_feats: + # NOTE: the PerturbSpeed transform should be added only if we + # remove it from data prep stage. + # Add on-the-fly speed perturbation; since originally it would + # have increased epoch size by 3, we will apply prob 2/3 and use + # 3x more epochs. + # Speed perturbation probably should come first before + # concatenation, but in principle the transforms order doesn't have + # to be strict (e.g. could be randomized) + # transforms = [PerturbSpeed(factors=[0.9, 1.1], p=2/3)] + transforms # noqa + # Drop feats to be on the safe side. + train = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.bucketing_sampler: + logging.info("Using DynamicBucketingSampler.") + train_sampler = DynamicBucketingSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + num_buckets=self.args.num_buckets, + drop_last=self.args.drop_last, + ) + else: + logging.info("Using SingleCutSampler.") + train_sampler = SingleCutSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + ) + logging.info("About to create train dataloader") + + if sampler_state_dict is not None: + logging.info("Loading sampler state dict") + train_sampler.load_state_dict(sampler_state_dict) + + # 'seed' is derived from the current random state, which will have + # previously been set in the main process. + seed = torch.randint(0, 100000, ()).item() + worker_init_fn = _SeedWorkers(seed) + + train_dl = DataLoader( + train, + sampler=train_sampler, + batch_size=None, + num_workers=self.args.num_workers, + persistent_workers=False, + worker_init_fn=worker_init_fn, + ) + + return train_dl + + def valid_dataloaders(self, cuts_valid: CutSet) -> DataLoader: + transforms = [] + if self.args.concatenate_cuts: + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + logging.info("About to create dev dataset") + if self.args.on_the_fly_feats: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + #input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + return_cuts=self.args.return_cuts, + ) + else: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + valid_sampler = DynamicBucketingSampler( + cuts_valid, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.info("About to create dev dataloader") + valid_dl = DataLoader( + validate, + sampler=valid_sampler, + batch_size=None, + num_workers=2, + persistent_workers=False, + ) + + return valid_dl + + def test_dataloaders(self, cuts: CutSet) -> DataLoader: + logging.debug("About to create test dataset") + test = K2SpeechRecognitionDataset( + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))) + if self.args.on_the_fly_feats + else eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + sampler = DynamicBucketingSampler( + cuts, + num_buckets=self.args.num_buckets, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.debug("About to create test dataloader") + test_dl = DataLoader( + test, + batch_size=None, + sampler=sampler, + num_workers=self.args.num_workers, + ) + return test_dl + + @lru_cache() + def train_cuts(self, pseudo=False) -> CutSet: + logging.info("About to get LJSpeech train cuts") + if pseudo: + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_pseudo_cuts_train.jsonl.gz" + ) + else: + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_cuts_train.jsonl.gz" + ) + + @lru_cache() + def dev_cuts(self) -> CutSet: + logging.info("About to get LJSpeech dev cuts") + + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_cuts_dev.jsonl.gz" + ) + + @lru_cache() + def test_cuts(self) -> CutSet: + logging.info("About to get LJSpeech test cuts") + + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_cuts_test.jsonl.gz" + ) \ No newline at end of file diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/beam_search.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/beam_search.py new file mode 100755 index 000000000..b324cc9b7 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/beam_search.py @@ -0,0 +1,2342 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang +# Xiaoyu Yang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import warnings +from dataclasses import dataclass, field +from typing import Dict, List, Optional, Tuple, Union + +import k2 +import sentencepiece as spm +import torch +from model import Transducer + +from icefall import NgramLm, NgramLmStateCost +from icefall.decode import Nbest, one_best_decoding +from icefall.rnn_lm.model import RnnLmModel +from icefall.utils import ( + DecodingResults, + add_eos, + add_sos, + get_texts, + get_texts_with_timestamp, +) + + +def fast_beam_search_one_best( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + A lattice is first obtained using fast beam search, and then + the shortest path within the lattice is used as the final output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + best_path = one_best_decoding(lattice) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search_nbest_LG( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + num_paths: int, + nbest_scale: float = 0.5, + use_double_scores: bool = True, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + The process to get the results is: + - (1) Use fast beam search to get a lattice + - (2) Select `num_paths` paths from the lattice using k2.random_paths() + - (3) Unique the selected paths + - (4) Intersect the selected paths with the lattice and compute the + shortest path from the intersection result + - (5) The path with the largest score is used as the decoding output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + num_paths: + Number of paths to extract from the decoded lattice. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + use_double_scores: + True to use double precision for computation. False to use + single precision. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + + # The following code is modified from nbest.intersect() + word_fsa = k2.invert(nbest.fsa) + if hasattr(lattice, "aux_labels"): + # delete token IDs as it is not needed + del word_fsa.aux_labels + word_fsa.scores.zero_() + word_fsa_with_epsilon_loops = k2.linear_fsa_with_self_loops(word_fsa) + path_to_utt_map = nbest.shape.row_ids(1) + + if hasattr(lattice, "aux_labels"): + # lattice has token IDs as labels and word IDs as aux_labels. + # inv_lattice has word IDs as labels and token IDs as aux_labels + inv_lattice = k2.invert(lattice) + inv_lattice = k2.arc_sort(inv_lattice) + else: + inv_lattice = k2.arc_sort(lattice) + + if inv_lattice.shape[0] == 1: + path_lattice = k2.intersect_device( + inv_lattice, + word_fsa_with_epsilon_loops, + b_to_a_map=torch.zeros_like(path_to_utt_map), + sorted_match_a=True, + ) + else: + path_lattice = k2.intersect_device( + inv_lattice, + word_fsa_with_epsilon_loops, + b_to_a_map=path_to_utt_map, + sorted_match_a=True, + ) + + # path_lattice has word IDs as labels and token IDs as aux_labels + path_lattice = k2.top_sort(k2.connect(path_lattice)) + tot_scores = path_lattice.get_tot_scores( + use_double_scores=use_double_scores, + log_semiring=True, # Note: we always use True + ) + # See https://github.com/k2-fsa/icefall/pull/420 for why + # we always use log_semiring=True + + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + best_hyp_indexes = ragged_tot_scores.argmax() + best_path = k2.index_fsa(nbest.fsa, best_hyp_indexes) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search_nbest( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + num_paths: int, + nbest_scale: float = 0.5, + use_double_scores: bool = True, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + The process to get the results is: + - (1) Use fast beam search to get a lattice + - (2) Select `num_paths` paths from the lattice using k2.random_paths() + - (3) Unique the selected paths + - (4) Intersect the selected paths with the lattice and compute the + shortest path from the intersection result + - (5) The path with the largest score is used as the decoding output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + num_paths: + Number of paths to extract from the decoded lattice. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + use_double_scores: + True to use double precision for computation. False to use + single precision. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + + # at this point, nbest.fsa.scores are all zeros. + + nbest = nbest.intersect(lattice) + # Now nbest.fsa.scores contains acoustic scores + + max_indexes = nbest.tot_scores().argmax() + + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search_nbest_oracle( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + num_paths: int, + ref_texts: List[List[int]], + use_double_scores: bool = True, + nbest_scale: float = 0.5, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + A lattice is first obtained using fast beam search, and then + we select `num_paths` linear paths from the lattice. The path + that has the minimum edit distance with the given reference transcript + is used as the output. + + This is the best result we can achieve for any nbest based rescoring + methods. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + num_paths: + Number of paths to extract from the decoded lattice. + ref_texts: + A list-of-list of integers containing the reference transcripts. + If the decoding_graph is a trivial_graph, the integer ID is the + BPE token ID. + use_double_scores: + True to use double precision for computation. False to use + single precision. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + + hyps = nbest.build_levenshtein_graphs() + refs = k2.levenshtein_graph(ref_texts, device=hyps.device) + + levenshtein_alignment = k2.levenshtein_alignment( + refs=refs, + hyps=hyps, + hyp_to_ref_map=nbest.shape.row_ids(1), + sorted_match_ref=True, + ) + + tot_scores = levenshtein_alignment.get_tot_scores( + use_double_scores=False, log_semiring=False + ) + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + + max_indexes = ragged_tot_scores.argmax() + + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + temperature: float = 1.0, +) -> k2.Fsa: + """It limits the maximum number of symbols per frame to 1. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + temperature: + Softmax temperature. + Returns: + Return an FsaVec with axes [utt][state][arc] containing the decoded + lattice. Note: When the input graph is a TrivialGraph, the returned + lattice is actually an acceptor. + """ + assert encoder_out.ndim == 3 + + context_size = model.decoder.context_size + vocab_size = model.decoder.vocab_size + + B, T, C = encoder_out.shape + + config = k2.RnntDecodingConfig( + vocab_size=vocab_size, + decoder_history_len=context_size, + beam=beam, + max_contexts=max_contexts, + max_states=max_states, + ) + individual_streams = [] + for i in range(B): + individual_streams.append(k2.RnntDecodingStream(decoding_graph)) + decoding_streams = k2.RnntDecodingStreams(individual_streams, config) + + encoder_out = model.joiner.encoder_proj(encoder_out) + + for t in range(T): + # shape is a RaggedShape of shape (B, context) + # contexts is a Tensor of shape (shape.NumElements(), context_size) + shape, contexts = decoding_streams.get_contexts() + # `nn.Embedding()` in torch below v1.7.1 supports only torch.int64 + contexts = contexts.to(torch.int64) + # decoder_out is of shape (shape.NumElements(), 1, decoder_out_dim) + decoder_out = model.decoder(contexts, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + # current_encoder_out is of shape + # (shape.NumElements(), 1, joiner_dim) + # fmt: off + current_encoder_out = torch.index_select( + encoder_out[:, t:t + 1, :], 0, shape.row_ids(1).to(torch.int64) + ) + # fmt: on + logits = model.joiner( + current_encoder_out.unsqueeze(2), + decoder_out.unsqueeze(1), + project_input=False, + ) + logits = logits.squeeze(1).squeeze(1) + log_probs = (logits / temperature).log_softmax(dim=-1) + decoding_streams.advance(log_probs) + decoding_streams.terminate_and_flush_to_streams() + lattice = decoding_streams.format_output(encoder_out_lens.tolist()) + + return lattice + + +def greedy_search( + model: Transducer, + encoder_out: torch.Tensor, + max_sym_per_frame: int, + return_timestamps: bool = False, +) -> Union[List[int], DecodingResults]: + """Greedy search for a single utterance. + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + max_sym_per_frame: + Maximum number of symbols per frame. If it is set to 0, the WER + would be 100%. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + + # support only batch_size == 1 for now + assert encoder_out.size(0) == 1, encoder_out.size(0) + + blank_id = model.decoder.blank_id + context_size = model.decoder.context_size + unk_id = getattr(model, "unk_id", blank_id) + + device = next(model.parameters()).device + + decoder_input = torch.tensor( + [-1] * (context_size - 1) + [blank_id], device=device, dtype=torch.int64 + ).reshape(1, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + encoder_out = model.joiner.encoder_proj(encoder_out) + + T = encoder_out.size(1) + t = 0 + hyp = [blank_id] * context_size + + # timestamp[i] is the frame index after subsampling + # on which hyp[i] is decoded + timestamp = [] + + # Maximum symbols per utterance. + max_sym_per_utt = 1000 + + # symbols per frame + sym_per_frame = 0 + + # symbols per utterance decoded so far + sym_per_utt = 0 + + while t < T and sym_per_utt < max_sym_per_utt: + if sym_per_frame >= max_sym_per_frame: + sym_per_frame = 0 + t += 1 + continue + + # fmt: off + current_encoder_out = encoder_out[:, t:t+1, :].unsqueeze(2) + # fmt: on + logits = model.joiner( + current_encoder_out, decoder_out.unsqueeze(1), project_input=False + ) + # logits is (1, 1, 1, vocab_size) + + y = logits.argmax().item() + if y not in (blank_id, unk_id): + hyp.append(y) + timestamp.append(t) + decoder_input = torch.tensor([hyp[-context_size:]], device=device).reshape( + 1, context_size + ) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + sym_per_utt += 1 + sym_per_frame += 1 + else: + sym_per_frame = 0 + t += 1 + hyp = hyp[context_size:] # remove blanks + + if not return_timestamps: + return hyp + else: + return DecodingResults( + hyps=[hyp], + timestamps=[timestamp], + ) + + +def greedy_search_batch( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """Greedy search in batch mode. It hardcodes --max-sym-per-frame=1. + Args: + model: + The transducer model. + encoder_out: + Output from the encoder. Its shape is (N, T, C), where N >= 1. + encoder_out_lens: + A 1-D tensor of shape (N,), containing number of valid frames in + encoder_out before padding. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + device = next(model.parameters()).device + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + hyps = [[-1] * (context_size - 1) + [blank_id] for _ in range(N)] + + # timestamp[n][i] is the frame index after subsampling + # on which hyp[n][i] is decoded + timestamps = [[] for _ in range(N)] + + decoder_input = torch.tensor( + hyps, + device=device, + dtype=torch.int64, + ) # (N, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_out: (N, 1, decoder_out_dim) + + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + for (t, batch_size) in enumerate(batch_size_list): + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape: (batch_size, 1, 1, encoder_out_dim) + offset = end + + decoder_out = decoder_out[:batch_size] + + logits = model.joiner( + current_encoder_out, decoder_out.unsqueeze(1), project_input=False + ) + # logits'shape (batch_size, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (batch_size, vocab_size) + assert logits.ndim == 2, logits.shape + y = logits.argmax(dim=1).tolist() + emitted = False + for i, v in enumerate(y): + if v not in (blank_id, unk_id): + hyps[i].append(v) + timestamps[i].append(t) + emitted = True + if emitted: + # update decoder output + decoder_input = [h[-context_size:] for h in hyps[:batch_size]] + decoder_input = torch.tensor( + decoder_input, + device=device, + dtype=torch.int64, + ) + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + sorted_ans = [h[context_size:] for h in hyps] + ans = [] + ans_timestamps = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + ans_timestamps.append(timestamps[unsorted_indices[i]]) + + if not return_timestamps: + return ans + else: + return DecodingResults( + hyps=ans, + timestamps=ans_timestamps, + ) + + +@dataclass +class Hypothesis: + # The predicted tokens so far. + # Newly predicted tokens are appended to `ys`. + ys: List[int] + + # The log prob of ys. + # It contains only one entry. + log_prob: torch.Tensor + + # timestamp[i] is the frame index after subsampling + # on which ys[i] is decoded + timestamp: List[int] = field(default_factory=list) + + # the lm score for next token given the current ys + lm_score: Optional[torch.Tensor] = None + + # the RNNLM states (h and c in LSTM) + state: Optional[Tuple[torch.Tensor, torch.Tensor]] = None + + # N-gram LM state + state_cost: Optional[NgramLmStateCost] = None + + @property + def key(self) -> str: + """Return a string representation of self.ys""" + return "_".join(map(str, self.ys)) + + +class HypothesisList(object): + def __init__(self, data: Optional[Dict[str, Hypothesis]] = None) -> None: + """ + Args: + data: + A dict of Hypotheses. Its key is its `value.key`. + """ + if data is None: + self._data = {} + else: + self._data = data + + @property + def data(self) -> Dict[str, Hypothesis]: + return self._data + + def add(self, hyp: Hypothesis) -> None: + """Add a Hypothesis to `self`. + + If `hyp` already exists in `self`, its probability is updated using + `log-sum-exp` with the existed one. + + Args: + hyp: + The hypothesis to be added. + """ + key = hyp.key + if key in self: + old_hyp = self._data[key] # shallow copy + torch.logaddexp(old_hyp.log_prob, hyp.log_prob, out=old_hyp.log_prob) + else: + self._data[key] = hyp + + def get_most_probable(self, length_norm: bool = False) -> Hypothesis: + """Get the most probable hypothesis, i.e., the one with + the largest `log_prob`. + + Args: + length_norm: + If True, the `log_prob` of a hypothesis is normalized by the + number of tokens in it. + Returns: + Return the hypothesis that has the largest `log_prob`. + """ + if length_norm: + return max(self._data.values(), key=lambda hyp: hyp.log_prob / len(hyp.ys)) + else: + return max(self._data.values(), key=lambda hyp: hyp.log_prob) + + def remove(self, hyp: Hypothesis) -> None: + """Remove a given hypothesis. + + Caution: + `self` is modified **in-place**. + + Args: + hyp: + The hypothesis to be removed from `self`. + Note: It must be contained in `self`. Otherwise, + an exception is raised. + """ + key = hyp.key + assert key in self, f"{key} does not exist" + del self._data[key] + + def filter(self, threshold: torch.Tensor) -> "HypothesisList": + """Remove all Hypotheses whose log_prob is less than threshold. + + Caution: + `self` is not modified. Instead, a new HypothesisList is returned. + + Returns: + Return a new HypothesisList containing all hypotheses from `self` + with `log_prob` being greater than the given `threshold`. + """ + ans = HypothesisList() + for _, hyp in self._data.items(): + if hyp.log_prob > threshold: + ans.add(hyp) # shallow copy + return ans + + def topk(self, k: int) -> "HypothesisList": + """Return the top-k hypothesis.""" + hyps = list(self._data.items()) + + hyps = sorted(hyps, key=lambda h: h[1].log_prob, reverse=True)[:k] + + ans = HypothesisList(dict(hyps)) + return ans + + def __contains__(self, key: str): + return key in self._data + + def __iter__(self): + return iter(self._data.values()) + + def __len__(self) -> int: + return len(self._data) + + def __str__(self) -> str: + s = [] + for key in self: + s.append(key) + return ", ".join(s) + + +def get_hyps_shape(hyps: List[HypothesisList]) -> k2.RaggedShape: + """Return a ragged shape with axes [utt][num_hyps]. + + Args: + hyps: + len(hyps) == batch_size. It contains the current hypothesis for + each utterance in the batch. + Returns: + Return a ragged shape with 2 axes [utt][num_hyps]. Note that + the shape is on CPU. + """ + num_hyps = [len(h) for h in hyps] + + # torch.cumsum() is inclusive sum, so we put a 0 at the beginning + # to get exclusive sum later. + num_hyps.insert(0, 0) + + num_hyps = torch.tensor(num_hyps) + row_splits = torch.cumsum(num_hyps, dim=0, dtype=torch.int32) + ans = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=row_splits[-1].item() + ) + return ans + + +def modified_beam_search( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: int = 4, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """Beam search in batch mode with --max-sym-per-frame=1 being hardcoded. + + Args: + model: + The transducer model. + encoder_out: + Output from the encoder. Its shape is (N, T, C). + encoder_out_lens: + A 1-D tensor of shape (N,), containing number of valid frames in + encoder_out before padding. + beam: + Number of active paths during the beam search. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + timestamp=[], + ) + ) + + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for (t, batch_size) in enumerate(batch_size_list): + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [hyp.log_prob.reshape(1, 1) for hyps in A for hyp in hyps] + ) # (num_hyps, 1) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_out is of shape (num_hyps, 1, 1, joiner_dim) + + # Note: For torch 1.7.1 and below, it requires a torch.int64 tensor + # as index, so we use `to(torch.int64)` below. + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = (logits / temperature).log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + + vocab_size = log_probs.size(-1) + + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_ys = hyp.ys[:] + new_token = topk_token_indexes[k] + new_timestamp = hyp.timestamp[:] + if new_token not in (blank_id, unk_id): + new_ys.append(new_token) + new_timestamp.append(t) + + new_log_prob = topk_log_probs[k] + new_hyp = Hypothesis( + ys=new_ys, log_prob=new_log_prob, timestamp=new_timestamp + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + sorted_timestamps = [h.timestamp for h in best_hyps] + ans = [] + ans_timestamps = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + ans_timestamps.append(sorted_timestamps[unsorted_indices[i]]) + + if not return_timestamps: + return ans + else: + return DecodingResults( + hyps=ans, + timestamps=ans_timestamps, + ) + + +def _deprecated_modified_beam_search( + model: Transducer, + encoder_out: torch.Tensor, + beam: int = 4, + return_timestamps: bool = False, +) -> Union[List[int], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + It decodes only one utterance at a time. We keep it only for reference. + The function :func:`modified_beam_search` should be preferred as it + supports batch decoding. + + + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + beam: + Beam size. + return_timestamps: + Whether to return timestamps. + + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + + assert encoder_out.ndim == 3 + + # support only batch_size == 1 for now + assert encoder_out.size(0) == 1, encoder_out.size(0) + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + + device = next(model.parameters()).device + + T = encoder_out.size(1) + + B = HypothesisList() + B.add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + timestamp=[], + ) + ) + encoder_out = model.joiner.encoder_proj(encoder_out) + + for t in range(T): + # fmt: off + current_encoder_out = encoder_out[:, t:t+1, :].unsqueeze(2) + # current_encoder_out is of shape (1, 1, 1, encoder_out_dim) + # fmt: on + A = list(B) + B = HypothesisList() + + ys_log_probs = torch.cat([hyp.log_prob.reshape(1, 1) for hyp in A]) + # ys_log_probs is of shape (num_hyps, 1) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyp in A], + device=device, + dtype=torch.int64, + ) + # decoder_input is of shape (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_output is of shape (num_hyps, 1, 1, joiner_dim) + + current_encoder_out = current_encoder_out.expand( + decoder_out.size(0), 1, 1, -1 + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) + # logits is of shape (num_hyps, 1, 1, vocab_size) + logits = logits.squeeze(1).squeeze(1) + + # now logits is of shape (num_hyps, vocab_size) + log_probs = logits.log_softmax(dim=-1) + + log_probs.add_(ys_log_probs) + + log_probs = log_probs.reshape(-1) + topk_log_probs, topk_indexes = log_probs.topk(beam) + + # topk_hyp_indexes are indexes into `A` + topk_hyp_indexes = topk_indexes // logits.size(-1) + topk_token_indexes = topk_indexes % logits.size(-1) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = topk_hyp_indexes.tolist() + topk_token_indexes = topk_token_indexes.tolist() + + for i in range(len(topk_hyp_indexes)): + hyp = A[topk_hyp_indexes[i]] + new_ys = hyp.ys[:] + new_timestamp = hyp.timestamp[:] + new_token = topk_token_indexes[i] + if new_token not in (blank_id, unk_id): + new_ys.append(new_token) + new_timestamp.append(t) + new_log_prob = topk_log_probs[i] + new_hyp = Hypothesis( + ys=new_ys, log_prob=new_log_prob, timestamp=new_timestamp + ) + B.add(new_hyp) + + best_hyp = B.get_most_probable(length_norm=True) + ys = best_hyp.ys[context_size:] # [context_size:] to remove blanks + + if not return_timestamps: + return ys + else: + return DecodingResults(hyps=[ys], timestamps=[best_hyp.timestamp]) + + +def beam_search( + model: Transducer, + encoder_out: torch.Tensor, + beam: int = 4, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[int], DecodingResults]: + """ + It implements Algorithm 1 in https://arxiv.org/pdf/1211.3711.pdf + + espnet/nets/beam_search_transducer.py#L247 is used as a reference. + + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + beam: + Beam size. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + + # support only batch_size == 1 for now + assert encoder_out.size(0) == 1, encoder_out.size(0) + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + + device = next(model.parameters()).device + + decoder_input = torch.tensor( + [blank_id] * context_size, + device=device, + dtype=torch.int64, + ).reshape(1, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + encoder_out = model.joiner.encoder_proj(encoder_out) + + T = encoder_out.size(1) + t = 0 + + B = HypothesisList() + B.add(Hypothesis(ys=[blank_id] * context_size, log_prob=0.0, timestamp=[])) + + max_sym_per_utt = 20000 + + sym_per_utt = 0 + + decoder_cache: Dict[str, torch.Tensor] = {} + + while t < T and sym_per_utt < max_sym_per_utt: + # fmt: off + current_encoder_out = encoder_out[:, t:t+1, :].unsqueeze(2) + # fmt: on + A = B + B = HypothesisList() + + joint_cache: Dict[str, torch.Tensor] = {} + + # TODO(fangjun): Implement prefix search to update the `log_prob` + # of hypotheses in A + + while True: + y_star = A.get_most_probable() + A.remove(y_star) + + cached_key = y_star.key + + if cached_key not in decoder_cache: + decoder_input = torch.tensor( + [y_star.ys[-context_size:]], + device=device, + dtype=torch.int64, + ).reshape(1, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + decoder_cache[cached_key] = decoder_out + else: + decoder_out = decoder_cache[cached_key] + + cached_key += f"-t-{t}" + if cached_key not in joint_cache: + logits = model.joiner( + current_encoder_out, + decoder_out.unsqueeze(1), + project_input=False, + ) + + # TODO(fangjun): Scale the blank posterior + log_prob = (logits / temperature).log_softmax(dim=-1) + # log_prob is (1, 1, 1, vocab_size) + log_prob = log_prob.squeeze() + # Now log_prob is (vocab_size,) + joint_cache[cached_key] = log_prob + else: + log_prob = joint_cache[cached_key] + + # First, process the blank symbol + skip_log_prob = log_prob[blank_id] + new_y_star_log_prob = y_star.log_prob + skip_log_prob + + # ys[:] returns a copy of ys + B.add( + Hypothesis( + ys=y_star.ys[:], + log_prob=new_y_star_log_prob, + timestamp=y_star.timestamp[:], + ) + ) + + # Second, process other non-blank labels + values, indices = log_prob.topk(beam + 1) + for i, v in zip(indices.tolist(), values.tolist()): + if i in (blank_id, unk_id): + continue + new_ys = y_star.ys + [i] + new_log_prob = y_star.log_prob + v + new_timestamp = y_star.timestamp + [t] + A.add( + Hypothesis( + ys=new_ys, + log_prob=new_log_prob, + timestamp=new_timestamp, + ) + ) + + # Check whether B contains more than "beam" elements more probable + # than the most probable in A + A_most_probable = A.get_most_probable() + + kept_B = B.filter(A_most_probable.log_prob) + + if len(kept_B) >= beam: + B = kept_B.topk(beam) + break + + t += 1 + + best_hyp = B.get_most_probable(length_norm=True) + ys = best_hyp.ys[context_size:] # [context_size:] to remove blanks + + if not return_timestamps: + return ys + else: + return DecodingResults(hyps=[ys], timestamps=[best_hyp.timestamp]) + + +def fast_beam_search_with_nbest_rescoring( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + ngram_lm_scale_list: List[float], + num_paths: int, + G: k2.Fsa, + sp: spm.SentencePieceProcessor, + word_table: k2.SymbolTable, + oov_word: str = "", + use_double_scores: bool = True, + nbest_scale: float = 0.5, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Dict[str, Union[List[List[int]], DecodingResults]]: + """It limits the maximum number of symbols per frame to 1. + A lattice is first obtained using fast beam search, num_path are selected + and rescored using a given language model. The shortest path within the + lattice is used as the final output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + ngram_lm_scale_list: + A list of floats representing LM score scales. + num_paths: + Number of paths to extract from the decoded lattice. + G: + An FsaVec containing only a single FSA. It is an n-gram LM. + sp: + The BPE model. + word_table: + The word symbol table. + oov_word: + OOV words are replaced with this word. + use_double_scores: + True to use double precision for computation. False to use + single precision. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + Return the decoded result in a dict, where the key has the form + 'ngram_lm_scale_xx' and the value is the decoded results + optionally with timestamps. `xx` is the ngram LM scale value + used during decoding, i.e., 0.1. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + # at this point, nbest.fsa.scores are all zeros. + + nbest = nbest.intersect(lattice) + # Now nbest.fsa.scores contains acoustic scores + + am_scores = nbest.tot_scores() + + # Now we need to compute the LM scores of each path. + # (1) Get the token IDs of each Path. We assume the decoding_graph + # is an acceptor, i.e., lattice is also an acceptor + tokens_shape = nbest.fsa.arcs.shape().remove_axis(1) # [path][arc] + + tokens = k2.RaggedTensor(tokens_shape, nbest.fsa.labels.contiguous()) + tokens = tokens.remove_values_leq(0) # remove -1 and 0 + + token_list: List[List[int]] = tokens.tolist() + word_list: List[List[str]] = sp.decode(token_list) + + assert isinstance(oov_word, str), oov_word + assert oov_word in word_table, oov_word + oov_word_id = word_table[oov_word] + + word_ids_list: List[List[int]] = [] + + for words in word_list: + this_word_ids = [] + for w in words.split(): + if w in word_table: + this_word_ids.append(word_table[w]) + else: + this_word_ids.append(oov_word_id) + word_ids_list.append(this_word_ids) + + word_fsas = k2.linear_fsa(word_ids_list, device=lattice.device) + word_fsas_with_self_loops = k2.add_epsilon_self_loops(word_fsas) + + num_unique_paths = len(word_ids_list) + + b_to_a_map = torch.zeros( + num_unique_paths, + dtype=torch.int32, + device=lattice.device, + ) + + rescored_word_fsas = k2.intersect_device( + a_fsas=G, + b_fsas=word_fsas_with_self_loops, + b_to_a_map=b_to_a_map, + sorted_match_a=True, + ret_arc_maps=False, + ) + + rescored_word_fsas = k2.remove_epsilon_self_loops(rescored_word_fsas) + rescored_word_fsas = k2.top_sort(k2.connect(rescored_word_fsas)) + ngram_lm_scores = rescored_word_fsas.get_tot_scores( + use_double_scores=True, + log_semiring=False, + ) + + ans: Dict[str, Union[List[List[int]], DecodingResults]] = {} + for s in ngram_lm_scale_list: + key = f"ngram_lm_scale_{s}" + tot_scores = am_scores.values + s * ngram_lm_scores + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + max_indexes = ragged_tot_scores.argmax() + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + ans[key] = get_texts(best_path) + else: + ans[key] = get_texts_with_timestamp(best_path) + + return ans + + +def fast_beam_search_with_nbest_rnn_rescoring( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + ngram_lm_scale_list: List[float], + num_paths: int, + G: k2.Fsa, + sp: spm.SentencePieceProcessor, + word_table: k2.SymbolTable, + rnn_lm_model: torch.nn.Module, + rnn_lm_scale_list: List[float], + oov_word: str = "", + use_double_scores: bool = True, + nbest_scale: float = 0.5, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Dict[str, Union[List[List[int]], DecodingResults]]: + """It limits the maximum number of symbols per frame to 1. + A lattice is first obtained using fast beam search, num_path are selected + and rescored using a given language model and a rnn-lm. + The shortest path within the lattice is used as the final output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + ngram_lm_scale_list: + A list of floats representing LM score scales. + num_paths: + Number of paths to extract from the decoded lattice. + G: + An FsaVec containing only a single FSA. It is an n-gram LM. + sp: + The BPE model. + word_table: + The word symbol table. + rnn_lm_model: + A rnn-lm model used for LM rescoring + rnn_lm_scale_list: + A list of floats representing RNN score scales. + oov_word: + OOV words are replaced with this word. + use_double_scores: + True to use double precision for computation. False to use + single precision. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + Return the decoded result in a dict, where the key has the form + 'ngram_lm_scale_xx' and the value is the decoded results + optionally with timestamps. `xx` is the ngram LM scale value + used during decoding, i.e., 0.1. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + # at this point, nbest.fsa.scores are all zeros. + + nbest = nbest.intersect(lattice) + # Now nbest.fsa.scores contains acoustic scores + + am_scores = nbest.tot_scores() + + # Now we need to compute the LM scores of each path. + # (1) Get the token IDs of each Path. We assume the decoding_graph + # is an acceptor, i.e., lattice is also an acceptor + tokens_shape = nbest.fsa.arcs.shape().remove_axis(1) # [path][arc] + + tokens = k2.RaggedTensor(tokens_shape, nbest.fsa.labels.contiguous()) + tokens = tokens.remove_values_leq(0) # remove -1 and 0 + + token_list: List[List[int]] = tokens.tolist() + word_list: List[List[str]] = sp.decode(token_list) + + assert isinstance(oov_word, str), oov_word + assert oov_word in word_table, oov_word + oov_word_id = word_table[oov_word] + + word_ids_list: List[List[int]] = [] + + for words in word_list: + this_word_ids = [] + for w in words.split(): + if w in word_table: + this_word_ids.append(word_table[w]) + else: + this_word_ids.append(oov_word_id) + word_ids_list.append(this_word_ids) + + word_fsas = k2.linear_fsa(word_ids_list, device=lattice.device) + word_fsas_with_self_loops = k2.add_epsilon_self_loops(word_fsas) + + num_unique_paths = len(word_ids_list) + + b_to_a_map = torch.zeros( + num_unique_paths, + dtype=torch.int32, + device=lattice.device, + ) + + rescored_word_fsas = k2.intersect_device( + a_fsas=G, + b_fsas=word_fsas_with_self_loops, + b_to_a_map=b_to_a_map, + sorted_match_a=True, + ret_arc_maps=False, + ) + + rescored_word_fsas = k2.remove_epsilon_self_loops(rescored_word_fsas) + rescored_word_fsas = k2.top_sort(k2.connect(rescored_word_fsas)) + ngram_lm_scores = rescored_word_fsas.get_tot_scores( + use_double_scores=True, + log_semiring=False, + ) + + # Now RNN-LM + blank_id = model.decoder.blank_id + sos_id = sp.piece_to_id("sos_id") + eos_id = sp.piece_to_id("eos_id") + + sos_tokens = add_sos(tokens, sos_id) + tokens_eos = add_eos(tokens, eos_id) + sos_tokens_row_splits = sos_tokens.shape.row_splits(1) + sentence_lengths = sos_tokens_row_splits[1:] - sos_tokens_row_splits[:-1] + + x_tokens = sos_tokens.pad(mode="constant", padding_value=blank_id) + y_tokens = tokens_eos.pad(mode="constant", padding_value=blank_id) + + x_tokens = x_tokens.to(torch.int64) + y_tokens = y_tokens.to(torch.int64) + sentence_lengths = sentence_lengths.to(torch.int64) + + rnn_lm_nll = rnn_lm_model(x=x_tokens, y=y_tokens, lengths=sentence_lengths) + assert rnn_lm_nll.ndim == 2 + assert rnn_lm_nll.shape[0] == len(token_list) + rnn_lm_scores = -1 * rnn_lm_nll.sum(dim=1) + + ans: Dict[str, List[List[int]]] = {} + for n_scale in ngram_lm_scale_list: + for rnn_scale in rnn_lm_scale_list: + key = f"ngram_lm_scale_{n_scale}_rnn_lm_scale_{rnn_scale}" + tot_scores = ( + am_scores.values + n_scale * ngram_lm_scores + rnn_scale * rnn_lm_scores + ) + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + max_indexes = ragged_tot_scores.argmax() + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + ans[key] = get_texts(best_path) + else: + ans[key] = get_texts_with_timestamp(best_path) + + return ans + + +def modified_beam_search_ngram_rescoring( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + ngram_lm: NgramLm, + ngram_lm_scale: float, + beam: int = 4, + temperature: float = 1.0, +) -> List[List[int]]: + """Beam search in batch mode with --max-sym-per-frame=1 being hardcoded. + + Args: + model: + The transducer model. + encoder_out: + Output from the encoder. Its shape is (N, T, C). + encoder_out_lens: + A 1-D tensor of shape (N,), containing number of valid frames in + encoder_out before padding. + beam: + Number of active paths during the beam search. + temperature: + Softmax temperature. + Returns: + Return a list-of-list of token IDs. ans[i] is the decoding results + for the i-th utterance. + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + lm_scale = ngram_lm_scale + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + state_cost=NgramLmStateCost(ngram_lm), + ) + ) + + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for batch_size in batch_size_list: + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [ + hyp.log_prob.reshape(1, 1) + hyp.state_cost.lm_score * lm_scale + for hyps in A + for hyp in hyps + ] + ) # (num_hyps, 1) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_out is of shape (num_hyps, 1, 1, joiner_dim) + + # Note: For torch 1.7.1 and below, it requires a torch.int64 tensor + # as index, so we use `to(torch.int64)` below. + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = (logits / temperature).log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + vocab_size = log_probs.size(-1) + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_ys = hyp.ys[:] + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + new_ys.append(new_token) + state_cost = hyp.state_cost.forward_one_step(new_token) + else: + state_cost = hyp.state_cost + + # We only keep AM scores in new_hyp.log_prob + new_log_prob = topk_log_probs[k] - hyp.state_cost.lm_score * lm_scale + + new_hyp = Hypothesis( + ys=new_ys, log_prob=new_log_prob, state_cost=state_cost + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + ans = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + + return ans + + +def modified_beam_search_rnnlm_shallow_fusion( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + sp: spm.SentencePieceProcessor, + rnnlm: RnnLmModel, + rnnlm_scale: float, + beam: int = 4, + return_timestamps: bool = False, +) -> List[List[int]]: + """Modified_beam_search + RNNLM shallow fusion + + Args: + model (Transducer): + The transducer model + encoder_out (torch.Tensor): + Encoder output in (N,T,C) + encoder_out_lens (torch.Tensor): + A 1-D tensor of shape (N,), containing the number of + valid frames in encoder_out before padding. + sp: + Sentence piece generator. + rnnlm (RnnLmModel): + RNNLM + rnnlm_scale (float): + scale of RNNLM in shallow fusion + beam (int, optional): + Beam size. Defaults to 4. + + Returns: + Return a list-of-list of token IDs. ans[i] is the decoding results + for the i-th utterance. + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + assert rnnlm is not None + lm_scale = rnnlm_scale + vocab_size = rnnlm.vocab_size + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + sos_id = sp.piece_to_id("") + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + # get initial lm score and lm state by scoring the "sos" token + sos_token = torch.tensor([[sos_id]]).to(torch.int64).to(device) + init_score, init_states = rnnlm.score_token(sos_token) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + state=init_states, + lm_score=init_score.reshape(-1), + timestamp=[], + ) + ) + + rnnlm.clean_cache() + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for (t, batch_size) in enumerate(batch_size_list): + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] # get batch + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [hyp.log_prob.reshape(1, 1) for hyps in A for hyp in hyps] + ) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = logits.log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + + vocab_size = log_probs.size(-1) + + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + """ + for all hyps with a non-blank new token, score this token. + It is a little confusing here because this for-loop + looks very similar to the one below. Here, we go through all + top-k tokens and only add the non-blanks ones to the token_list. + The RNNLM will score those tokens given the LM states. Note that + the variable `scores` is the LM score after seeing the new + non-blank token. + """ + token_list = [] + hs = [] + cs = [] + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + assert new_token != 0, new_token + token_list.append([new_token]) + # store the LSTM states + hs.append(hyp.state[0]) + cs.append(hyp.state[1]) + + # forward RNNLM to get new states and scores + if len(token_list) != 0: + tokens_to_score = ( + torch.tensor(token_list).to(torch.int64).to(device).reshape(-1, 1) + ) + + hs = torch.cat(hs, dim=1).to(device) + cs = torch.cat(cs, dim=1).to(device) + scores, lm_states = rnnlm.score_token(tokens_to_score, (hs, cs)) + + count = 0 # index, used to locate score and lm states + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + ys = hyp.ys[:] + + lm_score = hyp.lm_score + state = hyp.state + + hyp_log_prob = topk_log_probs[k] # get score of current hyp + new_token = topk_token_indexes[k] + new_timestamp = hyp.timestamp[:] + if new_token not in (blank_id, unk_id): + + ys.append(new_token) + new_timestamp.append(t) + hyp_log_prob += lm_score[new_token] * lm_scale # add the lm score + + lm_score = scores[count] + state = ( + lm_states[0][:, count, :].unsqueeze(1), + lm_states[1][:, count, :].unsqueeze(1), + ) + count += 1 + + new_hyp = Hypothesis( + ys=ys, + log_prob=hyp_log_prob, + state=state, + lm_score=lm_score, + timestamp=new_timestamp, + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + sorted_timestamps = [h.timestamp for h in best_hyps] + ans = [] + ans_timestamps = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + ans_timestamps.append(sorted_timestamps[unsorted_indices[i]]) + + if not return_timestamps: + return ans + else: + return DecodingResults( + tokens=ans, + timestamps=ans_timestamps, + ) + + +def modified_beam_search_rnnlm_LODR( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + sp: spm.SentencePieceProcessor, + LODR_lm: NgramLm, + LODR_lm_scale: float, + rnnlm: RnnLmModel, + rnnlm_scale: float, + beam: int = 4, +) -> List[List[int]]: + """This function implements LODR (https://arxiv.org/abs/2203.16776) with + `modified_beam_search`. It uses a bi-gram language model as the estimate + of the internal language model and subtracts its score during shallow fusion + with an external language model. This implementation uses a RNNLM as the + external language model. + + Args: + model (Transducer): + The transducer model + encoder_out (torch.Tensor): + Encoder output in (N,T,C) + encoder_out_lens (torch.Tensor): + A 1-D tensor of shape (N,), containing the number of + valid frames in encoder_out before padding. + sp: + Sentence piece generator. + LODR_lm: + A low order n-gram LM + LODR_lm_scale: + The scale of the LODR_lm + rnnlm (RnnLmModel): + RNNLM, the external language model + rnnlm_scale (float): + scale of RNNLM in shallow fusion + beam (int, optional): + Beam size. Defaults to 4. + + Returns: + Return a list-of-list of token IDs. ans[i] is the decoding results + for the i-th utterance. + + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + assert rnnlm is not None + lm_scale = rnnlm_scale + vocab_size = rnnlm.vocab_size + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + sos_id = sp.piece_to_id("") + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + # get initial lm score and lm state by scoring the "sos" token + sos_token = torch.tensor([[sos_id]]).to(torch.int64).to(device) + init_score, init_states = rnnlm.score_token(sos_token) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + state=init_states, # state of the RNNLM + lm_score=init_score.reshape(-1), + state_cost=NgramLmStateCost( + LODR_lm + ), # state of the source domain ngram + ) + ) + + rnnlm.clean_cache() + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for batch_size in batch_size_list: + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] # get batch + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [hyp.log_prob.reshape(1, 1) for hyps in A for hyp in hyps] + ) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = logits.log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + + vocab_size = log_probs.size(-1) + + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + """ + for all hyps with a non-blank new token, score this token. + It is a little confusing here because this for-loop + looks very similar to the one below. Here, we go through all + top-k tokens and only add the non-blanks ones to the token_list. + The RNNLM will score those tokens given the LM states. Note that + the variable `scores` is the LM score after seeing the new + non-blank token. + """ + token_list = [] + hs = [] + cs = [] + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + assert new_token != 0, new_token + token_list.append([new_token]) + # store the LSTM states + hs.append(hyp.state[0]) + cs.append(hyp.state[1]) + + # forward RNNLM to get new states and scores + if len(token_list) != 0: + tokens_to_score = ( + torch.tensor(token_list).to(torch.int64).to(device).reshape(-1, 1) + ) + + hs = torch.cat(hs, dim=1).to(device) + cs = torch.cat(cs, dim=1).to(device) + scores, lm_states = rnnlm.score_token(tokens_to_score, (hs, cs)) + + count = 0 # index, used to locate score and lm states + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + ys = hyp.ys[:] + + # current score of hyp + lm_score = hyp.lm_score + state = hyp.state + + hyp_log_prob = topk_log_probs[k] # get score of current hyp + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + + ys.append(new_token) + state_cost = hyp.state_cost.forward_one_step(new_token) + + # calculate the score of the latest token + current_ngram_score = state_cost.lm_score - hyp.state_cost.lm_score + + assert current_ngram_score <= 0.0, ( + state_cost.lm_score, + hyp.state_cost.lm_score, + ) + # score = score + RNNLM_score - LODR_score + # LODR_LM_scale is a negative number here + hyp_log_prob += ( + lm_score[new_token] * lm_scale + + LODR_lm_scale * current_ngram_score + ) # add the lm score + + lm_score = scores[count] + state = ( + lm_states[0][:, count, :].unsqueeze(1), + lm_states[1][:, count, :].unsqueeze(1), + ) + count += 1 + else: + state_cost = hyp.state_cost + + new_hyp = Hypothesis( + ys=ys, + log_prob=hyp_log_prob, + state=state, + lm_score=lm_score, + state_cost=state_cost, + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + ans = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + + return ans diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/checkpoint.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/checkpoint.py new file mode 100755 index 000000000..03d9632f5 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/checkpoint.py @@ -0,0 +1,225 @@ +# Copyright 2021-2022 Xiaomi Corporation (authors: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import glob +import logging +import os +import re +from pathlib import Path +from typing import Any, Dict, List, Optional, Union + +from lhotse.dataset.sampling.base import CutSampler + +import torch +import torch.nn as nn +from torch import Tensor +from torch.cuda.amp import GradScaler +from torch.nn.parallel import DistributedDataParallel as DDP +from torch.optim import Optimizer + +# use duck typing for LRScheduler since we have different possibilities, see +# our class LRScheduler. +LRSchedulerType = object + + +def save_checkpoint( + filename: Path, + model: Union[nn.Module, DDP], + model_avg: Optional[nn.Module] = None, + params: Optional[Dict[str, Any]] = None, + optimizer = None, + scheduler = None, + scaler: Optional[GradScaler] = None, + sampler: Optional[CutSampler] = None, + rank: int = 0, +) -> None: + """Save training information to a file. + + Args: + filename: + The checkpoint filename. + model: + The model to be saved. We only save its `state_dict()`. + model_avg: + The stored model averaged from the start of training. + params: + User defined parameters, e.g., epoch, loss. + optimizer: + The optimizer to be saved. We only save its `state_dict()`. + scheduler: + The scheduler to be saved. We only save its `state_dict()`. + scalar: + The GradScaler to be saved. We only save its `state_dict()`. + rank: + Used in DDP. We save checkpoint only for the node whose rank is 0. + Returns: + Return None. + """ + if rank != 0: + return + + logging.info(f"Saving checkpoint to {filename}") + + if isinstance(model, DDP): + model = model.module + + if type(optimizer) == list: + checkpoint = { + "model": model.state_dict(), + "optimizer_enc": optimizer[0].state_dict() if optimizer is not None else None, + "optimizer_dec": optimizer[1].state_dict() if optimizer is not None else None, + "scheduler_enc": scheduler[0].state_dict() if scheduler is not None else None, + "scheduler_dec": scheduler[1].state_dict() if scheduler is not None else None, + "grad_scaler": scaler.state_dict() if scaler is not None else None, + "sampler": sampler.state_dict() if sampler is not None else None, + } + else: + checkpoint = { + "model": model.state_dict(), + "optimizer": optimizer.state_dict() if optimizer is not None else None, + "scheduler": scheduler.state_dict() if scheduler is not None else None, + "grad_scaler": scaler.state_dict() if scaler is not None else None, + "sampler": sampler.state_dict() if sampler is not None else None, + } + + + if model_avg is not None: + checkpoint["model_avg"] = model_avg.to(torch.float32).state_dict() + + if params: + for k, v in params.items(): + assert k not in checkpoint + checkpoint[k] = v + + torch.save(checkpoint, filename) + + +def load_checkpoint( + filename: Path, + model: nn.Module, + model_avg: Optional[nn.Module] = None, + optimizer = None, + scheduler = None, + scaler: Optional[GradScaler] = None, + sampler: Optional[CutSampler] = None, + strict: bool = True, +) -> Dict[str, Any]: + """ + TODO: document it + """ + logging.info(f"Loading checkpoint from {filename}") + checkpoint = torch.load(filename, map_location="cpu") + + if next(iter(checkpoint["model"])).startswith("module."): + logging.info("Loading checkpoint saved by DDP") + + dst_state_dict = model.state_dict() + src_state_dict = checkpoint["model"] + for key in dst_state_dict.keys(): + src_key = "{}.{}".format("module", key) + dst_state_dict[key] = src_state_dict.pop(src_key) + assert len(src_state_dict) == 0 + model.load_state_dict(dst_state_dict, strict=strict) + else: + model.load_state_dict(checkpoint["model"], strict=strict) + + checkpoint.pop("model") + + if model_avg is not None and "model_avg" in checkpoint: + logging.info("Loading averaged model") + model_avg.load_state_dict(checkpoint["model_avg"], strict=strict) + checkpoint.pop("model_avg") + + def load(name, obj): + s = checkpoint.get(name, None) + if obj and s: + obj.load_state_dict(s) + checkpoint.pop(name) + + if type(optimizer) == list: + load("optimizer_enc", optimizer[0]) + load("optimizer_dec", optimizer[1]) + load("scheduler_enc", scheduler[0]) + load("scheduler_dec", scheduler[1]) + else: + load("optimizer", optimizer) + load("scheduler", scheduler) + + load("grad_scaler", scaler) + load("sampler", sampler) + + return checkpoint + + +def save_checkpoint_with_global_batch_idx( + out_dir: Path, + global_batch_idx: int, + model: Union[nn.Module, DDP], + model_avg: Optional[nn.Module] = None, + params: Optional[Dict[str, Any]] = None, + optimizer = None, + scheduler = None, + scaler: Optional[GradScaler] = None, + sampler: Optional[CutSampler] = None, + rank: int = 0, +): + """Save training info after processing given number of batches. + + Args: + out_dir: + The directory to save the checkpoint. + global_batch_idx: + The number of batches processed so far from the very start of the + training. The saved checkpoint will have the following filename: + + f'out_dir / checkpoint-{global_batch_idx}.pt' + model: + The neural network model whose `state_dict` will be saved in the + checkpoint. + model_avg: + The stored model averaged from the start of training. + params: + A dict of training configurations to be saved. + optimizer: + The optimizer used in the training. Its `state_dict` will be saved. + scheduler: + The learning rate scheduler used in the training. Its `state_dict` will + be saved. + scaler: + The scaler used for mix precision training. Its `state_dict` will + be saved. + sampler: + The sampler used in the training dataset. + rank: + The rank ID used in DDP training of the current node. Set it to 0 + if DDP is not used. + """ + out_dir = Path(out_dir) + out_dir.mkdir(parents=True, exist_ok=True) + filename = out_dir / f"checkpoint-{global_batch_idx}.pt" + save_checkpoint( + filename=filename, + model=model, + model_avg=model_avg, + params=params, + optimizer=optimizer, + scheduler=scheduler, + scaler=scaler, + sampler=sampler, + rank=rank, + ) diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/ctc_decode.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/ctc_decode.py new file mode 100755 index 000000000..9c23e7d66 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/ctc_decode.py @@ -0,0 +1,818 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Liyong Guo, +# Quandong Wang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(1) ctc-decoding +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --decoding-method ctc-decoding + +(2) 1best +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --decoding-method 1best + +(3) nbest +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --decoding-method 1best + +(4) nbest-rescoring +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --lm-dir data/lm \ + --decoding-method nbest-rescoring + +(5) whole-lattice-rescoring +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --lm-dir data/lm \ + --decoding-method whole-lattice-rescoring +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule +from train import add_model_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.decode import ( + get_lattice, + nbest_decoding, + nbest_oracle, + one_best_decoding, + rescore_with_n_best_list, + rescore_with_whole_lattice, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + get_texts, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=15, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="ctc-decoding", + help="""Decoding method. + Supported values are: + - (1) ctc-decoding. Use CTC decoding. It uses a sentence piece + model, i.e., lang_dir/bpe.model, to convert word pieces to words. + It needs neither a lexicon nor an n-gram LM. + - (2) 1best. Extract the best path from the decoding lattice as the + decoding result. + - (3) nbest. Extract n paths from the decoding lattice; the path + with the highest score is the decoding result. + - (4) nbest-rescoring. Extract n paths from the decoding lattice, + rescore them with an n-gram LM (e.g., a 4-gram LM), the path with + the highest score is the decoding result. + - (5) whole-lattice-rescoring. Rescore the decoding lattice with an + n-gram LM (e.g., a 4-gram LM), the best path of rescored lattice + is the decoding result. + you have trained an RNN LM using ./rnn_lm/train.py + - (6) nbest-oracle. Its WER is the lower bound of any n-best + rescoring method can achieve. Useful for debugging n-best + rescoring method. + """, + ) + + parser.add_argument( + "--num-paths", + type=int, + default=100, + help="""Number of paths for n-best based decoding method. + Used only when "method" is one of the following values: + nbest, nbest-rescoring, and nbest-oracle + """, + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""The scale to be applied to `lattice.scores`. + It's needed if you use any kinds of n-best based rescoring. + Used only when "method" is one of the following values: + nbest, nbest-rescoring, and nbest-oracle + A smaller value results in more unique paths. + """, + ) + + parser.add_argument( + "--hlg-scale", + type=float, + default=0.8, + help="""The scale to be applied to `hlg.scores`. + """, + ) + + parser.add_argument( + "--lm-dir", + type=str, + default="data/lm", + help="""The n-gram LM dir. + It should contain either G_4_gram.pt or G_4_gram.fst.txt + """, + ) + + add_model_arguments(parser) + + return parser + + +def get_decoding_params() -> AttributeDict: + """Parameters for decoding.""" + params = AttributeDict( + { + "frame_shift_ms": 10, + "search_beam": 20, + "output_beam": 8, + "min_active_states": 30, + "max_active_states": 10000, + "use_double_scores": True, + } + ) + return params + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + HLG: Optional[k2.Fsa], + H: Optional[k2.Fsa], + bpe_model: Optional[spm.SentencePieceProcessor], + batch: dict, + word_table: k2.SymbolTable, + G: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + - key: It indicates the setting used for decoding. For example, + if no rescoring is used, the key is the string `no_rescore`. + If LM rescoring is used, the key is the string `lm_scale_xxx`, + where `xxx` is the value of `lm_scale`. An example key is + `lm_scale_0.7` + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + + Args: + params: + It's the return value of :func:`get_params`. + + - params.decoding_method is "1best", it uses 1best decoding without LM rescoring. + - params.decoding_method is "nbest", it uses nbest decoding without LM rescoring. + - params.decoding_method is "nbest-rescoring", it uses nbest LM rescoring. + - params.decoding_method is "whole-lattice-rescoring", it uses whole lattice LM + rescoring. + + model: + The neural model. + HLG: + The decoding graph. Used only when params.decoding_method is NOT ctc-decoding. + H: + The ctc topo. Used only when params.decoding_method is ctc-decoding. + bpe_model: + The BPE model. Used only when params.decoding_method is ctc-decoding. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + G: + An LM. It is not None when params.decoding_method is "nbest-rescoring" + or "whole-lattice-rescoring". In general, the G in HLG + is a 3-gram LM, while this G is a 4-gram LM. + Returns: + Return the decoding result. See above description for the format of + the returned dict. Note: If it decodes to nothing, then return None. + """ + if HLG is not None: + device = HLG.device + else: + device = H.device + feature = batch["inputs"] + assert feature.ndim == 3 + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + feature_lens = supervisions["num_frames"].to(device) + + encoder_out, encoder_out_lens = model.encoder(feature, feature_lens) + nnet_output = model.ctc_output(encoder_out) + # nnet_output is (N, T, C) + + supervision_segments = torch.stack( + ( + supervisions["sequence_idx"], + supervisions["start_frame"] // params.subsampling_factor, + supervisions["num_frames"] // params.subsampling_factor, + ), + 1, + ).to(torch.int32) + + if H is None: + assert HLG is not None + decoding_graph = HLG + else: + assert HLG is None + assert bpe_model is not None + decoding_graph = H + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=decoding_graph, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + if params.decoding_method == "ctc-decoding": + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + # Note: `best_path.aux_labels` contains token IDs, not word IDs + # since we are using H, not HLG here. + # + # token_ids is a lit-of-list of IDs + token_ids = get_texts(best_path) + + # hyps is a list of str, e.g., ['xxx yyy zzz', ...] + hyps = bpe_model.decode(token_ids) + + # hyps is a list of list of str, e.g., [['xxx', 'yyy', 'zzz'], ... ] + hyps = [s.split() for s in hyps] + key = "ctc-decoding" + return {key: hyps} + + if params.decoding_method == "nbest-oracle": + # Note: You can also pass rescored lattices to it. + # We choose the HLG decoded lattice for speed reasons + # as HLG decoding is faster and the oracle WER + # is only slightly worse than that of rescored lattices. + best_path = nbest_oracle( + lattice=lattice, + num_paths=params.num_paths, + ref_texts=supervisions["text"], + word_table=word_table, + nbest_scale=params.nbest_scale, + oov="", + ) + hyps = get_texts(best_path) + hyps = [[word_table[i] for i in ids] for ids in hyps] + key = f"oracle_{params.num_paths}_nbest_scale_{params.nbest_scale}" # noqa + return {key: hyps} + + if params.decoding_method in ["1best", "nbest"]: + if params.decoding_method == "1best": + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + key = "no_rescore" + else: + best_path = nbest_decoding( + lattice=lattice, + num_paths=params.num_paths, + use_double_scores=params.use_double_scores, + nbest_scale=params.nbest_scale, + ) + key = f"no_rescore-nbest-scale-{params.nbest_scale}-{params.num_paths}" # noqa + + hyps = get_texts(best_path) + hyps = [[word_table[i] for i in ids] for ids in hyps] + return {key: hyps} + + assert params.decoding_method in [ + "nbest-rescoring", + "whole-lattice-rescoring", + ] + + lm_scale_list = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7] + lm_scale_list += [0.8, 0.9, 1.0, 1.1, 1.2, 1.3] + lm_scale_list += [1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0] + + if params.decoding_method == "nbest-rescoring": + best_path_dict = rescore_with_n_best_list( + lattice=lattice, + G=G, + num_paths=params.num_paths, + lm_scale_list=lm_scale_list, + nbest_scale=params.nbest_scale, + ) + elif params.decoding_method == "whole-lattice-rescoring": + best_path_dict = rescore_with_whole_lattice( + lattice=lattice, + G_with_epsilon_loops=G, + lm_scale_list=lm_scale_list, + ) + else: + assert False, f"Unsupported decoding method: {params.decoding_method}" + + ans = dict() + if best_path_dict is not None: + for lm_scale_str, best_path in best_path_dict.items(): + hyps = get_texts(best_path) + hyps = [[word_table[i] for i in ids] for ids in hyps] + ans[lm_scale_str] = hyps + else: + ans = None + return ans + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + HLG: Optional[k2.Fsa], + H: Optional[k2.Fsa], + bpe_model: Optional[spm.SentencePieceProcessor], + word_table: k2.SymbolTable, + G: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + HLG: + The decoding graph. Used only when params.decoding_method is NOT ctc-decoding. + H: + The ctc topo. Used only when params.decoding_method is ctc-decoding. + bpe_model: + The BPE model. Used only when params.decoding_method is ctc-decoding. + word_table: + It is the word symbol table. + G: + An LM. It is not None when params.decoding_method is "nbest-rescoring" + or "whole-lattice-rescoring". In general, the G in HLG + is a 3-gram LM, while this G is a 4-gram LM. + Returns: + Return a dict, whose key may be "no-rescore" if no LM rescoring + is used, or it may be "lm_scale_0.7" if LM rescoring is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + HLG=HLG, + H=H, + bpe_model=bpe_model, + batch=batch, + word_table=word_table, + G=G, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % 100 == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats(f, f"{test_set_name}-{key}", results) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + args.lang_dir = Path(args.lang_dir) + args.lm_dir = Path(args.lm_dir) + + params = get_params() + # add decoding params + params.update(get_decoding_params()) + params.update(vars(args)) + + assert params.decoding_method in ( + "ctc-decoding", + "1best", + "nbest", + "nbest-rescoring", + "whole-lattice-rescoring", + "nbest-oracle", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + logging.info(params) + + lexicon = Lexicon(params.lang_dir) + max_token_id = max(lexicon.tokens) + num_classes = max_token_id + 1 # +1 for the blank + + params.vocab_size = num_classes + # and are defined in local/train_bpe_model.py + params.blank_id = 0 + + if params.decoding_method == "ctc-decoding": + HLG = None + H = k2.ctc_topo( + max_token=max_token_id, + modified=False, + device=device, + ) + bpe_model = spm.SentencePieceProcessor() + bpe_model.load(str(params.lang_dir / "bpe.model")) + else: + H = None + bpe_model = None + HLG = k2.Fsa.from_dict( + torch.load(f"{params.lang_dir}/HLG.pt", map_location=device) + ) + assert HLG.requires_grad is False + + HLG.scores *= params.hlg_scale + if not hasattr(HLG, "lm_scores"): + HLG.lm_scores = HLG.scores.clone() + + if params.decoding_method in ( + "nbest-rescoring", + "whole-lattice-rescoring", + ): + if not (params.lm_dir / "G_4_gram.pt").is_file(): + logging.info("Loading G_4_gram.fst.txt") + logging.warning("It may take 8 minutes.") + with open(params.lm_dir / "G_4_gram.fst.txt") as f: + first_word_disambig_id = lexicon.word_table["#0"] + + G = k2.Fsa.from_openfst(f.read(), acceptor=False) + # G.aux_labels is not needed in later computations, so + # remove it here. + del G.aux_labels + # CAUTION: The following line is crucial. + # Arcs entering the back-off state have label equal to #0. + # We have to change it to 0 here. + G.labels[G.labels >= first_word_disambig_id] = 0 + # See https://github.com/k2-fsa/k2/issues/874 + # for why we need to set G.properties to None + G.__dict__["_properties"] = None + G = k2.Fsa.from_fsas([G]).to(device) + G = k2.arc_sort(G) + # Save a dummy value so that it can be loaded in C++. + # See https://github.com/pytorch/pytorch/issues/67902 + # for why we need to do this. + G.dummy = 1 + + torch.save(G.as_dict(), params.lm_dir / "G_4_gram.pt") + else: + logging.info("Loading pre-compiled G_4_gram.pt") + d = torch.load(params.lm_dir / "G_4_gram.pt", map_location=device) + G = k2.Fsa.from_dict(d) + + if params.decoding_method == "whole-lattice-rescoring": + # Add epsilon self-loops to G as we will compose + # it with the whole lattice later + G = k2.add_epsilon_self_loops(G) + G = k2.arc_sort(G) + G = G.to(device) + + # G.lm_scores is used to replace HLG.lm_scores during + # LM rescoring. + G.lm_scores = G.scores.clone() + else: + G = None + + logging.info("About to create model") + model = get_transducer_model(params) + + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + librispeech = LibriSpeechAsrDataModule(args) + + test_clean_cuts = librispeech.test_clean_cuts() + test_other_cuts = librispeech.test_other_cuts() + + test_clean_dl = librispeech.test_dataloaders(test_clean_cuts) + test_other_dl = librispeech.test_dataloaders(test_other_cuts) + + test_sets = ["test-clean", "test-other"] + test_dl = [test_clean_dl, test_other_dl] + + for test_set, test_dl in zip(test_sets, test_dl): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + HLG=HLG, + H=H, + bpe_model=bpe_model, + word_table=lexicon.word_table, + G=G, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/config.yaml b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/config.yaml new file mode 100755 index 000000000..b2cb499ad --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/config.yaml @@ -0,0 +1,59 @@ +world_size: 4 +master_port: 12354 +tensorboard: True +num_epochs: 30 +start_epoch: 1 +start_batch: 0 +exp_dir: pruned_transducer_stateless_d2v_v2/d2v-T +bpe_model: data/lang_bpe_500/bpe.model +base_lr: 0.05 +lr_batches: 5000 +lr_epochs: 3.5 +context_size: 2 +prune_range: 10 +lm_scale: 0.25 +am_scale: 0.0 +simple_loss_scale: 0.5 +ctc_loss_scale: 0.2 +seed: 42 +print_diagnostics: False +inf_check: False +save_every_n: 2000 +keep_last_k: 30 +average_period: 200 +use_fp16: True +num_encoder_layers: 2,4,3,2,4 +feedforward_dims: 1024,1024,2048,2048,1024 +nhead: 8,8,8,8,8 +encoder_dims: 384,384,384,384,384 +attention_dims: 192,192,192,192,192 +encoder_unmasked_dims: 256,256,256,256,256 +zipformer_downsampling_factors: 1,2,4,8,2 +cnn_module_kernels: 31,31,31,31,31 +decoder_dim: 768 +joiner_dim: 768 +wandb: False +accum_grads: 4 +multi_optim: True +peak_enc_lr: 0.0003859 +peak_dec_lr: 0.04175 +encoder_type: d2v +encoder_dim: 768 +freeze_finetune_updates: 3000 +additional_block: True +decode_interval: 200 +manifest_dir: data/fbank +max_duration: 150 +bucketing_sampler: True +num_buckets: 30 +concatenate_cuts: False +duration_factor: 1.0 +gap: 1.0 +shuffle: True +drop_last: True +return_cuts: True +num_workers: 2 +enable_spec_aug: False +spec_aug_time_warp_factor: 80 +enable_musan: True +input_strategy: AudioSamples diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/run.sh b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/run.sh new file mode 100755 index 000000000..6af07cfa3 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/run.sh @@ -0,0 +1,69 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T \ + --max-duration 150 \ + --freeze-finetune-updates 3000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --accum-grads 4 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Decoding" + + for method in modified_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoch-27.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 + done +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671954484.icefall.3524353.0 b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671954484.icefall.3524353.0 new file mode 100755 index 0000000000000000000000000000000000000000..3f32869f1c37fe06cdc05b7c400cbece1076fc71 GIT binary patch literal 39354 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671968552.icefall.4052698.0 b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671968552.icefall.4052698.0 new file mode 100755 index 0000000000000000000000000000000000000000..58613bb12ef30de6713e88a2bc2a7a9b955a9dc3 GIT binary patch literal 39354 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 CohYvW literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672019298.icefall.387040.0 b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672019298.icefall.387040.0 new file mode 100755 index 0000000000000000000000000000000000000000..686e7324722c87a6732d13c0c025e3b6a57d0701 GIT binary patch literal 1743419 zcmagnc|c8D`@r#LjVg-Bm{2K_se?m%?UNzO5F%tq#)M?NhD;GMCuAm+LS`W zC?cf6SdkLHd(V4+p7q?b_d4(2_xpO5=hHqq!#-vz|NGyum4hsFLWf=&-M91!*VJIL z|D+jy9i12Y_yzQISnycCW6OX4yJ3T5W;zpt?Z*D|-`SYxHqg}z_~*avE0I`CmPxQ`zKePx$mr_wc$_PQn$HoqyPQM-V6Nw z|326R?|{GmPv*>@Z<>*{*}3NUp-iiP+uw5=x#+A3{?nT4HqmW>TX}b(>0M{7Gn(n0 z{_SRuZ$4D#$HqUMg>Ea|Cb*kFWA&6-?A#ws{W|1NPE8#!=Rc>NKYqnt%YUaP9Rgi-T(0H?Mr)i1`}a?sKcq-SCwS+d zw25wGU8Dc~snh%?O_?y?dy=n@+~B?DFVYdC((NPtSH78kZ#T$Zq-^&`y0T zupmb)s zSW2I;=_D1|4~wWAWN_WRKdHFE(V_L@I{th0Oupw)qw~mqNQm5En34zM183GqjK+0X zis~`l1Zzcw+WTJge)_gq0wV0$18Nq-UX>G_&!5xWYW?rvJ$_G6(Xo?2Ol=f7Tp6-a zHqvIDpZ&jKXjR4po#LJlDuEb(Hj+2Ut=ok9y}g+|y{Gt9kN8uU*4;;gPwoRfH8`U9 z)M|`#-K^DP+x|Ov>5c9cI`y3(6td`0f2*v@VQ(DzNsr?oVqn}cG>v~)uly@&y?N1= zKIOFm&v@-Aokz6)ci8K%V*BZsIYTSX(Z=%WMFdLyqw4`V$8;qeCnkqThPG+=0@Zwl zV6Di};MAwy7TPL}5XbXXP_sBjM436y9Jgmb+UoP~5K~)499=BC%3Sjo+9FQnKOj`X zvGlGB|KL>k1=N43W%l%2aeVW2l=I6(=}W{>PsQ!es)RUh zs#quUx^b&1BBiMY5rbpt+f#f)QQjImcQh90xrOlXSimmxbybw*+fNjz>qUNY&p&x*?8V5};;r>{4dw9ADe$D%$Gp zB#5c4B966A17)TjO??ojWyugK;rQT*KVKRBBnI_%smz{Ul)<E_Gs{mH0Y_p z5yyRwL!7gpR2)Ja_uYk1h~w0hqXoA|}2cj)~%I>$K z_=3Hwk`TuOkDwLjm`S!KBT!G{n%$6dj8S9%i?Occh~!E0$JMAVxFuLCa$NUJTUy}$ z{TSldAQ5U7M~}W^oi`5+>W;Rme+Ob}tB7Mg@4sZjT%GyIZ< zpO?z)=|$CBa)9So=9#0xAE!f44URaz7}?)BG%u(J;uw1mLLrW?gM4K#w%;I#)W!!8 zF*sT;3F2RTXzqmCnU6$U`jojX_VT_Jj}{@0Lo%Ti=U7bAb|6rNzasC+IlffFvC;R_ zk`o)2^hLFUMwC#k$Z^~lW9hmF*ES%IQCd*5I2M#yIQxHFZ;iI9sRJ>!RmAbgUOUQWn)8~K#dWB6F<|!eqIQ|;@F6>IM4`b04WXw7M;txc^mHD2{j3Y( zxZ4;)Ahs$I`wC5pGry4@U;CP~9B!A4Rhc9X`nTodbDLqX5c#j>%#}UVz#?Xp$ zG%9;}7J-_&E%3RV<92oS)v<@lWr^YUX7f;;wo|ZHGeNUQ}+t5RyIQ zHoMVy_j;flsB_>y`hNId}B3LVO zJU!S#+9dAWNW^h&FQ{1@^}W_NZUTF?)JZDcLHdL%#(L(BP|i=&8XG$F+}}Ios_ldWSgrJ3}bMvGrj~+1fp= z4G}4?{tz)ZYR)#{KlSstg<9D_(Uv~thsjaoa^t!J#BuZ>XvH~ho0yf2K<(0+SR?0H zrG(?`%yh}7zPH+-`ns-Qt;q4|E*q)w>*h6x<5hjASsZI-w{jlf_1y$*wOf6NsjVW8 zW}Pf$qxSX>K%AlsAymS#YNiptOSAe0>YExfdwNkRog0zlZuUGHJiGz))ZmEY3itZX zAK&a4gE)3Ffl!F!oKGgQMo$j*K%};qLd4+s_PRE&|Fa=}lIVRS(Uv}C?@3ch_MrI< z5l0s@XvI0^@AGYlK)ob)be#Tq4e+D}`@wq4<#b7MpR#YLzTqrbD{^eJ!bTcbmQ#*6 zy7z~g#c}TaSXtA9eap~RZx4W&+A89B-|7}W%*_7);?&LsLM0qmzfUA@J03Db{hC3{ zo?g_hZFQVyV-Fb`ykao))ZmEY>xep8*q1?hh@-0;ghCt_1!>8K#6LKSI7SYEh`~{_ zMvYesy>kk+s>4KE`jmHHcO&)nuCGQMCk=;Ioa4)@*K`r6s@%*ba*j`xaO}P}U6TK* z`EyiUGSQYk<)X&TNa=!5Z^Uu)2WZ7P9zEVE z9f5M#scJ3fxJi?Jb)2yzT~eF(!4B1*_XyUC92dCQNZ%jaHUV87kA*|c;+W?UEt`C1 zwU z*k_0s9DCoZA|}&*WT5uj7txkJ<@I~2#GzBjUBq!i1+?NE(=3bYBT!!TH};ov{G^0q zh(o%h*ZMh4P+e^-SSxbeR^LWieQBgE;yB3!Y8J5 zZWH3D*%Cq_jz{ZX;iv5FJ_?a)*cu`R$DJlsB;?mmbJSY25pC&HZnpZ(%};%jjyU#d z3#~ZEzG3H=AW$>gob`}%Jfg*ZunyKsmpC=o{DEpqE5TZkW7r34soI9ln-Rx>Hc+!T z_D}PWNmfSVUr@W*LQHKHactwhgLe(+8iqKTbc9d|$CJ~)laR?PW~08O6SJomwRdeb zC)G+xK^z}`8pN{>=EwJELAdaPu(28?hx@2Kb1nT=B!)bDkSxPwCzD|>L9T0l})k$uG zwIavEcdey9mwuKYjuVDL&Ej}8ZjY?RlAt8C)rZ3%rnZVW>RKo8o|Z51J9-@4AymTg z;{qc-cY$sc;<$ALv!@sJWtlzM@WEjh8eC-*^wi*pL8AzJs=d~sI%)J ze=tf5zkl@GXowgb-Ac>Jj@ko_5XaG;qAh*O)t^eaDBr^!5yynF(28@MY}Vs20@d}I z=R!Hhb@kX+$7Pq(B)1l&k4Cjqfncr3@j`^P)ZMblb;Pmo1=K8#WAX;cI;p*CgSI-l z5MpYph-0IuHGJ->QFe$^$}0$!a4h2=5nKOe38=R(V)pc+9J@Z}M(lCL&)-MBfu0&1 zaWr=Fl}**}RgO67y@ODQw;}8mQ9RK$}O;+dKe2YlAoq&kJ zacNi?nV*#L8nvFML|gilR}MVmZhcEwg*YyXf>xYk`ns}*2vk+ zGuEw8t$JCoR^(_n%3Atx=?@pg@%9y{SsWW2T`99!ng0ZBb>KCKsjVW8clD3(Pv;vP zLY$J~AXLKfs!9zpB%>aq-th*rrx$f{&0X&3SV=!L__dqRQ-dRp+xL!=bsuFo0&%ps z1)&hfnZ35~7hA7zL!>s{hKRv&yL~wcX&uxMwG|1XEq%(yQ(kaaO*Ky;j#HAL73ZjL z*8DR9Rlhp!xSV6SHv7T)UfVRu?78o=oB^;yP)Dhdo2L2DA|@-sJ1B-tQ9%F z`DG;0_&4?d&}dTMaQ(Xpz(%&yrRf;i6p0HF}aucw3fC%t}P zQbC^}VsOlLD<<*tB`Xof&@ZAbeacNWSzO0CtDO+XD;3a+bL_lPzYKvI+iYc$oa1jL z9NpqlC6#SPK0$TA)`GPn$B+yw>HT3o^$^GSHc+!T)^;5yi_d9_-{W7|7Gi3vh+{qT zP=0EoTy@OJ3PL3uzs*(WJ#QxB7a1LGm_5Cy&-Jr8ucFcC(a({eE%emjh~o?YezLK# z8-ozXwH+Z8;uxhC#GAdEC&8rbA!2asIP^WauR3BbYL7XHw)83E+h%fm>v^9>922@i zE6y>_KC2jkG8oq(OU^M?hy7qZepRYuz{%P87op!?g0&(?-@{hYS?S9EZONYvL%VfOT*0xj-v z0b@JvMT0Mz3OzMA;+VaMm*re4IDj}7PJ>X0w%i9%`$#(wu zDfELgMO*rmy_-Mg4wAxB#8J~1T5*oLk4&Z@j>Q?fUduTaDd9M>U#cY4y7VckpJofz ziX7MbSxF}}x$+coT$2kmi{mW+PO{E^nK#f@f8{|;Z545}Ua*3{>wgtL4et9CLM0qK z9Ihh6jq6+y$Lwd!o?g^E?R>65-Qo6V@W1k*rv^tHr`+abMcO$|h~wh|2!%MR#;)Ou zZ7hZ$jy5kLVsOkk`ku_~zM&IpR~L%5^eI(~A87dNI4yZh{18D^J~(&b&t!aJ$^{ErB9hr6VEkl zV{`~{)I9>NILC7iI?)JJa|b(B?w|KNrYhlRdpAYWIb};Osvma~tQ9%#*0hpln``0w zt<38IHH%}M-2mB<)Cu@Ef_IJ(Q(HwGKNqj#>n9m}LYxNogir~`4cQ;a!G=q+Q6Jfh z+0%;}Rda^37_((C;@DIQJvBJu_|rft(@kHRi8u!Ifl!E}&&8Fz+WeoN5vhlLA!2Z> zeejwjEHRvnT1!r}rBCU*Hi0{??^}a7t|iclbNrdOLmhz{aP_W{oZ}BA99ssbNcgQG z6{zlaU9eW-Ofx<%5pC5c9%5>%h@<(dzn}V;uQvyA zdTsuBUAF^j@fkDes+*=a$5^OGX?&r$Q^vv1M9! zZ3ODzo8_(K98c@9AFM6=rAVCqYJoqTF#5eW6-0_Vl8p#s%Ee<)uc5 zW7;R^slgG)*^eA$^EMB?k2tpf0-+GcLxY#{e#_T>K%~}vg^0m%%;7@P{mZ0C)V`_^ zZRu0Se!0Po4EWg+aU5I)tvJV@_10M;j!%vUcan1~P{OgFYKp|Oep?$63ubT0w~8oO94qgCmYNNA!?I6)gCOI6jVrP>5rE`C@)oNelez zNY@JxF*sgp^@?2n;-`){?z$-2(x>cv_9mCTLiaV|sCgM$agL4Zjfq5{Hs3YrE9baX zpM7=Q9+xcnJT84Cs_PyI)`}c8TD6xhw1~p@N$Z^fHH+im2oD))cexkZs_Zeu)K(G4 znr|VzVU5EU#Hmj2B8o~_n3uz_Qzpfh?G`7L=299jeAMTJ+C>Uw!A>JrB4~5ew~}%|1|zp z=H*Lh#W^}gULAu#WmSH2lXFZ^!m+-8vgAi}2*&)dTCi5+c>Q%dsYyR;dvtYNRs%JQ z;CJ*~&=76uQ=WWwiJSY@c{aK_w$*}GoMW_$8NP#Af>$>$ImZem9Mjq-OU{;6 z1|rO@y#;GUj+MvSNgw{Da~yFr_ko(lF?sk9S%>F(|M>*eREVjqB92!~H}E;FE4w33 zJElXZgkx!^3ex;p+-cNHXEJ+wQFE7`;I_wC;@7Ny&VrsA9C6$l)m?V3Pr@|BF=94^ zLLB4m7xLRGj_*et2hM?r!EuXuAxT^1^$xXVb46SFlsc}LIE|zxGZDv7e`v)y8dv&p z2vqEvBeUfkBMjIN*7u&@k+?=wZbbF#Ai-LZW1M$8>6yGD{1%GD4N$We%aLjSY zR_Lk05yv&ty2;+Y|9Ba3e6tNgA&w^23;0Jn$8|)c=Inro!7*@kAz3^=>H%tNcZ#<3 zDKAA{+h5{`Sz)cLec zomQa!c@eXx7Zuy7n7dDkLebzV@1Um!M;yb9y301(>pepp)!suW#4&aK0zSKF`$0rX zy%Zt_$5$&~k*AuIzMxj6T(qT6ng06<*TT5B4dPh;Bedcin|{mhjX;@~7jKqx46e_< zIzH)hN1`1`%28eOS+G{**x+Sb=@g^h;fSMc1=K8#CNrnXKBv~BGaa>)r zgP&sCqX=;__zs~Gj+Z87_n%UEfTKzJCoAA;A-){6x4fNFDh+|g&uCjvt z^=BcDFMdKO#IcWA0B_Xz=Wj&n;xC9894}0KMb1B$xuZ5%<^3NU|7qz{E{VUz1?>vl zhd54GgI1j5inH%r5U9-Adi&)ZuPfpB<3o~U_@r~@sBSe+uvX-Fd0$(phNRhH#IgN+ zs97A>9aE9*{ybO%U1WX)Kum2FaeO}1jz8@5A|7$Nu@FKf9CJbslX~Br8lryTVrEY- zDtKQI*L>}((`fL1OQEL*M;u4Wy2@^+kg15H$}$LrIPTvcz<=5H@d_e!X*opyAw}Pk zzNz0U($=lRCe%({DcaJftXc7pI}&ra3F2tE3R-cFr_A*5E%97i>^v>!_(2KBE#XNL z6_jyQJ6v6mSq4oyHD z`3?{YaeP}mmp^EJ+ZvHNXA2R7qkr8CGP;EWe%{fnqi9Q?(&S7w7r5H$3F5f96SU$S z>)kw9imq>Gy9C9_IUX`(KUhcfPm)A5*?Jz;3mpY(MUJiOx0M!p>@z@D$LO9=vpDvB z&{B5QVRRVU>XF_MQ(HwG2gHr!)!x+WfH(#9flvv@+K^=8Z+p!N_1;d*o?eu+#|dt5 zpG7;+;9dlJYH-Z4ZztKt@vUi#$fhAWny#L#TwKucaDa z7(Yx8^>GEvo?g_~AY(GVMM6(B_=lI!Q-dRpWe4qKMLj3PB96aaK`6xWTfi(nVPCon zBGupxL=27>UOgqle0@VvYw=FBrBAuv|1r08nn?z_I!=5Ktr$lYr!Q7n^ARYm8CUb= z9M>4Jua2w26D9q}zaEO}LSMmJk>k;2mQrJf*lfgc#2lzu9Dg?MD(m|DSUTG3#(5A^ zTSXkBdN1R-yZvq=PM79GsDxudlM1ppMiqZfJ7WQ}rx)eZw~q5L47?4moFa>=;?__*)4;J!I4XUPS#K4d{EnUg=kBkaqpcUuXYtAxU{`@Cq#N5s*hHMHU!LvN(s zMc227Umog`f8Kt(*O>iaZM!u=k{jF-KWn+5O0ZVsn6tNybV<|^6~wXjJJc+W@vVl) z-rI)YH&wgTKum2FaeP#^kstEbNeyvY^%FuR99z3<@U|`Q&qDpVU(B9fl%d8mZr9y` z+tAO^50yuM{>G`n5ywFRwz7lezrP}m7U~cRacrzNo$na$gg-0ostFN;Od>badTfI{JP3QbL*yZj`x&s?A9ega#+3T1%x@f zm0+#NvB}^z(vZiI-4I9DHc+!T%I-MINX~2g(XF7i5K~)499dSpjvr#C1byLL_dTMaQ@zW1$S;ms}_}<`V9U&CrsM^(s z?-u%Y86stG4-tc7<2kuxN2pI%)N&4@Eq%(X(=xcUX-^j-j^n#RE6&k8=4>VcHGOCo zYdOa{B^>p0Z%Z;`ZsLDCmW>ds6*-QpvydA0tD1v2>UluT;;7!Vi_A0m*>ZG|`7#<} zYO9E&=i#M%sPW@b=<1g0384~>!Bc*dtmfP7P`_^+v!@rewn;YEVQ3>M8hoV}^wi*p zV_~heY?tHG3+U?THW5N0j*nhV;r;hL4@0CHPKJoVu{7H#QMzEjKK z-X3fB5OF-=1Fbm67~fa;qpALv!X4!t&o*E`SjR8AEy;1cor5q>yee2Lay$`ZAq{Hl zhd=hO5(hPlWBaq#GL4FDJ(G@FqP*j+^!=|Q{R(dwNl;onyHdmD_)!!86A|PYsSZ9?a+<8&fq4--Y7$ zSO|qUrhK2uKMWj?-_c|11rdYepzIWX*jCu8BXvH~p z?eGj=9ox^I;vwg_vmyKHn1AJ#WW)yVuL$#Kf5BRj<6=Dv>55y1%Mr)S0H|3U>)sGq zbz^-yv{mgz5K~)490QLm=f8ev(ExF>SpuOFj={qV$c{15cTms$#q8-tX`N9a2kv@Z zL4z+`4m~wE;^_U}T2|A|x*NJW2Csxrh~t98e_tIB)Hxth`&L23;5gDFmz3@viEpS9 zy+*X9PkHEM2KPAl%wu$QyuS`wagKXbPX9un%u)lV$~h)0;pjE$mLz?5!cSB`O&6>c zIT~MUEghFQ8-H`cyn9fyI9Au|APZPAY82Y)>-!K>TSXjG9jEc0=RWd?(}sr-D&eTQ zE{nLni`$L*ibu?zUR1#kHL~;N@kwa#O_|VBgCmYB3OmT=^3p8C@$+K{g*fIu^x=D{ z1V2O^-LfHKa9p1finjDA_l0M1o12Z_ zh&Xn*0IfJjS2K?*2$Xi^%5`#%ktXa1>*d?xC0CEuE<^R0?}D`=#|-1vQsWyN3BC(Ow>k)wa4a5Q{r5i;R9Ya;n!lMn zy{OcQce$Kz1?uSPSgI2E=Wm=E9C0+!wvxH46t+YhW7QxO;+Xz$0`IW;w+SM(Py-?c z$9n^^Ny5c;rKok(5^d>I_Ii1j8@RO?e}S;NHnid#Q+CY2w;S~cY8@))_*@CcPPXw9 z=bJWJh~vay!CH}{_RUt(gT{^Uza8r~Le1iM?s{+8LEY(@XsiC4A*Qy9IEET6<;$1d zUxGM24}nk#N3GVMh{^SD!%^RNE3>B;Mbe*hV^V|fp}{X~gPs~3aa0d(FAK|_uo`h} zwgW;Tj#{g{_|^?SOhcpscS6MASkx(t9O=FbzusNAOSGj=x#d$DSHrKs-$^)OH?-m$ zhj#joZ&iQ5eA00_#}HHY)loC`rX(dH245WqwGylqIR;H@C9UXbG!Z>m@3MfJ#j$)~ zC)p3XeOu604_HD>Z546U51Yo9m~J&ioOZN>PzlHW?TX0wQD29mew7uorx*3th|An| z&*c_q@L(J0slgG)Fkc(lJa?`);<(rrLLrViMvB((`RpLj5xNBfSwv0ah!gly^MFOc!D^FoPbb>qy0!P zzTM&tpAf09Cm~{RyxlUJ#Aff&MeT@4(Uv~t1HF5kWac$%#4$b!T5*nJdgb76-O9IY zktFB%MG41#H8&(5ljGJQ%(JZoYekNW<625*O&MQ?I2zhO&EjZ$xQzel`+GdvYG4P5 zsjVW8=0DB(4(5l~B2LA&5GvugscHuqduQTy)H`)#_Vl7Qb==EUb}f6029NFpJvBJu zn7r9aw%lz-G zYb&#-7iBh}H91-nT8#!jzYTh7aKzE*g_X=~fKfBVvHlJSg*aZ>@5R@Ab~i?(X6}TD z!SP*j7I}EC@-%7_c8Rw1DUD~`=W2f4*o!z??uJ&J<5m9kF$AizLjSd#V~!GzTWxMg z@@o3bMfLUXg0&*Y_qr{m^WSUXH<+2$K+WQq*~dUO?$K)evHwm#A*Qy9I1b;?g&&cT z;)po*_ywU7j(dilB7IiJJD|S1iou`1F@c_5l)X_fr*}#95aQ^e20b-6;%G3`O6I@1 zXcFS+t^uJC$Kr3}c(qNj*Ab}^S`aZfex8*@UP=S-bCxdJqAh*OUVW3fkFQ3rLmb_7 zp%v#i^ya7y2-J%*w=Z&z>l?GLj%O3DOF{?r%18C)PlB}~NB(>Z>7`2-I-{#&?H8z7 z9M4!g$a;S~hrd^*b0x&oRuRXeG9NxVC1eWXH0&FM0-Wg2*ZHj|AU!`9cSHT0YGzL_ zYKhl5&cF9${6x>m8tAFP5y$AD_OjXrc5#Sf+)oIFI9l-I_!g^D+9Hm3e?i3H_`N)f zIICU4Z@Ftj^EUv73UaqI`KLJHEE2$D*w;>9j__jXgB)0 zq?v6Uez#<%mtd{P(R54;X?4+8{BH1mlb~jC)O^@gwj)zD9$jRXdqYfZ6>%IHx}7hn zyon#I5BNZ+gk!Wp1Kx4dW)sBm$~0zAFRJa=5hgdXt@eJsx!4b!IQ; zj&-vj6ykXDkrzLuTM&Men4TX*{~<;H;9W7zCHq`0A`s;!b46SFlaEjQ&aq4h$A%x{B%iGN`J(!glVGjLaoX?Z(&~N{qtVr|BM&u; z(hidL3W$+V(QybhbZ)N;v+t#GG&JJ9QK4?+#@4^rD(~ ze?n~Q=?+4Js|<#o8XR$~9@|v*z0-FO#L?IdLLrWuM^EM(E>Xwdy4rFmL=28zy^2Ym z-}GX{(QdeCOP_LHRCBV>)C+&?fA9!s#W}`YI~#>SEhxBRE9ZE?jQwCeV@;f-`D^E{ zsQ&Ai`yozR zB@im%IO9wa$qB1SN4;hlv!@s3;4dNbcLuIUgSY(vJvBJu7-L<;-<&w{3gX!A6NEw> zCuYj{d*3`{h?M0Qh!`B_&-?pU^@{@W4fUE;h_>`8ON{M^zC(oxx;nP0f>xYk$;fMM z5U599U5K3HBPARi&Eh0^1{s%8y=k&wt;q3&OLJ+kkKsqe@!J%rSsWef1@n5wmS$+H z_R}Dywu(5u2>eZEe`tk2m^yR@gi1IDFN-Dv9{-qxIL?{H?CC}A@w(61Z$Hol4Sskw z^wi*pqnlp>e|K!I2I3ey2SOo^ksh6SlZHbI5y$v>5HUC|cY94PPiim^wdwOkTl$o~ zg-yub+4-Ll$C3rmigSF@AQXS>|8(PHqvae|HDO;JgQKrWinnF2M;twx3D$}nk9=w- zU65~b8*z+i0X2(b@q(><`NjRdc&n`-rnZVW$~vgEtJ|ZQ5GvsqwV{TLSp8um>dSnYJ-w(Hrv}8jPxN9mciIF_6!AdhrTPDO2; zvuI17vdiChK;L^%ItN`HpY(@ToTJ($fBek}`|j54k#h`d%6_nZGWDt?^GszGda%Cy zNU&Dq=$UUWjeoUy3F2t?7-|;BD~X%=J$7bgXsffbA*Qy9IC>ta&(H0qiQhu8B^N>^ z9M@k+Chzl(TOf{+PnbQusOqlu$e!4C{%G*RXV6oFBaY4Ho#e^b%@K%WWj=&L95<|M z$tNB=h`*Ci^Cd(Kj$K2ak}17r;+ruycqQ7>r~Fw}j|4Vuy9ROWSOl#&$AB`Ycmyi% zYtb1w$8;qeSO2&onOweWGpcpJ3)YGpKdm&E4lz^5922XdW^oMI8N<6KMd44+_pO1L z+A8AsD#C)FH}gkl#3{NKLM0rnhrc5U!~KS!-ms3@(~Gi6`@#JleJ>et-24lAYH-AH z&B9}RKo8FV#PP##2!%KvY}A}znVfYSUExNkzWK9X2FDRUpO9v=Jn{36v1+0%eaa%K z7Exwee*x4ij#ACNe7z|%ccQKKS_Cn*RmAbaP9xsx2#4Pd{$(+QN;sbDlSTZw_x_0E zp{2~8UX*S^HrMTvA%5TRv}Mp!gCmX+DhK#>DRw@HW1|%i3US=`#*E)!R__twn79%m z2FI-xxkPtP5dL@P^i`rQeacC%)X1$bjs4Ko(PRy@;v9W+X9Ocql{ytqvw znqQHWoZ5+>2H$5OSSxbupVCx%ds~Xy@pqf-NjsjVW8hJEb# zr;YsZw{A@~flvv@ql>D@{>4T34Q7Fjm_5BH-{KDB%B=FGXz*)h&{KmWj=hiX=7)^l zi|^5s)f7S@j*gzDeE$uBQHW!4Gl&=*r_|&SXRm?yHS2FJL|gil&%ddVC#@EIKpc%) zLo3cPHO6HU;`p*($R|0+mr6K>oxLo%^1aD%RND>~tQ9$$&S)yVv!ZWnw%hn=f!jjnEb?hq>BxS;QQlK$5)Rn)f~$?WMx4a%xV zmhR>7XJy8EKu-;hIL3Yd`(9VgRGy-%?ljbal=@M7#yEI&L!v1 zti|u>xjtUBrB7-8M3pqH*SrXEd^Q1EagL@D2U;Oel{!b8c_WS*-Jxc2e7wek|5UIJ|J!kgBgE8J5yx2}?@7gz#gh@I zx}Fd!;dpTMS<+ok2Y*GThLqXUiyEx{oO|fnSuI2J_J5$%}syHHK z=&8XG$B~I^`D%;ESBRse4niT0i*xn)jGCFj=;}D|H$)7M;a75qPvRzgQV zPfMTj-SJ=Ch20lZ5XT%fXvH}`iazxiaZJ`YX)otkrG(=&?@N-woijpEJzQI`R^&Kj zXcOs>y6Y09mM|(`m`2pwOk)!YO9E2rM?MYIwsH(andn_PzlGg)um*_ zy5snhh%JnnJ-w*BL7HUos?PZBw}To&PYsSZM$cHz=c;O@A&wJFAr#`c(p8sF*xcqd z;yAA{ME@a0zoTdO>Kt-yu8ALN1DlAp^eM;BQXyTcl1?Fxhs~iC=eT^5RxASbr1PkL za*ijPvmdMnRbG^6SVrwcby9c1T9M<_uV&Jx(MvE#sRU{kM|aOaKGa@e9Dl?vim!9ys-v9g60e|51dzE%BiXNVXa3&&)UuqCf+5l8(2qAh*O_8V)swo&t) z5l1T*XvI0M+8Hwufoju8XPlhlQzaaA*IksfA7+R@rM=KxuvX+aZkL&KXFxlAGv@cr zp=NRHc9`ea&uSNfu8wA{Af~p8I69quMbu}Odm@ff3ka2PwDpK1&sNMbM!mZwv!@sJ zE%OoQHQ>!TH2B(f&{KmWjuVFX@Y4=%S4SMftRNKP_>wOFCMZ?SD(4l%V=#8GWTJh2V^s|0a6 z@Bu<49JRL{AbDBcbWyMUiP_VOdXRjd8}e5y{(AMbpP{D)M;yaVJo&Lc-|$Db>V1V! zh-3V=-{iv27bg(M85IyQIR3RHliW1a!#71qs}ybNQ>rbkAAva9e}h(>V|2?? zjS;A#tSRf|9B(S&Xm{d*#LIoG7piyU3D$}nf8{ln_8hbgzlFl-Dby^E9}jlt^`bd^ zU%H#mAf~p8I1WsBLncg$U4=Mx$cIn~#{;i!kvwZ>{4{uI0kfwU_3&OP*Tt@WZ*+Ck ze+fM`IO1qN&6U4jT8wXs;#&xz5J%aRYGUZN{ypOO_e~%F?3cl@XZ1s37SRab8`8E& zw53lejjQ0gtzNqTalG~hT5*oqJ$LRypnSg8?U!@>q=e(4?iVC?-}J`cE7P({uvX-F zaY$(W>z!#Bsax z;Y)IkM_RHUtkqJ_OQL(tyo&047r|PQ<9PGN()ES$2hoG|7+0uS9P7eI@@-~y-+(w? z7y>c1Rm9QOL5BUd3(qdXz{4=MULYw5O!WK3U`T+~h&C)(1d zj4S`hb=fya2VET(dqFG4G0@2=(IXsznsV^aJvqlLB^<|joR{=AT&RcY1IGkwMUE;r z8%bAb7Dy0BvlCFWIJ$4s=Py|}_CXxoPC-m<6>;?Jol0`D>+%pMzbFWma7;dTjvUcW z!|w>%7|rbIMOB=7#<{NFa|sQeat3;8aKv$4LKj|TWiEPHLM0siQZ#wZc1}ML=RV_@J-w)zg%%|8g56Lw__guSQ-dRpYu0q& zySzA*fjF8?fKZ5|Uf6rmvQagDWo6Msh!`B5FFztS6ZPW|$E-=BEq%&goj!Bj_IGK3 zIQI31R-9u~BQJcb`sKCy-{l;yDB) z&!5fWXjj;Sx2QjL2HNUib%?30B97XvYRFlgMfiEg4;m0E;n>OlBN^v)6u&C7MvK|g ziyA!rE$98K1^yDaj@r;ugCmY3Pg?M+8~Xi59OHE$6yi8(?;BFCz72l~oQobr436)5 zKO#q_wfccL=ID#I^eGR8eB$hFB4!|te)XXh=a^t>i+`1=x4uT-`JdOUOO$Y&tsN_Q z65bQPdAEF{V6Dip_=u@=uFs7W#Bu*-s97AfyENceWq-bhI5ye>F|}31k-wEkW~Tfe zkFIX3w?e3dV?jY0u`XMH-=J2$joH(SG8|RJspY?TjRv2-1A1z3#PL^c6aJ^ee*Bts z#!d)@IKF-Rf;ca<#`kEn4~2-q@pb11t2U>BC z8t1`8{hOUl-J`2{09QW|1(&VKb8Y7Ooze3I881dYW z_sHM#9c}eQCB)QL5ywC$U4F@);r58*fo~8h;rL-z9U1&-Vqes6t!DQ0qQ0+eMYf!r z|FLLrX28Tn-Bm~CSasTIEMG(mRt;Klj;`Nw@Nd=$-(7piIX+OraisM*iApQS28iRC zTESY8qsLnlsX4a>zbZ4f4r&(1qmEX*=Lq|wXsZRkAf~p8I4*f$z?bjz|A07+P;vWn zVkI2=#H;ZqOZ;b{{)Q^Erxz95wgXw_oo9pw@1+hsH8|qfY_|bl(5eT1qUV?fghCwK znm;F9FI;=9fAMug+fL)J>Sg>GZ|Po)2fe(fJlmN4raRoW}mRgO}-U`)$=BvB)Ru_{LDeAHiSxkTrc#mA`$)7+|iG#svfhachsU+J+dx& zR8#ch+RXrZYH;-9`p=0sH5(L$9z6ybLMZg(`p;=k4F5PE{m6|rhKTXw`p-!>O@5n$ z+Q|(?+y9=@z`e;L^y9kR6k6(sXPW<{DHG;91Hh|x~OY3*1Dm2fPIt0wJ|B(G6_V?48`7o}2M%k_EI!vhVjI}v(naKth4xi;S| zPxB_?*lRL`LL3XjpOM*rjd_Vk&71-egX8a3&&j5wtN59RpsAuQead-VpK>vyliDGU z8q=W_=NJ(ljz8LVq0jzBa*mlwIM(eyEy;g)Ob20>@q)D?$8HA3QqD$#?_spe8EO{C zb@4iUM92sewAH2kA*Qy9ICi#qO`1f`#kWP6IuJr79Bb9f$@r|ywuqz4AZAZ5>Q3)$ z?z%MK0UF%N6?$rL#Bqa$2CtoX?h@kIatMS%998OaiJw*dW{6|$P>2{D7pXiWE+(Jx z{f}~oi?;MBk6z8@^fq5`L>#Y;fL5GiL0*&w0%hLrc!-?inl|jKqniC`NoYkUe7nNS z9RzDdj!j~Xq&;R{2}f7Q9vz`(aV$;N;tMYw>Wa4NZx1oGRm8DR*CLX@?OKjFg*!l~ zgk$B4ViH$+JQ?+ux-xruQCf4~a?jm!@vFaO-Jz!jM;s@g|4D-X@|lS^s!Jdg;@JAY zV-nxK5dZtQX)lNv95oD{kaz2xMye0#_q#Ie>5Y8J<*U$aQ3Jv;GTI<5?b znA$4hs9SWK%)2ecw^MC996}`=QzP$^?kAUhM;y1hGkbbbYa;J(qui{{qMxIBBcZ1T zM;t3UeI#FIZ8(cKZXN}p5XYyr_sHW9d(;uBuO1LFICglOMXEje_d)IGF`_MfN|!z9 zTx`F(u889uPiVzC+Gb6bAyBS8wqKQVELOsC*{CQSh`}*( zL@rT3X6lYO?j0c7(x>b_I*kkY5_A!99N+@2I7h?JrFMv8%byb-$~o?}WItF}mqbcx zrk3E3w!KoBC{!zQTz9}wy4EZB4&rE|4mFEoo1cft3U}@LXsh;`5K~)49H%6PlG>OJ zFA*o3dJrn%X!<#t#Eh7P`=&a~o?evKt;L-G;gfsO;1+t&Q-dRpNgbb))th`qBaT)E z5DIZj{VSPpbtT;pDMLeu7#u&wWs(M6MsGsxS0mAuK4nC!B(7H!?|?WKHGo!}W9MZ_ z+Y!f(E%J-x9PcUNcw~8`1!|RXa@7K%1 z&{hw%gP7VX;uzKBF`2PEPl7mJvw~0w$H7zIk~1Mqo}oU&hS}4LnzJIFYuRrNzO1X+ zK~D{iIEF6FCRNGxn<9?QIzcGJarN;#WCpi14Uw|z3=xB)*4)QL!(p5&YI}DPZRu04 zyOzWSTCO~RI47Q-O zey|RSI3?Mge-!^BG`U2uR^&KrQ+?@))@eJiaCi)whNT)`}dR?dwbXE%NSyIF`FZ z&EoiD-aS$>=<{*3)mI}SrnZVW&LB@nf!#}Q#4*7GLM0sUw*NquZ<_M}_4~&#dwNmJ ztBW|vwoe&o@U3H^rv^tHCp1VTk>`KLBaS}fAr#_RnUF%}>-&F19D7WFh{5rBqbFqb z&xl>9)tV&Q(x>dU=Mi`E+dO=Sw^x&)73Y|KMZIbzv!@qTd$fYfntY`d8hn2h^wi*pquR&oByr>geAAd#-ysy@ z7^Id$9KJTfZ!tbt4H1K5^x?n1@B7!9Ld3CIjc7}sGJb9bm$|%L6+KuVuZ32eW66r7 znF!Qqwadfg9FvuBZ03DZGQQz>{BF`^T7tDA$JC_;(%OtGM-WFVZKzosi+84wad-9c zw<#UhftcDV;^?*gJz3STcO>FeUk^eh95Z$wweA%+kNaa0LSA`!QK{6wVEjUZxhT(6f$Tvhb(JMG&y5N+vG z_V;|m>DMpsf;fgWgjSrRy7j~9h@+v(xM^~Z-<5D|QGG&^_@$*Lssl9zYekM@S{X>y zj=vd;IR2;yHH%};`6P1sUVs|fYA0QYsjVW8*Jc)y5nCM2B2L5fAymRKHMoj+4);Bc z`Wf|^JzA7@4QE}b-3ASQ&l+J0=h@ zIOfFXk>0;XwMMO0W6_pA<)o1r+_BgNZir)#CeVs=9MRx3e*e*?C$7uo93$JaAFQW@ zoRG|J)AbDEIJiKtR^(`zqA&ek;4=_$T=NoY7RQcr4wD%V)>)&iPJIP2wN=Eie#mvw zclLJte$bvp5Gvsq9FazhJH5g0mjC^R+0%>awk@9vH7PYkgTHwPJvBJuxY#d-sFnEL zLmW@Phfs*)gbqn0w0nRyA~mNJA_m7L0eNIx-AMfQ3)^zhmOf>QW)|1XEVDJ@`27R4 z;vBEs&ypfgUO~D$SLALLrVbjS@&v&_?{NWKp{zVsNZZ$R$0Gy~;b;WfnZ)m~`DInL;M=?((*=2qq@ImZwy_SG@@YJ_Cy?vz!i{*)wG zD{`FOKwlbrD5)HAoSXtRi=#^FO!9KuY5e)wkTi&?ts;(%j|UUg1Q~wbFy=0VN;s}A zIYd%MHOAj8k#L{c(~D}Gy@7jksgWzrAYyRLnwmud=l`CC+7>yYEq%&4`_j2On>rW7v1=Z*;vDz%8d`urRo{$? zmvg+OgyS2x2+0N8N2;j4o+wx=a{P2vPr9emv|_|D?he!}j^}$t6Za?a1!${FQXrf{4K}=vOw085@CrE04(#ZRt~9GrY%* zwmcb!I8J;FtvE+BmHQP4)WXz&Y&pj-N;nREdt4IWy%c|2c<6n>T9M<033}4eUw@k- zj$sd>W^r`Aben9?Z#4~Z9FqYtwN=D1aCtdt6YjeeangMZp%RYgXQ}X+EpK#1eQXx9 zrx)c?UytOq3&tkVeJkJZ(iX5+L=}DKrDfxytdOAbR;@Hk1hWs^aAHJ3UgMJWGTSXl0OS8x*N%C;S z$#DRLN;sy4eIy?jI(|a^zJbi1Uet-wV$LF=3g6Gca1iv=;E3bv!+VKUpbq{V`n5jrv$Z~hKRQGDfj=l%Q@^iJ_d1&9}2BF$5HXo ztr17=hp9^ce_kZaQNq!z;c>}}PWgVQo?a(dD{|C0qboh-Zk&lY8vTZv#nG*05IOnO z3f~qXNTt!A!Ktkxj^XWMiQCeLdWh2(RS1=ETxOO=#>YIupOqP|&g|($IW|w{R0k|? zj4tcx8qiaNBaTn2!bt9{RrsTA)>;q>adgwUL4KTY#1FW^^&nz!T>U+p3?auj#PO}R zXiJ|m?)ZIfyu;{kh~q$AXvI0+n^*7*f$~jEGL>^&Z^OPiE{-}TxuwDNM)mzBQM))xw53mJ(mt7c>$0al;@Bz&T5*nx^POW5sLZ024swpy zlyI~o$0WOL^YG28KNbttiX7+E=|~edtL{V`_m)7-;@EZOak7-$2|!zISOzh*Rm3qo z`VpC0IjB40w5l9JB^(0+O3CKR1NeE%w;z~2y{IwVJ8t&g#`seeV?RMp4URaftA>#7 zZt6D>$N0|>3US=C;sVjT6+a%4YW5W(21g^)hs3Jsx0$G2Tp`-hr#!0m_xA;i4|$0= zzN~~+oTG221^8+3QF%u>Ima?3937t>l`Pdr#qa1j{amnC+>U<2IRbWj?-3hv6#-m2m9z>K!pFF2uLwI{lj2(~GkD zeU%%%dl3Gjlksn$rv^tH`^*m^OMOlaLL9%pg;0p2$Fa*qZ+*KLh}5=Xh!`ASe$OP` zK3-^tTALElmOkZyfMhQ9w8jO*@m?vk;vB!fS&Z+UUY#H4A?J9Y1N*^xzyDFmlGP9J z_wI~;C0HwR{N<`6t-pP@3*zWr1T~A}*y;Uh}6ap5HUE$oP12mPyD`v+D@NDTl$otO;WheYw~Il$NbOGigSFDU(^;o zSWh*xm@Vh{NC`(zy`vI?_kwa)csZHAfIyCk%x?G#&nmn(-RNo8)`O$Uyz+Ec5{aq_XMkpSvs`a~}c z$CVw$r=x2`sH*#lfo-9V%#p3NIVJ>`Gp#*qZv)_1B9Cej$L_@|nW1GI-i|dnpJHyR zz){uw9BZ@kHa_UY?IwjfIOaJNv6XW!od%9gZV7vSP=^waN}Hlv;I}G@Zd1=K95^-} zwT{)S*f0)G$4z%Al;voDij~^*cpZ@Ha*rYb#~x#HSeb`|@IC9S`-&~UOZBZJ=|D`G zCcts&Lu!>dS`{?HkBEhge7sx3@uUupFHA#KwzpQ}1D02hm94co)-*3?`q?|X6mTpa zPqm0+!$(J%y2u=##Mych#oSbZW3K-rW@grFBXDB26zbsU(fI=#Ew#B0{VF?Q&krj0 zKxJmKyyg%%*3V3%o?AF@9JJ1hd3PK*1vp-{r%;aL@5H05nX~(D;CN#uMFNg-8#CDB z3dZ;ts7H>9Ex*eHC(cWQFSGB!@yl##l{p&Mk=nueX7}#-5e>&DIyffW3{g$lG9F*b z7!}Lb+8ob)ENgmkh?5g=jQT>gh+}3(3~Rr~3}4Dz|3)!4Rp8hm;wF>6PPqV_UjCp^ z2gep?zOk9t9E_p=^-I|EgYxq%keuS5H35!>f2rpd4jeaGtz-v-U(5rJL-k(#cT{p5 z*^VP@!H{pOfaA7O6bU$PWf|<+h}EXhhLu)q`CS%Hij|gq(#KDOpD#yhH%? z+`@rl^+PMzq2C2xfMfN&6v}Z7b2-9BO5$aNrm|Z8#j^ikYqpWRmb-Y+_Ye12J zV>j1KrgpX&1{|L^RBZWOF8+RA8g;MjX5cuqF}2DZo6b0hpLg8bF8`f|<4+wNmq!Jw z%p8|>2aYbCWNU4Xz8}h%&T2F{5;!*LLbZrv_OF#pwdb}maNKD~F*jAt|%0hu*Hcu;&Lg*eXUcU3|qF7GBVUdT!ys@u`Ui8)x|nKVYWr zMWGzW29pl6l#va}1E~-riUb^Ye@$nZp+@e|{x()@`CT4#ijg9Qq^p3Voe8zd9ACs% z!QUNgT^L?^@W1a_AMPx^SQoHhRmxz=5jb8+maVlpE(`4v?+2IVKJ& zW7@UJ0B_(pco5Yhj*oh8WVJJ^;4ACo!4z{-1&(z_*?D;`m|9(yyS}Gd9u; zwMraINRM+bj|Na}S7n=PIHu^}*spGos?Va1pQz_EP5VP^8A*$&`zV*`acI9BSJ&B|TvfUnFgHwk-wP!U_> zq~*Db@M2x)Lp`@};Hci<%&Py`{s>OT;l32gas0CL01LWR1|I{OvV|f6$IXFPS?LCc zw*p7QZHg_w%Yxx&CC{o^1;FuuAGOLHukFd+4WOb2TH9(ke%8UU`>DOE^|OYYg8KYW z*;bZpjM}rcsth$w3CE)mUEQN9$_0x_p zzp@ALncW}9QzYQ{=~f0yoaKdI`}#XkvE_I9s&Asy;7Z@^z_FGswaOev9PSwnpq}>{ z>#pG#WhlN_Zy3H;)%>}y8`MvG%huW)+kVqGwZ62o5ID9nqgupq_fm6a?0?}5aBSO` zVs5Iy@lN$k?E2Asd*EciDAd96iMKy{Bz5@-y?%dT&kxFJ-yz8&=dBeiyv#uAxrGDA z8o%eV+mBk|Eu&r!qEL?G>=lQZW%kTXaKdGoQzYPcEA|TOyzWXiv?qruw)`$Py}Kx# zK3eiHa161eR+;1Z7j2#fxv2ujD(Nw7h*idA;B?xHLLD3z8sxK&)862lgxRZw zJwK?j^Y2L}2mPkP!hf%&o?AF@yi?JYEe$clFSgd)K%pGRZ?%rIi3`eR0I8;%C=zgV zUZ2J+D{sV4gLm4j*z&uqT0ToEsPbV0a5UdStun{1Rj=bW39m%o3(;`g*j0Qwy7&aD zhF8741u)M$EL&@HoHat!R^=3~szyKp9uTHr~Mfa8|asVvz4Py)0QRw=gp zE-U5dNDoHaEdY)~ys1^@*nHBMIRL6t`8F9Ej_-7E)JqRg1>XO-9O_b)WosFZM@pGK zY2}y?98IcHE#g>jqAP1~P1*-j?OdH=ZmPi1`}`3$Ie1S9aI9RDLLD4;mA%M(t53%d zs6DDB?D;|6*pMSR_KI5x3(u=VJ-2Y+_|ngvoz#1WzdPU+?;hZ>Hd-NYAb zhgkutpbgP@sdo>Tt+hGMo>A*@xg^Y(orcNrw+*E;MaFG|YD4u)(IC);7PzT4qe|E8+gZtu3nI~6;JwK>ctpcPn z>OcKp;SZ)0>`8b3gtL@JUqnCdM(7e-!{&oNWk&fhh$b^KyCnV zT#~KW^1EF3Crh%s>E9PPKDb7$GROS8w_5_JzQ(Mw`M>X3ukJ2B9Ty(hqp}+Hb3N3) zy=7}{j)t)%P2+P*;!Bxcrc{eK*6?e?RvrJ0_cY#bMlm;4;P|7`T2`+AetgVP^}ZD9 z;23Hc%4Ryv##=_YNWz{UREhMRl25`he8BQ!Mm@K1;Mgv27JIrq*8@2A=}(~?N8dh& zSPT6v_yIHj0Tc;1rj1QzLx1i$0vz8DRBZWOcAuOjwcXJCCU6`vm|A6ycZzr32T%i7 zJa4Yycvc6;W<&R=3i@=ghI*d2Y^}{Pz_Fz1kJas*;dCroL$!$GvDnq@#Phnt;gG4m zo?>pQz%kY%j+ysd^#D%Ct{W-T!O`ye4Q6%LOCS27KEj?Kl*5pG>D%FHV`1SdeW~Xb z4jhMt&1Ke|*WLq;JGW9O$FZ~C5!S}XX)llp^`l6@(f@Y}3)%VMCA7zPD7O4AXYRNr zNj25@faTO()GBj4)X}^ifSSFbyh_9Ig$|CrUi+)&udIp>Sf1r8TWfQ)t5?$W$czs=`9z)^3v zu;&ML`g*Q(DyN1saBQ@PdT!ysac241Z10*LJ%MARKnmqJHqAQ3S|3=47uyIe zwPjR0yy4Wni?X#gN3W}TrbjQmISZ%b#>-TTI3{1%#j1DCt^`y4lS(l+Rp6NDkk7L2 zEO`r@yslEHgX6$oPgvP&d1~mNr3rg}P>q_GV;;F3^Nn-eCgAusooW%sW6sA} zw}{!RV5;r1DCVXL9M3fR$xh6*!^g+>zeb@Bj>#`e_B&GM!Aama;kvNr2jw!S9b5Kf zW(`>QrabDog#*X^|Gbp3jErst90P7pD93T>wZm+{k}W21!W}B0NWgJ@pA=U2Z%Mqr zW9)6kmfvMyRG*khlb-{9US$q?^Z>AU%M3QszQ_{(c2I>+SR36#Btzoe>V1%aSBY;y&lEfRDq+{+S|-(OKJ$n;F$dXu zTVD&{xUvOB0*=FnCbMdH%w$xzf1r18PZ6-tavybSGA#5nd73DRXqXJsl3Ho zG#roj6kn{f+;*!<&Q2Tw^~RgBwKm6^cS@L!=r*D&aO`x8Y7xhqqXSs>&o1}^HS9LU z+*E;MRL&E&=SmEIxuC`!3UzQy?f;v(yI;YZsw})K?D;|UP*-DSZVj8k&(XVk)N>05 zj^(~hXP2Ii=>Z&vJ)lsI<4co+tW1SPQNZ!&Ly80(%P&o4ev!`Wp{?*(vE_H!X;OxC zps{NxaGYO6tun_fXXh9IW%({~pN8XO9UMy=>{hAXov#A5$0ylZn`4wu2~%t5hC#rw z;b*Ev9HX8rXX;if!(gi0zEI3f6*!(MS8Q+CH zKd1`5?n(2eRC9%e7yh80TR3oRcXkH*IVH*fII>?9%5e;+c8D2_wZiwTLw-{v;5bm7 z!sed|j0KLr{wTKmE(1L?CC3)KS^&rCC6fN@N}1#Mvg6(Ys9_C;#A!J0=p{ZKqvLj| zw$?T33H6dDvb8qHU42TJ`ra*qDY z1}@frTTrNj;|80%?BTPsTcDrXO4##*>J|7(n(py_11!9tHTB%Wf#ZPI)7ZpsB}N0s zUTrCqVzh2PNFzlL!W2z30akjfuZ65dA0UVEYm#wuqUVi*ny>HjdI&eBp?@6_YqsiIz zETvnINifwXy(s3U3LIUw=dtQTuU7_6n~W*c!7<37h%M3t83;IpuC}v zV$1Jx$J11)@r;OE;P|F5waOfyk2~K5KxNE{eX8O3T?fbB`nyyws+`@t5 zq}HvVNWd}mQ3BKZ`^f>??JE^qewSyyrAo6Nt!ob)4|q|l%#qDLfuO3-X!c9P@t~3T zV%;u!r)sEQ z?s96CIi4=E!S7icyuDa`$iMGd-_^m<+iIsuUwWGa96x@Lt+hG6s{KbjVqw3_a60;b zqFTgpamTgn%jeb;V5(I=Q_M{jIR4yzjUAMJoCS_vd+y#E?|ysZtFY$> z6*H#{yEC~izS(a1oqBHJz_HZRscc+>(H()~kslPwaqRl}0DCkm4ezs48FM_*&{>1b8FL&e$* z+W>V`plq$parUy`>UVjqLx5xbV5&tNcMe#`OoN}{t!~UiDdwgM94l|iX5DSN7XioV z;S}oNcrE!IYuu`34D|E&344A}^&>w>3l|^8dtF6FQO_+LI2w1dWxbETK#nJ)DU{>* zbYC<}+cZ56NF^MkNWgIfOJa3roX&+d<*;JQ?=m_wO?tX>%o*T#?}_Njr)>ej*?a5}b2 zp_rR0aLg!qpIxoGqXBRlaEU@496uj>%t{6hu!DYFs<7t=wIrwk+Z+<+4h!FKm3nUB zz_H{BJ65!`C>~Bn|8xrFI9l2tWYgx|tOTU?Wl|*IICfPE%k1EW-<3ItZ0~}2{QYgpqQnLfh_g=M=z%jNHMFNgj zE+;X!)p7Xo+n!w%TYi`N3)7`dQLEkq$Mc5NDsx=0q_;hQ%KLoXLBnyMN_?^I{d~LX z+xoo+p>F+Cw$|n-o%^ZYG5kyhoQ`*YQ!U~+vbsG>nK=0laNJrV_rDA0rV1QQTo1Ei zlbXfA@p?%Lb#Sauc!50~W}5;1AAMoZ56Wu6ZK--x`bJo|Sy}42g#*V$-zTx~R|8UJe-;2pnrhQmf1{WQx%Y;JA3sp6wcr>rKR`W0cW$)tHY)_{Fc*^JHsn zjwwDr)E3S$-{Ewe>q51NV|JE`J#$-*UpaAhqnMj2aNN1ppP3zNkH0(4SU{l;j&03j z*zGNECIIK*i-bKts3EFoX`#b-{3hWz59+yv1IN}G6Ihm%;sU2*|D_blaqRymihXVM zzz9fnT27IGqk2msYiV0F0oq!giY>p(F>fwQ>xPWSC${RZqE?yX1?$npz;W|Bp930> zaXL8aJ@8Z69{GhgD|Or?TWfRN{r$VT;>p(p93ySzGF_| zQ@82{Q>)C;wr$5W;CSS1heQp>H##_8S?8xp2{_~ewO+AotAFQw{YOtZrC_>+NS0};8;bk<9|mb$FWp+6#H1GQ@*ds%9gIi~LLxe1^QgQOc8j={af7wcbL{Z#i} z^a+EydZ=uz&2e__H+B1Wuj&HFD`8ZNIL15u}+*E<1{kDy4M?#B%z-ebXg*rI;H3?w{oWItE{!fOm=Lhx3HB!3s`V1cH?pf4x z3kQztHw&9$+p7q&G*;<=p!((67 z7uqM91IH=ZREszsSXqIMEpplehs@h+6mwGrjwwcCnOXm7_`Bo8>lEtXIB}B~8+5sh zD{xH6754m~mfW8v6`D_pf`#|Ur=D9laO}5xG;2FE0y%EGL7^PSQKKSRmHa8afYh6t z6bU$%|9yeAIR2{@wC1-ITYi@QK;*AU;cZkJEBh~r1I^~`PTn+q`2;2RWkQw5Hn19RES zhI$FWsbT?zIyk;=_>mo0xi%mA`L~2UKd6dxe@W@(V^6}uU)-jiTR3p^xI2o)v>#&z zzdH`NL!lhUfCc;5xoNX{0;#aO6bU%isCt1#W`ExU?eBYvEx*erJCmi`sUPP9$Egpf zRpz*5%I0AJs=Q}LM-9hkIymYVZdIu(wJZa53oqGPn`4yk7xnWXpP_I%W_nXC;<&xv zQdW1td3?P3z%>+eQw5IKFI;57p-ymA&kyQg#2=|l z@s|d`aoq;$xrGDAhL1|eYDU{>*E+K;5tvm56kQ(4ak$_`z;{oeQGW}y${cGfX@wW-R;@FchNHi!_+mY3%~n-(`lZsqv0n$- zTASnY5?|DF&&~Y}9M5&4TEsCm$ByMU{-1Yc9(AFZn<{YZ*5)X4HV)kbr<;B^3UzRN z5}(Xe{U>&ZzHSd;&kw3z<{jyZd!--1(Xtoy+`@t5#IzBtXTqIlz;UuMg>oF{REc0) zdY38(9Osx&B;dGcPdv-+^2-=nSG8ix?=t&jqGbAZQXX(zYeuay#~f$x7XWH+9p|wc zj_Eo$R_(S`wdC^WzEGRhm#wuqmUsEA{<>lMec-sbA=M&|3u98HwO4y&!Bm$vrkI;5 za6A;$o^5b+9t)i2HliqaBB+XIGVSOWEU=0TL7di+fpRp7;^st^Nde_4{e9`iY>p($(K?jtDx$B zz|o*1waOf$#wWc7P+uaxI%zom*1@sIy)CN89c=M+dB}d*TAQPJQL);kU8X;9ta^}Y z5l88{DSPc^a~wFD9;TR^DsU{!+{4D4ecur{jXFx94vr00oMyR8D%(PDe_Yt}gF4Ah zNxi*3T!w}3I7vOXaNuY?VmLFodOrkC#{;J+l;e1QLO5HH(BcD-I&+pH0msMlTzsvAz|GcuE{eB>DycI{SGDq96z!ktT&pg0O!||w@_+ou=!xmM@Mx*Ia zH?WqiwK^v|%@ANt}WGH;Eh zPzT4suWzs(A1>f0dOnX4_WYn!BdZoA=Yu-4=+gcjh0aFxPewRiz7bMfahJS(MxT(}Cb1d_6UO51z zy0tG*!||aGjtNFvR3j%JJ__}OyRx-5$0uo@)Nh_y;Qbv--=|u{aZAKqsaxX-Gl1jr z2NZKt1&)c#kj;HHY(AWBFCJ2;gJajXW7*a9)XZ zw{YNCdc+9!c=DZ(z_Hm=3gtKseI3C@?;4l~q?SFSNWd}kYyxXP=tC`N^3M4^w@-kz#JDz;SMKTb7oXzX~|s^`TG)$1zhku$f;Q znnQotSJ?A|>hsE8TC~mvZ!VOvm3nUBz_EPbD7Lly=6AsHlplq19PKS5naZvU-e)Ih z2Soyo>mU8|uFUps%YfsGU5YKgOAGsplD%v1hQM*YKefsno#%aR1E5ZH3rp2-yrhHU z`)$6ebk?vJ)VaN6Yi*7er#`B;t}%WO9Ak{B7IBR9TEaHhdDRp+I+{?-O%*s!*`3WE z?|AtVIF(mZsDop!`)BsI#PcNRgH44!Kd7ABZ>8pD*YNL-Bl}R#EgU$OO&-PqdN;#I zWWMN2p&Z8w+alQPKW9oHDMpciYHq=9!2W{>CiY>p(nQfD#x3O)G0LL=}s8!|| z?Yg5YfLfbf;;x3{R~;N%OTMap^-3o|eJ5A8*5+8D{YQ1KQMvKJadke`B961`s@TZH z&*gyQj~f(oQw5GW_cpO({g>iP5!(U^b#M&p7|H@RKd%lPFWeIL{GfsjqNE9zkKw|N z3#sQ84jg|M4P%$r+gyOtarYexxDNVh3FmQ~2K&>*z<H7+u(j1z66;Pa=#9p_rR0a5NpilDWTsdJ{M;4Wm#8$Iq?&n8DA{ zcyIB|5yGAy)Q_$HQWKwZrtotV8%aI4aNrnaXUT^2>4$#?Pu)+U9LKO8VQj3yQ~a*< zjRO=3IQ|Sf&#EnX{1P}89#U-iU3%NcOCHCJ@W~19j!>)2G0&yg13=ZR8(+@i-}kHw zb#TlK+N}C`I9?y>J`H7SZI1qRKd482>%JX0CN`#8#BofYMeNg+u%|H9mrW_=rV1Rh zCSGUt-@h#j980yJPzT4dULTn8U%hbXYqt{i{GhD2=&@$LVZ&hImTjo#77iRwd>F!Z zjmu~Rr{lzS6v}a&86C>5dl^;-Qgb>`B;a^3SzLJ$|y9ys5Z015SH&x(xuVn`7y!I#F8~lMQg*rHHSoe&TUV3;pa9rjt?D;`; zkbX#0^W5?IOg$D-&n+A{o^!Bdox1oP0gl;=D3s&qy)B$=z5X2ES()KMk$_|6@d<41 zh}#W-@|PuwEx*eeb1p~=uO#6I%(g9~R+*!1$vgPO*1_1waNV^M%5vs%)nCUA^9Oradd zyMf`X{p6sAKx+O`iUb@V*(9)#oEd$fZFyX=<#%bb_JXu+h+jDT?pSz&T4j#qnhZ(@ zP&u1p%{3f9=-@cwh>xml*+Lc6PqxX{+8k@He5XFYY2jPoxNbYuB91RcR%ebCVwS=+ z@6Qg3xv2t2cT-1J$9q5p;N-ZALLD4u{9ebp8ZN>owr1`Y_WYoHC$EvFId>ik3m>?L zdT!ys(S5-XmR0tF<#%~} z?Rn|-?|cj3m=;W}GRJf51-{KUI=+>yhT}g!SxqZ6u29#_#m;eV7yG%>Z0Fe9xy*H( zJJZ(1&dt8|m&rb=lqW5+fn)b1*;@Q9s1|YTo;QlszcStermA28>~MONZDSaNWjs&MjYFrcM<=Do|L25^1Dp8kCR6B zZBrjOw$G(jnPdF$bND>#KHCf2G#vAFaMY{jqq?7)&=fe@?vkywIl8&ORokSr-VYp0 z`cp09_;~07mfqYHzu4-&hhlE3z;SO*JiFjvfj32Y7(k&8j+++WU>BX6;~$C!?iKd@ zpmt|HlY-B6#@`(igQ({g4jjw3w_s79t$zVW7DAyM$4TwNnRmug{H}CFC`AH}H?0#` z*astbpj;wcvE_F;X+nZzIPD1DZqzY?T4jzAwSL(GsK4FoY|wCA+fRHt&QIE;GWz4U z9BO}+Y^}{P^8FjNE9<-sIL_@&wTR=H$u7(|tke@YWZtVO=B5f9E#l(Xh6Psmn0^{1&+~-LOG7* ztRvXQ<Yek47_T`;%?uX2UDGW ziDGW5z;WxbvuwX(+zYtahNV)dgJasfLZ-L(fBx>c|EjR(2UT%PrnKt(ko~am-s#kH z3kQz-KUuPu2QsXIlM=jZ!_f}QO5nY`k&0z z(P`cs`~Uo-{-OO?!?EKg!Vf?$6V&|wB+t{Q`W80{jcxvayIoY>^mqC6hr5pd|J~NA zP@_V{|NBjOp7S(^+9gW#?K?EQ-39pf8kt#~(iFFJ{J7c;TCJ*dtWp5fwU}(J{o`83 z@}b)Cfek*haZP`!ML(`>H}zq+s;}(}>Q4-$m{SiwuGKvP*tk;v^LN?I!4&HFah>(- z6zf`P={ERrzduCS^E3MGaaJnzw`m+Kyox3D+`{3<_1_)88WxJTV{L9tq1=z_zq_6L zeKg+x+-NvOf*;p^cWP5?k1zEGj8ts@cbA5LO5pF-Q$|zE{qW3mv72t|I?Zm5{XZN% zrN=hq@mBtS3-4XkaNO8m{L9SQ-`=WPa|YsjUcc_k*4i9bTzjC7op+`sTs`(Zq*}yr z?1>iahL<@$+^fZ7in*x*$4N#3Z0T+FJm9pYh(aA4|Gdm%)l;hmLjU!Nu;&N$W|NP! zyyt}}z|rX$_1waNW0U-TOlA6c6I?wqo>M5tvH0&kcJ<`%pKt|e|B@mB$IP}Fto^9f ziO{ZnrP%Vj{5tlyG|cD}-r?=zYigA_&UIbw4ChTPj`2D;&N=0+%H3^?4>~FS zEn91I+%xKddbodi{5V4&=ZGqD_?v;IAeTSA+mR&4oQ4ym|b z`jOJA2skF1QLD^xo@WcZhf(M9ZWS#5eNR7hfcRqlp}DuJ%)?dvfn%x4vb8qH!;|l; zyFQ$ax72d3O0|e%zkyBIw+}^!fn!*8in*x*$2UKBvq_0NZUd(aH7V4=F)lBIZSPxl z7xa0xg*`v0bz3$_c`HoT!oo`#P|qzKIQCEP&Az-CgzxDa)TdC68h$ko~$_Z8h!Kj=FMpV>IB6xAY*FXvy9$_#ste+bLcrtcL%Ooo_cQKz)|n1iiK~R z))r1jw+a->ar{zwFRT4?M|~ibTah9G$E?d2S@|8Q*3cSOR&4oQnplNMg}(Do1IIm8 zs8!~ufAm-iaQrj1pr?l8>Ve|Z@$EJ*)x5o(@ukd{8M3uDN0Zt2)PYU?v*2PK=0LTG zlDcvo%v^vEaR_-zW+B90SN?bvX~vH>vFxl<|TrV1RR(@wDlzpbtUr<>C#)WPwR zO+IV-wAN?njqHUzKd8x_vZPR}caLG=M`uvaEgU$izZ)^5-G|x$$7&7~%5m(oE`aUn z*!&ETn(s)FfMen86n1)ln=#Pl&QfgoUD}@5D^;4%1HZh{dk(eA91SjysQ{pUCfv2t zaD1VI<0O4A)zgUE_)VmnDYCUTM-z{`>T#xd_)_NVC8|XnjU3)et;*^fz*HSmDdwgM z9H%s!z>3|i&jP1PS1HuNG4Px(%WByUUzs0B6ZZU|x(u|EOe|XBW1uEvP|qzKI4-!= ziyit@)(<#-&!kX}p;pcn<4?neCrgJdw(>ZtnG6YTYi^6H|~`_b^90z z7waq6sa589yMJ?h8??An=0Xj}fI;Gmb#VMD)y#san*eizuClc@$B2@5)#kw)7r^OQ z(2Z&l$IXKrScw()@s;)T9u#v^1&&sWF8~s3(OwI2x3A!e%e3mks?GBVo@E zYR}Issn=(pRQNf1WK2D`aNzhSvlqM4ZeTQUoNPj&9LF!E_p)-KuOfis_1+W-I8Lc@ ziH%;r18>LG&s4GHcloq1L<(6}#T_^%m{F_DakXW4ycz$E8|QsA95Z!r?7eW6Dr`-S z&%kl`ZP{9zW7Nhw>Z&ylJq3>Lcc>O|th}`gYhOI3159_O-ds&hcf;SvA zeL$fOj`b#7VHPVRo&d+7hr*s8RB>pCl$t-Y2o_%RG4}txuu=^Y7XrsSPbd;_+}rI6>*nRO3EFAT6kC3mjaj7hazGD!DUfqSD>nhcYdWAcoR*#phwK)!`eMkMX;oLRAvHe75VEDc6a@8;OI4-LOG5P9YWaqPE*SOsRlDB5^!|-l*)Vzy&pllWTs-v@3PwJ zD9L=cNc>8-=w$|pjB)Cw0 zY{Kd(z%lVG)gq1$;|H+Gt^>KI14pY16v}a&+%kj(^}k&gNL@^% zNWgJR@nx3%Jo*T4xnWIPJbxorV1SOPhV$6 zt~UM;|_E2>1brPQk6FN{Bx))=E&CC9FLs7tzK>H;0PQKU#D8c z@%)!lQkA$gZ`Z`t=Vh4hJS(6hI|TjaC}p83_BEa6i>(3H-tSus93ue zQa@|g1X%dY0_wSi1IG~ud$XFaA4CAhtG6hW?O5({6r7IkYN|yXlWlvm!_GDF>)dZm zDdwgM9E*dZS%U~Sd}TeR4~057dd|Je%BGa<102uw754m~P96-ALhn2q1sppu>bZpj zNA|>sjl30ypLg`_N1+_Y)bwC>;nWv=I>h__6bU$9^1sYlu6mB&Lmx3vvE_GpaL#_| z){KsLci=OFs8!||+iDKp*r2IhwbmMr2Zx9+))TgSs@z)pn>#deP9m;?QY z*}|S5l*_O^(*1xHcsthAIn;9t2acbEjo8&TH7wv_-DWO@avY~$3}(NZJ{t}f+#qL) z1RN(lz07QDUYQB)uX&0szsu;HC~0Y_2_A4dPH~}DnWNwQJ`r%aoi#hIw}#_g9UPN} zd8&Tx%=ry{<$aCGv%#7_D6;X67DJr!Gimqk?Jz|Gj+TutvwCB@?}hg6 z5yh6@WvpA2RBz$X-f%iv9HUm5W7@}=Z2?q8Q-_%vj!8N=w%oBowbi8`ldZKm z_AgVQ_6;^#2ONJ5pjyOn>-ko!U{oFa;&0&~in*x*M<# zpSbp=p#MEY*z}kUt+hFx+Hq68&8g8b;27^lwTNTIGe+#uuo-_~s`(2j=B5f92L*>S zI`kNlYo*&dizi{cI{vNzb$GfG}a|;KKr+OH%Nqe3= z1deZ(Qz*x=^R8fKoOTH>*3UdC5^#*@p33682CN2-4^}C*{4U!aj+8#kyd4T0i@d2- z=9oXmCJ#V`Hh#WM!*QR5_+st0ak;A6s7Lpp{?kmhmf_gyraJ%kgloX@XA7!D99wm& z!lEjvngPeeRupqn1&;Tf-I$YcdF15LhC&@2Gq>(xX#>jt1dg5C344A}J7e9Y+0BFS zxjWz6Q_n3NIF4x8otZ7%cMmuo>`0*;$Ej-r*~yH2{E(PUXNm+I$Hu0xH|6X<14n&B z#g^aYt5V^T;~3@%9OJuEtIRRUqTMwBHMONGTEp?C4vv9km#doYczpxvA8ll7ZI1oV z+)zJgb89Vdv}jMYh$CBBndKM-^ahU8J5tO|6*#`?yqGmypjQSsId-N{2ggr)_OL+~ zcWOfKU?}YQLEZ52mI}5-;+uq?-Kggl4jktt7_!aQhWLk`l|3kwEFfc06MfVVbS z(2F7g#}4XbwraW!-dT8-v0}^bGU$1TRH~ZOGvMfGLaj2#0mdoE0aV8Qgai%8^_Jq( z(aC$6YUtY48=+2pEL&@HoHpo&dUMImt%0NC6RJfVPn8_UrnxV80336kQp`;iIBpnw zoLRhog5Q(w_MAc;92Xkrurx!YC?+)Y1rWI`mpd4uc+r14jlbFjoGu0 zPAA}W9QT?+IgVF5hp?1kjq>4y`|^e&0mrzYROY;YD1MW0_&ddx-(}RXC~5l2Ivs%H zsrS?>b9^$x7at%$wdA5a4aYbg9G~hfQ`w)d-W@nPmX@uxIaa%suijp!geh<=S(a)M z$IRE?C4ZwvV_~X}X?IF5@BX3ySK#b@VitxA!A8t)r{9@~{8q_Lt44-C?j}YB+I_HIk;~O0uOM5O=-3sr%12|qh zCtGWCG@qTX4)FN$7dSe{QZ3?GtLJ$3;poO{FxBUA6mwGrj@w_HV*W^g*TyF`(IWBU`ASi_OM+d!*MRc!fPK3N?ug|-O}gVV9qRce(vwrJF(27vNQ z4=ri^@0*0dR^p3w`ky7LA2VLIgE}Kyw$|oY^-rF9M{SFbz;S*K)gq1!M$TmOzn#W6 zH;S%P%uN+IUhaH`Wykcp0i1^CQK*As=bia1>hxy(M9|56Vb2fBplpuxqGv3=+1~Fa z_1waNc1mL*8fI>Nrmj?y04?TOT)c@pQaUg=!JU_uJgq!JCuT!6Ea!8pYgHfn#(3Bz7)m%v#{6SCc{=9K%~aU;|!F z#Yd1`39iR8zw=VVE!hxgHnXYULGl&6>!|PEf$8o-80NZx|sxzE$ zlN(SZ;P|>p3i~lIv>LSbjTBpcmu(*eOI=JJzW|Oanoz6E(Kh@ozGwZQ=usyPM=xvf z>Dd2|hpJD;5L3W>?zwEO%~9PdPaWkkr#qaElU`CS;u!g$Gpk?NI2SnPy`q?#DsUXL zeHYuk;u5~AV)lkY9UM1LOJo<%M{ESn!Ec23 zd#l~Ralr=)+0;4Jnl4*k$`(Hm5Y z(8e@TZ24VoEFB@uIu>pKr=xo_YLz)=ew;f8KrIY^K2F2&nGTNTB|KCay{F^t|3*g1 z*4iAmTIH&Z)rm>KaY{7RB94Ym45>O%*tP@G@e5UmSi6oZcRyPzT45 z%MNTp`KIllKX^pg^Mf*r?DRpaofJ(cFm*4iA)7F}0w-`eXSaP)AcTEwxhw*{O2bnFP2YM494 z+*E<%+4$3JLhp-PfYZ5!6zbq;k#mnVU%a6%^p_S3dwx(?SEov~YW#W)3;()=dT!ys zamnP)ti!6%R=}~;ath@*e!lO|zC_o{gcGi&Cq)8|S@)9I@$tsbpslw`vE_G}TQW#; zyVDCF1J&J|T4jzm`=@sSj;1$VR%>)?1@f3fPOLk+yQ@cKg8TAO2OkLzlm{>|}g z|9$RKE#kOz;Zte!`Rxuc)wA~~=B5f9H@up}%xk&hyDH5dP^g1r_JwV%SqsxHz;W$E zVb2e$>55^}+hM2hnT>jnspl3B9Gi{o%!20S`vb=rMHI?$tZlJ}4X85(Kku0QgdzdQ z;Iw4cu)#O{o^`WliY>oO(+7K{s9F;koQ|uXQ>)DJz$?!m!12w*0RbA0zjbgdy>5}} z>b%=;p?0y8t+hFBsCHf5{oH^+I2|LWQ7z(_rz*p~_n2l290Tns=B5f9yRKfve)_ex z0#3_jQmBLD(X1ovM}E@}(Azi)dwx(hK2B20E9LN|%%IuSa|;KK5q4eJW242ZfMXvg z3gtLDxdt%XyS?xuwAGv`5^$_)eUVl9-se7?jt}N3w)`&Flna)2bPjL@j58^Mqu*DZC=B5f9D{jBYR{vQO4V)fcqEH9NqSDV;y-(TSpl7MVo*&fof4*m3Jgv@6 z_&GX%g?et`z;VfOL-u#hj+MZ%aThWe>;mt(B8^W zZ24WTI~yu>uGMb^a5T%JR+*z=f>|MeiZ^_BS;O(64vqu1EL0un`m7|>3wp@b+8mqr z$x$DhRond`yHrKdAhVN2DzS7X|^x8fxmfg#*WU$(Z$=a}}RxyV#UMIgWvAL)d|&YtcaJ zkr_n-j$7MZW(#&zcmb_>U&WT+<;=Q=q{w|v(ZDfAqE?yXlC;Mi0o0S4X?HXn{YHpS z$6>V>s@%Fw8wT~Dda|`P$DTK@sTW6W3<8el8c;3bc%s5MHp9dN@A&?#5yjk8fuqmh zW31}6*0q3RnWhx#;K&^ESiHrRxzN{bF6{Y1g?J`OQ?IX@3mgZwq@G(iaBOm_C+ls0 z5${4Vp*4ka9LxOkho0;Ew&SCm9NJPO;5e;w5?fXNA>L4LQG3Of-{t-O2c@28Ud;rK zTRT##%rW7?=@I~H$gpD{H5@PL;P`pZ0@ZdOCljb!kCLsmIi@*ZQ*Vu{gfC?_+E6Xx z_@kf`tMsG|PW9wiin*x*$NuO1S&69c_)_H3cnWoJEZ%s5Sw69u101s^3VVJ~?fZmD zd&_n#3mm^srk-0ka4dOF#Rh+9Jq<3_rR^w`<7n9~m^FC$EeTGzYSSnZaO^lRk@aiq zI}O^}_KGdP%YNC%rMAl>j|0c{GpSYP*tSjteuSct>4tK{{(aB-s}7Dmn=Me)9oDr4 zaJ^=)s8#0pad#{H z+W+tRqZ?~DMvoLH^uk7-?S0-{Gir!JuHoUHRK#D z{6jnHxrGDA8@o+eQTDGs!0~nm3gtLYARiwKhk?n^|hp_~u)IWA{~5i#RT{tp$?8tg96!%tlE=+oDxt_)$7HiVZ1QuTZ&5^xM^o51{sgdc{sV6$S&?=tquIjO~!4<~?Q z_!erFIiB*Yg|DnfUk|a>aJ-;{W81!Ns+ot&l>?4tZ^+i#9L-&_)X$zaEC(Fj3#b-x zJaNs0In7+Q7N#0@n__ON!14C9z3j}b)``IB!W{~Aa13xg%Vs!K*bjZyJz>ueYS`O2 z$-cO^1Pd?qka}+6z_D~6Q+92|$o+6S)_hE%9LJUQgIQu}^)DdRvgUOpq?yQ;I85LK?lc)S6x*TpH>EEGk?W@@GyZmW>Mk@Jf-+AEpZVR=_9EbNWftTANr-mCf z9K%P8FV?L_x~dvgD333MUd@xOwK;x{&QzNvCA9^Pn_Z|Daja%+&7N4iz>Bq>8^zpI zfuo%&mYM!``vIJ0yHluxgo7w$kkcIX-^=LN(c1o8#Jnnd*9%$4J0& zS`Dg293N-dvX-5E%fM9c)TEf3DsViN8PD1cFJlcH&1+MrgQM%0`)t;w!|$O#R!7+L zgZh+mR|<%Hx&s#8&VYJu;lOd{BNJBFK_vl4pL!I^ah&)ukiCfSiw{_STc08U#}tcL zHaIrU8z@^gRBZWOKAL+<8oxTQBXB(3h+1WiU+<6G3LIYz2tK3XxYkB|I?i)&QI!Z> zYytHPbJ<#(SufIUIvakhf*!#xH5ku(<`}oG)%RUCB@uSf#aw8H`td&4ugS{ zixq`BIF=pxp6$B(FcSKFYhlk1>fWbPEZ|Ft5Lo!2;nZ^r2aXL|nlR(z6&!$L3 z9G1%Xk*?twql4r7PxDodku~vK+AXfh*4i8!uFOz(&vls(95ZsL7I7RlFr zH6WK_ZmPg>pGkXWXHZ!mI33QTPzT4ot;Vs>%POygzV;1a&kt(ug4WWt=FYQ$oDheca0&<~^AR94&8CB;eR9BbF6>=~V!2bfIF)@AAaa zGm_n&2ls$ug}c-$bMy>sjkky4#h#+>cVj4@PQs5+4E#d1h-0q@6In{h^WnfT_AABQRDt8h<_Rp$ zV%}un)ZsgYIyfe)?z2rXmR`{N{t)*3pnjfzC{;_C9S93A_ltUN;lS~Iu8OU!^0yE; zI{&6nj^n!609GRD+hZV=_lF_@M^)H4_Hb`Cy!%<_67T+N<9}LymoJ8$lzJD9eh(b| z^r%(lc-!ch0f5SlI8|x*zwcRR>)@EK$DOoH`w*PzT441&5jCAwLOv-y_1FAJjgN z1JbE*8)H~_*<;jm3kQzR)JCkaZw>tF){Ns6%5h9E-oq++_O$_yDJLlUA5yN4PV?s2 z+s<)zb*+8q=2o8|rUpO7dsVJ1=m@+MZ4V&w_6FBzmO_6|Ora=sA^3TT^plxod*z&s^vii6b)3!}t zI2~*Cp;npWic0nHm37})t&KGtPwL=!>$J0K-R8dYfMa(j*;2$gVd00}sOJ_A9JlQ^W=+T1;UhAuE%<+g-E}}!%l`LqI}x!(3=l;DMNz^n z8*q(;33eACVs~I+i;Y2ps2~Q?B?yRs2qt28f?bG-!E?^O_qj8l-(G9h{r|ns%>BNY z?XIhD7@|0}ZT|SOU6gp46>kk}FSI}0P z}*?`idKP6SynSXwBp3(N>!r zGHSmGruwsl#>`ZKqt5p=r1l7B{LH$^OB%{>R2~Z@PZTLSz_HV7ZqE+Nb<$R0?tt~~ zu<&tjY0oSiIF`=nMLG^l##>}Adrw0#jwW#-9EXOTAss(2$Co0xy=f@J@vGrI zQsv7IC2-7Ba(i}Atv|dImIsf@hlM|~p*^#3;28W~L7eo);_cP%^r4{`M??EiVlmb) z5l9sg8gV$@(m6%Ol)W4T?O8j?mfhut)rrE&iO$1;W1$0Wr8y29d(IL-9s20GT*dLc z49CB2a}{q2eeiw9sL!IcI>#Yi=arkEZZ!msgTK(4$FU@*Jvm}M65lV$`$}VGs=%?! z?A@g5%KIOHlks;N%5cn_lR(alc#Ky-+xdgrvx9nYYQHebbmRlzSfhgW%))`=t_}*~ z?4N-@-E#j$LotpMvO~zm6QTG8v)tb_;&2RFm`)6a3~mS<_5Vt?>@E-1O%$f|ZHA}g z_Db4HbL=ta{v_b2YxQZDisLUCj*Gs`Q53EFh&R~$Xd_yybF8a-UU^;X>v-TeS)etK zWA!PvB(y<&4VdcozBFd03LGcDJwS$fXyB(RvGz2S;n=|B6zQ^TV+3%{apd;wp#09B z7Pjr^S_}(+-=Fr(!hvIbM@urs#-kEm%2W)bp%_Q!Pr*dL|AxCjs+tpxI2>C(Nh9n2 zE*lH2#t_Mt-Q~Q5c;TY=qgrq}b{IxmX^x-P{@x25-$%I|R&k6O$A7Y3uxXBB`tCFM zCVFVBXsyoCJhxC8|>aIBp`YaYirO?wfmAr1akXDZfmBi!jW`@H-ApH$SN`Co>eI6&TXvTzs}qFEb-(bgTUT>vE6uTH>9mIS z%))`=?Nt^;5jAuSoQ}@xXeh?<$J$_0ynFH?;J9D|jW`^2rlyf*jq6s2)_0R+%kJ`n zGG17`gg0mtjfwB~W_)p$M8`!MAwaJ-XBV`i$r@#of?B(UX~cfj#-8VzMQ4sBIVTn4|+ zgFfRFw`T`6=5uw@f1|YtEc|RH?U{uG$2ObHh;NH4rNA-iG!4Z#j*Sf>d2t``>$d@C zXvE?8-Z_mtbJNH79arT_w(Kqkmc$5M&AZ{JGSkn}R+?jvu(`Vc)TfIhOH~~6WH|a- z%~rIC`HQz#Z(AfKjRm zX7|1UrwR}ire8in^X)Vj&-*+F$^5-MnRubcx5-*k)i%))`=hkx#*)AnY+ zqrmayZ5oPkTr)R>e6RMVF`RJrcWK1o*vBWGXwAs+8TeQF;8r(@l!$^ZLr z^Ejq{wl$mmEq|AZKmR2o3Hp}UFWrEt7QXij z?U{uG$0gk?Nv*8w1UROBqoEi_$0fn!>A>U)AXWNhOoQ(i}aOrs4OwZ~H8=QgPfqk$*bY+&)vWre+G>$ivcCv{vVM(fXXS z^40fY!11R)t$7@q4ibn(*P=%-)$~9bGgAeQ4+h1M?>+tEfYa1q8p?3=F~3Rl>u&u5 zedADW&kibKX_gS%EeyZLeq%rFnS}#K!}?aFcxO-~a9n$UhGHD6E!$6)Oe;DIqzn$x zh{JK~hzv4e`F*_W!sT$umfdBtOR^Bv>~1lfj$VgpE6vg6tyKt|jz>>kAEM%zCBw0^ z?o35cLgpx_%Q8i4b&kuP=PO&6dej1rYqDw0<9N#3lxXSt;Ahrnb7;&=6*$gHJVN3! z9z_Eu?XxtL;b>KQm1rOGOM$-cId0Dms_pLtVZ$8n9QZrhS4ewi;lOeKHA`agbc7jj zym5hsVjQRU4I!__-N*utR+nhR;b^RtPKJEa#visGx-8kUyS(e3Ae^&Yju&HYTtr)G zjz&6z@qX4OwwGt9IDVAjcp+tm!tlPAJ#f53L~C`9d$#5)b@3>9FS*8y0t6BYlClaqM;ba8#{x^qO5j!o6C_yXvE>z*eZ=AZnoVGlsgWS zY}s8tw2c?0w0ocfr{kaDw3Xtxmdw7@1;5eLFM81$6~{x9_)pgF2hLCoZ#Ndt){=P9 zTAgF_?)l2HFU7Bbj_EgJL?8;EIY~V*+C^Xd?_?+;(>SFicP0IvvA<(RJRwISNfm~PRF4cG!)~w>tQfi z{_*N6AXT18BM!$w-_yvEN5&nX^*t@wvb%JC6DJsI-W?1a`<|h#G)I?h$MAi}P0gzK zsW@Jj;pp>hx+1hi#5On`BeX?pb&j=fpH;SvSfC9Yx9HHC$8k~W2r}9I3*I@wstt{q zsRG9;n-j2X^c%5c1Fd5ajkIpUM`N?mTx4k~o-Sz+4SPT%40s7rg=GYbcf zz4d#N4zuF$rA(nd4aGRNsu4(Pb&khZ))PC@h{JKwl~iIy9^*~mJ{d^1>@Kfej1rDk z8HJY{_32DoX^uCY-0(B&oI1CoR2(-==AVvn%cm<$N(bS^nD1(c*6JKxz0NAnop~M( z9RF(4n#Xb4;^m~ulPh@j+iO}hW~K@pO)nJ@$7_@Ee$;y#(@=(E;QV)F){_Orz}cxO zw`T{H(zhx(JL$$U;HcM}_RPY8qmxBXa#l~*5>CfDEomsm(JV5MOl{GkKAdow+BD*D zd^7kYIeI3?8`@bqk}bQ-6aAxwsM&e1;B@TVhPKiiAFVrt?>lZw_;W_Z@uUpLL5-#> zD$;Z9;B;J>B3i3+>}>E4$H+?;fur3?TJt#8sBB5jRyV5(Q$3YNV`i$rF*R!&(Tbbe z12}a$MMD{m`d+al{`DVxWxXSV+p~kpE7&b8NSpWq7G5)p_RPY8W1ZNZL?=Rb8F1Wo znucN=*I5LScQ0GvEi%ipX~f|;!!3>E{Omd(I6CJ@w(Ktd^o$man$%GM$JAWfN^@Kp zGzPySrhhExmWtzR8IIGAdnlfL)Wr+kw~rRB)j5v3lBaYJDSZwcFUHWC$8m|a1!>Zy zW)GOEO&pDxsRGCCdPm6qklh409*?J?496d~S4g!!J7{?bigNUF0lyN|cq|%7PabMpw@;q$EKxhw~lx*2u z9_)36I>+}* z^OU;FRvZA1yHjb+<5+#>DB{!N&>xs;P8yAwsRGBERb$EB56$uWjwPpPD8tdOTLC$8 zC1f6O{F%w^*+G>)xh^z%b8H(d+%%i^%))_V$MdG-NTH(awwdR^9pDy&GBYTclkivaP0Jz);x~As*WYCx*sTosUG-7V`i$r zaqEi&vaMmG2f(TB4;spFY?yX|WF*fW0sZu!+@2lOsR{Rm>)8vC)K9!bYjuvp&*v(K3~GK8I3}&7 zHIHMh2rKf&v0DOg9J8Lr%v6D6N|ocJajH{W;Phbw4P`jSZ@x_Cj}OIP5_)ao_Uxb* zzRVKRYEHs0YU+8@o>@3>Y<#6Bi5hq`1vo};p`jSZi*Eu+Qmi4~K)A;?8gV$zS$~pz ze7MOSI3{hEY}s87Iu$MK4I4cTINI){tu)8RS)urJdnc>0iHc)_3;)SFM01+L$geaG zI0|{9wK_-LMY+nQS0Z)+$GCi2^EfU&(t|uPJTn|P-YB3kGgaVdsuxCf+0?!d96z0> zp$x}kzjH}UuWfiizP}f_Jv*qFW+#N_X$( zsI!8mor>dg8ICQEyDRRsoH`TgarUCMI>%vca+L-4wegpPevY)}alBdMp%7LtA1{g$ z*q_GCRDq-Y{9)um+9tfk<*tD=l;QYm$_8Q{VBiIumks9j?4WMma1$n_^@)YQqqWYo zXBG||yL9hPb`IIM0XR+@N<%S@X8!(U+j+-saKa57P9qLSuN^5QA@|-&XiY{+w(KrD zojWE}X|VGlaBM%Cw$dEUU0PfPP#40KV^tjeT=}P?hMl`&vR=*=s2_!k*6JMJ6yzxD znAeJg({bZrTJt!L_8vf@gUT<#RR2cOn3*bY+^KVfj5kik+pEtwN<$frwrkFiztuk# z0mrMyxIH_l3$xD&W6y=-{j3K>(Vkg2aQytulza(H)B%n$Cuk_f@t}1e$sRm3A4t`Y zp%I7U9pNNt)53HZw9{iHTXvVqz9)oz=QeBvj+f$SE6s7Al{fy9upsc`TouOx8IH>y zPgPt^E^-Bq??Odub&f9=<|yZeKXL|+zG1ZHahwaacplGNV-(L-~*(p9;Fe7qgShwYVWW!UPZ^G5R!&v?{82p@>gq>DYjuu}ZF7`sbYAxWj?u?x&Exp;%}{b? z&23ZQ*e;63%v6En=r6Hk?Qq@dz-ikF8p?1i)Vx3zmG{zs{#7)$X9s1Od0nts(FI>w zyT;OOlatx%u#56~_~9{3q+U7E=`m+dusV_2E{cwK~W8 z7tSc(xE|I7j?Qgp&Et6O+6JPVc?s`Hc&Z(ZnW+NDC+645ZlzgI;Pg$8hB6%AuY5&nV}QxVRHICOxM$k7Gq!SMuWTg8pziUMQt8GgaUi zZ*Y?AGWA&xoUXm3p$x|;i<_kJ=L)=_-p$wCo*mSoQ?~_|JE?fPun%u(&nz4`F235G zkP}bZ!0A}}o`zx^qbCNCXP1i)0I6pmX~g09)GL+D4Z4e8zr9l?*|NJd$UZJ?*L0cy z93Pa^R+?j@h!@Clo=%l>Dvmx=`KRNlp>7JD!o6dF;{sjLTAgEh`!mXcB_HsW^^^9r z=5ZXcWgYP!^8;TIH0elVW~#uktUm0KNp&x9xI84G(E=hGHD+EDj=}jT+)rD4xdAh{JI&Nh2lWFNOlgy9tslyUSV1 z7-7_mUlqXdVG?bnIXcI##H-)_tsh!*#J`_eN4oQ$tUGmaRUDrDcp+eJsU=#ga||%b zR_43BbO4U|jcCo|==-oG={UZPKTNfM6B;v91&%}ady?83Q4;rQ!nFj@0@ zINm_GTXSyD4r=L(Rl>$T#gAd((Jg4tEF3uM+%hM7{B^GZ$L88J6ywrFo( zwWbw~I2==IrV-1c%a5Tg)sbx3T?Q1#3WMi&#&7ftZ$n#Yj#=0DdK*{y&;K^-MzLYEnHyDfE@J!9%*x5aM%xpcJ8h%Ul;9c{b}i>)_Jng8N{ z(*Im>+V6+3^>!8fU@>nC&2;Ovt=EG6FS6IGE}vsVE|1uG0{#F@wsC6q|0E$kqR(^h zDZASLcekF6tpC&%V_JTB(YB znLpP74#O2%DT(+-*yC!`#cK6G*P8nhm7k1?OW@CSU`<-{{#;A58j-_)<_!S#t7_Aj zQ4fEvA523?jYECD!k=qcT^h>#xz1gEo){M`nhbqveQwXr=+)W-!fwkkLtx=A8ql6u zIQ+T(yJPJO=9A&i^=m^Kiv79%yW4ZmN;Ke4uCfu0IDfAH?sV_5Gee=(Xe!zM-(6lx z_xk5G%YXit@if7qZl~t7W&U_P7P?HGyvWUEw)?*vN#Y*G6W~9mAicYa<98X3kKPVb z#D1!U7pp#WL9|xq80e6woN4co037>YqBW1>NE2gn&aE-N^N@R)#>`ZKqoa8Q**ap* zS>V*Ih=wv8+l{(SVj6Va2mPL_+@2lOr??=YLyNG_z_I2v+A|9Wj!o|xkcbQ4`vXUp z>ogSOc&#*;w45_BA2T9hAVQ#=FbtMgDIEJ);KoUGdZ$f{5HMeI6<*|N~Q0rT; z1#tYihW5L@;sm4`ZKM&0e;1y@_3pg5Yp{+DWn@vH@Q159WTB~y` zh)qx`>~!k_$AQ|k=5ZXZXGY9wP5%f}EpA0)W~#vP;;`eyJ1@K^_4i*M2Z+8Qct5U?U{uG$FCV3 ziNDFuB;c4_kA`9#gBt~q)KIt6Kx&i*jW`_dy5x}MwQFPhtAS+8?sAJ|fY4K`Dc)c? zvLS7yIiB->dI&%jzs&Sjam<$CXuEl+VpraWR#5xC5v|oZ4r`g9d>iSGUoo+IM{6F( z@6GxXi?{>ja5^Tvr!g~C;JEfv8i}p)x;AiZ^O1%!977|Xk*E)yH$cDf6Srpv6^ zFPYyoKORU$4Wki@G8N zcMFS^nG1m9*$Uc9bNp6W{HkHjsq< zvrK@~%qBFH;TT=(0CD`1zYF?nO}RZgsKbeS1=|k+_>HH5&1ugp95{xB=o0gc$Mt|? zTnieCanxU^$^PxU`qiPq{IYaNMG#x?0t2^>A!(3;0_$My!K zV*eH!IAo5sqcJm8;J7Ax2kCp*J`^~e)uW*d#}6jyi>002}z>?NHj;*5&$+)bZZGdBTFB&sb1&-r`j*^Dg7N-Ko z$-QYP!}0gYTcq+-GrU1_r4_el2UV>_jNr4PNdYW8#hUia!hvIpTOCNj#=j=O(b<-U zVjL$w4j?Z&n;8PB7ky~N;n?3hhnQ6O=|k&DBwKcu(QAT*!jc}3;B;(iM_Xx*Vdu8u zXXNGC#kwkv`)Bf>tV8sj6&i!=@itKH&x+RS9D6j4Qzm@xz7IGS=hK?U(e`k z45r$zfX2*Jfn)CODDuIeDPI3Fu8@W@9OEi)lj<894+qX#7q~q;s23;Wh3k8k{f32m zU!*;=aNuaC*^%sBp}iA0zPdz1F^)RMLFCZbV=h3-{tAsa9J}?%Bm3WUm<8?OBFUEB zWA$_Yjuu!7h{#H zK914@jvMu8&Ewd^+nLy$I{6N!`n^4knW+NDT^|2jJAKm{58&k5frc_1FDdVk5iJg$ zfxfUKw`T`+O7EU zcseO!ZN1h){b{dgtuj=;}vn9>*4GIwa%l<_$2_-~bvkQw5Hpxx2{# z=O*~$i<3b#l;LO?cA8|q&BALST?^s%?4VX|^cF6)G&h8WR}Z5-vvAW^(@hjWs(m<(I2`*9J45FGT8E!^8y}Wz*4bg=iCR5wnu0y z&9T*>+I0Zbp1<{7RUDIKI3Ce=Qg~mV+ZF1c)ilIvb&mI}VwHZ+?ka)fry8{8aV!k6 zBG-o-;T>(GYtfjQDsU|N7DZlnzxM=Aw{dl7D8q5O#ci^DcMJT2TGe{oo*mRsw?tv- zMwc4EF}ptPnS}$#9?LtDny(gx0LRGQgaIDdgMjVbowR1^OLk%Nn z!?h$^c9&6wAwrhljXS_`cw^d1bF|lcIvhZ?-(J&G#j#X|W0Ru6iZ!SA;4AB8yG3ht zj+4K{C|?Tt^?~Epy|m_WOxyiOc-Ej6er>R|AB~x*0>_*&E@b-qhV_7>RR9fTIJS57 zAzPxCOoV=D5VvOs56FAq;JZ$CeJ8SR;c1IO-` z9f~baztx&j+ffSD2EKGho8!1=F*zSaa|K@vbO5r*)UbpvovO=3LLvvO(un=#jSzk z{(KtBaJ<;!18M8)ga3A{JjdAKkTA0GgaU?w^t}}dN{NiaCF;ELm7@o-d!fEhUWE$zIYF}X9x9Z=pG?0`utK@ z_{e>7D&)#Nl{2C5L$CwW$S^w+BeJ z>@HI_2MTkRx3LC}KLcqi&C%kF0p8~BYCqlADvpn3IHq?UqzJn*Vh>=pa1yQ6Iqu&V zt(>0d?FAfThtQhGvEFzma$}_xz776l7>${!0>`VLGl*kVTfCfV^^r7`;kcw;2|2UB zYaVcHF`C=6gW6<#Q}8|*Uk^Asj-@@baNyXjReN$SdTBS{=ro>&VjNGK`;+p|=Egv3 z>_i%IIJVS2Lk0tMpx2Z*zM9wfe%@zbcM< z=JHR+QTGQb7A1zigF5xHXsyoi*WhU7-g=Mb0>|Y=wB~XAFrgnwbD0|sQ~h(5#>`ZK zHKlG4{*GGo!hg6Do%+JmThTU1PdQ}llIKQfn(Vq zU2^B6Q61ozaf^mx9B&!>k{*ASJOonOcWA`nnEE1%TxfE`4qDHu#upIPV0aCF)_P?4GSC+iA}%95}ko)+ZHjZ7qP~l$|sb~O z>d(2NwK~Vpyc0@ApH((+I)M*3-(>bU|MGgAeQU5$p5?O!_L722v? zprH&$rRx^*E6}|ea5TKc?b$&MX)r)A&?syK3tw=B_RPY8Gbaf9Gh==H&Vs%t_;WFeghN(t}i!$x@41Rt-}%xAt#f;g&mT&nz4`ZVlHbx>qdQ0mqrdI?UPwl0xG{@wfE%7#YfoXoTR2;X@=bw&= zb^{c%1GFvyN6piswK_+~Z&Awo=X6g1N3S!q=5hS-bQsB*Vs-+i8lOvJW~#t($-Oi( z?^)m;;B@sY4P`hwYL=3Tiz4w;nV09dJv*q9&u4{erJ2=X;Z4ueo>@3>{A$vH-1|^) z9XNKpNJBA>+5`W2qi0zq-dV!*GL1MK$@?6VJmkm?;5e;FvSoLXob25eIF?(}P=;fn)j4u{iN;9i$J%mx7}Vh7LfuJ; zUtrMVTdk`9manx_+N9xSa@&ZzO`qGHQae-ep>6!jz2(<6* zBwKcupJIH4X~r!+1IOVGw3X&KYkodnqsJh7PJoKzM;VUG4)<4V)t`)SgRjpMt<^c+ zog1Yr%isMGPRAknwB~VqesDf9?CFcodC$+$n3*bYoc-b?QC9rM>tD_)q@fJQHXm-1 z`2~pq!14WgZqE*?)#~fQkR>@!faB(iv}YC$933lk$-;mO-+*I{%QO_@SbMH7@iDBu z21sqVLL&}Gjbo>YO^>(Tp{;UNvSoMqvbwMEwED1lz;SaiZKXNR8*z6AoNwOEwPI8p z4=vz7Sw9@nU(v8w58o!5+)A`o=eWl>N_p^p-X7q1xizhM90UBzg}Y-<-GHfnZ%bol zs=%>(*c9@k(xwh@($b@$49E1=+sVqiKOaKhS)bdpgPP&LSZJP|y8sqGt|RT4g#$;+ z{raS1!LI<|IKLAO#W;>u_>&ly^?03~)rK_UaO_c-O)k2&P6duzj3rxkm(QOC2u-u@ z?*ooGU1=-L(M7LhJ#Y*%K9;NEcwL5LaLxXTyI);$p+4A6v{vW1_tkM_hsgzBfumqb zYaYj{F&bpENu6kzYDy0pGgAeQ<1!bJ>TeI>706nf(NKnC?G^zfFmuvO;JC`1+p~ju zTW^I>OZ!+eSa_KQ?U{uGNAIP2MDZvLZ*=0^i-uwxJ)igzk82(A+u+d(8gV!ZO|r?S z=H}tRv8I(|%kFY#zORt8to2CX=&PiyG{?@yQ+5NW^G|!+QE}X~kbgQxr}k5viW-W) zvn-D^N>3+t~tXsaO zp$x}rl?B9evcW*)_=elFgW7EpCLCR4Vh$WXzok91aNszrSeM*gdZH3e#}V&oD8{kj zabFVky(wN4FZlzFI2yu>5?ozX!uW%zEX)|zKR7P8Aj%5ROtOkxz zp4C67IG&W@*mQb7#WS;S>!6;sO0-tzIM?mCvU*^*AUGX$ylBni=p1cK+I|ixgQ@zi zp)oU6;Hc#lM3S#Jz6YFYucM(1$L02?$?7U^4?w?oJ-25ERgrU8c=O8(UxR(wKznB4 z!0~E)JF@Fxi$vf!VG|9-I943rN2*UuumMs9n`y-1*z!OYv1>HW4BD<+BwKcuQ@8FD z_TRmP9}@20N?U1;y_{1Q0jRO7Qmc>t_d~+hG8~Jw`zfjhbi=p7zpW9i)j2xq9aqk{ zRsRKWT)dvvJdTZmYLFiVh2w!^`bHWvQw5G6POc$KYv!2)r+1raD8sRVLln7jcibxI zTWsa_?4Xt>%@Xvq^=x6`Be&C@SvYW964;uwn>i&DIIiAFLotpz>3fJvbIbWa>Yxve zI2<=#$RK7}lbwR#ARnW+Ltw|(KH zEOY%+;4~wYhB6#q>@Or8-c7v${pJ1Ko*mR#tpwqOw`E&cc;5rGXBG||qm^w*NEMwh z;CT2T4aGRttk^^5_xX!&WmgTS5r<>Nstj^vg75JcYTpmeV zX^yFJy88fB{IVz$701gm938zJ6&Ds9T?%!_)uOdJ$E*8~Da&pj?FJnE*U*~B(WFl` zV!H5yJ4`iq9gUf(0!L+!9mMM9#a!U@Xaf!9IND?p>s@mnLtnm$+p~jOVY*&;HO>G%8)-qAK=2aPx!TeZt1`_p!{1&)t) zNw(}R_e2H?#xcg;a5{e9O9Tu(K3820_Ewoc{td!wc+1*iLf5siZLQ%U^v{vW1 zX2LP$fZJ}Xf#b0kwB~Vae0V;Ii1^t9IO@NmF*8-*m>88!nmD9Y0Zuz!(@=)v{?$*& zoWio2(0_iz?b$)So%2vwo^c#s%FKR8duHLlF)GJ^?2d9g2B%}udm4&y?0VgwC~w@~ z2&B4wq!EYXaAhX3%-M&x5Z(SsvSoMKUH71{)+OH*IF^;sR+?k?`}5s_<9Tz7aVm}p zi}_F1^-3HRCnn7633Z%8v{vW1NavWc@%Fd(f#YZ^TJt!rUNMC1{_BcASH7U6F*8-* zXx;A=iD=yv@4M5@hK4d6cPJhbMd4%o`tBZEZqE+tc>nvtr;$(arA!@x_RPY8En7m3tfSeo)w#MjVcA)*0l>mZ`mfaz}f~mfdAa=wYFUT}~C? z80A1)X^t7)@2&(;^PYyzQ*nGQ!_gzaL9sZGc2EmO zh6&2h#h+l|>F;RIEF3s~o?t{i41HP!IJWpeLotpf9|FjVsb95$)Z&jc;&8kce2UB- zsEMcJwNH{QyUQ07j|leH{fvO)_|LSJ=ID6heQyA@-mLK^6-U1%{L`_;KnI1=u5uXE z{dKwZSA5}W8u8&utXw{q6JdS3kN(BGZpp`JyeO5GPrV1QaeCbd6eQW*}IQ>@A zP=@1zODjo9qahj4kG0|U?4U+wj1X*^-@)IUU9qJ-vvA;8xX+MS{=T#hIGPAF6yvx# z)Spz|>*Wj_w-Fj~IPP^%BcE2qz%{U&h(OO*Tti!Fj)6bc<2M###te#Aar`O6ae9)y;@qrvcYtH@1kqZZ;}7klO1-|J6M^IM zNwns1O!!`plsX+Nh12oW%|HroC^(QIF9<~DXb*%VSDH^T)90v zs6lpX1nr??hQq?mrqZ5SIB?wasT&DgS=XIzujqNG zGz;o#Cq-*@j(zVPQC1&la2Gg+r_q|n(ZRVH*{^jh3#Quq6pfjw0>`EweM#3)ljFe2 zD}#nI9H;*%AfFxb@l%<~Om5E(s%PUZg0;c9_OS4!r)keD95^;u)|JfH(86!@+|H(< z7{}I6{K<_rHu&RIiyRtpI8J|;N*?XpSq2<;1&&64L~C`9*Mg5IKgY&C1&*$jwB~V)ZP9?-A9x?X z4L-GM-~TO~nJRE>JYxk3v`fTGMvbmcLm7_q_56s|ACnfqxnE6g&kky8yS+li+5Pi? zP}!!h6GBsr!#XFPEHp&{9_ zyWEv`L|8rk<5%EVqDfn6j%y9yDF9T>8coVn9DSDYPe-e3c8Wt=2I4PmVrz@m>KqS` zKcdXMTATtLtJkA7kK@f-y@|5>ytgpbmKro>rV1RVy$d0>#bLqjo+=lc7R$^8uQQ<=f*XvE>T$|Hp|-4OB`I6hr3*|NLrmli3cKY8W_ z99M3ntu)7$&9v?VsMRf8TB|sg%WynuZKtri>^=%=T^-R{ouk&HNTu7Lx9{L|+|q{D zJdV|$yOaEblRCjvQ`*s(nJRERa5snOH!n|s)9sEP4P`i<(R@Nyt{mfhv63rB?C?bhROWrms1R+{6&!L9K-Igu6-rYeq+p8O~4Yvp|vnmgtV z1&*%0MQe4A#|}g)OHwqB0mr&ZTJt!D7dVohr$6J(tJYf6n3*bY49|%t0k6yc&yNdi zXeh(+(T_W1lHwPBLCv`jw`T`6+Bip;*{=tFDsx_-J+pA&xbQ_cQhRSFci?E;mxf{- zyYvktw+=)`1F2nhG~#f4{O2Tzb%|{X?OS`vmfdA;a+ENQ=-!6Yai}A0r8$02b;QqA zA{AziDvq~hI1Y^JtEf9*Ext`uXf0Z+b6oEdsjUC}&PL!k-iuZM;TZWng=AdP#%n{4?=RW1yIi4p zRB$o8J2*uDwia9>@Bp9LbSdI~v1O6N+feOcgj*iH#!1=cnRTB(4uS1T{ zu5){KP@czggs#OUw_)K;Z_%DvIB+~z)PUJsWlflns%i%kK@dUS;Q*4)>N44q;523rV1Q;`JW>5jw~1r z|8`t%N<$frQ?U{uG$J6dzNM<`vAK+MI zNkcJ??oIqjt))Huf#XvJjW`@H*G?rKJvN^_jm zcrsq!are^-ZxzS)G90~%h~lPJGrW;UgHq92o#Vb^hm{X~MjwDDYu%T$=5fp#?m*fX z4V?f}t@4`2%v6D+mqi?@J2kQpI2FC2p$tcZJ;h|&oTrh{`@Q4#?4W+RUJy(NO~)te zfDg2177iSH+%Y2k7mUR_Cye_XvuV#P95`P1ZA`}3eu?)aJe)&AF^#+5uR>iCs`z^I2Oxr z)UhRsMzL2Mpw^ozTB~#1VscpNy5yv@y; z@ML{{0S(1C+Mo9&<&|M)fYkd%G~#gVurY-MUW)t!ZQG@iExXHO7KeqMb@K63nH|e$ zE6wp*aKjYRu-Y`zt;XJoQ_$$XwBm| z-ftOs{bJ`2m}=2(8Z%P`j`M4sB30}8Ob1Rmdub@c@!h8)($F@yGxR5Xxjj3mN!>~X z^Gh}GUl}R>v}YC$9Cyz!A-{IIDTr zt8-kQ5~191<;WA@*x(qgc^rp!GbN8q{yYbc9inK=OcgkOX&OeJg|x;G2@RuZD8q61 ztJ7p@(xV-~(KMFZvxAx+kt8^DG{WyY4vwcivvAkM_*Mf#d3= zPUKg&=f8lX*#H`fag6V?kHq8&K0xa9KpJs4`kYE4Tb^Ei1Z~s7k}bQ-`pd(Gk0aCZ zmxPO*Xe-TefXClW0BT^zzIDg``JY4P`hcrd=d&YOHXD{)s8K zX9wk8r$Bf&xFP};-q?)x%))_VQnV2%s@do=a5S`_p%}-LZ+*$Lz(P|XWzma99FC@g zQ%J9vJ}aSB_LgkfU3wH976vRDgI_QkrlhSjM|(d-e*jfwera13$BQx?yWj7l(00$j zZ-c*FBwDL;Os*QCylr==960V?LTet!>p}C#=nf?tV5&8j(U_Ska3moYNY|Rz@g{H! zJ!vSz(Pr&yvZ56;CRc^n9L~{SsyqaUqwSP zj=jTuiPnR|r-4*mFB)+;E_#$q>W?ughj#iJ$(G%vqxoT>`ipn?WL>nDw$dD3h6Ka{ z$In(FW-5+rLW zqcJm8;CR(zDS7Tt^#Po2GaYCs!?E4k0McNr(^cr#_T%>Kpw`-K5We54I|UXVH-Prc z!hvJIV@9Nx{n9kxm^X-qVjQEJ`;iUJtKh%?t~t?&!?9><3c2(1YAA4gG(@sxcbQi` zQs`&*at8d{@#`?!N^|VACl&7u6PG%Du!>{cYW|b;6{kLmqng$5QqEx+qP0552HV4x zhQh9{!0|~It$7^Roa#tMJB8zQ>7HlPn3*bYoEGax+CTLD1)P58&`^fs){@i2q;23e z=wIh?dv;KtBmIRcU*_WPtec#pJ+pA&m^{vy{5b6v101Us(ol?JOH zH(DgRsyIHC;aInBA4S@?bAzC+)mpSx=h$>exUypK>@!LLws zY)4~es=(2s`#*2)mShzHr|r5ll;LPnc#V9Ux8fD_<$Bzn9aNv=w}kAu(OcnkoT*QH zX5qlG?GQtf{&Ypvzt_&Bg)j5uC7Os4u z?2-%|7e>;W$I;H$o;GW|L%5Y3ynL?uT>Nr7v z^#r$P2eq))Iic6_77oC%B8K+N!hxfqgAobexgY^J){3X07)PP4FY(thz^hO+Poxot zhAewRG`o@lMk(dXbHrLTLtY~YyifYv;Yj zjvJ;OQhx6qG8H(cmeQKX(eh&-GH7)p{DN8iS2Sj(3LL)_#gT~emb-w{g4Z;Z;n=a- zHL_{QG<>7z+8b`q4ob7(72$T45#B)9@g41%g#*Wn=MBk?UQ;xIPWmL-vb*f46(Q`>e;EfH&z8|vn&ak!&2)j|#jAxy zDvtMMI1Y-pQ8e1^O`z^^OSD$!nAqiza&%su3&8R49a{4^UW({Kc6?mx0f)@3do*UI z3LM==o*+wm_s2UYe0xAc8IF2O9uQ%}#)ZJS?qhDx4(iv0IN_Y_E@xP{*;Cpx3kQzT ziw%jNw$@qTC_Ja37{{VH`-rRk8&5dl29(l>!|~I@B;woTWDK+;UrM&@E?e{r7rq@g z!f*6=yr!)*$EAfDMcw}U%6iVkHbd$b>Gv;HaooAKD*t#ioNc4f)jyF8xoc-fE|~0lXb!Zo0+F!?N_@o55TM)RQhQel4%>x zuQmAZ+7~%LuTs~{lqtnn{%N<5d>prX75wR+?7>tVmvPBS};cW`7QY>K7vgD6HLyN`SW{!^0CMJWSDN_7^Y^X z3o^5#63D7Hk1F-Yb&dn39HVoMgYoC1?^RA;bq#q+@ocne7h= zlNBQxg3Q0EOe`()$HGQBKhUvEH#?;JoL1x~)J;dzV#X^8}wL4SF$Q&pnlZX5ED&PTD z_TWDNJFnu;!NQ>4dz--8t<9JRVAc*Y`$Zd)*Cc8&$b4xp~nkl4XcBc-v!i94>Mhih^NpB{WmU%zZZ6(kO>r`T;l6g~3ro$v_ zMXPkjV92wL#B+6-e>D#(J9b)uFS=a2FgZ`=q@^`TU9*1LFx`h;nVOj{$n4R>jU+Dr z))Qdabz@2yncADTk%;Vx_V54+-T4o|&PylFQ`k)Aw}rJE^#X=6gxR_`b6MSGgHeab$jfkVx#Wl%_#E)IvIDcUn~cpwQv@gH|B(lqC~O z%WPP4TOrVDo|H9ICDVJo%$d1F$6BGhVVn+mWvY0tE_36p1Iplyylk5Z z);SlDsh`6<0JCAnN60gCD~dgKLOUdbf%P%+3I%? zIozp*6+FO;Q~U>D=XK}zZXtVFV0BpggiPiEn6-n<*Up{DI1Qx^$UK$BlwvY#4cklB zr0#qVxGb`niX&6`I+2W?{B9D&`_4$m>`w1*IVjYQ@_qy|D{`1vTBdQ#wI)C-yw>Jb zDw%KPWCr;w6>oCFcR{|Zu6V94Q!(v;vgz#lLqMiUeJ1D0{M5Azu}rsY4bu(RU}|Q% zAoFqK5OV0u;kN**fhJSR$lRrIhI}2;*Bl;TUPJx^u=DCM{HQQ~@ON`q`wK1R0hqOe z%o+VV5tq7QE+EsPF;j}k+-<*?ylh)-2;e&2gsC_(UtLKgi!OM4hPYNU>6qQA!>)tE zw(&Kpg3Q^?nOIt8cCI26XxaIE+oO`Xe}l}k`K}R4#jv$kq99M&E1s*%oMv)B+3Dbp zGaz$?FO&0R);IkvoLrsZ4%7YO$JESpL1xoBGs#$Alk)&;QUFuR$c&8NN8ZH6zJdqH z3*;dMxR}f1~MZ;m{LsUGL5~&D`a~j;HtWx zsW>v%ZA~O~Qp2(!o){(_!%jmE3P(#ul!DCs157L}(_v$AAkbR4#rBv=W|5rCyv9n! z$&)oTAotiVo~z5e_$^GCbZ0ZZpV?q1lk;RY`q+U?XxKGJ7A{Lkjx2 zMgy!eAEuO%X*)cL)I0Dx4IW_J9{vNc^D_UrUr_q&HH5Wa-^)Azvv!ah&QX@LW7smpLsvO!@B8wu^9PzARyKp3F@@ zI}^9XJyK!1!(T8pGhL85v&w$*s@1a!fR*@?DP?5(nH7*Z4l8%T18BbHKL9(g6;;E9 zvlG4@g|)AE!#n`9c91EoG$Las1wRLwx85?Pm`sf(zT}*~eFos_`ktvcGFQbVlR=Ij zgCX|%ARV(ieVq|5?8>SjaAw~8$i&hzhwtl*hu)dM#@AIcljLNU`B*8wcARnwWCn$b z=jt+hZ3$D3+Mw78GHt_{oF~)Tvm>lt{H(3BJ==gAxwkuP*Ijb9DZopF+> zndyQ|<$5bJ=-q-6fK{Bvlrl0)3|A79!+Gc60nASEAAp@#oui$FyUIqku=eN-<^hh0cWOd4iihuoUHqGJU z?LCT=tfV4^3hlI0DN44C7D7ozR`x8}nb~{B&-;9Sm+$9s|D4zO{C|7ApRdp3+Uw|a z2FTiS7+DTl5i*>6PyMnaMqF zos$VNEgVQJER*Z4vl3`I_3xoM<=?-XpOuoCbirQMYsSU>knb4GpDW9JSG_@AuP|dW z$W$3daxt0DhD>Jr>#xg&?dtqPYO-CB`KV1Ho7r+xG{DjuNlFQsD^^vqX$BLWVSv_X z@d0#SGh1He)K}!-t5G_PB?HLWL1u6ZGiH6a$83! z^mor^b0cQA0GVo&g=2c97F#xO`j?WEL1v4oBo>zWc*L$FKTv=x7o(=Nd?yK<8yxnP%i^+`n?7{+1+6)Gn9K0069Cze7V<*owsvo4KgdQ zkdja4pP})r?6t)j!1d%BsYGPH|DMOLEE%vF;!ih(V|t}#UoyChr!3}yO!W#93(FiD z-xZ%}?=#1~uR`XYP>DzLUc>EWI}bi71)1OG^XJMk7yE9IFAQ2{4fo7K50Zb&JHqfoU>qkZ%$nTGXK8t>AxG}llfaSk;NWWSqr!h`I1UR=9uC8m}ib* zYlu7f3CHwGUH?9x8MVQBImq1YPhw%21wT6D%h>8~&K;|ed0$HA{ATvDQ$4)(K<4}% z{JFBsP;P_#=8F*gJeX(MBo~vpWQ8r8Q-16hY`5(mQj_h1%ze?R%qeBaJb>kpLrMvm zyT|Tj*OD{0!hoPW@d0#STJ4Lu;_~qGaQ1=%GJu>NWbPlDMr}F}%U!L&gk$h0L74GWFHks%iRo&6wlSb;*qRb7ncY__#RD zU+C?vRhF#JomG3L3jfVsn@CIkoBwGQU5(`jE~aBQRp5MNGwIr?8K`N~|EBkx1)lR= z|MQ<68QY5;eQOc|x#?E1oc=#GWJbC}q3+~BlmGwf|J+R9eyW}0>n{JlE7nxgP;2s^ z|GKN^LKk-}6_t$+7NxuJSzC>VHv<$&uGEij<0qYD-7nb|!GT*o;m?(Se3uy~$cGv= z>;V7dS@w+NVn4q5uiLY@oNHF_Bar=q)Z|A1etgZmQrX;3i#*_`ulyw`C4PLjRh6<^ zhvzdGaR0UV0J^F=f$O=ouR9Kevp0Q529UGEkMF-%y*jg~DLk;~e;_5_kMF-%Jl1~j zHTdzh{6s2|AK!nkw)ALxdx*Pz5sv@&N-V2fxG9O9Fw9fu3b6CM>$U`{(Tv_JPck%K*?UN3JO#6N$7n8YS$35<% z`|eQKZb^SqlkI}c6pf|q=h34r09MZdq?C}U>b;xYu$$Eb2J9FpK7j74p2s-u?v|oV zID7lSWB@rk$lMTOz#@z5;2+A?4k0C<%tD_OR;Aw>pM$6!N-7bV*ZZAdISrSb1evpj z3&-?IqaUSkZEl?S0y3}tLtD#1UkfY#QHk=Y8FN#PRz>fZ_PDtHvS--eSHoYK+X;_x9rhnomA9D!aXx5kCc2e=j=^n zouYSb1zg7qNF^dOC-W$)oZ4a##25Ap$Mi~jrpI%C?pI#~na>MJEG+Y5*nNGV#Tv{i zRmeOgC9{i7C)s}A@%fOutMcc{GAp9v<-1Dk@w)}pn~+>gW@L3|w)lNTAZ$0hDXGbJ zLFQ(?t*mh8$F%_KTQgEh$lTQX7Msp)s=$Eh>f!_FzBJ}+a=4P<;fKwvzG=b`D8|(PG-Z6k68h(^j4%2k!dpF1p9ojog>6wHHBk(rHdCPal2z2 z>w!$?)+82|d40$({5>ywRrw8t%x_XMRepAqwcw_hfXvho{#;q+?y2$eYvw`tW+}Tc zl8ecVc>IX#@!V=1Y0ztuHO#y;R7|j*xgXS3A~G7QEDN z9OT_v^XJMk_jZhz$0wv~!@o1{Ym;0|=Eficrt51M4cndChSX%cAhY&h0^74Dumiv< z*CnNdOq0Dw{(f$WdNmBN(i0y*_f_90j$5YD#|X~8U7rjfX9tz0!^iBDqO-Z{t0)mkEi5WsV>4 z9^dWs!TNihssH{7_l}gzpAX|nT)Tdm&)}X}+>gY(M@k8q zi!bN0!{O7;!GO;X#0SuQ1#8A|FVEHC;OyxtPo&9yTnbaeXh??ubfK zlkI{`UB^r|d2{^|fK_~(loB%ETt365+OTgh!1#{%0J^V=`{_LRG1069Cz ztZ~(1>MDgR;GX&G9x3@`hHQ^!Do>Kz0In$yNF^e3UC+a8SbT6Q#D^aW$Mj0WJVLp9 z72Q98%y!iz7M8iWtRN9+tv49fPa*Szl*|cL9c1-OZ+?V)sWE@9EHh$GoZO|w=vE-} zvnk2NWFFV(&CcJAdt>J!~hsDsiXJ+ zx-Z>_d$~jN3~k};VV%hUa(0k8N3#uE8k6xDWTtc_C7;X)Sv)&8+!der$?irf5t%m* z9AWNLh9m2J-GyU%rG~xNaN0F@rhv?=HY662>3R78(0b%KW|BhYmMDowbMH+ZWGk$- z5+IND;m?(2ddcGC>z8i$1TuRqA-R}LC)Sb`cE0!(w!7b#)MUFLv*)*1c6!5ydjQM8 zkCYNJcf38$R_Qi<1_M_4iw~gt`f?$VTV`p$3(j7N(-$ga-jtGgVonEHU%x@dAaj)+f37SuLN!i4^NH~|kU8I;Ja5H3M;ZQr z?V8F-O|}a%mvsqcV}^&~vqooolTt#aZrm1DcTG@zkh!3*_yD@EUw@zF^X;DY8P0CT zkpblFAk+C?TXub4MFPmIW~AhkS*x4Gj%z>ifCuE|{YfPv)1XNyQ(w_a4dNC9gkyT8 zr+>wB5sx&6fy{z|Bo>z0%Qg=Gp_rK4JVYTge2v6Cb4a%iGQ&H*@gOs9AAhba^Fn2; zysGuktsv9p0LjH<+TQBU_Ws-u58K^aNNTcOkl8dln@!LBjlaO?9U`TK%-M}@v(;Tj z;UAG!9u^-!_jO?BUM^&C1N?}cA4OyUIXlSwJVlRPdRJo!GN&9NC7(?B#Uz$JsukWd zpOlbFMCSgnrR>IorSTxswp2K#S304764xW|ffdM1IYwe(nO-Ne{ef1!)7R1zG7n41 zZ1CMu*5r52M#%e}6Pklj^{cCw9NsTp4B84mO09P!6cw%x7qugLS{y^#G|=xgr)3uzno&oZMXC1 z$}+bOjg@=bs-FUx_jZt6Oy<1(J=oOpE{9>e!|Y#)h*Wv-jDpexXtZd&|6 zA@j17Oz%;avaiKoc0j(?l0R3LnXVTr-}ky%W00xRiR5B3=bY!*MIH60AhT;1Qj_h1 z%%5F%vj>0l_W-OBR-}}W*}dmgwlMFP5e%4REk1zmEB;~$H*BN^zMUqu2N^)l4l#{B}vrmJ}^F2w)CsTJ~BHJ+WBmPtIfgPztWaj++X74~9v&O*sxxH{que7oxo||fL z*b!vb=}lr`nIUpc2WZ{bSocLCb5)GQJyS*3Qs%RB2EI~yg${qNEc3|g7`dI<84r;8 zL6_uWGUIy~vRRH@yMatYeNvO{f=mOWEiC?r>I{HoZ%9fBnf{)4nX#og(jILjK7j7) z$)~m4&S4gwaQ5vcWB@rk$n5RVmf24E)dFN5H6taT%)ncTY*(=HMZk5@f>a_h{e6zI zUWHptAg-_!j_H+7n3BLvT|DL*$b8e0#KJO@lRn}{>`XIy-E`W&e>dMJCG*&$_OczC zySD*sdo%uAS!R=?G4h;3*C8Ntp9RUqWCrhT$eg~%orCQ@wIns!F38-nV>Qd)J!}Zb ztka2<5;7C4_ArNJ*(VsF(?xs$-B;6-%egFzV@KiagRRH_a(0keIarqkUA@FWrjs=( z`DA9CNMHtKHMxMxqX(%(WWG3kgmtMs<_>XSPvMwe>B`gbT;%<8_?q@~I}!`atf@Ti z0knR*=NT(xK9!QWZ&!O+OtfnbNInmVi*Afw)lzzmjBQ_e7heT8#*UN{GGDAJU}vuy ztp=Iy_TmHRzV>un#ho`hb`#E?BqsyN*+J$SdtEkmSC>{Gb88<`^2t2cCxO|$YuaAPvyjqfr$sBh@#(Y%vEQjsd{UJ5kF39xs z+RPlzuf}(%<*Hcz_o^jiHal^enb*qdfK0o(;sfZup1m#L`ZhTG8_r%_j|?DZ2bs=A zy39P?&H!XuHXtRR%#^DM>_TGqO&~M5A*n=U))`vDezf^o7vevSgkyT87ca$ekDZ&m z1erdnBo>zWpjDtQ(CX=X!9^kSmz2z7joQo7R%thfym}dbt}OFigBW?pfeH9Gpz0MQ z7n7;`z8!m2?tveew>6N|WV;~q9T&`s@4N~ISYua`QbK0(gIrefS#=5wP+2WLfbOgR z`Dxsv-RHwW=CNQhfSes1q-7M2+mkTM5od2~?Ss*srwFLBR|ceRiWcjy`bc|;ffTv=w-@@V;; zv1t=Prll3h#bkD`W6lbS)@Q+X*LEW{*)GUje=&`H%KT{uus&InQbMN2pHenBe!xi> zFrtU}0J^XFH@0zRs&(4I*-LE50CIMaxngA-HaC1Heqdf}TT=4L{B|vlc~2|S09*_0 zNF^fk#-L)h`D?@*h)>FdV|t}_6Qa2dTLl4v9Qb)#;@amRu~!#E@IywU=98Li7i3-?6UKI! z)VKqzj|)gCA+v4oOy=OWxIYY-uuyye-B-7f8##?L-uR_SuRO^Ba(0k;_V1(llGc_+ z@Mu2Lic9Mdc96SRi2zj=8N+%p#~ zA+fN`tA1wq!OZGGS(g#bF@|g$gEh!pDW88XdErCo&Nqi$lM=Haxt01 zyVPU7ZQN0&Whkl1c0s0Tc@X3FJpKc)62nL-A@f~>J*@NBjk{pL*KqLxbYBr8=5R(X zIi3Z4_MvdC+wJ zTv?|4^BQ?WuP^67rmr)}#bkQip2cjmJ^sLU?PijiY!_q(Ts_66divn6)~{ShDIqf| zq=xCIUdIo!Pj(d_K=<{}z8WsNd6z0U`-ItK069CzTza-On{%(YGsyhyPD(zR4$op( zqb&CeaNFB9msBD$uN3@!ACP^cT@e2>UpS^$dirq$=epC76r{?mDeAah?O$;D)9t6H;7A5w6;PpU{w zwhJ;-9%QhyBlPfl;?(YuQbMMs&M78)H$MvQnFbHU2he?4x81?D@Ai)a$Q<#A3?OF* zne(i)*wZF;wt&pZk4ecV^YD*o7VhMNzne!rC6$QG&D##KvV><>KxX1|;h0|O&UfKl za!lG$xMyb9kXTrzL3MF!p!HqzL(A#^{@r{{qQpH@dy2X2)`_JHA#b3|pDWAEOkX3{ zK7G9&$aK^rxtPq`EuEO(@2t_V-9ZMVCffy>4}(kC)YnV!9csPXky1itfa(*rbX`4H zklDdld;r~7ms2;nVSBa8;OsW0WB@rk$Xqc{i)n4WsRJ@i%t^^7)4pX4TdR366mT_Z zPbv|aS%HVxiQ5)N5Wlw+j_H+p$3}4dS{j@OnGZXXSXgH8PU{Xp%P-l(LLsw6O6F8^ zb6NjYsrWSuI%)j5vdrcS*T@e{a61VyC$A^Dm`tO7by@$U>oKrh=L}Ml?SjnYHfx!4 z^k0b2W=7`K=<`MWjU9!IjS7a?y-doAZG`eb64rGRX=T> zgUpHBNXaMj;Eq^kW3zk~;Of1DR3b7f+7&VHiLO2n8)gf~^h$d4@oH@bLfXMR(y5z92ju6T6_TASKQnHZbj|* zA~<`_6Ec9D9b~p@t<8q5pSl}lCO#u2pUkr>V_ChhE0X}%=jWsnky*IEh)vw5zX9UW zHNr8y(q)|@Ipf5c_{!npmn0UJX?&*+{%+oMsnHmP%uPuWkLF8`n8}_Rdc6Ueb64=^ z$}(rQUL*Hebs`aDo(?3rn9K&o_1KYD&GFL&s#lVlY!_snpS+U2>CEtx5ZJ#EE$kf|R@No*=VIn?F~UIkYB9?(^q-D#(1>hU8*09Wzwf#e7G6O}k%PQj_h1 z%o`eE>|TQad_l%jJyJ@@EG#>~mbU4NUjjeeKzsn*SIX>#+&BlX2_W-?AsIl<4l-Yk z(Pj-!ck2Z*I~tLaPo}vnmNi=T5N#bmy9X~sJFd*ko7Tbq-bY!_rk8iX@zAG6y4 z>r@L;O32)HJdgeAp=AvNDmBCh(0wg)3+D7reaBZlt80+~B_i`&dT)i%Y5w?C4b+$MFiY4tNchVCNoy25qn&@ z{X5)ux-Ta+*)GWZrm>7&T75>F2+0p#o;bLcNUHht5oWRQ6%n3Q}nKgGne>q|=U{pRJNq!N*-()|z{vNq-$u)Y~C z9MdZeR9nk^*Bq4wGT%p%SXgGT+oy9ttMoxlsY2%ZWQj-fd52A9M%w$5Am8wWKUbEy zs8^J{=j=3m<#6NYBo~u8c;rA$E{EUuCuSh8&vwq!2 zEVs$n8$dhtjrah%udY4IxV1SZ#c+0wcVqxLJIGw>V8|vm_;U+nE`Co+KADZ36PQKC z5B#U%tq-IUk?GL*AZxj27slN_3CHwGdlj$aQf9B72{MyElUP`$Nph1~pf&kc*iD7Z zi&8Sp!%SsKHi0W3FT2g3E6dbt5hZVUCcP8fGcVpDxtPqm)6zMwUh`1q#(ShD+Xb0Z z2UxR&2G*Oy33r3?7LOp!=Fy-<)ff8NLN%eyJt{$k{>WnFM_n z9iRUIWad2~C7(>=DRHb$*XsEj_H*){wve#?Ku3* z;rlft7M8i|Kua0WO4{(xD}~IU6p4GL`dCw$O|}a%m;aN_hE?e`0$5FVkWxbCz^W_E{)`H~L+#d1@d0#S z8jr)d?WbZs!r2e+A_K_TL1x$mV^-n2HxOh7?I9(f%<{lQcBw^cImmR(A(e>CtM-MA z)tiU!wy2jU9MdZeo15|XH=qgleCEY`5(~*x>37_J2Yv;B%9nO^o&NpnWWJP4b0bsP z2aWmo5g&R#`EzBNPYy-Ozv`_t1)1@+Bo~tzF)^2``Z*6jrSRw@# z`$1-P9i#tVwS>%3W&v!y*L{4d{&PL?0d!yTSYxj7lL>|()1o06K+X;_TUnU1*+In@ zKxXg8q~w#i=kMnl6?VIa@14A_N-7bVPCpJXAKRPw@66s!gkyT8?+P|@jfW2T2#@BQ zo03>qrfIYJ3*e?VO#gwlLgr&BnRDNm$odu_|#JnH9zHtbEe}l&RC1R3b7fR~E408-|>R z8?Hwe;h0|O*~uB4SMruCAhWzHiG^i;J6fkM&^mJER%eCGxxve?P;I*@y8+l}f< zYO-CBsi!@eWp&u90kC#-Bc+5)&54n$tI^s6FyMH1@d0#S;h$!5x@%|RyDfg$kOAcE zAoGurDcce`|2@cTWk*UrnVKi!*@_>X@r7)r_M{S#X{ueoK2N)RA7plx3&-?IZ}rUN zI^KG>9b`K6A+fMbofa`_Kx;$;?@0=oKcr-G6HH`H&Q5ZIytgWUt}N3*JyLG?C7}i$ z&8yW&E++F%gX!$!wYyFrb5c`MlkI{`x4NZl;GFsRbv{R%ky1itvhxeJO3e`eI%%dZ zK7j7a(eFBU(#gsZ&Ys?a3?OF*nI)NKEa;y^{QS(HElJ5IbFJ3jPs85PXdmF3){0aj zGW$KxXHPfZWe^|H6prbYK6Bj2wIBVZAILOoO=4l0XKp=f3AC;@vskE*xqF?&qq(h_ ziR^dC=&6ubYVhaEGCw_zkXvVW!0(-Gq(yQunLk_GvNd{pqF}q0hC1je+u4ZFXwtavB`*g(z(0%p4S;F~`xZWMkzFm(DAZG`e*L#?=NqHV9 zGr)k9d@{3q5}0pP3w)E=xOSuxk!dx$fYpquJPk6S+%x-jAi0>#D-Rr5 z!P(#*u-#^zNKLj2G7mM`#%4YpAO~2hJCjmEW-IsOEPBwDpD^HA7x4jfU-j)ya$iPI zY71wdX+;K*vxCerlgwD$=V4LsX#TnzDfwh}xgO6hX*?YRxCV76m59vcNAlUL`tx)l zPVXTc(<`l)pUGvNZDs*7f7*~(Smu=EGW_#mW=G#Nh0M4#iF@YOW5%-EwN51T!g&aP1!(@*{VCq#bg>f7jPT4&;AD6b+92d*)GU5>(!GzRa^Q7V9m58rG!k! z3~yFm#|mGcxkx5HfbL7>oh7%UwkQ70e^W0qfSesJZsZcpe{}+xulkW#Sf*du@_In4B10=z zA@jJDOoKRM*~Si?@Sb@ni$7PE`PMB$KD0!B0Ax9ca#ibh{jf%eYr;sfZu%=3?PgV=F=)wA(VGJu>NWR`Zc zUTcoE>C_JTYhQ!>aK6&1ZEWC7(=d{X{l;nHRpIqqHNbL}WfO*vCc= zjC>C=wL1&P^h(e8WO1p7N8_XU(k>(xmf4eS$B(n_8fH_akhv{g;?X?5^WS@>O?EKA z9umo)E6d#6Dnh>e`Na<)^J5gr#bi#gvS5!A9yfsPu8bx%*)GU5Nlj*s+EJb0miH!x zloB$JeJN(~Gupm|0i)u?2he>zN!Y;ocbki!V|O8*3?OF*nOm-#vX`@T@zLBmk(7Kg zSC_=IAI{(Kjk$?Qq!N)SH!olv2iM~J&EKyTj_H-YEXm-S#Rd+7d*-AR5(~@xnG>D~ zv}$(Ec&CtAAtf{NmyxW&_jL^+KcB~+E6eO&6E5%ZV{;bB?6;5PVlur<)mh!B-}uVm zB?m}NwhJ;_{+Q2}HMPWFU{Vi~QbMNF@Z8TU3I~y{AbmEVH`Xdi?X^hxv|% z3Yo=HGHcU}WCtcr91JoI7xCxHGLNQ&%SWF}!S|b=_9D5MObazlHp0}r0=DbmLu#^J zka_)b7z_OP`5M65vzU|;GN=CD!}6~_p8x||`HByq`x>Pl&Nc2;@c_;qwUi7XX9t;0 zuN$+II(|n$<}*K1^2zKz`0pofdCW2dnf;fMNrA?Sjl*dWpA`*vbQ`AhM0+7suInrs(jYRulqmfm!} z2r~CBAf<%Np=&R)gH8uDVZgD4;sfZu`Yg`m9xU&i12R7^A_K_TL1v+jG1D>n(;Q?r z@F69i%s%C@Y{c<3GXa<85>koCToakc(my6PfOzmy;h0{j6_?IcFBpUG19I^vv9L^) z>N!ZuW4W2LLgrN|nboRBvhar^(n02gmHfG~OkMqO`H+x|gCH|=HOa+f>g>DCHElE7 z9=5wBgw$laAoJLZq3oLJ>lA>sE{v2CGPO4Zux7=7>cN0j5#j^rzS7@M<~nZOJqykr z5=91(vxCggD@M%yUY%T!IX{||d@^4=jb&2{>f)!zjEW_dh|KRXdF*yr-VBf_j~9;V zmHMAZ=Vo=k^#ksiR*57QmZ>%?vmekJ=VZA=Au~8b;+|Pi*-p0Hc0yms2fOg+$}$5# zg~=msZ^v({dNGUSVloZZd9lycKKo$1Z8CIDC zE~^Ek5|LTwTOP|;Ke7bkl^((|y;5s#JtupsY6CLwE+nzA%;O6mcLQ3_-J_!vG7m_} z{JOK9Y}{7$agcXfz@ID2Y;-nWK{PnVs&>fiS?pTYLcB*Uf?~PHUk<9>`4aAp^+SL8gPYDYLWL zi@%$HUrb6qnYAYIOy!%672pc=C6$QGfw%Kn?z#Ad5Z_!X9MdZevfIFoF&K>Bp=RSx zVquw?YYa~Tt+SsuWhrDnmy+4Xzn$#a_IX_)kNU=+E6dE=9461svckUsng1ZUn9Lu^ z`fR&#c|X{0%uiC2?Sjmu!z0>?wL*NZ2s@Y_+-wgie`(CT*6nuxz;6>h)k#6xvat? zD;i`TtS21PE7j|l!ri-Yd#3?OF*nL{H@*|7ORJwWElFjDf# z3>qBII_@sB0bGy5NhKol)t~}qR-v&CVuwiKm|kh06YIJ6_1$$r=C&vj3(Ney!!r+P z*+x#jppbc9O6I_}?PP=P)c%2dNHl-0EOY*tF!|V+>2dIA-Yu5oVlo@JwqeFD7aGHM zpTv=xY!_tOcU;3Xs+KU28Jj>#37M65ceBaWf%rb4u1Vqp=)Tg{uH#;;@tp=|f4r6q zAZG`eDz}YUY_G4YKxRM+Dfwh}{T<6rvPbw<9-Vch5|JspkjE}{sd)%8^V5W5dZmNy z)48JfrFB8(nDrzUmT5nBs}In+<$C;)LgsHNnT=i<%BrV7!AEoTdHlJu%oQE~-ZLMr z)d!g#3rH>|v$LTdb0{=WhwX+gBsJMC$lPJPhRscT{68 zZ}9>x8D*NFAdnx6$Svwca)C$o)vENhUL;Q+Wc`H@OQ zW{yK1JJsk(Da31*3CHwG>v^SdJ=Wh{1u{P@C$X^1hZ9ENxBLBmcI%r$X6{CbNAq{Z zhO+H$HQ@kz*h~IgS!Qm%Fu9A*ofjbU%`1|N$?UbRAv@H+M@oO31u8WGB0JZ%-`@81`O#0NvNSB0ugyP3O08_QDTj069CzJeXs|?)QJX z0c5uPL`puHBOGE`m~6%}z%}nPsYGNJ+T^h`JKvWOmwpkB>6Ny7v5wo;#>NTS^rL`d}?h{9>^TlgXCf| z>pf9r6H6KlhV7QwkeX~4WX^iz&n$X4;46na+mcd3X0xm7S!AI$zL6;2PJ95}*Who# z+>SG;`0WSv?a2Ugc98jTg$dLCbU+(qy7nR^pUh!>;@H%Q*B$__b8=FN$gC>PW1Y1x zEr7T~AK{o@>GL-0Irmlz{Xpjaz9bfw+3WSR2#|T%wV$a%W>S{KJyYgnDD(dLry1l! z=kVvsGX3|3%2!10z;~!c%p_qA(P9%me?>J4Z2^Cknx*+J$Ybra_7&g}!4GZ&MRPo~AU zSjH{S^aEVOeMu!E^La=f+cj413vo9;;h0`&KzceC==|Xw$ZWri#KJP0%$}-QnhRWxx z{BsB%&DAtWE+(_+bbWUDkabhJis$J*!tZ-0}jnNGT!n=a_8Py-DQ& z7+|R_K7j6P<3dlaB6nIkoc)~+89>esGOsQ*Wi4NC$^n_Fx}@ZjsedYt^~vb{4rKP% zBbA8E1N!-F-ejG#5I@rwj_H-^wc5b7U%g`n$V@UMv9Qehje5NRS{AxpT@^C3H%UC2 zU%X}@vsm(E7UX&c{JFBs&3!`UIey#luahSXNiHU{^ulj$h|lc)u-#rpq$b-1nWZDg zvEojivjNstV^T`U^xL_bh3~G!=QCAJ#Rt%R^~`hT?u^dg3ug~DBLm3ULFVu7#%$;G zdyhfpA9GUj$y62fQN9sb9X1DQpZ!ZE$lQ@zr-5nLudYh>Dy z#KJO5@>d-JTKD_b`YUAKk&?N2tAR|#tK|>K=k({#m1SHsHw7QfqX&_iY!_rsX}FMOl{Op#G8YaZrG!kA2Qe%_z2yrS5H(DE0NvNQD-ql@ z7xh&jbM-%D069Cz9NXT24cGYe17uDeNlHGM>!(GtL0T2~nZun%lS)M9o!vQX^y{PZ zLFVrFqj>N(;pN|W~r+o}H&crEX#%z|jXJ+~u$TpgM$9MI* zwdT*2WgdJNBJZ?FHxp#4>5yDZ=3ATLY*XiYTCm-qHl!xo1(_qtH?ui66HWlEceDYvo>KSo2FQTOlw0@^2zL> z8prfa5_$rz1MNs9B2({U9vc~OW;DdA#=Mt+~dd3Z-C5MCL|V?nONqHH$A=Z z9@`W$OQmEU8*CuUbv%xL+^n;PKUbFd>1>F6kyWJ}WG;#!xtPoc?bTVwA&2qPV>04M zO|}a%7h9&V_py_ofXvbaQcB1iuYZB982Z`_23$)LA3*n&X%WFSt?tkTWHwGA1IXDy z=F;0ntmjuZd__mwb)@8zsSzH_Hu$OI2Mu;gCzXgyqfL2Czvar+Ak%h(a7?eXmq8jA z{&wU5kU1ig#KJOneLpY|9*z?e<;4n_AEace>KVuuTwILbh`KqMKUbDHVsnW6aE5&@ z$Q+PLaxs}xOs6r;uWLPEyCv&LO|}a%PmDgu!s?B046w}8Nhu*S*!Kn-J9=ad42WDW zK7j74)w8?Y_rZPe-4^vT$N+M7kXdrD9b3O!a}(S%XJ(R;Pv+RqF>H}dy#l~>Y9pyc zWVZ3oW1Hry<9AyaZxW8_mD;DIa>v_`^Z=Qmn@KDzGuG636UZE8t8rB!bITTqM|0md z`m#*Zz^#zS$oX?+ndQqvH%nu@O%e`~sPa9mNOGeRZ$B!1cbIQwV3@GLQ@)X9t-{&5YT?oOrxv z9vDnYKAH90Vwv9sk5?e`#86U+$h7O3$J)tN@oD;t!-ZpdrOuPmI2}9xK_GL(2oej+ z{9|;;3TS;={_2@R=1nP?O^@lz2F<&UuQk$H#h)w7oIO57?i@MP0%T4NCb^i*THl^* zyzi$?uwCa+Qj_h1%ynxwu?gzB)&Ofyh1gyWs z3&-?It=-mhhc2yN05YE>l2};gp6G77LFR}ftX3g2e5=Ggvn)|xc1!l|IOH=+`EzBN zCRQPG^Ez>*AoJ%jl8edwvAZV=-yhHnWV)RoHQ6r6Jh3X1T{&VB4KmA4l2Sru#Gw<+ z_oN4YN}<6i@d0#Se?s=Z$MF}$pCV8kZIq=g!O#oc^qUuJVQ!8nR^GuvHNj7 zmI5x@bEFcHd3|&~vuU;oKM5hKTsWpz>eM}*yB6ER4rIPLPhw%24ZT(Hy^~938?>7F z@88W2OUc~orZ1~(dIsMIv~(_it}OGnYKVNI|F~ZuQ+Gbe#bnlcGd3{%$w`p8W&x?m zc0p#37Q5NpWy9`)%ugPql#po_c9S*IPfmjYqdmn3(0zr^-Oo*}Z;GE%cylL(PYiGB`?@;UHO-eqQ`XMo_vM9*~WXAiDN<`-Ji@D6^#+P`A-!2x8>6Jd}n#vte zE$;|2r}&asSZ4O=ns#v0Q?U+fuaNmlO6E@4-+yOz8ITNlc2E9XS?2fZV0r5L>Y*TW zsEp)dGFSE+&0-AW@O9yXdy$%K7i6mT-pyjaPR4Kd>)4x=5;70yon!k{D)0-^>-QBO zK=-vj^9(oX!y|mJ{8tAufSes_BGu7?O+09R0H)tGV^`2;4IVjUzSLF35bKI+sP= zb997T-of#tl#rPdAIFZp3~mbpOecyDp!-_>*pHjIuzCiZJ!=vfK+X;_br!T^+JBx5 z0GZ9Ekdja4{>3qDkkd)TPkkf<$k{MR+{%bWS-Rjim+ZSs zYO-CBnR{+Eo8R_h4}i7$?^k;K-&IS6D&W(j*dZqQhq;m18Q%8f$ zx2hx-miayGK?Tt25uA2ZA@iJ+%<{T=vg|C`49L~O`EzBNc6V3H->pn=1DU%bNG>Kb zqi7TxqwQ}DGPR>fO|}a%H*4jyH~qHU0-4L#kWxaXdh?sCPu8WOFrXq@d;s0oxp8N> z=40w@hOQ(LTKEBk7+0$5-7lTt!v z==xIDv}Y>5a(HQ>_yD@EeoeEu-z^8Efy}0d$N+M7kU2^9@AmUeomBqw zzfXJ5JF05mi+`e!nZC152Yt1+YMMS?Gv;`7T{2_-oLNpTJ}yr47kYbZ`P|py8jYGb z5dNEnk4Q`YoBwGQ-RYyRx%0E*@kN~*t4Y^R%|K0?{x`knEbyG~`k(*o3P%|m-fBq) z_+e6gB9_ztr!2m#b@08#-8T9ESDc&a+fOw-&EnbrU9qN`hFX*V{MTJQ7rMA>si>4X zhbsg9@iOO9&Zewza|LJ(>*Dc8A@ib?OqGr;Wp0PJ;X7Iqt@(3hnQh$`%lo`h?Flkt zdyrgA<`>m?Za|cQDr|R9Pg0ZZg3RvCWNbll*c6m$OG*iu<-MbrF4MP%0c~XB1L(f` zc>i#CaIgLcID4!;89>esGMAZau@EhL8+c%O(~FdRG6Tcn*@BaA@WY?}=}jsTnF9k$ z*f{&jaA3Wok8n({)MH6BHz={*dbr6qb0D#>%)7bHlR;+hdtJ0#{(W&lP`1Q9b3xsf zGJp35_}7fAYW`eVX0Xv>dDYeFGeD-nQ<96x++%QuTUXu05w`2_oYZ8yAalS#Uv{$n zp^*S-kAIrdMj>8qNh6K3NVjmwX|y zu*{r=%i4g<`PcP3DrDwM$^22-Lbkp(?jz)B75urfOtZT_@)y=e@gsHy-6px1%zt{- zaI$av@MSMYt4K|@3o-{S3t$&+eaAmXbht}O37L@&h3tz@WBj~{*n8pw=)QK!`f^P@ zCT@eDs`?Me0CIMadA~}7X(Z^Vfy~(tNy#U3{JUuOq@8zPxb3}rL@E)P8@C*0@9#hN zhS>43a7?fC*r71a#q*mw$lUaV#KJP`Tn@%3Ff2Eia|)S{rDX2RYawf7Ra*)&FKy({ zm1X`)^^xCc%EoKWV;}9T2%_OtX~g5yD51)DJ5ij zOfP2*@3zH%sOIhzA3*mtF>@tnFm5P*VBX_hWB@rk$b5CD6&q7GyD7+QzL%7IGBr*{ zv$C#7@k^5yC12AMq% zlA3H6WX{{MiRIm0aU34a%MOuJLguhzS6IDm-o0SJKSkmL=)UeQ&Eoc6o`e6+tSKe~ z$k{=r`X^0RvO8@R$n-2BC7;Z$onlzfzHRsgARmsBN(>4NRHatOMVVQ|HeDN(QH#znTJz`1GDo!Zkq0L~ zuY`N1iVexdWNy7s$W6(3`3+=#=}Bs`U65({vmaY}_`@QAb<2*F5;Cj$Ml$*7ud84{ zzPB~EzxAP?F=4(%+-BJ$tUyBr)YMr$Rtz+vWMKAIRLcLwo?;m)dS0uIIKFsc?3^Y%+kH9b|Sp){em3p>c$qhd;uo`4;$|13^ zOugZ5_kq^X30dh1nY(vOJeqH5*+N!)(4;x!EvNA3$}*Qlddth2+U^ILg;Pl`Ce!DY z9-CqRSOvCgHJ#LCyCAb7X%$=Dw(1kWN^>Hmgv|O+x3D!GkMDs2wa(%L=)R^LU&(pd zjlkz(eP@yZAS6cF5B{xJqaWTm3g``EzBN zGY5LhOIUW|2}tX2W)g z?0bXg^&pdT6CXhLWufKAT~aU3g|i=;O$Ly&gG{~e8f=NNDgHatU=AtyWXAmc4Jh`W z3;u2%G?!E&GSwRtvF9VdS%S>F^Mqr1rOo?Z2{ zX51c$d*+Pe>asE|J^Tv9Wv}>iWtjo>z2(;iZ+ZnX-@YNan9QF0vbp^MM-pMXX75Q& zwhJ=PI`(B3@?I7Jto|QKDIwE!U>I8vG74YB>ik)J0Ns~gUR&;b-e&wl#Uqkg-l-$_2GbHJQcB2F>3)noJos1+v`uD+ z51{*cl9|S-$3=v20a{nzmw!;m{3IoFy|=n- zz@t`MAiwsRKUbDHKF~{E@NkP7$n^V4axs}Db}gA%Mrc#m?z3;CCffy>XFnydK`CV| z0M^hSq?C|3tmApMGpU&;4A}8gd;s0ofpRa-X3rq}DzY}UWB@rk$lRu@$=YzWto+typ!Kw5b>mt8{&jNOUWrF@_hITXqi)NMAkR6@pDW93+1pEAqn?H@Vog6u zaxs~{4fWWohQ4z_rq(G^lkI}cbN4r~$oZ=u1FV&&Nhu-IdErgwZ&&yV20S|>K7j7a z!*(NASZCQ2IQz_VWB@rk$ovxAn#q>y&jy(%%Sp*6^Rs;dt3EQ}4B#4nfmHv4i@wmP zPQ+1Wf9H!k#Ct9Z$Mi}!Z;9qku4%dlWNKU{v9Qd;>r-QZR&jhC1BJ{ADVbx;)MZ!t z^v35ib&~mWWtnw;E|UKWUa}7EndK=Y7n8X&-HMg3HN&^@^;t)1vR#nro|?`+9sh~n zV7N1lloB${wx413%a7xCC^lIyK7j6Pk4G}MQFUVvkhyvT89>esG8-CcvF7udM}f@h z3{vvRoO&aUU9@rk2)O!hB$bHFh{z-Cb%Q4OWN1c~a7?c>e%%`Gk9#Bhz`XjKNh~Z= ztK+pPAami0e|jinM&?M|GpGG-F6(eEB?R&YEBSL}nWl#p$r~Pw*8-W{R+C&z<_ooM zEV||_epP`*2&u_-L1wcdx$I#pt@&`vYZ69E37JVAcbLZ3Md>i$LAdw;x~~U*$G8vO zXAT3Imm|pla(0l}^^hiW>B&t2ncLTpl22wky?D0gQ_3BX85lz<5t(lWl(5UKEfOIf z6DJ(gD|L2V!*Tu*Ti~AAGl9gyGX1+OybH9R*_IAg$SjtU8G5U^>|kyNetK@2oIh8V zx!iY=yy+m;1!O+&Lvk^hdzWf5d2`)su-!Kfq$b-1nIC_~GDFwR_^b5;MoI~pKk^T- zN6jzZ0Ga3eiw~gtax(w>Aqqd!wBhWx29N>d>>$&wl_nehcyS+)SvrW6d@`eU#wrxe3>fuLd;sjre=B!_t1}(We&rDvK+X;_mke*k zazDK-1DWhGDfwice;C6S*Ea78xb{9Fm59vy)_`6_vp~ zGxRx$g=Mx_(GTDHT=TZsVuj3&xe|}&-6NaJT>XCHhuMGo$e%0AEc@gs-}UN2GRVyM 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ℜ^m|gk=cK9B5PuB62GHkf|GDeuk>*9ot)3f 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%0AT$F1f55BJ6 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

    DV&siG7nVwG1=`fcfhrEKdD4y#y8Jq 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%0AteE2> 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672373045.icefall.2877575.0 b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672373045.icefall.2877575.0 new file mode 100755 index 0000000000000000000000000000000000000000..24c660194beee00cef0fde5627283e577ce930c4 GIT binary patch literal 9879 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 G8~HCwj6-k$ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_audio.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_audio.py new file mode 100755 index 000000000..405a6107a --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_audio.py @@ -0,0 +1,539 @@ +# Copyright (c) Facebook, Inc. and its affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +import logging +import math +from dataclasses import dataclass, field +from typing import Optional + +from omegaconf import II + +import torch +import torch.nn as nn +import torch.nn.functional as F +import torch.distributed as dist + +from fairseq.modules import EMAModule, EMAModuleConfig +from fairseq.data.data_utils import compute_mask_indices +from fairseq.models import BaseFairseqModel, register_model +from fairseq.models.wav2vec import ( + ConvFeatureExtractionModel, + Wav2Vec2Config, + TransformerEncoder, +) +from fairseq.modules import ( + GradMultiply, + LayerNorm, +) +from fairseq.utils import index_put + + +logger = logging.getLogger(__name__) + + +@dataclass +class Data2VecAudioConfig(Wav2Vec2Config): + + loss_beta: float = field( + default=0, metadata={"help": "beta for smooth l1 loss. 0 means use l2 loss"} + ) + loss_scale: Optional[float] = field( + default=None, + metadata={ + "help": "scale the reconstruction loss by this constant. if None then scales by 1/sqrt(dim)" + }, + ) + average_top_k_layers: int = field( + default=8, metadata={"help": "how many layers to average"} + ) + + layer_norm_target_layer: bool = False + instance_norm_target_layer: bool = False + instance_norm_targets: bool = False + layer_norm_targets: bool = False + batch_norm_target_layer: bool = False + group_norm_target_layer: bool = False + + ema_decay: float = field(default=0.999, metadata={"help": "initial ema decay rate"}) + ema_end_decay: float = field( + default=0.9999, metadata={"help": "final ema decay rate"} + ) + + # when to finish annealing ema decay rate + ema_anneal_end_step: int = II("optimization.max_update") + + ema_transformer_only: bool = field( + default=True, + metadata={"help": "whether to momentum update only the transformer"}, + ) + ema_layers_only: bool = field( + default=True, + metadata={"help": "whether to momentum update only the transformer layers"}, + ) + + max_update: int = II("optimization.max_update") + + min_target_var: float = field( + default=0.1, metadata={"help": "stop training if target var falls below this"} + ) + min_pred_var: float = field( + default=0.01, + metadata={"help": "stop training if prediction var falls below this"}, + ) + + +def get_annealed_rate(start, end, curr_step, total_steps): + r = end - start + pct_remaining = 1 - curr_step / total_steps + return end - r * pct_remaining + + +@register_model("data2vec_audio", dataclass=Data2VecAudioConfig) +class Data2VecAudioModel(BaseFairseqModel): + def __init__(self, cfg: Data2VecAudioConfig): + super().__init__() + self.cfg = cfg + + feature_enc_layers = eval(cfg.conv_feature_layers) + self.extractor_embed = feature_enc_layers[-1][0] + + self.ema = None + self.embed = cfg.encoder_embed_dim + + self.average_top_k_layers = cfg.average_top_k_layers + self.loss_beta = cfg.loss_beta + self.loss_scale = cfg.loss_scale + + self.feature_extractor = ConvFeatureExtractionModel( + conv_layers=feature_enc_layers, + dropout=0.0, + mode=cfg.extractor_mode, + conv_bias=cfg.conv_bias, + ) + + self.post_extract_proj = nn.Linear(self.extractor_embed, cfg.encoder_embed_dim) + + self.mask_prob = cfg.mask_prob + self.mask_selection = cfg.mask_selection + self.mask_other = cfg.mask_other + self.mask_length = cfg.mask_length + self.no_mask_overlap = cfg.no_mask_overlap + self.mask_min_space = cfg.mask_min_space + + self.mask_channel_prob = cfg.mask_channel_prob + self.mask_channel_before = cfg.mask_channel_before + self.mask_channel_selection = cfg.mask_channel_selection + self.mask_channel_other = cfg.mask_channel_other + self.mask_channel_length = cfg.mask_channel_length + self.no_mask_channel_overlap = cfg.no_mask_channel_overlap + self.mask_channel_min_space = cfg.mask_channel_min_space + + self.dropout_input = nn.Dropout(cfg.dropout_input) + self.dropout_features = nn.Dropout(cfg.dropout_features) + + self.feature_grad_mult = cfg.feature_grad_mult + + self.mask_emb = nn.Parameter( + torch.FloatTensor(cfg.encoder_embed_dim).uniform_() + ) + + self.encoder = TransformerEncoder(cfg) + self.layer_norm = LayerNorm(self.extractor_embed) + + self.final_proj = nn.Linear(self.embed, self.embed) + + self.num_updates = 0 + + def make_ema_teacher(self): + ema_config = EMAModuleConfig( + ema_decay=self.cfg.ema_decay, + ema_fp32=True, + ) + skip_keys = set() + if self.cfg.ema_layers_only: + self.cfg.ema_transformer_only = True + for k, _ in self.encoder.pos_conv.named_parameters(): + skip_keys.add(f"pos_conv.{k}") + + self.ema = EMAModule( + self.encoder if self.cfg.ema_transformer_only else self, + ema_config, + skip_keys=skip_keys, + ) + + def set_num_updates(self, num_updates): + super().set_num_updates(num_updates) + + ''' + if self.ema is None and self.final_proj is not None: + logger.info(f"making ema teacher") + self.make_ema_teacher() + elif self.training and self.ema is not None: + if self.cfg.ema_decay != self.cfg.ema_end_decay: + if num_updates >= self.cfg.ema_anneal_end_step: + decay = self.cfg.ema_end_decay + else: + decay = get_annealed_rate( + self.cfg.ema_decay, + self.cfg.ema_end_decay, + num_updates, + self.cfg.ema_anneal_end_step, + ) + self.ema.set_decay(decay) + if self.ema.get_decay() < 1: + self.ema.step(self.encoder if self.cfg.ema_transformer_only else self) + ''' + self.num_updates = num_updates + + def state_dict(self, destination=None, prefix="", keep_vars=False): + state = super().state_dict(destination, prefix, keep_vars) + + if self.ema is not None: + state[prefix + "_ema"] = self.ema.fp32_params + + return state + + def _load_from_state_dict(self, state_dict, prefix, *args, **kwargs): + if self.ema is not None: + k = prefix + "_ema" + assert k in state_dict + self.ema.restore(state_dict[k], True) + del state_dict[k] + return super()._load_from_state_dict(state_dict, prefix, *args, **kwargs) + + @classmethod + def build_model(cls, cfg: Data2VecAudioConfig, task=None): + """Build a new model instance.""" + + return cls(cfg) + + def apply_mask( + self, + x, + padding_mask, + mask_indices=None, + mask_channel_indices=None, + ): + B, T, C = x.shape + + if self.mask_channel_prob > 0 and self.mask_channel_before: + mask_channel_indices = compute_mask_indices( + (B, C), + None, + self.mask_channel_prob, + self.mask_channel_length, + self.mask_channel_selection, + self.mask_channel_other, + no_overlap=self.no_mask_channel_overlap, + min_space=self.mask_channel_min_space, + ) + mask_channel_indices = ( + torch.from_numpy(mask_channel_indices) + .to(x.device) + .unsqueeze(1) + .expand(-1, T, -1) + ) + x[mask_channel_indices] = 0 + + if self.mask_prob > 0: + if mask_indices is None: + mask_indices = compute_mask_indices( + (B, T), + padding_mask, + self.mask_prob, + self.mask_length, + self.mask_selection, + self.mask_other, + min_masks=1, + no_overlap=self.no_mask_overlap, + min_space=self.mask_min_space, + require_same_masks=self.cfg.require_same_masks, + mask_dropout=self.cfg.mask_dropout, + ) + mask_indices = torch.from_numpy(mask_indices).to(x.device) + #x = index_put(x, mask_indices, self.mask_emb) + x = index_put(x, mask_indices, 0) + else: + mask_indices = None + + if self.mask_channel_prob > 0 and not self.mask_channel_before: + if mask_channel_indices is None: + mask_channel_indices = compute_mask_indices( + (B, C), + None, + self.mask_channel_prob, + self.mask_channel_length, + self.mask_channel_selection, + self.mask_channel_other, + no_overlap=self.no_mask_channel_overlap, + min_space=self.mask_channel_min_space, + ) + mask_channel_indices = ( + torch.from_numpy(mask_channel_indices) + .to(x.device) + .unsqueeze(1) + .expand(-1, T, -1) + ) + x = index_put(x, mask_channel_indices, 0) + + return x, mask_indices + + def _get_feat_extract_output_lengths(self, input_lengths: torch.LongTensor): + """ + Computes the output length of the convolutional layers + """ + + def _conv_out_length(input_length, kernel_size, stride): + return torch.floor((input_length - kernel_size) / stride + 1) + + conv_cfg_list = eval(self.cfg.conv_feature_layers) + + for i in range(len(conv_cfg_list)): + input_lengths = _conv_out_length( + input_lengths, conv_cfg_list[i][1], conv_cfg_list[i][2] + ) + + return input_lengths.to(torch.long) + + def forward( + self, + source, + padding_mask=None, + mask=True, + features_only=False, + layer=None, + mask_indices=None, + mask_channel_indices=None, + padding_count=None, + ): + features = source + + if self.feature_grad_mult > 0: + features = self.feature_extractor(features) + if self.feature_grad_mult != 1.0: + features = GradMultiply.apply(features, self.feature_grad_mult) + else: + with torch.no_grad(): + features = self.feature_extractor(features) + + features = features.transpose(1, 2) + + features = self.layer_norm(features) + + orig_padding_mask = padding_mask + + if padding_mask is not None and padding_mask.any(): + input_lengths = (1 - padding_mask.long()).sum(-1) + # apply conv formula to get real output_lengths + output_lengths = self._get_feat_extract_output_lengths(input_lengths) + + padding_mask = torch.zeros( + features.shape[:2], dtype=features.dtype, device=features.device + ) + + # these two operations makes sure that all values + # before the output lengths indices are attended to + padding_mask[ + ( + torch.arange(padding_mask.shape[0], device=padding_mask.device), + output_lengths - 1, + ) + ] = 1 + padding_mask = (1 - padding_mask.flip([-1]).cumsum(-1).flip([-1])).bool() + else: + padding_mask = None + + if self.post_extract_proj is not None: + features = self.post_extract_proj(features) + + pre_encoder_features = None + if self.cfg.ema_transformer_only: + pre_encoder_features = features.clone() + + features = self.dropout_input(features) + + if mask: + x, mask_indices = self.apply_mask( + features, + padding_mask, + mask_indices=mask_indices, + mask_channel_indices=mask_channel_indices, + ) + else: + x = features + mask_indices = None + + x, layer_results = self.encoder( + x, + padding_mask=padding_mask, + layer=layer, + ) + + if features_only: + return { + "x": x, + "padding_mask": padding_mask, + "layer_results": layer_results, + } + + result = { + "losses": {}, + } + + with torch.no_grad(): + self.ema.model.eval() + + if self.cfg.ema_transformer_only: + y, layer_results = self.ema.model.extract_features( + pre_encoder_features, + padding_mask=padding_mask, + min_layer=self.cfg.encoder_layers - self.average_top_k_layers, + ) + y = { + "x": y, + "padding_mask": padding_mask, + "layer_results": layer_results, + } + else: + y = self.ema.model.extract_features( + source=source, + padding_mask=orig_padding_mask, + mask=False, + ) + + target_layer_results = [l[2] for l in y["layer_results"]] + + permuted = False + if self.cfg.instance_norm_target_layer or self.cfg.batch_norm_target_layer: + target_layer_results = [ + tl.permute(1, 2, 0) for tl in target_layer_results # TBC -> BCT + ] + permuted = True + + if self.cfg.batch_norm_target_layer: + target_layer_results = [ + F.batch_norm( + tl.float(), running_mean=None, running_var=None, training=True + ) + for tl in target_layer_results + ] + + if self.cfg.instance_norm_target_layer: + target_layer_results = [ + F.instance_norm(tl.float()) for tl in target_layer_results + ] + + if permuted: + target_layer_results = [ + tl.transpose(1, 2) for tl in target_layer_results # BCT -> BTC + ] + + if self.cfg.group_norm_target_layer: + target_layer_results = [ + F.layer_norm(tl.float(), tl.shape[-2:]) + for tl in target_layer_results + ] + + if self.cfg.layer_norm_target_layer: + target_layer_results = [ + F.layer_norm(tl.float(), tl.shape[-1:]) + for tl in target_layer_results + ] + + y = sum(target_layer_results) / len(target_layer_results) + + if self.cfg.layer_norm_targets: + y = F.layer_norm(y.float(), y.shape[-1:]) + + if self.cfg.instance_norm_targets: + y = F.instance_norm(y.float().transpose(1, 2)).transpose(1, 2) + + if not permuted: + y = y.transpose(0, 1) + + y = y[mask_indices] + + x = x[mask_indices] + x = self.final_proj(x) + + sz = x.size(-1) + + if self.loss_beta == 0: + loss = F.mse_loss(x.float(), y.float(), reduction="none").sum(dim=-1) + else: + loss = F.smooth_l1_loss( + x.float(), y.float(), reduction="none", beta=self.loss_beta + ).sum(dim=-1) + + if self.loss_scale is not None: + scale = self.loss_scale + else: + scale = 1 / math.sqrt(sz) + + result["losses"]["regression"] = loss.sum() * scale + + if "sample_size" not in result: + result["sample_size"] = loss.numel() + + with torch.no_grad(): + result["target_var"] = self.compute_var(y) + result["pred_var"] = self.compute_var(x.float()) + + if self.num_updates > 5000 and result["target_var"] < self.cfg.min_target_var: + logger.error( + f"target var is {result['target_var'].item()} < {self.cfg.min_target_var}, exiting" + ) + raise Exception( + f"target var is {result['target_var'].item()} < {self.cfg.min_target_var}, exiting" + ) + if self.num_updates > 5000 and result["pred_var"] < self.cfg.min_pred_var: + logger.error( + f"pred var is {result['pred_var'].item()} < {self.cfg.min_pred_var}, exiting" + ) + raise Exception( + f"pred var is {result['pred_var'].item()} < {self.cfg.min_pred_var}, exiting" + ) + + if self.ema is not None: + result["ema_decay"] = self.ema.get_decay() * 1000 + + return result + + @staticmethod + def compute_var(y): + y = y.view(-1, y.size(-1)) + if dist.is_initialized(): + zc = torch.tensor(y.size(0)).cuda() + zs = y.sum(dim=0) + zss = (y ** 2).sum(dim=0) + + dist.all_reduce(zc) + dist.all_reduce(zs) + dist.all_reduce(zss) + + var = zss / (zc - 1) - (zs ** 2) / (zc * (zc - 1)) + return torch.sqrt(var + 1e-6).mean() + else: + return torch.sqrt(y.var(dim=0) + 1e-6).mean() + + def extract_features( + self, source, padding_mask, mask=False, layer=None + ): + res = self.forward( + source, + padding_mask, + mask=mask, + features_only=True, + layer=layer, + ) + return res + + def remove_pretraining_modules(self, last_layer=None): + self.final_proj = None + self.ema = None + if last_layer is not None: + self.encoder.layers = nn.ModuleList( + l for i, l in enumerate(self.encoder.layers) if i <= last_layer + ) diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_encoder.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_encoder.py new file mode 100755 index 000000000..cf2fd5c2b --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/data2vec_encoder.py @@ -0,0 +1,208 @@ +# Copyright 2021 Xuankai Chang +# Apache 2.0 (http://www.apache.org/licenses/LICENSE-2.0) + +"""Encoder definition.""" +import contextlib +import time +import copy +import math +import logging +import os +from typing import List, Optional, Tuple +import warnings + +import torch +from filelock import FileLock +from typeguard import check_argument_types + +from nets_utils import make_pad_mask +from encoder_interface import EncoderInterface +from torch import Tensor, nn + +from icefall.utils import make_pad_mask, subsequent_chunk_mask +try: + import fairseq + from data2vec_audio import * +except Exception as e: + print("Error: FairSeq is not properly installed.") + print( + "Please install FairSeq: cd ${MAIN_ROOT}/tools && make fairseq.done" + ) + raise e + + +class FairSeqData2VecEncoder(EncoderInterface): + """FairSeq Wav2Vec2 encoder module. + + Args: + input_size: input dim + output_size: dimension of attention + w2v_url: url to Wav2Vec2.0 pretrained model + w2v_dir_path: directory to download the Wav2Vec2.0 pretrained model. + normalize_before: whether to use layer_norm before the first block + finetune_last_n_layers: last n layers to be finetuned in Wav2Vec2.0 + 0 means to finetune every layer if freeze_w2v=False. + """ + + def __init__( + self, + input_size: int, + w2v_url: str, + w2v_dir_path: str = "./", + output_size: int = 256, + freeze_finetune_updates: int = 0, + additional_block: bool = False, + layer_average: bool = False, + ): + assert check_argument_types() + super().__init__() + + ''' + if os.path.exists('/home/work/workspace/models/data2vec_model/audio_base_ls.pt'): + self.w2v_model_path = '/home/work/workspace/models/data2vec_model/audio_base_ls.pt' + if os.path.exists('/workspace/models/audio_base_ls.pt'): + self.w2v_model_path = '/workspace/models/audio_base_ls.pt' + ''' + self.w2v_model_path = download_d2v() + self._output_size = output_size + + models, _, _ = fairseq.checkpoint_utils.load_model_ensemble_and_task( + [self.w2v_model_path], + strict=False, + ) + model = models[0] + model.feature_grad_mult = 0.0 ## for conv network freeze + model.mask_prob = 0.5 ## for conv network freeze + + self.encoders = model + self.pretrained_params = copy.deepcopy(model.state_dict()) + + if model.cfg.encoder_embed_dim != output_size or additional_block: + # TODO(xkc09): try LSTM + self.output_layer = torch.nn.Sequential( + torch.nn.Linear(model.cfg.encoder_embed_dim, output_size), + torch.nn.LayerNorm(output_size), + torch.nn.GELU(), + ) + else: + self.output_layer = None + + self.freeze_finetune_updates = freeze_finetune_updates + self.num_updates = 0 + + self.layer_average = layer_average + if self.layer_average: + self.encoders.encoder.layerdrop = 0.0 # no layerdrop for weight averaging + self.layer_num = 12 # FIXME: argument + self.weights = nn.Parameter(torch.zeros(self.layer_num)) + + def output_size(self) -> int: + return self._output_size + + def _weighted_sum(self, feature): + stacked_feature = torch.stack(feature, dim=0) + + _, *origin_shape = stacked_feature.shape + stacked_feature = stacked_feature.view(self.layer_num, -1) + norm_weights = F.softmax(self.weights, dim=-1) + weighted_feature = (norm_weights.unsqueeze(-1) * stacked_feature).sum(dim=0) + weighted_feature = weighted_feature.view(*origin_shape) + + return weighted_feature + + def forward( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + warmup = None, + prev_states: torch.Tensor = None, + ) -> Tuple[torch.Tensor, torch.Tensor]: + xs_pad = x + ilens = x_lens + """Forward FairSeqWav2Vec2 Encoder. + + Args: + xs_pad: input tensor (B, L, D) + ilens: input length (B) + prev_states: Not to be used now. + Returns: + position embedded tensor and mask + """ + with torch.no_grad(): + xs_pad = torch.nn.functional.layer_norm(xs_pad, xs_pad.shape) + + masks = make_pad_mask(ilens).to(xs_pad.device) + + ft = (self.freeze_finetune_updates <= self.num_updates) and self.encoders.training + if self.num_updates <= self.freeze_finetune_updates: + self.num_updates += 1 + elif ft and self.num_updates == self.freeze_finetune_updates + 1: + self.num_updates += 1 + logging.info("Start fine-tuning wav2vec parameters!") + + with torch.no_grad() if not ft else contextlib.nullcontext(): + enc_outputs = self.encoders( + xs_pad, + masks, + mask = ft, + features_only=True, + ) + + if self.layer_average: + xs_pad = list() + for lr in enc_outputs["layer_results"]: + xs_pad.append(lr[0].transpose(0,1)) + + xs_pad = self._weighted_sum(xs_pad) + else: + xs_pad = enc_outputs["x"] # (B,T,C), + + bs = xs_pad.shape[0] + if enc_outputs["padding_mask"] is not None: + masks = enc_outputs["padding_mask"] # (B, T) + olens = (~masks).sum(dim=1) # (B) + else: + olens = torch.IntTensor([xs_pad.shape[1]]).repeat(bs).to(xs_pad.device) + + if self.output_layer is not None: + xs_pad = self.output_layer(xs_pad) + + return xs_pad, olens + + def reload_pretrained_parameters(self): + self.encoders.load_state_dict(self.pretrained_params) + logging.info("Pretrained data2vec model parameters reloaded!") + + +def download_d2v(model_url='https://dl.fbaipublicfiles.com/fairseq/data2vec/audio_base_ls.pt', dir_path='./models'): + os.makedirs(dir_path, exist_ok=True) + + model_name = model_url.split("/")[-1] + model_path = os.path.join(dir_path, model_name) + + dict_url = "https://dl.fbaipublicfiles.com/fairseq/wav2vec/dict.ltr.txt" + dict_path = os.path.join(dir_path, dict_url.split("/")[-1]) + + with FileLock(model_path + ".lock"): + if not os.path.exists(model_path): + torch.hub.download_url_to_file(model_url, model_path) + torch.hub.download_url_to_file(dict_url, dict_path) + logging.info(f"data2vec model downloaded {model_path}") + else: + logging.info(f"data2vec model {model_path} already exists.") + + return model_path + + +if __name__ == '__main__': + d2v = FairSeqData2VecEncoder(input_size=768, w2v_url='ww', output_size=768) + inputs = torch.randn([1, 211564]) + #a = torch.ones([1000] + #b = torch.ones([10000]) + #c = torch.ones([10000]) + length = torch.tensor([211564]) + outputs = d2v(inputs, length) + print(outputs[0].size()) + + #for n, p in d2v.named_parameters(): + # print(n) diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode.py new file mode 100755 index 000000000..c2821dcd3 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode.py @@ -0,0 +1,836 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(0) for d2v-T decoding +for method in greedy_search modified_beam_search fast_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoc.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/960h_sweep_v3_388 \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule, UserLibriAsrDataModule, LJSpeechAsrDataModule +from beam_search import ( + beam_search, + fast_beam_search_nbest, + fast_beam_search_nbest_LG, + fast_beam_search_nbest_oracle, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from train import add_model_arguments, add_rep_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + "--model-name", + type=str, + default="", + help="""It specifies the model file name to use for decoding.""", + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + - fast_beam_search_nbest + - fast_beam_search_nbest_oracle + - fast_beam_search_nbest_LG + If you use fast_beam_search_nbest_LG, you have to specify + `--lang-dir`, which should contain `LG.pt`. + """, + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --decoding-method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=20.0, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --decoding-method is fast_beam_search, + fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle + """, + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=0.01, + help=""" + Used only when --decoding_method is fast_beam_search_nbest_LG. + It specifies the scale for n-gram LM scores. + """, + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=8, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=64, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. + Used only when --decoding_method is greedy_search""", + ) + + parser.add_argument( + "--num-paths", + type=int, + default=200, + help="""Number of paths for nbest decoding. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""Scale applied to lattice scores when computing nbest paths. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--simulate-streaming", + type=str2bool, + default=False, + help="""Whether to simulate streaming in decoding, this is a good way to + test a streaming model. + """, + ) + + parser.add_argument( + "--decode-chunk-size", + type=int, + default=16, + help="The chunk size for decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--left-context", + type=int, + default=64, + help="left context can be seen during decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--gen-pseudo-label", + type=str2bool, + default=False, + help="make pseudo labels for train set", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + batch: dict, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + + - key: It indicates the setting used for decoding. For example, + if greedy_search is used, it would be "greedy_search" + If beam search with a beam size of 7 is used, it would be + "beam_7" + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + Args: + params: + It's the return value of :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return the decoding result. See above description for the format of + the returned dict. + """ + device = next(model.parameters()).device + feature = batch["inputs"] + assert feature.ndim == 2 or feature.ndim == 3 + + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + #feature_lens = supervisions["num_frames"].to(device) + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + if params.simulate_streaming: + feature_lens += params.left_context + feature = torch.nn.functional.pad( + feature, + pad=(0, 0, 0, params.left_context), + value=LOG_EPS, + ) + encoder_out, encoder_out_lens, _ = model.encoder.streaming_forward( + x=feature, + x_lens=feature_lens, + chunk_size=params.decode_chunk_size, + left_context=params.left_context, + simulate_streaming=True, + ) + else: + encoder_out, encoder_out_lens = model.encoder(x=feature, x_lens=feature_lens) + + hyps = [] + + if params.decoding_method == "fast_beam_search": + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_LG": + hyp_tokens = fast_beam_search_nbest_LG( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in hyp_tokens: + hyps.append([word_table[i] for i in hyp]) + elif params.decoding_method == "fast_beam_search_nbest": + hyp_tokens = fast_beam_search_nbest( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_oracle": + hyp_tokens = fast_beam_search_nbest_oracle( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + ref_texts=sp.encode(supervisions["text"]), + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + batch_size = encoder_out.size(0) + + for i in range(batch_size): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.decoding_method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.decoding_method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError( + f"Unsupported decoding method: {params.decoding_method}" + ) + hyps.append(sp.decode(hyp).split()) + + if params.decoding_method == "greedy_search": + return {"greedy_search": hyps} + elif "fast_beam_search" in params.decoding_method: + key = f"beam_{params.beam}_" + key += f"max_contexts_{params.max_contexts}_" + key += f"max_states_{params.max_states}" + if "nbest" in params.decoding_method: + key += f"_num_paths_{params.num_paths}_" + key += f"nbest_scale_{params.nbest_scale}" + if "LG" in params.decoding_method: + key += f"_ngram_lm_scale_{params.ngram_lm_scale}" + + return {key: hyps} + else: + return {f"beam_size_{params.beam_size}": hyps} + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return a dict, whose key may be "greedy_search" if greedy search + is used, or it may be "beam_7" if beam size of 7 is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + if params.decoding_method == "greedy_search": + log_interval = 50 + else: + log_interval = 20 + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + sp=sp, + decoding_graph=decoding_graph, + word_table=word_table, + batch=batch, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % log_interval == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats( + f, f"{test_set_name}-{key}", results, enable_log=True + ) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + assert params.decoding_method in ( + "greedy_search", + "beam_search", + "fast_beam_search", + "fast_beam_search_nbest", + "fast_beam_search_nbest_LG", + "fast_beam_search_nbest_oracle", + "modified_beam_search", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.simulate_streaming: + params.suffix += f"-streaming-chunk-size-{params.decode_chunk_size}" + params.suffix += f"-left-context-{params.left_context}" + + if "fast_beam_search" in params.decoding_method: + params.suffix += f"-beam-{params.beam}" + params.suffix += f"-max-contexts-{params.max_contexts}" + params.suffix += f"-max-states-{params.max_states}" + if "nbest" in params.decoding_method: + params.suffix += f"-nbest-scale-{params.nbest_scale}" + params.suffix += f"-num-paths-{params.num_paths}" + if "LG" in params.decoding_method: + params.suffix += f"-ngram-lm-scale-{params.ngram_lm_scale}" + elif "beam_search" in params.decoding_method: + params.suffix += f"-{params.decoding_method}-beam-size-{params.beam_size}" + else: + params.suffix += f"-context-{params.context_size}" + params.suffix += f"-max-sym-per-frame-{params.max_sym_per_frame}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # and are defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + if params.simulate_streaming: + assert ( + params.causal_convolution + ), "Decoding in streaming requires causal convolution" + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + if params.model_name: + load_checkpoint(f"{params.exp_dir}/{params.model_name}", model) + else: + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + if "fast_beam_search" in params.decoding_method: + if params.decoding_method == "fast_beam_search_nbest_LG": + lexicon = Lexicon(params.lang_dir) + word_table = lexicon.word_table + lg_filename = params.lang_dir / "LG.pt" + logging.info(f"Loading {lg_filename}") + decoding_graph = k2.Fsa.from_dict( + torch.load(lg_filename, map_location=device) + ) + decoding_graph.scores *= params.ngram_lm_scale + else: + word_table = None + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + else: + decoding_graph = None + word_table = None + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + LJSpeech = LJSpeechAsrDataModule(args) + + if args.gen_pseudo_label: + train_cuts = LJSpeech.train_cuts() + train_dl_ = LJSpeech.test_dataloaders(train_cuts) + + test_sets = ["train"] + train_dl_ = [train_dl_] + + for test_set, test_dl in zip(test_sets, train_dl_): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + else: + dev_cuts = LJSpeech.dev_cuts() + test_cuts = LJSpeech.test_cuts() + + dev_dl = LJSpeech.test_dataloaders(dev_cuts) + test_dl_ = LJSpeech.test_dataloaders(test_cuts) + + test_sets = ["dev", "test"] + test_dl_ = [dev_dl, test_dl_] + + for test_set, test_dl in zip(test_sets, test_dl_): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_librispeech.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_librispeech.py new file mode 100755 index 000000000..4b3eac067 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_librispeech.py @@ -0,0 +1,803 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(0) for d2v-T decoding +for method in greedy_search modified_beam_search fast_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoc.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/960h_sweep_v3_388 \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule +from beam_search import ( + beam_search, + fast_beam_search_nbest, + fast_beam_search_nbest_LG, + fast_beam_search_nbest_oracle, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from train import add_model_arguments, add_rep_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + "--model-name", + type=str, + default="", + help="""It specifies the model file name to use for decoding.""", + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + - fast_beam_search_nbest + - fast_beam_search_nbest_oracle + - fast_beam_search_nbest_LG + If you use fast_beam_search_nbest_LG, you have to specify + `--lang-dir`, which should contain `LG.pt`. + """, + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --decoding-method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=20.0, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --decoding-method is fast_beam_search, + fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle + """, + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=0.01, + help=""" + Used only when --decoding_method is fast_beam_search_nbest_LG. + It specifies the scale for n-gram LM scores. + """, + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=8, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=64, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. + Used only when --decoding_method is greedy_search""", + ) + + parser.add_argument( + "--num-paths", + type=int, + default=200, + help="""Number of paths for nbest decoding. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""Scale applied to lattice scores when computing nbest paths. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--simulate-streaming", + type=str2bool, + default=False, + help="""Whether to simulate streaming in decoding, this is a good way to + test a streaming model. + """, + ) + + parser.add_argument( + "--decode-chunk-size", + type=int, + default=16, + help="The chunk size for decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--left-context", + type=int, + default=64, + help="left context can be seen during decoding (in frames after subsampling)", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + batch: dict, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + + - key: It indicates the setting used for decoding. For example, + if greedy_search is used, it would be "greedy_search" + If beam search with a beam size of 7 is used, it would be + "beam_7" + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + Args: + params: + It's the return value of :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return the decoding result. See above description for the format of + the returned dict. + """ + device = next(model.parameters()).device + feature = batch["inputs"] + assert feature.ndim == 2 or feature.ndim == 3 + + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + #feature_lens = supervisions["num_frames"].to(device) + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + if params.simulate_streaming: + feature_lens += params.left_context + feature = torch.nn.functional.pad( + feature, + pad=(0, 0, 0, params.left_context), + value=LOG_EPS, + ) + encoder_out, encoder_out_lens, _ = model.encoder.streaming_forward( + x=feature, + x_lens=feature_lens, + chunk_size=params.decode_chunk_size, + left_context=params.left_context, + simulate_streaming=True, + ) + else: + encoder_out, encoder_out_lens = model.encoder(x=feature, x_lens=feature_lens) + + hyps = [] + + if params.decoding_method == "fast_beam_search": + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_LG": + hyp_tokens = fast_beam_search_nbest_LG( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in hyp_tokens: + hyps.append([word_table[i] for i in hyp]) + elif params.decoding_method == "fast_beam_search_nbest": + hyp_tokens = fast_beam_search_nbest( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_oracle": + hyp_tokens = fast_beam_search_nbest_oracle( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + ref_texts=sp.encode(supervisions["text"]), + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + batch_size = encoder_out.size(0) + + for i in range(batch_size): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.decoding_method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.decoding_method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError( + f"Unsupported decoding method: {params.decoding_method}" + ) + hyps.append(sp.decode(hyp).split()) + + if params.decoding_method == "greedy_search": + return {"greedy_search": hyps} + elif "fast_beam_search" in params.decoding_method: + key = f"beam_{params.beam}_" + key += f"max_contexts_{params.max_contexts}_" + key += f"max_states_{params.max_states}" + if "nbest" in params.decoding_method: + key += f"_num_paths_{params.num_paths}_" + key += f"nbest_scale_{params.nbest_scale}" + if "LG" in params.decoding_method: + key += f"_ngram_lm_scale_{params.ngram_lm_scale}" + + return {key: hyps} + else: + return {f"beam_size_{params.beam_size}": hyps} + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return a dict, whose key may be "greedy_search" if greedy search + is used, or it may be "beam_7" if beam size of 7 is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + if params.decoding_method == "greedy_search": + log_interval = 50 + else: + log_interval = 20 + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + sp=sp, + decoding_graph=decoding_graph, + word_table=word_table, + batch=batch, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % log_interval == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats( + f, f"{test_set_name}-{key}", results, enable_log=True + ) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + assert params.decoding_method in ( + "greedy_search", + "beam_search", + "fast_beam_search", + "fast_beam_search_nbest", + "fast_beam_search_nbest_LG", + "fast_beam_search_nbest_oracle", + "modified_beam_search", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.simulate_streaming: + params.suffix += f"-streaming-chunk-size-{params.decode_chunk_size}" + params.suffix += f"-left-context-{params.left_context}" + + if "fast_beam_search" in params.decoding_method: + params.suffix += f"-beam-{params.beam}" + params.suffix += f"-max-contexts-{params.max_contexts}" + params.suffix += f"-max-states-{params.max_states}" + if "nbest" in params.decoding_method: + params.suffix += f"-nbest-scale-{params.nbest_scale}" + params.suffix += f"-num-paths-{params.num_paths}" + if "LG" in params.decoding_method: + params.suffix += f"-ngram-lm-scale-{params.ngram_lm_scale}" + elif "beam_search" in params.decoding_method: + params.suffix += f"-{params.decoding_method}-beam-size-{params.beam_size}" + else: + params.suffix += f"-context-{params.context_size}" + params.suffix += f"-max-sym-per-frame-{params.max_sym_per_frame}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # and are defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + if params.simulate_streaming: + assert ( + params.causal_convolution + ), "Decoding in streaming requires causal convolution" + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + if params.model_name: + load_checkpoint(f"{params.exp_dir}/{params.model_name}", model) + else: + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + if "fast_beam_search" in params.decoding_method: + if params.decoding_method == "fast_beam_search_nbest_LG": + lexicon = Lexicon(params.lang_dir) + word_table = lexicon.word_table + lg_filename = params.lang_dir / "LG.pt" + logging.info(f"Loading {lg_filename}") + decoding_graph = k2.Fsa.from_dict( + torch.load(lg_filename, map_location=device) + ) + decoding_graph.scores *= params.ngram_lm_scale + else: + word_table = None + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + else: + decoding_graph = None + word_table = None + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + librispeech = LibriSpeechAsrDataModule(args) + + test_clean_cuts = librispeech.test_clean_cuts() + test_other_cuts = librispeech.test_other_cuts() + + test_clean_dl = librispeech.test_dataloaders(test_clean_cuts) + test_other_dl = librispeech.test_dataloaders(test_other_cuts) + + test_sets = ["test-clean", "test-other"] + test_dl = [test_clean_dl, test_other_dl] + + for test_set, test_dl in zip(test_sets, test_dl): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_userlibri.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_userlibri.py new file mode 100755 index 000000000..f3b659e1f --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decode_userlibri.py @@ -0,0 +1,807 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(0) for d2v-T decoding +for method in greedy_search modified_beam_search fast_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoc.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/960h_sweep_v3_388 \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule, UserLibriAsrDataModule +from beam_search import ( + beam_search, + fast_beam_search_nbest, + fast_beam_search_nbest_LG, + fast_beam_search_nbest_oracle, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from train import add_model_arguments, add_rep_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + "--model-name", + type=str, + default="", + help="""It specifies the model file name to use for decoding.""", + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + - fast_beam_search_nbest + - fast_beam_search_nbest_oracle + - fast_beam_search_nbest_LG + If you use fast_beam_search_nbest_LG, you have to specify + `--lang-dir`, which should contain `LG.pt`. + """, + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --decoding-method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=20.0, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --decoding-method is fast_beam_search, + fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle + """, + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=0.01, + help=""" + Used only when --decoding_method is fast_beam_search_nbest_LG. + It specifies the scale for n-gram LM scores. + """, + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=8, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=64, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. + Used only when --decoding_method is greedy_search""", + ) + + parser.add_argument( + "--num-paths", + type=int, + default=200, + help="""Number of paths for nbest decoding. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""Scale applied to lattice scores when computing nbest paths. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--simulate-streaming", + type=str2bool, + default=False, + help="""Whether to simulate streaming in decoding, this is a good way to + test a streaming model. + """, + ) + + parser.add_argument( + "--decode-chunk-size", + type=int, + default=16, + help="The chunk size for decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--left-context", + type=int, + default=64, + help="left context can be seen during decoding (in frames after subsampling)", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + batch: dict, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + + - key: It indicates the setting used for decoding. For example, + if greedy_search is used, it would be "greedy_search" + If beam search with a beam size of 7 is used, it would be + "beam_7" + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + Args: + params: + It's the return value of :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return the decoding result. See above description for the format of + the returned dict. + """ + device = next(model.parameters()).device + feature = batch["inputs"] + assert feature.ndim == 2 or feature.ndim == 3 + + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + #feature_lens = supervisions["num_frames"].to(device) + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + if params.simulate_streaming: + feature_lens += params.left_context + feature = torch.nn.functional.pad( + feature, + pad=(0, 0, 0, params.left_context), + value=LOG_EPS, + ) + encoder_out, encoder_out_lens, _ = model.encoder.streaming_forward( + x=feature, + x_lens=feature_lens, + chunk_size=params.decode_chunk_size, + left_context=params.left_context, + simulate_streaming=True, + ) + else: + encoder_out, encoder_out_lens = model.encoder(x=feature, x_lens=feature_lens) + + hyps = [] + + if params.decoding_method == "fast_beam_search": + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_LG": + hyp_tokens = fast_beam_search_nbest_LG( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in hyp_tokens: + hyps.append([word_table[i] for i in hyp]) + elif params.decoding_method == "fast_beam_search_nbest": + hyp_tokens = fast_beam_search_nbest( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_oracle": + hyp_tokens = fast_beam_search_nbest_oracle( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + ref_texts=sp.encode(supervisions["text"]), + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + batch_size = encoder_out.size(0) + + for i in range(batch_size): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.decoding_method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.decoding_method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError( + f"Unsupported decoding method: {params.decoding_method}" + ) + hyps.append(sp.decode(hyp).split()) + + if params.decoding_method == "greedy_search": + return {"greedy_search": hyps} + elif "fast_beam_search" in params.decoding_method: + key = f"beam_{params.beam}_" + key += f"max_contexts_{params.max_contexts}_" + key += f"max_states_{params.max_states}" + if "nbest" in params.decoding_method: + key += f"_num_paths_{params.num_paths}_" + key += f"nbest_scale_{params.nbest_scale}" + if "LG" in params.decoding_method: + key += f"_ngram_lm_scale_{params.ngram_lm_scale}" + + return {key: hyps} + else: + return {f"beam_size_{params.beam_size}": hyps} + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return a dict, whose key may be "greedy_search" if greedy search + is used, or it may be "beam_7" if beam size of 7 is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + if params.decoding_method == "greedy_search": + log_interval = 50 + else: + log_interval = 20 + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + sp=sp, + decoding_graph=decoding_graph, + word_table=word_table, + batch=batch, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % log_interval == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats( + f, f"{test_set_name}-{key}", results, enable_log=True + ) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + assert params.decoding_method in ( + "greedy_search", + "beam_search", + "fast_beam_search", + "fast_beam_search_nbest", + "fast_beam_search_nbest_LG", + "fast_beam_search_nbest_oracle", + "modified_beam_search", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.simulate_streaming: + params.suffix += f"-streaming-chunk-size-{params.decode_chunk_size}" + params.suffix += f"-left-context-{params.left_context}" + + if "fast_beam_search" in params.decoding_method: + params.suffix += f"-beam-{params.beam}" + params.suffix += f"-max-contexts-{params.max_contexts}" + params.suffix += f"-max-states-{params.max_states}" + if "nbest" in params.decoding_method: + params.suffix += f"-nbest-scale-{params.nbest_scale}" + params.suffix += f"-num-paths-{params.num_paths}" + if "LG" in params.decoding_method: + params.suffix += f"-ngram-lm-scale-{params.ngram_lm_scale}" + elif "beam_search" in params.decoding_method: + params.suffix += f"-{params.decoding_method}-beam-size-{params.beam_size}" + else: + params.suffix += f"-context-{params.context_size}" + params.suffix += f"-max-sym-per-frame-{params.max_sym_per_frame}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # and are defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + if params.simulate_streaming: + assert ( + params.causal_convolution + ), "Decoding in streaming requires causal convolution" + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + if params.model_name: + load_checkpoint(f"{params.exp_dir}/{params.model_name}", model) + else: + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + if "fast_beam_search" in params.decoding_method: + if params.decoding_method == "fast_beam_search_nbest_LG": + lexicon = Lexicon(params.lang_dir) + word_table = lexicon.word_table + lg_filename = params.lang_dir / "LG.pt" + logging.info(f"Loading {lg_filename}") + decoding_graph = k2.Fsa.from_dict( + torch.load(lg_filename, map_location=device) + ) + decoding_graph.scores *= params.ngram_lm_scale + else: + word_table = None + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + else: + decoding_graph = None + word_table = None + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + userlibri = UserLibriAsrDataModule(args) + + speaker_wise_cuts, speakers = userlibri.speaker_wise_cuts() + book_wise_cuts, books = userlibri.book_wise_cuts() + + speaker_dl = [] + book_dl = [] + for speaker_wise_cut in speaker_wise_cuts: + speaker_dl.append(userlibri.test_dataloaders(speaker_wise_cut)) + for book_wise_cut in book_wise_cuts: + book_dl.append(userlibri.test_dataloaders(book_wise_cut)) + + test_sets = speakers + books + test_dl = speaker_dl + book_dl + + for test_set, test_dl in zip(test_sets, test_dl): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decoder.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decoder.py new file mode 100755 index 000000000..5f90e6375 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/decoder.py @@ -0,0 +1,102 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +class Decoder(nn.Module): + """This class modifies the stateless decoder from the following paper: + + RNN-transducer with stateless prediction network + https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9054419 + + It removes the recurrent connection from the decoder, i.e., the prediction + network. Different from the above paper, it adds an extra Conv1d + right after the embedding layer. + + TODO: Implement https://arxiv.org/pdf/2109.07513.pdf + """ + + def __init__( + self, + vocab_size: int, + decoder_dim: int, + blank_id: int, + context_size: int, + ): + """ + Args: + vocab_size: + Number of tokens of the modeling unit including blank. + decoder_dim: + Dimension of the input embedding, and of the decoder output. + blank_id: + The ID of the blank symbol. + context_size: + Number of previous words to use to predict the next word. + 1 means bigram; 2 means trigram. n means (n+1)-gram. + """ + super().__init__() + + self.embedding = nn.Embedding( + num_embeddings=vocab_size, + embedding_dim=decoder_dim, + padding_idx=blank_id, + ) + self.blank_id = blank_id + + assert context_size >= 1, context_size + self.context_size = context_size + self.vocab_size = vocab_size + if context_size > 1: + self.conv = nn.Conv1d( + in_channels=decoder_dim, + out_channels=decoder_dim, + kernel_size=context_size, + padding=0, + groups=decoder_dim // 4, # group size == 4 + bias=False, + ) + + def forward(self, y: torch.Tensor, need_pad: bool = True) -> torch.Tensor: + """ + Args: + y: + A 2-D tensor of shape (N, U). + need_pad: + True to left pad the input. Should be True during training. + False to not pad the input. Should be False during inference. + Returns: + Return a tensor of shape (N, U, decoder_dim). + """ + y = y.to(torch.int64) + # this stuff about clamp() is a temporary fix for a mismatch + # at utterance start, we use negative ids in beam_search.py + embedding_out = self.embedding(y.clamp(min=0)) * (y >= 0).unsqueeze(-1) + if self.context_size > 1: + embedding_out = embedding_out.permute(0, 2, 1) + if need_pad is True: + embedding_out = F.pad(embedding_out, pad=(self.context_size - 1, 0)) + else: + # During inference time, there is no need to do extra padding + # as we only need one output + assert embedding_out.size(-1) == self.context_size + embedding_out = self.conv(embedding_out) + embedding_out = embedding_out.permute(0, 2, 1) + embedding_out = F.relu(embedding_out) + return embedding_out diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/encoder_interface.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/encoder_interface.py new file mode 100755 index 000000000..257facce4 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/encoder_interface.py @@ -0,0 +1,43 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import Tuple + +import torch +import torch.nn as nn + + +class EncoderInterface(nn.Module): + def forward( + self, x: torch.Tensor, x_lens: torch.Tensor + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ + Args: + x: + A tensor of shape (batch_size, input_seq_len, num_features) + containing the input features. + x_lens: + A tensor of shape (batch_size,) containing the number of frames + in `x` before padding. + Returns: + Return a tuple containing two tensors: + - encoder_out, a tensor of (batch_size, out_seq_len, output_dim) + containing unnormalized probabilities, i.e., the output of a + linear layer. + - encoder_out_lens, a tensor of shape (batch_size,) containing + the number of frames in `encoder_out` before padding. + """ + raise NotImplementedError("Please implement it in a subclass") diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/export.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/export.py new file mode 100755 index 000000000..59a393739 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/export.py @@ -0,0 +1,320 @@ +#!/usr/bin/env python3 +# +# Copyright 2021 Xiaomi Corporation (Author: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This script converts several saved checkpoints +# to a single one using model averaging. +""" + +Usage: + +(1) Export to torchscript model using torch.jit.script() + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 30 \ + --avg 9 \ + --jit 1 + +It will generate a file `cpu_jit.pt` in the given `exp_dir`. You can later +load it by `torch.jit.load("cpu_jit.pt")`. + +Note `cpu` in the name `cpu_jit.pt` means the parameters when loaded into Python +are on CPU. You can use `to("cuda")` to move them to a CUDA device. + +Check +https://github.com/k2-fsa/sherpa +for how to use the exported models outside of icefall. + +(2) Export `model.state_dict()` + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 + +It will generate a file `pretrained.pt` in the given `exp_dir`. You can later +load it by `icefall.checkpoint.load_checkpoint()`. + +To use the generated file with `pruned_transducer_stateless7_ctc/decode.py`, +you can do: + + cd /path/to/exp_dir + ln -s pretrained.pt epoch-9999.pt + + cd /path/to/egs/librispeech/ASR + ./pruned_transducer_stateless7_ctc/decode.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --epoch 9999 \ + --avg 1 \ + --max-duration 600 \ + --decoding-method greedy_search \ + --bpe-model data/lang_bpe_500/bpe.model + +Check ./pretrained.py for its usage. + +Note: If you don't want to train a model from scratch, we have +provided one for you. You can get it at + +https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless7-2022-11-11 + +with the following commands: + + sudo apt-get install git-lfs + git lfs install + git clone https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless7-2022-11-11 + # You will find the pre-trained model in icefall-asr-librispeech-pruned-transducer-stateless7-2022-11-11/exp +""" + +import argparse +import logging +from pathlib import Path + +import sentencepiece as spm +import torch +from scaling_converter import convert_scaled_to_non_scaled +from train import add_model_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.utils import str2bool + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7/exp", + help="""It specifies the directory where all training related + files, e.g., checkpoints, log, etc, are saved + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--jit", + type=str2bool, + default=False, + help="""True to save a model after applying torch.jit.script. + It will generate a file named cpu_jit.pt + + Check ./jit_pretrained.py for how to use it. + """, + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + + add_model_arguments(parser) + + return parser + + +@torch.no_grad() +def main(): + args = get_parser().parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # is defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + model.to(device) + + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to("cpu") + model.eval() + + if params.jit is True: + convert_scaled_to_non_scaled(model, inplace=True) + logging.info("Using torch.jit.script()") + # We won't use the forward() method of the model in C++, so just ignore + # it here. + # Otherwise, one of its arguments is a ragged tensor and is not + # torch scriptabe. + model.__class__.forward = torch.jit.ignore(model.__class__.forward) + logging.info("Using torch.jit.script") + model = torch.jit.script(model) + filename = params.exp_dir / "cpu_jit.pt" + model.save(str(filename)) + logging.info(f"Saved to {filename}") + else: + logging.info("Not using torchscript. Export model.state_dict()") + # Save it using a format so that it can be loaded + # by :func:`load_checkpoint` + filename = params.exp_dir / "pretrained.pt" + torch.save({"model": model.state_dict()}, str(filename)) + logging.info(f"Saved to {filename}") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained.py new file mode 100755 index 000000000..280b95984 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained.py @@ -0,0 +1,271 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads torchscript models, exported by `torch.jit.script()` +and uses them to decode waves. +You can use the following command to get the exported models: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 \ + --jit 1 + +Usage of this script: + +./pruned_transducer_stateless7_ctc/jit_pretrained.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + /path/to/foo.wav \ + /path/to/bar.wav +""" + +import argparse +import logging +import math +from typing import List + +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from torch.nn.utils.rnn import pad_sequence + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--nn-model-filename", + type=str, + required=True, + help="Path to the torchscript model cpu_jit.pt", + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model.""", + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float = 16000 +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert ( + sample_rate == expected_sample_rate + ), f"Expected sample rate: {expected_sample_rate}. Given: {sample_rate}" + # We use only the first channel + ans.append(wave[0]) + return ans + + +def greedy_search( + model: torch.jit.ScriptModule, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, +) -> List[List[int]]: + """Greedy search in batch mode. It hardcodes --max-sym-per-frame=1. + Args: + model: + The transducer model. + encoder_out: + A 3-D tensor of shape (N, T, C) + encoder_out_lens: + A 1-D tensor of shape (N,). + Returns: + Return the decoded results for each utterance. + """ + assert encoder_out.ndim == 3 + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + device = encoder_out.device + blank_id = 0 # hard-code to 0 + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + context_size = model.decoder.context_size + hyps = [[blank_id] * context_size for _ in range(N)] + + decoder_input = torch.tensor( + hyps, + device=device, + dtype=torch.int64, + ) # (N, context_size) + + decoder_out = model.decoder( + decoder_input, + need_pad=torch.tensor([False]), + ).squeeze(1) + + offset = 0 + for batch_size in batch_size_list: + start = offset + end = offset + batch_size + current_encoder_out = packed_encoder_out.data[start:end] + current_encoder_out = current_encoder_out + # current_encoder_out's shape: (batch_size, encoder_out_dim) + offset = end + + decoder_out = decoder_out[:batch_size] + + logits = model.joiner( + current_encoder_out, + decoder_out, + ) + # logits'shape (batch_size, vocab_size) + + assert logits.ndim == 2, logits.shape + y = logits.argmax(dim=1).tolist() + emitted = False + for i, v in enumerate(y): + if v != blank_id: + hyps[i].append(v) + emitted = True + if emitted: + # update decoder output + decoder_input = [h[-context_size:] for h in hyps[:batch_size]] + decoder_input = torch.tensor( + decoder_input, + device=device, + dtype=torch.int64, + ) + decoder_out = model.decoder( + decoder_input, + need_pad=torch.tensor([False]), + ) + decoder_out = decoder_out.squeeze(1) + + sorted_ans = [h[context_size:] for h in hyps] + ans = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + logging.info(vars(args)) + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + model = torch.jit.load(args.nn_model_filename) + + model.eval() + + model.to(device) + + sp = spm.SentencePieceProcessor() + sp.load(args.bpe_model) + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = 16000 + opts.mel_opts.num_bins = 80 + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {args.sound_files}") + waves = read_sound_files( + filenames=args.sound_files, + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence( + features, + batch_first=True, + padding_value=math.log(1e-10), + ) + + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder( + x=features, + x_lens=feature_lengths, + ) + + hyps = greedy_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + s = "\n" + for filename, hyp in zip(args.sound_files, hyps): + words = sp.decode(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained_ctc.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained_ctc.py new file mode 100755 index 000000000..d3343d34a --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/jit_pretrained_ctc.py @@ -0,0 +1,423 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads torchscript models, exported by `torch.jit.script()` +and uses them to decode waves. +You can use the following command to get the exported models: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 \ + --jit 1 + +Usage of this script: + +(1) ctc-decoding +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --bpe-model data/lang_bpe_500/bpe.model \ + --method ctc-decoding \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(2) 1best +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --method 1best \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + + +(3) nbest-rescoring +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method nbest-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + + +(4) whole-lattice-rescoring +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method whole-lattice-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav +""" + +import argparse +import logging +import math +from typing import List + +import k2 +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from ctc_decode import get_decoding_params +from torch.nn.utils.rnn import pad_sequence +from train import get_params + +from icefall.decode import ( + get_lattice, + one_best_decoding, + rescore_with_n_best_list, + rescore_with_whole_lattice, +) +from icefall.utils import get_texts + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--model-filename", + type=str, + required=True, + help="Path to the torchscript model.", + ) + + parser.add_argument( + "--words-file", + type=str, + help="""Path to words.txt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--HLG", + type=str, + help="""Path to HLG.pt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model. + Used only when method is ctc-decoding. + """, + ) + + parser.add_argument( + "--method", + type=str, + default="1best", + help="""Decoding method. + Possible values are: + (0) ctc-decoding - Use CTC decoding. It uses a sentence + piece model, i.e., lang_dir/bpe.model, to convert + word pieces to words. It needs neither a lexicon + nor an n-gram LM. + (1) 1best - Use the best path as decoding output. Only + the transformer encoder output is used for decoding. + We call it HLG decoding. + (2) nbest-rescoring. Extract n paths from the decoding lattice, + rescore them with an LM, the path with + the highest score is the decoding result. + We call it HLG decoding + n-gram LM rescoring. + (3) whole-lattice-rescoring - Use an LM to rescore the + decoding lattice and then use 1best to decode the + rescored lattice. + We call it HLG decoding + n-gram LM rescoring. + """, + ) + + parser.add_argument( + "--G", + type=str, + help="""An LM for rescoring. + Used only when method is + whole-lattice-rescoring or nbest-rescoring. + It's usually a 4-gram LM. + """, + ) + + parser.add_argument( + "--num-paths", + type=int, + default=100, + help=""" + Used only when method is attention-decoder. + It specifies the size of n-best list.""", + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=1.3, + help=""" + Used only when method is whole-lattice-rescoring and nbest-rescoring. + It specifies the scale for n-gram LM scores. + (Note: You need to tune it on a dataset.) + """, + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help=""" + Used only when method is nbest-rescoring. + It specifies the scale for lattice.scores when + extracting n-best lists. A smaller value results in + more unique number of paths with the risk of missing + the best path. + """, + ) + + parser.add_argument( + "--num-classes", + type=int, + default=500, + help=""" + Vocab size in the BPE model. + """, + ) + + parser.add_argument( + "--sample-rate", + type=int, + default=16000, + help="The sample rate of the input sound file", + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float = 16000 +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert ( + sample_rate == expected_sample_rate + ), f"Expected sample rate: {expected_sample_rate}. Given: {sample_rate}" + # We use only the first channel + ans.append(wave[0]) + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + + params = get_params() + # add decoding params + params.update(get_decoding_params()) + params.update(vars(args)) + + logging.info(f"{params}") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + model = torch.jit.load(args.model_filename) + model.to(device) + model.eval() + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = params.sample_rate + opts.mel_opts.num_bins = params.feature_dim + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {params.sound_files}") + waves = read_sound_files( + filenames=params.sound_files, expected_sample_rate=params.sample_rate + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence(features, batch_first=True, padding_value=math.log(1e-10)) + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder( + x=features, + x_lens=feature_lengths, + ) + nnet_output = model.ctc_output(encoder_out) + + batch_size = nnet_output.shape[0] + supervision_segments = torch.tensor( + [[i, 0, nnet_output.shape[1]] for i in range(batch_size)], + dtype=torch.int32, + ) + + if params.method == "ctc-decoding": + logging.info("Use CTC decoding") + bpe_model = spm.SentencePieceProcessor() + bpe_model.load(params.bpe_model) + max_token_id = params.num_classes - 1 + + H = k2.ctc_topo( + max_token=max_token_id, + modified=False, + device=device, + ) + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=H, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + token_ids = get_texts(best_path) + hyps = bpe_model.decode(token_ids) + hyps = [s.split() for s in hyps] + elif params.method in [ + "1best", + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading HLG from {params.HLG}") + HLG = k2.Fsa.from_dict(torch.load(params.HLG, map_location="cpu")) + HLG = HLG.to(device) + if not hasattr(HLG, "lm_scores"): + # For whole-lattice-rescoring and attention-decoder + HLG.lm_scores = HLG.scores.clone() + + if params.method in [ + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading G from {params.G}") + G = k2.Fsa.from_dict(torch.load(params.G, map_location="cpu")) + G = G.to(device) + if params.method == "whole-lattice-rescoring": + # Add epsilon self-loops to G as we will compose + # it with the whole lattice later + G = k2.add_epsilon_self_loops(G) + G = k2.arc_sort(G) + + # G.lm_scores is used to replace HLG.lm_scores during + # LM rescoring. + G.lm_scores = G.scores.clone() + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=HLG, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + if params.method == "1best": + logging.info("Use HLG decoding") + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + if params.method == "nbest-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_n_best_list( + lattice=lattice, + G=G, + num_paths=params.num_paths, + lm_scale_list=[params.ngram_lm_scale], + nbest_scale=params.nbest_scale, + ) + best_path = next(iter(best_path_dict.values())) + elif params.method == "whole-lattice-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_whole_lattice( + lattice=lattice, + G_with_epsilon_loops=G, + lm_scale_list=[params.ngram_lm_scale], + ) + best_path = next(iter(best_path_dict.values())) + + hyps = get_texts(best_path) + word_sym_table = k2.SymbolTable.from_file(params.words_file) + hyps = [[word_sym_table[i] for i in ids] for ids in hyps] + else: + raise ValueError(f"Unsupported decoding method: {params.method}") + + s = "\n" + for filename, hyp in zip(params.sound_files, hyps): + words = " ".join(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/joiner.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/joiner.py new file mode 100755 index 000000000..3ddac2cf2 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/joiner.py @@ -0,0 +1,65 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import torch +import torch.nn as nn + + +class Joiner(nn.Module): + def __init__( + self, + encoder_dim: int, + decoder_dim: int, + joiner_dim: int, + vocab_size: int, + ): + super().__init__() + + self.encoder_proj = nn.Linear(encoder_dim, joiner_dim) + self.decoder_proj = nn.Linear(decoder_dim, joiner_dim) + self.output_linear = nn.Linear(joiner_dim, vocab_size) + + def forward( + self, + encoder_out: torch.Tensor, + decoder_out: torch.Tensor, + project_input: bool = True, + ) -> torch.Tensor: + """ + Args: + encoder_out: + Output from the encoder. Its shape is (N, T, s_range, C). + decoder_out: + Output from the decoder. Its shape is (N, T, s_range, C). + project_input: + If true, apply input projections encoder_proj and decoder_proj. + If this is false, it is the user's responsibility to do this + manually. + Returns: + Return a tensor of shape (N, T, s_range, C). + """ + assert encoder_out.ndim == decoder_out.ndim + assert encoder_out.ndim in (2, 4) + assert encoder_out.shape[:-1] == decoder_out.shape[:-1] + + if project_input: + logit = self.encoder_proj(encoder_out) + self.decoder_proj(decoder_out) + else: + logit = encoder_out + decoder_out + + logit = self.output_linear(torch.tanh(logit)) + + return logit diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/model.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/model.py new file mode 100755 index 000000000..f64abc601 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/model.py @@ -0,0 +1,266 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang, Wei Kang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from typing import Tuple +import logging + +import k2 +import torch +import torch.nn as nn +from encoder_interface import EncoderInterface + +from icefall.utils import add_sos + + +class Transducer(nn.Module): + """It implements https://arxiv.org/pdf/1211.3711.pdf + "Sequence Transduction with Recurrent Neural Networks" + """ + + def __init__( + self, + encoder: EncoderInterface, + decoder: nn.Module, + joiner: nn.Module, + encoder_dim: int, + decoder_dim: int, + joiner_dim: int, + vocab_size: int, + ): + """ + Args: + encoder: + It is the transcription network in the paper. Its accepts + two inputs: `x` of (N, T, encoder_dim) and `x_lens` of shape (N,). + It returns two tensors: `logits` of shape (N, T, encoder_dm) and + `logit_lens` of shape (N,). + decoder: + It is the prediction network in the paper. Its input shape + is (N, U) and its output shape is (N, U, decoder_dim). + It should contain one attribute: `blank_id`. + joiner: + It has two inputs with shapes: (N, T, encoder_dim) and (N, U, decoder_dim). + Its output shape is (N, T, U, vocab_size). Note that its output contains + unnormalized probs, i.e., not processed by log-softmax. + """ + super().__init__() + assert isinstance(encoder, EncoderInterface), type(encoder) + assert hasattr(decoder, "blank_id") + + self.encoder = encoder + self.decoder = decoder + self.joiner = joiner + + self.simple_am_proj = nn.Linear( + encoder_dim, + vocab_size, + ) + self.simple_lm_proj = nn.Linear(decoder_dim, vocab_size) + + self.ctc_output = nn.Sequential( + nn.Dropout(p=0.1), + nn.Linear(encoder_dim, vocab_size), + nn.LogSoftmax(dim=-1), + ) + + def forward( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + y: k2.RaggedTensor, + prune_range: int = 5, + am_scale: float = 0.0, + lm_scale: float = 0.0, + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """ + Args: + x: + A 3-D tensor of shape (N, T, C). + x_lens: + A 1-D tensor of shape (N,). It contains the number of frames in `x` + before padding. + y: + A ragged tensor with 2 axes [utt][label]. It contains labels of each + utterance. + prune_range: + The prune range for rnnt loss, it means how many symbols(context) + we are considering for each frame to compute the loss. + am_scale: + The scale to smooth the loss with am (output of encoder network) + part + lm_scale: + The scale to smooth the loss with lm (output of predictor network) + part + Returns: + Return a tuple containing simple loss, pruned loss, and ctc-output. + + Note: + Regarding am_scale & lm_scale, it will make the loss-function one of + the form: + lm_scale * lm_probs + am_scale * am_probs + + (1-lm_scale-am_scale) * combined_probs + """ + assert x.ndim == 2 or x.ndim == 3, x.shape + assert x_lens.ndim == 1, x_lens.shape + assert y.num_axes == 2, y.num_axes + + assert x.size(0) == x_lens.size(0) == y.dim0 + + encoder_out, x_lens = self.encoder(x, x_lens) + assert torch.all(x_lens > 0) + + # compute ctc log-probs + ctc_output = self.ctc_output(encoder_out) + + # Now for the decoder, i.e., the prediction network + row_splits = y.shape.row_splits(1) + y_lens = row_splits[1:] - row_splits[:-1] + + blank_id = self.decoder.blank_id + sos_y = add_sos(y, sos_id=blank_id) + + # sos_y_padded: [B, S + 1], start with SOS. + sos_y_padded = sos_y.pad(mode="constant", padding_value=blank_id) + + # decoder_out: [B, S + 1, decoder_dim] + decoder_out = self.decoder(sos_y_padded) + + # Note: y does not start with SOS + # y_padded : [B, S] + y_padded = y.pad(mode="constant", padding_value=0) + + y_padded = y_padded.to(torch.int64) + boundary = torch.zeros((x.size(0), 4), dtype=torch.int64, device=x.device) + boundary[:, 2] = y_lens + boundary[:, 3] = x_lens + + entropy_minimize = True + if entropy_minimize: + with torch.no_grad(): + cos = [] + self_tar_lens = torch.zeros(x.size(0)).int() + max_len = 0 + for bidx, co in enumerate(ctc_output): + co = co.argmax(-1) + blk = torch.nonzero(co) + co = co[blk] + cos.append(co.unique_consecutive()) + self_tar_lens[bidx] += len(co) + if max_len < len(co): + max_len = len(co) + + boundary_ = torch.zeros((x.size(0), 4), dtype=torch.int64, device=x.device) + boundary_[:, 2] = self_tar_lens + boundary_[:, 3] = x_lens + + self_target = torch.zeros(len(cos), max_len).int() + for bidx, co in enumerate(cos): + self_target[bidx, :len(co)] = co + + lm = self.simple_lm_proj(decoder_out) + am = self.simple_am_proj(encoder_out) + + with torch.cuda.amp.autocast(enabled=False): + simple_loss, (px_grad, py_grad) = k2.rnnt_loss_smoothed( + lm=lm.float(), + am=am.float(), + symbols=y_padded, + termination_symbol=blank_id, + lm_only_scale=lm_scale, + am_only_scale=am_scale, + boundary=boundary, + reduction="sum", + return_grad=True, + ) + + # if entropy_minimize: + # simple_loss_, (px_grad_, py_grad_) = k2.rnnt_loss_smoothed( + # lm=lm.float(), + # am=am.float(), + # symbols=self_target, + # termination_symbol=blank_id, + # lm_only_scale=lm_scale, + # am_only_scale=am_scale, + # boundary=boundary_, + # reduction="sum", + # return_grad=True, + # ) + # simple_loss += simple_loss_ + + # ranges : [B, T, prune_range] + ranges = k2.get_rnnt_prune_ranges( + px_grad=px_grad, + py_grad=py_grad, + boundary=boundary, + s_range=prune_range, + ) + + # am_pruned : [B, T, prune_range, encoder_dim] + # lm_pruned : [B, T, prune_range, decoder_dim] + am_pruned, lm_pruned = k2.do_rnnt_pruning( + am=self.joiner.encoder_proj(encoder_out), + lm=self.joiner.decoder_proj(decoder_out), + ranges=ranges, + ) + + # logits : [B, T, prune_range, vocab_size] + + # project_input=False since we applied the decoder's input projections + # prior to do_rnnt_pruning (this is an optimization for speed). + logits = self.joiner(am_pruned, lm_pruned, project_input=False) + + with torch.cuda.amp.autocast(enabled=False): + pruned_loss = k2.rnnt_loss_pruned( + logits=logits.float(), + symbols=y_padded, + ranges=ranges, + termination_symbol=blank_id, + boundary=boundary, + reduction="sum", + ) + # if entropy_minimize: + # pruned_loss = k2.rnnt_loss_pruned( + # logits=logits.float(), + # symbols=self_target, + # ranges=ranges, + # termination_symbol=blank_id, + # boundary=boundary, + # reduction="sum", + # ) + # pruned_loss += pruned_loss_ + + return (simple_loss, pruned_loss, ctc_output) + + def decode( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + y: k2.RaggedTensor, + sp, + ): + from beam_search import greedy_search_batch + + encoder_out, x_lens = self.encoder(x, x_lens) + + hyps = [] + hyp_tokens = greedy_search_batch(self, encoder_out, x_lens) + + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + + return hyps + diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/nets_utils.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/nets_utils.py new file mode 100755 index 000000000..08e7f2098 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/nets_utils.py @@ -0,0 +1,503 @@ +# -*- coding: utf-8 -*- + +"""Network related utility tools.""" + +import logging +from typing import Dict + +import numpy as np +import torch + + +def to_device(m, x): + """Send tensor into the device of the module. + + Args: + m (torch.nn.Module): Torch module. + x (Tensor): Torch tensor. + + Returns: + Tensor: Torch tensor located in the same place as torch module. + + """ + if isinstance(m, torch.nn.Module): + device = next(m.parameters()).device + elif isinstance(m, torch.Tensor): + device = m.device + else: + raise TypeError( + "Expected torch.nn.Module or torch.tensor, " f"bot got: {type(m)}" + ) + return x.to(device) + + +def pad_list(xs, pad_value): + """Perform padding for the list of tensors. + + Args: + xs (List): List of Tensors [(T_1, `*`), (T_2, `*`), ..., (T_B, `*`)]. + pad_value (float): Value for padding. + + Returns: + Tensor: Padded tensor (B, Tmax, `*`). + + Examples: + >>> x = [torch.ones(4), torch.ones(2), torch.ones(1)] + >>> x + [tensor([1., 1., 1., 1.]), tensor([1., 1.]), tensor([1.])] + >>> pad_list(x, 0) + tensor([[1., 1., 1., 1.], + [1., 1., 0., 0.], + [1., 0., 0., 0.]]) + + """ + n_batch = len(xs) + max_len = max(x.size(0) for x in xs) + pad = xs[0].new(n_batch, max_len, *xs[0].size()[1:]).fill_(pad_value) + + for i in range(n_batch): + pad[i, : xs[i].size(0)] = xs[i] + + return pad + + +def make_pad_mask(lengths, xs=None, length_dim=-1, maxlen=None): + """Make mask tensor containing indices of padded part. + + Args: + lengths (LongTensor or List): Batch of lengths (B,). + xs (Tensor, optional): The reference tensor. + If set, masks will be the same shape as this tensor. + length_dim (int, optional): Dimension indicator of the above tensor. + See the example. + + Returns: + Tensor: Mask tensor containing indices of padded part. + dtype=torch.uint8 in PyTorch 1.2- + dtype=torch.bool in PyTorch 1.2+ (including 1.2) + + Examples: + With only lengths. + + >>> lengths = [5, 3, 2] + >>> make_pad_mask(lengths) + masks = [[0, 0, 0, 0 ,0], + [0, 0, 0, 1, 1], + [0, 0, 1, 1, 1]] + + With the reference tensor. + + >>> xs = torch.zeros((3, 2, 4)) + >>> make_pad_mask(lengths, xs) + tensor([[[0, 0, 0, 0], + [0, 0, 0, 0]], + [[0, 0, 0, 1], + [0, 0, 0, 1]], + [[0, 0, 1, 1], + [0, 0, 1, 1]]], dtype=torch.uint8) + >>> xs = torch.zeros((3, 2, 6)) + >>> make_pad_mask(lengths, xs) + tensor([[[0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1]], + [[0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1]], + [[0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1]]], dtype=torch.uint8) + + With the reference tensor and dimension indicator. + + >>> xs = torch.zeros((3, 6, 6)) + >>> make_pad_mask(lengths, xs, 1) + tensor([[[0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [1, 1, 1, 1, 1, 1]], + [[0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1]], + [[0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1]]], dtype=torch.uint8) + >>> make_pad_mask(lengths, xs, 2) + tensor([[[0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1]], + [[0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1]], + [[0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1]]], dtype=torch.uint8) + + """ + if length_dim == 0: + raise ValueError("length_dim cannot be 0: {}".format(length_dim)) + + if not isinstance(lengths, list): + lengths = lengths.long().tolist() + + bs = int(len(lengths)) + if maxlen is None: + if xs is None: + maxlen = int(max(lengths)) + else: + maxlen = xs.size(length_dim) + else: + assert xs is None + assert maxlen >= int(max(lengths)) + + seq_range = torch.arange(0, maxlen, dtype=torch.int64) + seq_range_expand = seq_range.unsqueeze(0).expand(bs, maxlen) + seq_length_expand = seq_range_expand.new(lengths).unsqueeze(-1) + mask = seq_range_expand >= seq_length_expand + + if xs is not None: + assert xs.size(0) == bs, (xs.size(0), bs) + + if length_dim < 0: + length_dim = xs.dim() + length_dim + # ind = (:, None, ..., None, :, , None, ..., None) + ind = tuple( + slice(None) if i in (0, length_dim) else None for i in range(xs.dim()) + ) + mask = mask[ind].expand_as(xs).to(xs.device) + return mask + + +def make_non_pad_mask(lengths, xs=None, length_dim=-1): + """Make mask tensor containing indices of non-padded part. + + Args: + lengths (LongTensor or List): Batch of lengths (B,). + xs (Tensor, optional): The reference tensor. + If set, masks will be the same shape as this tensor. + length_dim (int, optional): Dimension indicator of the above tensor. + See the example. + + Returns: + ByteTensor: mask tensor containing indices of padded part. + dtype=torch.uint8 in PyTorch 1.2- + dtype=torch.bool in PyTorch 1.2+ (including 1.2) + + Examples: + With only lengths. + + >>> lengths = [5, 3, 2] + >>> make_non_pad_mask(lengths) + masks = [[1, 1, 1, 1 ,1], + [1, 1, 1, 0, 0], + [1, 1, 0, 0, 0]] + + With the reference tensor. + + >>> xs = torch.zeros((3, 2, 4)) + >>> make_non_pad_mask(lengths, xs) + tensor([[[1, 1, 1, 1], + [1, 1, 1, 1]], + [[1, 1, 1, 0], + [1, 1, 1, 0]], + [[1, 1, 0, 0], + [1, 1, 0, 0]]], dtype=torch.uint8) + >>> xs = torch.zeros((3, 2, 6)) + >>> make_non_pad_mask(lengths, xs) + tensor([[[1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0]], + [[1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0]], + [[1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0]]], dtype=torch.uint8) + + With the reference tensor and dimension indicator. + + >>> xs = torch.zeros((3, 6, 6)) + >>> make_non_pad_mask(lengths, xs, 1) + tensor([[[1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [0, 0, 0, 0, 0, 0]], + [[1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0]], + [[1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0]]], dtype=torch.uint8) + >>> make_non_pad_mask(lengths, xs, 2) + tensor([[[1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0]], + [[1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0]], + [[1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0]]], dtype=torch.uint8) + + """ + return ~make_pad_mask(lengths, xs, length_dim) + + +def mask_by_length(xs, lengths, fill=0): + """Mask tensor according to length. + + Args: + xs (Tensor): Batch of input tensor (B, `*`). + lengths (LongTensor or List): Batch of lengths (B,). + fill (int or float): Value to fill masked part. + + Returns: + Tensor: Batch of masked input tensor (B, `*`). + + Examples: + >>> x = torch.arange(5).repeat(3, 1) + 1 + >>> x + tensor([[1, 2, 3, 4, 5], + [1, 2, 3, 4, 5], + [1, 2, 3, 4, 5]]) + >>> lengths = [5, 3, 2] + >>> mask_by_length(x, lengths) + tensor([[1, 2, 3, 4, 5], + [1, 2, 3, 0, 0], + [1, 2, 0, 0, 0]]) + + """ + assert xs.size(0) == len(lengths) + ret = xs.data.new(*xs.size()).fill_(fill) + for i, l in enumerate(lengths): + ret[i, :l] = xs[i, :l] + return ret + + +def th_accuracy(pad_outputs, pad_targets, ignore_label): + """Calculate accuracy. + + Args: + pad_outputs (Tensor): Prediction tensors (B * Lmax, D). + pad_targets (LongTensor): Target label tensors (B, Lmax, D). + ignore_label (int): Ignore label id. + + Returns: + float: Accuracy value (0.0 - 1.0). + + """ + pad_pred = pad_outputs.view( + pad_targets.size(0), pad_targets.size(1), pad_outputs.size(1) + ).argmax(2) + mask = pad_targets != ignore_label + numerator = torch.sum( + pad_pred.masked_select(mask) == pad_targets.masked_select(mask) + ) + denominator = torch.sum(mask) + return float(numerator) / float(denominator) + + +def to_torch_tensor(x): + """Change to torch.Tensor or ComplexTensor from numpy.ndarray. + + Args: + x: Inputs. It should be one of numpy.ndarray, Tensor, ComplexTensor, and dict. + + Returns: + Tensor or ComplexTensor: Type converted inputs. + + Examples: + >>> xs = np.ones(3, dtype=np.float32) + >>> xs = to_torch_tensor(xs) + tensor([1., 1., 1.]) + >>> xs = torch.ones(3, 4, 5) + >>> assert to_torch_tensor(xs) is xs + >>> xs = {'real': xs, 'imag': xs} + >>> to_torch_tensor(xs) + ComplexTensor( + Real: + tensor([1., 1., 1.]) + Imag; + tensor([1., 1., 1.]) + ) + + """ + # If numpy, change to torch tensor + if isinstance(x, np.ndarray): + if x.dtype.kind == "c": + # Dynamically importing because torch_complex requires python3 + from torch_complex.tensor import ComplexTensor + + return ComplexTensor(x) + else: + return torch.from_numpy(x) + + # If {'real': ..., 'imag': ...}, convert to ComplexTensor + elif isinstance(x, dict): + # Dynamically importing because torch_complex requires python3 + from torch_complex.tensor import ComplexTensor + + if "real" not in x or "imag" not in x: + raise ValueError("has 'real' and 'imag' keys: {}".format(list(x))) + # Relative importing because of using python3 syntax + return ComplexTensor(x["real"], x["imag"]) + + # If torch.Tensor, as it is + elif isinstance(x, torch.Tensor): + return x + + else: + error = ( + "x must be numpy.ndarray, torch.Tensor or a dict like " + "{{'real': torch.Tensor, 'imag': torch.Tensor}}, " + "but got {}".format(type(x)) + ) + try: + from torch_complex.tensor import ComplexTensor + except Exception: + # If PY2 + raise ValueError(error) + else: + # If PY3 + if isinstance(x, ComplexTensor): + return x + else: + raise ValueError(error) + + +def get_subsample(train_args, mode, arch): + """Parse the subsampling factors from the args for the specified `mode` and `arch`. + + Args: + train_args: argument Namespace containing options. + mode: one of ('asr', 'mt', 'st') + arch: one of ('rnn', 'rnn-t', 'rnn_mix', 'rnn_mulenc', 'transformer') + + Returns: + np.ndarray / List[np.ndarray]: subsampling factors. + """ + if arch == "transformer": + return np.array([1]) + + elif mode == "mt" and arch == "rnn": + # +1 means input (+1) and layers outputs (train_args.elayer) + subsample = np.ones(train_args.elayers + 1, dtype=np.int64) + logging.warning("Subsampling is not performed for machine translation.") + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + return subsample + + elif ( + (mode == "asr" and arch in ("rnn", "rnn-t")) + or (mode == "mt" and arch == "rnn") + or (mode == "st" and arch == "rnn") + ): + subsample = np.ones(train_args.elayers + 1, dtype=np.int64) + if train_args.etype.endswith("p") and not train_args.etype.startswith("vgg"): + ss = train_args.subsample.split("_") + for j in range(min(train_args.elayers + 1, len(ss))): + subsample[j] = int(ss[j]) + else: + logging.warning( + "Subsampling is not performed for vgg*. " + "It is performed in max pooling layers at CNN." + ) + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + return subsample + + elif mode == "asr" and arch == "rnn_mix": + subsample = np.ones( + train_args.elayers_sd + train_args.elayers + 1, dtype=np.int64 + ) + if train_args.etype.endswith("p") and not train_args.etype.startswith("vgg"): + ss = train_args.subsample.split("_") + for j in range( + min(train_args.elayers_sd + train_args.elayers + 1, len(ss)) + ): + subsample[j] = int(ss[j]) + else: + logging.warning( + "Subsampling is not performed for vgg*. " + "It is performed in max pooling layers at CNN." + ) + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + return subsample + + elif mode == "asr" and arch == "rnn_mulenc": + subsample_list = [] + for idx in range(train_args.num_encs): + subsample = np.ones(train_args.elayers[idx] + 1, dtype=np.int64) + if train_args.etype[idx].endswith("p") and not train_args.etype[ + idx + ].startswith("vgg"): + ss = train_args.subsample[idx].split("_") + for j in range(min(train_args.elayers[idx] + 1, len(ss))): + subsample[j] = int(ss[j]) + else: + logging.warning( + "Encoder %d: Subsampling is not performed for vgg*. " + "It is performed in max pooling layers at CNN.", + idx + 1, + ) + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + subsample_list.append(subsample) + return subsample_list + + else: + raise ValueError("Invalid options: mode={}, arch={}".format(mode, arch)) + + +def rename_state_dict( + old_prefix: str, new_prefix: str, state_dict: Dict[str, torch.Tensor] +): + """Replace keys of old prefix with new prefix in state dict.""" + # need this list not to break the dict iterator + old_keys = [k for k in state_dict if k.startswith(old_prefix)] + if len(old_keys) > 0: + logging.warning(f"Rename: {old_prefix} -> {new_prefix}") + for k in old_keys: + v = state_dict.pop(k) + new_k = k.replace(old_prefix, new_prefix) + state_dict[new_k] = v + + +def get_activation(act): + """Return activation function.""" + # Lazy load to avoid unused import + from espnet.nets.pytorch_backend.conformer.swish import Swish + + activation_funcs = { + "hardtanh": torch.nn.Hardtanh, + "tanh": torch.nn.Tanh, + "relu": torch.nn.ReLU, + "selu": torch.nn.SELU, + "swish": Swish, + } + + return activation_funcs[act]() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/optim.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/optim.py new file mode 100755 index 000000000..ff8fbb32c --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/optim.py @@ -0,0 +1,1061 @@ +# Copyright 2022 Xiaomi Corp. (authors: Daniel Povey) +# +# See ../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import contextlib +import logging +import random +from collections import defaultdict +from typing import List, Optional, Tuple, Union + +import torch +from lhotse.utils import fix_random_seed +from scaling import ActivationBalancer +from torch import Tensor +from torch.optim import Optimizer + + +class BatchedOptimizer(Optimizer): + """ + This class adds to class Optimizer the capability to optimize parameters in batches: + it will stack the parameters and their grads for you so the optimizer can work + on tensors with an extra leading dimension. This is intended for speed with GPUs, + as it reduces the number of kernels launched in the optimizer. + + Args: + params: + """ + + def __init__(self, params, defaults): + super(BatchedOptimizer, self).__init__(params, defaults) + + @contextlib.contextmanager + def batched_params(self, param_group, group_params_names): + """ + This function returns (technically, yields) a list of + of tuples (p, state), where + p is a `fake` parameter that is stacked (over axis 0) from real parameters + that share the same shape, and its gradient is also stacked; + `state` is the state corresponding to this batch of parameters + (it will be physically located in the "state" for one of the real + parameters, the last one that has any particular shape and dtype). + + This function is decorated as a context manager so that it can + write parameters back to their "real" locations. + + The idea is, instead of doing: + + for p in group["params"]: + state = self.state[p] + ... + + you can do: + + with self.batched_params(group["params"]) as batches: + for p, state, p_names in batches: + ... + + + Args: + group: a parameter group, which is a list of parameters; should be + one of self.param_groups. + group_params_names: name for each parameter in group, + which is List[str]. + """ + batches = defaultdict( + list + ) # `batches` maps from tuple (dtype_as_str,*shape) to list of nn.Parameter + batches_names = defaultdict( + list + ) # `batches` maps from tuple (dtype_as_str,*shape) to list of str + + assert len(param_group) == len(group_params_names) + for p, named_p in zip(param_group, group_params_names): + key = (str(p.dtype), *p.shape) + batches[key].append(p) + batches_names[key].append(named_p) + + batches_names_keys = list(batches_names.keys()) + sorted_idx = sorted( + range(len(batches_names)), key=lambda i: batches_names_keys[i] + ) + batches_names = [batches_names[batches_names_keys[idx]] for idx in sorted_idx] + batches = [batches[batches_names_keys[idx]] for idx in sorted_idx] + + stacked_params_dict = dict() + + # turn batches into a list, in deterministic order. + # tuples will contain tuples of (stacked_param, state, stacked_params_names), + # one for each batch in `batches`. + tuples = [] + + for batch, batch_names in zip(batches, batches_names): + p = batch[0] + # we arbitrarily store the state in the + # state corresponding to the 1st parameter in the + # group. class Optimizer will take care of saving/loading state. + state = self.state[p] + p_stacked = torch.stack(batch) + grad = torch.stack( + [torch.zeros_like(p) if p.grad is None else p.grad for p in batch] + ) + p_stacked.grad = grad + stacked_params_dict[key] = p_stacked + tuples.append((p_stacked, state, batch_names)) + + yield tuples # <-- calling code will do the actual optimization here! + + for ((stacked_params, _state, _names), batch) in zip(tuples, batches): + for i, p in enumerate(batch): # batch is list of Parameter + p.copy_(stacked_params[i]) + + +class ScaledAdam(BatchedOptimizer): + """ + Implements 'Scaled Adam', a variant of Adam where we scale each parameter's update + proportional to the norm of that parameter; and also learn the scale of the parameter, + in log space, subject to upper and lower limits (as if we had factored each parameter as + param = underlying_param * log_scale.exp()) + + + Args: + params: The parameters or param_groups to optimize (like other Optimizer subclasses) + lr: The learning rate. We will typically use a learning rate schedule that starts + at 0.03 and decreases over time, i.e. much higher than other common + optimizers. + clipping_scale: (e.g. 2.0) + A scale for gradient-clipping: if specified, the normalized gradients + over the whole model will be clipped to have 2-norm equal to + `clipping_scale` times the median 2-norm over the most recent period + of `clipping_update_period` minibatches. By "normalized gradients", + we mean after multiplying by the rms parameter value for this tensor + [for non-scalars]; this is appropriate because our update is scaled + by this quantity. + betas: beta1,beta2 are momentum constants for regular momentum, and moving sum-sq grad. + Must satisfy 0 < beta <= beta2 < 1. + scalar_lr_scale: A scaling factor on the learning rate, that we use to update the + scale of each parameter tensor and scalar parameters of the mode.. + If each parameter were decomposed + as p * p_scale.exp(), where (p**2).mean().sqrt() == 1.0, scalar_lr_scale + would be a the scaling factor on the learning rate of p_scale. + eps: A general-purpose epsilon to prevent division by zero + param_min_rms: Minimum root-mean-square value of parameter tensor, for purposes of + learning the scale on the parameters (we'll constrain the rms of each non-scalar + parameter tensor to be >= this value) + param_max_rms: Maximum root-mean-square value of parameter tensor, for purposes of + learning the scale on the parameters (we'll constrain the rms of each non-scalar + parameter tensor to be <= this value) + scalar_max: Maximum absolute value for scalar parameters (applicable if your + model has any parameters with numel() == 1). + size_update_period: The periodicity, in steps, with which we update the size (scale) + of the parameter tensor. This is provided to save a little time + in the update. + clipping_update_period: if clipping_scale is specified, this is the period + """ + + def __init__( + self, + params, + lr=3e-02, + clipping_scale=None, + betas=(0.9, 0.98), + scalar_lr_scale=0.1, + eps=1.0e-08, + param_min_rms=1.0e-05, + param_max_rms=3.0, + scalar_max=10.0, + size_update_period=4, + clipping_update_period=100, + parameters_names=None, + show_dominant_parameters=True, + ): + + assert parameters_names is not None, ( + "Please prepare parameters_names," + "which is a List[List[str]]. Each List[str] is for a group" + "and each str is for a parameter" + ) + defaults = dict( + lr=lr, + clipping_scale=clipping_scale, + betas=betas, + scalar_lr_scale=scalar_lr_scale, + eps=eps, + param_min_rms=param_min_rms, + param_max_rms=param_max_rms, + scalar_max=scalar_max, + size_update_period=size_update_period, + clipping_update_period=clipping_update_period, + ) + + super(ScaledAdam, self).__init__(params, defaults) + assert len(self.param_groups) == len(parameters_names) + self.parameters_names = parameters_names + self.show_dominant_parameters = show_dominant_parameters + + def __setstate__(self, state): + super(ScaledAdam, self).__setstate__(state) + + @torch.no_grad() + def step(self, closure=None): + """Performs a single optimization step. + + Arguments: + closure (callable, optional): A closure that reevaluates the model + and returns the loss. + """ + loss = None + if closure is not None: + with torch.enable_grad(): + loss = closure() + + batch = True + + for group, group_params_names in zip(self.param_groups, self.parameters_names): + + with self.batched_params(group["params"], group_params_names) as batches: + + # batches is list of pairs (stacked_param, state). stacked_param is like + # a regular parameter, and will have a .grad, but the 1st dim corresponds to + # a stacking dim, it is not a real dim. + + if ( + len(batches[0][1]) == 0 + ): # if len(first state) == 0: not yet initialized + clipping_scale = 1 + else: + clipping_scale = self._get_clipping_scale(group, batches) + + for p, state, _ in batches: + # Perform optimization step. + # grad is not going to be None, we handled that when creating the batches. + grad = p.grad + if grad.is_sparse: + raise RuntimeError( + "ScaledAdam optimizer does not support sparse gradients" + ) + # State initialization + if len(state) == 0: + self._init_state(group, p, state) + + self._step_one_batch(group, p, state, clipping_scale) + + return loss + + def _init_state(self, group: dict, p: Tensor, state: dict): + """ + Initializes state dict for parameter 'p'. Assumes that dim 0 of tensor p + is actually the batch dimension, corresponding to batched-together + parameters of a given shape. + + + Args: + group: Dict to look up configuration values. + p: The parameter that we are initializing the state for + state: Dict from string to whatever state we are initializing + """ + size_update_period = group["size_update_period"] + + state["step"] = 0 + + kwargs = {"device": p.device, "dtype": p.dtype} + + # 'delta' implements conventional momentum. There are + # several different kinds of update going on, so rather than + # compute "exp_avg" like in Adam, we store and decay a + # parameter-change "delta", which combines all forms of + # update. this is equivalent to how it's done in Adam, + # except for the first few steps. + state["delta"] = torch.zeros_like(p, memory_format=torch.preserve_format) + + batch_size = p.shape[0] + numel = p.numel() // batch_size + numel = p.numel() + + if numel > 1: + # "param_rms" just periodically records the scalar root-mean-square value of + # the parameter tensor. + # it has a shape like (batch_size, 1, 1, 1, 1) + param_rms = (p**2).mean(dim=list(range(1, p.ndim)), keepdim=True).sqrt() + state["param_rms"] = param_rms + + state["scale_exp_avg_sq"] = torch.zeros_like(param_rms) + state["scale_grads"] = torch.zeros( + size_update_period, *param_rms.shape, **kwargs + ) + + # exp_avg_sq is the weighted sum of scaled gradients. as in Adam. + state["exp_avg_sq"] = torch.zeros_like(p, memory_format=torch.preserve_format) + + def _get_clipping_scale( + self, group: dict, tuples: List[Tuple[Tensor, dict, List[str]]] + ) -> float: + """ + Returns a scalar factor <= 1.0 that dictates gradient clipping, i.e. we will scale the gradients + by this amount before applying the rest of the update. + + Args: + group: the parameter group, an item in self.param_groups + tuples: a list of tuples of (param, state, param_names) + where param is a batched set of parameters, + with a .grad (1st dim is batch dim) + and state is the state-dict where optimization parameters are kept. + param_names is a List[str] while each str is name for a parameter + in batched set of parameters "param". + """ + assert len(tuples) >= 1 + clipping_scale = group["clipping_scale"] + (first_p, first_state, _) = tuples[0] + step = first_state["step"] + if clipping_scale is None or step == 0: + # no clipping. return early on step == 0 because the other + # parameters' state won't have been initialized yet. + return 1.0 + clipping_update_period = group["clipping_update_period"] + + tot_sumsq = torch.tensor(0.0, device=first_p.device) + for (p, state, param_names) in tuples: + grad = p.grad + if grad.is_sparse: + raise RuntimeError( + "ScaledAdam optimizer does not support sparse gradients" + ) + if p.numel() == p.shape[0]: # a batch of scalars + tot_sumsq += (grad**2).sum() # sum() to change shape [1] to [] + else: + tot_sumsq += ((grad * state["param_rms"]) ** 2).sum() + + tot_norm = tot_sumsq.sqrt() + if "model_norms" not in first_state: + first_state["model_norms"] = torch.zeros( + clipping_update_period, device=p.device + ) + first_state["model_norms"][step % clipping_update_period] = tot_norm + + if step % clipping_update_period == 0: + # Print some stats. + # We don't reach here if step == 0 because we would have returned + # above. + sorted_norms = first_state["model_norms"].sort()[0].to("cpu") + quartiles = [] + for n in range(0, 5): + index = min( + clipping_update_period - 1, (clipping_update_period // 4) * n + ) + quartiles.append(sorted_norms[index].item()) + + median = quartiles[2] + threshold = clipping_scale * median + first_state["model_norm_threshold"] = threshold + percent_clipped = ( + first_state["num_clipped"] * 100.0 / clipping_update_period + if "num_clipped" in first_state + else 0.0 + ) + first_state["num_clipped"] = 0 + quartiles = " ".join(["%.3e" % x for x in quartiles]) + logging.info( + f"Clipping_scale={clipping_scale}, grad-norm quartiles {quartiles}, " + f"threshold={threshold:.3e}, percent-clipped={percent_clipped:.1f}" + ) + + if step < clipping_update_period: + return 1.0 # We have not yet estimated a norm to clip to. + else: + try: + model_norm_threshold = first_state["model_norm_threshold"] + except KeyError: + logging.info( + "Warning: model_norm_threshold not in state: possibly " + "you changed config when restarting, adding clipping_scale option?" + ) + return 1.0 + ans = min(1.0, (model_norm_threshold / (tot_norm + 1.0e-20)).item()) + if ans < 1.0: + first_state["num_clipped"] += 1 + if ans < 0.1: + logging.warn( + f"Scaling gradients by {ans}, model_norm_threshold={model_norm_threshold}" + ) + if self.show_dominant_parameters: + assert p.shape[0] == len(param_names) + self._show_gradient_dominating_parameter(tuples, tot_sumsq) + return ans + + def _show_gradient_dominating_parameter( + self, tuples: List[Tuple[Tensor, dict, List[str]]], tot_sumsq: Tensor + ): + """ + Show information of parameter wihch dominanting tot_sumsq. + + Args: + tuples: a list of tuples of (param, state, param_names) + where param is a batched set of parameters, + with a .grad (1st dim is batch dim) + and state is the state-dict where optimization parameters are kept. + param_names is a List[str] while each str is name for a parameter + in batched set of parameters "param". + tot_sumsq: sumsq of all parameters. Though it's could be calculated + from tuples, we still pass it to save some time. + """ + all_sumsq_orig = {} + for (p, state, batch_param_names) in tuples: + # p is a stacked batch parameters. + batch_grad = p.grad + if p.numel() == p.shape[0]: # a batch of scalars + batch_sumsq_orig = batch_grad**2 + # Dummpy values used by following `zip` statement. + batch_rms_orig = torch.ones(p.shape[0]) + else: + batch_rms_orig = state["param_rms"] + batch_sumsq_orig = ((batch_grad * batch_rms_orig) ** 2).sum( + dim=list(range(1, batch_grad.ndim)) + ) + + for name, sumsq_orig, rms, grad in zip( + batch_param_names, batch_sumsq_orig, batch_rms_orig, batch_grad + ): + + proportion_orig = sumsq_orig / tot_sumsq + all_sumsq_orig[name] = (proportion_orig, sumsq_orig, rms, grad) + + assert torch.isclose( + sum([value[0] for value in all_sumsq_orig.values()]).cpu(), + torch.tensor(1.0), + ) + sorted_by_proportion = { + k: v + for k, v in sorted( + all_sumsq_orig.items(), key=lambda item: item[1][0], reverse=True + ) + } + dominant_param_name = next(iter(sorted_by_proportion)) + ( + dominant_proportion, + dominant_sumsq, + dominant_rms, + dominant_grad, + ) = sorted_by_proportion[dominant_param_name] + logging.info( + f"Parameter Dominanting tot_sumsq {dominant_param_name}" + f" with proportion {dominant_proportion:.2f}," + f" where dominant_sumsq=(grad_sumsq*orig_rms_sq)" + f"={dominant_sumsq:.3e}," + f" grad_sumsq = {(dominant_grad**2).sum():.3e}," + f" orig_rms_sq={(dominant_rms**2).item():.3e}" + ) + + def _step_one_batch( + self, group: dict, p: Tensor, state: dict, clipping_scale: float + ): + """ + Do the step for one parameter, which is actually going to be a batch of + `real` parameters, with dim 0 as the batch dim. + Args: + group: dict to look up configuration values + p: parameter to update (actually multiple parameters stacked together + as a batch) + state: state-dict for p, to look up the optimizer state + """ + lr = group["lr"] + size_update_period = group["size_update_period"] + beta1 = group["betas"][0] + + grad = p.grad + if clipping_scale != 1.0: + grad = grad * clipping_scale + step = state["step"] + delta = state["delta"] + + delta.mul_(beta1) + batch_size = p.shape[0] + numel = p.numel() // batch_size + if numel > 1: + # Update the size/scale of p, and set param_rms + scale_grads = state["scale_grads"] + scale_grads[step % size_update_period] = (p * grad).sum( + dim=list(range(1, p.ndim)), keepdim=True + ) + if step % size_update_period == size_update_period - 1: + param_rms = state["param_rms"] # shape: (batch_size, 1, 1, ..) + param_rms.copy_( + (p**2).mean(dim=list(range(1, p.ndim)), keepdim=True).sqrt() + ) + if step > 0: + # self._size_update() learns the overall scale on the + # parameter, by shrinking or expanding it. + self._size_update(group, scale_grads, p, state) + + if numel == 1: + # For parameters with 1 element we just use regular Adam. + # Updates delta. + self._step_scalar(group, p, state) + else: + self._step(group, p, state) + + state["step"] = step + 1 + + def _size_update( + self, group: dict, scale_grads: Tensor, p: Tensor, state: dict + ) -> None: + """ + Called only where p.numel() > 1, this updates the scale of the parameter. + If we imagine: p = underlying_param * scale.exp(), and we are doing + gradient descent on underlying param and on scale, this function does the update + on `scale`. + + Args: + group: dict to look up configuration values + scale_grads: a tensor of shape (size_update_period, batch_size, 1, 1,...) containing + grads w.r.t. the scales. + p: The parameter to update + state: The state-dict of p + """ + + param_rms = state["param_rms"] + beta1, beta2 = group["betas"] + size_lr = group["lr"] * group["scalar_lr_scale"] + param_min_rms = group["param_min_rms"] + param_max_rms = group["param_max_rms"] + eps = group["eps"] + step = state["step"] + batch_size = p.shape[0] + + size_update_period = scale_grads.shape[0] + # correct beta2 for the size update period: we will have + # faster decay at this level. + beta2_corr = beta2**size_update_period + + scale_exp_avg_sq = state["scale_exp_avg_sq"] # shape: (batch_size, 1, 1, ..) + scale_exp_avg_sq.mul_(beta2_corr).add_( + (scale_grads**2).mean(dim=0), # mean over dim `size_update_period` + alpha=1 - beta2_corr, + ) # shape is (batch_size, 1, 1, ...) + + # The 1st time we reach here is when size_step == 1. + size_step = (step + 1) // size_update_period + bias_correction2 = 1 - beta2_corr**size_step + # we don't bother with bias_correction1; this will help prevent divergence + # at the start of training. + + denom = scale_exp_avg_sq.sqrt() + eps + + scale_step = ( + -size_lr * (bias_correction2**0.5) * scale_grads.sum(dim=0) / denom + ) + + is_too_small = param_rms < param_min_rms + is_too_large = param_rms > param_max_rms + + # when the param gets too small, just don't shrink it any further. + scale_step.masked_fill_(is_too_small, 0.0) + # when it gets too large, stop it from getting any larger. + scale_step.masked_fill_(is_too_large, -size_lr * size_update_period) + delta = state["delta"] + # the factor of (1-beta1) relates to momentum. + delta.add_(p * scale_step, alpha=(1 - beta1)) + + def _step(self, group: dict, p: Tensor, state: dict): + """ + This function does the core update of self.step(), in the case where the members of + the batch have more than 1 element. + + Args: + group: A dict which will be used to look up configuration values + p: The parameter to be updated + grad: The grad of p + state: The state-dict corresponding to parameter p + + This function modifies p. + """ + grad = p.grad + lr = group["lr"] + beta1, beta2 = group["betas"] + eps = group["eps"] + param_min_rms = group["param_min_rms"] + step = state["step"] + + exp_avg_sq = state["exp_avg_sq"] + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=(1 - beta2)) + + this_step = state["step"] - (state["zero_step"] if "zero_step" in state else 0) + bias_correction2 = 1 - beta2 ** (this_step + 1) + if bias_correction2 < 0.99: + # note: not in-place. + exp_avg_sq = exp_avg_sq * (1.0 / bias_correction2) + + denom = exp_avg_sq.sqrt() + denom += eps + grad = grad / denom + + alpha = -lr * (1 - beta1) * state["param_rms"].clamp(min=param_min_rms) + + delta = state["delta"] + delta.add_(grad * alpha) + p.add_(delta) + + def _step_scalar(self, group: dict, p: Tensor, state: dict): + """ + A simplified form of the core update for scalar tensors, where we cannot get a good + estimate of the parameter rms. + """ + beta1, beta2 = group["betas"] + scalar_max = group["scalar_max"] + eps = group["eps"] + lr = group["lr"] * group["scalar_lr_scale"] + grad = p.grad + + exp_avg_sq = state["exp_avg_sq"] # shape: (batch_size,) + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) + + # bias_correction2 is like in Adam. Don't bother with bias_correction1; + # slower update at the start will help stability anyway. + bias_correction2 = 1 - beta2 ** (state["step"] + 1) + denom = (exp_avg_sq / bias_correction2).sqrt() + eps + + delta = state["delta"] + delta.add_(grad / denom, alpha=-lr * (1 - beta1)) + p.clamp_(min=-scalar_max, max=scalar_max) + p.add_(delta) + + +class LRScheduler(object): + """ + Base-class for learning rate schedulers where the learning-rate depends on both the + batch and the epoch. + """ + + def __init__(self, optimizer: Optimizer, verbose: bool = False): + # Attach optimizer + if not isinstance(optimizer, Optimizer): + raise TypeError("{} is not an Optimizer".format(type(optimizer).__name__)) + self.optimizer = optimizer + self.verbose = verbose + + for group in optimizer.param_groups: + group.setdefault("base_lr", group["lr"]) + + self.base_lrs = [group["base_lr"] for group in optimizer.param_groups] + + self.epoch = 0 + self.batch = 0 + + def state_dict(self): + """Returns the state of the scheduler as a :class:`dict`. + + It contains an entry for every variable in self.__dict__ which + is not the optimizer. + """ + return { + "base_lrs": self.base_lrs, + "epoch": self.epoch, + "batch": self.batch, + } + + def load_state_dict(self, state_dict): + """Loads the schedulers state. + + Args: + state_dict (dict): scheduler state. Should be an object returned + from a call to :meth:`state_dict`. + """ + self.__dict__.update(state_dict) + + def get_last_lr(self) -> List[float]: + """Return last computed learning rate by current scheduler. Will be a list of float.""" + return self._last_lr + + def get_lr(self): + # Compute list of learning rates from self.epoch and self.batch and + # self.base_lrs; this must be overloaded by the user. + # e.g. return [some_formula(self.batch, self.epoch, base_lr) for base_lr in self.base_lrs ] + raise NotImplementedError + + def step_batch(self, batch: Optional[int] = None) -> None: + # Step the batch index, or just set it. If `batch` is specified, it + # must be the batch index from the start of training, i.e. summed over + # all epochs. + # You can call this in any order; if you don't provide 'batch', it should + # of course be called once per batch. + if batch is not None: + self.batch = batch + else: + self.batch = self.batch + 1 + self._set_lrs() + + def step_epoch(self, epoch: Optional[int] = None): + # Step the epoch index, or just set it. If you provide the 'epoch' arg, + # you should call this at the start of the epoch; if you don't provide the 'epoch' + # arg, you should call it at the end of the epoch. + if epoch is not None: + self.epoch = epoch + else: + self.epoch = self.epoch + 1 + self._set_lrs() + + def _set_lrs(self): + values = self.get_lr() + assert len(values) == len(self.optimizer.param_groups) + + for i, data in enumerate(zip(self.optimizer.param_groups, values)): + param_group, lr = data + param_group["lr"] = lr + self.print_lr(self.verbose, i, lr) + self._last_lr = [group["lr"] for group in self.optimizer.param_groups] + + def print_lr(self, is_verbose, group, lr): + """Display the current learning rate.""" + if is_verbose: + logging.info( + f"Epoch={self.epoch}, batch={self.batch}: adjusting learning rate" + f" of group {group} to {lr:.4e}." + ) + + +class Eden(LRScheduler): + """ + Eden scheduler. + The basic formula (before warmup) is: + lr = base_lr * (((batch**2 + lr_batches**2) / lr_batches**2) ** -0.25 * + (((epoch**2 + lr_epochs**2) / lr_epochs**2) ** -0.25)) * warmup + where `warmup` increases from linearly 0.5 to 1 over `warmup_batches` batches + and then stays constant at 1. + + + E.g. suggest base_lr = 0.04 (passed to optimizer) if used with ScaledAdam + + Args: + optimizer: the optimizer to change the learning rates on + lr_batches: the number of batches after which we start significantly + decreasing the learning rate, suggest 5000. + lr_epochs: the number of epochs after which we start significantly + decreasing the learning rate, suggest 6 if you plan to do e.g. + 20 to 40 epochs, but may need smaller number if dataset is huge + and you will do few epochs. + """ + + def __init__( + self, + optimizer: Optimizer, + lr_batches: Union[int, float], + lr_epochs: Union[int, float], + warmup_batches: Union[int, float] = 500.0, + verbose: bool = False, + ): + super(Eden, self).__init__(optimizer, verbose) + self.lr_batches = lr_batches + self.lr_epochs = lr_epochs + self.warmup_batches = warmup_batches + + def get_lr(self): + factor = ( + (self.batch**2 + self.lr_batches**2) / self.lr_batches**2 + ) ** -0.25 * ( + ((self.epoch**2 + self.lr_epochs**2) / self.lr_epochs**2) ** -0.25 + ) + warmup_factor = ( + 1.0 + if self.batch >= self.warmup_batches + else 0.5 + 0.5 * (self.batch / self.warmup_batches) + ) + + return [x * factor * warmup_factor for x in self.base_lrs] + + +def _test_eden(): + m = torch.nn.Linear(100, 100) + optim = ScaledAdam(m.parameters(), lr=0.03) + + scheduler = Eden(optim, lr_batches=100, lr_epochs=2, verbose=True) + + for epoch in range(10): + scheduler.step_epoch(epoch) # sets epoch to `epoch` + + for step in range(20): + x = torch.randn(200, 100).detach() + x.requires_grad = True + y = m(x) + dy = torch.randn(200, 100).detach() + f = (y * dy).sum() + f.backward() + + optim.step() + scheduler.step_batch() + optim.zero_grad() + + logging.info(f"last lr = {scheduler.get_last_lr()}") + logging.info(f"state dict = {scheduler.state_dict()}") + + +# This is included mostly as a baseline for ScaledAdam. +class Eve(Optimizer): + """ + Implements Eve algorithm. This is a modified version of AdamW with a special + way of setting the weight-decay / shrinkage-factor, which is designed to make the + rms of the parameters approach a particular target_rms (default: 0.1). This is + for use with networks with 'scaled' versions of modules (see scaling.py), which + will be close to invariant to the absolute scale on the parameter matrix. + + The original Adam algorithm was proposed in `Adam: A Method for Stochastic Optimization`_. + The AdamW variant was proposed in `Decoupled Weight Decay Regularization`_. + Eve is unpublished so far. + + Arguments: + params (iterable): iterable of parameters to optimize or dicts defining + parameter groups + lr (float, optional): learning rate (default: 1e-3) + betas (Tuple[float, float], optional): coefficients used for computing + running averages of gradient and its square (default: (0.9, 0.999)) + eps (float, optional): term added to the denominator to improve + numerical stability (default: 1e-8) + weight_decay (float, optional): weight decay coefficient (default: 3e-4; + this value means that the weight would decay significantly after + about 3k minibatches. Is not multiplied by learning rate, but + is conditional on RMS-value of parameter being > target_rms. + target_rms (float, optional): target root-mean-square value of + parameters, if they fall below this we will stop applying weight decay. + + + .. _Adam: A Method for Stochastic Optimization: + https://arxiv.org/abs/1412.6980 + .. _Decoupled Weight Decay Regularization: + https://arxiv.org/abs/1711.05101 + .. _On the Convergence of Adam and Beyond: + https://openreview.net/forum?id=ryQu7f-RZ + """ + + def __init__( + self, + params, + lr=1e-3, + betas=(0.9, 0.98), + eps=1e-8, + weight_decay=1e-3, + target_rms=0.1, + ): + if not 0.0 <= lr: + raise ValueError("Invalid learning rate: {}".format(lr)) + if not 0.0 <= eps: + raise ValueError("Invalid epsilon value: {}".format(eps)) + if not 0.0 <= betas[0] < 1.0: + raise ValueError("Invalid beta parameter at index 0: {}".format(betas[0])) + if not 0.0 <= betas[1] < 1.0: + raise ValueError("Invalid beta parameter at index 1: {}".format(betas[1])) + if not 0 <= weight_decay <= 0.1: + raise ValueError("Invalid weight_decay value: {}".format(weight_decay)) + if not 0 < target_rms <= 10.0: + raise ValueError("Invalid target_rms value: {}".format(target_rms)) + defaults = dict( + lr=lr, + betas=betas, + eps=eps, + weight_decay=weight_decay, + target_rms=target_rms, + ) + super(Eve, self).__init__(params, defaults) + + def __setstate__(self, state): + super(Eve, self).__setstate__(state) + + @torch.no_grad() + def step(self, closure=None): + """Performs a single optimization step. + + Arguments: + closure (callable, optional): A closure that reevaluates the model + and returns the loss. + """ + loss = None + if closure is not None: + with torch.enable_grad(): + loss = closure() + + for group in self.param_groups: + for p in group["params"]: + if p.grad is None: + continue + + # Perform optimization step + grad = p.grad + if grad.is_sparse: + raise RuntimeError("AdamW does not support sparse gradients") + + state = self.state[p] + + # State initialization + if len(state) == 0: + state["step"] = 0 + # Exponential moving average of gradient values + state["exp_avg"] = torch.zeros_like( + p, memory_format=torch.preserve_format + ) + # Exponential moving average of squared gradient values + state["exp_avg_sq"] = torch.zeros_like( + p, memory_format=torch.preserve_format + ) + + exp_avg, exp_avg_sq = state["exp_avg"], state["exp_avg_sq"] + + beta1, beta2 = group["betas"] + + state["step"] += 1 + bias_correction1 = 1 - beta1 ** state["step"] + bias_correction2 = 1 - beta2 ** state["step"] + + # Decay the first and second moment running average coefficient + exp_avg.mul_(beta1).add_(grad, alpha=1 - beta1) + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) + denom = (exp_avg_sq.sqrt() * (bias_correction2**-0.5)).add_( + group["eps"] + ) + + step_size = group["lr"] / bias_correction1 + target_rms = group["target_rms"] + weight_decay = group["weight_decay"] + + if p.numel() > 1: + # avoid applying this weight-decay on "scaling factors" + # (which are scalar). + is_above_target_rms = p.norm() > (target_rms * (p.numel() ** 0.5)) + p.mul_(1 - (weight_decay * is_above_target_rms)) + + p.addcdiv_(exp_avg, denom, value=-step_size) + + if random.random() < 0.0005: + step = (exp_avg / denom) * step_size + logging.info( + f"Delta rms = {(step**2).mean().item()}, shape = {step.shape}" + ) + + return loss + + +def _test_scaled_adam(hidden_dim: int): + import timeit + + from scaling import ScaledLinear + + E = 100 + B = 4 + T = 2 + logging.info("in test_eve_cain") + # device = torch.device('cuda') + device = torch.device("cpu") + dtype = torch.float32 + + fix_random_seed(42) + # these input_magnitudes and output_magnitudes are to test that + # Abel is working as we expect and is able to adjust scales of + # different dims differently. + input_magnitudes = (1.0 * torch.randn(E, dtype=dtype, device=device)).exp() + output_magnitudes = (1.0 * torch.randn(E, dtype=dtype, device=device)).exp() + + for iter in [1, 0]: + fix_random_seed(42) + Linear = torch.nn.Linear if iter == 0 else ScaledLinear + + m = torch.nn.Sequential( + Linear(E, hidden_dim), + torch.nn.PReLU(), + Linear(hidden_dim, hidden_dim), + torch.nn.PReLU(), + Linear(hidden_dim, E), + ).to(device) + + train_pairs = [ + ( + 100.0 + * torch.randn(B, T, E, device=device, dtype=dtype) + * input_magnitudes, + torch.randn(B, T, E, device=device, dtype=dtype) * output_magnitudes, + ) + for _ in range(20) + ] + + if iter == 0: + optim = Eve(m.parameters(), lr=0.003) + elif iter == 1: + optim = ScaledAdam(m.parameters(), lr=0.03, clipping_scale=2.0) + scheduler = Eden(optim, lr_batches=200, lr_epochs=5, verbose=False) + + start = timeit.default_timer() + avg_loss = 0.0 + for epoch in range(180): + scheduler.step_epoch() + # if epoch == 100 and iter in [2,3]: + # optim.reset_speedup() # check it doesn't crash. + + # if epoch == 130: + # opts = diagnostics.TensorDiagnosticOptions( + # 2 ** 22 + # ) # allow 4 megabytes per sub-module + # diagnostic = diagnostics.attach_diagnostics(m, opts) + + for n, (x, y) in enumerate(train_pairs): + y_out = m(x) + loss = ((y_out - y) ** 2).mean() * 100.0 + if epoch == 0 and n == 0: + avg_loss = loss.item() + else: + avg_loss = 0.98 * avg_loss + 0.02 * loss.item() + if n == 0 and epoch % 5 == 0: + # norm1 = '%.2e' % (m[0].weight**2).mean().sqrt().item() + # norm1b = '%.2e' % (m[0].bias**2).mean().sqrt().item() + # norm2 = '%.2e' % (m[2].weight**2).mean().sqrt().item() + # norm2b = '%.2e' % (m[2].bias**2).mean().sqrt().item() + # scale1 = '%.2e' % (m[0].weight_scale.exp().item()) + # scale1b = '%.2e' % (m[0].bias_scale.exp().item()) + # scale2 = '%.2e' % (m[2].weight_scale.exp().item()) + # scale2b = '%.2e' % (m[2].bias_scale.exp().item()) + lr = scheduler.get_last_lr()[0] + logging.info( + f"Iter {iter}, epoch {epoch}, batch {n}, avg_loss {avg_loss:.4g}, lr={lr:.4e}" + ) # , norms={norm1,norm1b,norm2,norm2b}") # scales={scale1,scale1b,scale2,scale2b} + loss.log().backward() + optim.step() + optim.zero_grad() + scheduler.step_batch() + + # diagnostic.print_diagnostics() + + stop = timeit.default_timer() + logging.info(f"Iter={iter}, Time taken: {stop - start}") + + logging.info(f"last lr = {scheduler.get_last_lr()}") + # logging.info("state dict = ", scheduler.state_dict()) + # logging.info("optim state_dict = ", optim.state_dict()) + logging.info(f"input_magnitudes = {input_magnitudes}") + logging.info(f"output_magnitudes = {output_magnitudes}") + + +if __name__ == "__main__": + torch.set_num_threads(1) + torch.set_num_interop_threads(1) + logging.getLogger().setLevel(logging.INFO) + import subprocess + + s = subprocess.check_output( + "git status -uno .; git log -1; git diff HEAD .", shell=True + ) + logging.info(s) + import sys + + if len(sys.argv) > 1: + hidden_dim = int(sys.argv[1]) + else: + hidden_dim = 200 + + _test_scaled_adam(hidden_dim) + _test_eden() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained.py new file mode 100755 index 000000000..2f1b1a49f --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained.py @@ -0,0 +1,353 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads a checkpoint and uses it to decode waves. +You can generate the checkpoint with the following command: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 + +Usage of this script: + +(1) greedy search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method greedy_search \ + /path/to/foo.wav \ + /path/to/bar.wav + +(2) beam search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method beam_search \ + --beam-size 4 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(3) modified beam search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method modified_beam_search \ + --beam-size 4 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(4) fast beam search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method fast_beam_search \ + --beam-size 4 \ + /path/to/foo.wav \ + /path/to/bar.wav + +You can also use `./pruned_transducer_stateless7_ctc/exp/epoch-xx.pt`. + +Note: ./pruned_transducer_stateless7_ctc/exp/pretrained.pt is generated by +./pruned_transducer_stateless7_ctc/export.py +""" + + +import argparse +import logging +import math +from typing import List + +import k2 +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from beam_search import ( + beam_search, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from torch.nn.utils.rnn import pad_sequence +from train import add_model_arguments, get_params, get_transducer_model + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--checkpoint", + type=str, + required=True, + help="Path to the checkpoint. " + "The checkpoint is assumed to be saved by " + "icefall.checkpoint.save_checkpoint().", + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model.""", + ) + + parser.add_argument( + "--method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + """, + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + parser.add_argument( + "--sample-rate", + type=int, + default=16000, + help="The sample rate of the input sound file", + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=4, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --method is fast_beam_search""", + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=4, + help="""Used only when --method is fast_beam_search""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=8, + help="""Used only when --method is fast_beam_search""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. Used only when + --method is greedy_search. + """, + ) + + add_model_arguments(parser) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert ( + sample_rate == expected_sample_rate + ), f"Expected sample rate: {expected_sample_rate}. Given: {sample_rate}" + # We use only the first channel + ans.append(wave[0]) + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + + params = get_params() + + params.update(vars(args)) + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # is defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + logging.info(f"{params}") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + logging.info("Creating model") + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + checkpoint = torch.load(args.checkpoint, map_location="cpu") + model.load_state_dict(checkpoint["model"], strict=False) + model.to(device) + model.eval() + model.device = device + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = params.sample_rate + opts.mel_opts.num_bins = params.feature_dim + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {params.sound_files}") + waves = read_sound_files( + filenames=params.sound_files, expected_sample_rate=params.sample_rate + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence(features, batch_first=True, padding_value=math.log(1e-10)) + + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder(x=features, x_lens=feature_lengths) + + num_waves = encoder_out.size(0) + hyps = [] + msg = f"Using {params.method}" + if params.method == "beam_search": + msg += f" with beam size {params.beam_size}" + logging.info(msg) + + if params.method == "fast_beam_search": + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + for i in range(num_waves): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError(f"Unsupported method: {params.method}") + + hyps.append(sp.decode(hyp).split()) + + s = "\n" + for filename, hyp in zip(params.sound_files, hyps): + words = " ".join(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained_ctc.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained_ctc.py new file mode 100755 index 000000000..74aef1bc7 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/pretrained_ctc.py @@ -0,0 +1,441 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads torchscript models, exported by `torch.jit.script()` +and uses them to decode waves. +You can use the following command to get the exported models: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 + +Usage of this script: + +(1) ctc-decoding +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model data/lang_bpe_500/bpe.model \ + --method ctc-decoding \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(2) 1best +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --method 1best \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(3) nbest-rescoring +./bruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method nbest-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + + +(4) whole-lattice-rescoring +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method whole-lattice-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav +""" + +import argparse +import logging +import math +from typing import List + +import k2 +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from ctc_decode import get_decoding_params +from torch.nn.utils.rnn import pad_sequence +from train import add_model_arguments, get_params, get_transducer_model + +from icefall.decode import ( + get_lattice, + one_best_decoding, + rescore_with_n_best_list, + rescore_with_whole_lattice, +) +from icefall.utils import get_texts + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--checkpoint", + type=str, + required=True, + help="Path to the checkpoint. " + "The checkpoint is assumed to be saved by " + "icefall.checkpoint.save_checkpoint().", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; " "2 means tri-gram", + ) + + parser.add_argument( + "--words-file", + type=str, + help="""Path to words.txt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--HLG", + type=str, + help="""Path to HLG.pt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model. + Used only when method is ctc-decoding. + """, + ) + + parser.add_argument( + "--method", + type=str, + default="1best", + help="""Decoding method. + Possible values are: + (0) ctc-decoding - Use CTC decoding. It uses a sentence + piece model, i.e., lang_dir/bpe.model, to convert + word pieces to words. It needs neither a lexicon + nor an n-gram LM. + (1) 1best - Use the best path as decoding output. Only + the transformer encoder output is used for decoding. + We call it HLG decoding. + (2) nbest-rescoring. Extract n paths from the decoding lattice, + rescore them with an LM, the path with + the highest score is the decoding result. + We call it HLG decoding + n-gram LM rescoring. + (3) whole-lattice-rescoring - Use an LM to rescore the + decoding lattice and then use 1best to decode the + rescored lattice. + We call it HLG decoding + n-gram LM rescoring. + """, + ) + + parser.add_argument( + "--G", + type=str, + help="""An LM for rescoring. + Used only when method is + whole-lattice-rescoring or nbest-rescoring. + It's usually a 4-gram LM. + """, + ) + + parser.add_argument( + "--num-paths", + type=int, + default=100, + help=""" + Used only when method is attention-decoder. + It specifies the size of n-best list.""", + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=1.3, + help=""" + Used only when method is whole-lattice-rescoring and nbest-rescoring. + It specifies the scale for n-gram LM scores. + (Note: You need to tune it on a dataset.) + """, + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help=""" + Used only when method is nbest-rescoring. + It specifies the scale for lattice.scores when + extracting n-best lists. A smaller value results in + more unique number of paths with the risk of missing + the best path. + """, + ) + + parser.add_argument( + "--num-classes", + type=int, + default=500, + help=""" + Vocab size in the BPE model. + """, + ) + + parser.add_argument( + "--sample-rate", + type=int, + default=16000, + help="The sample rate of the input sound file", + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + add_model_arguments(parser) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float = 16000 +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert sample_rate == expected_sample_rate, ( + f"expected sample rate: {expected_sample_rate}. " f"Given: {sample_rate}" + ) + # We use only the first channel + ans.append(wave[0]) + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + + params = get_params() + # add decoding params + params.update(get_decoding_params()) + params.update(vars(args)) + params.vocab_size = params.num_classes + params.blank_id = 0 + + logging.info(f"{params}") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + logging.info("Creating model") + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + checkpoint = torch.load(args.checkpoint, map_location="cpu") + model.load_state_dict(checkpoint["model"], strict=False) + model.to(device) + model.eval() + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = params.sample_rate + opts.mel_opts.num_bins = params.feature_dim + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {params.sound_files}") + waves = read_sound_files( + filenames=params.sound_files, expected_sample_rate=params.sample_rate + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence(features, batch_first=True, padding_value=math.log(1e-10)) + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder( + x=features, + x_lens=feature_lengths, + ) + nnet_output = model.ctc_output(encoder_out) + + batch_size = nnet_output.shape[0] + supervision_segments = torch.tensor( + [[i, 0, nnet_output.shape[1]] for i in range(batch_size)], + dtype=torch.int32, + ) + + if params.method == "ctc-decoding": + logging.info("Use CTC decoding") + bpe_model = spm.SentencePieceProcessor() + bpe_model.load(params.bpe_model) + max_token_id = params.num_classes - 1 + + H = k2.ctc_topo( + max_token=max_token_id, + modified=False, + device=device, + ) + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=H, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + token_ids = get_texts(best_path) + hyps = bpe_model.decode(token_ids) + hyps = [s.split() for s in hyps] + elif params.method in [ + "1best", + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading HLG from {params.HLG}") + HLG = k2.Fsa.from_dict(torch.load(params.HLG, map_location="cpu")) + HLG = HLG.to(device) + if not hasattr(HLG, "lm_scores"): + # For whole-lattice-rescoring and attention-decoder + HLG.lm_scores = HLG.scores.clone() + + if params.method in [ + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading G from {params.G}") + G = k2.Fsa.from_dict(torch.load(params.G, map_location="cpu")) + G = G.to(device) + if params.method == "whole-lattice-rescoring": + # Add epsilon self-loops to G as we will compose + # it with the whole lattice later + G = k2.add_epsilon_self_loops(G) + G = k2.arc_sort(G) + + # G.lm_scores is used to replace HLG.lm_scores during + # LM rescoring. + G.lm_scores = G.scores.clone() + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=HLG, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + if params.method == "1best": + logging.info("Use HLG decoding") + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + if params.method == "nbest-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_n_best_list( + lattice=lattice, + G=G, + num_paths=params.num_paths, + lm_scale_list=[params.ngram_lm_scale], + nbest_scale=params.nbest_scale, + ) + best_path = next(iter(best_path_dict.values())) + elif params.method == "whole-lattice-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_whole_lattice( + lattice=lattice, + G_with_epsilon_loops=G, + lm_scale_list=[params.ngram_lm_scale], + ) + best_path = next(iter(best_path_dict.values())) + + hyps = get_texts(best_path) + word_sym_table = k2.SymbolTable.from_file(params.words_file) + hyps = [[word_sym_table[i] for i in ids] for ids in hyps] + else: + raise ValueError(f"Unsupported decoding method: {params.method}") + + s = "\n" + for filename, hyp in zip(params.sound_files, hyps): + words = " ".join(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling.py new file mode 100755 index 000000000..6f63e0629 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling.py @@ -0,0 +1,1178 @@ +# Copyright 2022 Xiaomi Corp. (authors: Daniel Povey) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import collections +import logging +import random +from functools import reduce +from itertools import repeat +from typing import Optional, Tuple, Union + +import torch +import torch.nn as nn +import torch.nn.functional as F +from torch import Tensor +from torch.nn import Embedding as ScaledEmbedding + + +class ActivationBalancerFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, + x: Tensor, + scale_factor: Tensor, + sign_factor: Optional[Tensor], + channel_dim: int, + ) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + ctx.channel_dim = channel_dim + xgt0 = x > 0 + if sign_factor is None: + ctx.save_for_backward(xgt0, scale_factor) + else: + ctx.save_for_backward(xgt0, scale_factor, sign_factor) + return x + + @staticmethod + def backward(ctx, x_grad: Tensor) -> Tuple[Tensor, None, None, None]: + if len(ctx.saved_tensors) == 3: + xgt0, scale_factor, sign_factor = ctx.saved_tensors + for _ in range(ctx.channel_dim, x_grad.ndim - 1): + scale_factor = scale_factor.unsqueeze(-1) + sign_factor = sign_factor.unsqueeze(-1) + factor = sign_factor + scale_factor * (xgt0.to(x_grad.dtype) - 0.5) + else: + xgt0, scale_factor = ctx.saved_tensors + for _ in range(ctx.channel_dim, x_grad.ndim - 1): + scale_factor = scale_factor.unsqueeze(-1) + factor = scale_factor * (xgt0.to(x_grad.dtype) - 0.5) + neg_delta_grad = x_grad.abs() * factor + return ( + x_grad - neg_delta_grad, + None, + None, + None, + ) + + +def _compute_scale_factor( + x: Tensor, + channel_dim: int, + min_abs: float, + max_abs: float, + gain_factor: float, + max_factor: float, +) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + sum_dims = [d for d in range(x.ndim) if d != channel_dim] + x_abs_mean = torch.mean(x.abs(), dim=sum_dims).to(torch.float32) + + if min_abs == 0.0: + below_threshold = 0.0 + else: + # below_threshold is 0 if x_abs_mean > min_abs, can be at most max_factor if + # x_abs)_mean , min_abs. + below_threshold = ((min_abs - x_abs_mean) * (gain_factor / min_abs)).clamp( + min=0, max=max_factor + ) + + above_threshold = ((x_abs_mean - max_abs) * (gain_factor / max_abs)).clamp( + min=0, max=max_factor + ) + + return below_threshold - above_threshold + + +def _compute_sign_factor( + x: Tensor, + channel_dim: int, + min_positive: float, + max_positive: float, + gain_factor: float, + max_factor: float, +) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + sum_dims = [d for d in range(x.ndim) if d != channel_dim] + proportion_positive = torch.mean((x > 0).to(torch.float32), dim=sum_dims) + if min_positive == 0.0: + factor1 = 0.0 + else: + # 0 if proportion_positive >= min_positive, else can be + # as large as max_factor. + factor1 = ( + (min_positive - proportion_positive) * (gain_factor / min_positive) + ).clamp_(min=0, max=max_factor) + + if max_positive == 1.0: + factor2 = 0.0 + else: + # 0 if self.proportion_positive <= max_positive, else can be + # as large as -max_factor. + factor2 = ( + (proportion_positive - max_positive) * (gain_factor / (1.0 - max_positive)) + ).clamp_(min=0, max=max_factor) + sign_factor = factor1 - factor2 + # require min_positive != 0 or max_positive != 1: + assert not isinstance(sign_factor, float) + return sign_factor + + +class ActivationScaleBalancerFunction(torch.autograd.Function): + """ + This object is used in class ActivationBalancer when the user specified + min_positive=0, max_positive=1, so there are no constraints on the signs + of the activations and only the absolute value has a constraint. + """ + + @staticmethod + def forward( + ctx, + x: Tensor, + sign_factor: Tensor, + scale_factor: Tensor, + channel_dim: int, + ) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + ctx.channel_dim = channel_dim + xgt0 = x > 0 + ctx.save_for_backward(xgt0, sign_factor, scale_factor) + return x + + @staticmethod + def backward(ctx, x_grad: Tensor) -> Tuple[Tensor, None, None, None]: + xgt0, sign_factor, scale_factor = ctx.saved_tensors + for _ in range(ctx.channel_dim, x_grad.ndim - 1): + sign_factor = sign_factor.unsqueeze(-1) + scale_factor = scale_factor.unsqueeze(-1) + + factor = sign_factor + scale_factor * (xgt0.to(x_grad.dtype) - 0.5) + neg_delta_grad = x_grad.abs() * factor + return ( + x_grad - neg_delta_grad, + None, + None, + None, + ) + + +class RandomClampFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, + x: Tensor, + min: Optional[float], + max: Optional[float], + prob: float, + reflect: float, + ) -> Tensor: + x_clamped = torch.clamp(x, min=min, max=max) + mask = torch.rand_like(x) < prob + ans = torch.where(mask, x_clamped, x) + if x.requires_grad: + ctx.save_for_backward(ans == x) + ctx.reflect = reflect + if reflect != 0.0: + ans = ans * (1.0 + reflect) - (x * reflect) + return ans + + @staticmethod + def backward(ctx, ans_grad: Tensor) -> Tuple[Tensor, None, None, None, None]: + (is_same,) = ctx.saved_tensors + x_grad = ans_grad * is_same.to(ans_grad.dtype) + reflect = ctx.reflect + if reflect != 0.0: + x_grad = x_grad * (1.0 + reflect) - (ans_grad * reflect) + return x_grad, None, None, None, None + + +def random_clamp( + x: Tensor, + min: Optional[float] = None, + max: Optional[float] = None, + prob: float = 0.5, + reflect: float = 0.0, +): + return RandomClampFunction.apply(x, min, max, prob, reflect) + + +def random_cast_to_half(x: Tensor, min_abs: float = 5.0e-06) -> Tensor: + """ + A randomized way of casting a floating point value to half precision. + """ + if x.dtype == torch.float16: + return x + x_abs = x.abs() + is_too_small = x_abs < min_abs + # for elements where is_too_small is true, random_val will contain +-min_abs with + # probability (x.abs() / min_abs), and 0.0 otherwise. [so this preserves expectations, + # for those elements]. + random_val = min_abs * x.sign() * (torch.rand_like(x) * min_abs < x_abs) + return torch.where(is_too_small, random_val, x).to(torch.float16) + + +class RandomGradFunction(torch.autograd.Function): + """ + Does nothing in forward pass; in backward pass, gets rid of very small grads using + randomized approach that preserves expectations (intended to reduce roundoff). + """ + + @staticmethod + def forward(ctx, x: Tensor, min_abs: float) -> Tensor: + ctx.min_abs = min_abs + return x + + @staticmethod + def backward(ctx, ans_grad: Tensor) -> Tuple[Tensor, None]: + if ans_grad.dtype == torch.float16: + return ( + random_cast_to_half(ans_grad.to(torch.float32), min_abs=ctx.min_abs), + None, + ) + else: + return ans_grad, None + + +class RandomGrad(torch.nn.Module): + """ + Gets rid of very small gradients using an expectation-preserving method, intended to increase + accuracy of training when using amp (automatic mixed precision) + """ + + def __init__(self, min_abs: float = 5.0e-06): + super(RandomGrad, self).__init__() + self.min_abs = min_abs + + def forward(self, x: Tensor): + if torch.jit.is_scripting() or not self.training: + return x + else: + return RandomGradFunction.apply(x, self.min_abs) + + +class SoftmaxFunction(torch.autograd.Function): + """ + Tries to handle half-precision derivatives in a randomized way that should + be more accurate for training than the default behavior. + """ + + @staticmethod + def forward(ctx, x: Tensor, dim: int): + ans = x.softmax(dim=dim) + # if x dtype is float16, x.softmax() returns a float32 because + # (presumably) that op does not support float16, and autocast + # is enabled. + if torch.is_autocast_enabled(): + ans = ans.to(torch.float16) + ctx.save_for_backward(ans) + ctx.x_dtype = x.dtype + ctx.dim = dim + return ans + + @staticmethod + def backward(ctx, ans_grad: Tensor): + (ans,) = ctx.saved_tensors + with torch.cuda.amp.autocast(enabled=False): + ans_grad = ans_grad.to(torch.float32) + ans = ans.to(torch.float32) + x_grad = ans_grad * ans + x_grad = x_grad - ans * x_grad.sum(dim=ctx.dim, keepdim=True) + return x_grad, None + + +def softmax(x: Tensor, dim: int): + if torch.jit.is_scripting(): + return x.softmax(dim) + + return SoftmaxFunction.apply(x, dim) + + +class MaxEigLimiterFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, + x: Tensor, + coeffs: Tensor, + direction: Tensor, + channel_dim: int, + grad_scale: float, + ) -> Tensor: + ctx.channel_dim = channel_dim + ctx.grad_scale = grad_scale + ctx.save_for_backward(x.detach(), coeffs.detach(), direction.detach()) + return x + + @staticmethod + def backward(ctx, x_grad, *args): + with torch.enable_grad(): + (x_orig, coeffs, new_direction) = ctx.saved_tensors + x_orig.requires_grad = True + num_channels = x_orig.shape[ctx.channel_dim] + x = x_orig.transpose(ctx.channel_dim, -1).reshape(-1, num_channels) + new_direction.requires_grad = False + x = x - x.mean(dim=0) + x_var = (x**2).mean() + x_residual = x - coeffs * new_direction + x_residual_var = (x_residual**2).mean() + # `variance_proportion` is the proportion of the variance accounted for + # by the top eigen-direction. This is to be minimized. + variance_proportion = (x_var - x_residual_var) / (x_var + 1.0e-20) + variance_proportion.backward() + x_orig_grad = x_orig.grad + x_extra_grad = ( + x_orig.grad + * ctx.grad_scale + * x_grad.norm() + / (x_orig_grad.norm() + 1.0e-20) + ) + return x_grad + x_extra_grad.detach(), None, None, None, None + + +class BasicNorm(torch.nn.Module): + """ + This is intended to be a simpler, and hopefully cheaper, replacement for + LayerNorm. The observation this is based on, is that Transformer-type + networks, especially with pre-norm, sometimes seem to set one of the + feature dimensions to a large constant value (e.g. 50), which "defeats" + the LayerNorm because the output magnitude is then not strongly dependent + on the other (useful) features. Presumably the weight and bias of the + LayerNorm are required to allow it to do this. + + So the idea is to introduce this large constant value as an explicit + parameter, that takes the role of the "eps" in LayerNorm, so the network + doesn't have to do this trick. We make the "eps" learnable. + + Args: + num_channels: the number of channels, e.g. 512. + channel_dim: the axis/dimension corresponding to the channel, + interprted as an offset from the input's ndim if negative. + shis is NOT the num_channels; it should typically be one of + {-2, -1, 0, 1, 2, 3}. + eps: the initial "epsilon" that we add as ballast in: + scale = ((input_vec**2).mean() + epsilon)**-0.5 + Note: our epsilon is actually large, but we keep the name + to indicate the connection with conventional LayerNorm. + learn_eps: if true, we learn epsilon; if false, we keep it + at the initial value. + eps_min: float + eps_max: float + """ + + def __init__( + self, + num_channels: int, + channel_dim: int = -1, # CAUTION: see documentation. + eps: float = 0.25, + learn_eps: bool = True, + eps_min: float = -3.0, + eps_max: float = 3.0, + ) -> None: + super(BasicNorm, self).__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + if learn_eps: + self.eps = nn.Parameter(torch.tensor(eps).log().detach()) + else: + self.register_buffer("eps", torch.tensor(eps).log().detach()) + self.eps_min = eps_min + self.eps_max = eps_max + + def forward(self, x: Tensor) -> Tensor: + assert x.shape[self.channel_dim] == self.num_channels + eps = self.eps + if self.training and random.random() < 0.25: + # with probability 0.25, in training mode, clamp eps between the min + # and max; this will encourage it to learn parameters within the + # allowed range by making parameters that are outside the allowed + # range noisy. + + # gradients to allow the parameter to get back into the allowed + # region if it happens to exit it. + eps = eps.clamp(min=self.eps_min, max=self.eps_max) + scales = ( + torch.mean(x**2, dim=self.channel_dim, keepdim=True) + eps.exp() + ) ** -0.5 + return x * scales + + +def ScaledLinear(*args, initial_scale: float = 1.0, **kwargs) -> nn.Linear: + """ + Behaves like a constructor of a modified version of nn.Linear + that gives an easy way to set the default initial parameter scale. + + Args: + Accepts the standard args and kwargs that nn.Linear accepts + e.g. in_features, out_features, bias=False. + + initial_scale: you can override this if you want to increase + or decrease the initial magnitude of the module's output + (affects the initialization of weight_scale and bias_scale). + Another option, if you want to do something like this, is + to re-initialize the parameters. + """ + ans = nn.Linear(*args, **kwargs) + with torch.no_grad(): + ans.weight[:] *= initial_scale + if ans.bias is not None: + torch.nn.init.uniform_(ans.bias, -0.1 * initial_scale, 0.1 * initial_scale) + return ans + + +def ScaledConv1d(*args, initial_scale: float = 1.0, **kwargs) -> nn.Conv1d: + """ + Behaves like a constructor of a modified version of nn.Conv1d + that gives an easy way to set the default initial parameter scale. + + Args: + Accepts the standard args and kwargs that nn.Linear accepts + e.g. in_features, out_features, bias=False. + + initial_scale: you can override this if you want to increase + or decrease the initial magnitude of the module's output + (affects the initialization of weight_scale and bias_scale). + Another option, if you want to do something like this, is + to re-initialize the parameters. + """ + ans = nn.Conv1d(*args, **kwargs) + with torch.no_grad(): + ans.weight[:] *= initial_scale + if ans.bias is not None: + torch.nn.init.uniform_(ans.bias, -0.1 * initial_scale, 0.1 * initial_scale) + return ans + + +class ActivationBalancer(torch.nn.Module): + """ + Modifies the backpropped derivatives of a function to try to encourage, for + each channel, that it is positive at least a proportion `threshold` of the + time. It does this by multiplying negative derivative values by up to + (1+max_factor), and positive derivative values by up to (1-max_factor), + interpolated from 1 at the threshold to those extremal values when none + of the inputs are positive. + + Args: + num_channels: the number of channels + channel_dim: the dimension/axis corresponding to the channel, e.g. + -1, 0, 1, 2; will be interpreted as an offset from x.ndim if negative. + min_positive: the minimum, per channel, of the proportion of the time + that (x > 0), below which we start to modify the derivatives. + max_positive: the maximum, per channel, of the proportion of the time + that (x > 0), above which we start to modify the derivatives. + max_factor: the maximum factor by which we modify the derivatives for + either the sign constraint or the magnitude constraint; + e.g. with max_factor=0.02, the the derivatives would be multiplied by + values in the range [0.98..1.02]. + sign_gain_factor: determines the 'gain' with which we increase the + change in gradient once the constraints on min_positive and max_positive + are violated. + scale_gain_factor: determines the 'gain' with which we increase the + change in gradient once the constraints on min_abs and max_abs + are violated. + min_abs: the minimum average-absolute-value difference from the mean + value per channel, which we allow, before we start to modify + the derivatives to prevent this. + max_abs: the maximum average-absolute-value difference from the mean + value per channel, which we allow, before we start to modify + the derivatives to prevent this. + min_prob: determines the minimum probability with which we modify the + gradients for the {min,max}_positive and {min,max}_abs constraints, + on each forward(). This is done randomly to prevent all layers + from doing it at the same time. Early in training we may use + higher probabilities than this; it will decay to this value. + """ + + def __init__( + self, + num_channels: int, + channel_dim: int, + min_positive: float = 0.05, + max_positive: float = 0.95, + max_factor: float = 0.04, + sign_gain_factor: float = 0.01, + scale_gain_factor: float = 0.02, + min_abs: float = 0.2, + max_abs: float = 100.0, + min_prob: float = 0.1, + ): + super(ActivationBalancer, self).__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + self.min_positive = min_positive + self.max_positive = max_positive + self.max_factor = max_factor + self.min_abs = min_abs + self.max_abs = max_abs + self.min_prob = min_prob + self.sign_gain_factor = sign_gain_factor + self.scale_gain_factor = scale_gain_factor + + # count measures how many times the forward() function has been called. + # We occasionally sync this to a tensor called `count`, that exists to + # make sure it is synced to disk when we load and save the model. + self.cpu_count = 0 + self.register_buffer("count", torch.tensor(0, dtype=torch.int64)) + + def forward(self, x: Tensor) -> Tensor: + if torch.jit.is_scripting() or not x.requires_grad: + return _no_op(x) + + count = self.cpu_count + self.cpu_count += 1 + + if random.random() < 0.01: + # Occasionally sync self.cpu_count with self.count. + # count affects the decay of 'prob'. don't do this on every iter, + # because syncing with the GPU is slow. + self.cpu_count = max(self.cpu_count, self.count.item()) + self.count.fill_(self.cpu_count) + + # the prob of doing some work exponentially decreases from 0.5 till it hits + # a floor at min_prob (==0.1, by default) + prob = max(self.min_prob, 0.5 ** (1 + (count / 4000.0))) + + if random.random() < prob: + sign_gain_factor = 0.5 + if self.min_positive != 0.0 or self.max_positive != 1.0: + sign_factor = _compute_sign_factor( + x, + self.channel_dim, + self.min_positive, + self.max_positive, + gain_factor=self.sign_gain_factor / prob, + max_factor=self.max_factor, + ) + else: + sign_factor = None + + scale_factor = _compute_scale_factor( + x, + self.channel_dim, + min_abs=self.min_abs, + max_abs=self.max_abs, + gain_factor=self.scale_gain_factor / prob, + max_factor=self.max_factor, + ) + return ActivationBalancerFunction.apply( + x, + scale_factor, + sign_factor, + self.channel_dim, + ) + else: + return _no_op(x) + + +def penalize_abs_values_gt(x: Tensor, limit: float, penalty: float) -> Tensor: + """ + Returns x unmodified, but in backprop will put a penalty for the excess of + the absolute values of elements of x over the limit "limit". E.g. if + limit == 10.0, then if x has any values over 10 it will get a penalty. + + Caution: the value of this penalty will be affected by grad scaling used + in automatic mixed precision training. For this reasons we use this, + it shouldn't really matter, or may even be helpful; we just use this + to disallow really implausible values of scores to be given to softmax. + """ + x_sign = x.sign() + over_limit = (x.abs() - limit) > 0 + # The following is a memory efficient way to penalize the absolute values of + # x that's over the limit. (The memory efficiency comes when you think + # about which items torch needs to cache for the autograd, and which ones it + # can throw away). The numerical value of aux_loss as computed here will + # actually be larger than it should be, by limit * over_limit.sum(), but it + # has the same derivative as the real aux_loss which is penalty * (x.abs() - + # limit).relu(). + aux_loss = penalty * ((x_sign * over_limit).to(torch.int8) * x) + # note: we don't do sum() here on aux)_loss, but it's as if we had done + # sum() due to how with_loss() works. + x = with_loss(x, aux_loss) + # you must use x for something, or this will be ineffective. + return x + + +def _diag(x: Tensor): # like .diag(), but works for tensors with 3 dims. + if x.ndim == 2: + return x.diag() + else: + (batch, dim, dim) = x.shape + x = x.reshape(batch, dim * dim) + x = x[:, :: dim + 1] + assert x.shape == (batch, dim) + return x + + +def _whitening_metric(x: Tensor, num_groups: int): + """ + Computes the "whitening metric", a value which will be 1.0 if all the eigenvalues of + of the centered feature covariance are the same within each group's covariance matrix + and also between groups. + Args: + x: a Tensor of shape (*, num_channels) + num_groups: the number of groups of channels, a number >=1 that divides num_channels + Returns: + Returns a scalar Tensor that will be 1.0 if the data is "perfectly white" and + greater than 1.0 otherwise. + """ + assert x.dtype != torch.float16 + x = x.reshape(-1, x.shape[-1]) + (num_frames, num_channels) = x.shape + assert num_channels % num_groups == 0 + channels_per_group = num_channels // num_groups + x = x.reshape(num_frames, num_groups, channels_per_group).transpose(0, 1) + # x now has shape (num_groups, num_frames, channels_per_group) + # subtract the mean so we use the centered, not uncentered, covariance. + # My experience has been that when we "mess with the gradients" like this, + # it's better not do anything that tries to move the mean around, because + # that can easily cause instability. + x = x - x.mean(dim=1, keepdim=True) + # x_covar: (num_groups, channels_per_group, channels_per_group) + x_covar = torch.matmul(x.transpose(1, 2), x) + x_covar_mean_diag = _diag(x_covar).mean() + # the following expression is what we'd get if we took the matrix product + # of each covariance and measured the mean of its trace, i.e. + # the same as _diag(torch.matmul(x_covar, x_covar)).mean(). + x_covarsq_mean_diag = (x_covar**2).sum() / (num_groups * channels_per_group) + # this metric will be >= 1.0; the larger it is, the less 'white' the data was. + metric = x_covarsq_mean_diag / (x_covar_mean_diag**2 + 1.0e-20) + return metric + + +class WhiteningPenaltyFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, x: Tensor, num_groups: int, whitening_limit: float, grad_scale: float + ) -> Tensor: + ctx.save_for_backward(x) + ctx.num_groups = num_groups + ctx.whitening_limit = whitening_limit + ctx.grad_scale = grad_scale + return x + + @staticmethod + def backward(ctx, x_grad: Tensor): + (x_orig,) = ctx.saved_tensors + with torch.enable_grad(): + with torch.cuda.amp.autocast(enabled=False): + x_detached = x_orig.to(torch.float32).detach() + x_detached.requires_grad = True + + metric = _whitening_metric(x_detached, ctx.num_groups) + + if random.random() < 0.005 or __name__ == "__main__": + logging.info( + f"Whitening: num_groups={ctx.num_groups}, num_channels={x_orig.shape[-1]}, " + f"metric={metric.item():.2f} vs. limit={ctx.whitening_limit}" + ) + + (metric - ctx.whitening_limit).relu().backward() + penalty_grad = x_detached.grad + scale = ctx.grad_scale * ( + x_grad.to(torch.float32).norm() / (penalty_grad.norm() + 1.0e-20) + ) + penalty_grad = penalty_grad * scale + return x_grad + penalty_grad.to(x_grad.dtype), None, None, None + + +class Whiten(nn.Module): + def __init__( + self, + num_groups: int, + whitening_limit: float, + prob: Union[float, Tuple[float, float]], + grad_scale: float, + ): + """ + Args: + num_groups: the number of groups to divide the channel dim into before + whitening. We will attempt to make the feature covariance + within each group, after mean subtraction, as "white" as possible, + while having the same trace across all groups. + whitening_limit: a value greater than 1.0, that dictates how much + freedom we have to violate the constraints. 1.0 would mean perfectly + white, with exactly the same trace across groups; larger values + give more freedom. E.g. 2.0. + prob: the probability with which we apply the gradient modification + (also affects the grad scale). May be supplied as a float, + or as a pair (min_prob, max_prob) + + grad_scale: determines the scale on the gradient term from this object, + relative to the rest of the gradient on the attention weights. + E.g. 0.02 (you may want to use smaller values than this if prob is large) + """ + super(Whiten, self).__init__() + assert num_groups >= 1 + assert whitening_limit >= 1 + assert grad_scale >= 0 + self.num_groups = num_groups + self.whitening_limit = whitening_limit + if isinstance(prob, float): + assert 0 < prob <= 1 + self.prob = prob + else: + (self.min_prob, self.max_prob) = prob + assert 0 < self.min_prob < self.max_prob <= 1 + self.prob = self.max_prob + + self.grad_scale = grad_scale + + def forward(self, x: Tensor) -> Tensor: + """ + In the forward pass, this function just returns the input unmodified. + In the backward pass, it will modify the gradients to ensure that the + distribution in each group has close to (lambda times I) as the covariance + after mean subtraction, with the same lambda across groups. + For whitening_limit > 1, there will be more freedom to violate this + constraint. + + Args: + x: the input of shape (*, num_channels) + + Returns: + x, unmodified. You should make sure + you use the returned value, or the graph will be freed + and nothing will happen in backprop. + """ + if not x.requires_grad or random.random() > self.prob or self.grad_scale == 0: + return _no_op(x) + else: + if hasattr(self, "min_prob") and random.random() < 0.25: + # occasionally switch between min_prob and max_prob, based on whether + # we are above or below the threshold. + if ( + _whitening_metric(x.to(torch.float32), self.num_groups) + > self.whitening_limit + ): + # there would be a change to the grad. + self.prob = self.max_prob + else: + self.prob = self.min_prob + + return WhiteningPenaltyFunction.apply( + x, self.num_groups, self.whitening_limit, self.grad_scale + ) + + +class WithLoss(torch.autograd.Function): + @staticmethod + def forward(ctx, x: Tensor, y: Tensor): + ctx.y_shape = y.shape + return x + + @staticmethod + def backward(ctx, ans_grad: Tensor): + return ans_grad, torch.ones( + ctx.y_shape, dtype=ans_grad.dtype, device=ans_grad.device + ) + + +def with_loss(x, y): + if torch.jit.is_scripting(): + return x + # returns x but adds y.sum() to the loss function. + return WithLoss.apply(x, y) + + +def _no_op(x: Tensor) -> Tensor: + if torch.jit.is_scripting(): + return x + else: + # a no-op function that will have a node in the autograd graph, + # to avoid certain bugs relating to backward hooks + return x.chunk(1, dim=-1)[0] + + +class Identity(torch.nn.Module): + def __init__(self): + super(Identity, self).__init__() + + def forward(self, x): + return _no_op(x) + + +class MaxEig(torch.nn.Module): + """ + Modifies the backpropped derivatives of a function to try to discourage + that any given direction in activation space accounts for more than + a specified proportion of the covariance (e.g. 0.2). + + + Args: + num_channels: the number of channels + channel_dim: the dimension/axis corresponding to the channel, e.g. + -1, 0, 1, 2; will be interpreted as an offset from x.ndim if negative. + max_var_per_eig: the maximum proportion of the variance of the + features/channels, after mean subtraction, that can come from + any given eigenvalue. + min_prob: the minimum probability with which we apply this during any invocation + of forward(), assuming last time we applied the constraint it was + not active; supplied for speed. + scale: determines the scale with which we modify the gradients, relative + to the existing / unmodified gradients + """ + + def __init__( + self, + num_channels: int, + channel_dim: int, + max_var_per_eig: float = 0.2, + min_prob: float = 0.01, + scale: float = 0.01, + ): + super(MaxEig, self).__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + self.scale = scale + assert max_var_per_eig == 0.0 or max_var_per_eig > 1.0 / num_channels + self.max_var_per_eig = max_var_per_eig + + # we figure out the dominant direction using the power method: starting with + # a random vector, keep multiplying by the covariance and renormalizing. + with torch.no_grad(): + # arbitrary.. would use randn() but want to leave the rest of the model's + # random parameters unchanged for comparison + direction = torch.arange(num_channels).to(torch.float) + direction = direction / direction.norm() + self.register_buffer("max_eig_direction", direction) + + self.min_prob = min_prob + # cur_prob is the current probability we'll use to apply the ActivationBalancer. + # We'll regress this towards prob, each tiem we try to apply it and it is not + # active. + self.cur_prob = 1.0 + + def forward(self, x: Tensor) -> Tensor: + if ( + torch.jit.is_scripting() + or self.max_var_per_eig <= 0 + or random.random() > self.cur_prob + ): + return _no_op(x) + + with torch.cuda.amp.autocast(enabled=False): + eps = 1.0e-20 + orig_x = x + x = x.to(torch.float32) + with torch.no_grad(): + x = x.transpose(self.channel_dim, -1).reshape(-1, self.num_channels) + x = x - x.mean(dim=0) + new_direction, coeffs = self._find_direction_coeffs( + x, self.max_eig_direction + ) + x_var = (x**2).mean() + x_residual = x - coeffs * new_direction + x_residual_var = (x_residual**2).mean() + + # `variance_proportion` is the proportion of the variance accounted for + # by the top eigen-direction. + variance_proportion = (x_var - x_residual_var) / (x_var + 1.0e-20) + + # ensure new direction is nonzero even if x == 0, by including `direction`. + self._set_direction(0.1 * self.max_eig_direction + new_direction) + + if random.random() < 0.01 or __name__ == "__main__": + logging.info( + f"variance_proportion = {variance_proportion.item()}, shape={tuple(orig_x.shape)}, cur_prob={self.cur_prob}" + ) + + if variance_proportion >= self.max_var_per_eig: + # The constraint is active. Note, we should quite rarely + # reach here, only near the beginning of training if we are + # starting to diverge, should this constraint be active. + cur_prob = self.cur_prob + self.cur_prob = 1.0 # next time, do the update with probability 1.0. + return MaxEigLimiterFunction.apply( + orig_x, coeffs, new_direction, self.channel_dim, self.scale + ) + else: + # let self.cur_prob exponentially approach self.min_prob, as + # long as the constraint is inactive. + self.cur_prob = 0.75 * self.cur_prob + 0.25 * self.min_prob + return orig_x + + def _set_direction(self, direction: Tensor): + """ + Sets self.max_eig_direction to a normalized version of `direction` + """ + direction = direction.detach() + direction = direction / direction.norm() + direction_sum = direction.sum().item() + if direction_sum - direction_sum == 0: # no inf/nan + self.max_eig_direction[:] = direction + else: + logging.info( + f"Warning: sum of direction in MaxEig is {direction_sum}, " + "num_channels={self.num_channels}, channel_dim={self.channel_dim}" + ) + + def _find_direction_coeffs( + self, x: Tensor, prev_direction: Tensor + ) -> Tuple[Tensor, Tensor, Tensor]: + """ + Figure out (an approximation to) the proportion of the variance of a set of + feature vectors that can be attributed to the top eigen-direction. + Args: + x: a Tensor of shape (num_frames, num_channels), with num_frames > 1. + prev_direction: a Tensor of shape (num_channels,), that is our previous estimate + of the top eigen-direction, or a random direction if this is the first + iteration. Does not have to be normalized, but should be nonzero. + + Returns: (cur_direction, coeffs), where: + cur_direction: a Tensor of shape (num_channels,) that is the current + estimate of the top eigen-direction. + coeffs: a Tensor of shape (num_frames, 1) that minimizes, or + approximately minimizes, (x - coeffs * cur_direction).norm() + """ + (num_frames, num_channels) = x.shape + assert num_channels > 1 and num_frames > 1 + assert prev_direction.shape == (num_channels,) + # `coeffs` are the coefficients of `prev_direction` in x. + # actually represent the coeffs up to a constant positive factor. + coeffs = (x * prev_direction).sum(dim=1, keepdim=True) + 1.0e-10 + cur_direction = (x * coeffs).sum(dim=0) / ((coeffs**2).sum() + 1.0e-20) + return cur_direction, coeffs + + +class DoubleSwishFunction(torch.autograd.Function): + """ + double_swish(x) = x * torch.sigmoid(x-1) + This is a definition, originally motivated by its close numerical + similarity to swish(swish(x)), where swish(x) = x * sigmoid(x). + + Memory-efficient derivative computation: + double_swish(x) = x * s, where s(x) = torch.sigmoid(x-1) + double_swish'(x) = d/dx double_swish(x) = x * s'(x) + x' * s(x) = x * s'(x) + s(x). + Now, s'(x) = s(x) * (1-s(x)). + double_swish'(x) = x * s'(x) + s(x). + = x * s(x) * (1-s(x)) + s(x). + = double_swish(x) * (1-s(x)) + s(x) + ... so we just need to remember s(x) but not x itself. + """ + + @staticmethod + def forward(ctx, x: Tensor) -> Tensor: + requires_grad = x.requires_grad + x_dtype = x.dtype + if x.dtype == torch.float16: + x = x.to(torch.float32) + + s = torch.sigmoid(x - 1.0) + y = x * s + + if requires_grad: + deriv = y * (1 - s) + s + # notes on derivative of x * sigmoid(x - 1): + # https://www.wolframalpha.com/input?i=d%2Fdx+%28x+*+sigmoid%28x-1%29%29 + # min \simeq -0.043638. Take floor as -0.043637 so it's a lower bund + # max \simeq 1.1990. Take ceil to be 1.2 so it's an upper bound. + # the combination of "+ torch.rand_like(deriv)" and casting to torch.uint8 (which + # floors), should be expectation-preserving. + floor = -0.043637 + ceil = 1.2 + d_scaled = (deriv - floor) * (255.0 / (ceil - floor)) + torch.rand_like( + deriv + ) + if __name__ == "__main__": + # for self-testing only. + assert d_scaled.min() >= 0.0 + assert d_scaled.max() < 256.0 + d_int = d_scaled.to(torch.uint8) + ctx.save_for_backward(d_int) + if x.dtype == torch.float16 or torch.is_autocast_enabled(): + y = y.to(torch.float16) + return y + + @staticmethod + def backward(ctx, y_grad: Tensor) -> Tensor: + (d,) = ctx.saved_tensors + # the same constants as used in forward pass. + floor = -0.043637 + ceil = 1.2 + d = d * ((ceil - floor) / 255.0) + floor + return y_grad * d + + +class DoubleSwish(torch.nn.Module): + def forward(self, x: Tensor) -> Tensor: + """Return double-swish activation function which is an approximation to Swish(Swish(x)), + that we approximate closely with x * sigmoid(x-1). + """ + if torch.jit.is_scripting(): + return x * torch.sigmoid(x - 1.0) + return DoubleSwishFunction.apply(x) + + +def _test_max_eig(): + for proportion in [0.1, 0.5, 10.0]: + logging.info(f"proportion = {proportion}") + x = torch.randn(100, 128) + direction = torch.randn(128) + coeffs = torch.randn(100, 1) + x += proportion * direction * coeffs + + x.requires_grad = True + + num_channels = 128 + m = MaxEig( + num_channels, 1, 0.5, scale=0.1 # channel_dim # max_var_per_eig + ) # grad_scale + + for _ in range(4): + y = m(x) + + y_grad = torch.randn_like(x) + y.backward(gradient=y_grad) + + if proportion < 0.2: + assert torch.allclose(x.grad, y_grad, atol=1.0e-02) + elif proportion > 1.0: + assert not torch.allclose(x.grad, y_grad) + + +def _test_whiten(): + for proportion in [0.1, 0.5, 10.0]: + logging.info(f"_test_whiten(): proportion = {proportion}") + x = torch.randn(100, 128) + direction = torch.randn(128) + coeffs = torch.randn(100, 1) + x += proportion * direction * coeffs + + x.requires_grad = True + + num_channels = 128 + m = Whiten( + 1, 5.0, prob=1.0, grad_scale=0.1 # num_groups # whitening_limit, + ) # grad_scale + + for _ in range(4): + y = m(x) + + y_grad = torch.randn_like(x) + y.backward(gradient=y_grad) + + if proportion < 0.2: + assert torch.allclose(x.grad, y_grad) + elif proportion > 1.0: + assert not torch.allclose(x.grad, y_grad) + + +def _test_activation_balancer_sign(): + probs = torch.arange(0, 1, 0.01) + N = 1000 + x = 1.0 * ((2.0 * (torch.rand(probs.numel(), N) < probs.unsqueeze(-1))) - 1.0) + x = x.detach() + x.requires_grad = True + m = ActivationBalancer( + probs.numel(), + channel_dim=0, + min_positive=0.05, + max_positive=0.95, + max_factor=0.2, + min_abs=0.0, + ) + + y_grad = torch.sign(torch.randn(probs.numel(), N)) + + y = m(x) + y.backward(gradient=y_grad) + print("_test_activation_balancer_sign: x = ", x) + print("_test_activation_balancer_sign: y grad = ", y_grad) + print("_test_activation_balancer_sign: x grad = ", x.grad) + + +def _test_activation_balancer_magnitude(): + magnitudes = torch.arange(0, 1, 0.01) + N = 1000 + x = torch.sign(torch.randn(magnitudes.numel(), N)) * magnitudes.unsqueeze(-1) + x = x.detach() + x.requires_grad = True + m = ActivationBalancer( + magnitudes.numel(), + channel_dim=0, + min_positive=0.0, + max_positive=1.0, + max_factor=0.2, + min_abs=0.2, + max_abs=0.8, + min_prob=1.0, + ) + + y_grad = torch.sign(torch.randn(magnitudes.numel(), N)) + + y = m(x) + y.backward(gradient=y_grad) + print("_test_activation_balancer_magnitude: x = ", x) + print("_test_activation_balancer_magnitude: y grad = ", y_grad) + print("_test_activation_balancer_magnitude: x grad = ", x.grad) + + +def _test_basic_norm(): + num_channels = 128 + m = BasicNorm(num_channels=num_channels, channel_dim=1) + + x = torch.randn(500, num_channels) + + y = m(x) + + assert y.shape == x.shape + x_rms = (x**2).mean().sqrt() + y_rms = (y**2).mean().sqrt() + print("x rms = ", x_rms) + print("y rms = ", y_rms) + assert y_rms < x_rms + assert y_rms > 0.5 * x_rms + + +def _test_double_swish_deriv(): + x = torch.randn(10, 12, dtype=torch.double) * 3.0 + x.requires_grad = True + m = DoubleSwish() + + tol = (1.2 - (-0.043637)) / 255.0 + torch.autograd.gradcheck(m, x, atol=tol) + + # for self-test. + x = torch.randn(1000, 1000, dtype=torch.double) * 3.0 + x.requires_grad = True + y = m(x) + + +def _test_softmax(): + a = torch.randn(2, 10, dtype=torch.float64) + b = a.clone() + a.requires_grad = True + b.requires_grad = True + a.softmax(dim=1)[:, 0].sum().backward() + print("a grad = ", a.grad) + softmax(b, dim=1)[:, 0].sum().backward() + print("b grad = ", b.grad) + assert torch.allclose(a.grad, b.grad) + + +if __name__ == "__main__": + logging.getLogger().setLevel(logging.INFO) + torch.set_num_threads(1) + torch.set_num_interop_threads(1) + _test_softmax() + _test_whiten() + _test_max_eig() + _test_activation_balancer_sign() + _test_activation_balancer_magnitude() + _test_basic_norm() + _test_double_swish_deriv() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling_converter.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling_converter.py new file mode 100755 index 000000000..56165d1f9 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/scaling_converter.py @@ -0,0 +1,114 @@ +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This file replaces various modules in a model. +Specifically, ActivationBalancer is replaced with an identity operator; +Whiten is also replaced with an identity operator; +BasicNorm is replaced by a module with `exp` removed. +""" + +import copy +from typing import List + +import torch +import torch.nn as nn +from scaling import ActivationBalancer, BasicNorm, Whiten + + +class NonScaledNorm(nn.Module): + """See BasicNorm for doc""" + + def __init__( + self, + num_channels: int, + eps_exp: float, + channel_dim: int = -1, # CAUTION: see documentation. + ): + super().__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + self.eps_exp = eps_exp + + def forward(self, x: torch.Tensor) -> torch.Tensor: + if not torch.jit.is_tracing(): + assert x.shape[self.channel_dim] == self.num_channels + scales = ( + torch.mean(x * x, dim=self.channel_dim, keepdim=True) + self.eps_exp + ).pow(-0.5) + return x * scales + + +def convert_basic_norm(basic_norm: BasicNorm) -> NonScaledNorm: + assert isinstance(basic_norm, BasicNorm), type(BasicNorm) + norm = NonScaledNorm( + num_channels=basic_norm.num_channels, + eps_exp=basic_norm.eps.data.exp().item(), + channel_dim=basic_norm.channel_dim, + ) + return norm + + +# Copied from https://pytorch.org/docs/1.9.0/_modules/torch/nn/modules/module.html#Module.get_submodule # noqa +# get_submodule was added to nn.Module at v1.9.0 +def get_submodule(model, target): + if target == "": + return model + atoms: List[str] = target.split(".") + mod: torch.nn.Module = model + for item in atoms: + if not hasattr(mod, item): + raise AttributeError( + mod._get_name() + " has no " "attribute `" + item + "`" + ) + mod = getattr(mod, item) + if not isinstance(mod, torch.nn.Module): + raise AttributeError("`" + item + "` is not " "an nn.Module") + return mod + + +def convert_scaled_to_non_scaled( + model: nn.Module, + inplace: bool = False, +): + """ + Args: + model: + The model to be converted. + inplace: + If True, the input model is modified inplace. + If False, the input model is copied and we modify the copied version. + Return: + Return a model without scaled layers. + """ + if not inplace: + model = copy.deepcopy(model) + + d = {} + for name, m in model.named_modules(): + if isinstance(m, BasicNorm): + d[name] = convert_basic_norm(m) + elif isinstance(m, (ActivationBalancer, Whiten)): + d[name] = nn.Identity() + + for k, v in d.items(): + if "." in k: + parent, child = k.rsplit(".", maxsplit=1) + setattr(get_submodule(model, parent), child, v) + else: + setattr(model, k, v) + + return model diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/test_model.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/test_model.py new file mode 100755 index 000000000..e482d2040 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/test_model.py @@ -0,0 +1,56 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +To run this file, do: + + cd icefall/egs/librispeech/ASR + python ./pruned_transducer_stateless7_ctc/test_model.py +""" + +from train import get_params, get_transducer_model + + +def test_model_1(): + params = get_params() + params.vocab_size = 500 + params.blank_id = 0 + params.context_size = 2 + params.num_encoder_layers = "2,4,3,2,4" + # params.feedforward_dims = "1024,1024,1536,1536,1024" + params.feedforward_dims = "1024,1024,2048,2048,1024" + params.nhead = "8,8,8,8,8" + params.encoder_dims = "384,384,384,384,384" + params.attention_dims = "192,192,192,192,192" + params.encoder_unmasked_dims = "256,256,256,256,256" + params.zipformer_downsampling_factors = "1,2,4,8,2" + params.cnn_module_kernels = "31,31,31,31,31" + params.decoder_dim = 512 + params.joiner_dim = 512 + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + print(f"Number of model parameters: {num_param}") + + +def main(): + test_model_1() + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/train.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/train.py new file mode 100755 index 000000000..27537762a --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/train.py @@ -0,0 +1,1619 @@ +#!/usr/bin/env python3 +# Copyright 2021-2022 Xiaomi Corp. (authors: Fangjun Kuang, +# Wei Kang, +# Mingshuang Luo,) +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: + +# initialize_param_list = ["ctc_output.1.bias","ctc_output.1.weight","decoder.conv.weight","decoder.embedding.weight","encoder.encoders.encoder.layers.10.self_attn.k_proj.bias","encoder.encoders.encoder.layers.11.self_attn.k_proj.bias","encoder.encoders.encoder.layers.9.self_attn.k_proj.bias","encoder.output_layer.0.bias","encoder.output_layer.0.weight","encoder.output_layer.1.weight","joiner.decoder_proj.bias","joiner.decoder_proj.weight","joiner.encoder_proj.bias","joiner.encoder_proj.weight","joiner.output_linear.bias","joiner.output_linear.weight","simple_am_proj.bias","simple_am_proj.weight","simple_lm_proj.bias","simple_lm_proj.weight"] + +export CUDA_VISIBLE_DEVICES="0,1,2,3" +./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T \ + --max-duration 150 \ + --freeze-finetune-updates 3000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --accum-grads 4 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 + +""" + + +import random +import argparse +import copy +import logging +import warnings +from pathlib import Path +from shutil import copyfile +from typing import Any, Dict, Optional, Tuple, Union + +import k2 +import optim +import sentencepiece as spm +import torch +import torch.multiprocessing as mp +import torch.nn as nn +from asr_datamodule import LJSpeechAsrDataModule +from decoder import Decoder +from joiner import Joiner +from lhotse.cut import Cut +from lhotse.dataset.sampling.base import CutSampler +from lhotse.utils import fix_random_seed +from model import Transducer +from optim import Eden, ScaledAdam +from torch import Tensor +from torch.cuda.amp import GradScaler +from torch.nn.parallel import DistributedDataParallel as DDP +from torch.utils.tensorboard import SummaryWriter +from zipformer import Zipformer +from data2vec_encoder import FairSeqData2VecEncoder + +from icefall import diagnostics +from icefall.checkpoint import remove_checkpoints +from icefall.checkpoint import update_averaged_model +from checkpoint import ( + save_checkpoint as save_checkpoint_impl, + save_checkpoint_with_global_batch_idx, + load_checkpoint +) +from icefall.dist import cleanup_dist, setup_dist +from icefall.env import get_env_info +from icefall.hooks import register_inf_check_hooks +from icefall.utils import ( + AttributeDict, + MetricsTracker, + encode_supervisions, + setup_logger, + str2bool, + save_args, +) + +import wandb + +#from icefall.checkpoint import save_checkpoint as save_checkpoint_impl +LRSchedulerType = Union[torch.optim.lr_scheduler._LRScheduler, optim.LRScheduler] + + +def set_batch_count(model: Union[nn.Module, DDP], batch_count: float) -> None: + if isinstance(model, DDP): + # get underlying nn.Module + model = model.module + for module in model.modules(): + if hasattr(module, "batch_count"): + module.batch_count = batch_count + model.encoder.num_updates = int(batch_count) + + +def add_rep_arguments(parser: argparse.ArgumentParser): + parser.add_argument( + "--wandb", + type=str2bool, + default=True, + help="Use wandb for MLOps", + ) + parser.add_argument( + "--accum-grads", + type=int, + default=1, + help="accum-grad num.", + ) + + parser.add_argument( + "--multi-optim", + type=str2bool, + default=True, + help="use sperate optimizer (enc / dec)", + ) + + parser.add_argument( + "--peak-enc-lr", + type=float, + default=0.0001, + help="The initial learning rate. This value should not need to be changed.", + ) + + parser.add_argument( + "--peak-dec-lr", + type=float, + default=0.001, + help="The initial learning rate. This value should not need to be changed.", + ) + + parser.add_argument( + "--encoder-type", + type=str, + default='d2v', + help="Type of encoder (e.g. conformer, w2v, d2v...", + ) + + parser.add_argument( + "--encoder-dim", + type=int, + default=768, + help="encoder embedding dimension", + ) + + parser.add_argument( + "--freeze-finetune-updates", + type=int, + default=0 + ) + + parser.add_argument( + "--additional-block", + type=str2bool, + default=True, + ) + + parser.add_argument( + "--decode-interval", + type=int, + default=200, + help="decode interval", + ) + + parser.add_argument( + "--load-prefinetuned-model", + type=str, + default=None, + ) + + parser.add_argument( + "--load-unsupfinetuned-model", + type=str, + default=None, + ) + + parser.add_argument( + "--use-pseudo-labels", + type=str2bool, + default=False, + ) + + parser.add_argument( + "--update-ema", + type=str2bool, + default=False, + ) + + parser.add_argument( + "--layer-average", + type=str2bool, + default=False, + ) + + +def add_model_arguments(parser: argparse.ArgumentParser): + parser.add_argument( + "--num-encoder-layers", + type=str, + default="2,4,3,2,4", + help="Number of zipformer encoder layers, comma separated.", + ) + + parser.add_argument( + "--feedforward-dims", + type=str, + default="1024,1024,2048,2048,1024", + help="Feedforward dimension of the zipformer encoder layers, comma separated.", + ) + + parser.add_argument( + "--nhead", + type=str, + default="8,8,8,8,8", + help="Number of attention heads in the zipformer encoder layers.", + ) + + parser.add_argument( + "--encoder-dims", + type=str, + default="384,384,384,384,384", + help="Embedding dimension in the 2 blocks of zipformer encoder layers, comma separated", + ) + + parser.add_argument( + "--attention-dims", + type=str, + default="192,192,192,192,192", + help="""Attention dimension in the 2 blocks of zipformer encoder layers, comma separated; + not the same as embedding dimension.""", + ) + + parser.add_argument( + "--encoder-unmasked-dims", + type=str, + default="256,256,256,256,256", + help="Unmasked dimensions in the encoders, relates to augmentation during training. " + "Must be <= each of encoder_dims. Empirically, less than 256 seems to make performance " + " worse.", + ) + + parser.add_argument( + "--zipformer-downsampling-factors", + type=str, + default="1,2,4,8,2", + help="Downsampling factor for each stack of encoder layers.", + ) + + parser.add_argument( + "--cnn-module-kernels", + type=str, + default="31,31,31,31,31", + help="Sizes of kernels in convolution modules", + ) + + parser.add_argument( + "--decoder-dim", + type=int, + default=512, + help="Embedding dimension in the decoder model.", + ) + + parser.add_argument( + "--joiner-dim", + type=int, + default=512, + help="""Dimension used in the joiner model. + Outputs from the encoder and decoder model are projected + to this dimension before adding. + """, + ) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--world-size", + type=int, + default=1, + help="Number of GPUs for DDP training.", + ) + + parser.add_argument( + "--master-port", + type=int, + default=12354, + help="Master port to use for DDP training.", + ) + + parser.add_argument( + "--tensorboard", + type=str2bool, + default=True, + help="Should various information be logged in tensorboard.", + ) + + parser.add_argument( + "--num-epochs", + type=int, + default=30, + help="Number of epochs to train.", + ) + + parser.add_argument( + "--start-epoch", + type=int, + default=1, + help="""Resume training from this epoch. It should be positive. + If larger than 1, it will load checkpoint from + exp-dir/epoch-{start_epoch-1}.pt + """, + ) + + parser.add_argument( + "--start-batch", + type=int, + default=0, + help="""If positive, --start-epoch is ignored and + it loads the checkpoint from exp-dir/checkpoint-{start_batch}.pt + """, + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="""The experiment dir. + It specifies the directory where all training related + files, e.g., checkpoints, log, etc, are saved + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--base-lr", type=float, default=0.05, help="The base learning rate." + ) + + parser.add_argument( + "--lr-batches", + type=float, + default=5000, + help="""Number of steps that affects how rapidly the learning rate + decreases. We suggest not to change this.""", + ) + + parser.add_argument( + "--lr-epochs", + type=float, + default=3.5, + help="""Number of epochs that affects how rapidly the learning rate decreases. + """, + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + + parser.add_argument( + "--prune-range", + type=int, + default=5, + help="The prune range for rnnt loss, it means how many symbols(context)" + "we are using to compute the loss", + ) + + parser.add_argument( + "--lm-scale", + type=float, + default=0.25, + help="The scale to smooth the loss with lm " + "(output of prediction network) part.", + ) + + parser.add_argument( + "--am-scale", + type=float, + default=0.0, + help="The scale to smooth the loss with am (output of encoder network) part.", + ) + + parser.add_argument( + "--simple-loss-scale", + type=float, + default=0.5, + help="To get pruning ranges, we will calculate a simple version" + "loss(joiner is just addition), this simple loss also uses for" + "training (as a regularization item). We will scale the simple loss" + "with this parameter before adding to the final loss.", + ) + + parser.add_argument( + "--ctc-loss-scale", + type=float, + default=0.2, + help="Scale for CTC loss.", + ) + + parser.add_argument( + "--seed", + type=int, + default=42, + help="The seed for random generators intended for reproducibility", + ) + + parser.add_argument( + "--print-diagnostics", + type=str2bool, + default=False, + help="Accumulate stats on activations, print them and exit.", + ) + + parser.add_argument( + "--inf-check", + type=str2bool, + default=False, + help="Add hooks to check for infinite module outputs and gradients.", + ) + + parser.add_argument( + "--save-every-n", + type=int, + default=2000, + help="""Save checkpoint after processing this number of batches" + periodically. We save checkpoint to exp-dir/ whenever + params.batch_idx_train % save_every_n == 0. The checkpoint filename + has the form: f'exp-dir/checkpoint-{params.batch_idx_train}.pt' + Note: It also saves checkpoint to `exp-dir/epoch-xxx.pt` at the + end of each epoch where `xxx` is the epoch number counting from 0. + """, + ) + + parser.add_argument( + "--keep-last-k", + type=int, + default=30, + help="""Only keep this number of checkpoints on disk. + For instance, if it is 3, there are only 3 checkpoints + in the exp-dir with filenames `checkpoint-xxx.pt`. + It does not affect checkpoints with name `epoch-xxx.pt`. + """, + ) + + parser.add_argument( + "--average-period", + type=int, + default=200, + help="""Update the averaged model, namely `model_avg`, after processing + this number of batches. `model_avg` is a separate version of model, + in which each floating-point parameter is the average of all the + parameters from the start of training. Each time we take the average, + we do: `model_avg = model * (average_period / batch_idx_train) + + model_avg * ((batch_idx_train - average_period) / batch_idx_train)`. + """, + ) + + parser.add_argument( + "--use-fp16", + type=str2bool, + default=True, + help="Whether to use half precision training.", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def get_params() -> AttributeDict: + """Return a dict containing training parameters. + + All training related parameters that are not passed from the commandline + are saved in the variable `params`. + + Commandline options are merged into `params` after they are parsed, so + you can also access them via `params`. + + Explanation of options saved in `params`: + + - best_train_loss: Best training loss so far. It is used to select + the model that has the lowest training loss. It is + updated during the training. + + - best_valid_loss: Best validation loss so far. It is used to select + the model that has the lowest validation loss. It is + updated during the training. + + - best_train_epoch: It is the epoch that has the best training loss. + + - best_valid_epoch: It is the epoch that has the best validation loss. + + - batch_idx_train: Used to writing statistics to tensorboard. It + contains number of batches trained so far across + epochs. + + - log_interval: Print training loss if batch_idx % log_interval` is 0 + + - reset_interval: Reset statistics if batch_idx % reset_interval is 0 + + - valid_interval: Run validation if batch_idx % valid_interval is 0 + + - feature_dim: The model input dim. It has to match the one used + in computing features. + + - subsampling_factor: The subsampling factor for the model. + + - encoder_dim: Hidden dim for multi-head attention model. + + - num_decoder_layers: Number of decoder layer of transformer decoder. + + - warm_step: The warmup period that dictates the decay of the + scale on "simple" (un-pruned) loss. + """ + params = AttributeDict( + { + "best_train_loss": float("inf"), + "best_valid_loss": float("inf"), + "best_train_epoch": -1, + "best_valid_epoch": -1, + "batch_idx_train": 0, + "log_interval": 50, + "reset_interval": 200, + "valid_interval": 3000, # For the 100h subset, use 800 + # parameters for zipformer + "feature_dim": 80, + "subsampling_factor": 320, # not passed in, this is fixed. + # parameters for ctc loss + "beam_size": 10, + "use_double_scores": True, + "warm_step": 4000, + #"warm_step": 3000, + "env_info": get_env_info(), + } + ) + + return params + + +def get_encoder_model(params: AttributeDict) -> nn.Module: + # TODO: We can add an option to switch between Zipformer and Transformer + def to_int_tuple(s: str): + return tuple(map(int, s.split(","))) + + if params.encoder_type == 'd2v': + encoder = FairSeqData2VecEncoder( + input_size=params.encoder_dim, + w2v_url='None', + output_size=params.encoder_dim, + freeze_finetune_updates=params.freeze_finetune_updates, + additional_block=params.additional_block, + layer_average=params.layer_average, + ) + else: + encoder = Zipformer( + num_features=params.feature_dim, + output_downsampling_factor=2, + zipformer_downsampling_factors=to_int_tuple( + params.zipformer_downsampling_factors + ), + encoder_dims=to_int_tuple(params.encoder_dims), + attention_dim=to_int_tuple(params.attention_dims), + encoder_unmasked_dims=to_int_tuple(params.encoder_unmasked_dims), + nhead=to_int_tuple(params.nhead), + feedforward_dim=to_int_tuple(params.feedforward_dims), + cnn_module_kernels=to_int_tuple(params.cnn_module_kernels), + num_encoder_layers=to_int_tuple(params.num_encoder_layers), + ) + + return encoder + + +def get_decoder_model(params: AttributeDict) -> nn.Module: + decoder = Decoder( + vocab_size=params.vocab_size, + decoder_dim=params.decoder_dim, + blank_id=params.blank_id, + context_size=params.context_size, + ) + return decoder + + +def get_joiner_model(params: AttributeDict) -> nn.Module: + joiner = Joiner( + encoder_dim=params.encoder_dim if params.encoder_type == 'd2v' else int(params.encoder_dims.split(",")[-1]), + decoder_dim=params.decoder_dim, + joiner_dim=params.joiner_dim, + vocab_size=params.vocab_size, + ) + return joiner + + +def get_transducer_model(params: AttributeDict) -> nn.Module: + encoder = get_encoder_model(params) + decoder = get_decoder_model(params) + joiner = get_joiner_model(params) + + model = Transducer( + encoder=encoder, + decoder=decoder, + joiner=joiner, + encoder_dim=params.encoder_dim if params.encoder_type == 'd2v' else int(params.encoder_dims.split(",")[-1]), + decoder_dim=params.decoder_dim, + joiner_dim=params.joiner_dim, + vocab_size=params.vocab_size, + ) + + if params.load_prefinetuned_model is not None: + prefinetuned_model = torch.load(params.load_prefinetuned_model) + prefinetuned_model = prefinetuned_model['model'] + state_dict_keys = [] + + with torch.no_grad(): + for name, p in model.named_parameters(): + if name in prefinetuned_model.keys(): + p.copy_(prefinetuned_model[name]) + else: + logging.info(f""" + [WARNING] Parameter names of prefinetuned model and current model are different. + Parameter {name} is not in the current model + """) + state_dict_keys.append(name) + + for key in prefinetuned_model.keys(): + if key in state_dict_keys: + continue + else: + logging.info(f""" + [WARNING] Parameter names of prefinetuned model and current model are different. + Parameter {key} is not in the prefinetuned model + """) + + logging.info(f'Model parameters from {params.load_prefinetuned_model} loaded') + + elif params.load_unsupfinetuned_model is not None: + prefinetuned_model = torch.load(params.load_unsupfinetuned_model) + prefinetuned_model = prefinetuned_model['model'] + state_dict_keys = [] + + with torch.no_grad(): + for name, p in model.named_parameters(): + if name in prefinetuned_model.keys(): + p.copy_(prefinetuned_model[name]) + else: + logging.info(f""" + [WARNING] Parameter names of prefinetuned model and current model are different. + Parameter {name} is not in the current model + """) + state_dict_keys.append(name) + + for key in prefinetuned_model.keys(): + if key in state_dict_keys: + continue + else: + logging.info(f"Removing pre-trained modules: Parameter {key} has been discarded") + + logging.info(f'Model parameters from {params.load_unsupfinetuned_model} loaded') + + del prefinetuned_model + + return model + + +def load_checkpoint_if_available( + params: AttributeDict, + model: nn.Module, + model_avg: nn.Module = None, + optimizer: Optional[torch.optim.Optimizer] = None, + scheduler: Optional[LRSchedulerType] = None, +) -> Optional[Dict[str, Any]]: + """Load checkpoint from file. + + If params.start_batch is positive, it will load the checkpoint from + `params.exp_dir/checkpoint-{params.start_batch}.pt`. Otherwise, if + params.start_epoch is larger than 1, it will load the checkpoint from + `params.start_epoch - 1`. + + Apart from loading state dict for `model` and `optimizer` it also updates + `best_train_epoch`, `best_train_loss`, `best_valid_epoch`, + and `best_valid_loss` in `params`. + + Args: + params: + The return value of :func:`get_params`. + model: + The training model. + model_avg: + The stored model averaged from the start of training. + optimizer: + The optimizer that we are using. + scheduler: + The scheduler that we are using. + Returns: + Return a dict containing previously saved training info. + """ + if params.start_batch > 0: + filename = params.exp_dir / f"checkpoint-{params.start_batch}.pt" + elif params.start_epoch > 1: + filename = params.exp_dir / f"epoch-{params.start_epoch-1}.pt" + else: + return None + + assert filename.is_file(), f"{filename} does not exist!" + + saved_params = load_checkpoint( + filename, + model=model, + model_avg=model_avg, + optimizer=optimizer, + scheduler=scheduler, + ) + + keys = [ + "best_train_epoch", + "best_valid_epoch", + "batch_idx_train", + "best_train_loss", + "best_valid_loss", + ] + for k in keys: + params[k] = saved_params[k] + + if params.start_batch > 0: + if "cur_epoch" in saved_params: + params["start_epoch"] = saved_params["cur_epoch"] + + if "cur_batch_idx" in saved_params: + params["cur_batch_idx"] = saved_params["cur_batch_idx"] + + return saved_params + + +def save_checkpoint( + params: AttributeDict, + model: Union[nn.Module, DDP], + model_avg: Optional[nn.Module] = None, + optimizer: Optional[torch.optim.Optimizer] = None, + scheduler: Optional[LRSchedulerType] = None, + sampler: Optional[CutSampler] = None, + scaler: Optional[GradScaler] = None, + rank: int = 0, +) -> None: + """Save model, optimizer, scheduler and training stats to file. + + Args: + params: + It is returned by :func:`get_params`. + model: + The training model. + model_avg: + The stored model averaged from the start of training. + optimizer: + The optimizer used in the training. + sampler: + The sampler for the training dataset. + scaler: + The scaler used for mix precision training. + """ + if rank != 0: + return + filename = params.exp_dir / f"epoch-{params.cur_epoch}.pt" + save_checkpoint_impl( + filename=filename, + model=model, + model_avg=model_avg, + params=params, + optimizer=optimizer, + scheduler=scheduler, + sampler=sampler, + scaler=scaler, + rank=rank, + ) + + if params.best_train_epoch == params.cur_epoch: + best_train_filename = params.exp_dir / "best-train-loss.pt" + copyfile(src=filename, dst=best_train_filename) + + if params.best_valid_epoch == params.cur_epoch: + best_valid_filename = params.exp_dir / "best-valid-loss.pt" + copyfile(src=filename, dst=best_valid_filename) + + +def compute_loss( + params: AttributeDict, + model: Union[nn.Module, DDP], + sp: spm.SentencePieceProcessor, + batch: dict, + is_training: bool, + decode: bool = False, +) -> Tuple[Tensor, MetricsTracker]: + """ + Compute transducer loss given the model and its inputs. + + Args: + params: + Parameters for training. See :func:`get_params`. + model: + The model for training. It is an instance of Zipformer in our case. + batch: + A batch of data. See `lhotse.dataset.K2SpeechRecognitionDataset()` + for the content in it. + is_training: + True for training. False for validation. When it is True, this + function enables autograd during computation; when it is False, it + disables autograd. + warmup: a floating point value which increases throughout training; + values >= 1.0 are fully warmed up and have all modules present. + """ + device = model.device if isinstance(model, DDP) else next(model.parameters()).device + feature = batch["inputs"] + # at entry, feature is (N, T, C) + assert feature.ndim == 2 or feature.ndim == 3 + feature = feature.to(device) + + supervisions = batch["supervisions"] + + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + batch_idx_train = params.batch_idx_train + warm_step = params.warm_step + + texts = batch["supervisions"]["text"] + token_ids = sp.encode(texts, out_type=int) + y = k2.RaggedTensor(token_ids).to(device) + + with torch.set_grad_enabled(is_training): + simple_loss, pruned_loss, ctc_output = model( + x=feature, + x_lens=feature_lens, + y=y, + prune_range=params.prune_range, + am_scale=params.am_scale, + lm_scale=params.lm_scale, + ) + + s = params.simple_loss_scale + # take down the scale on the simple loss from 1.0 at the start + # to params.simple_loss scale by warm_step. + simple_loss_scale = ( + s + if batch_idx_train >= warm_step + else 1.0 - (batch_idx_train / warm_step) * (1.0 - s) + ) + pruned_loss_scale = ( + 1.0 + if batch_idx_train >= warm_step + else 0.1 + 0.9 * (batch_idx_train / warm_step) + ) + + loss = simple_loss_scale * simple_loss + pruned_loss_scale * pruned_loss + + info = MetricsTracker() + + if params.ctc_loss_scale > 0: + # Compute ctc loss + + # NOTE: We need `encode_supervisions` to sort sequences with + # different duration in decreasing order, required by + # `k2.intersect_dense` called in `k2.ctc_loss` + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + supervision_segments, token_ids = encode_supervisions( + supervisions, + subsampling_factor=params.subsampling_factor, + token_ids=token_ids, + ) + + # Works with a BPE model + decoding_graph = k2.ctc_graph(token_ids, modified=False, device=device) + dense_fsa_vec = k2.DenseFsaVec( + ctc_output, + supervision_segments, + allow_truncate=params.subsampling_factor - 1, + ) + + ctc_loss = k2.ctc_loss( + decoding_graph=decoding_graph, + dense_fsa_vec=dense_fsa_vec, + output_beam=params.beam_size, + reduction="sum", + use_double_scores=params.use_double_scores, + ) + assert ctc_loss.requires_grad == is_training + loss += params.ctc_loss_scale * ctc_loss + + info["ctc_loss"] = ctc_loss.detach().cpu().item() + + assert loss.requires_grad == is_training + + if decode: + model.eval() + with torch.no_grad(): + hypos = model.module.decode( + x=feature, + x_lens=feature_lens, + y=y, + sp=sp + ) + logging.info(f'ref: {batch["supervisions"]["text"][0]}') + logging.info(f'hyp: {" ".join(hypos[0])}') + model.train() + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + info["frames"] = (feature_lens // params.subsampling_factor).sum().item() + + # Note: We use reduction=sum while computing the loss. + info["utterances"] = feature.size(0) + info["loss"] = loss.detach().cpu().item() + info["simple_loss"] = simple_loss.detach().cpu().item() + info["pruned_loss"] = pruned_loss.detach().cpu().item() + + return loss, info + + +def compute_validation_loss( + params: AttributeDict, + model: Union[nn.Module, DDP], + sp: spm.SentencePieceProcessor, + valid_dl: torch.utils.data.DataLoader, + world_size: int = 1, +) -> MetricsTracker: + """Run the validation process.""" + model.eval() + + tot_loss = MetricsTracker() + + for batch_idx, batch in enumerate(valid_dl): + loss, loss_info = compute_loss( + params=params, + model=model, + sp=sp, + batch=batch, + is_training=False, + ) + assert loss.requires_grad is False + tot_loss = tot_loss + loss_info + + if world_size > 1: + tot_loss.reduce(loss.device) + + loss_value = tot_loss["loss"] / tot_loss["utterances"] + if loss_value < params.best_valid_loss: + params.best_valid_epoch = params.cur_epoch + params.best_valid_loss = loss_value + + return tot_loss + + +def train_one_epoch( + params: AttributeDict, + model: Union[nn.Module, DDP], + optimizer: torch.optim.Optimizer or [torch.optim.Optimizer, torch.optim.Optimizer], + scheduler: LRSchedulerType or [LRSchedulerType, LRSchedulerType], + sp: spm.SentencePieceProcessor, + train_dl: torch.utils.data.DataLoader, + valid_dl: torch.utils.data.DataLoader, + scaler: GradScaler, + model_avg: Optional[nn.Module] = None, + tb_writer: Optional[SummaryWriter] = None, + world_size: int = 1, + rank: int = 0, + wb = None, +) -> None: + """Train the model for one epoch. + + The training loss from the mean of all frames is saved in + `params.train_loss`. It runs the validation process every + `params.valid_interval` batches. + + Args: + params: + It is returned by :func:`get_params`. + model: + The model for training. + optimizer: + The optimizer we are using. + scheduler: + The learning rate scheduler, we call step() every step. + train_dl: + Dataloader for the training dataset. + valid_dl: + Dataloader for the validation dataset. + scaler: + The scaler used for mix precision training. + model_avg: + The stored model averaged from the start of training. + tb_writer: + Writer to write log messages to tensorboard. + world_size: + Number of nodes in DDP training. If it is 1, DDP is disabled. + rank: + The rank of the node in DDP training. If no DDP is used, it should + be set to 0. + """ + model.train() + + tot_loss = MetricsTracker() + + cur_batch_idx = params.get("cur_batch_idx", 0) + + if params.multi_optim: + optimizer_enc, optimizer_dec = optimizer[0], optimizer[1] + scheduler_enc, scheduler_dec = scheduler[0], scheduler[1] + + for batch_idx, batch in enumerate(train_dl): + if batch_idx < cur_batch_idx: + continue + cur_batch_idx = batch_idx + + if batch_idx % params.accum_grads == 0: params.batch_idx_train += 1 + batch_size = len(batch["supervisions"]["text"]) + + try: + with torch.cuda.amp.autocast(enabled=params.use_fp16): + loss, loss_info = compute_loss( + params=params, + model=model, + sp=sp, + batch=batch, + is_training=True, + decode = True if batch_idx % params.decode_interval == 0 else False, + ) + loss_info.reduce(loss.device) + + numel = params.world_size / (params.accum_grads * loss_info["utterances"]) + loss *= numel ## normalize loss over utts(batch size) + + # summary stats + tot_loss = (tot_loss * (1 - 1 / params.reset_interval)) + loss_info + + # NOTE: We use reduction==sum and loss is computed over utterances + # in the batch and there is no normalization to it so far. + scaler.scale(loss).backward() + + if params.multi_optim and batch_idx % params.accum_grads == 0: + set_batch_count(model, params.batch_idx_train) + scheduler_enc.step_batch(params.batch_idx_train) + scheduler_dec.step_batch(params.batch_idx_train) + scaler.step(optimizer_enc) + scaler.step(optimizer_dec) + scaler.update() + optimizer_enc.zero_grad() + optimizer_dec.zero_grad() + elif not params.multi_optim and batch_idx % params.accum_grads == 0: + set_batch_count(model, params.batch_idx_train) + scheduler.step_batch(params.batch_idx_train) + scaler.step(optimizer) + scaler.update() + optimizer.zero_grad() + + except: # noqa + display_and_save_batch(batch, params=params, sp=sp) + raise + + if params.print_diagnostics and batch_idx == 5: + return + + if ( + rank == 0 + and params.batch_idx_train > 0 + and params.batch_idx_train % params.average_period == 0 + ): + update_averaged_model( + params=params, + model_cur=model, + model_avg=model_avg, + ) + + if ( + params.batch_idx_train > 0 + and params.batch_idx_train % params.save_every_n == 0 + ): + params.cur_batch_idx = batch_idx + save_checkpoint_with_global_batch_idx( + out_dir=params.exp_dir, + global_batch_idx=params.batch_idx_train, + model=model, + model_avg=model_avg, + params=params, + optimizer=optimizer, + scheduler=scheduler, + sampler=train_dl.sampler, + scaler=scaler, + rank=rank, + ) + del params.cur_batch_idx + remove_checkpoints( + out_dir=params.exp_dir, + topk=params.keep_last_k, + rank=rank, + ) + + if batch_idx % 100 == 0 and params.use_fp16: + # If the grad scale was less than 1, try increasing it. The _growth_interval + # of the grad scaler is configurable, but we can't configure it to have different + # behavior depending on the current grad scale. + cur_grad_scale = scaler._scale.item() + ''' + if cur_grad_scale < 1.0 or (cur_grad_scale < 8.0 and batch_idx % 400 == 0): + scaler.update(cur_grad_scale * 2.0) + ''' + if cur_grad_scale < 0.01: + logging.warning(f"Grad scale is small: {cur_grad_scale}") + if cur_grad_scale < 1.0e-05: + wb.log({"valid/loss": 10000}) + raise RuntimeError( + f"grad_scale is too small, exiting: {cur_grad_scale}" + ) + + if params.batch_idx_train > 4000 and loss > 300: + wb.log({"valid/loss": 10000}) + raise RunteimError( + f"divergence... exiting: loss={loss}" + ) + + if batch_idx % (params.log_interval*params.accum_grads) == 0: + if params.multi_optim: + cur_enc_lr = scheduler_enc.get_last_lr()[0] + cur_dec_lr = scheduler_dec.get_last_lr()[0] + cur_grad_scale = scaler._scale.item() if params.use_fp16 else 1.0 + + logging.info( + f"Epoch {params.cur_epoch}, " + f"batch {batch_idx}, loss[{loss_info}], " + f"tot_loss[{tot_loss}], batch size: {batch_size}, " + f"enc_lr: {cur_enc_lr:.2e}, " + f"dec_lr: {cur_dec_lr:.2e}, " + + (f"grad_scale: {scaler._scale.item()}" if params.use_fp16 else "") + ) + + else: + cur_lr = scheduler.get_last_lr()[0] + cur_grad_scale = scaler._scale.item() if params.use_fp16 else 1.0 + + logging.info( + f"Epoch {params.cur_epoch}, " + f"batch {batch_idx}, loss[{loss_info}], " + f"tot_loss[{tot_loss}], batch size: {batch_size}, " + f"lr: {cur_lr:.2e}, " + + (f"grad_scale: {scaler._scale.item()}" if params.use_fp16 else "") + ) + + if tb_writer is not None: + if params.multi_optim: + tb_writer.add_scalar( + "train/enc_learning_rate", cur_enc_lr, params.batch_idx_train + ) + tb_writer.add_scalar( + "train/dec_learning_rate", cur_dec_lr, params.batch_idx_train + ) + + else: + tb_writer.add_scalar( + "train/learning_rate", cur_lr, params.batch_idx_train + ) + + loss_info.write_summary( + tb_writer, "train/current_", params.batch_idx_train + ) + tot_loss.write_summary(tb_writer, "train/tot_", params.batch_idx_train) + if params.use_fp16: + tb_writer.add_scalar( + "train/grad_scale", + cur_grad_scale, + params.batch_idx_train, + ) + + if wb is not None and rank == 0: + wb.log({"train/loss": loss_info["loss"]*numel}) + wb.log({"train/simple_loss": loss_info["simple_loss"]*numel}) + wb.log({"train/pruned_loss": loss_info["pruned_loss"]*numel}) + wb.log({"train/ctc_loss": loss_info["ctc_loss"]*numel}) + +#if batch_idx % params.valid_interval == 0 and not params.print_diagnostics: + logging.info("Computing validation loss") + valid_info = compute_validation_loss( + params=params, + model=model, + sp=sp, + valid_dl=valid_dl, + world_size=world_size, + ) + model.train() + logging.info(f"Epoch {params.cur_epoch}, validation: {valid_info}") + logging.info( + f"Maximum memory allocated so far is {torch.cuda.max_memory_allocated()//1000000}MB" + ) + if tb_writer is not None: + valid_info.write_summary( + tb_writer, "train/valid_", params.batch_idx_train + ) + + if wb is not None and rank == 0: + numel = 1 / (params.accum_grads * valid_info["utterances"]) + wb.log({"valid/loss": valid_info["loss"]*numel}) + wb.log({"valid/simple_loss": valid_info["simple_loss"]*numel}) + wb.log({"valid/pruned_loss": valid_info["pruned_loss"]*numel}) + wb.log({"valid/ctc_loss": valid_info["ctc_loss"]*numel}) + + loss_value = tot_loss["loss"] / tot_loss["utterances"] + params.train_loss = loss_value + if params.train_loss < params.best_train_loss: + params.best_train_epoch = params.cur_epoch + params.best_train_loss = params.train_loss + + +def run(rank, world_size, args, wb=None): + """ + Args: + rank: + It is a value between 0 and `world_size-1`, which is + passed automatically by `mp.spawn()` in :func:`main`. + The node with rank 0 is responsible for saving checkpoint. + world_size: + Number of GPUs for DDP training. + args: + The return value of get_parser().parse_args() + """ + params = get_params() + params.update(vars(args)) + #params.warm_step *= params.accum_grads + + fix_random_seed(params.seed) + if world_size > 1: + setup_dist(rank, world_size, params.master_port) + + setup_logger(f"{params.exp_dir}/log/log-train") + logging.info("Training started") + + if args.tensorboard and rank == 0: + tb_writer = SummaryWriter(log_dir=f"{params.exp_dir}/tensorboard") + else: + tb_writer = None + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", rank) + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # is defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + assert params.save_every_n >= params.average_period + model_avg: Optional[nn.Module] = None + if rank == 0: + # model_avg is only used with rank 0 + model_avg = copy.deepcopy(model).to(torch.float64) + + assert params.start_epoch > 0, params.start_epoch + checkpoints = load_checkpoint_if_available( + params=params, model=model, model_avg=model_avg + ) + + model.to(device) + if world_size > 1: + logging.info("Using DDP") + model = DDP(model, device_ids=[rank], find_unused_parameters=True) + + if params.multi_optim: + logging.info("Using seperate optimizers over encoder, decoder ...") + + enc_param = [] + enc_names = [] + + dec_names = [] + dec_param = [] + + org_state_dict = {} + for n, p in model.named_parameters(): + org_state_dict[n] = p.data.clone() + + name = n.split('.')[1] + if name == 'encoder' and 'feature_extractor' not in n: + enc_names.append(n) + enc_param.append(p) + elif 'ctc_output' in n: + enc_names.append(n) + enc_param.append(p) + elif 'feature_extractor' not in n: + dec_names.append(n) + dec_param.append(p) + + optimizer_enc = ScaledAdam( + enc_param, + lr=params.peak_enc_lr, + clipping_scale=None, + parameters_names=[enc_names], + ) + optimizer_dec = ScaledAdam( + dec_param, + lr=params.peak_dec_lr, + clipping_scale=5.0, + parameters_names=[dec_names], + ) + + scheduler_enc = Eden(optimizer_enc, params.lr_batches, params.lr_epochs) + scheduler_dec = Eden(optimizer_dec, params.lr_batches, params.lr_epochs) + optimizer = [optimizer_enc, optimizer_dec] + scheduler = [scheduler_enc, scheduler_dec] + + else: + parameters_names = [] + parameters_names.append( + [name_param_pair[0] for name_param_pair in model.named_parameters()] + ) + + logging.info(f"len name = {len(parameters_names)}") + logging.info(f"len param = {len(list(model.parameters()))}") + + optimizer = ScaledAdam( + model.parameters(), + lr=params.base_lr, + clipping_scale=2.0, + parameters_names=parameters_names, + ) + + scheduler = Eden(optimizer, params.lr_batches, params.lr_epochs) + + if checkpoints and ("optimizer" in checkpoints or "optimizer_enc" in checkpoints): + if params.multi_optim: + logging.info("Loading optimizer state dict") + optimizer_enc.load_state_dict(checkpoints["optimizer_enc"]) + optimizer_dec.load_state_dict(checkpoints["optimizer_dec"]) + + else: + logging.info("Loading optimizer state dict") + optimizer.load_state_dict(checkpoints["optimizer"]) + + if checkpoints: + if ( + params.multi_optim + and "scheduler_enc" in checkpoints + and checkpoints["scheduler_enc"] is not None + ): + logging.info("Loading enc/dec scheduler state dict") + scheduler_enc.load_state_dict(checkpoints["scheduler_enc"]) + scheduler_dec.load_state_dict(checkpoints["scheduler_dec"]) + else: + logging.info("Loading scheduler state dict") + scheduler.load_state_dict(checkpoints["scheduler"]) + + if params.print_diagnostics: + opts = diagnostics.TensorDiagnosticOptions( + 2**22 + ) # allow 4 megabytes per sub-module + diagnostic = diagnostics.attach_diagnostics(model, opts) + + if params.inf_check: + register_inf_check_hooks(model) + + ljspeech = LJSpeechAsrDataModule(args) + + train_cuts = ljspeech.train_cuts(pseudo=args.use_pseudo_labels) + + def remove_short_and_long_utt(c: Cut): + # Keep only utterances with duration between 1 second and 20 seconds + # + # Caution: There is a reason to select 20.0 here. Please see + # ../local/display_manifest_statistics.py + # + # You should use ../local/display_manifest_statistics.py to get + # an utterance duration distribution for your dataset to select + # the threshold + return 1.0 <= c.duration <= 20.0 + + train_cuts = train_cuts.filter(remove_short_and_long_utt) + + if params.start_batch > 0 and checkpoints and "sampler" in checkpoints: + # We only load the sampler's state dict when it loads a checkpoint + # saved in the middle of an epoch + sampler_state_dict = checkpoints["sampler"] + else: + sampler_state_dict = None + + train_dl = ljspeech.train_dataloaders( + train_cuts, sampler_state_dict=sampler_state_dict + ) + + valid_cuts = ljspeech.dev_cuts() + valid_dl = ljspeech.valid_dataloaders(valid_cuts) + + ''' + if not params.print_diagnostics: + scan_pessimistic_batches_for_oom( + model=model, + train_dl=train_dl, + optimizer=optimizer, + sp=sp, + params=params, + ) + ''' + + scaler = GradScaler(enabled=params.use_fp16, init_scale=1.0) + if checkpoints and "grad_scaler" in checkpoints: + logging.info("Loading grad scaler state dict") + scaler.load_state_dict(checkpoints["grad_scaler"]) + + for epoch in range(params.start_epoch, params.num_epochs + 1): + if params.multi_optim: + scheduler_enc.step_epoch(epoch - 1) + scheduler_dec.step_epoch(epoch - 1) + else: + scheduler.step_epoch(epoch - 1) + fix_random_seed(params.seed + epoch - 1) + train_dl.sampler.set_epoch(epoch - 1) + + if tb_writer is not None: + tb_writer.add_scalar("train/epoch", epoch, params.batch_idx_train) + + params.cur_epoch = epoch + + train_one_epoch( + params=params, + model=model, + model_avg=model_avg, + optimizer=optimizer, + scheduler=scheduler, + sp=sp, + train_dl=train_dl, + valid_dl=valid_dl, + scaler=scaler, + tb_writer=tb_writer, + world_size=world_size, + rank=rank, + wb=wb, + ) + + # TODO: argument + if params.update_ema: + with torch.no_grad(): + ema_decay = 0.999 + ema_end_decay = 0.99999 + start_weight = 1 - (params.cur_epoch / params.num_epochs) + end_weight = 1 - start_weight + alpha = start_weight * ema_decay + end_weight * ema_end_decay + + initialize_param_list = ["ctc_output.1.bias","ctc_output.1.weight","decoder.conv.weight","decoder.embedding.weight","encoder.encoders.encoder.layers.10.self_attn.k_proj.bias","encoder.encoders.encoder.layers.11.self_attn.k_proj.bias","encoder.encoders.encoder.layers.9.self_attn.k_proj.bias","encoder.output_layer.0.bias","encoder.output_layer.0.weight","encoder.output_layer.1.weight","joiner.decoder_proj.bias","joiner.decoder_proj.weight","joiner.encoder_proj.bias","joiner.encoder_proj.weight","joiner.output_linear.bias","joiner.output_linear.weight","simple_am_proj.bias","simple_am_proj.weight","simple_lm_proj.bias","simple_lm_proj.weight"] + for name, p in model.named_parameters(): + if name in initialize_param_list: + p_org = org_state_dict[name] + p.copy_(alpha * p.data + (1 - alpha) * p_org) + org_state_dict[name] = p.data.clone() + + if params.print_diagnostics: + diagnostic.print_diagnostics() + break + + save_checkpoint( + params=params, + model=model, + model_avg=model_avg, + optimizer=optimizer, + scheduler=scheduler, + sampler=train_dl.sampler, + scaler=scaler, + rank=rank, + ) + + logging.info("Done!") + + if world_size > 1: + torch.distributed.barrier() + cleanup_dist() + + +def display_and_save_batch( + batch: dict, + params: AttributeDict, + sp: spm.SentencePieceProcessor, +) -> None: + """Display the batch statistics and save the batch into disk. + + Args: + batch: + A batch of data. See `lhotse.dataset.K2SpeechRecognitionDataset()` + for the content in it. + params: + Parameters for training. See :func:`get_params`. + sp: + The BPE model. + """ + from lhotse.utils import uuid4 + + filename = f"{params.exp_dir}/batch-{uuid4()}.pt" + logging.info(f"Saving batch to {filename}") + torch.save(batch, filename) + + supervisions = batch["supervisions"] + features = batch["inputs"] + + logging.info(f"features shape: {features.shape}") + + y = sp.encode(supervisions["text"], out_type=int) + num_tokens = sum(len(i) for i in y) + logging.info(f"num tokens: {num_tokens}") + + +def scan_pessimistic_batches_for_oom( + model: Union[nn.Module, DDP], + train_dl: torch.utils.data.DataLoader, + optimizer: torch.optim.Optimizer, + sp: spm.SentencePieceProcessor, + params: AttributeDict, +): + from lhotse.dataset import find_pessimistic_batches + + logging.info( + "Sanity check -- see if any of the batches in epoch 1 would cause OOM." + ) + batches, crit_values = find_pessimistic_batches(train_dl.sampler) + for criterion, cuts in batches.items(): + batch = train_dl.dataset[cuts] + try: + with torch.cuda.amp.autocast(enabled=params.use_fp16): + loss, _ = compute_loss( + params=params, + model=model, + sp=sp, + batch=batch, + is_training=True, + ) + loss.backward() + optimizer.zero_grad() + except Exception as e: + if "CUDA out of memory" in str(e): + logging.error( + "Your GPU ran out of memory with the current " + "max_duration setting. We recommend decreasing " + "max_duration and trying again.\n" + f"Failing criterion: {criterion} " + f"(={crit_values[criterion]}) ..." + ) + display_and_save_batch(batch, params=params, sp=sp) + raise + logging.info( + f"Maximum memory allocated so far is {torch.cuda.max_memory_allocated()//1000000}MB" + ) + + +def main(): + parser = get_parser() + LJSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + #args.exp_dir = args.exp_dir + str(random.randint(0,400)) + args.exp_dir = Path(args.exp_dir) + + logging.info("save arguments to config.yaml...") + save_args(args) + + if args.wandb: wb = wandb.init(project="d2v-T", entity="dohe0342", config=vars(args)) + else: wb = None + + world_size = args.world_size + assert world_size >= 1 + if world_size > 1: + mp.spawn(run, args=(world_size, args, wb), nprocs=world_size, join=True) + else: + run(rank=0, world_size=1, args=args, wb=wb) + + +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/zipformer.py b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/zipformer.py new file mode 100755 index 000000000..b007a7308 --- /dev/null +++ b/egs/LJSpeech/ASR/pruned_transducer_stateless_d2v_v2/zipformer.py @@ -0,0 +1,1866 @@ +#!/usr/bin/env python3 +# Copyright (c) 2021 University of Chinese Academy of Sciences (author: Han Zhu) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import itertools +import logging +import math +import random +import warnings +from typing import List, Optional, Tuple, Union + +import torch +from encoder_interface import EncoderInterface +from scaling import ( + ScaledLinear, # not as in other dirs.. just scales down initial parameter values. +) +from scaling import ( + ActivationBalancer, + BasicNorm, + DoubleSwish, + Identity, + MaxEig, + ScaledConv1d, + Whiten, + _diag, + penalize_abs_values_gt, + random_clamp, + softmax, +) +from torch import Tensor, nn + +from icefall.dist import get_rank +from icefall.utils import make_pad_mask + + +class Zipformer(EncoderInterface): + """ + Args: + num_features (int): Number of input features + d_model: (int,int): embedding dimension of 2 encoder stacks + attention_dim: (int,int): attention dimension of 2 encoder stacks + nhead (int, int): number of heads + dim_feedforward (int, int): feedforward dimension in 2 encoder stacks + num_encoder_layers (int): number of encoder layers + dropout (float): dropout rate + cnn_module_kernel (int): Kernel size of convolution module + vgg_frontend (bool): whether to use vgg frontend. + warmup_batches (float): number of batches to warm up over + """ + + def __init__( + self, + num_features: int, + output_downsampling_factor: int = 2, + encoder_dims: Tuple[int] = (384, 384), + attention_dim: Tuple[int] = (256, 256), + encoder_unmasked_dims: Tuple[int] = (256, 256), + zipformer_downsampling_factors: Tuple[int] = (2, 4), + nhead: Tuple[int] = (8, 8), + feedforward_dim: Tuple[int] = (1536, 2048), + num_encoder_layers: Tuple[int] = (12, 12), + dropout: float = 0.1, + cnn_module_kernels: Tuple[int] = (31, 31), + pos_dim: int = 4, + warmup_batches: float = 4000.0, + ) -> None: + super(Zipformer, self).__init__() + + self.num_features = num_features + self.encoder_unmasked_dims = encoder_unmasked_dims + assert 0 < encoder_dims[0] <= encoder_dims[1] + self.encoder_dims = encoder_dims + self.encoder_unmasked_dims = encoder_unmasked_dims + self.zipformer_downsampling_factors = zipformer_downsampling_factors + self.output_downsampling_factor = output_downsampling_factor + + # will be written to, see set_batch_count() + self.batch_count = 0 + self.warmup_end = warmup_batches + + for u, d in zip(encoder_unmasked_dims, encoder_dims): + assert u <= d, (u, d) + + # self.encoder_embed converts the input of shape (N, T, num_features) + # to the shape (N, (T - 7)//2, encoder_dims). + # That is, it does two things simultaneously: + # (1) subsampling: T -> (T - 7)//2 + # (2) embedding: num_features -> encoder_dims + self.encoder_embed = Conv2dSubsampling( + num_features, encoder_dims[0], dropout=dropout + ) + + # each one will be ZipformerEncoder or DownsampledZipformerEncoder + encoders = [] + + num_encoders = len(encoder_dims) + for i in range(num_encoders): + encoder_layer = ZipformerEncoderLayer( + encoder_dims[i], + attention_dim[i], + nhead[i], + feedforward_dim[i], + dropout, + cnn_module_kernels[i], + pos_dim, + ) + + # For the segment of the warmup period, we let the Conv2dSubsampling + # layer learn something. Then we start to warm up the other encoders. + encoder = ZipformerEncoder( + encoder_layer, + num_encoder_layers[i], + dropout, + warmup_begin=warmup_batches * (i + 1) / (num_encoders + 1), + warmup_end=warmup_batches * (i + 2) / (num_encoders + 1), + ) + + if zipformer_downsampling_factors[i] != 1: + encoder = DownsampledZipformerEncoder( + encoder, + input_dim=encoder_dims[i - 1] if i > 0 else encoder_dims[0], + output_dim=encoder_dims[i], + downsample=zipformer_downsampling_factors[i], + ) + encoders.append(encoder) + self.encoders = nn.ModuleList(encoders) + + # initializes self.skip_layers and self.skip_modules + self._init_skip_modules() + + self.downsample_output = AttentionDownsample( + encoder_dims[-1], encoder_dims[-1], downsample=output_downsampling_factor + ) + + def _get_layer_skip_dropout_prob(self): + if not self.training: + return 0.0 + batch_count = self.batch_count + min_dropout_prob = 0.025 + + if batch_count > self.warmup_end: + return min_dropout_prob + else: + return 0.5 - (batch_count / self.warmup_end) * (0.5 - min_dropout_prob) + + def _init_skip_modules(self): + """ + If self.zipformer_downampling_factors = (1, 2, 4, 8, 4, 2), then at the input of layer + indexed 4 (in zero indexing), with has subsapling_factor=4, we combine the output of + layers 2 and 3; and at the input of layer indexed 5, which which has subsampling_factor=2, + we combine the outputs of layers 1 and 5. + """ + skip_layers = [] + skip_modules = [] + z = self.zipformer_downsampling_factors + for i in range(len(z)): + if i <= 1 or z[i - 1] <= z[i]: + skip_layers.append(None) + skip_modules.append(SimpleCombinerIdentity()) + else: + # TEMP + for j in range(i - 2, -1, -1): + if z[j] <= z[i] or j == 0: + # TEMP logging statement. + logging.info( + f"At encoder stack {i}, which has downsampling_factor={z[i]}, we will " + f"combine the outputs of layers {j} and {i-1}, with downsampling_factors={z[j]} and {z[i-1]}." + ) + skip_layers.append(j) + skip_modules.append( + SimpleCombiner( + self.encoder_dims[j], + self.encoder_dims[i - 1], + min_weight=(0.0, 0.25), + ) + ) + break + self.skip_layers = skip_layers + self.skip_modules = nn.ModuleList(skip_modules) + + def get_feature_masks(self, x: torch.Tensor) -> List[float]: + # Note: The actual return type is Union[List[float], List[Tensor]], + # but to make torch.jit.script() work, we use List[float] + """ + In eval mode, returns [1.0] * num_encoders; in training mode, returns a number of + randomized feature masks, one per encoder. + On e.g. 15% of frames, these masks will zero out all enocder dims larger than + some supplied number, e.g. >256, so in effect on those frames we are using + a smaller encoer dim. + + We generate the random masks at this level because we want the 2 masks to 'agree' + all the way up the encoder stack. This will mean that the 1st mask will have + mask values repeated self.zipformer_subsampling_factor times. + + Args: + x: the embeddings (needed for the shape and dtype and device), of shape + (num_frames, batch_size, encoder_dims0) + """ + num_encoders = len(self.encoder_dims) + if torch.jit.is_scripting() or not self.training: + return [1.0] * num_encoders + + (num_frames0, batch_size, _encoder_dims0) = x.shape + + assert self.encoder_dims[0] == _encoder_dims0, ( + self.encoder_dims, + _encoder_dims0, + ) + + max_downsampling_factor = max(self.zipformer_downsampling_factors) + + num_frames_max = num_frames0 + max_downsampling_factor - 1 + + feature_mask_dropout_prob = 0.15 + + # frame_mask_max shape: (num_frames_max, batch_size, 1) + frame_mask_max = ( + torch.rand(num_frames_max, batch_size, 1, device=x.device) + > feature_mask_dropout_prob + ).to(x.dtype) + + feature_masks = [] + for i in range(num_encoders): + ds = self.zipformer_downsampling_factors[i] + upsample_factor = max_downsampling_factor // ds + + frame_mask = ( + frame_mask_max.unsqueeze(1) + .expand(num_frames_max, upsample_factor, batch_size, 1) + .reshape(num_frames_max * upsample_factor, batch_size, 1) + ) + num_frames = (num_frames0 + ds - 1) // ds + frame_mask = frame_mask[:num_frames] + feature_mask = torch.ones( + num_frames, + batch_size, + self.encoder_dims[i], + dtype=x.dtype, + device=x.device, + ) + u = self.encoder_unmasked_dims[i] + feature_mask[:, :, u:] *= frame_mask + feature_masks.append(feature_mask) + + return feature_masks + + def forward( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ + Args: + x: + The input tensor. Its shape is (batch_size, seq_len, feature_dim). + x_lens: + A tensor of shape (batch_size,) containing the number of frames in + `x` before padding. + Returns: + Return a tuple containing 2 tensors: + - embeddings: its shape is (batch_size, output_seq_len, encoder_dims[-1]) + - lengths, a tensor of shape (batch_size,) containing the number + of frames in `embeddings` before padding. + """ + x = self.encoder_embed(x) + + x = x.permute(1, 0, 2) # (N, T, C) -> (T, N, C) + + lengths = (x_lens - 7) >> 1 + assert x.size(0) == lengths.max().item(), (x.shape, lengths, lengths.max()) + mask = make_pad_mask(lengths) + + outputs = [] + feature_masks = self.get_feature_masks(x) + + for i, (module, skip_module) in enumerate( + zip(self.encoders, self.skip_modules) + ): + ds = self.zipformer_downsampling_factors[i] + k = self.skip_layers[i] + if isinstance(k, int): + layer_skip_dropout_prob = self._get_layer_skip_dropout_prob() + if torch.jit.is_scripting(): + x = skip_module(outputs[k], x) + elif (not self.training) or random.random() > layer_skip_dropout_prob: + x = skip_module(outputs[k], x) + x = module( + x, + feature_mask=feature_masks[i], + src_key_padding_mask=None if mask is None else mask[..., ::ds], + ) + outputs.append(x) + + x = self.downsample_output(x) + # class Downsample has this rounding behavior.. + assert self.output_downsampling_factor == 2, self.output_downsampling_factor + lengths = (lengths + 1) >> 1 + + x = x.permute(1, 0, 2) # (T, N, C) ->(N, T, C) + + return x, lengths + + +class ZipformerEncoderLayer(nn.Module): + """ + ZipformerEncoderLayer is made up of self-attn, feedforward and convolution networks. + + Args: + d_model: the number of expected features in the input (required). + nhead: the number of heads in the multiheadattention models (required). + feedforward_dim: the dimension of the feedforward network model (default=2048). + dropout: the dropout value (default=0.1). + cnn_module_kernel (int): Kernel size of convolution module. + + Examples:: + >>> encoder_layer = ZipformerEncoderLayer(d_model=512, nhead=8) + >>> src = torch.rand(10, 32, 512) + >>> pos_emb = torch.rand(32, 19, 512) + >>> out = encoder_layer(src, pos_emb) + """ + + def __init__( + self, + d_model: int, + attention_dim: int, + nhead: int, + feedforward_dim: int = 2048, + dropout: float = 0.1, + cnn_module_kernel: int = 31, + pos_dim: int = 4, + ) -> None: + super(ZipformerEncoderLayer, self).__init__() + + self.d_model = d_model + + # will be written to, see set_batch_count() + self.batch_count = 0 + + self.self_attn = RelPositionMultiheadAttention( + d_model, + attention_dim, + nhead, + pos_dim, + dropout=0.0, + ) + + self.pooling = PoolingModule(d_model) + + self.feed_forward1 = FeedforwardModule(d_model, feedforward_dim, dropout) + + self.feed_forward2 = FeedforwardModule(d_model, feedforward_dim, dropout) + + self.feed_forward3 = FeedforwardModule(d_model, feedforward_dim, dropout) + + self.conv_module1 = ConvolutionModule(d_model, cnn_module_kernel) + + self.conv_module2 = ConvolutionModule(d_model, cnn_module_kernel) + + self.norm_final = BasicNorm(d_model) + + self.bypass_scale = nn.Parameter(torch.tensor(0.5)) + + # try to ensure the output is close to zero-mean (or at least, zero-median). + self.balancer = ActivationBalancer( + d_model, + channel_dim=-1, + min_positive=0.45, + max_positive=0.55, + max_abs=6.0, + ) + self.whiten = Whiten( + num_groups=1, whitening_limit=5.0, prob=(0.025, 0.25), grad_scale=0.01 + ) + + def get_bypass_scale(self): + if torch.jit.is_scripting() or not self.training: + return self.bypass_scale + if random.random() < 0.1: + # ensure we get grads if self.bypass_scale becomes out of range + return self.bypass_scale + # hardcode warmup period for bypass scale + warmup_period = 20000.0 + initial_clamp_min = 0.75 + final_clamp_min = 0.25 + if self.batch_count > warmup_period: + clamp_min = final_clamp_min + else: + clamp_min = initial_clamp_min - (self.batch_count / warmup_period) * ( + initial_clamp_min - final_clamp_min + ) + return self.bypass_scale.clamp(min=clamp_min, max=1.0) + + def get_dynamic_dropout_rate(self): + # return dropout rate for the dynamic modules (self_attn, pooling, convolution); this + # starts at 0.2 and rapidly decreases to 0. Its purpose is to keep the training stable + # at the beginning, by making the network focus on the feedforward modules. + if torch.jit.is_scripting() or not self.training: + return 0.0 + warmup_period = 2000.0 + initial_dropout_rate = 0.2 + final_dropout_rate = 0.0 + if self.batch_count > warmup_period: + return final_dropout_rate + else: + return initial_dropout_rate - ( + initial_dropout_rate * final_dropout_rate + ) * (self.batch_count / warmup_period) + + def forward( + self, + src: Tensor, + pos_emb: Tensor, + src_mask: Optional[Tensor] = None, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + """ + Pass the input through the encoder layer. + + Args: + src: the sequence to the encoder layer (required). + pos_emb: Positional embedding tensor (required). + src_mask: the mask for the src sequence (optional). + src_key_padding_mask: the mask for the src keys per batch (optional). + batch_split: if not None, this layer will only be applied to + + Shape: + src: (S, N, E). + pos_emb: (N, 2*S-1, E) + src_mask: (S, S). + src_key_padding_mask: (N, S). + S is the source sequence length, N is the batch size, E is the feature number + """ + src_orig = src + + # macaron style feed forward module + src = src + self.feed_forward1(src) + + # dropout rate for submodules that interact with time. + dynamic_dropout = self.get_dynamic_dropout_rate() + + # pooling module + if torch.jit.is_scripting(): + src = src + self.pooling(src, key_padding_mask=src_key_padding_mask) + elif random.random() > dynamic_dropout: + src = src + self.pooling(src, key_padding_mask=src_key_padding_mask) + + if torch.jit.is_scripting(): + src_att, attn_weights = self.self_attn( + src, + pos_emb=pos_emb, + attn_mask=src_mask, + key_padding_mask=src_key_padding_mask, + ) + src = src + src_att + + src = src + self.conv_module1( + src, src_key_padding_mask=src_key_padding_mask + ) + + src = src + self.feed_forward2(src) + + src = src + self.self_attn.forward2(src, attn_weights) + + src = src + self.conv_module2( + src, src_key_padding_mask=src_key_padding_mask + ) + else: + use_self_attn = random.random() > dynamic_dropout + if use_self_attn: + src_att, attn_weights = self.self_attn( + src, + pos_emb=pos_emb, + attn_mask=src_mask, + key_padding_mask=src_key_padding_mask, + ) + src = src + src_att + + if random.random() > dynamic_dropout: + src = src + self.conv_module1( + src, src_key_padding_mask=src_key_padding_mask + ) + + src = src + self.feed_forward2(src) + if use_self_attn: + src = src + self.self_attn.forward2(src, attn_weights) + + if random.random() > dynamic_dropout: + src = src + self.conv_module2( + src, src_key_padding_mask=src_key_padding_mask + ) + + src = src + self.feed_forward3(src) + + src = self.norm_final(self.balancer(src)) + + delta = src - src_orig + + src = src_orig + delta * self.get_bypass_scale() + + return self.whiten(src) + + +class ZipformerEncoder(nn.Module): + r"""ZipformerEncoder is a stack of N encoder layers + + Args: + encoder_layer: an instance of the ZipformerEncoderLayer() class (required). + num_layers: the number of sub-encoder-layers in the encoder (required). + + Examples:: + >>> encoder_layer = ZipformerEncoderLayer(d_model=512, nhead=8) + >>> zipformer_encoder = ZipformerEncoder(encoder_layer, num_layers=6) + >>> src = torch.rand(10, 32, 512) + >>> out = zipformer_encoder(src) + """ + + def __init__( + self, + encoder_layer: nn.Module, + num_layers: int, + dropout: float, + warmup_begin: float, + warmup_end: float, + ) -> None: + super().__init__() + # will be written to, see set_batch_count() Note: in inference time this + # may be zero but should be treated as large, we can check if + # self.training is true. + self.batch_count = 0 + self.warmup_begin = warmup_begin + self.warmup_end = warmup_end + # module_seed is for when we need a random number that is unique to the module but + # shared across jobs. It's used to randomly select how many layers to drop, + # so that we can keep this consistent across worker tasks (for efficiency). + self.module_seed = torch.randint(0, 1000, ()).item() + + self.encoder_pos = RelPositionalEncoding(encoder_layer.d_model, dropout) + + self.layers = nn.ModuleList( + [copy.deepcopy(encoder_layer) for i in range(num_layers)] + ) + self.num_layers = num_layers + + assert 0 <= warmup_begin <= warmup_end, (warmup_begin, warmup_end) + + delta = (1.0 / num_layers) * (warmup_end - warmup_begin) + cur_begin = warmup_begin + for i in range(num_layers): + self.layers[i].warmup_begin = cur_begin + cur_begin += delta + self.layers[i].warmup_end = cur_begin + + def get_layers_to_drop(self, rnd_seed: int): + ans = set() + if not self.training: + return ans + + batch_count = self.batch_count + num_layers = len(self.layers) + + def get_layerdrop_prob(layer: int) -> float: + layer_warmup_begin = self.layers[layer].warmup_begin + layer_warmup_end = self.layers[layer].warmup_end + + initial_layerdrop_prob = 0.5 + final_layerdrop_prob = 0.05 + + if batch_count == 0: + # As a special case, if batch_count == 0, return 0 (drop no + # layers). This is rather ugly, I'm afraid; it is intended to + # enable our scan_pessimistic_batches_for_oom() code to work correctly + # so if we are going to get OOM it will happen early. + # also search for 'batch_count' with quotes in this file to see + # how we initialize the warmup count to a random number between + # 0 and 10. + return 0.0 + elif batch_count < layer_warmup_begin: + return initial_layerdrop_prob + elif batch_count > layer_warmup_end: + return final_layerdrop_prob + else: + # linearly interpolate + t = (batch_count - layer_warmup_begin) / layer_warmup_end + assert 0.0 <= t < 1.001, t + return initial_layerdrop_prob + t * ( + final_layerdrop_prob - initial_layerdrop_prob + ) + + shared_rng = random.Random(batch_count + self.module_seed) + independent_rng = random.Random(rnd_seed) + + layerdrop_probs = [get_layerdrop_prob(i) for i in range(num_layers)] + tot = sum(layerdrop_probs) + # Instead of drawing the samples independently, we first randomly decide + # how many layers to drop out, using the same random number generator between + # jobs so that all jobs drop out the same number (this is for speed). + # Then we use an approximate approach to drop out the individual layers + # with their specified probs while reaching this exact target. + num_to_drop = int(tot) + int(shared_rng.random() < (tot - int(tot))) + + layers = list(range(num_layers)) + independent_rng.shuffle(layers) + + # go through the shuffled layers until we get the required number of samples. + if num_to_drop > 0: + for layer in itertools.cycle(layers): + if independent_rng.random() < layerdrop_probs[layer]: + ans.add(layer) + if len(ans) == num_to_drop: + break + if shared_rng.random() < 0.005 or __name__ == "__main__": + logging.info( + f"warmup_begin={self.warmup_begin:.1f}, warmup_end={self.warmup_end:.1f}, " + f"batch_count={batch_count:.1f}, num_to_drop={num_to_drop}, layers_to_drop={ans}" + ) + return ans + + def forward( + self, + src: Tensor, + # Note: The type of feature_mask should be Union[float, Tensor], + # but to make torch.jit.script() work, we use `float` here + feature_mask: float = 1.0, + mask: Optional[Tensor] = None, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + r"""Pass the input through the encoder layers in turn. + + Args: + src: the sequence to the encoder (required). + feature_mask: something that broadcasts with src, that we'll multiply `src` + by at every layer. + mask: the mask for the src sequence (optional). + src_key_padding_mask: the mask for the src keys per batch (optional). + + Shape: + src: (S, N, E). + pos_emb: (N, 2*S-1, E) + mask: (S, S). + src_key_padding_mask: (N, S). + S is the source sequence length, T is the target sequence length, N is the batch size, E is the feature number + + Returns: (x, x_no_combine), both of shape (S, N, E) + """ + pos_emb = self.encoder_pos(src) + output = src + + if torch.jit.is_scripting(): + layers_to_drop = [] + else: + rnd_seed = src.numel() + random.randint(0, 1000) + layers_to_drop = self.get_layers_to_drop(rnd_seed) + + output = output * feature_mask + + for i, mod in enumerate(self.layers): + if not torch.jit.is_scripting(): + if i in layers_to_drop: + continue + output = mod( + output, + pos_emb, + src_mask=mask, + src_key_padding_mask=src_key_padding_mask, + ) + + output = output * feature_mask + + return output + + +class DownsampledZipformerEncoder(nn.Module): + r""" + DownsampledZipformerEncoder is a zipformer encoder evaluated at a reduced frame rate, + after convolutional downsampling, and then upsampled again at the output, and combined + with the origin input, so that the output has the same shape as the input. + """ + + def __init__( + self, encoder: nn.Module, input_dim: int, output_dim: int, downsample: int + ): + super(DownsampledZipformerEncoder, self).__init__() + self.downsample_factor = downsample + self.downsample = AttentionDownsample(input_dim, output_dim, downsample) + self.encoder = encoder + self.upsample = SimpleUpsample(output_dim, downsample) + self.out_combiner = SimpleCombiner( + input_dim, output_dim, min_weight=(0.0, 0.25) + ) + + def forward( + self, + src: Tensor, + # Note: the type of feature_mask should be Unino[float, Tensor], + # but to make torch.jit.script() happ, we use float here + feature_mask: float = 1.0, + mask: Optional[Tensor] = None, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + r"""Downsample, go through encoder, upsample. + + Args: + src: the sequence to the encoder (required). + feature_mask: something that broadcasts with src, that we'll multiply `src` + by at every layer. feature_mask is expected to be already downsampled by + self.downsample_factor. + mask: the mask for the src sequence (optional). CAUTION: we need to downsample + this, if we are to support it. Won't work correctly yet. + src_key_padding_mask: the mask for the src keys per batch (optional). Should + be downsampled already. + + Shape: + src: (S, N, E). + mask: (S, S). + src_key_padding_mask: (N, S). + S is the source sequence length, T is the target sequence length, N is the batch size, E is the feature number + + Returns: output of shape (S, N, F) where F is the number of output features + (output_dim to constructor) + """ + src_orig = src + src = self.downsample(src) + ds = self.downsample_factor + if mask is not None: + mask = mask[::ds, ::ds] + + src = self.encoder( + src, + feature_mask=feature_mask, + mask=mask, + src_key_padding_mask=mask, + ) + src = self.upsample(src) + # remove any extra frames that are not a multiple of downsample_factor + src = src[: src_orig.shape[0]] + + return self.out_combiner(src_orig, src) + + +class AttentionDownsample(torch.nn.Module): + """ + Does downsampling with attention, by weighted sum, and a projection.. + """ + + def __init__(self, in_channels: int, out_channels: int, downsample: int): + """ + Require out_channels > in_channels. + """ + super(AttentionDownsample, self).__init__() + self.query = nn.Parameter(torch.randn(in_channels) * (in_channels**-0.5)) + + # fill in the extra dimensions with a projection of the input + if out_channels > in_channels: + self.extra_proj = nn.Linear( + in_channels * downsample, out_channels - in_channels, bias=False + ) + else: + self.extra_proj = None + self.downsample = downsample + + def forward(self, src: Tensor) -> Tensor: + """ + x: (seq_len, batch_size, in_channels) + Returns a tensor of shape + ( (seq_len+downsample-1)//downsample, batch_size, out_channels) + """ + (seq_len, batch_size, in_channels) = src.shape + ds = self.downsample + d_seq_len = (seq_len + ds - 1) // ds + + # Pad to an exact multiple of self.downsample + if seq_len != d_seq_len * ds: + # right-pad src, repeating the last element. + pad = d_seq_len * ds - seq_len + src_extra = src[src.shape[0] - 1 :].expand(pad, src.shape[1], src.shape[2]) + src = torch.cat((src, src_extra), dim=0) + assert src.shape[0] == d_seq_len * ds, (src.shape[0], d_seq_len, ds) + + src = src.reshape(d_seq_len, ds, batch_size, in_channels) + scores = (src * self.query).sum(dim=-1, keepdim=True) + + scores = penalize_abs_values_gt(scores, limit=10.0, penalty=1.0e-04) + + weights = scores.softmax(dim=1) + + # ans1 is the first `in_channels` channels of the output + ans = (src * weights).sum(dim=1) + src = src.permute(0, 2, 1, 3).reshape(d_seq_len, batch_size, ds * in_channels) + + if self.extra_proj is not None: + ans2 = self.extra_proj(src) + ans = torch.cat((ans, ans2), dim=2) + return ans + + +class SimpleUpsample(torch.nn.Module): + """ + A very simple form of upsampling that mostly just repeats the input, but + also adds a position-specific bias. + """ + + def __init__(self, num_channels: int, upsample: int): + super(SimpleUpsample, self).__init__() + self.bias = nn.Parameter(torch.randn(upsample, num_channels) * 0.01) + + def forward(self, src: Tensor) -> Tensor: + """ + x: (seq_len, batch_size, num_channels) + Returns a tensor of shape + ( (seq_len*upsample), batch_size, num_channels) + """ + upsample = self.bias.shape[0] + (seq_len, batch_size, num_channels) = src.shape + src = src.unsqueeze(1).expand(seq_len, upsample, batch_size, num_channels) + src = src + self.bias.unsqueeze(1) + src = src.reshape(seq_len * upsample, batch_size, num_channels) + return src + + +class SimpleCombinerIdentity(nn.Module): + def __init__(self, *args, **kwargs): + super().__init__() + + def forward(self, src1: Tensor, src2: Tensor) -> Tensor: + return src1 + + +class SimpleCombiner(torch.nn.Module): + """ + A very simple way of combining 2 vectors of 2 different dims, via a + learned weighted combination in the shared part of the dim. + Args: + dim1: the dimension of the first input, e.g. 256 + dim2: the dimension of the second input, e.g. 384. + The output will have the same dimension as dim2. + """ + + def __init__(self, dim1: int, dim2: int, min_weight: Tuple[float] = (0.0, 0.0)): + super(SimpleCombiner, self).__init__() + assert dim2 >= dim1, (dim2, dim1) + self.weight1 = nn.Parameter(torch.zeros(())) + self.min_weight = min_weight + + def forward(self, src1: Tensor, src2: Tensor) -> Tensor: + """ + src1: (*, dim1) + src2: (*, dim2) + + Returns: a tensor of shape (*, dim2) + """ + assert src1.shape[:-1] == src2.shape[:-1], (src1.shape, src2.shape) + + weight1 = self.weight1 + if not torch.jit.is_scripting(): + if ( + self.training + and random.random() < 0.25 + and self.min_weight != (0.0, 0.0) + ): + weight1 = weight1.clamp( + min=self.min_weight[0], max=1.0 - self.min_weight[1] + ) + + src1 = src1 * weight1 + src2 = src2 * (1.0 - weight1) + + src1_dim = src1.shape[-1] + src2_dim = src2.shape[-1] + if src1_dim != src2_dim: + if src1_dim < src2_dim: + src1 = torch.nn.functional.pad(src1, (0, src2_dim - src1_dim)) + else: + src1 = src1[:src2_dim] + + return src1 + src2 + + +class RelPositionalEncoding(torch.nn.Module): + """Relative positional encoding module. + + See : Appendix B in "Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context" + Modified from https://github.com/espnet/espnet/blob/master/espnet/nets/pytorch_backend/transformer/embedding.py + + Args: + d_model: Embedding dimension. + dropout_rate: Dropout rate. + max_len: Maximum input length. + + """ + + def __init__(self, d_model: int, dropout_rate: float, max_len: int = 5000) -> None: + """Construct a PositionalEncoding object.""" + super(RelPositionalEncoding, self).__init__() + self.d_model = d_model + self.dropout = torch.nn.Dropout(dropout_rate) + self.pe = None + self.extend_pe(torch.tensor(0.0).expand(1, max_len)) + + def extend_pe(self, x: Tensor) -> None: + """Reset the positional encodings.""" + if self.pe is not None: + # self.pe contains both positive and negative parts + # the length of self.pe is 2 * input_len - 1 + if self.pe.size(1) >= x.size(0) * 2 - 1: + # Note: TorchScript doesn't implement operator== for torch.Device + if self.pe.dtype != x.dtype or str(self.pe.device) != str(x.device): + self.pe = self.pe.to(dtype=x.dtype, device=x.device) + return + # Suppose `i` means to the position of query vecotr and `j` means the + # position of key vector. We use position relative positions when keys + # are to the left (i>j) and negative relative positions otherwise (i Tensor: + """Add positional encoding. + + Args: + x (torch.Tensor): Input tensor (time, batch, `*`). + + Returns: + torch.Tensor: Encoded tensor (batch, time, `*`). + torch.Tensor: Encoded tensor (batch, 2*time-1, `*`). + + """ + self.extend_pe(x) + pos_emb = self.pe[ + :, + self.pe.size(1) // 2 + - x.size(0) + + 1 : self.pe.size(1) // 2 # noqa E203 + + x.size(0), + ] + return self.dropout(pos_emb) + + +class RelPositionMultiheadAttention(nn.Module): + r"""Multi-Head Attention layer with relative position encoding + + This is a quite heavily modified from: "Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context", + we have to write up the differences. + + + Args: + embed_dim: total dimension of the model. + attention_dim: dimension in the attention module, may be less or more than embed_dim + but must be a multiple of num_heads. + num_heads: parallel attention heads. + dropout: a Dropout layer on attn_output_weights. Default: 0.0. + + Examples:: + + >>> rel_pos_multihead_attn = RelPositionMultiheadAttention(embed_dim, num_heads) + >>> attn_output, attn_output_weights = multihead_attn(query, key, value, pos_emb) + """ + + def __init__( + self, + embed_dim: int, + attention_dim: int, + num_heads: int, + pos_dim: int, + dropout: float = 0.0, + ) -> None: + super(RelPositionMultiheadAttention, self).__init__() + self.embed_dim = embed_dim + self.attention_dim = attention_dim + self.num_heads = num_heads + self.dropout = dropout + self.head_dim = attention_dim // num_heads + self.pos_dim = pos_dim + assert self.head_dim % 2 == 0, self.head_dim + assert self.head_dim * num_heads == attention_dim, ( + self.head_dim, + num_heads, + attention_dim, + ) + + # the initial_scale is supposed to take over the "scaling" factor of + # head_dim ** -0.5, dividing it between the query and key. + in_proj_dim = ( + 2 * attention_dim + + attention_dim // 2 # query, key + + pos_dim * num_heads # value + ) # positional encoding query + + self.in_proj = ScaledLinear( + embed_dim, in_proj_dim, bias=True, initial_scale=self.head_dim**-0.25 + ) + + # self.whiten_values is applied on the values in forward(); + # it just copies the keys but prevents low-rank distribution by modifying grads. + self.whiten_values = Whiten( + num_groups=num_heads, + whitening_limit=2.0, + prob=(0.025, 0.25), + grad_scale=0.025, + ) + self.whiten_keys = Whiten( + num_groups=num_heads, + whitening_limit=2.0, + prob=(0.025, 0.25), + grad_scale=0.025, + ) + + # linear transformation for positional encoding. + self.linear_pos = ScaledLinear( + embed_dim, num_heads * pos_dim, bias=False, initial_scale=0.05 + ) + + # the following are for diagnosics only, see --print-diagnostics option. + # they only copy their inputs. + self.copy_pos_query = Identity() + self.copy_query = Identity() + + self.out_proj = ScaledLinear( + attention_dim // 2, embed_dim, bias=True, initial_scale=0.05 + ) + + self.in_proj2 = nn.Linear(embed_dim, attention_dim // 2, bias=False) + self.out_proj2 = ScaledLinear( + attention_dim // 2, embed_dim, bias=True, initial_scale=0.05 + ) + # self.whiten_values2 is applied on the values in forward2() + self.whiten_values2 = Whiten( + num_groups=num_heads, + whitening_limit=2.0, + prob=(0.025, 0.25), + grad_scale=0.025, + ) + + def forward( + self, + x: Tensor, + pos_emb: Tensor, + key_padding_mask: Optional[Tensor] = None, + attn_mask: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor]: + r""" + Args: + x: input to be projected to query, key, value + pos_emb: Positional embedding tensor + key_padding_mask: if provided, specified padding elements in the key will + be ignored by the attention. When given a binary mask and a value is True, + the corresponding value on the attention layer will be ignored. When given + a byte mask and a value is non-zero, the corresponding value on the attention + layer will be ignored + attn_mask: 2D or 3D mask that prevents attention to certain positions. A 2D mask will be broadcasted for all + the batches while a 3D mask allows to specify a different mask for the entries of each batch. + + Shape: + - Inputs: + - x: :math:`(L, N, E)` where L is the target sequence length, N is the batch size, E is + the embedding dimension. + - pos_emb: :math:`(N, 2*L-1, E)` where L is the target sequence length, N is the batch size, E is + the embedding dimension. + - key_padding_mask: :math:`(N, S)` where N is the batch size, S is the source sequence length. + If a ByteTensor is provided, the non-zero positions will be ignored while the position + with the zero positions will be unchanged. If a BoolTensor is provided, the positions with the + value of ``True`` will be ignored while the position with the value of ``False`` will be unchanged. + - attn_mask: 2D mask :math:`(L, S)` where L is the target sequence length, S is the source sequence length. + 3D mask :math:`(N*num_heads, L, S)` where N is the batch size, L is the target sequence length, + S is the source sequence length. attn_mask ensure that position i is allowed to attend the unmasked + positions. If a ByteTensor is provided, the non-zero positions are not allowed to attend + while the zero positions will be unchanged. If a BoolTensor is provided, positions with ``True`` + is not allowed to attend while ``False`` values will be unchanged. If a FloatTensor + is provided, it will be added to the attention weight. + + - Returns: (attn_output, attn_weights) + + - attn_output: :math:`(S, N, E)` where S is the sequence length, N is the batch size, + E is the embedding dimension. + - attn_weights: :math:`(N * N, S, S)` where N is the batch size, H is the num-heads + and S is the sequence length. + """ + x, weights = self.multi_head_attention_forward( + self.in_proj(x), + self.linear_pos(pos_emb), + self.attention_dim, + self.num_heads, + self.dropout, + self.out_proj.weight, + self.out_proj.bias, + training=self.training, + key_padding_mask=key_padding_mask, + attn_mask=attn_mask, + ) + return x, weights + + def multi_head_attention_forward( + self, + x_proj: Tensor, + pos: Tensor, + attention_dim: int, + num_heads: int, + dropout_p: float, + out_proj_weight: Tensor, + out_proj_bias: Tensor, + training: bool = True, + key_padding_mask: Optional[Tensor] = None, + attn_mask: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor]: + r""" + Args: + x_proj: the projected input, to be split into query, key, value. + pos: head-specific biases arising from the positional embeddings. + attention_dim: dimension inside attention mechanism + num_heads: parallel attention heads. + dropout_p: probability of an element to be zeroed. + out_proj_weight, out_proj_bias: the output projection weight and bias. + training: apply dropout if is ``True``. + key_padding_mask: if provided, specified padding elements in the key will + be ignored by the attention. This is an binary mask. When the value is True, + the corresponding value on the attention layer will be filled with -inf. + attn_mask: 2D or 3D mask that prevents attention to certain positions. A 2D mask will be broadcasted for all + the batches while a 3D mask allows to specify a different mask for the entries of each batch. + + Shape: + Inputs: + - x: :math:`(L, N, 7 * A // 2)` where L is the target sequence length, N is the batch size, A is + the attention dimension. Will be split into (query, key, value, pos). + - pos: :math:`(N, 2*L-1, A//2)` or :math:`(1, 2*L-1, A//2)` where L is the sequence + length, N is the batch size, and A is the attention dim. + - key_padding_mask: :math:`(N, S)` where N is the batch size, S is the source sequence length. + If a ByteTensor is provided, the non-zero positions will be ignored while the zero positions + will be unchanged. If a BoolTensor is provided, the positions with the + value of ``True`` will be ignored while the position with the value of ``False`` will be unchanged. + - attn_mask: 2D mask :math:`(L, S)` where L is the target sequence length, S is the source sequence length. + 3D mask :math:`(N*num_heads, L, S)` where N is the batch size, L is the target sequence length, + S is the source sequence length. attn_mask ensures that position i is allowed to attend the unmasked + positions. If a ByteTensor is provided, the non-zero positions are not allowed to attend + while the zero positions will be unchanged. If a BoolTensor is provided, positions with ``True`` + are not allowed to attend while ``False`` values will be unchanged. If a FloatTensor + is provided, it will be added to the attention weight. + + Outputs: + - attn_output: :math:`(L, N, E)` where L is the target sequence length, N is the batch size, + E is the embedding dimension. + - attn_weights: :math:`(N * H, S, S)` where N is the batch size, + H is the num-heads, S is the sequence length. + """ + + seq_len, bsz, _ = x_proj.size() + + head_dim = attention_dim // num_heads + pos_dim = self.pos_dim # positional-encoding dim per head + assert ( + head_dim * num_heads == attention_dim + ), f"attention_dim must be divisible by num_heads: {head_dim}, {num_heads}, {attention_dim}" + + # self-attention + q = x_proj[..., 0:attention_dim] + k = x_proj[..., attention_dim : 2 * attention_dim] + value_dim = attention_dim // 2 + v = x_proj[..., 2 * attention_dim : 2 * attention_dim + value_dim] + # p is the position-encoding query, its dimension is num_heads*pos_dim.. + p = x_proj[..., 2 * attention_dim + value_dim :] + + k = self.whiten_keys(k) # does nothing in the forward pass. + v = self.whiten_values(v) # does nothing in the forward pass. + q = self.copy_query(q) # for diagnostics only, does nothing. + p = self.copy_pos_query(p) # for diagnostics only, does nothing. + + if attn_mask is not None: + assert ( + attn_mask.dtype == torch.float32 + or attn_mask.dtype == torch.float64 + or attn_mask.dtype == torch.float16 + or attn_mask.dtype == torch.uint8 + or attn_mask.dtype == torch.bool + ), "Only float, byte, and bool types are supported for attn_mask, not {}".format( + attn_mask.dtype + ) + if attn_mask.dtype == torch.uint8: + warnings.warn( + "Byte tensor for attn_mask is deprecated. Use bool tensor instead." + ) + attn_mask = attn_mask.to(torch.bool) + + if attn_mask.dim() == 2: + attn_mask = attn_mask.unsqueeze(0) + if list(attn_mask.size()) != [1, seq_len, seq_len]: + raise RuntimeError("The size of the 2D attn_mask is not correct.") + elif attn_mask.dim() == 3: + if list(attn_mask.size()) != [ + bsz * num_heads, + seq_len, + seq_len, + ]: + raise RuntimeError("The size of the 3D attn_mask is not correct.") + else: + raise RuntimeError( + "attn_mask's dimension {} is not supported".format(attn_mask.dim()) + ) + # attn_mask's dim is 3 now. + + # convert ByteTensor key_padding_mask to bool + if key_padding_mask is not None and key_padding_mask.dtype == torch.uint8: + warnings.warn( + "Byte tensor for key_padding_mask is deprecated. Use bool tensor instead." + ) + key_padding_mask = key_padding_mask.to(torch.bool) + + q = q.reshape(seq_len, bsz, num_heads, head_dim) + p = p.reshape(seq_len, bsz, num_heads, pos_dim) + k = k.reshape(seq_len, bsz, num_heads, head_dim) + v = v.reshape(seq_len, bsz * num_heads, head_dim // 2).transpose(0, 1) + + if key_padding_mask is not None: + assert key_padding_mask.size(0) == bsz, "{} == {}".format( + key_padding_mask.size(0), bsz + ) + assert key_padding_mask.size(1) == seq_len, "{} == {}".format( + key_padding_mask.size(1), seq_len + ) + + q = q.permute(1, 2, 0, 3) # (batch, head, time1, head_dim) + p = p.permute(1, 2, 0, 3) # (batch, head, time1, pos_dim) + k = k.permute(1, 2, 3, 0) # (batch, head, d_k, time2) + + seq_len2 = 2 * seq_len - 1 + pos = pos.reshape(1, seq_len2, num_heads, pos_dim).permute(0, 2, 3, 1) + # pos shape now: (batch, head, pos_dim, seq_len2) + + # (batch, head, time1, pos_dim) x (1, head, pos_dim, seq_len2) -> (batch, head, time1, seq_len2) + # [where seq_len2 represents relative position.] + pos_weights = torch.matmul(p, pos) + # the following .as_strided() expression converts the last axis of pos_weights from relative + # to absolute position. I don't know whether I might have got the time-offsets backwards or + # not, but let this code define which way round it is supposed to be. + pos_weights = pos_weights.as_strided( + (bsz, num_heads, seq_len, seq_len), + ( + pos_weights.stride(0), + pos_weights.stride(1), + pos_weights.stride(2) - pos_weights.stride(3), + pos_weights.stride(3), + ), + storage_offset=pos_weights.stride(3) * (seq_len - 1), + ) + + # caution: they are really scores at this point. + attn_output_weights = torch.matmul(q, k) + pos_weights + + if not torch.jit.is_scripting(): + if training and random.random() < 0.1: + # This is a harder way of limiting the attention scores to not be too large. + # It incurs a penalty if any of them has an absolute value greater than 50.0. + # this should be outside the normal range of the attention scores. We use + # this mechanism instead of, say, a limit on entropy, because once the entropy + # gets very small gradients through the softmax can become very small, and + # some mechanisms like that become ineffective. + attn_output_weights = penalize_abs_values_gt( + attn_output_weights, limit=25.0, penalty=1.0e-04 + ) + + # attn_output_weights: (batch, head, time1, time2) + attn_output_weights = attn_output_weights.view( + bsz * num_heads, seq_len, seq_len + ) + + assert list(attn_output_weights.size()) == [ + bsz * num_heads, + seq_len, + seq_len, + ] + + if attn_mask is not None: + if attn_mask.dtype == torch.bool: + attn_output_weights.masked_fill_(attn_mask, float("-inf")) + else: + attn_output_weights += attn_mask + + if key_padding_mask is not None: + attn_output_weights = attn_output_weights.view( + bsz, num_heads, seq_len, seq_len + ) + attn_output_weights = attn_output_weights.masked_fill( + key_padding_mask.unsqueeze(1).unsqueeze(2), + float("-inf"), + ) + attn_output_weights = attn_output_weights.view( + bsz * num_heads, seq_len, seq_len + ) + + # Using this version of softmax, defined in scaling.py, + # should save a little of the memory used in backprop by, if + # we are in automatic mixed precision mode (amp) == autocast, + # only storing the half-precision output for backprop purposes. + attn_output_weights = softmax(attn_output_weights, dim=-1) + + attn_output_weights = nn.functional.dropout( + attn_output_weights, p=dropout_p, training=training + ) + + attn_output = torch.bmm(attn_output_weights, v) + assert list(attn_output.size()) == [bsz * num_heads, seq_len, head_dim // 2] + attn_output = ( + attn_output.transpose(0, 1) + .contiguous() + .view(seq_len, bsz, attention_dim // 2) + ) + attn_output = nn.functional.linear(attn_output, out_proj_weight, out_proj_bias) + + return attn_output, attn_output_weights + + def forward2( + self, + x: Tensor, + attn_weights: Tensor, + ) -> Tensor: + """ + Second forward function, where we re-use the attn_weights returned by the first forward function + but with different input. + Args: + x: input, of shape (seq_len, batch_size, embed_dim) + attn_weights: attention weights returned by forward(), of shape (batch_size * num_heads, seq_len, seq_len) + Returns: + output of the same shape as x, i.e. (seq_len, batch_size, embed_dim) + """ + num_heads = self.num_heads + (seq_len, bsz, embed_dim) = x.shape + head_dim = self.attention_dim // num_heads + # v: (tgt_len, bsz, embed_dim // 2) + v = self.in_proj2(x) + v = self.whiten_values2(v) # does nothing in the forward pass. + v = v.reshape(seq_len, bsz * num_heads, head_dim // 2).transpose(0, 1) + + # now v: (bsz * num_heads, seq_len, head_dim // 2) + attn_output = torch.bmm(attn_weights, v) + + if not torch.jit.is_scripting(): + if random.random() < 0.001 or __name__ == "__main__": + self._print_attn_stats(attn_weights, attn_output) + + # attn_output: (bsz * num_heads, seq_len, head_dim) + attn_output = ( + attn_output.transpose(0, 1) + .contiguous() + .view(seq_len, bsz, self.attention_dim // 2) + ) + # returned value is of shape (seq_len, bsz, embed_dim), like x. + return self.out_proj2(attn_output) + + def _print_attn_stats(self, attn_weights: Tensor, attn_output: Tensor): + # attn_weights: (batch_size * num_heads, seq_len, seq_len) + # attn_output: (bsz * num_heads, seq_len, head_dim) + (n, seq_len, head_dim) = attn_output.shape + num_heads = self.num_heads + bsz = n // num_heads + + with torch.no_grad(): + with torch.cuda.amp.autocast(enabled=False): + attn_weights = attn_weights.to(torch.float32) + attn_output = attn_output.to(torch.float32) + attn_weights_entropy = ( + -((attn_weights + 1.0e-20).log() * attn_weights) + .sum(dim=-1) + .reshape(bsz, num_heads, seq_len) + .mean(dim=(0, 2)) + ) + attn_output = attn_output.reshape(bsz, num_heads, seq_len, head_dim) + attn_output = attn_output.permute(1, 0, 2, 3).reshape( + num_heads, bsz * seq_len, head_dim + ) + attn_output_mean = attn_output.mean(dim=1, keepdim=True) + attn_output = attn_output - attn_output_mean + attn_covar = torch.matmul(attn_output.transpose(1, 2), attn_output) / ( + bsz * seq_len + ) + # attn_covar: (num_heads, head_dim, head_dim) + # eigs, _ = torch.symeig(attn_covar) + # logging.info(f"attn_weights_entropy = {attn_weights_entropy}, output_eigs = {eigs}") + + attn_covar = _diag(attn_covar).mean(dim=1) # (num_heads,) + embed_dim = self.in_proj2.weight.shape[1] + in_proj_covar = ( + self.in_proj2.weight.reshape(num_heads, head_dim, embed_dim) ** 2 + ).mean(dim=(1, 2)) + out_proj_covar = ( + self.out_proj2.weight.reshape(embed_dim, num_heads, head_dim) ** 2 + ).mean(dim=(0, 2)) + logging.info( + f"attn_weights_entropy = {attn_weights_entropy}, covar={attn_covar}, in_proj_covar={in_proj_covar}, out_proj_covar={out_proj_covar}" + ) + + +class PoolingModule(nn.Module): + """ + Averages the input over the time dimension and project with a square matrix. + """ + + def __init__(self, d_model: int): + super().__init__() + self.proj = ScaledLinear(d_model, d_model, initial_scale=0.1, bias=False) + + def forward(self, x: Tensor, key_padding_mask: Optional[Tensor] = None): + """ + Args: + x: a Tensor of shape (T, N, C) + key_padding_mask: a Tensor of bool, of shape (N, T), with True in masked + positions. + Returns: + a Tensor of shape (1, N, C) + """ + if key_padding_mask is not None: + pooling_mask = key_padding_mask.logical_not().to(x.dtype) # (N, T) + pooling_mask = pooling_mask / pooling_mask.sum(dim=1, keepdim=True) + pooling_mask = pooling_mask.transpose(0, 1).contiguous().unsqueeze(-1) + # now pooling_mask: (T, N, 1) + x = (x * pooling_mask).sum(dim=0, keepdim=True) + else: + num_frames = x.shape[0] + pooling_mask = 1.0 / num_frames + x = (x * pooling_mask).sum(dim=0, keepdim=True) + + x = self.proj(x) + return x + + +class FeedforwardModule(nn.Module): + """Feedforward module in Zipformer model.""" + + def __init__(self, d_model: int, feedforward_dim: int, dropout: float): + super(FeedforwardModule, self).__init__() + self.in_proj = nn.Linear(d_model, feedforward_dim) + self.balancer = ActivationBalancer( + feedforward_dim, channel_dim=-1, max_abs=10.0, min_prob=0.25 + ) + self.activation = DoubleSwish() + self.dropout = nn.Dropout(dropout) + self.out_proj = ScaledLinear(feedforward_dim, d_model, initial_scale=0.01) + + def forward(self, x: Tensor): + x = self.in_proj(x) + x = self.balancer(x) + x = self.activation(x) + x = self.dropout(x) + x = self.out_proj(x) + return x + + +class ConvolutionModule(nn.Module): + """ConvolutionModule in Zipformer model. + Modified from https://github.com/espnet/espnet/blob/master/espnet/nets/pytorch_backend/zipformer/convolution.py + + Args: + channels (int): The number of channels of conv layers. + kernel_size (int): Kernerl size of conv layers. + bias (bool): Whether to use bias in conv layers (default=True). + + """ + + def __init__(self, channels: int, kernel_size: int, bias: bool = True) -> None: + """Construct an ConvolutionModule object.""" + super(ConvolutionModule, self).__init__() + # kernerl_size should be a odd number for 'SAME' padding + assert (kernel_size - 1) % 2 == 0, kernel_size + + self.pointwise_conv1 = nn.Conv1d( + channels, + 2 * channels, + kernel_size=1, + stride=1, + padding=0, + bias=bias, + ) + + # after pointwise_conv1 we put x through a gated linear unit (nn.functional.glu). + # For most layers the normal rms value of channels of x seems to be in the range 1 to 4, + # but sometimes, for some reason, for layer 0 the rms ends up being very large, + # between 50 and 100 for different channels. This will cause very peaky and + # sparse derivatives for the sigmoid gating function, which will tend to make + # the loss function not learn effectively. (for most layers the average absolute values + # are in the range 0.5..9.0, and the average p(x>0), i.e. positive proportion, + # at the output of pointwise_conv1.output is around 0.35 to 0.45 for different + # layers, which likely breaks down as 0.5 for the "linear" half and + # 0.2 to 0.3 for the part that goes into the sigmoid. The idea is that if we + # constrain the rms values to a reasonable range via a constraint of max_abs=10.0, + # it will be in a better position to start learning something, i.e. to latch onto + # the correct range. + self.deriv_balancer1 = ActivationBalancer( + 2 * channels, + channel_dim=1, + max_abs=10.0, + min_positive=0.05, + max_positive=1.0, + ) + + self.depthwise_conv = nn.Conv1d( + channels, + channels, + kernel_size, + stride=1, + padding=(kernel_size - 1) // 2, + groups=channels, + bias=bias, + ) + + self.deriv_balancer2 = ActivationBalancer( + channels, + channel_dim=1, + min_positive=0.05, + max_positive=1.0, + max_abs=20.0, + ) + + self.activation = DoubleSwish() + + self.pointwise_conv2 = ScaledConv1d( + channels, + channels, + kernel_size=1, + stride=1, + padding=0, + bias=bias, + initial_scale=0.05, + ) + + def forward( + self, + x: Tensor, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + """Compute convolution module. + + Args: + x: Input tensor (#time, batch, channels). + src_key_padding_mask: the mask for the src keys per batch (optional): + (batch, #time), contains bool in masked positions. + + Returns: + Tensor: Output tensor (#time, batch, channels). + + """ + # exchange the temporal dimension and the feature dimension + x = x.permute(1, 2, 0) # (#batch, channels, time). + + # GLU mechanism + x = self.pointwise_conv1(x) # (batch, 2*channels, time) + + x = self.deriv_balancer1(x) + x = nn.functional.glu(x, dim=1) # (batch, channels, time) + + if src_key_padding_mask is not None: + x.masked_fill_(src_key_padding_mask.unsqueeze(1).expand_as(x), 0.0) + + # 1D Depthwise Conv + x = self.depthwise_conv(x) + + x = self.deriv_balancer2(x) + x = self.activation(x) + + x = self.pointwise_conv2(x) # (batch, channel, time) + + return x.permute(2, 0, 1) + + +class Conv2dSubsampling(nn.Module): + """Convolutional 2D subsampling (to 1/4 length). + + Convert an input of shape (N, T, idim) to an output + with shape (N, T', odim), where + T' = (T-3)//2 - 2 == (T-7)//2 + + It is based on + https://github.com/espnet/espnet/blob/master/espnet/nets/pytorch_backend/transformer/subsampling.py # noqa + """ + + def __init__( + self, + in_channels: int, + out_channels: int, + layer1_channels: int = 8, + layer2_channels: int = 32, + layer3_channels: int = 128, + dropout: float = 0.1, + ) -> None: + """ + Args: + in_channels: + Number of channels in. The input shape is (N, T, in_channels). + Caution: It requires: T >=7, in_channels >=7 + out_channels + Output dim. The output shape is (N, (T-7)//2, out_channels) + layer1_channels: + Number of channels in layer1 + layer2_channels: + Number of channels in layer2 + layer3_channels: + Number of channels in layer3 + """ + assert in_channels >= 7, in_channels + super().__init__() + + self.conv = nn.Sequential( + nn.Conv2d( + in_channels=1, + out_channels=layer1_channels, + kernel_size=3, + padding=(0, 1), # (time, freq) + ), + ActivationBalancer(layer1_channels, channel_dim=1), + DoubleSwish(), + nn.Conv2d( + in_channels=layer1_channels, + out_channels=layer2_channels, + kernel_size=3, + stride=2, + padding=0, + ), + ActivationBalancer(layer2_channels, channel_dim=1), + DoubleSwish(), + nn.Conv2d( + in_channels=layer2_channels, + out_channels=layer3_channels, + kernel_size=3, + stride=(1, 2), # (time, freq) + ), + ActivationBalancer(layer3_channels, channel_dim=1), + DoubleSwish(), + ) + out_height = (((in_channels - 1) // 2) - 1) // 2 + self.out = ScaledLinear(out_height * layer3_channels, out_channels) + self.dropout = nn.Dropout(dropout) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + """Subsample x. + + Args: + x: + Its shape is (N, T, idim). + + Returns: + Return a tensor of shape (N, (T-7)//2, odim) + """ + # On entry, x is (N, T, idim) + x = x.unsqueeze(1) # (N, T, idim) -> (N, 1, T, idim) i.e., (N, C, H, W) + x = self.conv(x) + # Now x is of shape (N, odim, (T-7)//2, ((idim-1)//2 - 1)//2) + b, c, t, f = x.size() + x = self.out(x.transpose(1, 2).reshape(b, t, c * f)) + # Now x is of shape (N, (T-7)//2, odim) + x = self.dropout(x) + return x + + +class AttentionCombine(nn.Module): + """ + This module combines a list of Tensors, all with the same shape, to + produce a single output of that same shape which, in training time, + is a random combination of all the inputs; but which in test time + will be just the last input. + + All but the last input will have a linear transform before we + randomly combine them; these linear transforms will be initialized + to the identity transform. + + The idea is that the list of Tensors will be a list of outputs of multiple + zipformer layers. This has a similar effect as iterated loss. (See: + DEJA-VU: DOUBLE FEATURE PRESENTATION AND ITERATED LOSS IN DEEP TRANSFORMER + NETWORKS). + """ + + def __init__( + self, + num_channels: int, + num_inputs: int, + random_prob: float = 0.25, + single_prob: float = 0.333, + ) -> None: + """ + Args: + num_channels: + the number of channels + num_inputs: + The number of tensor inputs, which equals the number of layers' + outputs that are fed into this module. E.g. in an 18-layer neural + net if we output layers 16, 12, 18, num_inputs would be 3. + random_prob: + the probability with which we apply a nontrivial mask, in training + mode. + single_prob: + the probability with which we mask to allow just a single + module's output (in training) + """ + super().__init__() + + self.random_prob = random_prob + self.single_prob = single_prob + self.weight = torch.nn.Parameter(torch.zeros(num_channels, num_inputs)) + self.bias = torch.nn.Parameter(torch.zeros(num_inputs)) + + assert 0 <= random_prob <= 1, random_prob + assert 0 <= single_prob <= 1, single_prob + + def forward(self, inputs: List[Tensor]) -> Tensor: + """Forward function. + Args: + inputs: + A list of Tensor, e.g. from various layers of a transformer. + All must be the same shape, of (*, num_channels) + Returns: + A Tensor of shape (*, num_channels). In test mode + this is just the final input. + """ + num_inputs = self.weight.shape[1] + assert len(inputs) == num_inputs + + # Shape of weights: (*, num_inputs) + num_channels = inputs[0].shape[-1] + num_frames = inputs[0].numel() // num_channels + + ndim = inputs[0].ndim + # stacked_inputs: (num_frames, num_channels, num_inputs) + stacked_inputs = torch.stack(inputs, dim=ndim).reshape( + (num_frames, num_channels, num_inputs) + ) + + scores = (stacked_inputs * self.weight).sum(dim=(1,)) + self.bias + + if random.random() < 0.002: + logging.info(f"Average scores are {scores.softmax(dim=1).mean(dim=0)}") + + if self.training: + # random masking.. + mask_start = torch.randint( + low=1, + high=int(num_inputs / self.random_prob), + size=(num_frames,), + device=scores.device, + ).unsqueeze(1) + # mask will have rows like: [ False, False, False, True, True, .. ] + arange = ( + torch.arange(num_inputs, device=scores.device) + .unsqueeze(0) + .expand(num_frames, num_inputs) + ) + mask = arange >= mask_start + + apply_single_prob = torch.logical_and( + torch.rand(size=(num_frames, 1), device=scores.device) + < self.single_prob, + mask_start < num_inputs, + ) + single_prob_mask = torch.logical_and( + apply_single_prob, arange < mask_start - 1 + ) + + mask = torch.logical_or(mask, single_prob_mask) + + scores = scores.masked_fill(mask, float("-inf")) + + if self.training and random.random() < 0.1: + scores = penalize_abs_values_gt(scores, limit=10.0, penalty=1.0e-04) + + weights = scores.softmax(dim=1) + + # (num_frames, num_channels, num_inputs) * (num_frames, num_inputs, 1) -> (num_frames, num_channels, 1), + ans = torch.matmul(stacked_inputs, weights.unsqueeze(2)) + # ans: (*, num_channels) + ans = ans.reshape(*tuple(inputs[0].shape[:-1]), num_channels) + + if __name__ == "__main__": + # for testing only... + print("Weights = ", weights.reshape(num_frames, num_inputs)) + return ans + + +def _test_random_combine(): + print("_test_random_combine()") + num_inputs = 3 + num_channels = 50 + m = AttentionCombine( + num_channels=num_channels, + num_inputs=num_inputs, + random_prob=0.5, + single_prob=0.0, + ) + + x = [torch.ones(3, 4, num_channels) for _ in range(num_inputs)] + + y = m(x) + assert y.shape == x[0].shape + assert torch.allclose(y, x[0]) # .. since actually all ones. + + +def _test_zipformer_main(): + feature_dim = 50 + batch_size = 5 + seq_len = 20 + feature_dim = 50 + # Just make sure the forward pass runs. + + c = Zipformer( + num_features=feature_dim, + encoder_dims=(64, 96), + encoder_unmasked_dims=(48, 64), + nhead=(4, 4), + ) + batch_size = 5 + seq_len = 20 + # Just make sure the forward pass runs. + f = c( + torch.randn(batch_size, seq_len, feature_dim), + torch.full((batch_size,), seq_len, dtype=torch.int64), + ) + assert ((seq_len - 7) // 2 + 1) // 2 == f[0].shape[1], (seq_len, f.shape[1]) + f[0].sum().backward() + c.eval() + f = c( + torch.randn(batch_size, seq_len, feature_dim), + torch.full((batch_size,), seq_len, dtype=torch.int64), + ) + f # to remove flake8 warnings + + +def _test_conv2d_subsampling(): + num_features = 80 + encoder_dims = 384 + dropout = 0.1 + encoder_embed = Conv2dSubsampling(num_features, encoder_dims, dropout=dropout) + for i in range(20, 40): + x = torch.rand(2, i, num_features) + y = encoder_embed(x) + assert (x.shape[1] - 7) // 2 == y.shape[1], (x.shape[1], y.shape[1]) + + +if __name__ == "__main__": + logging.getLogger().setLevel(logging.INFO) + torch.set_num_threads(1) + torch.set_num_interop_threads(1) + _test_random_combine() + _test_zipformer_main() + _test_conv2d_subsampling() diff --git a/egs/LJSpeech/ASR/run.sh b/egs/LJSpeech/ASR/run.sh new file mode 100755 index 000000000..669833d59 --- /dev/null +++ b/egs/LJSpeech/ASR/run.sh @@ -0,0 +1,76 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +# ft_model=./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-pseudo-trained/libri_finetuned.pt +# ft_model=./transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/best_locked.pt +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-prefinetuned-model ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-pseudo-trained/libri_finetuned.pt \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 0 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --accum-grads 16 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --update-ema False \ + --layer-average False +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Decoding" + # modified_beam_search, greedy_search, ctc_greedy_search + expdir=./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-oracle-epoch100 + for method in ctc_greedy_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name best-valid-loss.pt \ + --exp-dir $expdir \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 + done +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/run_unsup.sh b/egs/LJSpeech/ASR/run_unsup.sh new file mode 100755 index 000000000..66aed8aa7 --- /dev/null +++ b/egs/LJSpeech/ASR/run_unsup.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./transducer_unsupervised_finetuning_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-prefinetuned-model ./model_locked/libri_finetuned.pt \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 60 \ + --exp-dir ./transducer_unsupervised_finetuning_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 1000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --accum-grads 16 \ + --encoder-type d2v \ + --additional-block True \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --update-ema True \ + --layer-average False +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/run_unsup_ft.sh b/egs/LJSpeech/ASR/run_unsup_ft.sh new file mode 100755 index 000000000..e1ea42351 --- /dev/null +++ b/egs/LJSpeech/ASR/run_unsup_ft.sh @@ -0,0 +1,75 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +ft_model=./transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/best_locked.pt +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-unsupfinetuned-model $ft_model \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 100000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --accum-grads 16 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --update-ema False \ + --layer-average False +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Decoding" + # modified_beam_search, greedy_search, ctc_greedy_search + expdir=./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-oracle-epoch100 + for method in ctc_greedy_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name best-valid-loss.pt \ + --exp-dir $expdir \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 + done +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/shared/make_kn_lm.py b/egs/LJSpeech/ASR/shared/make_kn_lm.py new file mode 100755 index 000000000..7150297d6 --- /dev/null +++ b/egs/LJSpeech/ASR/shared/make_kn_lm.py @@ -0,0 +1,444 @@ +#!/usr/bin/env python3 + +# Copyright 2016 Johns Hopkins University (Author: Daniel Povey) +# 2018 Ruizhe Huang +# Apache 2.0. + +# This is an implementation of computing Kneser-Ney smoothed language model +# in the same way as srilm. This is a back-off, unmodified version of +# Kneser-Ney smoothing, which produces the same results as the following +# command (as an example) of srilm: +# +# $ ngram-count -order 4 -kn-modify-counts-at-end -ukndiscount -gt1min 0 -gt2min 0 -gt3min 0 -gt4min 0 \ +# -text corpus.txt -lm lm.arpa +# +# The data structure is based on: kaldi/egs/wsj/s5/utils/lang/make_phone_lm.py +# The smoothing algorithm is based on: http://www.speech.sri.com/projects/srilm/manpages/ngram-discount.7.html + +import argparse +import io +import math +import os +import re +import sys +from collections import Counter, defaultdict + +parser = argparse.ArgumentParser( + description=""" + Generate kneser-ney language model as arpa format. By default, + it will read the corpus from standard input, and output to standard output. + """ +) +parser.add_argument( + "-ngram-order", + type=int, + default=4, + choices=[2, 3, 4, 5, 6, 7], + help="Order of n-gram", +) +parser.add_argument("-text", type=str, default=None, help="Path to the corpus file") +parser.add_argument( + "-lm", type=str, default=None, help="Path to output arpa file for language models" +) +parser.add_argument( + "-verbose", type=int, default=0, choices=[0, 1, 2, 3, 4, 5], help="Verbose level" +) +args = parser.parse_args() + +# For encoding-agnostic scripts, we assume byte stream as input. +# Need to be very careful about the use of strip() and split() +# in this case, because there is a latin-1 whitespace character +# (nbsp) which is part of the unicode encoding range. +# Ref: kaldi/egs/wsj/s5/utils/lang/bpe/prepend_words.py @ 69cd717 +default_encoding = "latin-1" + +strip_chars = " \t\r\n" +whitespace = re.compile("[ \t]+") + + +class CountsForHistory: + # This class (which is more like a struct) stores the counts seen in a + # particular history-state. It is used inside class NgramCounts. + # It really does the job of a dict from int to float, but it also + # keeps track of the total count. + def __init__(self): + # The 'lambda: defaultdict(float)' is an anonymous function taking no + # arguments that returns a new defaultdict(float). + self.word_to_count = defaultdict(int) + # using a set to count the number of unique contexts + self.word_to_context = defaultdict(set) + self.word_to_f = dict() # discounted probability + self.word_to_bow = dict() # back-off weight + self.total_count = 0 + + def words(self): + return self.word_to_count.keys() + + def __str__(self): + # e.g. returns ' total=12: 3->4, 4->6, -1->2' + return " total={0}: {1}".format( + str(self.total_count), + ", ".join( + [ + "{0} -> {1}".format(word, count) + for word, count in self.word_to_count.items() + ] + ), + ) + + def add_count(self, predicted_word, context_word, count): + assert count >= 0 + + self.total_count += count + self.word_to_count[predicted_word] += count + if context_word is not None: + self.word_to_context[predicted_word].add(context_word) + + +class NgramCounts: + # A note on data-structure. Firstly, all words are represented as + # integers. We store n-gram counts as an array, indexed by (history-length + # == n-gram order minus one) (note: python calls arrays "lists") of dicts + # from histories to counts, where histories are arrays of integers and + # "counts" are dicts from integer to float. For instance, when + # accumulating the 4-gram count for the '8' in the sequence '5 6 7 8', we'd + # do as follows: self.counts[3][[5,6,7]][8] += 1.0 where the [3] indexes an + # array, the [[5,6,7]] indexes a dict, and the [8] indexes a dict. + def __init__(self, ngram_order, bos_symbol="", eos_symbol=""): + assert ngram_order >= 2 + + self.ngram_order = ngram_order + self.bos_symbol = bos_symbol + self.eos_symbol = eos_symbol + + self.counts = [] + for n in range(ngram_order): + self.counts.append(defaultdict(lambda: CountsForHistory())) + + self.d = [] # list of discounting factor for each order of ngram + + # adds a raw count (called while processing input data). + # Suppose we see the sequence '6 7 8 9' and ngram_order=4, 'history' + # would be (6,7,8) and 'predicted_word' would be 9; 'count' would be + # 1. + def add_count(self, history, predicted_word, context_word, count): + self.counts[len(history)][history].add_count( + predicted_word, context_word, count + ) + + # 'line' is a string containing a sequence of integer word-ids. + # This function adds the un-smoothed counts from this line of text. + def add_raw_counts_from_line(self, line): + if line == "": + words = [self.bos_symbol, self.eos_symbol] + else: + words = [self.bos_symbol] + whitespace.split(line) + [self.eos_symbol] + + for i in range(len(words)): + for n in range(1, self.ngram_order + 1): + if i + n > len(words): + break + ngram = words[i : i + n] + predicted_word = ngram[-1] + history = tuple(ngram[:-1]) + if i == 0 or n == self.ngram_order: + context_word = None + else: + context_word = words[i - 1] + + self.add_count(history, predicted_word, context_word, 1) + + def add_raw_counts_from_standard_input(self): + lines_processed = 0 + # byte stream as input + infile = io.TextIOWrapper(sys.stdin.buffer, encoding=default_encoding) + for line in infile: + line = line.strip(strip_chars) + self.add_raw_counts_from_line(line) + lines_processed += 1 + if lines_processed == 0 or args.verbose > 0: + print( + "make_phone_lm.py: processed {0} lines of input".format( + lines_processed + ), + file=sys.stderr, + ) + + def add_raw_counts_from_file(self, filename): + lines_processed = 0 + with open(filename, encoding=default_encoding) as fp: + for line in fp: + line = line.strip(strip_chars) + self.add_raw_counts_from_line(line) + lines_processed += 1 + if lines_processed == 0 or args.verbose > 0: + print( + "make_phone_lm.py: processed {0} lines of input".format( + lines_processed + ), + file=sys.stderr, + ) + + def cal_discounting_constants(self): + # For each order N of N-grams, we calculate discounting constant D_N = n1_N / (n1_N + 2 * n2_N), + # where n1_N is the number of unique N-grams with count = 1 (counts-of-counts). + # This constant is used similarly to absolute discounting. + # Return value: d is a list of floats, where d[N+1] = D_N + + # for the lowest order, i.e., 1-gram, we do not need to discount, thus the constant is 0 + # This is a special case: as we currently assumed having seen all vocabularies in the dictionary, + # but perhaps this is not the case for some other scenarios. + self.d = [0] + for n in range(1, self.ngram_order): + this_order_counts = self.counts[n] + n1 = 0 + n2 = 0 + for hist, counts_for_hist in this_order_counts.items(): + stat = Counter(counts_for_hist.word_to_count.values()) + n1 += stat[1] + n2 += stat[2] + assert n1 + 2 * n2 > 0 + + # We are doing this max(0.001, xxx) to avoid zero discounting constant D due to n1=0, + # which could happen if the number of symbols is small. + # Otherwise, zero discounting constant can cause division by zero in computing BOW. + self.d.append(max(0.1, n1 * 1.0) / (n1 + 2 * n2)) + + def cal_f(self): + # f(a_z) is a probability distribution of word sequence a_z. + # Typically f(a_z) is discounted to be less than the ML estimate so we have + # some leftover probability for the z words unseen in the context (a_). + # + # f(a_z) = (c(a_z) - D0) / c(a_) ;; for highest order N-grams + # f(_z) = (n(*_z) - D1) / n(*_*) ;; for lower order N-grams + + # highest order N-grams + n = self.ngram_order - 1 + this_order_counts = self.counts[n] + for hist, counts_for_hist in this_order_counts.items(): + for w, c in counts_for_hist.word_to_count.items(): + counts_for_hist.word_to_f[w] = ( + max((c - self.d[n]), 0) * 1.0 / counts_for_hist.total_count + ) + + # lower order N-grams + for n in range(0, self.ngram_order - 1): + this_order_counts = self.counts[n] + for hist, counts_for_hist in this_order_counts.items(): + + n_star_star = 0 + for w in counts_for_hist.word_to_count.keys(): + n_star_star += len(counts_for_hist.word_to_context[w]) + + if n_star_star != 0: + for w in counts_for_hist.word_to_count.keys(): + n_star_z = len(counts_for_hist.word_to_context[w]) + counts_for_hist.word_to_f[w] = ( + max((n_star_z - self.d[n]), 0) * 1.0 / n_star_star + ) + else: # patterns begin with , they do not have "modified count", so use raw count instead + for w in counts_for_hist.word_to_count.keys(): + n_star_z = counts_for_hist.word_to_count[w] + counts_for_hist.word_to_f[w] = ( + max((n_star_z - self.d[n]), 0) + * 1.0 + / counts_for_hist.total_count + ) + + def cal_bow(self): + # Backoff weights are only necessary for ngrams which form a prefix of a longer ngram. + # Thus, two sorts of ngrams do not have a bow: + # 1) highest order ngram + # 2) ngrams ending in + # + # bow(a_) = (1 - Sum_Z1 f(a_z)) / (1 - Sum_Z1 f(_z)) + # Note that Z1 is the set of all words with c(a_z) > 0 + + # highest order N-grams + n = self.ngram_order - 1 + this_order_counts = self.counts[n] + for hist, counts_for_hist in this_order_counts.items(): + for w in counts_for_hist.word_to_count.keys(): + counts_for_hist.word_to_bow[w] = None + + # lower order N-grams + for n in range(0, self.ngram_order - 1): + this_order_counts = self.counts[n] + for hist, counts_for_hist in this_order_counts.items(): + for w in counts_for_hist.word_to_count.keys(): + if w == self.eos_symbol: + counts_for_hist.word_to_bow[w] = None + else: + a_ = hist + (w,) + + assert len(a_) < self.ngram_order + assert a_ in self.counts[len(a_)].keys() + + a_counts_for_hist = self.counts[len(a_)][a_] + + sum_z1_f_a_z = 0 + for u in a_counts_for_hist.word_to_count.keys(): + sum_z1_f_a_z += a_counts_for_hist.word_to_f[u] + + sum_z1_f_z = 0 + _ = a_[1:] + _counts_for_hist = self.counts[len(_)][_] + # Should be careful here: what is Z1 + for u in a_counts_for_hist.word_to_count.keys(): + sum_z1_f_z += _counts_for_hist.word_to_f[u] + + if sum_z1_f_z < 1: + # assert sum_z1_f_a_z < 1 + counts_for_hist.word_to_bow[w] = (1.0 - sum_z1_f_a_z) / ( + 1.0 - sum_z1_f_z + ) + else: + counts_for_hist.word_to_bow[w] = None + + def print_raw_counts(self, info_string): + # these are useful for debug. + print(info_string) + res = [] + for this_order_counts in self.counts: + for hist, counts_for_hist in this_order_counts.items(): + for w in counts_for_hist.word_to_count.keys(): + ngram = " ".join(hist) + " " + w + ngram = ngram.strip(strip_chars) + + res.append( + "{0}\t{1}".format(ngram, counts_for_hist.word_to_count[w]) + ) + res.sort(reverse=True) + for r in res: + print(r) + + def print_modified_counts(self, info_string): + # these are useful for debug. + print(info_string) + res = [] + for this_order_counts in self.counts: + for hist, counts_for_hist in this_order_counts.items(): + for w in counts_for_hist.word_to_count.keys(): + ngram = " ".join(hist) + " " + w + ngram = ngram.strip(strip_chars) + + modified_count = len(counts_for_hist.word_to_context[w]) + raw_count = counts_for_hist.word_to_count[w] + + if modified_count == 0: + res.append("{0}\t{1}".format(ngram, raw_count)) + else: + res.append("{0}\t{1}".format(ngram, modified_count)) + res.sort(reverse=True) + for r in res: + print(r) + + def print_f(self, info_string): + # these are useful for debug. + print(info_string) + res = [] + for this_order_counts in self.counts: + for hist, counts_for_hist in this_order_counts.items(): + for w in counts_for_hist.word_to_count.keys(): + ngram = " ".join(hist) + " " + w + ngram = ngram.strip(strip_chars) + + f = counts_for_hist.word_to_f[w] + if f == 0: # f() is always 0 + f = 1e-99 + + res.append("{0}\t{1}".format(ngram, math.log(f, 10))) + res.sort(reverse=True) + for r in res: + print(r) + + def print_f_and_bow(self, info_string): + # these are useful for debug. + print(info_string) + res = [] + for this_order_counts in self.counts: + for hist, counts_for_hist in this_order_counts.items(): + for w in counts_for_hist.word_to_count.keys(): + ngram = " ".join(hist) + " " + w + ngram = ngram.strip(strip_chars) + + f = counts_for_hist.word_to_f[w] + if f == 0: # f() is always 0 + f = 1e-99 + + bow = counts_for_hist.word_to_bow[w] + if bow is None: + res.append("{1}\t{0}".format(ngram, math.log(f, 10))) + else: + res.append( + "{1}\t{0}\t{2}".format( + ngram, math.log(f, 10), math.log(bow, 10) + ) + ) + res.sort(reverse=True) + for r in res: + print(r) + + def print_as_arpa( + self, fout=io.TextIOWrapper(sys.stdout.buffer, encoding="latin-1") + ): + # print as ARPA format. + + print("\\data\\", file=fout) + for hist_len in range(self.ngram_order): + # print the number of n-grams. + print( + "ngram {0}={1}".format( + hist_len + 1, + sum( + [ + len(counts_for_hist.word_to_f) + for counts_for_hist in self.counts[hist_len].values() + ] + ), + ), + file=fout, + ) + + print("", file=fout) + + for hist_len in range(self.ngram_order): + print("\\{0}-grams:".format(hist_len + 1), file=fout) + + this_order_counts = self.counts[hist_len] + for hist, counts_for_hist in this_order_counts.items(): + for word in counts_for_hist.word_to_count.keys(): + ngram = hist + (word,) + prob = counts_for_hist.word_to_f[word] + bow = counts_for_hist.word_to_bow[word] + + if prob == 0: # f() is always 0 + prob = 1e-99 + + line = "{0}\t{1}".format("%.7f" % math.log10(prob), " ".join(ngram)) + if bow is not None: + line += "\t{0}".format("%.7f" % math.log10(bow)) + print(line, file=fout) + print("", file=fout) + print("\\end\\", file=fout) + + +if __name__ == "__main__": + + ngram_counts = NgramCounts(args.ngram_order) + + if args.text is None: + ngram_counts.add_raw_counts_from_standard_input() + else: + assert os.path.isfile(args.text) + ngram_counts.add_raw_counts_from_file(args.text) + + ngram_counts.cal_discounting_constants() + ngram_counts.cal_f() + ngram_counts.cal_bow() + + if args.lm is None: + ngram_counts.print_as_arpa() + else: + with open(args.lm, "w", encoding=default_encoding) as f: + ngram_counts.print_as_arpa(fout=f) diff --git a/egs/LJSpeech/ASR/shared/parse_options.sh b/egs/LJSpeech/ASR/shared/parse_options.sh new file mode 100755 index 000000000..71fb9e5ea --- /dev/null +++ b/egs/LJSpeech/ASR/shared/parse_options.sh @@ -0,0 +1,97 @@ +#!/usr/bin/env bash + +# Copyright 2012 Johns Hopkins University (Author: Daniel Povey); +# Arnab Ghoshal, Karel Vesely + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# THIS CODE IS PROVIDED *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +# WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +# MERCHANTABLITY OR NON-INFRINGEMENT. +# See the Apache 2 License for the specific language governing permissions and +# limitations under the License. + + +# Parse command-line options. +# To be sourced by another script (as in ". parse_options.sh"). +# Option format is: --option-name arg +# and shell variable "option_name" gets set to value "arg." +# The exception is --help, which takes no arguments, but prints the +# $help_message variable (if defined). + + +### +### The --config file options have lower priority to command line +### options, so we need to import them first... +### + +# Now import all the configs specified by command-line, in left-to-right order +for ((argpos=1; argpos<$#; argpos++)); do + if [ "${!argpos}" == "--config" ]; then + argpos_plus1=$((argpos+1)) + config=${!argpos_plus1} + [ ! -r $config ] && echo "$0: missing config '$config'" && exit 1 + . $config # source the config file. + fi +done + + +### +### Now we process the command line options +### +while true; do + [ -z "${1:-}" ] && break; # break if there are no arguments + case "$1" in + # If the enclosing script is called with --help option, print the help + # message and exit. Scripts should put help messages in $help_message + --help|-h) if [ -z "$help_message" ]; then echo "No help found." 1>&2; + else printf "$help_message\n" 1>&2 ; fi; + exit 0 ;; + --*=*) echo "$0: options to scripts must be of the form --name value, got '$1'" + exit 1 ;; + # If the first command-line argument begins with "--" (e.g. --foo-bar), + # then work out the variable name as $name, which will equal "foo_bar". + --*) name=`echo "$1" | sed s/^--// | sed s/-/_/g`; + # Next we test whether the variable in question is undefned-- if so it's + # an invalid option and we die. Note: $0 evaluates to the name of the + # enclosing script. + # The test [ -z ${foo_bar+xxx} ] will return true if the variable foo_bar + # is undefined. We then have to wrap this test inside "eval" because + # foo_bar is itself inside a variable ($name). + eval '[ -z "${'$name'+xxx}" ]' && echo "$0: invalid option $1" 1>&2 && exit 1; + + oldval="`eval echo \\$$name`"; + # Work out whether we seem to be expecting a Boolean argument. + if [ "$oldval" == "true" ] || [ "$oldval" == "false" ]; then + was_bool=true; + else + was_bool=false; + fi + + # Set the variable to the right value-- the escaped quotes make it work if + # the option had spaces, like --cmd "queue.pl -sync y" + eval $name=\"$2\"; + + # Check that Boolean-valued arguments are really Boolean. + if $was_bool && [[ "$2" != "true" && "$2" != "false" ]]; then + echo "$0: expected \"true\" or \"false\": $1 $2" 1>&2 + exit 1; + fi + shift 2; + ;; + *) break; + esac +done + + +# Check for an empty argument to the --cmd option, which can easily occur as a +# result of scripting errors. +[ ! -z "${cmd+xxx}" ] && [ -z "$cmd" ] && echo "$0: empty argument to --cmd option" 1>&2 && exit 1; + + +true; # so this script returns exit code 0. diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/README.md b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/README.md new file mode 100755 index 000000000..e8c0857ef --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/README.md @@ -0,0 +1,57 @@ +# data2vec-transducer + +| | test-clean | test-other | +| --- | --- | --- | +| greedy decoding | 2.88 | 6.69 | +| modified beam search | 2.76 | 6.37 | +| fast beam search | 2.82 | 6.59 | +- train command + +```bash +./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-prefinetuned-model ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft/libri_finetuned.pt \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 3000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --accum-grads 4 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 +``` + +- decode command + +```bash +for method in modified_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoch-27.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +``` \ No newline at end of file diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/__init__.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/__init__.py new file mode 100755 index 000000000..e69de29bb diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/asr_datamodule.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/asr_datamodule.py new file mode 100755 index 000000000..6cee7bb4e --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/asr_datamodule.py @@ -0,0 +1,1005 @@ +# Copyright 2021 Piotr Å»elasko +# Copyright 2022 Xiaomi Corporation (Author: Mingshuang Luo) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import argparse +import inspect +import logging +from functools import lru_cache +from pathlib import Path +from typing import Any, Dict, Optional + +import torch +from lhotse import CutSet, Fbank, FbankConfig, load_manifest, load_manifest_lazy +from lhotse.dataset import ( # noqa F401 for PrecomputedFeatures + CutConcatenate, + CutMix, + DynamicBucketingSampler, + K2SpeechRecognitionDataset, + PrecomputedFeatures, + SingleCutSampler, + SpecAugment, +) +from lhotse.dataset.input_strategies import ( # noqa F401 For AudioSamples + AudioSamples, + OnTheFlyFeatures, +) +from lhotse.utils import fix_random_seed +from torch.utils.data import DataLoader + +from icefall.utils import str2bool + + +class _SeedWorkers: + def __init__(self, seed: int): + self.seed = seed + + def __call__(self, worker_id: int): + fix_random_seed(self.seed + worker_id) + + +class LibriSpeechAsrDataModule: + """ + DataModule for k2 ASR experiments. + It assumes there is always one train and valid dataloader, + but there can be multiple test dataloaders (e.g. LibriSpeech test-clean + and test-other). + + It contains all the common data pipeline modules used in ASR + experiments, e.g.: + - dynamic batch size, + - bucketing samplers, + - cut concatenation, + - augmentation, + - on-the-fly feature extraction + + This class should be derived for specific corpora used in ASR tasks. + """ + + def __init__(self, args: argparse.Namespace): + self.args = args + + @classmethod + def add_arguments(cls, parser: argparse.ArgumentParser): + group = parser.add_argument_group( + title="ASR data related options", + description="These options are used for the preparation of " + "PyTorch DataLoaders from Lhotse CutSet's -- they control the " + "effective batch sizes, sampling strategies, applied data " + "augmentations, etc.", + ) + group.add_argument( + "--full-libri", + type=str2bool, + default=False, + help="When enabled, use 960h LibriSpeech. Otherwise, use 100h subset.", + ) + group.add_argument( + "--manifest-dir", + type=Path, + default=Path("data/fbank"), + help="Path to directory with train/valid/test cuts.", + ) + group.add_argument( + "--max-duration", + type=int, + default=250.0, + help="Maximum pooled recordings duration (seconds) in a " + "single batch. You can reduce it if it causes CUDA OOM.", + ) + group.add_argument( + "--bucketing-sampler", + type=str2bool, + default=True, + help="When enabled, the batches will come from buckets of " + "similar duration (saves padding frames).", + ) + group.add_argument( + "--num-buckets", + type=int, + default=30, + help="The number of buckets for the DynamicBucketingSampler" + "(you might want to increase it for larger datasets).", + ) + group.add_argument( + "--concatenate-cuts", + type=str2bool, + default=False, + help="When enabled, utterances (cuts) will be concatenated " + "to minimize the amount of padding.", + ) + group.add_argument( + "--duration-factor", + type=float, + default=1.0, + help="Determines the maximum duration of a concatenated cut " + "relative to the duration of the longest cut in a batch.", + ) + group.add_argument( + "--gap", + type=float, + default=1.0, + help="The amount of padding (in seconds) inserted between " + "concatenated cuts. This padding is filled with noise when " + "noise augmentation is used.", + ) + group.add_argument( + "--on-the-fly-feats", + type=str2bool, + default=False, + help="When enabled, use on-the-fly cut mixing and feature " + "extraction. Will drop existing precomputed feature manifests " + "if available.", + ) + group.add_argument( + "--shuffle", + type=str2bool, + default=True, + help="When enabled (=default), the examples will be " + "shuffled for each epoch.", + ) + group.add_argument( + "--drop-last", + type=str2bool, + default=True, + help="Whether to drop last batch. Used by sampler.", + ) + group.add_argument( + "--return-cuts", + type=str2bool, + default=True, + help="When enabled, each batch will have the " + "field: batch['supervisions']['cut'] with the cuts that " + "were used to construct it.", + ) + + group.add_argument( + "--num-workers", + type=int, + default=2, + help="The number of training dataloader workers that " + "collect the batches.", + ) + + group.add_argument( + "--enable-spec-aug", + type=str2bool, + default=False, + help="When enabled, use SpecAugment for training dataset.", + ) + + group.add_argument( + "--spec-aug-time-warp-factor", + type=int, + default=80, + help="Used only when --enable-spec-aug is True. " + "It specifies the factor for time warping in SpecAugment. " + "Larger values mean more warping. " + "A value less than 1 means to disable time warp.", + ) + + group.add_argument( + "--enable-musan", + type=str2bool, + default=True, + help="When enabled, select noise from MUSAN and mix it" + "with training dataset. ", + ) + + group.add_argument( + "--input-strategy", + type=str, + default="AudioSamples", + help="AudioSamples or PrecomputedFeatures", + ) + + def train_dataloaders( + self, + cuts_train: CutSet, + sampler_state_dict: Optional[Dict[str, Any]] = None, + ) -> DataLoader: + """ + Args: + cuts_train: + CutSet for training. + sampler_state_dict: + The state dict for the training sampler. + """ + transforms = [] + if self.args.enable_musan: + logging.info("Enable MUSAN") + logging.info("About to get Musan cuts") + cuts_musan = load_manifest(self.args.manifest_dir / "musan_cuts.jsonl.gz") + transforms.append( + CutMix(cuts=cuts_musan, prob=0.5, snr=(10, 20), preserve_id=True) + ) + else: + logging.info("Disable MUSAN") + + if self.args.concatenate_cuts: + logging.info( + f"Using cut concatenation with duration factor " + f"{self.args.duration_factor} and gap {self.args.gap}." + ) + # Cut concatenation should be the first transform in the list, + # so that if we e.g. mix noise in, it will fill the gaps between + # different utterances. + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + input_transforms = [] + if self.args.enable_spec_aug: + logging.info("Enable SpecAugment") + logging.info(f"Time warp factor: {self.args.spec_aug_time_warp_factor}") + # Set the value of num_frame_masks according to Lhotse's version. + # In different Lhotse's versions, the default of num_frame_masks is + # different. + num_frame_masks = 10 + num_frame_masks_parameter = inspect.signature( + SpecAugment.__init__ + ).parameters["num_frame_masks"] + if num_frame_masks_parameter.default == 1: + num_frame_masks = 2 + logging.info(f"Num frame mask: {num_frame_masks}") + input_transforms.append( + SpecAugment( + time_warp_factor=self.args.spec_aug_time_warp_factor, + num_frame_masks=num_frame_masks, + features_mask_size=27, + num_feature_masks=2, + frames_mask_size=100, + ) + ) + else: + logging.info("Disable SpecAugment") + + logging.info("About to create train dataset") + train = K2SpeechRecognitionDataset( + input_strategy=eval(self.args.input_strategy)(), + cut_transforms=transforms, + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.on_the_fly_feats: + # NOTE: the PerturbSpeed transform should be added only if we + # remove it from data prep stage. + # Add on-the-fly speed perturbation; since originally it would + # have increased epoch size by 3, we will apply prob 2/3 and use + # 3x more epochs. + # Speed perturbation probably should come first before + # concatenation, but in principle the transforms order doesn't have + # to be strict (e.g. could be randomized) + # transforms = [PerturbSpeed(factors=[0.9, 1.1], p=2/3)] + transforms # noqa + # Drop feats to be on the safe side. + train = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.bucketing_sampler: + logging.info("Using DynamicBucketingSampler.") + train_sampler = DynamicBucketingSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + num_buckets=self.args.num_buckets, + drop_last=self.args.drop_last, + ) + else: + logging.info("Using SingleCutSampler.") + train_sampler = SingleCutSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + ) + logging.info("About to create train dataloader") + + if sampler_state_dict is not None: + logging.info("Loading sampler state dict") + train_sampler.load_state_dict(sampler_state_dict) + + # 'seed' is derived from the current random state, which will have + # previously been set in the main process. + seed = torch.randint(0, 100000, ()).item() + worker_init_fn = _SeedWorkers(seed) + + train_dl = DataLoader( + train, + sampler=train_sampler, + batch_size=None, + num_workers=self.args.num_workers, + persistent_workers=False, + worker_init_fn=worker_init_fn, + ) + + return train_dl + + def valid_dataloaders(self, cuts_valid: CutSet) -> DataLoader: + transforms = [] + if self.args.concatenate_cuts: + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + logging.info("About to create dev dataset") + if self.args.on_the_fly_feats: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + #input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + return_cuts=self.args.return_cuts, + ) + else: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + valid_sampler = DynamicBucketingSampler( + cuts_valid, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.info("About to create dev dataloader") + valid_dl = DataLoader( + validate, + sampler=valid_sampler, + batch_size=None, + num_workers=2, + persistent_workers=False, + ) + + return valid_dl + + def test_dataloaders(self, cuts: CutSet) -> DataLoader: + logging.debug("About to create test dataset") + test = K2SpeechRecognitionDataset( + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))) + if self.args.on_the_fly_feats + else eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + sampler = DynamicBucketingSampler( + cuts, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.debug("About to create test dataloader") + test_dl = DataLoader( + test, + batch_size=None, + sampler=sampler, + num_workers=self.args.num_workers, + ) + return test_dl + + @lru_cache() + def train_clean_100_cuts(self) -> CutSet: + logging.info("About to get train-clean-100 cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-clean-100.jsonl.gz" + ) + + @lru_cache() + def train_clean_360_cuts(self) -> CutSet: + logging.info("About to get train-clean-360 cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-clean-360.jsonl.gz" + ) + + @lru_cache() + def train_other_500_cuts(self) -> CutSet: + logging.info("About to get train-other-500 cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-other-500.jsonl.gz" + ) + + @lru_cache() + def train_all_shuf_cuts(self) -> CutSet: + logging.info( + "About to get the shuffled train-clean-100, \ + train-clean-360 and train-other-500 cuts" + ) + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_train-all-shuf.jsonl.gz" + ) + + @lru_cache() + def dev_clean_cuts(self) -> CutSet: + logging.info("About to get dev-clean cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_dev-clean.jsonl.gz" + ) + + @lru_cache() + def dev_other_cuts(self) -> CutSet: + logging.info("About to get dev-other cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_dev-other.jsonl.gz" + ) + + @lru_cache() + def test_clean_cuts(self) -> CutSet: + logging.info("About to get test-clean cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_test-clean.jsonl.gz" + ) + + @lru_cache() + def test_other_cuts(self) -> CutSet: + logging.info("About to get test-other cuts") + return load_manifest_lazy( + self.args.manifest_dir / "librispeech_cuts_test-other.jsonl.gz" + ) + +class UserLibriAsrDataModule: + """ + DataModule for k2 ASR experiments. + multiple test dataloaders + + This class should be derived for specific corpora used in ASR tasks. + """ + + def __init__(self, args: argparse.Namespace): + self.args = args + + @classmethod + def add_arguments(cls, parser: argparse.ArgumentParser): + group = parser.add_argument_group( + title="ASR data related options", + description="These options are used for the preparation of " + "PyTorch DataLoaders from Lhotse CutSet's -- they control the " + "effective batch sizes, sampling strategies, applied data " + "augmentations, etc.", + ) + group.add_argument( + "--manifest-dir", + type=Path, + default=Path("data/fbank"), + help="Path to directory with train/valid/test cuts.", + ) + group.add_argument( + "--max-duration", + type=int, + default=250.0, + help="Maximum pooled recordings duration (seconds) in a " + "single batch. You can reduce it if it causes CUDA OOM.", + ) + group.add_argument( + "--bucketing-sampler", + type=str2bool, + default=True, + help="When enabled, the batches will come from buckets of " + "similar duration (saves padding frames).", + ) + group.add_argument( + "--num-buckets", + type=int, + default=30, + help="The number of buckets for the DynamicBucketingSampler" + "(you might want to increase it for larger datasets).", + ) + group.add_argument( + "--concatenate-cuts", + type=str2bool, + default=False, + help="When enabled, utterances (cuts) will be concatenated " + "to minimize the amount of padding.", + ) + group.add_argument( + "--duration-factor", + type=float, + default=1.0, + help="Determines the maximum duration of a concatenated cut " + "relative to the duration of the longest cut in a batch.", + ) + group.add_argument( + "--gap", + type=float, + default=1.0, + help="The amount of padding (in seconds) inserted between " + "concatenated cuts. This padding is filled with noise when " + "noise augmentation is used.", + ) + group.add_argument( + "--shuffle", + type=str2bool, + default=True, + help="When enabled (=default), the examples will be " + "shuffled for each epoch.", + ) + group.add_argument( + "--drop-last", + type=str2bool, + default=True, + help="Whether to drop last batch. Used by sampler.", + ) + group.add_argument( + "--return-cuts", + type=str2bool, + default=True, + help="When enabled, each batch will have the " + "field: batch['supervisions']['cut'] with the cuts that " + "were used to construct it.", + ) + + group.add_argument( + "--num-workers", + type=int, + default=2, + help="The number of training dataloader workers that " + "collect the batches.", + ) + + group.add_argument( + "--enable-spec-aug", + type=str2bool, + default=False, + help="When enabled, use SpecAugment for training dataset.", + ) + + group.add_argument( + "--spec-aug-time-warp-factor", + type=int, + default=80, + help="Used only when --enable-spec-aug is True. " + "It specifies the factor for time warping in SpecAugment. " + "Larger values mean more warping. " + "A value less than 1 means to disable time warp.", + ) + + group.add_argument( + "--enable-musan", + type=str2bool, + default=True, + help="When enabled, select noise from MUSAN and mix it" + "with training dataset. ", + ) + + group.add_argument( + "--input-strategy", + type=str, + default="AudioSamples", + help="AudioSamples or PrecomputedFeatures", + ) + + def test_dataloaders(self, cuts: CutSet) -> DataLoader: + logging.debug("About to create test dataset") + test = K2SpeechRecognitionDataset( + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))) + if self.args.on_the_fly_feats + else eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + sampler = DynamicBucketingSampler( + cuts, + num_buckets=self.args.num_buckets, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.debug("About to create test dataloader") + test_dl = DataLoader( + test, + batch_size=None, + sampler=sampler, + num_workers=self.args.num_workers, + ) + return test_dl + + @lru_cache() + def speaker_wise_cuts(self) -> CutSet: + logging.info("About to get speaker-wise cuts") + + # Get speaker list + import os + directory = "/DB/UserLibri/audio_data/speaker-wise-test" + speaker_list = os.listdir(directory) + + manifests = [] + for speaker in speaker_list: + fname = "userlibri_cuts_" + speaker + ".jsonl.gz" + manifests.append(load_manifest_lazy( + self.args.manifest_dir / fname + )) + return manifests, speaker_list + + @lru_cache() + def book_wise_cuts(self) -> CutSet: + logging.info("About to get book-wise cuts") + + # Get book list + import os + directory = "/DB/UserLibri/audio_data/book-wise-test" + book_list = os.listdir(directory) + + manifests = [] + for book in book_list: + fname = "userlibri_cuts_" + book + ".jsonl.gz" + manifests.append(load_manifest_lazy( + self.args.manifest_dir / fname + )) + return manifests, book_list + +class LJSpeechAsrDataModule: + """ + DataModule for k2 ASR experiments. + multiple test dataloaders + + This class should be derived for specific corpora used in ASR tasks. + """ + + def __init__(self, args: argparse.Namespace): + self.args = args + + @classmethod + def add_arguments(cls, parser: argparse.ArgumentParser): + group = parser.add_argument_group( + title="ASR data related options", + description="These options are used for the preparation of " + "PyTorch DataLoaders from Lhotse CutSet's -- they control the " + "effective batch sizes, sampling strategies, applied data " + "augmentations, etc.", + ) + group.add_argument( + "--full-libri", + type=str2bool, + default=False, + help="When enabled, use 960h LibriSpeech. Otherwise, use 100h subset.", + ) + group.add_argument( + "--manifest-dir", + type=Path, + default=Path("data/fbank"), + help="Path to directory with train/valid/test cuts.", + ) + group.add_argument( + "--max-duration", + type=int, + default=250.0, + help="Maximum pooled recordings duration (seconds) in a " + "single batch. You can reduce it if it causes CUDA OOM.", + ) + group.add_argument( + "--bucketing-sampler", + type=str2bool, + default=True, + help="When enabled, the batches will come from buckets of " + "similar duration (saves padding frames).", + ) + group.add_argument( + "--num-buckets", + type=int, + default=30, + help="The number of buckets for the DynamicBucketingSampler" + "(you might want to increase it for larger datasets).", + ) + group.add_argument( + "--concatenate-cuts", + type=str2bool, + default=False, + help="When enabled, utterances (cuts) will be concatenated " + "to minimize the amount of padding.", + ) + group.add_argument( + "--duration-factor", + type=float, + default=1.0, + help="Determines the maximum duration of a concatenated cut " + "relative to the duration of the longest cut in a batch.", + ) + group.add_argument( + "--gap", + type=float, + default=1.0, + help="The amount of padding (in seconds) inserted between " + "concatenated cuts. This padding is filled with noise when " + "noise augmentation is used.", + ) + group.add_argument( + "--on-the-fly-feats", + type=str2bool, + default=False, + help="When enabled, use on-the-fly cut mixing and feature " + "extraction. Will drop existing precomputed feature manifests " + "if available.", + ) + group.add_argument( + "--shuffle", + type=str2bool, + default=True, + help="When enabled (=default), the examples will be " + "shuffled for each epoch.", + ) + group.add_argument( + "--drop-last", + type=str2bool, + default=True, + help="Whether to drop last batch. Used by sampler.", + ) + group.add_argument( + "--return-cuts", + type=str2bool, + default=True, + help="When enabled, each batch will have the " + "field: batch['supervisions']['cut'] with the cuts that " + "were used to construct it.", + ) + + group.add_argument( + "--num-workers", + type=int, + default=2, + help="The number of training dataloader workers that " + "collect the batches.", + ) + + group.add_argument( + "--enable-spec-aug", + type=str2bool, + default=False, + help="When enabled, use SpecAugment for training dataset.", + ) + + group.add_argument( + "--spec-aug-time-warp-factor", + type=int, + default=80, + help="Used only when --enable-spec-aug is True. " + "It specifies the factor for time warping in SpecAugment. " + "Larger values mean more warping. " + "A value less than 1 means to disable time warp.", + ) + + group.add_argument( + "--enable-musan", + type=str2bool, + default=True, + help="When enabled, select noise from MUSAN and mix it" + "with training dataset. ", + ) + + group.add_argument( + "--input-strategy", + type=str, + default="AudioSamples", + help="AudioSamples or PrecomputedFeatures", + ) + + def train_dataloaders( + self, + cuts_train: CutSet, + sampler_state_dict: Optional[Dict[str, Any]] = None, + ) -> DataLoader: + """ + Args: + cuts_train: + CutSet for training. + sampler_state_dict: + The state dict for the training sampler. + """ + transforms = [] + if self.args.enable_musan: + logging.info("Enable MUSAN") + logging.info("About to get Musan cuts") + cuts_musan = load_manifest(self.args.manifest_dir / "musan_cuts.jsonl.gz") + transforms.append( + CutMix(cuts=cuts_musan, prob=0.5, snr=(10, 20), preserve_id=True) + ) + else: + logging.info("Disable MUSAN") + + if self.args.concatenate_cuts: + logging.info( + f"Using cut concatenation with duration factor " + f"{self.args.duration_factor} and gap {self.args.gap}." + ) + # Cut concatenation should be the first transform in the list, + # so that if we e.g. mix noise in, it will fill the gaps between + # different utterances. + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + input_transforms = [] + if self.args.enable_spec_aug: + logging.info("Enable SpecAugment") + logging.info(f"Time warp factor: {self.args.spec_aug_time_warp_factor}") + # Set the value of num_frame_masks according to Lhotse's version. + # In different Lhotse's versions, the default of num_frame_masks is + # different. + num_frame_masks = 10 + num_frame_masks_parameter = inspect.signature( + SpecAugment.__init__ + ).parameters["num_frame_masks"] + if num_frame_masks_parameter.default == 1: + num_frame_masks = 2 + logging.info(f"Num frame mask: {num_frame_masks}") + input_transforms.append( + SpecAugment( + time_warp_factor=self.args.spec_aug_time_warp_factor, + num_frame_masks=num_frame_masks, + features_mask_size=27, + num_feature_masks=2, + frames_mask_size=100, + ) + ) + else: + logging.info("Disable SpecAugment") + + logging.info("About to create train dataset") + train = K2SpeechRecognitionDataset( + input_strategy=eval(self.args.input_strategy)(), + cut_transforms=transforms, + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.on_the_fly_feats: + # NOTE: the PerturbSpeed transform should be added only if we + # remove it from data prep stage. + # Add on-the-fly speed perturbation; since originally it would + # have increased epoch size by 3, we will apply prob 2/3 and use + # 3x more epochs. + # Speed perturbation probably should come first before + # concatenation, but in principle the transforms order doesn't have + # to be strict (e.g. could be randomized) + # transforms = [PerturbSpeed(factors=[0.9, 1.1], p=2/3)] + transforms # noqa + # Drop feats to be on the safe side. + train = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + input_transforms=input_transforms, + return_cuts=self.args.return_cuts, + ) + + if self.args.bucketing_sampler: + logging.info("Using DynamicBucketingSampler.") + train_sampler = DynamicBucketingSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + num_buckets=self.args.num_buckets, + drop_last=self.args.drop_last, + ) + else: + logging.info("Using SingleCutSampler.") + train_sampler = SingleCutSampler( + cuts_train, + max_duration=self.args.max_duration, + shuffle=self.args.shuffle, + ) + logging.info("About to create train dataloader") + + if sampler_state_dict is not None: + logging.info("Loading sampler state dict") + train_sampler.load_state_dict(sampler_state_dict) + + # 'seed' is derived from the current random state, which will have + # previously been set in the main process. + seed = torch.randint(0, 100000, ()).item() + worker_init_fn = _SeedWorkers(seed) + + train_dl = DataLoader( + train, + sampler=train_sampler, + batch_size=None, + num_workers=self.args.num_workers, + persistent_workers=False, + worker_init_fn=worker_init_fn, + ) + + return train_dl + + def valid_dataloaders(self, cuts_valid: CutSet) -> DataLoader: + transforms = [] + if self.args.concatenate_cuts: + transforms = [ + CutConcatenate( + duration_factor=self.args.duration_factor, gap=self.args.gap + ) + ] + transforms + + logging.info("About to create dev dataset") + if self.args.on_the_fly_feats: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + #input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))), + return_cuts=self.args.return_cuts, + ) + else: + validate = K2SpeechRecognitionDataset( + cut_transforms=transforms, + input_strategy=eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + valid_sampler = DynamicBucketingSampler( + cuts_valid, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.info("About to create dev dataloader") + valid_dl = DataLoader( + validate, + sampler=valid_sampler, + batch_size=None, + num_workers=2, + persistent_workers=False, + ) + + return valid_dl + + def test_dataloaders(self, cuts: CutSet) -> DataLoader: + logging.debug("About to create test dataset") + test = K2SpeechRecognitionDataset( + input_strategy=OnTheFlyFeatures(Fbank(FbankConfig(num_mel_bins=80))) + if self.args.on_the_fly_feats + else eval(self.args.input_strategy)(), + return_cuts=self.args.return_cuts, + ) + sampler = DynamicBucketingSampler( + cuts, + num_buckets=self.args.num_buckets, + max_duration=self.args.max_duration, + shuffle=False, + ) + logging.debug("About to create test dataloader") + test_dl = DataLoader( + test, + batch_size=None, + sampler=sampler, + num_workers=self.args.num_workers, + ) + return test_dl + + @lru_cache() + def train_cuts(self, pseudo=False) -> CutSet: + logging.info("About to get LJSpeech train cuts") + if pseudo: + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_pseudo_cuts_train.jsonl.gz" + ) + else: + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_cuts_train.jsonl.gz" + ) + + @lru_cache() + def dev_cuts(self) -> CutSet: + logging.info("About to get LJSpeech dev cuts") + + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_cuts_dev.jsonl.gz" + ) + + @lru_cache() + def test_cuts(self) -> CutSet: + logging.info("About to get LJSpeech test cuts") + + return load_manifest_lazy( + self.args.manifest_dir / "LJSpeech_cuts_test.jsonl.gz" + ) \ No newline at end of file diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/beam_search.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/beam_search.py new file mode 100755 index 000000000..af18d8535 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/beam_search.py @@ -0,0 +1,2387 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang +# Xiaoyu Yang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import warnings +from dataclasses import dataclass, field +from typing import Dict, List, Optional, Tuple, Union + +import k2 +import sentencepiece as spm +import torch +from model import Transducer + +from icefall import NgramLm, NgramLmStateCost +from icefall.decode import Nbest, one_best_decoding +from icefall.rnn_lm.model import RnnLmModel +from icefall.utils import ( + DecodingResults, + add_eos, + add_sos, + get_texts, + get_texts_with_timestamp, +) + + +def fast_beam_search_one_best( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + A lattice is first obtained using fast beam search, and then + the shortest path within the lattice is used as the final output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + best_path = one_best_decoding(lattice) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search_nbest_LG( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + num_paths: int, + nbest_scale: float = 0.5, + use_double_scores: bool = True, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + The process to get the results is: + - (1) Use fast beam search to get a lattice + - (2) Select `num_paths` paths from the lattice using k2.random_paths() + - (3) Unique the selected paths + - (4) Intersect the selected paths with the lattice and compute the + shortest path from the intersection result + - (5) The path with the largest score is used as the decoding output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + num_paths: + Number of paths to extract from the decoded lattice. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + use_double_scores: + True to use double precision for computation. False to use + single precision. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + + # The following code is modified from nbest.intersect() + word_fsa = k2.invert(nbest.fsa) + if hasattr(lattice, "aux_labels"): + # delete token IDs as it is not needed + del word_fsa.aux_labels + word_fsa.scores.zero_() + word_fsa_with_epsilon_loops = k2.linear_fsa_with_self_loops(word_fsa) + path_to_utt_map = nbest.shape.row_ids(1) + + if hasattr(lattice, "aux_labels"): + # lattice has token IDs as labels and word IDs as aux_labels. + # inv_lattice has word IDs as labels and token IDs as aux_labels + inv_lattice = k2.invert(lattice) + inv_lattice = k2.arc_sort(inv_lattice) + else: + inv_lattice = k2.arc_sort(lattice) + + if inv_lattice.shape[0] == 1: + path_lattice = k2.intersect_device( + inv_lattice, + word_fsa_with_epsilon_loops, + b_to_a_map=torch.zeros_like(path_to_utt_map), + sorted_match_a=True, + ) + else: + path_lattice = k2.intersect_device( + inv_lattice, + word_fsa_with_epsilon_loops, + b_to_a_map=path_to_utt_map, + sorted_match_a=True, + ) + + # path_lattice has word IDs as labels and token IDs as aux_labels + path_lattice = k2.top_sort(k2.connect(path_lattice)) + tot_scores = path_lattice.get_tot_scores( + use_double_scores=use_double_scores, + log_semiring=True, # Note: we always use True + ) + # See https://github.com/k2-fsa/icefall/pull/420 for why + # we always use log_semiring=True + + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + best_hyp_indexes = ragged_tot_scores.argmax() + best_path = k2.index_fsa(nbest.fsa, best_hyp_indexes) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search_nbest( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + num_paths: int, + nbest_scale: float = 0.5, + use_double_scores: bool = True, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + The process to get the results is: + - (1) Use fast beam search to get a lattice + - (2) Select `num_paths` paths from the lattice using k2.random_paths() + - (3) Unique the selected paths + - (4) Intersect the selected paths with the lattice and compute the + shortest path from the intersection result + - (5) The path with the largest score is used as the decoding output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + num_paths: + Number of paths to extract from the decoded lattice. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + use_double_scores: + True to use double precision for computation. False to use + single precision. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + + # at this point, nbest.fsa.scores are all zeros. + + nbest = nbest.intersect(lattice) + # Now nbest.fsa.scores contains acoustic scores + + max_indexes = nbest.tot_scores().argmax() + + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search_nbest_oracle( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + num_paths: int, + ref_texts: List[List[int]], + use_double_scores: bool = True, + nbest_scale: float = 0.5, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + A lattice is first obtained using fast beam search, and then + we select `num_paths` linear paths from the lattice. The path + that has the minimum edit distance with the given reference transcript + is used as the output. + + This is the best result we can achieve for any nbest based rescoring + methods. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + num_paths: + Number of paths to extract from the decoded lattice. + ref_texts: + A list-of-list of integers containing the reference transcripts. + If the decoding_graph is a trivial_graph, the integer ID is the + BPE token ID. + use_double_scores: + True to use double precision for computation. False to use + single precision. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + + hyps = nbest.build_levenshtein_graphs() + refs = k2.levenshtein_graph(ref_texts, device=hyps.device) + + levenshtein_alignment = k2.levenshtein_alignment( + refs=refs, + hyps=hyps, + hyp_to_ref_map=nbest.shape.row_ids(1), + sorted_match_ref=True, + ) + + tot_scores = levenshtein_alignment.get_tot_scores( + use_double_scores=False, log_semiring=False + ) + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + + max_indexes = ragged_tot_scores.argmax() + + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + return get_texts(best_path) + else: + return get_texts_with_timestamp(best_path) + + +def fast_beam_search( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + temperature: float = 1.0, +) -> k2.Fsa: + """It limits the maximum number of symbols per frame to 1. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi.. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + temperature: + Softmax temperature. + Returns: + Return an FsaVec with axes [utt][state][arc] containing the decoded + lattice. Note: When the input graph is a TrivialGraph, the returned + lattice is actually an acceptor. + """ + assert encoder_out.ndim == 3 + + context_size = model.decoder.context_size + vocab_size = model.decoder.vocab_size + + B, T, C = encoder_out.shape + + config = k2.RnntDecodingConfig( + vocab_size=vocab_size, + decoder_history_len=context_size, + beam=beam, + max_contexts=max_contexts, + max_states=max_states, + ) + individual_streams = [] + for i in range(B): + individual_streams.append(k2.RnntDecodingStream(decoding_graph)) + decoding_streams = k2.RnntDecodingStreams(individual_streams, config) + + encoder_out = model.joiner.encoder_proj(encoder_out) + + for t in range(T): + # shape is a RaggedShape of shape (B, context) + # contexts is a Tensor of shape (shape.NumElements(), context_size) + shape, contexts = decoding_streams.get_contexts() + # `nn.Embedding()` in torch below v1.7.1 supports only torch.int64 + contexts = contexts.to(torch.int64) + # decoder_out is of shape (shape.NumElements(), 1, decoder_out_dim) + decoder_out = model.decoder(contexts, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + # current_encoder_out is of shape + # (shape.NumElements(), 1, joiner_dim) + # fmt: off + current_encoder_out = torch.index_select( + encoder_out[:, t:t + 1, :], 0, shape.row_ids(1).to(torch.int64) + ) + # fmt: on + logits = model.joiner( + current_encoder_out.unsqueeze(2), + decoder_out.unsqueeze(1), + project_input=False, + ) + logits = logits.squeeze(1).squeeze(1) + log_probs = (logits / temperature).log_softmax(dim=-1) + decoding_streams.advance(log_probs) + decoding_streams.terminate_and_flush_to_streams() + lattice = decoding_streams.format_output(encoder_out_lens.tolist()) + + return lattice + + +def greedy_search( + model: Transducer, + encoder_out: torch.Tensor, + max_sym_per_frame: int, + return_timestamps: bool = False, +) -> Union[List[int], DecodingResults]: + """Greedy search for a single utterance. + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + max_sym_per_frame: + Maximum number of symbols per frame. If it is set to 0, the WER + would be 100%. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + + # support only batch_size == 1 for now + assert encoder_out.size(0) == 1, encoder_out.size(0) + + blank_id = model.decoder.blank_id + context_size = model.decoder.context_size + unk_id = getattr(model, "unk_id", blank_id) + + device = next(model.parameters()).device + + decoder_input = torch.tensor( + [-1] * (context_size - 1) + [blank_id], device=device, dtype=torch.int64 + ).reshape(1, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + encoder_out = model.joiner.encoder_proj(encoder_out) + + T = encoder_out.size(1) + t = 0 + hyp = [blank_id] * context_size + + # timestamp[i] is the frame index after subsampling + # on which hyp[i] is decoded + timestamp = [] + + # Maximum symbols per utterance. + max_sym_per_utt = 1000 + + # symbols per frame + sym_per_frame = 0 + + # symbols per utterance decoded so far + sym_per_utt = 0 + + while t < T and sym_per_utt < max_sym_per_utt: + if sym_per_frame >= max_sym_per_frame: + sym_per_frame = 0 + t += 1 + continue + + # fmt: off + current_encoder_out = encoder_out[:, t:t+1, :].unsqueeze(2) + # fmt: on + logits = model.joiner( + current_encoder_out, decoder_out.unsqueeze(1), project_input=False + ) + # logits is (1, 1, 1, vocab_size) + + y = logits.argmax().item() + if y not in (blank_id, unk_id): + hyp.append(y) + timestamp.append(t) + decoder_input = torch.tensor([hyp[-context_size:]], device=device).reshape( + 1, context_size + ) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + sym_per_utt += 1 + sym_per_frame += 1 + else: + sym_per_frame = 0 + t += 1 + hyp = hyp[context_size:] # remove blanks + + if not return_timestamps: + return hyp + else: + return DecodingResults( + hyps=[hyp], + timestamps=[timestamp], + ) + + +def greedy_search_batch( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """Greedy search in batch mode. It hardcodes --max-sym-per-frame=1. + Args: + model: + The transducer model. + encoder_out: + Output from the encoder. Its shape is (N, T, C), where N >= 1. + encoder_out_lens: + A 1-D tensor of shape (N,), containing number of valid frames in + encoder_out before padding. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + device = next(model.parameters()).device + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + hyps = [[-1] * (context_size - 1) + [blank_id] for _ in range(N)] + + # timestamp[n][i] is the frame index after subsampling + # on which hyp[n][i] is decoded + timestamps = [[] for _ in range(N)] + + decoder_input = torch.tensor( + hyps, + device=device, + dtype=torch.int64, + ) # (N, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_out: (N, 1, decoder_out_dim) + + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + for (t, batch_size) in enumerate(batch_size_list): + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape: (batch_size, 1, 1, encoder_out_dim) + offset = end + + decoder_out = decoder_out[:batch_size] + + logits = model.joiner( + current_encoder_out, decoder_out.unsqueeze(1), project_input=False + ) + # logits'shape (batch_size, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (batch_size, vocab_size) + assert logits.ndim == 2, logits.shape + y = logits.argmax(dim=1).tolist() + emitted = False + for i, v in enumerate(y): + if v not in (blank_id, unk_id): + hyps[i].append(v) + timestamps[i].append(t) + emitted = True + if emitted: + # update decoder output + decoder_input = [h[-context_size:] for h in hyps[:batch_size]] + decoder_input = torch.tensor( + decoder_input, + device=device, + dtype=torch.int64, + ) + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + sorted_ans = [h[context_size:] for h in hyps] + ans = [] + ans_timestamps = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + ans_timestamps.append(timestamps[unsorted_indices[i]]) + + if not return_timestamps: + return ans + else: + return DecodingResults( + hyps=ans, + timestamps=ans_timestamps, + ) + + +@dataclass +class Hypothesis: + # The predicted tokens so far. + # Newly predicted tokens are appended to `ys`. + ys: List[int] + + # The log prob of ys. + # It contains only one entry. + log_prob: torch.Tensor + + # timestamp[i] is the frame index after subsampling + # on which ys[i] is decoded + timestamp: List[int] = field(default_factory=list) + + # the lm score for next token given the current ys + lm_score: Optional[torch.Tensor] = None + + # the RNNLM states (h and c in LSTM) + state: Optional[Tuple[torch.Tensor, torch.Tensor]] = None + + # N-gram LM state + state_cost: Optional[NgramLmStateCost] = None + + @property + def key(self) -> str: + """Return a string representation of self.ys""" + return "_".join(map(str, self.ys)) + + +class HypothesisList(object): + def __init__(self, data: Optional[Dict[str, Hypothesis]] = None) -> None: + """ + Args: + data: + A dict of Hypotheses. Its key is its `value.key`. + """ + if data is None: + self._data = {} + else: + self._data = data + + @property + def data(self) -> Dict[str, Hypothesis]: + return self._data + + def add(self, hyp: Hypothesis) -> None: + """Add a Hypothesis to `self`. + + If `hyp` already exists in `self`, its probability is updated using + `log-sum-exp` with the existed one. + + Args: + hyp: + The hypothesis to be added. + """ + key = hyp.key + if key in self: + old_hyp = self._data[key] # shallow copy + torch.logaddexp(old_hyp.log_prob, hyp.log_prob, out=old_hyp.log_prob) + else: + self._data[key] = hyp + + def get_most_probable(self, length_norm: bool = False) -> Hypothesis: + """Get the most probable hypothesis, i.e., the one with + the largest `log_prob`. + + Args: + length_norm: + If True, the `log_prob` of a hypothesis is normalized by the + number of tokens in it. + Returns: + Return the hypothesis that has the largest `log_prob`. + """ + if length_norm: + return max(self._data.values(), key=lambda hyp: hyp.log_prob / len(hyp.ys)) + else: + return max(self._data.values(), key=lambda hyp: hyp.log_prob) + + def remove(self, hyp: Hypothesis) -> None: + """Remove a given hypothesis. + + Caution: + `self` is modified **in-place**. + + Args: + hyp: + The hypothesis to be removed from `self`. + Note: It must be contained in `self`. Otherwise, + an exception is raised. + """ + key = hyp.key + assert key in self, f"{key} does not exist" + del self._data[key] + + def filter(self, threshold: torch.Tensor) -> "HypothesisList": + """Remove all Hypotheses whose log_prob is less than threshold. + + Caution: + `self` is not modified. Instead, a new HypothesisList is returned. + + Returns: + Return a new HypothesisList containing all hypotheses from `self` + with `log_prob` being greater than the given `threshold`. + """ + ans = HypothesisList() + for _, hyp in self._data.items(): + if hyp.log_prob > threshold: + ans.add(hyp) # shallow copy + return ans + + def topk(self, k: int) -> "HypothesisList": + """Return the top-k hypothesis.""" + hyps = list(self._data.items()) + + hyps = sorted(hyps, key=lambda h: h[1].log_prob, reverse=True)[:k] + + ans = HypothesisList(dict(hyps)) + return ans + + def __contains__(self, key: str): + return key in self._data + + def __iter__(self): + return iter(self._data.values()) + + def __len__(self) -> int: + return len(self._data) + + def __str__(self) -> str: + s = [] + for key in self: + s.append(key) + return ", ".join(s) + + +def get_hyps_shape(hyps: List[HypothesisList]) -> k2.RaggedShape: + """Return a ragged shape with axes [utt][num_hyps]. + + Args: + hyps: + len(hyps) == batch_size. It contains the current hypothesis for + each utterance in the batch. + Returns: + Return a ragged shape with 2 axes [utt][num_hyps]. Note that + the shape is on CPU. + """ + num_hyps = [len(h) for h in hyps] + + # torch.cumsum() is inclusive sum, so we put a 0 at the beginning + # to get exclusive sum later. + num_hyps.insert(0, 0) + + num_hyps = torch.tensor(num_hyps) + row_splits = torch.cumsum(num_hyps, dim=0, dtype=torch.int32) + ans = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=row_splits[-1].item() + ) + return ans + + +def modified_beam_search( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: int = 4, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[List[int]], DecodingResults]: + """Beam search in batch mode with --max-sym-per-frame=1 being hardcoded. + + Args: + model: + The transducer model. + encoder_out: + Output from the encoder. Its shape is (N, T, C). + encoder_out_lens: + A 1-D tensor of shape (N,), containing number of valid frames in + encoder_out before padding. + beam: + Number of active paths during the beam search. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + timestamp=[], + ) + ) + + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for (t, batch_size) in enumerate(batch_size_list): + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [hyp.log_prob.reshape(1, 1) for hyps in A for hyp in hyps] + ) # (num_hyps, 1) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_out is of shape (num_hyps, 1, 1, joiner_dim) + + # Note: For torch 1.7.1 and below, it requires a torch.int64 tensor + # as index, so we use `to(torch.int64)` below. + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = (logits / temperature).log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + + vocab_size = log_probs.size(-1) + + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_ys = hyp.ys[:] + new_token = topk_token_indexes[k] + new_timestamp = hyp.timestamp[:] + if new_token not in (blank_id, unk_id): + new_ys.append(new_token) + new_timestamp.append(t) + + new_log_prob = topk_log_probs[k] + new_hyp = Hypothesis( + ys=new_ys, log_prob=new_log_prob, timestamp=new_timestamp + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + sorted_timestamps = [h.timestamp for h in best_hyps] + ans = [] + ans_timestamps = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + ans_timestamps.append(sorted_timestamps[unsorted_indices[i]]) + + if not return_timestamps: + return ans + else: + return DecodingResults( + hyps=ans, + timestamps=ans_timestamps, + ) + + +def _deprecated_modified_beam_search( + model: Transducer, + encoder_out: torch.Tensor, + beam: int = 4, + return_timestamps: bool = False, +) -> Union[List[int], DecodingResults]: + """It limits the maximum number of symbols per frame to 1. + + It decodes only one utterance at a time. We keep it only for reference. + The function :func:`modified_beam_search` should be preferred as it + supports batch decoding. + + + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + beam: + Beam size. + return_timestamps: + Whether to return timestamps. + + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + + assert encoder_out.ndim == 3 + + # support only batch_size == 1 for now + assert encoder_out.size(0) == 1, encoder_out.size(0) + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + + device = next(model.parameters()).device + + T = encoder_out.size(1) + + B = HypothesisList() + B.add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + timestamp=[], + ) + ) + encoder_out = model.joiner.encoder_proj(encoder_out) + + for t in range(T): + # fmt: off + current_encoder_out = encoder_out[:, t:t+1, :].unsqueeze(2) + # current_encoder_out is of shape (1, 1, 1, encoder_out_dim) + # fmt: on + A = list(B) + B = HypothesisList() + + ys_log_probs = torch.cat([hyp.log_prob.reshape(1, 1) for hyp in A]) + # ys_log_probs is of shape (num_hyps, 1) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyp in A], + device=device, + dtype=torch.int64, + ) + # decoder_input is of shape (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_output is of shape (num_hyps, 1, 1, joiner_dim) + + current_encoder_out = current_encoder_out.expand( + decoder_out.size(0), 1, 1, -1 + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) + # logits is of shape (num_hyps, 1, 1, vocab_size) + logits = logits.squeeze(1).squeeze(1) + + # now logits is of shape (num_hyps, vocab_size) + log_probs = logits.log_softmax(dim=-1) + + log_probs.add_(ys_log_probs) + + log_probs = log_probs.reshape(-1) + topk_log_probs, topk_indexes = log_probs.topk(beam) + + # topk_hyp_indexes are indexes into `A` + topk_hyp_indexes = topk_indexes // logits.size(-1) + topk_token_indexes = topk_indexes % logits.size(-1) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = topk_hyp_indexes.tolist() + topk_token_indexes = topk_token_indexes.tolist() + + for i in range(len(topk_hyp_indexes)): + hyp = A[topk_hyp_indexes[i]] + new_ys = hyp.ys[:] + new_timestamp = hyp.timestamp[:] + new_token = topk_token_indexes[i] + if new_token not in (blank_id, unk_id): + new_ys.append(new_token) + new_timestamp.append(t) + new_log_prob = topk_log_probs[i] + new_hyp = Hypothesis( + ys=new_ys, log_prob=new_log_prob, timestamp=new_timestamp + ) + B.add(new_hyp) + + best_hyp = B.get_most_probable(length_norm=True) + ys = best_hyp.ys[context_size:] # [context_size:] to remove blanks + + if not return_timestamps: + return ys + else: + return DecodingResults(hyps=[ys], timestamps=[best_hyp.timestamp]) + + +def beam_search( + model: Transducer, + encoder_out: torch.Tensor, + beam: int = 4, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Union[List[int], DecodingResults]: + """ + It implements Algorithm 1 in https://arxiv.org/pdf/1211.3711.pdf + + espnet/nets/beam_search_transducer.py#L247 is used as a reference. + + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + beam: + Beam size. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + + # support only batch_size == 1 for now + assert encoder_out.size(0) == 1, encoder_out.size(0) + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + + device = next(model.parameters()).device + + decoder_input = torch.tensor( + [blank_id] * context_size, + device=device, + dtype=torch.int64, + ).reshape(1, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + + encoder_out = model.joiner.encoder_proj(encoder_out) + + T = encoder_out.size(1) + t = 0 + + B = HypothesisList() + B.add(Hypothesis(ys=[blank_id] * context_size, log_prob=0.0, timestamp=[])) + + max_sym_per_utt = 20000 + + sym_per_utt = 0 + + decoder_cache: Dict[str, torch.Tensor] = {} + + while t < T and sym_per_utt < max_sym_per_utt: + # fmt: off + current_encoder_out = encoder_out[:, t:t+1, :].unsqueeze(2) + # fmt: on + A = B + B = HypothesisList() + + joint_cache: Dict[str, torch.Tensor] = {} + + # TODO(fangjun): Implement prefix search to update the `log_prob` + # of hypotheses in A + + while True: + y_star = A.get_most_probable() + A.remove(y_star) + + cached_key = y_star.key + + if cached_key not in decoder_cache: + decoder_input = torch.tensor( + [y_star.ys[-context_size:]], + device=device, + dtype=torch.int64, + ).reshape(1, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False) + decoder_out = model.joiner.decoder_proj(decoder_out) + decoder_cache[cached_key] = decoder_out + else: + decoder_out = decoder_cache[cached_key] + + cached_key += f"-t-{t}" + if cached_key not in joint_cache: + logits = model.joiner( + current_encoder_out, + decoder_out.unsqueeze(1), + project_input=False, + ) + + # TODO(fangjun): Scale the blank posterior + log_prob = (logits / temperature).log_softmax(dim=-1) + # log_prob is (1, 1, 1, vocab_size) + log_prob = log_prob.squeeze() + # Now log_prob is (vocab_size,) + joint_cache[cached_key] = log_prob + else: + log_prob = joint_cache[cached_key] + + # First, process the blank symbol + skip_log_prob = log_prob[blank_id] + new_y_star_log_prob = y_star.log_prob + skip_log_prob + + # ys[:] returns a copy of ys + B.add( + Hypothesis( + ys=y_star.ys[:], + log_prob=new_y_star_log_prob, + timestamp=y_star.timestamp[:], + ) + ) + + # Second, process other non-blank labels + values, indices = log_prob.topk(beam + 1) + for i, v in zip(indices.tolist(), values.tolist()): + if i in (blank_id, unk_id): + continue + new_ys = y_star.ys + [i] + new_log_prob = y_star.log_prob + v + new_timestamp = y_star.timestamp + [t] + A.add( + Hypothesis( + ys=new_ys, + log_prob=new_log_prob, + timestamp=new_timestamp, + ) + ) + + # Check whether B contains more than "beam" elements more probable + # than the most probable in A + A_most_probable = A.get_most_probable() + + kept_B = B.filter(A_most_probable.log_prob) + + if len(kept_B) >= beam: + B = kept_B.topk(beam) + break + + t += 1 + + best_hyp = B.get_most_probable(length_norm=True) + ys = best_hyp.ys[context_size:] # [context_size:] to remove blanks + + if not return_timestamps: + return ys + else: + return DecodingResults(hyps=[ys], timestamps=[best_hyp.timestamp]) + + +def fast_beam_search_with_nbest_rescoring( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + ngram_lm_scale_list: List[float], + num_paths: int, + G: k2.Fsa, + sp: spm.SentencePieceProcessor, + word_table: k2.SymbolTable, + oov_word: str = "", + use_double_scores: bool = True, + nbest_scale: float = 0.5, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Dict[str, Union[List[List[int]], DecodingResults]]: + """It limits the maximum number of symbols per frame to 1. + A lattice is first obtained using fast beam search, num_path are selected + and rescored using a given language model. The shortest path within the + lattice is used as the final output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + ngram_lm_scale_list: + A list of floats representing LM score scales. + num_paths: + Number of paths to extract from the decoded lattice. + G: + An FsaVec containing only a single FSA. It is an n-gram LM. + sp: + The BPE model. + word_table: + The word symbol table. + oov_word: + OOV words are replaced with this word. + use_double_scores: + True to use double precision for computation. False to use + single precision. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + Return the decoded result in a dict, where the key has the form + 'ngram_lm_scale_xx' and the value is the decoded results + optionally with timestamps. `xx` is the ngram LM scale value + used during decoding, i.e., 0.1. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + # at this point, nbest.fsa.scores are all zeros. + + nbest = nbest.intersect(lattice) + # Now nbest.fsa.scores contains acoustic scores + + am_scores = nbest.tot_scores() + + # Now we need to compute the LM scores of each path. + # (1) Get the token IDs of each Path. We assume the decoding_graph + # is an acceptor, i.e., lattice is also an acceptor + tokens_shape = nbest.fsa.arcs.shape().remove_axis(1) # [path][arc] + + tokens = k2.RaggedTensor(tokens_shape, nbest.fsa.labels.contiguous()) + tokens = tokens.remove_values_leq(0) # remove -1 and 0 + + token_list: List[List[int]] = tokens.tolist() + word_list: List[List[str]] = sp.decode(token_list) + + assert isinstance(oov_word, str), oov_word + assert oov_word in word_table, oov_word + oov_word_id = word_table[oov_word] + + word_ids_list: List[List[int]] = [] + + for words in word_list: + this_word_ids = [] + for w in words.split(): + if w in word_table: + this_word_ids.append(word_table[w]) + else: + this_word_ids.append(oov_word_id) + word_ids_list.append(this_word_ids) + + word_fsas = k2.linear_fsa(word_ids_list, device=lattice.device) + word_fsas_with_self_loops = k2.add_epsilon_self_loops(word_fsas) + + num_unique_paths = len(word_ids_list) + + b_to_a_map = torch.zeros( + num_unique_paths, + dtype=torch.int32, + device=lattice.device, + ) + + rescored_word_fsas = k2.intersect_device( + a_fsas=G, + b_fsas=word_fsas_with_self_loops, + b_to_a_map=b_to_a_map, + sorted_match_a=True, + ret_arc_maps=False, + ) + + rescored_word_fsas = k2.remove_epsilon_self_loops(rescored_word_fsas) + rescored_word_fsas = k2.top_sort(k2.connect(rescored_word_fsas)) + ngram_lm_scores = rescored_word_fsas.get_tot_scores( + use_double_scores=True, + log_semiring=False, + ) + + ans: Dict[str, Union[List[List[int]], DecodingResults]] = {} + for s in ngram_lm_scale_list: + key = f"ngram_lm_scale_{s}" + tot_scores = am_scores.values + s * ngram_lm_scores + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + max_indexes = ragged_tot_scores.argmax() + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + ans[key] = get_texts(best_path) + else: + ans[key] = get_texts_with_timestamp(best_path) + + return ans + + +def fast_beam_search_with_nbest_rnn_rescoring( + model: Transducer, + decoding_graph: k2.Fsa, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + beam: float, + max_states: int, + max_contexts: int, + ngram_lm_scale_list: List[float], + num_paths: int, + G: k2.Fsa, + sp: spm.SentencePieceProcessor, + word_table: k2.SymbolTable, + rnn_lm_model: torch.nn.Module, + rnn_lm_scale_list: List[float], + oov_word: str = "", + use_double_scores: bool = True, + nbest_scale: float = 0.5, + temperature: float = 1.0, + return_timestamps: bool = False, +) -> Dict[str, Union[List[List[int]], DecodingResults]]: + """It limits the maximum number of symbols per frame to 1. + A lattice is first obtained using fast beam search, num_path are selected + and rescored using a given language model and a rnn-lm. + The shortest path within the lattice is used as the final output. + + Args: + model: + An instance of `Transducer`. + decoding_graph: + Decoding graph used for decoding, may be a TrivialGraph or a LG. + encoder_out: + A tensor of shape (N, T, C) from the encoder. + encoder_out_lens: + A tensor of shape (N,) containing the number of frames in `encoder_out` + before padding. + beam: + Beam value, similar to the beam used in Kaldi. + max_states: + Max states per stream per frame. + max_contexts: + Max contexts pre stream per frame. + ngram_lm_scale_list: + A list of floats representing LM score scales. + num_paths: + Number of paths to extract from the decoded lattice. + G: + An FsaVec containing only a single FSA. It is an n-gram LM. + sp: + The BPE model. + word_table: + The word symbol table. + rnn_lm_model: + A rnn-lm model used for LM rescoring + rnn_lm_scale_list: + A list of floats representing RNN score scales. + oov_word: + OOV words are replaced with this word. + use_double_scores: + True to use double precision for computation. False to use + single precision. + nbest_scale: + It's the scale applied to the lattice.scores. A smaller value + yields more unique paths. + temperature: + Softmax temperature. + return_timestamps: + Whether to return timestamps. + Returns: + Return the decoded result in a dict, where the key has the form + 'ngram_lm_scale_xx' and the value is the decoded results + optionally with timestamps. `xx` is the ngram LM scale value + used during decoding, i.e., 0.1. + """ + lattice = fast_beam_search( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=beam, + max_states=max_states, + max_contexts=max_contexts, + temperature=temperature, + ) + + nbest = Nbest.from_lattice( + lattice=lattice, + num_paths=num_paths, + use_double_scores=use_double_scores, + nbest_scale=nbest_scale, + ) + # at this point, nbest.fsa.scores are all zeros. + + nbest = nbest.intersect(lattice) + # Now nbest.fsa.scores contains acoustic scores + + am_scores = nbest.tot_scores() + + # Now we need to compute the LM scores of each path. + # (1) Get the token IDs of each Path. We assume the decoding_graph + # is an acceptor, i.e., lattice is also an acceptor + tokens_shape = nbest.fsa.arcs.shape().remove_axis(1) # [path][arc] + + tokens = k2.RaggedTensor(tokens_shape, nbest.fsa.labels.contiguous()) + tokens = tokens.remove_values_leq(0) # remove -1 and 0 + + token_list: List[List[int]] = tokens.tolist() + word_list: List[List[str]] = sp.decode(token_list) + + assert isinstance(oov_word, str), oov_word + assert oov_word in word_table, oov_word + oov_word_id = word_table[oov_word] + + word_ids_list: List[List[int]] = [] + + for words in word_list: + this_word_ids = [] + for w in words.split(): + if w in word_table: + this_word_ids.append(word_table[w]) + else: + this_word_ids.append(oov_word_id) + word_ids_list.append(this_word_ids) + + word_fsas = k2.linear_fsa(word_ids_list, device=lattice.device) + word_fsas_with_self_loops = k2.add_epsilon_self_loops(word_fsas) + + num_unique_paths = len(word_ids_list) + + b_to_a_map = torch.zeros( + num_unique_paths, + dtype=torch.int32, + device=lattice.device, + ) + + rescored_word_fsas = k2.intersect_device( + a_fsas=G, + b_fsas=word_fsas_with_self_loops, + b_to_a_map=b_to_a_map, + sorted_match_a=True, + ret_arc_maps=False, + ) + + rescored_word_fsas = k2.remove_epsilon_self_loops(rescored_word_fsas) + rescored_word_fsas = k2.top_sort(k2.connect(rescored_word_fsas)) + ngram_lm_scores = rescored_word_fsas.get_tot_scores( + use_double_scores=True, + log_semiring=False, + ) + + # Now RNN-LM + blank_id = model.decoder.blank_id + sos_id = sp.piece_to_id("sos_id") + eos_id = sp.piece_to_id("eos_id") + + sos_tokens = add_sos(tokens, sos_id) + tokens_eos = add_eos(tokens, eos_id) + sos_tokens_row_splits = sos_tokens.shape.row_splits(1) + sentence_lengths = sos_tokens_row_splits[1:] - sos_tokens_row_splits[:-1] + + x_tokens = sos_tokens.pad(mode="constant", padding_value=blank_id) + y_tokens = tokens_eos.pad(mode="constant", padding_value=blank_id) + + x_tokens = x_tokens.to(torch.int64) + y_tokens = y_tokens.to(torch.int64) + sentence_lengths = sentence_lengths.to(torch.int64) + + rnn_lm_nll = rnn_lm_model(x=x_tokens, y=y_tokens, lengths=sentence_lengths) + assert rnn_lm_nll.ndim == 2 + assert rnn_lm_nll.shape[0] == len(token_list) + rnn_lm_scores = -1 * rnn_lm_nll.sum(dim=1) + + ans: Dict[str, List[List[int]]] = {} + for n_scale in ngram_lm_scale_list: + for rnn_scale in rnn_lm_scale_list: + key = f"ngram_lm_scale_{n_scale}_rnn_lm_scale_{rnn_scale}" + tot_scores = ( + am_scores.values + n_scale * ngram_lm_scores + rnn_scale * rnn_lm_scores + ) + ragged_tot_scores = k2.RaggedTensor(nbest.shape, tot_scores) + max_indexes = ragged_tot_scores.argmax() + best_path = k2.index_fsa(nbest.fsa, max_indexes) + + if not return_timestamps: + ans[key] = get_texts(best_path) + else: + ans[key] = get_texts_with_timestamp(best_path) + + return ans + + +def modified_beam_search_ngram_rescoring( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + ngram_lm: NgramLm, + ngram_lm_scale: float, + beam: int = 4, + temperature: float = 1.0, +) -> List[List[int]]: + """Beam search in batch mode with --max-sym-per-frame=1 being hardcoded. + + Args: + model: + The transducer model. + encoder_out: + Output from the encoder. Its shape is (N, T, C). + encoder_out_lens: + A 1-D tensor of shape (N,), containing number of valid frames in + encoder_out before padding. + beam: + Number of active paths during the beam search. + temperature: + Softmax temperature. + Returns: + Return a list-of-list of token IDs. ans[i] is the decoding results + for the i-th utterance. + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + lm_scale = ngram_lm_scale + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + state_cost=NgramLmStateCost(ngram_lm), + ) + ) + + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for batch_size in batch_size_list: + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [ + hyp.log_prob.reshape(1, 1) + hyp.state_cost.lm_score * lm_scale + for hyps in A + for hyp in hyps + ] + ) # (num_hyps, 1) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + # decoder_out is of shape (num_hyps, 1, 1, joiner_dim) + + # Note: For torch 1.7.1 and below, it requires a torch.int64 tensor + # as index, so we use `to(torch.int64)` below. + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = (logits / temperature).log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + vocab_size = log_probs.size(-1) + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_ys = hyp.ys[:] + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + new_ys.append(new_token) + state_cost = hyp.state_cost.forward_one_step(new_token) + else: + state_cost = hyp.state_cost + + # We only keep AM scores in new_hyp.log_prob + new_log_prob = topk_log_probs[k] - hyp.state_cost.lm_score * lm_scale + + new_hyp = Hypothesis( + ys=new_ys, log_prob=new_log_prob, state_cost=state_cost + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + ans = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + + return ans + + +def modified_beam_search_rnnlm_shallow_fusion( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + sp: spm.SentencePieceProcessor, + rnnlm: RnnLmModel, + rnnlm_scale: float, + beam: int = 4, + return_timestamps: bool = False, +) -> List[List[int]]: + """Modified_beam_search + RNNLM shallow fusion + + Args: + model (Transducer): + The transducer model + encoder_out (torch.Tensor): + Encoder output in (N,T,C) + encoder_out_lens (torch.Tensor): + A 1-D tensor of shape (N,), containing the number of + valid frames in encoder_out before padding. + sp: + Sentence piece generator. + rnnlm (RnnLmModel): + RNNLM + rnnlm_scale (float): + scale of RNNLM in shallow fusion + beam (int, optional): + Beam size. Defaults to 4. + + Returns: + Return a list-of-list of token IDs. ans[i] is the decoding results + for the i-th utterance. + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + assert rnnlm is not None + lm_scale = rnnlm_scale + vocab_size = rnnlm.vocab_size + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + sos_id = sp.piece_to_id("") + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + # get initial lm score and lm state by scoring the "sos" token + sos_token = torch.tensor([[sos_id]]).to(torch.int64).to(device) + init_score, init_states = rnnlm.score_token(sos_token) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + state=init_states, + lm_score=init_score.reshape(-1), + timestamp=[], + ) + ) + + rnnlm.clean_cache() + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for (t, batch_size) in enumerate(batch_size_list): + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] # get batch + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [hyp.log_prob.reshape(1, 1) for hyps in A for hyp in hyps] + ) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = logits.log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + + vocab_size = log_probs.size(-1) + + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + """ + for all hyps with a non-blank new token, score this token. + It is a little confusing here because this for-loop + looks very similar to the one below. Here, we go through all + top-k tokens and only add the non-blanks ones to the token_list. + The RNNLM will score those tokens given the LM states. Note that + the variable `scores` is the LM score after seeing the new + non-blank token. + """ + token_list = [] + hs = [] + cs = [] + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + assert new_token != 0, new_token + token_list.append([new_token]) + # store the LSTM states + hs.append(hyp.state[0]) + cs.append(hyp.state[1]) + + # forward RNNLM to get new states and scores + if len(token_list) != 0: + tokens_to_score = ( + torch.tensor(token_list).to(torch.int64).to(device).reshape(-1, 1) + ) + + hs = torch.cat(hs, dim=1).to(device) + cs = torch.cat(cs, dim=1).to(device) + scores, lm_states = rnnlm.score_token(tokens_to_score, (hs, cs)) + + count = 0 # index, used to locate score and lm states + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + ys = hyp.ys[:] + + lm_score = hyp.lm_score + state = hyp.state + + hyp_log_prob = topk_log_probs[k] # get score of current hyp + new_token = topk_token_indexes[k] + new_timestamp = hyp.timestamp[:] + if new_token not in (blank_id, unk_id): + + ys.append(new_token) + new_timestamp.append(t) + hyp_log_prob += lm_score[new_token] * lm_scale # add the lm score + + lm_score = scores[count] + state = ( + lm_states[0][:, count, :].unsqueeze(1), + lm_states[1][:, count, :].unsqueeze(1), + ) + count += 1 + + new_hyp = Hypothesis( + ys=ys, + log_prob=hyp_log_prob, + state=state, + lm_score=lm_score, + timestamp=new_timestamp, + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + sorted_timestamps = [h.timestamp for h in best_hyps] + ans = [] + ans_timestamps = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + ans_timestamps.append(sorted_timestamps[unsorted_indices[i]]) + + if not return_timestamps: + return ans + else: + return DecodingResults( + tokens=ans, + timestamps=ans_timestamps, + ) + + +def modified_beam_search_rnnlm_LODR( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, + sp: spm.SentencePieceProcessor, + LODR_lm: NgramLm, + LODR_lm_scale: float, + rnnlm: RnnLmModel, + rnnlm_scale: float, + beam: int = 4, +) -> List[List[int]]: + """This function implements LODR (https://arxiv.org/abs/2203.16776) with + `modified_beam_search`. It uses a bi-gram language model as the estimate + of the internal language model and subtracts its score during shallow fusion + with an external language model. This implementation uses a RNNLM as the + external language model. + + Args: + model (Transducer): + The transducer model + encoder_out (torch.Tensor): + Encoder output in (N,T,C) + encoder_out_lens (torch.Tensor): + A 1-D tensor of shape (N,), containing the number of + valid frames in encoder_out before padding. + sp: + Sentence piece generator. + LODR_lm: + A low order n-gram LM + LODR_lm_scale: + The scale of the LODR_lm + rnnlm (RnnLmModel): + RNNLM, the external language model + rnnlm_scale (float): + scale of RNNLM in shallow fusion + beam (int, optional): + Beam size. Defaults to 4. + + Returns: + Return a list-of-list of token IDs. ans[i] is the decoding results + for the i-th utterance. + + """ + assert encoder_out.ndim == 3, encoder_out.shape + assert encoder_out.size(0) >= 1, encoder_out.size(0) + assert rnnlm is not None + lm_scale = rnnlm_scale + vocab_size = rnnlm.vocab_size + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + blank_id = model.decoder.blank_id + sos_id = sp.piece_to_id("") + unk_id = getattr(model, "unk_id", blank_id) + context_size = model.decoder.context_size + device = next(model.parameters()).device + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + # get initial lm score and lm state by scoring the "sos" token + sos_token = torch.tensor([[sos_id]]).to(torch.int64).to(device) + init_score, init_states = rnnlm.score_token(sos_token) + + B = [HypothesisList() for _ in range(N)] + for i in range(N): + B[i].add( + Hypothesis( + ys=[blank_id] * context_size, + log_prob=torch.zeros(1, dtype=torch.float32, device=device), + state=init_states, # state of the RNNLM + lm_score=init_score.reshape(-1), + state_cost=NgramLmStateCost( + LODR_lm + ), # state of the source domain ngram + ) + ) + + rnnlm.clean_cache() + encoder_out = model.joiner.encoder_proj(packed_encoder_out.data) + + offset = 0 + finalized_B = [] + for batch_size in batch_size_list: + start = offset + end = offset + batch_size + current_encoder_out = encoder_out.data[start:end] # get batch + current_encoder_out = current_encoder_out.unsqueeze(1).unsqueeze(1) + # current_encoder_out's shape is (batch_size, 1, 1, encoder_out_dim) + offset = end + + finalized_B = B[batch_size:] + finalized_B + B = B[:batch_size] + + hyps_shape = get_hyps_shape(B).to(device) + + A = [list(b) for b in B] + B = [HypothesisList() for _ in range(batch_size)] + + ys_log_probs = torch.cat( + [hyp.log_prob.reshape(1, 1) for hyps in A for hyp in hyps] + ) + + decoder_input = torch.tensor( + [hyp.ys[-context_size:] for hyps in A for hyp in hyps], + device=device, + dtype=torch.int64, + ) # (num_hyps, context_size) + + decoder_out = model.decoder(decoder_input, need_pad=False).unsqueeze(1) + decoder_out = model.joiner.decoder_proj(decoder_out) + + current_encoder_out = torch.index_select( + current_encoder_out, + dim=0, + index=hyps_shape.row_ids(1).to(torch.int64), + ) # (num_hyps, 1, 1, encoder_out_dim) + + logits = model.joiner( + current_encoder_out, + decoder_out, + project_input=False, + ) # (num_hyps, 1, 1, vocab_size) + + logits = logits.squeeze(1).squeeze(1) # (num_hyps, vocab_size) + + log_probs = logits.log_softmax(dim=-1) # (num_hyps, vocab_size) + + log_probs.add_(ys_log_probs) + + vocab_size = log_probs.size(-1) + + log_probs = log_probs.reshape(-1) + + row_splits = hyps_shape.row_splits(1) * vocab_size + log_probs_shape = k2.ragged.create_ragged_shape2( + row_splits=row_splits, cached_tot_size=log_probs.numel() + ) + ragged_log_probs = k2.RaggedTensor(shape=log_probs_shape, value=log_probs) + """ + for all hyps with a non-blank new token, score this token. + It is a little confusing here because this for-loop + looks very similar to the one below. Here, we go through all + top-k tokens and only add the non-blanks ones to the token_list. + The RNNLM will score those tokens given the LM states. Note that + the variable `scores` is the LM score after seeing the new + non-blank token. + """ + token_list = [] + hs = [] + cs = [] + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + assert new_token != 0, new_token + token_list.append([new_token]) + # store the LSTM states + hs.append(hyp.state[0]) + cs.append(hyp.state[1]) + + # forward RNNLM to get new states and scores + if len(token_list) != 0: + tokens_to_score = ( + torch.tensor(token_list).to(torch.int64).to(device).reshape(-1, 1) + ) + + hs = torch.cat(hs, dim=1).to(device) + cs = torch.cat(cs, dim=1).to(device) + scores, lm_states = rnnlm.score_token(tokens_to_score, (hs, cs)) + + count = 0 # index, used to locate score and lm states + for i in range(batch_size): + topk_log_probs, topk_indexes = ragged_log_probs[i].topk(beam) + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + topk_hyp_indexes = (topk_indexes // vocab_size).tolist() + topk_token_indexes = (topk_indexes % vocab_size).tolist() + + for k in range(len(topk_hyp_indexes)): + hyp_idx = topk_hyp_indexes[k] + hyp = A[i][hyp_idx] + + ys = hyp.ys[:] + + # current score of hyp + lm_score = hyp.lm_score + state = hyp.state + + hyp_log_prob = topk_log_probs[k] # get score of current hyp + new_token = topk_token_indexes[k] + if new_token not in (blank_id, unk_id): + + ys.append(new_token) + state_cost = hyp.state_cost.forward_one_step(new_token) + + # calculate the score of the latest token + current_ngram_score = state_cost.lm_score - hyp.state_cost.lm_score + + assert current_ngram_score <= 0.0, ( + state_cost.lm_score, + hyp.state_cost.lm_score, + ) + # score = score + RNNLM_score - LODR_score + # LODR_LM_scale is a negative number here + hyp_log_prob += ( + lm_score[new_token] * lm_scale + + LODR_lm_scale * current_ngram_score + ) # add the lm score + + lm_score = scores[count] + state = ( + lm_states[0][:, count, :].unsqueeze(1), + lm_states[1][:, count, :].unsqueeze(1), + ) + count += 1 + else: + state_cost = hyp.state_cost + + new_hyp = Hypothesis( + ys=ys, + log_prob=hyp_log_prob, + state=state, + lm_score=lm_score, + state_cost=state_cost, + ) + B[i].add(new_hyp) + + B = B + finalized_B + best_hyps = [b.get_most_probable(length_norm=True) for b in B] + + sorted_ans = [h.ys[context_size:] for h in best_hyps] + ans = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + + return ans + +def ctc_greedy_search( + model: Transducer, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, +) -> Union[List[int], DecodingResults]: + """Greedy search for a single utterance. + Args: + model: + An instance of `Transducer`. + encoder_out: + A tensor of shape (N, T, C) from the encoder. Support only N==1 for now. + max_sym_per_frame: + Maximum number of symbols per frame. If it is set to 0, the WER + would be 100%. + return_timestamps: + Whether to return timestamps. + Returns: + If return_timestamps is False, return the decoded result. + Else, return a DecodingResults object containing + decoded result and corresponding timestamps. + """ + assert encoder_out.ndim == 3 + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + device = next(model.parameters()).device + + blank_id = model.decoder.blank_id + unk_id = getattr(model, "unk_id", blank_id) + + # batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + # assert torch.all(encoder_out_lens > 0), encoder_out_lens + # assert N == batch_size_list[0], (N, batch_size_list) + + encoder_out = model.ctc_output(encoder_out) + encoder_out = encoder_out.argmax(-1) + + hyp = [] + for encoder_out_ in encoder_out: + encoder_out_ = encoder_out_.unique_consecutive() + encoder_out_ = encoder_out_[torch.where(encoder_out_ != 0)] + hyp.append(encoder_out_.detach().cpu().tolist()) + + return hyp \ No newline at end of file diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/checkpoint.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/checkpoint.py new file mode 100755 index 000000000..03d9632f5 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/checkpoint.py @@ -0,0 +1,225 @@ +# Copyright 2021-2022 Xiaomi Corporation (authors: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import glob +import logging +import os +import re +from pathlib import Path +from typing import Any, Dict, List, Optional, Union + +from lhotse.dataset.sampling.base import CutSampler + +import torch +import torch.nn as nn +from torch import Tensor +from torch.cuda.amp import GradScaler +from torch.nn.parallel import DistributedDataParallel as DDP +from torch.optim import Optimizer + +# use duck typing for LRScheduler since we have different possibilities, see +# our class LRScheduler. +LRSchedulerType = object + + +def save_checkpoint( + filename: Path, + model: Union[nn.Module, DDP], + model_avg: Optional[nn.Module] = None, + params: Optional[Dict[str, Any]] = None, + optimizer = None, + scheduler = None, + scaler: Optional[GradScaler] = None, + sampler: Optional[CutSampler] = None, + rank: int = 0, +) -> None: + """Save training information to a file. + + Args: + filename: + The checkpoint filename. + model: + The model to be saved. We only save its `state_dict()`. + model_avg: + The stored model averaged from the start of training. + params: + User defined parameters, e.g., epoch, loss. + optimizer: + The optimizer to be saved. We only save its `state_dict()`. + scheduler: + The scheduler to be saved. We only save its `state_dict()`. + scalar: + The GradScaler to be saved. We only save its `state_dict()`. + rank: + Used in DDP. We save checkpoint only for the node whose rank is 0. + Returns: + Return None. + """ + if rank != 0: + return + + logging.info(f"Saving checkpoint to {filename}") + + if isinstance(model, DDP): + model = model.module + + if type(optimizer) == list: + checkpoint = { + "model": model.state_dict(), + "optimizer_enc": optimizer[0].state_dict() if optimizer is not None else None, + "optimizer_dec": optimizer[1].state_dict() if optimizer is not None else None, + "scheduler_enc": scheduler[0].state_dict() if scheduler is not None else None, + "scheduler_dec": scheduler[1].state_dict() if scheduler is not None else None, + "grad_scaler": scaler.state_dict() if scaler is not None else None, + "sampler": sampler.state_dict() if sampler is not None else None, + } + else: + checkpoint = { + "model": model.state_dict(), + "optimizer": optimizer.state_dict() if optimizer is not None else None, + "scheduler": scheduler.state_dict() if scheduler is not None else None, + "grad_scaler": scaler.state_dict() if scaler is not None else None, + "sampler": sampler.state_dict() if sampler is not None else None, + } + + + if model_avg is not None: + checkpoint["model_avg"] = model_avg.to(torch.float32).state_dict() + + if params: + for k, v in params.items(): + assert k not in checkpoint + checkpoint[k] = v + + torch.save(checkpoint, filename) + + +def load_checkpoint( + filename: Path, + model: nn.Module, + model_avg: Optional[nn.Module] = None, + optimizer = None, + scheduler = None, + scaler: Optional[GradScaler] = None, + sampler: Optional[CutSampler] = None, + strict: bool = True, +) -> Dict[str, Any]: + """ + TODO: document it + """ + logging.info(f"Loading checkpoint from {filename}") + checkpoint = torch.load(filename, map_location="cpu") + + if next(iter(checkpoint["model"])).startswith("module."): + logging.info("Loading checkpoint saved by DDP") + + dst_state_dict = model.state_dict() + src_state_dict = checkpoint["model"] + for key in dst_state_dict.keys(): + src_key = "{}.{}".format("module", key) + dst_state_dict[key] = src_state_dict.pop(src_key) + assert len(src_state_dict) == 0 + model.load_state_dict(dst_state_dict, strict=strict) + else: + model.load_state_dict(checkpoint["model"], strict=strict) + + checkpoint.pop("model") + + if model_avg is not None and "model_avg" in checkpoint: + logging.info("Loading averaged model") + model_avg.load_state_dict(checkpoint["model_avg"], strict=strict) + checkpoint.pop("model_avg") + + def load(name, obj): + s = checkpoint.get(name, None) + if obj and s: + obj.load_state_dict(s) + checkpoint.pop(name) + + if type(optimizer) == list: + load("optimizer_enc", optimizer[0]) + load("optimizer_dec", optimizer[1]) + load("scheduler_enc", scheduler[0]) + load("scheduler_dec", scheduler[1]) + else: + load("optimizer", optimizer) + load("scheduler", scheduler) + + load("grad_scaler", scaler) + load("sampler", sampler) + + return checkpoint + + +def save_checkpoint_with_global_batch_idx( + out_dir: Path, + global_batch_idx: int, + model: Union[nn.Module, DDP], + model_avg: Optional[nn.Module] = None, + params: Optional[Dict[str, Any]] = None, + optimizer = None, + scheduler = None, + scaler: Optional[GradScaler] = None, + sampler: Optional[CutSampler] = None, + rank: int = 0, +): + """Save training info after processing given number of batches. + + Args: + out_dir: + The directory to save the checkpoint. + global_batch_idx: + The number of batches processed so far from the very start of the + training. The saved checkpoint will have the following filename: + + f'out_dir / checkpoint-{global_batch_idx}.pt' + model: + The neural network model whose `state_dict` will be saved in the + checkpoint. + model_avg: + The stored model averaged from the start of training. + params: + A dict of training configurations to be saved. + optimizer: + The optimizer used in the training. Its `state_dict` will be saved. + scheduler: + The learning rate scheduler used in the training. Its `state_dict` will + be saved. + scaler: + The scaler used for mix precision training. Its `state_dict` will + be saved. + sampler: + The sampler used in the training dataset. + rank: + The rank ID used in DDP training of the current node. Set it to 0 + if DDP is not used. + """ + out_dir = Path(out_dir) + out_dir.mkdir(parents=True, exist_ok=True) + filename = out_dir / f"checkpoint-{global_batch_idx}.pt" + save_checkpoint( + filename=filename, + model=model, + model_avg=model_avg, + params=params, + optimizer=optimizer, + scheduler=scheduler, + scaler=scaler, + sampler=sampler, + rank=rank, + ) diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/ctc_decode.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/ctc_decode.py new file mode 100755 index 000000000..9c23e7d66 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/ctc_decode.py @@ -0,0 +1,818 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Liyong Guo, +# Quandong Wang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(1) ctc-decoding +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --decoding-method ctc-decoding + +(2) 1best +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --decoding-method 1best + +(3) nbest +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --decoding-method 1best + +(4) nbest-rescoring +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --lm-dir data/lm \ + --decoding-method nbest-rescoring + +(5) whole-lattice-rescoring +./pruned_transducer_stateless7_ctc/ctc_decode.py \ + --epoch 30 \ + --avg 15 \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --max-duration 600 \ + --hlg-scale 0.8 \ + --lm-dir data/lm \ + --decoding-method whole-lattice-rescoring +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule +from train import add_model_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.decode import ( + get_lattice, + nbest_decoding, + nbest_oracle, + one_best_decoding, + rescore_with_n_best_list, + rescore_with_whole_lattice, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + get_texts, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=15, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="ctc-decoding", + help="""Decoding method. + Supported values are: + - (1) ctc-decoding. Use CTC decoding. It uses a sentence piece + model, i.e., lang_dir/bpe.model, to convert word pieces to words. + It needs neither a lexicon nor an n-gram LM. + - (2) 1best. Extract the best path from the decoding lattice as the + decoding result. + - (3) nbest. Extract n paths from the decoding lattice; the path + with the highest score is the decoding result. + - (4) nbest-rescoring. Extract n paths from the decoding lattice, + rescore them with an n-gram LM (e.g., a 4-gram LM), the path with + the highest score is the decoding result. + - (5) whole-lattice-rescoring. Rescore the decoding lattice with an + n-gram LM (e.g., a 4-gram LM), the best path of rescored lattice + is the decoding result. + you have trained an RNN LM using ./rnn_lm/train.py + - (6) nbest-oracle. Its WER is the lower bound of any n-best + rescoring method can achieve. Useful for debugging n-best + rescoring method. + """, + ) + + parser.add_argument( + "--num-paths", + type=int, + default=100, + help="""Number of paths for n-best based decoding method. + Used only when "method" is one of the following values: + nbest, nbest-rescoring, and nbest-oracle + """, + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""The scale to be applied to `lattice.scores`. + It's needed if you use any kinds of n-best based rescoring. + Used only when "method" is one of the following values: + nbest, nbest-rescoring, and nbest-oracle + A smaller value results in more unique paths. + """, + ) + + parser.add_argument( + "--hlg-scale", + type=float, + default=0.8, + help="""The scale to be applied to `hlg.scores`. + """, + ) + + parser.add_argument( + "--lm-dir", + type=str, + default="data/lm", + help="""The n-gram LM dir. + It should contain either G_4_gram.pt or G_4_gram.fst.txt + """, + ) + + add_model_arguments(parser) + + return parser + + +def get_decoding_params() -> AttributeDict: + """Parameters for decoding.""" + params = AttributeDict( + { + "frame_shift_ms": 10, + "search_beam": 20, + "output_beam": 8, + "min_active_states": 30, + "max_active_states": 10000, + "use_double_scores": True, + } + ) + return params + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + HLG: Optional[k2.Fsa], + H: Optional[k2.Fsa], + bpe_model: Optional[spm.SentencePieceProcessor], + batch: dict, + word_table: k2.SymbolTable, + G: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + - key: It indicates the setting used for decoding. For example, + if no rescoring is used, the key is the string `no_rescore`. + If LM rescoring is used, the key is the string `lm_scale_xxx`, + where `xxx` is the value of `lm_scale`. An example key is + `lm_scale_0.7` + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + + Args: + params: + It's the return value of :func:`get_params`. + + - params.decoding_method is "1best", it uses 1best decoding without LM rescoring. + - params.decoding_method is "nbest", it uses nbest decoding without LM rescoring. + - params.decoding_method is "nbest-rescoring", it uses nbest LM rescoring. + - params.decoding_method is "whole-lattice-rescoring", it uses whole lattice LM + rescoring. + + model: + The neural model. + HLG: + The decoding graph. Used only when params.decoding_method is NOT ctc-decoding. + H: + The ctc topo. Used only when params.decoding_method is ctc-decoding. + bpe_model: + The BPE model. Used only when params.decoding_method is ctc-decoding. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + G: + An LM. It is not None when params.decoding_method is "nbest-rescoring" + or "whole-lattice-rescoring". In general, the G in HLG + is a 3-gram LM, while this G is a 4-gram LM. + Returns: + Return the decoding result. See above description for the format of + the returned dict. Note: If it decodes to nothing, then return None. + """ + if HLG is not None: + device = HLG.device + else: + device = H.device + feature = batch["inputs"] + assert feature.ndim == 3 + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + feature_lens = supervisions["num_frames"].to(device) + + encoder_out, encoder_out_lens = model.encoder(feature, feature_lens) + nnet_output = model.ctc_output(encoder_out) + # nnet_output is (N, T, C) + + supervision_segments = torch.stack( + ( + supervisions["sequence_idx"], + supervisions["start_frame"] // params.subsampling_factor, + supervisions["num_frames"] // params.subsampling_factor, + ), + 1, + ).to(torch.int32) + + if H is None: + assert HLG is not None + decoding_graph = HLG + else: + assert HLG is None + assert bpe_model is not None + decoding_graph = H + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=decoding_graph, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + if params.decoding_method == "ctc-decoding": + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + # Note: `best_path.aux_labels` contains token IDs, not word IDs + # since we are using H, not HLG here. + # + # token_ids is a lit-of-list of IDs + token_ids = get_texts(best_path) + + # hyps is a list of str, e.g., ['xxx yyy zzz', ...] + hyps = bpe_model.decode(token_ids) + + # hyps is a list of list of str, e.g., [['xxx', 'yyy', 'zzz'], ... ] + hyps = [s.split() for s in hyps] + key = "ctc-decoding" + return {key: hyps} + + if params.decoding_method == "nbest-oracle": + # Note: You can also pass rescored lattices to it. + # We choose the HLG decoded lattice for speed reasons + # as HLG decoding is faster and the oracle WER + # is only slightly worse than that of rescored lattices. + best_path = nbest_oracle( + lattice=lattice, + num_paths=params.num_paths, + ref_texts=supervisions["text"], + word_table=word_table, + nbest_scale=params.nbest_scale, + oov="", + ) + hyps = get_texts(best_path) + hyps = [[word_table[i] for i in ids] for ids in hyps] + key = f"oracle_{params.num_paths}_nbest_scale_{params.nbest_scale}" # noqa + return {key: hyps} + + if params.decoding_method in ["1best", "nbest"]: + if params.decoding_method == "1best": + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + key = "no_rescore" + else: + best_path = nbest_decoding( + lattice=lattice, + num_paths=params.num_paths, + use_double_scores=params.use_double_scores, + nbest_scale=params.nbest_scale, + ) + key = f"no_rescore-nbest-scale-{params.nbest_scale}-{params.num_paths}" # noqa + + hyps = get_texts(best_path) + hyps = [[word_table[i] for i in ids] for ids in hyps] + return {key: hyps} + + assert params.decoding_method in [ + "nbest-rescoring", + "whole-lattice-rescoring", + ] + + lm_scale_list = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7] + lm_scale_list += [0.8, 0.9, 1.0, 1.1, 1.2, 1.3] + lm_scale_list += [1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0] + + if params.decoding_method == "nbest-rescoring": + best_path_dict = rescore_with_n_best_list( + lattice=lattice, + G=G, + num_paths=params.num_paths, + lm_scale_list=lm_scale_list, + nbest_scale=params.nbest_scale, + ) + elif params.decoding_method == "whole-lattice-rescoring": + best_path_dict = rescore_with_whole_lattice( + lattice=lattice, + G_with_epsilon_loops=G, + lm_scale_list=lm_scale_list, + ) + else: + assert False, f"Unsupported decoding method: {params.decoding_method}" + + ans = dict() + if best_path_dict is not None: + for lm_scale_str, best_path in best_path_dict.items(): + hyps = get_texts(best_path) + hyps = [[word_table[i] for i in ids] for ids in hyps] + ans[lm_scale_str] = hyps + else: + ans = None + return ans + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + HLG: Optional[k2.Fsa], + H: Optional[k2.Fsa], + bpe_model: Optional[spm.SentencePieceProcessor], + word_table: k2.SymbolTable, + G: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + HLG: + The decoding graph. Used only when params.decoding_method is NOT ctc-decoding. + H: + The ctc topo. Used only when params.decoding_method is ctc-decoding. + bpe_model: + The BPE model. Used only when params.decoding_method is ctc-decoding. + word_table: + It is the word symbol table. + G: + An LM. It is not None when params.decoding_method is "nbest-rescoring" + or "whole-lattice-rescoring". In general, the G in HLG + is a 3-gram LM, while this G is a 4-gram LM. + Returns: + Return a dict, whose key may be "no-rescore" if no LM rescoring + is used, or it may be "lm_scale_0.7" if LM rescoring is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + HLG=HLG, + H=H, + bpe_model=bpe_model, + batch=batch, + word_table=word_table, + G=G, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % 100 == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats(f, f"{test_set_name}-{key}", results) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + args.lang_dir = Path(args.lang_dir) + args.lm_dir = Path(args.lm_dir) + + params = get_params() + # add decoding params + params.update(get_decoding_params()) + params.update(vars(args)) + + assert params.decoding_method in ( + "ctc-decoding", + "1best", + "nbest", + "nbest-rescoring", + "whole-lattice-rescoring", + "nbest-oracle", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + logging.info(params) + + lexicon = Lexicon(params.lang_dir) + max_token_id = max(lexicon.tokens) + num_classes = max_token_id + 1 # +1 for the blank + + params.vocab_size = num_classes + # and are defined in local/train_bpe_model.py + params.blank_id = 0 + + if params.decoding_method == "ctc-decoding": + HLG = None + H = k2.ctc_topo( + max_token=max_token_id, + modified=False, + device=device, + ) + bpe_model = spm.SentencePieceProcessor() + bpe_model.load(str(params.lang_dir / "bpe.model")) + else: + H = None + bpe_model = None + HLG = k2.Fsa.from_dict( + torch.load(f"{params.lang_dir}/HLG.pt", map_location=device) + ) + assert HLG.requires_grad is False + + HLG.scores *= params.hlg_scale + if not hasattr(HLG, "lm_scores"): + HLG.lm_scores = HLG.scores.clone() + + if params.decoding_method in ( + "nbest-rescoring", + "whole-lattice-rescoring", + ): + if not (params.lm_dir / "G_4_gram.pt").is_file(): + logging.info("Loading G_4_gram.fst.txt") + logging.warning("It may take 8 minutes.") + with open(params.lm_dir / "G_4_gram.fst.txt") as f: + first_word_disambig_id = lexicon.word_table["#0"] + + G = k2.Fsa.from_openfst(f.read(), acceptor=False) + # G.aux_labels is not needed in later computations, so + # remove it here. + del G.aux_labels + # CAUTION: The following line is crucial. + # Arcs entering the back-off state have label equal to #0. + # We have to change it to 0 here. + G.labels[G.labels >= first_word_disambig_id] = 0 + # See https://github.com/k2-fsa/k2/issues/874 + # for why we need to set G.properties to None + G.__dict__["_properties"] = None + G = k2.Fsa.from_fsas([G]).to(device) + G = k2.arc_sort(G) + # Save a dummy value so that it can be loaded in C++. + # See https://github.com/pytorch/pytorch/issues/67902 + # for why we need to do this. + G.dummy = 1 + + torch.save(G.as_dict(), params.lm_dir / "G_4_gram.pt") + else: + logging.info("Loading pre-compiled G_4_gram.pt") + d = torch.load(params.lm_dir / "G_4_gram.pt", map_location=device) + G = k2.Fsa.from_dict(d) + + if params.decoding_method == "whole-lattice-rescoring": + # Add epsilon self-loops to G as we will compose + # it with the whole lattice later + G = k2.add_epsilon_self_loops(G) + G = k2.arc_sort(G) + G = G.to(device) + + # G.lm_scores is used to replace HLG.lm_scores during + # LM rescoring. + G.lm_scores = G.scores.clone() + else: + G = None + + logging.info("About to create model") + model = get_transducer_model(params) + + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + librispeech = LibriSpeechAsrDataModule(args) + + test_clean_cuts = librispeech.test_clean_cuts() + test_other_cuts = librispeech.test_other_cuts() + + test_clean_dl = librispeech.test_dataloaders(test_clean_cuts) + test_other_dl = librispeech.test_dataloaders(test_other_cuts) + + test_sets = ["test-clean", "test-other"] + test_dl = [test_clean_dl, test_other_dl] + + for test_set, test_dl in zip(test_sets, test_dl): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + HLG=HLG, + H=H, + bpe_model=bpe_model, + word_table=lexicon.word_table, + G=G, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/config.yaml b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/config.yaml new file mode 100644 index 000000000..304f42126 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/config.yaml @@ -0,0 +1,65 @@ +world_size: 4 +master_port: 12354 +tensorboard: True +num_epochs: 60 +start_epoch: 1 +start_batch: 0 +exp_dir: transducer_unsupervised_finetuning_d2v_v2/d2v-T-LJft +bpe_model: data/lang_bpe_500/bpe.model +base_lr: 0.05 +lr_batches: 5000 +lr_epochs: 3.5 +context_size: 2 +prune_range: 5 +lm_scale: 0.25 +am_scale: 0.0 +simple_loss_scale: 0.5 +ctc_loss_scale: 0.2 +seed: 42 +print_diagnostics: False +inf_check: False +save_every_n: 2000 +keep_last_k: 30 +average_period: 200 +use_fp16: True +num_encoder_layers: 2,4,3,2,4 +feedforward_dims: 1024,1024,2048,2048,1024 +nhead: 8,8,8,8,8 +encoder_dims: 384,384,384,384,384 +attention_dims: 192,192,192,192,192 +encoder_unmasked_dims: 256,256,256,256,256 +zipformer_downsampling_factors: 1,2,4,8,2 +cnn_module_kernels: 31,31,31,31,31 +decoder_dim: 768 +joiner_dim: 768 +wandb: False +accum_grads: 16 +multi_optim: True +peak_enc_lr: 0.0003859 +peak_dec_lr: 0.04175 +encoder_type: d2v +encoder_dim: 768 +freeze_finetune_updates: 1000 +additional_block: True +decode_interval: 200 +load_prefinetuned_model: ./model_locked/libri_finetuned.pt +use_pseudo_labels: True +update_ema: True +layer_average: False +full_libri: False +manifest_dir: data/fbank +max_duration: 150 +bucketing_sampler: True +num_buckets: 30 +concatenate_cuts: False +duration_factor: 1.0 +gap: 1.0 +on_the_fly_feats: False +shuffle: True +drop_last: True +return_cuts: True +num_workers: 2 +enable_spec_aug: False +spec_aug_time_warp_factor: 80 +enable_musan: True +input_strategy: AudioSamples diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/run.sh b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/run.sh new file mode 100755 index 000000000..283cd8eaa --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/run.sh @@ -0,0 +1,74 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-prefinetuned-model ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-pseudo-trained/libri_finetuned.pt \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 0 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --accum-grads 16 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --update-ema False \ + --layer-average False +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Decoding" + # modified_beam_search, greedy_search, ctc_greedy_search + expdir=./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-oracle-epoch100 + for method in ctc_greedy_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name best-valid-loss.pt \ + --exp-dir $expdir \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 + done +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041380.icefall.541328.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041380.icefall.541328.0 new file mode 100644 index 0000000000000000000000000000000000000000..65d22f557afdf3a7bb80df7d2713a98ba8a89944 GIT binary patch literal 40 rcmb1OfPlsI-b$RAGdVfGeZ1i)#hX-=n3<>NT9%quVr7)>zUn9d&wLEA literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041471.icefall.542414.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041471.icefall.542414.0 new file mode 100644 index 0000000000000000000000000000000000000000..0774c3e1ef9f92f182e1a28143497d14151792e6 GIT binary patch literal 87 zcmb1OfPlsI-b$Ril^)7}`*_1qiZ`h!F*8rkwJbHS#LDQE!0)N@P<4UcE)txp`}Qb- e)M<%u32||kfYj=z7UU;qh%zuV*n9c1B?ADBH5$DD literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041633.icefall.545239.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041633.icefall.545239.0 new file mode 100644 index 0000000000000000000000000000000000000000..234b09c3849fbc921cf96b41002aee9fcac0c4dc GIT binary patch literal 87 zcmb1OfPlsI-b$Ra-&J^g`*_1qiZ`h!F*8rkwJbHS#LB4ZsX&)JR9&FAiv*|2{sM21 dIxP_{AujF`kXrrJg8bwRQ3i$v`~AY#gaLww8rlE= literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041682.icefall.548064.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041682.icefall.548064.0 new file mode 100644 index 0000000000000000000000000000000000000000..d0be3ddf441e845fa215d83cdb85efd34c868e7d GIT binary patch literal 40 rcmb1OfPlsI-b$P&m8OM!`*_1qiZ`h!F*8rkwJbHS#LDQkU-&uzNT9%quVr6vuqp~{y*jx=4 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041805.icefall.550238.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041805.icefall.550238.0 new file mode 100644 index 0000000000000000000000000000000000000000..2eb71b9968578d22cdfca88e1874445056850a66 GIT binary patch literal 40 rcmb1OfPlsI-b$RT;qJxXKHhMY;!P?_%*@ksElbTSu`;@(uwNDc&hrdp literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041871.icefall.551344.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041871.icefall.551344.0 new file mode 100644 index 0000000000000000000000000000000000000000..effb054dcf2a8dc6a872e5acea5df291f7ed61b1 GIT binary patch literal 40 rcmb1OfPlsI-b$Q1_I_#p_VI?J6mL>dVrHJ6YguYuiIveZu01UP{sazO literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041920.icefall.552450.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674041920.icefall.552450.0 new file mode 100644 index 0000000000000000000000000000000000000000..7501156308779b7810bf63d2f09c3dedb3cd6727 GIT binary patch literal 40 rcmb1OfPlsI-b$SN8^kAk`*_1qiZ`h!F*8rkwJbHS#LDPPaHKW>dVrHJ6YguYuiIvex?M5+qsJcLJ7YWXL{io-F e)M<%u32||kfYj=z7UU;qh%zuV*nix%CK>>c&K!6E literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042112.icefall.556381.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042112.icefall.556381.0 new file mode 100644 index 0000000000000000000000000000000000000000..954be66922082d17ba6cbd70060858726c18c631 GIT binary patch literal 87 zcmb1OfPlsI-b$QFDq;t|eZ1i)#hX-=n3<>NT9%quVr6vmoBnQjsJcLJ7YWX_=M4^n e)M<%u32||kfYj=z7UU;qh%zuV*w2_3`3V4jJsd;; literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042207.icefall.559206.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042207.icefall.559206.0 new file mode 100644 index 0000000000000000000000000000000000000000..59822d3b374410d6e7bccefa815d95dda165efc2 GIT binary patch literal 87 zcmb1OfPlsI-b$R3cduRl_VI?J6mL>dVrHJ6YguYuiIvf+8re>HsJcLJ7YWXH*Y4Z` esnZhS65`@60jbqbEyz#K5M^L!us^u#&I|z1xE>b( literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042432.icefall.562031.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042432.icefall.562031.0 new file mode 100644 index 0000000000000000000000000000000000000000..3fd2524b50ae1a4e648da1e196384ea507988f61 GIT binary patch literal 87 zcmb1OfPlsI-b$PcwkivJ|9HbuiZ`h!F*8rkwJbHS#L8&T`Zed}q3Qy?T_iZmB6Wp9 d>a;|-gt)j%Kx*|<3-XgQL>U+w?1RO13;<=#8H4}; literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042674.icefall.564856.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042674.icefall.564856.0 new file mode 100644 index 0000000000000000000000000000000000000000..f50e9d5e78cb91ab97fed5fc937b828796bd6d0c GIT binary patch literal 87 zcmb1OfPlsI-b$R}a{WHvKi+VZ;!P?_%*@ksElbTSu`+spW}mJ+R9&FAiv*_^!yJE* eIxP_{AujF`kXrrJg8bwRQ3i$v`*ZJ#KLY?jq8m;C literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042818.icefall.567681.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674042818.icefall.567681.0 new file mode 100644 index 0000000000000000000000000000000000000000..1cc764a46026a717e8a54451ea4ba37eed02398e GIT binary patch literal 87 zcmb1OfPlsI-b$RG<}57u{_%#R6mL>dVrHJ6YguYuiIvfz$vJlNP<4UcE)txTL92>E e>a;|-gt)j%Kx*|<3-XgQL>U+w>;r$Regpuf&>SfM literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043213.icefall.570506.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043213.icefall.570506.0 new file mode 100644 index 0000000000000000000000000000000000000000..e67a456788a08b9317b074475db857be6bed8b16 GIT binary patch literal 87 zcmb1OfPlsI-b$RYB}JFNf4t!+#hX-=n3<>NT9%quVr4YxG<%plR9&FAiv(wxZ~HZn dIxP_{AujF`kXrrJg8bwRQ3i$v`yk=J6##ZK8w&sc literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043318.icefall.573331.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043318.icefall.573331.0 new file mode 100644 index 0000000000000000000000000000000000000000..13d42d9c4b0d08036c9199c1769b8711fbcc5da4 GIT binary patch literal 87 zcmb1OfPlsI-b$RS{%?8v{o@TsDc+=_#LPTB*Rs^S5-X$j1nDMusJcLJ7YR-3UKOCz7 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043483.icefall.576156.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674043483.icefall.576156.0 new file mode 100644 index 0000000000000000000000000000000000000000..e37059babf06bd094261771bb4d59153201b6db0 GIT binary patch literal 87 zcmb1OfPlsI-b$Qre|;DG@$rVE6mL>dVrHJ6YguYuiIve8|3wka;|-gt)j%Kx*|<3-XgQL>U+w>@#-Fbp!yrvK!$5 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044099.icefall.578981.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044099.icefall.578981.0 new file mode 100644 index 0000000000000000000000000000000000000000..4a285772c13293bde53fd7e2fa4f6a73ca88d629 GIT binary patch literal 87 zcmb1OfPlsI-b$R3Mb9_<_;|xniZ`h!F*8rkwJbHS#LCD&V9_>tsJcLJ7YWYIFQ04% esnZhS65`@60jbqbEyz#K5M^L!u;*0INdo|-SsRf6 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044304.icefall.581806.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044304.icefall.581806.0 new file mode 100644 index 0000000000000000000000000000000000000000..488839b3ce732e122703585bd8f59dcd6b7f3127 GIT binary patch literal 87 zcmb1OfPlsI-b$Q(+B#2ue7xZ(#hX-=n3<>NT9%quVr8^a;|-gt)j%Kx*|<3-XgQL>U+w>?>t{9|r)Ia2!_v literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044432.icefall.584631.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044432.icefall.584631.0 new file mode 100644 index 0000000000000000000000000000000000000000..0e7db1bc1347a2017ecd71b4802f6a967c94c26c GIT binary patch literal 87 zcmb1OfPlsI-b$SJovc`Xe!Sr*#hX-=n3<>NT9%quVr68d&k!aLRTt>(BEgxS?Z^&N drzOHA#Km0#Qmda@ke{3(%D~WIf9v`2$pH8m8JGY7 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044594.icefall.587456.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044594.icefall.587456.0 new file mode 100644 index 0000000000000000000000000000000000000000..0251abd975be42d1e2cccb4e846b998b761858ee GIT binary patch literal 87 zcmb1OfPlsI-b$QWyuCU(BEfm9rCT4Q dPD_MKh>N=fq*gz*AU`=nl!2kaK6m%+!vHkg8yWxr literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044697.icefall.590281.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044697.icefall.590281.0 new file mode 100644 index 0000000000000000000000000000000000000000..c92098b2fd75b189a47bcfc8463b9c34f5e166a6 GIT binary patch literal 87 zcmb1OfPlsI-b$RSzJ|K}{CLAriZ`h!F*8rkwJbHS#L6g0;fb+4R9&FAiv%a5gpVgk dot6lf5Epj|NUeTqL4I8x literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044824.icefall.593106.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674044824.icefall.593106.0 new file mode 100644 index 0000000000000000000000000000000000000000..e1fd4a5d869cab3266d51e4271e31acc1fee8f8e GIT binary patch literal 87 zcmb1OfPlsI-b$Qvf>hFee!Sr*#hX-=n3<>NT9%quVrA4VS9(GosxHvmMS}CXvUDa$ dot6lf5Epj|NUeTqL4I8dv}T literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045257.icefall.598756.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045257.icefall.598756.0 new file mode 100644 index 0000000000000000000000000000000000000000..427b15785deb5cc05c16f88a2e0413089e698dfb GIT binary patch literal 87 zcmb1OfPlsI-b$Q@T#_#R{CLAriZ`h!F*8rkwJbHS#LCFQV7h`lR9&FAiv;H-`ShzG eby^}^LR{P>Ahr6b1^LMtq6`cT_6!Ri%?1Ex0UGcC literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045391.icefall.601581.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045391.icefall.601581.0 new file mode 100644 index 0000000000000000000000000000000000000000..e85439dd1b44e63fb152eb3113e9275b393dd43d GIT binary patch literal 87 zcmb1OfPlsI-b$S2s&7C4{CLAriZ`h!F*8rkwJbHS#L7r<*(*DFsJcLJ7YWXfN&mlr e)M<%u32||kfYj=z7UU;qh%zuV*#CL$@fZNKLLJHg literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045540.icefall.604406.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045540.icefall.604406.0 new file mode 100644 index 0000000000000000000000000000000000000000..87aefb31cce72e7bcbecc4eb4ef6edef603d485c GIT binary patch literal 87 zcmb1OfPlsI-b$Pn?+qn?eZ1i)#hX-=n3<>NT9%quVrBHmGNT9%quVrA6(bMhW}sJcLJ7YWV_yT53I z)M<%u32||kfYj=z7UU;qh%zuV*sr(#`&1XI+{Ur%H>drF0)3Ej0Y)taE;%l7sD`}c z_?*1`^ zuW-%MT#{Tu5Sx=ri;93Ai_gg~E*8CbYrn0QnACMWsJ^48!+&vVe242(!%+5<%!ebE&RT z;B=Jm+42Xj6DfQ^wxPH(`n1V9HK>in{*M_r`ToK6NpgvE2|#R2FG@^_FHTO(Nd>0^ I>0=`K0Q8K|PXGV_ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045937.icefall.610057.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674045937.icefall.610057.0 new file mode 100644 index 0000000000000000000000000000000000000000..29f949b686db04bbf66dd8bc304730c092703015 GIT binary patch literal 87 zcmb1OfPlsI-b$RsQ(bF*eZ1i)#hX-=n3<>NT9%quVr5h$Fs()&sxHvmMS}C{T#I^; dIxP_{AujF`kXrrJg8bwRQ3i$vd)dVJSO8l%8V3LX literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674046176.icefall.612882.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674046176.icefall.612882.0 new file mode 100644 index 0000000000000000000000000000000000000000..dbab0106f00e6b0be9836e74ba1bfef4777d3fc7 GIT binary patch literal 87 zcmb1OfPlsI-b$R$^zC;1`gp@piZ`h!F*8rkwJbHS#LDPPZ?LI6R9&FAiv(xxS?Ap# eby^}^LR{P>Ahr6b1^LMtq6`cT_MaoCYXbm^yBnbZ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674046575.icefall.615707.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674046575.icefall.615707.0 new file mode 100644 index 0000000000000000000000000000000000000000..005ba6c201d29842baa35ae443e241b8ca59948e GIT binary patch literal 371 zcmb1OfPlsI-b$SOGmc9C{&>StiZ`h!F*8rkwJbHS#L7sqj8#$|sxHvmMS}C2?QuDf zIxP_{AujF`kXrrJg8bwRQ3i$v`*$~_XX`?h+c#`{`-$(_j&q=$%m$Szhu1}mxl#36duOuHy tk7YvpGc~B5V*kesoZn2~dL+5Txdb43(u)#P;)|0Lb5g-!W52oSAOO{0a$5iZ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674047923.icefall.620135.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T-unsup_trial1/tensorboard/events.out.tfevents.1674047923.icefall.620135.0 new file mode 100644 index 0000000000000000000000000000000000000000..0cc28f958c513cdb06369e786ed66d355ada6238 GIT binary patch literal 18854 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/config.yaml b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/config.yaml new file mode 100755 index 000000000..b2cb499ad --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/config.yaml @@ -0,0 +1,59 @@ +world_size: 4 +master_port: 12354 +tensorboard: True +num_epochs: 30 +start_epoch: 1 +start_batch: 0 +exp_dir: pruned_transducer_stateless_d2v_v2/d2v-T +bpe_model: data/lang_bpe_500/bpe.model +base_lr: 0.05 +lr_batches: 5000 +lr_epochs: 3.5 +context_size: 2 +prune_range: 10 +lm_scale: 0.25 +am_scale: 0.0 +simple_loss_scale: 0.5 +ctc_loss_scale: 0.2 +seed: 42 +print_diagnostics: False +inf_check: False +save_every_n: 2000 +keep_last_k: 30 +average_period: 200 +use_fp16: True +num_encoder_layers: 2,4,3,2,4 +feedforward_dims: 1024,1024,2048,2048,1024 +nhead: 8,8,8,8,8 +encoder_dims: 384,384,384,384,384 +attention_dims: 192,192,192,192,192 +encoder_unmasked_dims: 256,256,256,256,256 +zipformer_downsampling_factors: 1,2,4,8,2 +cnn_module_kernels: 31,31,31,31,31 +decoder_dim: 768 +joiner_dim: 768 +wandb: False +accum_grads: 4 +multi_optim: True +peak_enc_lr: 0.0003859 +peak_dec_lr: 0.04175 +encoder_type: d2v +encoder_dim: 768 +freeze_finetune_updates: 3000 +additional_block: True +decode_interval: 200 +manifest_dir: data/fbank +max_duration: 150 +bucketing_sampler: True +num_buckets: 30 +concatenate_cuts: False +duration_factor: 1.0 +gap: 1.0 +shuffle: True +drop_last: True +return_cuts: True +num_workers: 2 +enable_spec_aug: False +spec_aug_time_warp_factor: 80 +enable_musan: True +input_strategy: AudioSamples diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/run.sh b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/run.sh new file mode 100755 index 000000000..6af07cfa3 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/run.sh @@ -0,0 +1,69 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T \ + --max-duration 150 \ + --freeze-finetune-updates 3000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --accum-grads 4 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Decoding" + + for method in modified_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoch-27.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 + done +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671954484.icefall.3524353.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671954484.icefall.3524353.0 new file mode 100755 index 0000000000000000000000000000000000000000..3f32869f1c37fe06cdc05b7c400cbece1076fc71 GIT binary patch literal 39354 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671968552.icefall.4052698.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1671968552.icefall.4052698.0 new file mode 100755 index 0000000000000000000000000000000000000000..58613bb12ef30de6713e88a2bc2a7a9b955a9dc3 GIT binary patch literal 39354 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 CohYvW literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672019298.icefall.387040.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672019298.icefall.387040.0 new file mode 100755 index 0000000000000000000000000000000000000000..686e7324722c87a6732d13c0c025e3b6a57d0701 GIT binary patch literal 1743419 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%0AEc@gs-}UN2GRVyM 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ℜ^m|gk=cK9B5PuB62GHkf|GDeuk>*9ot)3f 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%0AT$F1f55BJ6 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

    DV&siG7nVwG1=`fcfhrEKdD4y#y8Jq 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%0AteE2> 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672373045.icefall.2877575.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1672373045.icefall.2877575.0 new file mode 100755 index 0000000000000000000000000000000000000000..24c660194beee00cef0fde5627283e577ce930c4 GIT binary patch literal 9879 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 G8~HCwj6-k$ literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1673520074.icefall.109647.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/d2v-T/tensorboard/events.out.tfevents.1673520074.icefall.109647.0 new file mode 100755 index 0000000000000000000000000000000000000000..c3c70cb33dd29c1159b4f2c6c1ce919d63cd031f GIT binary patch literal 40 rcmb1OfPlsI-b$Q|we6pNyuaZn#hX-=n3<>NT9%quVrAsJ@02(I= self.cfg.ema_anneal_end_step: + decay = self.cfg.ema_end_decay + else: + decay = get_annealed_rate( + self.cfg.ema_decay, + self.cfg.ema_end_decay, + num_updates, + self.cfg.ema_anneal_end_step, + ) + self.ema.set_decay(decay) + if self.ema.get_decay() < 1: + self.ema.step(self.encoder if self.cfg.ema_transformer_only else self) + ''' + self.num_updates = num_updates + + def state_dict(self, destination=None, prefix="", keep_vars=False): + state = super().state_dict(destination, prefix, keep_vars) + + if self.ema is not None: + state[prefix + "_ema"] = self.ema.fp32_params + + return state + + def _load_from_state_dict(self, state_dict, prefix, *args, **kwargs): + if self.ema is not None: + k = prefix + "_ema" + assert k in state_dict + self.ema.restore(state_dict[k], True) + del state_dict[k] + return super()._load_from_state_dict(state_dict, prefix, *args, **kwargs) + + @classmethod + def build_model(cls, cfg: Data2VecAudioConfig, task=None): + """Build a new model instance.""" + + return cls(cfg) + + def apply_mask( + self, + x, + padding_mask, + mask_indices=None, + mask_channel_indices=None, + ): + B, T, C = x.shape + + if self.mask_channel_prob > 0 and self.mask_channel_before: + mask_channel_indices = compute_mask_indices( + (B, C), + None, + self.mask_channel_prob, + self.mask_channel_length, + self.mask_channel_selection, + self.mask_channel_other, + no_overlap=self.no_mask_channel_overlap, + min_space=self.mask_channel_min_space, + ) + mask_channel_indices = ( + torch.from_numpy(mask_channel_indices) + .to(x.device) + .unsqueeze(1) + .expand(-1, T, -1) + ) + x[mask_channel_indices] = 0 + + if self.mask_prob > 0: + if mask_indices is None: + mask_indices = compute_mask_indices( + (B, T), + padding_mask, + self.mask_prob, + self.mask_length, + self.mask_selection, + self.mask_other, + min_masks=1, + no_overlap=self.no_mask_overlap, + min_space=self.mask_min_space, + require_same_masks=self.cfg.require_same_masks, + mask_dropout=self.cfg.mask_dropout, + ) + mask_indices = torch.from_numpy(mask_indices).to(x.device) + #x = index_put(x, mask_indices, self.mask_emb) + x = index_put(x, mask_indices, 0) + else: + mask_indices = None + + if self.mask_channel_prob > 0 and not self.mask_channel_before: + if mask_channel_indices is None: + mask_channel_indices = compute_mask_indices( + (B, C), + None, + self.mask_channel_prob, + self.mask_channel_length, + self.mask_channel_selection, + self.mask_channel_other, + no_overlap=self.no_mask_channel_overlap, + min_space=self.mask_channel_min_space, + ) + mask_channel_indices = ( + torch.from_numpy(mask_channel_indices) + .to(x.device) + .unsqueeze(1) + .expand(-1, T, -1) + ) + x = index_put(x, mask_channel_indices, 0) + + return x, mask_indices + + def _get_feat_extract_output_lengths(self, input_lengths: torch.LongTensor): + """ + Computes the output length of the convolutional layers + """ + + def _conv_out_length(input_length, kernel_size, stride): + return torch.floor((input_length - kernel_size) / stride + 1) + + conv_cfg_list = eval(self.cfg.conv_feature_layers) + + for i in range(len(conv_cfg_list)): + input_lengths = _conv_out_length( + input_lengths, conv_cfg_list[i][1], conv_cfg_list[i][2] + ) + + return input_lengths.to(torch.long) + + def forward( + self, + source, + padding_mask=None, + mask=True, + features_only=False, + layer=None, + mask_indices=None, + mask_channel_indices=None, + padding_count=None, + ): + features = source + + if self.feature_grad_mult > 0: + features = self.feature_extractor(features) + if self.feature_grad_mult != 1.0: + features = GradMultiply.apply(features, self.feature_grad_mult) + else: + with torch.no_grad(): + features = self.feature_extractor(features) + + features = features.transpose(1, 2) + + features = self.layer_norm(features) + + orig_padding_mask = padding_mask + + if padding_mask is not None and padding_mask.any(): + input_lengths = (1 - padding_mask.long()).sum(-1) + # apply conv formula to get real output_lengths + output_lengths = self._get_feat_extract_output_lengths(input_lengths) + + padding_mask = torch.zeros( + features.shape[:2], dtype=features.dtype, device=features.device + ) + + # these two operations makes sure that all values + # before the output lengths indices are attended to + padding_mask[ + ( + torch.arange(padding_mask.shape[0], device=padding_mask.device), + output_lengths - 1, + ) + ] = 1 + padding_mask = (1 - padding_mask.flip([-1]).cumsum(-1).flip([-1])).bool() + else: + padding_mask = None + + if self.post_extract_proj is not None: + features = self.post_extract_proj(features) + + pre_encoder_features = None + if self.cfg.ema_transformer_only: + pre_encoder_features = features.clone() + + features = self.dropout_input(features) + + if mask: + x, mask_indices = self.apply_mask( + features, + padding_mask, + mask_indices=mask_indices, + mask_channel_indices=mask_channel_indices, + ) + else: + x = features + mask_indices = None + + x, layer_results = self.encoder( + x, + padding_mask=padding_mask, + layer=layer, + ) + + if features_only: + return { + "x": x, + "padding_mask": padding_mask, + "layer_results": layer_results, + "mask_indices": mask_indices, + } + + result = { + "losses": {}, + } + + with torch.no_grad(): + self.ema.model.eval() + + if self.cfg.ema_transformer_only: + y, layer_results = self.ema.model.extract_features( + pre_encoder_features, + padding_mask=padding_mask, + min_layer=self.cfg.encoder_layers - self.average_top_k_layers, + ) + y = { + "x": y, + "padding_mask": padding_mask, + "layer_results": layer_results, + } + else: + y = self.ema.model.extract_features( + source=source, + padding_mask=orig_padding_mask, + mask=False, + ) + + target_layer_results = [l[2] for l in y["layer_results"]] + + permuted = False + if self.cfg.instance_norm_target_layer or self.cfg.batch_norm_target_layer: + target_layer_results = [ + tl.permute(1, 2, 0) for tl in target_layer_results # TBC -> BCT + ] + permuted = True + + if self.cfg.batch_norm_target_layer: + target_layer_results = [ + F.batch_norm( + tl.float(), running_mean=None, running_var=None, training=True + ) + for tl in target_layer_results + ] + + if self.cfg.instance_norm_target_layer: + target_layer_results = [ + F.instance_norm(tl.float()) for tl in target_layer_results + ] + + if permuted: + target_layer_results = [ + tl.transpose(1, 2) for tl in target_layer_results # BCT -> BTC + ] + + if self.cfg.group_norm_target_layer: + target_layer_results = [ + F.layer_norm(tl.float(), tl.shape[-2:]) + for tl in target_layer_results + ] + + if self.cfg.layer_norm_target_layer: + target_layer_results = [ + F.layer_norm(tl.float(), tl.shape[-1:]) + for tl in target_layer_results + ] + + y = sum(target_layer_results) / len(target_layer_results) + + if self.cfg.layer_norm_targets: + y = F.layer_norm(y.float(), y.shape[-1:]) + + if self.cfg.instance_norm_targets: + y = F.instance_norm(y.float().transpose(1, 2)).transpose(1, 2) + + if not permuted: + y = y.transpose(0, 1) + + y = y[mask_indices] + + x = x[mask_indices] + x = self.final_proj(x) + + sz = x.size(-1) + + if self.loss_beta == 0: + loss = F.mse_loss(x.float(), y.float(), reduction="none").sum(dim=-1) + else: + loss = F.smooth_l1_loss( + x.float(), y.float(), reduction="none", beta=self.loss_beta + ).sum(dim=-1) + + if self.loss_scale is not None: + scale = self.loss_scale + else: + scale = 1 / math.sqrt(sz) + + result["losses"]["regression"] = loss.sum() * scale + + if "sample_size" not in result: + result["sample_size"] = loss.numel() + + with torch.no_grad(): + result["target_var"] = self.compute_var(y) + result["pred_var"] = self.compute_var(x.float()) + + if self.num_updates > 5000 and result["target_var"] < self.cfg.min_target_var: + logger.error( + f"target var is {result['target_var'].item()} < {self.cfg.min_target_var}, exiting" + ) + raise Exception( + f"target var is {result['target_var'].item()} < {self.cfg.min_target_var}, exiting" + ) + if self.num_updates > 5000 and result["pred_var"] < self.cfg.min_pred_var: + logger.error( + f"pred var is {result['pred_var'].item()} < {self.cfg.min_pred_var}, exiting" + ) + raise Exception( + f"pred var is {result['pred_var'].item()} < {self.cfg.min_pred_var}, exiting" + ) + + if self.ema is not None: + result["ema_decay"] = self.ema.get_decay() * 1000 + + return result + + @staticmethod + def compute_var(y): + y = y.view(-1, y.size(-1)) + if dist.is_initialized(): + zc = torch.tensor(y.size(0)).cuda() + zs = y.sum(dim=0) + zss = (y ** 2).sum(dim=0) + + dist.all_reduce(zc) + dist.all_reduce(zs) + dist.all_reduce(zss) + + var = zss / (zc - 1) - (zs ** 2) / (zc * (zc - 1)) + return torch.sqrt(var + 1e-6).mean() + else: + return torch.sqrt(y.var(dim=0) + 1e-6).mean() + + def extract_features( + self, source, padding_mask, mask=False, layer=None + ): + res = self.forward( + source, + padding_mask, + mask=mask, + features_only=True, + layer=layer, + ) + return res + + def remove_pretraining_modules(self, last_layer=None): + self.final_proj = None + self.ema = None + if last_layer is not None: + self.encoder.layers = nn.ModuleList( + l for i, l in enumerate(self.encoder.layers) if i <= last_layer + ) diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/data2vec_encoder.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/data2vec_encoder.py new file mode 100755 index 000000000..d57b58079 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/data2vec_encoder.py @@ -0,0 +1,210 @@ +# Copyright 2021 Xuankai Chang +# Apache 2.0 (http://www.apache.org/licenses/LICENSE-2.0) + +"""Encoder definition.""" +import contextlib +import time +import copy +import math +import logging +import os +from typing import List, Optional, Tuple +import warnings + +import torch +from filelock import FileLock +from typeguard import check_argument_types + +from nets_utils import make_pad_mask +from encoder_interface import EncoderInterface +from torch import Tensor, nn + +from icefall.utils import make_pad_mask, subsequent_chunk_mask +try: + import fairseq + from data2vec_audio import * +except Exception as e: + print("Error: FairSeq is not properly installed.") + print( + "Please install FairSeq: cd ${MAIN_ROOT}/tools && make fairseq.done" + ) + raise e + + +class FairSeqData2VecEncoder(EncoderInterface): + """FairSeq Wav2Vec2 encoder module. + + Args: + input_size: input dim + output_size: dimension of attention + w2v_url: url to Wav2Vec2.0 pretrained model + w2v_dir_path: directory to download the Wav2Vec2.0 pretrained model. + normalize_before: whether to use layer_norm before the first block + finetune_last_n_layers: last n layers to be finetuned in Wav2Vec2.0 + 0 means to finetune every layer if freeze_w2v=False. + """ + + def __init__( + self, + input_size: int, + w2v_url: str, + w2v_dir_path: str = "./", + output_size: int = 256, + freeze_finetune_updates: int = 0, + additional_block: bool = False, + layer_average: bool = False, + ): + assert check_argument_types() + super().__init__() + + ''' + if os.path.exists('/home/work/workspace/models/data2vec_model/audio_base_ls.pt'): + self.w2v_model_path = '/home/work/workspace/models/data2vec_model/audio_base_ls.pt' + if os.path.exists('/workspace/models/audio_base_ls.pt'): + self.w2v_model_path = '/workspace/models/audio_base_ls.pt' + ''' + self.w2v_model_path = download_d2v() + self._output_size = output_size + + models, _, _ = fairseq.checkpoint_utils.load_model_ensemble_and_task( + [self.w2v_model_path], + strict=False, + ) + model = models[0] + model.feature_grad_mult = 0.0 ## for conv network freeze + model.mask_prob = 0.5 ## for conv network freeze + + self.encoders = model + self.pretrained_params = copy.deepcopy(model.state_dict()) + + if model.cfg.encoder_embed_dim != output_size or additional_block: + # TODO(xkc09): try LSTM + self.output_layer = torch.nn.Sequential( + torch.nn.Linear(model.cfg.encoder_embed_dim, output_size), + torch.nn.LayerNorm(output_size), + torch.nn.GELU(), + ) + else: + self.output_layer = None + + self.freeze_finetune_updates = freeze_finetune_updates + self.num_updates = 0 + + self.layer_average = layer_average + if self.layer_average: + self.encoders.encoder.layerdrop = 0.0 # no layerdrop for weight averaging + self.layer_num = 12 + self.weights = nn.Parameter(torch.zeros(self.layer_num)) + + self.ft = False + + def output_size(self) -> int: + return self._output_size + + def _weighted_sum(self, feature): + stacked_feature = torch.stack(feature, dim=0) + + _, *origin_shape = stacked_feature.shape + stacked_feature = stacked_feature.view(self.layer_num, -1) + norm_weights = F.softmax(self.weights, dim=-1) + weighted_feature = (norm_weights.unsqueeze(-1) * stacked_feature).sum(dim=0) + weighted_feature = weighted_feature.view(*origin_shape) + + return weighted_feature + + def forward( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + warmup = None, + prev_states: torch.Tensor = None, + ) -> Tuple[torch.Tensor, torch.Tensor]: + xs_pad = x + ilens = x_lens + """Forward FairSeqWav2Vec2 Encoder. + + Args: + xs_pad: input tensor (B, L, D) + ilens: input length (B) + prev_states: Not to be used now. + Returns: + position embedded tensor and mask + """ + with torch.no_grad(): + xs_pad = torch.nn.functional.layer_norm(xs_pad, xs_pad.shape) + + masks = make_pad_mask(ilens).to(xs_pad.device) + + self.ft = (self.freeze_finetune_updates <= self.num_updates) and self.encoders.training + if self.num_updates <= self.freeze_finetune_updates: + self.num_updates += 1 + elif self.ft and self.num_updates == self.freeze_finetune_updates + 1: + self.num_updates += 1 + logging.info("Start fine-tuning wav2vec parameters!") + + with torch.no_grad() if not self.ft else contextlib.nullcontext(): + enc_outputs = self.encoders( + xs_pad, + masks, + mask = self.ft, + features_only=True, + ) + + if self.layer_average: + xs_pad = list() + for lr in enc_outputs["layer_results"]: + xs_pad.append(lr[0].transpose(0,1)) + + xs_pad = self._weighted_sum(xs_pad) + else: + xs_pad = enc_outputs["x"] # (B,T,C), + + bs = xs_pad.shape[0] + if enc_outputs["padding_mask"] is not None: + masks = enc_outputs["padding_mask"] # (B, T) + olens = (~masks).sum(dim=1) # (B) + else: + olens = torch.IntTensor([xs_pad.shape[1]]).repeat(bs).to(xs_pad.device) + + if self.output_layer is not None: + xs_pad = self.output_layer(xs_pad) + + return xs_pad, olens, enc_outputs["layer_results"], enc_outputs["mask_indices"] + + def reload_pretrained_parameters(self): + self.encoders.load_state_dict(self.pretrained_params) + logging.info("Pretrained data2vec model parameters reloaded!") + + +def download_d2v(model_url='https://dl.fbaipublicfiles.com/fairseq/data2vec/audio_base_ls.pt', dir_path='./models'): + os.makedirs(dir_path, exist_ok=True) + + model_name = model_url.split("/")[-1] + model_path = os.path.join(dir_path, model_name) + + dict_url = "https://dl.fbaipublicfiles.com/fairseq/wav2vec/dict.ltr.txt" + dict_path = os.path.join(dir_path, dict_url.split("/")[-1]) + + with FileLock(model_path + ".lock"): + if not os.path.exists(model_path): + torch.hub.download_url_to_file(model_url, model_path) + torch.hub.download_url_to_file(dict_url, dict_path) + logging.info(f"data2vec model downloaded {model_path}") + else: + logging.info(f"data2vec model {model_path} already exists.") + + return model_path + + +if __name__ == '__main__': + d2v = FairSeqData2VecEncoder(input_size=768, w2v_url='ww', output_size=768) + inputs = torch.randn([1, 211564]) + #a = torch.ones([1000] + #b = torch.ones([10000]) + #c = torch.ones([10000]) + length = torch.tensor([211564]) + outputs = d2v(inputs, length) + print(outputs[0].size()) + + #for n, p in d2v.named_parameters(): + # print(n) diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode.py new file mode 100755 index 000000000..4c63f0c56 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode.py @@ -0,0 +1,846 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(0) for d2v-T decoding +for method in greedy_search modified_beam_search fast_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoc.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/960h_sweep_v3_388 \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule, UserLibriAsrDataModule, LJSpeechAsrDataModule +from beam_search import ( + beam_search, + fast_beam_search_nbest, + fast_beam_search_nbest_LG, + fast_beam_search_nbest_oracle, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, + ctc_greedy_search, +) +from train import add_model_arguments, add_rep_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + "--model-name", + type=str, + default="", + help="""It specifies the model file name to use for decoding.""", + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + - fast_beam_search_nbest + - fast_beam_search_nbest_oracle + - fast_beam_search_nbest_LG + If you use fast_beam_search_nbest_LG, you have to specify + `--lang-dir`, which should contain `LG.pt`. + """, + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --decoding-method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=20.0, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --decoding-method is fast_beam_search, + fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle + """, + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=0.01, + help=""" + Used only when --decoding_method is fast_beam_search_nbest_LG. + It specifies the scale for n-gram LM scores. + """, + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=8, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=64, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. + Used only when --decoding_method is greedy_search""", + ) + + parser.add_argument( + "--num-paths", + type=int, + default=200, + help="""Number of paths for nbest decoding. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""Scale applied to lattice scores when computing nbest paths. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--simulate-streaming", + type=str2bool, + default=False, + help="""Whether to simulate streaming in decoding, this is a good way to + test a streaming model. + """, + ) + + parser.add_argument( + "--decode-chunk-size", + type=int, + default=16, + help="The chunk size for decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--left-context", + type=int, + default=64, + help="left context can be seen during decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--gen-pseudo-label", + type=str2bool, + default=False, + help="make pseudo labels for train set", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + batch: dict, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + + - key: It indicates the setting used for decoding. For example, + if greedy_search is used, it would be "greedy_search" + If beam search with a beam size of 7 is used, it would be + "beam_7" + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + Args: + params: + It's the return value of :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return the decoding result. See above description for the format of + the returned dict. + """ + device = next(model.parameters()).device + feature = batch["inputs"] + assert feature.ndim == 2 or feature.ndim == 3 + + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + #feature_lens = supervisions["num_frames"].to(device) + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + if params.simulate_streaming: + feature_lens += params.left_context + feature = torch.nn.functional.pad( + feature, + pad=(0, 0, 0, params.left_context), + value=LOG_EPS, + ) + encoder_out, encoder_out_lens, _ = model.encoder.streaming_forward( + x=feature, + x_lens=feature_lens, + chunk_size=params.decode_chunk_size, + left_context=params.left_context, + simulate_streaming=True, + ) + else: + encoder_out, encoder_out_lens = model.encoder(x=feature, x_lens=feature_lens) + + hyps = [] + + if params.decoding_method == "fast_beam_search": + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_LG": + hyp_tokens = fast_beam_search_nbest_LG( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in hyp_tokens: + hyps.append([word_table[i] for i in hyp]) + elif params.decoding_method == "fast_beam_search_nbest": + hyp_tokens = fast_beam_search_nbest( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_oracle": + hyp_tokens = fast_beam_search_nbest_oracle( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + ref_texts=sp.encode(supervisions["text"]), + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "ctc_greedy_search": + hyp_tokens = ctc_greedy_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + batch_size = encoder_out.size(0) + + for i in range(batch_size): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.decoding_method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.decoding_method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError( + f"Unsupported decoding method: {params.decoding_method}" + ) + hyps.append(sp.decode(hyp).split()) + + if params.decoding_method == "greedy_search": + return {"greedy_search": hyps} + elif "fast_beam_search" in params.decoding_method: + key = f"beam_{params.beam}_" + key += f"max_contexts_{params.max_contexts}_" + key += f"max_states_{params.max_states}" + if "nbest" in params.decoding_method: + key += f"_num_paths_{params.num_paths}_" + key += f"nbest_scale_{params.nbest_scale}" + if "LG" in params.decoding_method: + key += f"_ngram_lm_scale_{params.ngram_lm_scale}" + + return {key: hyps} + else: + return {f"beam_size_{params.beam_size}": hyps} + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return a dict, whose key may be "greedy_search" if greedy search + is used, or it may be "beam_7" if beam size of 7 is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + if params.decoding_method == "greedy_search": + log_interval = 50 + else: + log_interval = 20 + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + sp=sp, + decoding_graph=decoding_graph, + word_table=word_table, + batch=batch, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % log_interval == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats( + f, f"{test_set_name}-{key}", results, enable_log=True + ) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + assert params.decoding_method in ( + "greedy_search", + "beam_search", + "fast_beam_search", + "fast_beam_search_nbest", + "fast_beam_search_nbest_LG", + "fast_beam_search_nbest_oracle", + "modified_beam_search", + "ctc_greedy_search", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.simulate_streaming: + params.suffix += f"-streaming-chunk-size-{params.decode_chunk_size}" + params.suffix += f"-left-context-{params.left_context}" + + if "fast_beam_search" in params.decoding_method: + params.suffix += f"-beam-{params.beam}" + params.suffix += f"-max-contexts-{params.max_contexts}" + params.suffix += f"-max-states-{params.max_states}" + if "nbest" in params.decoding_method: + params.suffix += f"-nbest-scale-{params.nbest_scale}" + params.suffix += f"-num-paths-{params.num_paths}" + if "LG" in params.decoding_method: + params.suffix += f"-ngram-lm-scale-{params.ngram_lm_scale}" + elif "beam_search" in params.decoding_method: + params.suffix += f"-{params.decoding_method}-beam-size-{params.beam_size}" + else: + params.suffix += f"-context-{params.context_size}" + params.suffix += f"-max-sym-per-frame-{params.max_sym_per_frame}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # and are defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + if params.simulate_streaming: + assert ( + params.causal_convolution + ), "Decoding in streaming requires causal convolution" + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + if params.model_name: + load_checkpoint(f"{params.exp_dir}/{params.model_name}", model) + else: + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + if "fast_beam_search" in params.decoding_method: + if params.decoding_method == "fast_beam_search_nbest_LG": + lexicon = Lexicon(params.lang_dir) + word_table = lexicon.word_table + lg_filename = params.lang_dir / "LG.pt" + logging.info(f"Loading {lg_filename}") + decoding_graph = k2.Fsa.from_dict( + torch.load(lg_filename, map_location=device) + ) + decoding_graph.scores *= params.ngram_lm_scale + else: + word_table = None + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + else: + decoding_graph = None + word_table = None + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + LJSpeech = LJSpeechAsrDataModule(args) + + if args.gen_pseudo_label: + train_cuts = LJSpeech.train_cuts() + train_dl_ = LJSpeech.test_dataloaders(train_cuts) + + test_sets = ["train"] + train_dl_ = [train_dl_] + + for test_set, test_dl in zip(test_sets, train_dl_): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + else: + dev_cuts = LJSpeech.dev_cuts() + test_cuts = LJSpeech.test_cuts() + + dev_dl = LJSpeech.test_dataloaders(dev_cuts) + test_dl_ = LJSpeech.test_dataloaders(test_cuts) + + test_sets = ["dev", "test"] + test_dl_ = [dev_dl, test_dl_] + + for test_set, test_dl in zip(test_sets, test_dl_): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_librispeech.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_librispeech.py new file mode 100755 index 000000000..4b3eac067 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_librispeech.py @@ -0,0 +1,803 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(0) for d2v-T decoding +for method in greedy_search modified_beam_search fast_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoc.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/960h_sweep_v3_388 \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule +from beam_search import ( + beam_search, + fast_beam_search_nbest, + fast_beam_search_nbest_LG, + fast_beam_search_nbest_oracle, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from train import add_model_arguments, add_rep_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + "--model-name", + type=str, + default="", + help="""It specifies the model file name to use for decoding.""", + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + - fast_beam_search_nbest + - fast_beam_search_nbest_oracle + - fast_beam_search_nbest_LG + If you use fast_beam_search_nbest_LG, you have to specify + `--lang-dir`, which should contain `LG.pt`. + """, + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --decoding-method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=20.0, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --decoding-method is fast_beam_search, + fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle + """, + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=0.01, + help=""" + Used only when --decoding_method is fast_beam_search_nbest_LG. + It specifies the scale for n-gram LM scores. + """, + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=8, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=64, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. + Used only when --decoding_method is greedy_search""", + ) + + parser.add_argument( + "--num-paths", + type=int, + default=200, + help="""Number of paths for nbest decoding. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""Scale applied to lattice scores when computing nbest paths. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--simulate-streaming", + type=str2bool, + default=False, + help="""Whether to simulate streaming in decoding, this is a good way to + test a streaming model. + """, + ) + + parser.add_argument( + "--decode-chunk-size", + type=int, + default=16, + help="The chunk size for decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--left-context", + type=int, + default=64, + help="left context can be seen during decoding (in frames after subsampling)", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + batch: dict, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + + - key: It indicates the setting used for decoding. For example, + if greedy_search is used, it would be "greedy_search" + If beam search with a beam size of 7 is used, it would be + "beam_7" + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + Args: + params: + It's the return value of :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return the decoding result. See above description for the format of + the returned dict. + """ + device = next(model.parameters()).device + feature = batch["inputs"] + assert feature.ndim == 2 or feature.ndim == 3 + + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + #feature_lens = supervisions["num_frames"].to(device) + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + if params.simulate_streaming: + feature_lens += params.left_context + feature = torch.nn.functional.pad( + feature, + pad=(0, 0, 0, params.left_context), + value=LOG_EPS, + ) + encoder_out, encoder_out_lens, _ = model.encoder.streaming_forward( + x=feature, + x_lens=feature_lens, + chunk_size=params.decode_chunk_size, + left_context=params.left_context, + simulate_streaming=True, + ) + else: + encoder_out, encoder_out_lens = model.encoder(x=feature, x_lens=feature_lens) + + hyps = [] + + if params.decoding_method == "fast_beam_search": + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_LG": + hyp_tokens = fast_beam_search_nbest_LG( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in hyp_tokens: + hyps.append([word_table[i] for i in hyp]) + elif params.decoding_method == "fast_beam_search_nbest": + hyp_tokens = fast_beam_search_nbest( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_oracle": + hyp_tokens = fast_beam_search_nbest_oracle( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + ref_texts=sp.encode(supervisions["text"]), + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + batch_size = encoder_out.size(0) + + for i in range(batch_size): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.decoding_method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.decoding_method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError( + f"Unsupported decoding method: {params.decoding_method}" + ) + hyps.append(sp.decode(hyp).split()) + + if params.decoding_method == "greedy_search": + return {"greedy_search": hyps} + elif "fast_beam_search" in params.decoding_method: + key = f"beam_{params.beam}_" + key += f"max_contexts_{params.max_contexts}_" + key += f"max_states_{params.max_states}" + if "nbest" in params.decoding_method: + key += f"_num_paths_{params.num_paths}_" + key += f"nbest_scale_{params.nbest_scale}" + if "LG" in params.decoding_method: + key += f"_ngram_lm_scale_{params.ngram_lm_scale}" + + return {key: hyps} + else: + return {f"beam_size_{params.beam_size}": hyps} + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return a dict, whose key may be "greedy_search" if greedy search + is used, or it may be "beam_7" if beam size of 7 is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + if params.decoding_method == "greedy_search": + log_interval = 50 + else: + log_interval = 20 + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + sp=sp, + decoding_graph=decoding_graph, + word_table=word_table, + batch=batch, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % log_interval == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats( + f, f"{test_set_name}-{key}", results, enable_log=True + ) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + assert params.decoding_method in ( + "greedy_search", + "beam_search", + "fast_beam_search", + "fast_beam_search_nbest", + "fast_beam_search_nbest_LG", + "fast_beam_search_nbest_oracle", + "modified_beam_search", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.simulate_streaming: + params.suffix += f"-streaming-chunk-size-{params.decode_chunk_size}" + params.suffix += f"-left-context-{params.left_context}" + + if "fast_beam_search" in params.decoding_method: + params.suffix += f"-beam-{params.beam}" + params.suffix += f"-max-contexts-{params.max_contexts}" + params.suffix += f"-max-states-{params.max_states}" + if "nbest" in params.decoding_method: + params.suffix += f"-nbest-scale-{params.nbest_scale}" + params.suffix += f"-num-paths-{params.num_paths}" + if "LG" in params.decoding_method: + params.suffix += f"-ngram-lm-scale-{params.ngram_lm_scale}" + elif "beam_search" in params.decoding_method: + params.suffix += f"-{params.decoding_method}-beam-size-{params.beam_size}" + else: + params.suffix += f"-context-{params.context_size}" + params.suffix += f"-max-sym-per-frame-{params.max_sym_per_frame}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # and are defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + if params.simulate_streaming: + assert ( + params.causal_convolution + ), "Decoding in streaming requires causal convolution" + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + if params.model_name: + load_checkpoint(f"{params.exp_dir}/{params.model_name}", model) + else: + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + if "fast_beam_search" in params.decoding_method: + if params.decoding_method == "fast_beam_search_nbest_LG": + lexicon = Lexicon(params.lang_dir) + word_table = lexicon.word_table + lg_filename = params.lang_dir / "LG.pt" + logging.info(f"Loading {lg_filename}") + decoding_graph = k2.Fsa.from_dict( + torch.load(lg_filename, map_location=device) + ) + decoding_graph.scores *= params.ngram_lm_scale + else: + word_table = None + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + else: + decoding_graph = None + word_table = None + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + librispeech = LibriSpeechAsrDataModule(args) + + test_clean_cuts = librispeech.test_clean_cuts() + test_other_cuts = librispeech.test_other_cuts() + + test_clean_dl = librispeech.test_dataloaders(test_clean_cuts) + test_other_dl = librispeech.test_dataloaders(test_other_cuts) + + test_sets = ["test-clean", "test-other"] + test_dl = [test_clean_dl, test_other_dl] + + for test_set, test_dl in zip(test_sets, test_dl): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_userlibri.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_userlibri.py new file mode 100755 index 000000000..f3b659e1f --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decode_userlibri.py @@ -0,0 +1,807 @@ +#!/usr/bin/env python3 +# +# Copyright 2021-2022 Xiaomi Corporation (Author: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: +(0) for d2v-T decoding +for method in greedy_search modified_beam_search fast_beam_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name epoc.pt \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/960h_sweep_v3_388 \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 +done +""" + + +import argparse +import logging +import math +from collections import defaultdict +from pathlib import Path +from typing import Dict, List, Optional, Tuple + +import k2 +import sentencepiece as spm +import torch +import torch.nn as nn +from asr_datamodule import LibriSpeechAsrDataModule, UserLibriAsrDataModule +from beam_search import ( + beam_search, + fast_beam_search_nbest, + fast_beam_search_nbest_LG, + fast_beam_search_nbest_oracle, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from train import add_model_arguments, add_rep_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.lexicon import Lexicon +from icefall.utils import ( + AttributeDict, + setup_logger, + store_transcripts, + str2bool, + write_error_stats, +) + +LOG_EPS = math.log(1e-10) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + "--model-name", + type=str, + default="", + help="""It specifies the model file name to use for decoding.""", + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="The experiment dir", + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--lang-dir", + type=Path, + default="data/lang_bpe_500", + help="The lang dir containing word table and LG graph", + ) + + parser.add_argument( + "--decoding-method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + - fast_beam_search_nbest + - fast_beam_search_nbest_oracle + - fast_beam_search_nbest_LG + If you use fast_beam_search_nbest_LG, you have to specify + `--lang-dir`, which should contain `LG.pt`. + """, + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --decoding-method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=20.0, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --decoding-method is fast_beam_search, + fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle + """, + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=0.01, + help=""" + Used only when --decoding_method is fast_beam_search_nbest_LG. + It specifies the scale for n-gram LM scores. + """, + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=8, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=64, + help="""Used only when --decoding-method is + fast_beam_search, fast_beam_search_nbest, fast_beam_search_nbest_LG, + and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. + Used only when --decoding_method is greedy_search""", + ) + + parser.add_argument( + "--num-paths", + type=int, + default=200, + help="""Number of paths for nbest decoding. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help="""Scale applied to lattice scores when computing nbest paths. + Used only when the decoding method is fast_beam_search_nbest, + fast_beam_search_nbest_LG, and fast_beam_search_nbest_oracle""", + ) + + parser.add_argument( + "--simulate-streaming", + type=str2bool, + default=False, + help="""Whether to simulate streaming in decoding, this is a good way to + test a streaming model. + """, + ) + + parser.add_argument( + "--decode-chunk-size", + type=int, + default=16, + help="The chunk size for decoding (in frames after subsampling)", + ) + + parser.add_argument( + "--left-context", + type=int, + default=64, + help="left context can be seen during decoding (in frames after subsampling)", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def decode_one_batch( + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + batch: dict, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[List[str]]]: + """Decode one batch and return the result in a dict. The dict has the + following format: + + - key: It indicates the setting used for decoding. For example, + if greedy_search is used, it would be "greedy_search" + If beam search with a beam size of 7 is used, it would be + "beam_7" + - value: It contains the decoding result. `len(value)` equals to + batch size. `value[i]` is the decoding result for the i-th + utterance in the given batch. + Args: + params: + It's the return value of :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + batch: + It is the return value from iterating + `lhotse.dataset.K2SpeechRecognitionDataset`. See its documentation + for the format of the `batch`. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return the decoding result. See above description for the format of + the returned dict. + """ + device = next(model.parameters()).device + feature = batch["inputs"] + assert feature.ndim == 2 or feature.ndim == 3 + + feature = feature.to(device) + # at entry, feature is (N, T, C) + + supervisions = batch["supervisions"] + #feature_lens = supervisions["num_frames"].to(device) + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + if params.simulate_streaming: + feature_lens += params.left_context + feature = torch.nn.functional.pad( + feature, + pad=(0, 0, 0, params.left_context), + value=LOG_EPS, + ) + encoder_out, encoder_out_lens, _ = model.encoder.streaming_forward( + x=feature, + x_lens=feature_lens, + chunk_size=params.decode_chunk_size, + left_context=params.left_context, + simulate_streaming=True, + ) + else: + encoder_out, encoder_out_lens = model.encoder(x=feature, x_lens=feature_lens) + + hyps = [] + + if params.decoding_method == "fast_beam_search": + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_LG": + hyp_tokens = fast_beam_search_nbest_LG( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in hyp_tokens: + hyps.append([word_table[i] for i in hyp]) + elif params.decoding_method == "fast_beam_search_nbest": + hyp_tokens = fast_beam_search_nbest( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "fast_beam_search_nbest_oracle": + hyp_tokens = fast_beam_search_nbest_oracle( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + num_paths=params.num_paths, + ref_texts=sp.encode(supervisions["text"]), + nbest_scale=params.nbest_scale, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.decoding_method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + batch_size = encoder_out.size(0) + + for i in range(batch_size): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.decoding_method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.decoding_method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError( + f"Unsupported decoding method: {params.decoding_method}" + ) + hyps.append(sp.decode(hyp).split()) + + if params.decoding_method == "greedy_search": + return {"greedy_search": hyps} + elif "fast_beam_search" in params.decoding_method: + key = f"beam_{params.beam}_" + key += f"max_contexts_{params.max_contexts}_" + key += f"max_states_{params.max_states}" + if "nbest" in params.decoding_method: + key += f"_num_paths_{params.num_paths}_" + key += f"nbest_scale_{params.nbest_scale}" + if "LG" in params.decoding_method: + key += f"_ngram_lm_scale_{params.ngram_lm_scale}" + + return {key: hyps} + else: + return {f"beam_size_{params.beam_size}": hyps} + + +def decode_dataset( + dl: torch.utils.data.DataLoader, + params: AttributeDict, + model: nn.Module, + sp: spm.SentencePieceProcessor, + word_table: Optional[k2.SymbolTable] = None, + decoding_graph: Optional[k2.Fsa] = None, +) -> Dict[str, List[Tuple[str, List[str], List[str]]]]: + """Decode dataset. + + Args: + dl: + PyTorch's dataloader containing the dataset to decode. + params: + It is returned by :func:`get_params`. + model: + The neural model. + sp: + The BPE model. + word_table: + The word symbol table. + decoding_graph: + The decoding graph. Can be either a `k2.trivial_graph` or HLG, Used + only when --decoding_method is fast_beam_search, fast_beam_search_nbest, + fast_beam_search_nbest_oracle, and fast_beam_search_nbest_LG. + Returns: + Return a dict, whose key may be "greedy_search" if greedy search + is used, or it may be "beam_7" if beam size of 7 is used. + Its value is a list of tuples. Each tuple contains two elements: + The first is the reference transcript, and the second is the + predicted result. + """ + num_cuts = 0 + + try: + num_batches = len(dl) + except TypeError: + num_batches = "?" + + if params.decoding_method == "greedy_search": + log_interval = 50 + else: + log_interval = 20 + + results = defaultdict(list) + for batch_idx, batch in enumerate(dl): + texts = batch["supervisions"]["text"] + cut_ids = [cut.id for cut in batch["supervisions"]["cut"]] + + hyps_dict = decode_one_batch( + params=params, + model=model, + sp=sp, + decoding_graph=decoding_graph, + word_table=word_table, + batch=batch, + ) + + for name, hyps in hyps_dict.items(): + this_batch = [] + assert len(hyps) == len(texts) + for cut_id, hyp_words, ref_text in zip(cut_ids, hyps, texts): + ref_words = ref_text.split() + this_batch.append((cut_id, ref_words, hyp_words)) + + results[name].extend(this_batch) + + num_cuts += len(texts) + + if batch_idx % log_interval == 0: + batch_str = f"{batch_idx}/{num_batches}" + + logging.info(f"batch {batch_str}, cuts processed until now is {num_cuts}") + return results + + +def save_results( + params: AttributeDict, + test_set_name: str, + results_dict: Dict[str, List[Tuple[str, List[str], List[str]]]], +): + test_set_wers = dict() + for key, results in results_dict.items(): + recog_path = ( + params.res_dir / f"recogs-{test_set_name}-{key}-{params.suffix}.txt" + ) + results = sorted(results) + store_transcripts(filename=recog_path, texts=results) + logging.info(f"The transcripts are stored in {recog_path}") + + # The following prints out WERs, per-word error statistics and aligned + # ref/hyp pairs. + errs_filename = ( + params.res_dir / f"errs-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_filename, "w") as f: + wer = write_error_stats( + f, f"{test_set_name}-{key}", results, enable_log=True + ) + test_set_wers[key] = wer + + logging.info("Wrote detailed error stats to {}".format(errs_filename)) + + test_set_wers = sorted(test_set_wers.items(), key=lambda x: x[1]) + errs_info = ( + params.res_dir / f"wer-summary-{test_set_name}-{key}-{params.suffix}.txt" + ) + with open(errs_info, "w") as f: + print("settings\tWER", file=f) + for key, val in test_set_wers: + print("{}\t{}".format(key, val), file=f) + + s = "\nFor {}, WER of different settings are:\n".format(test_set_name) + note = "\tbest for {}".format(test_set_name) + for key, val in test_set_wers: + s += "{}\t{}{}\n".format(key, val, note) + note = "" + logging.info(s) + + +@torch.no_grad() +def main(): + parser = get_parser() + LibriSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + assert params.decoding_method in ( + "greedy_search", + "beam_search", + "fast_beam_search", + "fast_beam_search_nbest", + "fast_beam_search_nbest_LG", + "fast_beam_search_nbest_oracle", + "modified_beam_search", + ) + params.res_dir = params.exp_dir / params.decoding_method + + if params.iter > 0: + params.suffix = f"iter-{params.iter}-avg-{params.avg}" + else: + params.suffix = f"epoch-{params.epoch}-avg-{params.avg}" + + if params.simulate_streaming: + params.suffix += f"-streaming-chunk-size-{params.decode_chunk_size}" + params.suffix += f"-left-context-{params.left_context}" + + if "fast_beam_search" in params.decoding_method: + params.suffix += f"-beam-{params.beam}" + params.suffix += f"-max-contexts-{params.max_contexts}" + params.suffix += f"-max-states-{params.max_states}" + if "nbest" in params.decoding_method: + params.suffix += f"-nbest-scale-{params.nbest_scale}" + params.suffix += f"-num-paths-{params.num_paths}" + if "LG" in params.decoding_method: + params.suffix += f"-ngram-lm-scale-{params.ngram_lm_scale}" + elif "beam_search" in params.decoding_method: + params.suffix += f"-{params.decoding_method}-beam-size-{params.beam_size}" + else: + params.suffix += f"-context-{params.context_size}" + params.suffix += f"-max-sym-per-frame-{params.max_sym_per_frame}" + + if params.use_averaged_model: + params.suffix += "-use-averaged-model" + + setup_logger(f"{params.res_dir}/log-decode-{params.suffix}") + logging.info("Decoding started") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # and are defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + if params.simulate_streaming: + assert ( + params.causal_convolution + ), "Decoding in streaming requires causal convolution" + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + if params.model_name: + load_checkpoint(f"{params.exp_dir}/{params.model_name}", model) + else: + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to(device) + model.eval() + + if "fast_beam_search" in params.decoding_method: + if params.decoding_method == "fast_beam_search_nbest_LG": + lexicon = Lexicon(params.lang_dir) + word_table = lexicon.word_table + lg_filename = params.lang_dir / "LG.pt" + logging.info(f"Loading {lg_filename}") + decoding_graph = k2.Fsa.from_dict( + torch.load(lg_filename, map_location=device) + ) + decoding_graph.scores *= params.ngram_lm_scale + else: + word_table = None + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + else: + decoding_graph = None + word_table = None + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + # we need cut ids to display recognition results. + args.return_cuts = True + userlibri = UserLibriAsrDataModule(args) + + speaker_wise_cuts, speakers = userlibri.speaker_wise_cuts() + book_wise_cuts, books = userlibri.book_wise_cuts() + + speaker_dl = [] + book_dl = [] + for speaker_wise_cut in speaker_wise_cuts: + speaker_dl.append(userlibri.test_dataloaders(speaker_wise_cut)) + for book_wise_cut in book_wise_cuts: + book_dl.append(userlibri.test_dataloaders(book_wise_cut)) + + test_sets = speakers + books + test_dl = speaker_dl + book_dl + + for test_set, test_dl in zip(test_sets, test_dl): + results_dict = decode_dataset( + dl=test_dl, + params=params, + model=model, + sp=sp, + word_table=word_table, + decoding_graph=decoding_graph, + ) + + save_results( + params=params, + test_set_name=test_set, + results_dict=results_dict, + ) + + logging.info("Done!") + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decoder.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decoder.py new file mode 100755 index 000000000..5f90e6375 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/decoder.py @@ -0,0 +1,102 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +class Decoder(nn.Module): + """This class modifies the stateless decoder from the following paper: + + RNN-transducer with stateless prediction network + https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9054419 + + It removes the recurrent connection from the decoder, i.e., the prediction + network. Different from the above paper, it adds an extra Conv1d + right after the embedding layer. + + TODO: Implement https://arxiv.org/pdf/2109.07513.pdf + """ + + def __init__( + self, + vocab_size: int, + decoder_dim: int, + blank_id: int, + context_size: int, + ): + """ + Args: + vocab_size: + Number of tokens of the modeling unit including blank. + decoder_dim: + Dimension of the input embedding, and of the decoder output. + blank_id: + The ID of the blank symbol. + context_size: + Number of previous words to use to predict the next word. + 1 means bigram; 2 means trigram. n means (n+1)-gram. + """ + super().__init__() + + self.embedding = nn.Embedding( + num_embeddings=vocab_size, + embedding_dim=decoder_dim, + padding_idx=blank_id, + ) + self.blank_id = blank_id + + assert context_size >= 1, context_size + self.context_size = context_size + self.vocab_size = vocab_size + if context_size > 1: + self.conv = nn.Conv1d( + in_channels=decoder_dim, + out_channels=decoder_dim, + kernel_size=context_size, + padding=0, + groups=decoder_dim // 4, # group size == 4 + bias=False, + ) + + def forward(self, y: torch.Tensor, need_pad: bool = True) -> torch.Tensor: + """ + Args: + y: + A 2-D tensor of shape (N, U). + need_pad: + True to left pad the input. Should be True during training. + False to not pad the input. Should be False during inference. + Returns: + Return a tensor of shape (N, U, decoder_dim). + """ + y = y.to(torch.int64) + # this stuff about clamp() is a temporary fix for a mismatch + # at utterance start, we use negative ids in beam_search.py + embedding_out = self.embedding(y.clamp(min=0)) * (y >= 0).unsqueeze(-1) + if self.context_size > 1: + embedding_out = embedding_out.permute(0, 2, 1) + if need_pad is True: + embedding_out = F.pad(embedding_out, pad=(self.context_size - 1, 0)) + else: + # During inference time, there is no need to do extra padding + # as we only need one output + assert embedding_out.size(-1) == self.context_size + embedding_out = self.conv(embedding_out) + embedding_out = embedding_out.permute(0, 2, 1) + embedding_out = F.relu(embedding_out) + return embedding_out diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/encoder_interface.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/encoder_interface.py new file mode 100755 index 000000000..257facce4 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/encoder_interface.py @@ -0,0 +1,43 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import Tuple + +import torch +import torch.nn as nn + + +class EncoderInterface(nn.Module): + def forward( + self, x: torch.Tensor, x_lens: torch.Tensor + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ + Args: + x: + A tensor of shape (batch_size, input_seq_len, num_features) + containing the input features. + x_lens: + A tensor of shape (batch_size,) containing the number of frames + in `x` before padding. + Returns: + Return a tuple containing two tensors: + - encoder_out, a tensor of (batch_size, out_seq_len, output_dim) + containing unnormalized probabilities, i.e., the output of a + linear layer. + - encoder_out_lens, a tensor of shape (batch_size,) containing + the number of frames in `encoder_out` before padding. + """ + raise NotImplementedError("Please implement it in a subclass") diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/export.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/export.py new file mode 100755 index 000000000..59a393739 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/export.py @@ -0,0 +1,320 @@ +#!/usr/bin/env python3 +# +# Copyright 2021 Xiaomi Corporation (Author: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This script converts several saved checkpoints +# to a single one using model averaging. +""" + +Usage: + +(1) Export to torchscript model using torch.jit.script() + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 30 \ + --avg 9 \ + --jit 1 + +It will generate a file `cpu_jit.pt` in the given `exp_dir`. You can later +load it by `torch.jit.load("cpu_jit.pt")`. + +Note `cpu` in the name `cpu_jit.pt` means the parameters when loaded into Python +are on CPU. You can use `to("cuda")` to move them to a CUDA device. + +Check +https://github.com/k2-fsa/sherpa +for how to use the exported models outside of icefall. + +(2) Export `model.state_dict()` + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 + +It will generate a file `pretrained.pt` in the given `exp_dir`. You can later +load it by `icefall.checkpoint.load_checkpoint()`. + +To use the generated file with `pruned_transducer_stateless7_ctc/decode.py`, +you can do: + + cd /path/to/exp_dir + ln -s pretrained.pt epoch-9999.pt + + cd /path/to/egs/librispeech/ASR + ./pruned_transducer_stateless7_ctc/decode.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --epoch 9999 \ + --avg 1 \ + --max-duration 600 \ + --decoding-method greedy_search \ + --bpe-model data/lang_bpe_500/bpe.model + +Check ./pretrained.py for its usage. + +Note: If you don't want to train a model from scratch, we have +provided one for you. You can get it at + +https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless7-2022-11-11 + +with the following commands: + + sudo apt-get install git-lfs + git lfs install + git clone https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless7-2022-11-11 + # You will find the pre-trained model in icefall-asr-librispeech-pruned-transducer-stateless7-2022-11-11/exp +""" + +import argparse +import logging +from pathlib import Path + +import sentencepiece as spm +import torch +from scaling_converter import convert_scaled_to_non_scaled +from train import add_model_arguments, get_params, get_transducer_model + +from icefall.checkpoint import ( + average_checkpoints, + average_checkpoints_with_averaged_model, + find_checkpoints, + load_checkpoint, +) +from icefall.utils import str2bool + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--epoch", + type=int, + default=30, + help="""It specifies the checkpoint to use for decoding. + Note: Epoch counts from 1. + You can specify --avg to use more checkpoints for model averaging.""", + ) + + parser.add_argument( + "--iter", + type=int, + default=0, + help="""If positive, --epoch is ignored and it + will use the checkpoint exp_dir/checkpoint-iter.pt. + You can specify --avg to use more checkpoints for model averaging. + """, + ) + + parser.add_argument( + "--avg", + type=int, + default=9, + help="Number of checkpoints to average. Automatically select " + "consecutive checkpoints before the checkpoint specified by " + "'--epoch' and '--iter'", + ) + + parser.add_argument( + "--use-averaged-model", + type=str2bool, + default=True, + help="Whether to load averaged model. Currently it only supports " + "using --epoch. If True, it would decode with the averaged model " + "over the epoch range from `epoch-avg` (excluded) to `epoch`." + "Actually only the models with epoch number of `epoch-avg` and " + "`epoch` are loaded for averaging. ", + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7/exp", + help="""It specifies the directory where all training related + files, e.g., checkpoints, log, etc, are saved + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--jit", + type=str2bool, + default=False, + help="""True to save a model after applying torch.jit.script. + It will generate a file named cpu_jit.pt + + Check ./jit_pretrained.py for how to use it. + """, + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + + add_model_arguments(parser) + + return parser + + +@torch.no_grad() +def main(): + args = get_parser().parse_args() + args.exp_dir = Path(args.exp_dir) + + params = get_params() + params.update(vars(args)) + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # is defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + model.to(device) + + if not params.use_averaged_model: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + elif params.avg == 1: + load_checkpoint(f"{params.exp_dir}/epoch-{params.epoch}.pt", model) + else: + start = params.epoch - params.avg + 1 + filenames = [] + for i in range(start, params.epoch + 1): + if i >= 1: + filenames.append(f"{params.exp_dir}/epoch-{i}.pt") + logging.info(f"averaging {filenames}") + model.to(device) + model.load_state_dict(average_checkpoints(filenames, device=device)) + else: + if params.iter > 0: + filenames = find_checkpoints(params.exp_dir, iteration=-params.iter)[ + : params.avg + 1 + ] + if len(filenames) == 0: + raise ValueError( + f"No checkpoints found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + elif len(filenames) < params.avg + 1: + raise ValueError( + f"Not enough checkpoints ({len(filenames)}) found for" + f" --iter {params.iter}, --avg {params.avg}" + ) + filename_start = filenames[-1] + filename_end = filenames[0] + logging.info( + "Calculating the averaged model over iteration checkpoints" + f" from {filename_start} (excluded) to {filename_end}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + else: + assert params.avg > 0, params.avg + start = params.epoch - params.avg + assert start >= 1, start + filename_start = f"{params.exp_dir}/epoch-{start}.pt" + filename_end = f"{params.exp_dir}/epoch-{params.epoch}.pt" + logging.info( + f"Calculating the averaged model over epoch range from " + f"{start} (excluded) to {params.epoch}" + ) + model.to(device) + model.load_state_dict( + average_checkpoints_with_averaged_model( + filename_start=filename_start, + filename_end=filename_end, + device=device, + ) + ) + + model.to("cpu") + model.eval() + + if params.jit is True: + convert_scaled_to_non_scaled(model, inplace=True) + logging.info("Using torch.jit.script()") + # We won't use the forward() method of the model in C++, so just ignore + # it here. + # Otherwise, one of its arguments is a ragged tensor and is not + # torch scriptabe. + model.__class__.forward = torch.jit.ignore(model.__class__.forward) + logging.info("Using torch.jit.script") + model = torch.jit.script(model) + filename = params.exp_dir / "cpu_jit.pt" + model.save(str(filename)) + logging.info(f"Saved to {filename}") + else: + logging.info("Not using torchscript. Export model.state_dict()") + # Save it using a format so that it can be loaded + # by :func:`load_checkpoint` + filename = params.exp_dir / "pretrained.pt" + torch.save({"model": model.state_dict()}, str(filename)) + logging.info(f"Saved to {filename}") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained.py new file mode 100755 index 000000000..280b95984 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained.py @@ -0,0 +1,271 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads torchscript models, exported by `torch.jit.script()` +and uses them to decode waves. +You can use the following command to get the exported models: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 \ + --jit 1 + +Usage of this script: + +./pruned_transducer_stateless7_ctc/jit_pretrained.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + /path/to/foo.wav \ + /path/to/bar.wav +""" + +import argparse +import logging +import math +from typing import List + +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from torch.nn.utils.rnn import pad_sequence + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--nn-model-filename", + type=str, + required=True, + help="Path to the torchscript model cpu_jit.pt", + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model.""", + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float = 16000 +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert ( + sample_rate == expected_sample_rate + ), f"Expected sample rate: {expected_sample_rate}. Given: {sample_rate}" + # We use only the first channel + ans.append(wave[0]) + return ans + + +def greedy_search( + model: torch.jit.ScriptModule, + encoder_out: torch.Tensor, + encoder_out_lens: torch.Tensor, +) -> List[List[int]]: + """Greedy search in batch mode. It hardcodes --max-sym-per-frame=1. + Args: + model: + The transducer model. + encoder_out: + A 3-D tensor of shape (N, T, C) + encoder_out_lens: + A 1-D tensor of shape (N,). + Returns: + Return the decoded results for each utterance. + """ + assert encoder_out.ndim == 3 + assert encoder_out.size(0) >= 1, encoder_out.size(0) + + packed_encoder_out = torch.nn.utils.rnn.pack_padded_sequence( + input=encoder_out, + lengths=encoder_out_lens.cpu(), + batch_first=True, + enforce_sorted=False, + ) + + device = encoder_out.device + blank_id = 0 # hard-code to 0 + + batch_size_list = packed_encoder_out.batch_sizes.tolist() + N = encoder_out.size(0) + + assert torch.all(encoder_out_lens > 0), encoder_out_lens + assert N == batch_size_list[0], (N, batch_size_list) + + context_size = model.decoder.context_size + hyps = [[blank_id] * context_size for _ in range(N)] + + decoder_input = torch.tensor( + hyps, + device=device, + dtype=torch.int64, + ) # (N, context_size) + + decoder_out = model.decoder( + decoder_input, + need_pad=torch.tensor([False]), + ).squeeze(1) + + offset = 0 + for batch_size in batch_size_list: + start = offset + end = offset + batch_size + current_encoder_out = packed_encoder_out.data[start:end] + current_encoder_out = current_encoder_out + # current_encoder_out's shape: (batch_size, encoder_out_dim) + offset = end + + decoder_out = decoder_out[:batch_size] + + logits = model.joiner( + current_encoder_out, + decoder_out, + ) + # logits'shape (batch_size, vocab_size) + + assert logits.ndim == 2, logits.shape + y = logits.argmax(dim=1).tolist() + emitted = False + for i, v in enumerate(y): + if v != blank_id: + hyps[i].append(v) + emitted = True + if emitted: + # update decoder output + decoder_input = [h[-context_size:] for h in hyps[:batch_size]] + decoder_input = torch.tensor( + decoder_input, + device=device, + dtype=torch.int64, + ) + decoder_out = model.decoder( + decoder_input, + need_pad=torch.tensor([False]), + ) + decoder_out = decoder_out.squeeze(1) + + sorted_ans = [h[context_size:] for h in hyps] + ans = [] + unsorted_indices = packed_encoder_out.unsorted_indices.tolist() + for i in range(N): + ans.append(sorted_ans[unsorted_indices[i]]) + + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + logging.info(vars(args)) + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + model = torch.jit.load(args.nn_model_filename) + + model.eval() + + model.to(device) + + sp = spm.SentencePieceProcessor() + sp.load(args.bpe_model) + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = 16000 + opts.mel_opts.num_bins = 80 + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {args.sound_files}") + waves = read_sound_files( + filenames=args.sound_files, + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence( + features, + batch_first=True, + padding_value=math.log(1e-10), + ) + + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder( + x=features, + x_lens=feature_lengths, + ) + + hyps = greedy_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + s = "\n" + for filename, hyp in zip(args.sound_files, hyps): + words = sp.decode(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained_ctc.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained_ctc.py new file mode 100755 index 000000000..d3343d34a --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/jit_pretrained_ctc.py @@ -0,0 +1,423 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads torchscript models, exported by `torch.jit.script()` +and uses them to decode waves. +You can use the following command to get the exported models: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 \ + --jit 1 + +Usage of this script: + +(1) ctc-decoding +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --bpe-model data/lang_bpe_500/bpe.model \ + --method ctc-decoding \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(2) 1best +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --method 1best \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + + +(3) nbest-rescoring +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method nbest-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + + +(4) whole-lattice-rescoring +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --nn-model-filename ./pruned_transducer_stateless7_ctc/exp/cpu_jit.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method whole-lattice-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav +""" + +import argparse +import logging +import math +from typing import List + +import k2 +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from ctc_decode import get_decoding_params +from torch.nn.utils.rnn import pad_sequence +from train import get_params + +from icefall.decode import ( + get_lattice, + one_best_decoding, + rescore_with_n_best_list, + rescore_with_whole_lattice, +) +from icefall.utils import get_texts + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--model-filename", + type=str, + required=True, + help="Path to the torchscript model.", + ) + + parser.add_argument( + "--words-file", + type=str, + help="""Path to words.txt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--HLG", + type=str, + help="""Path to HLG.pt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model. + Used only when method is ctc-decoding. + """, + ) + + parser.add_argument( + "--method", + type=str, + default="1best", + help="""Decoding method. + Possible values are: + (0) ctc-decoding - Use CTC decoding. It uses a sentence + piece model, i.e., lang_dir/bpe.model, to convert + word pieces to words. It needs neither a lexicon + nor an n-gram LM. + (1) 1best - Use the best path as decoding output. Only + the transformer encoder output is used for decoding. + We call it HLG decoding. + (2) nbest-rescoring. Extract n paths from the decoding lattice, + rescore them with an LM, the path with + the highest score is the decoding result. + We call it HLG decoding + n-gram LM rescoring. + (3) whole-lattice-rescoring - Use an LM to rescore the + decoding lattice and then use 1best to decode the + rescored lattice. + We call it HLG decoding + n-gram LM rescoring. + """, + ) + + parser.add_argument( + "--G", + type=str, + help="""An LM for rescoring. + Used only when method is + whole-lattice-rescoring or nbest-rescoring. + It's usually a 4-gram LM. + """, + ) + + parser.add_argument( + "--num-paths", + type=int, + default=100, + help=""" + Used only when method is attention-decoder. + It specifies the size of n-best list.""", + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=1.3, + help=""" + Used only when method is whole-lattice-rescoring and nbest-rescoring. + It specifies the scale for n-gram LM scores. + (Note: You need to tune it on a dataset.) + """, + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help=""" + Used only when method is nbest-rescoring. + It specifies the scale for lattice.scores when + extracting n-best lists. A smaller value results in + more unique number of paths with the risk of missing + the best path. + """, + ) + + parser.add_argument( + "--num-classes", + type=int, + default=500, + help=""" + Vocab size in the BPE model. + """, + ) + + parser.add_argument( + "--sample-rate", + type=int, + default=16000, + help="The sample rate of the input sound file", + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float = 16000 +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert ( + sample_rate == expected_sample_rate + ), f"Expected sample rate: {expected_sample_rate}. Given: {sample_rate}" + # We use only the first channel + ans.append(wave[0]) + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + + params = get_params() + # add decoding params + params.update(get_decoding_params()) + params.update(vars(args)) + + logging.info(f"{params}") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + model = torch.jit.load(args.model_filename) + model.to(device) + model.eval() + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = params.sample_rate + opts.mel_opts.num_bins = params.feature_dim + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {params.sound_files}") + waves = read_sound_files( + filenames=params.sound_files, expected_sample_rate=params.sample_rate + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence(features, batch_first=True, padding_value=math.log(1e-10)) + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder( + x=features, + x_lens=feature_lengths, + ) + nnet_output = model.ctc_output(encoder_out) + + batch_size = nnet_output.shape[0] + supervision_segments = torch.tensor( + [[i, 0, nnet_output.shape[1]] for i in range(batch_size)], + dtype=torch.int32, + ) + + if params.method == "ctc-decoding": + logging.info("Use CTC decoding") + bpe_model = spm.SentencePieceProcessor() + bpe_model.load(params.bpe_model) + max_token_id = params.num_classes - 1 + + H = k2.ctc_topo( + max_token=max_token_id, + modified=False, + device=device, + ) + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=H, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + token_ids = get_texts(best_path) + hyps = bpe_model.decode(token_ids) + hyps = [s.split() for s in hyps] + elif params.method in [ + "1best", + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading HLG from {params.HLG}") + HLG = k2.Fsa.from_dict(torch.load(params.HLG, map_location="cpu")) + HLG = HLG.to(device) + if not hasattr(HLG, "lm_scores"): + # For whole-lattice-rescoring and attention-decoder + HLG.lm_scores = HLG.scores.clone() + + if params.method in [ + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading G from {params.G}") + G = k2.Fsa.from_dict(torch.load(params.G, map_location="cpu")) + G = G.to(device) + if params.method == "whole-lattice-rescoring": + # Add epsilon self-loops to G as we will compose + # it with the whole lattice later + G = k2.add_epsilon_self_loops(G) + G = k2.arc_sort(G) + + # G.lm_scores is used to replace HLG.lm_scores during + # LM rescoring. + G.lm_scores = G.scores.clone() + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=HLG, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + if params.method == "1best": + logging.info("Use HLG decoding") + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + if params.method == "nbest-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_n_best_list( + lattice=lattice, + G=G, + num_paths=params.num_paths, + lm_scale_list=[params.ngram_lm_scale], + nbest_scale=params.nbest_scale, + ) + best_path = next(iter(best_path_dict.values())) + elif params.method == "whole-lattice-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_whole_lattice( + lattice=lattice, + G_with_epsilon_loops=G, + lm_scale_list=[params.ngram_lm_scale], + ) + best_path = next(iter(best_path_dict.values())) + + hyps = get_texts(best_path) + word_sym_table = k2.SymbolTable.from_file(params.words_file) + hyps = [[word_sym_table[i] for i in ids] for ids in hyps] + else: + raise ValueError(f"Unsupported decoding method: {params.method}") + + s = "\n" + for filename, hyp in zip(params.sound_files, hyps): + words = " ".join(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/joiner.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/joiner.py new file mode 100755 index 000000000..3ddac2cf2 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/joiner.py @@ -0,0 +1,65 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import torch +import torch.nn as nn + + +class Joiner(nn.Module): + def __init__( + self, + encoder_dim: int, + decoder_dim: int, + joiner_dim: int, + vocab_size: int, + ): + super().__init__() + + self.encoder_proj = nn.Linear(encoder_dim, joiner_dim) + self.decoder_proj = nn.Linear(decoder_dim, joiner_dim) + self.output_linear = nn.Linear(joiner_dim, vocab_size) + + def forward( + self, + encoder_out: torch.Tensor, + decoder_out: torch.Tensor, + project_input: bool = True, + ) -> torch.Tensor: + """ + Args: + encoder_out: + Output from the encoder. Its shape is (N, T, s_range, C). + decoder_out: + Output from the decoder. Its shape is (N, T, s_range, C). + project_input: + If true, apply input projections encoder_proj and decoder_proj. + If this is false, it is the user's responsibility to do this + manually. + Returns: + Return a tensor of shape (N, T, s_range, C). + """ + assert encoder_out.ndim == decoder_out.ndim + assert encoder_out.ndim in (2, 4) + assert encoder_out.shape[:-1] == decoder_out.shape[:-1] + + if project_input: + logit = self.encoder_proj(encoder_out) + self.decoder_proj(decoder_out) + else: + logit = encoder_out + decoder_out + + logit = self.output_linear(torch.tanh(logit)) + + return logit diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/model.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/model.py new file mode 100755 index 000000000..6fd4549a4 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/model.py @@ -0,0 +1,306 @@ +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang, Wei Kang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from typing import Tuple +import logging + +import k2 +import torch +import torch.nn as nn +from encoder_interface import EncoderInterface + +from icefall.utils import add_sos + + +class Transducer(nn.Module): + """It implements https://arxiv.org/pdf/1211.3711.pdf + "Sequence Transduction with Recurrent Neural Networks" + """ + + def __init__( + self, + encoder: EncoderInterface, + decoder: nn.Module, + joiner: nn.Module, + encoder_dim: int, + decoder_dim: int, + joiner_dim: int, + vocab_size: int, + ): + """ + Args: + encoder: + It is the transcription network in the paper. Its accepts + two inputs: `x` of (N, T, encoder_dim) and `x_lens` of shape (N,). + It returns two tensors: `logits` of shape (N, T, encoder_dm) and + `logit_lens` of shape (N,). + decoder: + It is the prediction network in the paper. Its input shape + is (N, U) and its output shape is (N, U, decoder_dim). + It should contain one attribute: `blank_id`. + joiner: + It has two inputs with shapes: (N, T, encoder_dim) and (N, U, decoder_dim). + Its output shape is (N, T, U, vocab_size). Note that its output contains + unnormalized probs, i.e., not processed by log-softmax. + """ + super().__init__() + assert isinstance(encoder, EncoderInterface), type(encoder) + assert hasattr(decoder, "blank_id") + + self.encoder = encoder + self.decoder = decoder + self.joiner = joiner + + self.simple_am_proj = nn.Linear( + encoder_dim, + vocab_size, + ) + self.simple_lm_proj = nn.Linear(decoder_dim, vocab_size) + + self.ctc_output = nn.Sequential( + nn.Dropout(p=0.1), + nn.Linear(encoder_dim, vocab_size), + nn.LogSoftmax(dim=-1), + ) + self.final_proj = nn.Linear(joiner_dim, encoder_dim) + + self.num_updates = 0 + + def forward( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + y: k2.RaggedTensor, + prune_range: int = 5, + am_scale: float = 0.0, + lm_scale: float = 0.0, + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """ + Args: + x: + A 3-D tensor of shape (N, T, C). + x_lens: + A 1-D tensor of shape (N,). It contains the number of frames in `x` + before padding. + y: + A ragged tensor with 2 axes [utt][label]. It contains labels of each + utterance. + prune_range: + The prune range for rnnt loss, it means how many symbols(context) + we are considering for each frame to compute the loss. + am_scale: + The scale to smooth the loss with am (output of encoder network) + part + lm_scale: + The scale to smooth the loss with lm (output of predictor network) + part + Returns: + Return a tuple containing simple loss, pruned loss, and ctc-output. + + Note: + Regarding am_scale & lm_scale, it will make the loss-function one of + the form: + lm_scale * lm_probs + am_scale * am_probs + + (1-lm_scale-am_scale) * combined_probs + """ + assert x.ndim == 2 or x.ndim == 3, x.shape + assert x_lens.ndim == 1, x_lens.shape + assert y.num_axes == 2, y.num_axes + + assert x.size(0) == x_lens.size(0) == y.dim0 + + encoder_out, x_lens = self.encoder(x, x_lens) + assert torch.all(x_lens > 0) + + # compute ctc log-probs + ctc_output = self.ctc_output(encoder_out) + + # Now for the decoder, i.e., the prediction network + row_splits = y.shape.row_splits(1) + y_lens = row_splits[1:] - row_splits[:-1] + + blank_id = self.decoder.blank_id + sos_y = add_sos(y, sos_id=blank_id) + + # sos_y_padded: [B, S + 1], start with SOS. + sos_y_padded = sos_y.pad(mode="constant", padding_value=blank_id) + + # decoder_out: [B, S + 1, decoder_dim] + decoder_out = self.decoder(sos_y_padded) + + # Note: y does not start with SOS + # y_padded : [B, S] + y_padded = y.pad(mode="constant", padding_value=0) + + y_padded = y_padded.to(torch.int64) + boundary = torch.zeros((x.size(0), 4), dtype=torch.int64, device=x.device) + boundary[:, 2] = y_lens + boundary[:, 3] = x_lens + + entropy_minimize = True + if entropy_minimize: + with torch.no_grad(): + cos = [] + self_tar_lens = torch.zeros(x.size(0)).int() + max_len = 0 + for bidx, co in enumerate(ctc_output): + co = co.argmax(-1) + blk = torch.nonzero(co) + co = co[blk] + cos.append(co.unique_consecutive()) + self_tar_lens[bidx] += len(co) + if max_len < len(co): + max_len = len(co) + + boundary_ = torch.zeros((x.size(0), 4), dtype=torch.int64, device=x.device) + boundary_[:, 2] = self_tar_lens + boundary_[:, 3] = x_lens + + self_target = torch.zeros(len(cos), max_len).int() + for bidx, co in enumerate(cos): + self_target[bidx, :len(co)] = co + + lm = self.simple_lm_proj(decoder_out) + am = self.simple_am_proj(encoder_out) + + with torch.cuda.amp.autocast(enabled=False): + simple_loss, (px_grad, py_grad) = k2.rnnt_loss_smoothed( + lm=lm.float(), + am=am.float(), + symbols=y_padded, + termination_symbol=blank_id, + lm_only_scale=lm_scale, + am_only_scale=am_scale, + boundary=boundary, + reduction="sum", + return_grad=True, + ) + + # if entropy_minimize: + # simple_loss_, (px_grad_, py_grad_) = k2.rnnt_loss_smoothed( + # lm=lm.float(), + # am=am.float(), + # symbols=self_target, + # termination_symbol=blank_id, + # lm_only_scale=lm_scale, + # am_only_scale=am_scale, + # boundary=boundary_, + # reduction="sum", + # return_grad=True, + # ) + # simple_loss += simple_loss_ + + # ranges : [B, T, prune_range] + ranges = k2.get_rnnt_prune_ranges( + px_grad=px_grad, + py_grad=py_grad, + boundary=boundary, + s_range=prune_range, + ) + + # am_pruned : [B, T, prune_range, encoder_dim] + # lm_pruned : [B, T, prune_range, decoder_dim] + am_pruned, lm_pruned = k2.do_rnnt_pruning( + am=self.joiner.encoder_proj(encoder_out), + lm=self.joiner.decoder_proj(decoder_out), + ranges=ranges, + ) + + # logits : [B, T, prune_range, vocab_size] + + # project_input=False since we applied the decoder's input projections + # prior to do_rnnt_pruning (this is an optimization for speed). + logits = self.joiner(am_pruned, lm_pruned, project_input=False) + + with torch.cuda.amp.autocast(enabled=False): + pruned_loss = k2.rnnt_loss_pruned( + logits=logits.float(), + symbols=y_padded, + ranges=ranges, + termination_symbol=blank_id, + boundary=boundary, + reduction="sum", + ) + # if entropy_minimize: + # pruned_loss = k2.rnnt_loss_pruned( + # logits=logits.float(), + # symbols=self_target, + # ranges=ranges, + # termination_symbol=blank_id, + # boundary=boundary, + # reduction="sum", + # ) + # pruned_loss += pruned_loss_ + + return (simple_loss, pruned_loss, ctc_output) + + def forward_speech_encoder( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + with_proj: bool = True + ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: + """ + Args: + x: + A 3-D tensor of shape (N, T, C). + x_lens: + A 1-D tensor of shape (N,). It contains the number of frames in `x` + before padding. + y: + A ragged tensor with 2 axes [utt][label]. It contains labels of each + utterance. + prune_range: + The prune range for rnnt loss, it means how many symbols(context) + we are considering for each frame to compute the loss. + am_scale: + The scale to smooth the loss with am (output of encoder network) + part + lm_scale: + The scale to smooth the loss with lm (output of predictor network) + part + Returns: + Return a tuple containing simple loss, pruned loss, and ctc-output. + + Note: + Regarding am_scale & lm_scale, it will make the loss-function one of + the form: + lm_scale * lm_probs + am_scale * am_probs + + (1-lm_scale-am_scale) * combined_probs + """ + assert x.ndim == 2 or x.ndim == 3, x.shape + assert x_lens.ndim == 1, x_lens.shape + + assert x.size(0) == x_lens.size(0) + + encoder_out, x_lens, target_layer_results, mask_indices = self.encoder(x, x_lens) + assert torch.all(x_lens > 0) + + ft = self.encoder.ft + + if with_proj: + if ft: + with torch.no_grad(): + encoder_out = self.joiner.encoder_proj(encoder_out) + else: + encoder_out = self.joiner.encoder_proj(encoder_out) + + encoder_out = encoder_out[mask_indices] + return(self.final_proj(encoder_out), mask_indices) + else: + return(target_layer_results, mask_indices) + diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/nets_utils.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/nets_utils.py new file mode 100755 index 000000000..08e7f2098 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/nets_utils.py @@ -0,0 +1,503 @@ +# -*- coding: utf-8 -*- + +"""Network related utility tools.""" + +import logging +from typing import Dict + +import numpy as np +import torch + + +def to_device(m, x): + """Send tensor into the device of the module. + + Args: + m (torch.nn.Module): Torch module. + x (Tensor): Torch tensor. + + Returns: + Tensor: Torch tensor located in the same place as torch module. + + """ + if isinstance(m, torch.nn.Module): + device = next(m.parameters()).device + elif isinstance(m, torch.Tensor): + device = m.device + else: + raise TypeError( + "Expected torch.nn.Module or torch.tensor, " f"bot got: {type(m)}" + ) + return x.to(device) + + +def pad_list(xs, pad_value): + """Perform padding for the list of tensors. + + Args: + xs (List): List of Tensors [(T_1, `*`), (T_2, `*`), ..., (T_B, `*`)]. + pad_value (float): Value for padding. + + Returns: + Tensor: Padded tensor (B, Tmax, `*`). + + Examples: + >>> x = [torch.ones(4), torch.ones(2), torch.ones(1)] + >>> x + [tensor([1., 1., 1., 1.]), tensor([1., 1.]), tensor([1.])] + >>> pad_list(x, 0) + tensor([[1., 1., 1., 1.], + [1., 1., 0., 0.], + [1., 0., 0., 0.]]) + + """ + n_batch = len(xs) + max_len = max(x.size(0) for x in xs) + pad = xs[0].new(n_batch, max_len, *xs[0].size()[1:]).fill_(pad_value) + + for i in range(n_batch): + pad[i, : xs[i].size(0)] = xs[i] + + return pad + + +def make_pad_mask(lengths, xs=None, length_dim=-1, maxlen=None): + """Make mask tensor containing indices of padded part. + + Args: + lengths (LongTensor or List): Batch of lengths (B,). + xs (Tensor, optional): The reference tensor. + If set, masks will be the same shape as this tensor. + length_dim (int, optional): Dimension indicator of the above tensor. + See the example. + + Returns: + Tensor: Mask tensor containing indices of padded part. + dtype=torch.uint8 in PyTorch 1.2- + dtype=torch.bool in PyTorch 1.2+ (including 1.2) + + Examples: + With only lengths. + + >>> lengths = [5, 3, 2] + >>> make_pad_mask(lengths) + masks = [[0, 0, 0, 0 ,0], + [0, 0, 0, 1, 1], + [0, 0, 1, 1, 1]] + + With the reference tensor. + + >>> xs = torch.zeros((3, 2, 4)) + >>> make_pad_mask(lengths, xs) + tensor([[[0, 0, 0, 0], + [0, 0, 0, 0]], + [[0, 0, 0, 1], + [0, 0, 0, 1]], + [[0, 0, 1, 1], + [0, 0, 1, 1]]], dtype=torch.uint8) + >>> xs = torch.zeros((3, 2, 6)) + >>> make_pad_mask(lengths, xs) + tensor([[[0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1]], + [[0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1]], + [[0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1]]], dtype=torch.uint8) + + With the reference tensor and dimension indicator. + + >>> xs = torch.zeros((3, 6, 6)) + >>> make_pad_mask(lengths, xs, 1) + tensor([[[0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [1, 1, 1, 1, 1, 1]], + [[0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1]], + [[0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1]]], dtype=torch.uint8) + >>> make_pad_mask(lengths, xs, 2) + tensor([[[0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1], + [0, 0, 0, 0, 0, 1]], + [[0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1], + [0, 0, 0, 1, 1, 1]], + [[0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1], + [0, 0, 1, 1, 1, 1]]], dtype=torch.uint8) + + """ + if length_dim == 0: + raise ValueError("length_dim cannot be 0: {}".format(length_dim)) + + if not isinstance(lengths, list): + lengths = lengths.long().tolist() + + bs = int(len(lengths)) + if maxlen is None: + if xs is None: + maxlen = int(max(lengths)) + else: + maxlen = xs.size(length_dim) + else: + assert xs is None + assert maxlen >= int(max(lengths)) + + seq_range = torch.arange(0, maxlen, dtype=torch.int64) + seq_range_expand = seq_range.unsqueeze(0).expand(bs, maxlen) + seq_length_expand = seq_range_expand.new(lengths).unsqueeze(-1) + mask = seq_range_expand >= seq_length_expand + + if xs is not None: + assert xs.size(0) == bs, (xs.size(0), bs) + + if length_dim < 0: + length_dim = xs.dim() + length_dim + # ind = (:, None, ..., None, :, , None, ..., None) + ind = tuple( + slice(None) if i in (0, length_dim) else None for i in range(xs.dim()) + ) + mask = mask[ind].expand_as(xs).to(xs.device) + return mask + + +def make_non_pad_mask(lengths, xs=None, length_dim=-1): + """Make mask tensor containing indices of non-padded part. + + Args: + lengths (LongTensor or List): Batch of lengths (B,). + xs (Tensor, optional): The reference tensor. + If set, masks will be the same shape as this tensor. + length_dim (int, optional): Dimension indicator of the above tensor. + See the example. + + Returns: + ByteTensor: mask tensor containing indices of padded part. + dtype=torch.uint8 in PyTorch 1.2- + dtype=torch.bool in PyTorch 1.2+ (including 1.2) + + Examples: + With only lengths. + + >>> lengths = [5, 3, 2] + >>> make_non_pad_mask(lengths) + masks = [[1, 1, 1, 1 ,1], + [1, 1, 1, 0, 0], + [1, 1, 0, 0, 0]] + + With the reference tensor. + + >>> xs = torch.zeros((3, 2, 4)) + >>> make_non_pad_mask(lengths, xs) + tensor([[[1, 1, 1, 1], + [1, 1, 1, 1]], + [[1, 1, 1, 0], + [1, 1, 1, 0]], + [[1, 1, 0, 0], + [1, 1, 0, 0]]], dtype=torch.uint8) + >>> xs = torch.zeros((3, 2, 6)) + >>> make_non_pad_mask(lengths, xs) + tensor([[[1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0]], + [[1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0]], + [[1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0]]], dtype=torch.uint8) + + With the reference tensor and dimension indicator. + + >>> xs = torch.zeros((3, 6, 6)) + >>> make_non_pad_mask(lengths, xs, 1) + tensor([[[1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [0, 0, 0, 0, 0, 0]], + [[1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0]], + [[1, 1, 1, 1, 1, 1], + [1, 1, 1, 1, 1, 1], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0], + [0, 0, 0, 0, 0, 0]]], dtype=torch.uint8) + >>> make_non_pad_mask(lengths, xs, 2) + tensor([[[1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0], + [1, 1, 1, 1, 1, 0]], + [[1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0], + [1, 1, 1, 0, 0, 0]], + [[1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0], + [1, 1, 0, 0, 0, 0]]], dtype=torch.uint8) + + """ + return ~make_pad_mask(lengths, xs, length_dim) + + +def mask_by_length(xs, lengths, fill=0): + """Mask tensor according to length. + + Args: + xs (Tensor): Batch of input tensor (B, `*`). + lengths (LongTensor or List): Batch of lengths (B,). + fill (int or float): Value to fill masked part. + + Returns: + Tensor: Batch of masked input tensor (B, `*`). + + Examples: + >>> x = torch.arange(5).repeat(3, 1) + 1 + >>> x + tensor([[1, 2, 3, 4, 5], + [1, 2, 3, 4, 5], + [1, 2, 3, 4, 5]]) + >>> lengths = [5, 3, 2] + >>> mask_by_length(x, lengths) + tensor([[1, 2, 3, 4, 5], + [1, 2, 3, 0, 0], + [1, 2, 0, 0, 0]]) + + """ + assert xs.size(0) == len(lengths) + ret = xs.data.new(*xs.size()).fill_(fill) + for i, l in enumerate(lengths): + ret[i, :l] = xs[i, :l] + return ret + + +def th_accuracy(pad_outputs, pad_targets, ignore_label): + """Calculate accuracy. + + Args: + pad_outputs (Tensor): Prediction tensors (B * Lmax, D). + pad_targets (LongTensor): Target label tensors (B, Lmax, D). + ignore_label (int): Ignore label id. + + Returns: + float: Accuracy value (0.0 - 1.0). + + """ + pad_pred = pad_outputs.view( + pad_targets.size(0), pad_targets.size(1), pad_outputs.size(1) + ).argmax(2) + mask = pad_targets != ignore_label + numerator = torch.sum( + pad_pred.masked_select(mask) == pad_targets.masked_select(mask) + ) + denominator = torch.sum(mask) + return float(numerator) / float(denominator) + + +def to_torch_tensor(x): + """Change to torch.Tensor or ComplexTensor from numpy.ndarray. + + Args: + x: Inputs. It should be one of numpy.ndarray, Tensor, ComplexTensor, and dict. + + Returns: + Tensor or ComplexTensor: Type converted inputs. + + Examples: + >>> xs = np.ones(3, dtype=np.float32) + >>> xs = to_torch_tensor(xs) + tensor([1., 1., 1.]) + >>> xs = torch.ones(3, 4, 5) + >>> assert to_torch_tensor(xs) is xs + >>> xs = {'real': xs, 'imag': xs} + >>> to_torch_tensor(xs) + ComplexTensor( + Real: + tensor([1., 1., 1.]) + Imag; + tensor([1., 1., 1.]) + ) + + """ + # If numpy, change to torch tensor + if isinstance(x, np.ndarray): + if x.dtype.kind == "c": + # Dynamically importing because torch_complex requires python3 + from torch_complex.tensor import ComplexTensor + + return ComplexTensor(x) + else: + return torch.from_numpy(x) + + # If {'real': ..., 'imag': ...}, convert to ComplexTensor + elif isinstance(x, dict): + # Dynamically importing because torch_complex requires python3 + from torch_complex.tensor import ComplexTensor + + if "real" not in x or "imag" not in x: + raise ValueError("has 'real' and 'imag' keys: {}".format(list(x))) + # Relative importing because of using python3 syntax + return ComplexTensor(x["real"], x["imag"]) + + # If torch.Tensor, as it is + elif isinstance(x, torch.Tensor): + return x + + else: + error = ( + "x must be numpy.ndarray, torch.Tensor or a dict like " + "{{'real': torch.Tensor, 'imag': torch.Tensor}}, " + "but got {}".format(type(x)) + ) + try: + from torch_complex.tensor import ComplexTensor + except Exception: + # If PY2 + raise ValueError(error) + else: + # If PY3 + if isinstance(x, ComplexTensor): + return x + else: + raise ValueError(error) + + +def get_subsample(train_args, mode, arch): + """Parse the subsampling factors from the args for the specified `mode` and `arch`. + + Args: + train_args: argument Namespace containing options. + mode: one of ('asr', 'mt', 'st') + arch: one of ('rnn', 'rnn-t', 'rnn_mix', 'rnn_mulenc', 'transformer') + + Returns: + np.ndarray / List[np.ndarray]: subsampling factors. + """ + if arch == "transformer": + return np.array([1]) + + elif mode == "mt" and arch == "rnn": + # +1 means input (+1) and layers outputs (train_args.elayer) + subsample = np.ones(train_args.elayers + 1, dtype=np.int64) + logging.warning("Subsampling is not performed for machine translation.") + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + return subsample + + elif ( + (mode == "asr" and arch in ("rnn", "rnn-t")) + or (mode == "mt" and arch == "rnn") + or (mode == "st" and arch == "rnn") + ): + subsample = np.ones(train_args.elayers + 1, dtype=np.int64) + if train_args.etype.endswith("p") and not train_args.etype.startswith("vgg"): + ss = train_args.subsample.split("_") + for j in range(min(train_args.elayers + 1, len(ss))): + subsample[j] = int(ss[j]) + else: + logging.warning( + "Subsampling is not performed for vgg*. " + "It is performed in max pooling layers at CNN." + ) + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + return subsample + + elif mode == "asr" and arch == "rnn_mix": + subsample = np.ones( + train_args.elayers_sd + train_args.elayers + 1, dtype=np.int64 + ) + if train_args.etype.endswith("p") and not train_args.etype.startswith("vgg"): + ss = train_args.subsample.split("_") + for j in range( + min(train_args.elayers_sd + train_args.elayers + 1, len(ss)) + ): + subsample[j] = int(ss[j]) + else: + logging.warning( + "Subsampling is not performed for vgg*. " + "It is performed in max pooling layers at CNN." + ) + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + return subsample + + elif mode == "asr" and arch == "rnn_mulenc": + subsample_list = [] + for idx in range(train_args.num_encs): + subsample = np.ones(train_args.elayers[idx] + 1, dtype=np.int64) + if train_args.etype[idx].endswith("p") and not train_args.etype[ + idx + ].startswith("vgg"): + ss = train_args.subsample[idx].split("_") + for j in range(min(train_args.elayers[idx] + 1, len(ss))): + subsample[j] = int(ss[j]) + else: + logging.warning( + "Encoder %d: Subsampling is not performed for vgg*. " + "It is performed in max pooling layers at CNN.", + idx + 1, + ) + logging.info("subsample: " + " ".join([str(x) for x in subsample])) + subsample_list.append(subsample) + return subsample_list + + else: + raise ValueError("Invalid options: mode={}, arch={}".format(mode, arch)) + + +def rename_state_dict( + old_prefix: str, new_prefix: str, state_dict: Dict[str, torch.Tensor] +): + """Replace keys of old prefix with new prefix in state dict.""" + # need this list not to break the dict iterator + old_keys = [k for k in state_dict if k.startswith(old_prefix)] + if len(old_keys) > 0: + logging.warning(f"Rename: {old_prefix} -> {new_prefix}") + for k in old_keys: + v = state_dict.pop(k) + new_k = k.replace(old_prefix, new_prefix) + state_dict[new_k] = v + + +def get_activation(act): + """Return activation function.""" + # Lazy load to avoid unused import + from espnet.nets.pytorch_backend.conformer.swish import Swish + + activation_funcs = { + "hardtanh": torch.nn.Hardtanh, + "tanh": torch.nn.Tanh, + "relu": torch.nn.ReLU, + "selu": torch.nn.SELU, + "swish": Swish, + } + + return activation_funcs[act]() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/optim.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/optim.py new file mode 100755 index 000000000..ff8fbb32c --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/optim.py @@ -0,0 +1,1061 @@ +# Copyright 2022 Xiaomi Corp. (authors: Daniel Povey) +# +# See ../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import contextlib +import logging +import random +from collections import defaultdict +from typing import List, Optional, Tuple, Union + +import torch +from lhotse.utils import fix_random_seed +from scaling import ActivationBalancer +from torch import Tensor +from torch.optim import Optimizer + + +class BatchedOptimizer(Optimizer): + """ + This class adds to class Optimizer the capability to optimize parameters in batches: + it will stack the parameters and their grads for you so the optimizer can work + on tensors with an extra leading dimension. This is intended for speed with GPUs, + as it reduces the number of kernels launched in the optimizer. + + Args: + params: + """ + + def __init__(self, params, defaults): + super(BatchedOptimizer, self).__init__(params, defaults) + + @contextlib.contextmanager + def batched_params(self, param_group, group_params_names): + """ + This function returns (technically, yields) a list of + of tuples (p, state), where + p is a `fake` parameter that is stacked (over axis 0) from real parameters + that share the same shape, and its gradient is also stacked; + `state` is the state corresponding to this batch of parameters + (it will be physically located in the "state" for one of the real + parameters, the last one that has any particular shape and dtype). + + This function is decorated as a context manager so that it can + write parameters back to their "real" locations. + + The idea is, instead of doing: + + for p in group["params"]: + state = self.state[p] + ... + + you can do: + + with self.batched_params(group["params"]) as batches: + for p, state, p_names in batches: + ... + + + Args: + group: a parameter group, which is a list of parameters; should be + one of self.param_groups. + group_params_names: name for each parameter in group, + which is List[str]. + """ + batches = defaultdict( + list + ) # `batches` maps from tuple (dtype_as_str,*shape) to list of nn.Parameter + batches_names = defaultdict( + list + ) # `batches` maps from tuple (dtype_as_str,*shape) to list of str + + assert len(param_group) == len(group_params_names) + for p, named_p in zip(param_group, group_params_names): + key = (str(p.dtype), *p.shape) + batches[key].append(p) + batches_names[key].append(named_p) + + batches_names_keys = list(batches_names.keys()) + sorted_idx = sorted( + range(len(batches_names)), key=lambda i: batches_names_keys[i] + ) + batches_names = [batches_names[batches_names_keys[idx]] for idx in sorted_idx] + batches = [batches[batches_names_keys[idx]] for idx in sorted_idx] + + stacked_params_dict = dict() + + # turn batches into a list, in deterministic order. + # tuples will contain tuples of (stacked_param, state, stacked_params_names), + # one for each batch in `batches`. + tuples = [] + + for batch, batch_names in zip(batches, batches_names): + p = batch[0] + # we arbitrarily store the state in the + # state corresponding to the 1st parameter in the + # group. class Optimizer will take care of saving/loading state. + state = self.state[p] + p_stacked = torch.stack(batch) + grad = torch.stack( + [torch.zeros_like(p) if p.grad is None else p.grad for p in batch] + ) + p_stacked.grad = grad + stacked_params_dict[key] = p_stacked + tuples.append((p_stacked, state, batch_names)) + + yield tuples # <-- calling code will do the actual optimization here! + + for ((stacked_params, _state, _names), batch) in zip(tuples, batches): + for i, p in enumerate(batch): # batch is list of Parameter + p.copy_(stacked_params[i]) + + +class ScaledAdam(BatchedOptimizer): + """ + Implements 'Scaled Adam', a variant of Adam where we scale each parameter's update + proportional to the norm of that parameter; and also learn the scale of the parameter, + in log space, subject to upper and lower limits (as if we had factored each parameter as + param = underlying_param * log_scale.exp()) + + + Args: + params: The parameters or param_groups to optimize (like other Optimizer subclasses) + lr: The learning rate. We will typically use a learning rate schedule that starts + at 0.03 and decreases over time, i.e. much higher than other common + optimizers. + clipping_scale: (e.g. 2.0) + A scale for gradient-clipping: if specified, the normalized gradients + over the whole model will be clipped to have 2-norm equal to + `clipping_scale` times the median 2-norm over the most recent period + of `clipping_update_period` minibatches. By "normalized gradients", + we mean after multiplying by the rms parameter value for this tensor + [for non-scalars]; this is appropriate because our update is scaled + by this quantity. + betas: beta1,beta2 are momentum constants for regular momentum, and moving sum-sq grad. + Must satisfy 0 < beta <= beta2 < 1. + scalar_lr_scale: A scaling factor on the learning rate, that we use to update the + scale of each parameter tensor and scalar parameters of the mode.. + If each parameter were decomposed + as p * p_scale.exp(), where (p**2).mean().sqrt() == 1.0, scalar_lr_scale + would be a the scaling factor on the learning rate of p_scale. + eps: A general-purpose epsilon to prevent division by zero + param_min_rms: Minimum root-mean-square value of parameter tensor, for purposes of + learning the scale on the parameters (we'll constrain the rms of each non-scalar + parameter tensor to be >= this value) + param_max_rms: Maximum root-mean-square value of parameter tensor, for purposes of + learning the scale on the parameters (we'll constrain the rms of each non-scalar + parameter tensor to be <= this value) + scalar_max: Maximum absolute value for scalar parameters (applicable if your + model has any parameters with numel() == 1). + size_update_period: The periodicity, in steps, with which we update the size (scale) + of the parameter tensor. This is provided to save a little time + in the update. + clipping_update_period: if clipping_scale is specified, this is the period + """ + + def __init__( + self, + params, + lr=3e-02, + clipping_scale=None, + betas=(0.9, 0.98), + scalar_lr_scale=0.1, + eps=1.0e-08, + param_min_rms=1.0e-05, + param_max_rms=3.0, + scalar_max=10.0, + size_update_period=4, + clipping_update_period=100, + parameters_names=None, + show_dominant_parameters=True, + ): + + assert parameters_names is not None, ( + "Please prepare parameters_names," + "which is a List[List[str]]. Each List[str] is for a group" + "and each str is for a parameter" + ) + defaults = dict( + lr=lr, + clipping_scale=clipping_scale, + betas=betas, + scalar_lr_scale=scalar_lr_scale, + eps=eps, + param_min_rms=param_min_rms, + param_max_rms=param_max_rms, + scalar_max=scalar_max, + size_update_period=size_update_period, + clipping_update_period=clipping_update_period, + ) + + super(ScaledAdam, self).__init__(params, defaults) + assert len(self.param_groups) == len(parameters_names) + self.parameters_names = parameters_names + self.show_dominant_parameters = show_dominant_parameters + + def __setstate__(self, state): + super(ScaledAdam, self).__setstate__(state) + + @torch.no_grad() + def step(self, closure=None): + """Performs a single optimization step. + + Arguments: + closure (callable, optional): A closure that reevaluates the model + and returns the loss. + """ + loss = None + if closure is not None: + with torch.enable_grad(): + loss = closure() + + batch = True + + for group, group_params_names in zip(self.param_groups, self.parameters_names): + + with self.batched_params(group["params"], group_params_names) as batches: + + # batches is list of pairs (stacked_param, state). stacked_param is like + # a regular parameter, and will have a .grad, but the 1st dim corresponds to + # a stacking dim, it is not a real dim. + + if ( + len(batches[0][1]) == 0 + ): # if len(first state) == 0: not yet initialized + clipping_scale = 1 + else: + clipping_scale = self._get_clipping_scale(group, batches) + + for p, state, _ in batches: + # Perform optimization step. + # grad is not going to be None, we handled that when creating the batches. + grad = p.grad + if grad.is_sparse: + raise RuntimeError( + "ScaledAdam optimizer does not support sparse gradients" + ) + # State initialization + if len(state) == 0: + self._init_state(group, p, state) + + self._step_one_batch(group, p, state, clipping_scale) + + return loss + + def _init_state(self, group: dict, p: Tensor, state: dict): + """ + Initializes state dict for parameter 'p'. Assumes that dim 0 of tensor p + is actually the batch dimension, corresponding to batched-together + parameters of a given shape. + + + Args: + group: Dict to look up configuration values. + p: The parameter that we are initializing the state for + state: Dict from string to whatever state we are initializing + """ + size_update_period = group["size_update_period"] + + state["step"] = 0 + + kwargs = {"device": p.device, "dtype": p.dtype} + + # 'delta' implements conventional momentum. There are + # several different kinds of update going on, so rather than + # compute "exp_avg" like in Adam, we store and decay a + # parameter-change "delta", which combines all forms of + # update. this is equivalent to how it's done in Adam, + # except for the first few steps. + state["delta"] = torch.zeros_like(p, memory_format=torch.preserve_format) + + batch_size = p.shape[0] + numel = p.numel() // batch_size + numel = p.numel() + + if numel > 1: + # "param_rms" just periodically records the scalar root-mean-square value of + # the parameter tensor. + # it has a shape like (batch_size, 1, 1, 1, 1) + param_rms = (p**2).mean(dim=list(range(1, p.ndim)), keepdim=True).sqrt() + state["param_rms"] = param_rms + + state["scale_exp_avg_sq"] = torch.zeros_like(param_rms) + state["scale_grads"] = torch.zeros( + size_update_period, *param_rms.shape, **kwargs + ) + + # exp_avg_sq is the weighted sum of scaled gradients. as in Adam. + state["exp_avg_sq"] = torch.zeros_like(p, memory_format=torch.preserve_format) + + def _get_clipping_scale( + self, group: dict, tuples: List[Tuple[Tensor, dict, List[str]]] + ) -> float: + """ + Returns a scalar factor <= 1.0 that dictates gradient clipping, i.e. we will scale the gradients + by this amount before applying the rest of the update. + + Args: + group: the parameter group, an item in self.param_groups + tuples: a list of tuples of (param, state, param_names) + where param is a batched set of parameters, + with a .grad (1st dim is batch dim) + and state is the state-dict where optimization parameters are kept. + param_names is a List[str] while each str is name for a parameter + in batched set of parameters "param". + """ + assert len(tuples) >= 1 + clipping_scale = group["clipping_scale"] + (first_p, first_state, _) = tuples[0] + step = first_state["step"] + if clipping_scale is None or step == 0: + # no clipping. return early on step == 0 because the other + # parameters' state won't have been initialized yet. + return 1.0 + clipping_update_period = group["clipping_update_period"] + + tot_sumsq = torch.tensor(0.0, device=first_p.device) + for (p, state, param_names) in tuples: + grad = p.grad + if grad.is_sparse: + raise RuntimeError( + "ScaledAdam optimizer does not support sparse gradients" + ) + if p.numel() == p.shape[0]: # a batch of scalars + tot_sumsq += (grad**2).sum() # sum() to change shape [1] to [] + else: + tot_sumsq += ((grad * state["param_rms"]) ** 2).sum() + + tot_norm = tot_sumsq.sqrt() + if "model_norms" not in first_state: + first_state["model_norms"] = torch.zeros( + clipping_update_period, device=p.device + ) + first_state["model_norms"][step % clipping_update_period] = tot_norm + + if step % clipping_update_period == 0: + # Print some stats. + # We don't reach here if step == 0 because we would have returned + # above. + sorted_norms = first_state["model_norms"].sort()[0].to("cpu") + quartiles = [] + for n in range(0, 5): + index = min( + clipping_update_period - 1, (clipping_update_period // 4) * n + ) + quartiles.append(sorted_norms[index].item()) + + median = quartiles[2] + threshold = clipping_scale * median + first_state["model_norm_threshold"] = threshold + percent_clipped = ( + first_state["num_clipped"] * 100.0 / clipping_update_period + if "num_clipped" in first_state + else 0.0 + ) + first_state["num_clipped"] = 0 + quartiles = " ".join(["%.3e" % x for x in quartiles]) + logging.info( + f"Clipping_scale={clipping_scale}, grad-norm quartiles {quartiles}, " + f"threshold={threshold:.3e}, percent-clipped={percent_clipped:.1f}" + ) + + if step < clipping_update_period: + return 1.0 # We have not yet estimated a norm to clip to. + else: + try: + model_norm_threshold = first_state["model_norm_threshold"] + except KeyError: + logging.info( + "Warning: model_norm_threshold not in state: possibly " + "you changed config when restarting, adding clipping_scale option?" + ) + return 1.0 + ans = min(1.0, (model_norm_threshold / (tot_norm + 1.0e-20)).item()) + if ans < 1.0: + first_state["num_clipped"] += 1 + if ans < 0.1: + logging.warn( + f"Scaling gradients by {ans}, model_norm_threshold={model_norm_threshold}" + ) + if self.show_dominant_parameters: + assert p.shape[0] == len(param_names) + self._show_gradient_dominating_parameter(tuples, tot_sumsq) + return ans + + def _show_gradient_dominating_parameter( + self, tuples: List[Tuple[Tensor, dict, List[str]]], tot_sumsq: Tensor + ): + """ + Show information of parameter wihch dominanting tot_sumsq. + + Args: + tuples: a list of tuples of (param, state, param_names) + where param is a batched set of parameters, + with a .grad (1st dim is batch dim) + and state is the state-dict where optimization parameters are kept. + param_names is a List[str] while each str is name for a parameter + in batched set of parameters "param". + tot_sumsq: sumsq of all parameters. Though it's could be calculated + from tuples, we still pass it to save some time. + """ + all_sumsq_orig = {} + for (p, state, batch_param_names) in tuples: + # p is a stacked batch parameters. + batch_grad = p.grad + if p.numel() == p.shape[0]: # a batch of scalars + batch_sumsq_orig = batch_grad**2 + # Dummpy values used by following `zip` statement. + batch_rms_orig = torch.ones(p.shape[0]) + else: + batch_rms_orig = state["param_rms"] + batch_sumsq_orig = ((batch_grad * batch_rms_orig) ** 2).sum( + dim=list(range(1, batch_grad.ndim)) + ) + + for name, sumsq_orig, rms, grad in zip( + batch_param_names, batch_sumsq_orig, batch_rms_orig, batch_grad + ): + + proportion_orig = sumsq_orig / tot_sumsq + all_sumsq_orig[name] = (proportion_orig, sumsq_orig, rms, grad) + + assert torch.isclose( + sum([value[0] for value in all_sumsq_orig.values()]).cpu(), + torch.tensor(1.0), + ) + sorted_by_proportion = { + k: v + for k, v in sorted( + all_sumsq_orig.items(), key=lambda item: item[1][0], reverse=True + ) + } + dominant_param_name = next(iter(sorted_by_proportion)) + ( + dominant_proportion, + dominant_sumsq, + dominant_rms, + dominant_grad, + ) = sorted_by_proportion[dominant_param_name] + logging.info( + f"Parameter Dominanting tot_sumsq {dominant_param_name}" + f" with proportion {dominant_proportion:.2f}," + f" where dominant_sumsq=(grad_sumsq*orig_rms_sq)" + f"={dominant_sumsq:.3e}," + f" grad_sumsq = {(dominant_grad**2).sum():.3e}," + f" orig_rms_sq={(dominant_rms**2).item():.3e}" + ) + + def _step_one_batch( + self, group: dict, p: Tensor, state: dict, clipping_scale: float + ): + """ + Do the step for one parameter, which is actually going to be a batch of + `real` parameters, with dim 0 as the batch dim. + Args: + group: dict to look up configuration values + p: parameter to update (actually multiple parameters stacked together + as a batch) + state: state-dict for p, to look up the optimizer state + """ + lr = group["lr"] + size_update_period = group["size_update_period"] + beta1 = group["betas"][0] + + grad = p.grad + if clipping_scale != 1.0: + grad = grad * clipping_scale + step = state["step"] + delta = state["delta"] + + delta.mul_(beta1) + batch_size = p.shape[0] + numel = p.numel() // batch_size + if numel > 1: + # Update the size/scale of p, and set param_rms + scale_grads = state["scale_grads"] + scale_grads[step % size_update_period] = (p * grad).sum( + dim=list(range(1, p.ndim)), keepdim=True + ) + if step % size_update_period == size_update_period - 1: + param_rms = state["param_rms"] # shape: (batch_size, 1, 1, ..) + param_rms.copy_( + (p**2).mean(dim=list(range(1, p.ndim)), keepdim=True).sqrt() + ) + if step > 0: + # self._size_update() learns the overall scale on the + # parameter, by shrinking or expanding it. + self._size_update(group, scale_grads, p, state) + + if numel == 1: + # For parameters with 1 element we just use regular Adam. + # Updates delta. + self._step_scalar(group, p, state) + else: + self._step(group, p, state) + + state["step"] = step + 1 + + def _size_update( + self, group: dict, scale_grads: Tensor, p: Tensor, state: dict + ) -> None: + """ + Called only where p.numel() > 1, this updates the scale of the parameter. + If we imagine: p = underlying_param * scale.exp(), and we are doing + gradient descent on underlying param and on scale, this function does the update + on `scale`. + + Args: + group: dict to look up configuration values + scale_grads: a tensor of shape (size_update_period, batch_size, 1, 1,...) containing + grads w.r.t. the scales. + p: The parameter to update + state: The state-dict of p + """ + + param_rms = state["param_rms"] + beta1, beta2 = group["betas"] + size_lr = group["lr"] * group["scalar_lr_scale"] + param_min_rms = group["param_min_rms"] + param_max_rms = group["param_max_rms"] + eps = group["eps"] + step = state["step"] + batch_size = p.shape[0] + + size_update_period = scale_grads.shape[0] + # correct beta2 for the size update period: we will have + # faster decay at this level. + beta2_corr = beta2**size_update_period + + scale_exp_avg_sq = state["scale_exp_avg_sq"] # shape: (batch_size, 1, 1, ..) + scale_exp_avg_sq.mul_(beta2_corr).add_( + (scale_grads**2).mean(dim=0), # mean over dim `size_update_period` + alpha=1 - beta2_corr, + ) # shape is (batch_size, 1, 1, ...) + + # The 1st time we reach here is when size_step == 1. + size_step = (step + 1) // size_update_period + bias_correction2 = 1 - beta2_corr**size_step + # we don't bother with bias_correction1; this will help prevent divergence + # at the start of training. + + denom = scale_exp_avg_sq.sqrt() + eps + + scale_step = ( + -size_lr * (bias_correction2**0.5) * scale_grads.sum(dim=0) / denom + ) + + is_too_small = param_rms < param_min_rms + is_too_large = param_rms > param_max_rms + + # when the param gets too small, just don't shrink it any further. + scale_step.masked_fill_(is_too_small, 0.0) + # when it gets too large, stop it from getting any larger. + scale_step.masked_fill_(is_too_large, -size_lr * size_update_period) + delta = state["delta"] + # the factor of (1-beta1) relates to momentum. + delta.add_(p * scale_step, alpha=(1 - beta1)) + + def _step(self, group: dict, p: Tensor, state: dict): + """ + This function does the core update of self.step(), in the case where the members of + the batch have more than 1 element. + + Args: + group: A dict which will be used to look up configuration values + p: The parameter to be updated + grad: The grad of p + state: The state-dict corresponding to parameter p + + This function modifies p. + """ + grad = p.grad + lr = group["lr"] + beta1, beta2 = group["betas"] + eps = group["eps"] + param_min_rms = group["param_min_rms"] + step = state["step"] + + exp_avg_sq = state["exp_avg_sq"] + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=(1 - beta2)) + + this_step = state["step"] - (state["zero_step"] if "zero_step" in state else 0) + bias_correction2 = 1 - beta2 ** (this_step + 1) + if bias_correction2 < 0.99: + # note: not in-place. + exp_avg_sq = exp_avg_sq * (1.0 / bias_correction2) + + denom = exp_avg_sq.sqrt() + denom += eps + grad = grad / denom + + alpha = -lr * (1 - beta1) * state["param_rms"].clamp(min=param_min_rms) + + delta = state["delta"] + delta.add_(grad * alpha) + p.add_(delta) + + def _step_scalar(self, group: dict, p: Tensor, state: dict): + """ + A simplified form of the core update for scalar tensors, where we cannot get a good + estimate of the parameter rms. + """ + beta1, beta2 = group["betas"] + scalar_max = group["scalar_max"] + eps = group["eps"] + lr = group["lr"] * group["scalar_lr_scale"] + grad = p.grad + + exp_avg_sq = state["exp_avg_sq"] # shape: (batch_size,) + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) + + # bias_correction2 is like in Adam. Don't bother with bias_correction1; + # slower update at the start will help stability anyway. + bias_correction2 = 1 - beta2 ** (state["step"] + 1) + denom = (exp_avg_sq / bias_correction2).sqrt() + eps + + delta = state["delta"] + delta.add_(grad / denom, alpha=-lr * (1 - beta1)) + p.clamp_(min=-scalar_max, max=scalar_max) + p.add_(delta) + + +class LRScheduler(object): + """ + Base-class for learning rate schedulers where the learning-rate depends on both the + batch and the epoch. + """ + + def __init__(self, optimizer: Optimizer, verbose: bool = False): + # Attach optimizer + if not isinstance(optimizer, Optimizer): + raise TypeError("{} is not an Optimizer".format(type(optimizer).__name__)) + self.optimizer = optimizer + self.verbose = verbose + + for group in optimizer.param_groups: + group.setdefault("base_lr", group["lr"]) + + self.base_lrs = [group["base_lr"] for group in optimizer.param_groups] + + self.epoch = 0 + self.batch = 0 + + def state_dict(self): + """Returns the state of the scheduler as a :class:`dict`. + + It contains an entry for every variable in self.__dict__ which + is not the optimizer. + """ + return { + "base_lrs": self.base_lrs, + "epoch": self.epoch, + "batch": self.batch, + } + + def load_state_dict(self, state_dict): + """Loads the schedulers state. + + Args: + state_dict (dict): scheduler state. Should be an object returned + from a call to :meth:`state_dict`. + """ + self.__dict__.update(state_dict) + + def get_last_lr(self) -> List[float]: + """Return last computed learning rate by current scheduler. Will be a list of float.""" + return self._last_lr + + def get_lr(self): + # Compute list of learning rates from self.epoch and self.batch and + # self.base_lrs; this must be overloaded by the user. + # e.g. return [some_formula(self.batch, self.epoch, base_lr) for base_lr in self.base_lrs ] + raise NotImplementedError + + def step_batch(self, batch: Optional[int] = None) -> None: + # Step the batch index, or just set it. If `batch` is specified, it + # must be the batch index from the start of training, i.e. summed over + # all epochs. + # You can call this in any order; if you don't provide 'batch', it should + # of course be called once per batch. + if batch is not None: + self.batch = batch + else: + self.batch = self.batch + 1 + self._set_lrs() + + def step_epoch(self, epoch: Optional[int] = None): + # Step the epoch index, or just set it. If you provide the 'epoch' arg, + # you should call this at the start of the epoch; if you don't provide the 'epoch' + # arg, you should call it at the end of the epoch. + if epoch is not None: + self.epoch = epoch + else: + self.epoch = self.epoch + 1 + self._set_lrs() + + def _set_lrs(self): + values = self.get_lr() + assert len(values) == len(self.optimizer.param_groups) + + for i, data in enumerate(zip(self.optimizer.param_groups, values)): + param_group, lr = data + param_group["lr"] = lr + self.print_lr(self.verbose, i, lr) + self._last_lr = [group["lr"] for group in self.optimizer.param_groups] + + def print_lr(self, is_verbose, group, lr): + """Display the current learning rate.""" + if is_verbose: + logging.info( + f"Epoch={self.epoch}, batch={self.batch}: adjusting learning rate" + f" of group {group} to {lr:.4e}." + ) + + +class Eden(LRScheduler): + """ + Eden scheduler. + The basic formula (before warmup) is: + lr = base_lr * (((batch**2 + lr_batches**2) / lr_batches**2) ** -0.25 * + (((epoch**2 + lr_epochs**2) / lr_epochs**2) ** -0.25)) * warmup + where `warmup` increases from linearly 0.5 to 1 over `warmup_batches` batches + and then stays constant at 1. + + + E.g. suggest base_lr = 0.04 (passed to optimizer) if used with ScaledAdam + + Args: + optimizer: the optimizer to change the learning rates on + lr_batches: the number of batches after which we start significantly + decreasing the learning rate, suggest 5000. + lr_epochs: the number of epochs after which we start significantly + decreasing the learning rate, suggest 6 if you plan to do e.g. + 20 to 40 epochs, but may need smaller number if dataset is huge + and you will do few epochs. + """ + + def __init__( + self, + optimizer: Optimizer, + lr_batches: Union[int, float], + lr_epochs: Union[int, float], + warmup_batches: Union[int, float] = 500.0, + verbose: bool = False, + ): + super(Eden, self).__init__(optimizer, verbose) + self.lr_batches = lr_batches + self.lr_epochs = lr_epochs + self.warmup_batches = warmup_batches + + def get_lr(self): + factor = ( + (self.batch**2 + self.lr_batches**2) / self.lr_batches**2 + ) ** -0.25 * ( + ((self.epoch**2 + self.lr_epochs**2) / self.lr_epochs**2) ** -0.25 + ) + warmup_factor = ( + 1.0 + if self.batch >= self.warmup_batches + else 0.5 + 0.5 * (self.batch / self.warmup_batches) + ) + + return [x * factor * warmup_factor for x in self.base_lrs] + + +def _test_eden(): + m = torch.nn.Linear(100, 100) + optim = ScaledAdam(m.parameters(), lr=0.03) + + scheduler = Eden(optim, lr_batches=100, lr_epochs=2, verbose=True) + + for epoch in range(10): + scheduler.step_epoch(epoch) # sets epoch to `epoch` + + for step in range(20): + x = torch.randn(200, 100).detach() + x.requires_grad = True + y = m(x) + dy = torch.randn(200, 100).detach() + f = (y * dy).sum() + f.backward() + + optim.step() + scheduler.step_batch() + optim.zero_grad() + + logging.info(f"last lr = {scheduler.get_last_lr()}") + logging.info(f"state dict = {scheduler.state_dict()}") + + +# This is included mostly as a baseline for ScaledAdam. +class Eve(Optimizer): + """ + Implements Eve algorithm. This is a modified version of AdamW with a special + way of setting the weight-decay / shrinkage-factor, which is designed to make the + rms of the parameters approach a particular target_rms (default: 0.1). This is + for use with networks with 'scaled' versions of modules (see scaling.py), which + will be close to invariant to the absolute scale on the parameter matrix. + + The original Adam algorithm was proposed in `Adam: A Method for Stochastic Optimization`_. + The AdamW variant was proposed in `Decoupled Weight Decay Regularization`_. + Eve is unpublished so far. + + Arguments: + params (iterable): iterable of parameters to optimize or dicts defining + parameter groups + lr (float, optional): learning rate (default: 1e-3) + betas (Tuple[float, float], optional): coefficients used for computing + running averages of gradient and its square (default: (0.9, 0.999)) + eps (float, optional): term added to the denominator to improve + numerical stability (default: 1e-8) + weight_decay (float, optional): weight decay coefficient (default: 3e-4; + this value means that the weight would decay significantly after + about 3k minibatches. Is not multiplied by learning rate, but + is conditional on RMS-value of parameter being > target_rms. + target_rms (float, optional): target root-mean-square value of + parameters, if they fall below this we will stop applying weight decay. + + + .. _Adam: A Method for Stochastic Optimization: + https://arxiv.org/abs/1412.6980 + .. _Decoupled Weight Decay Regularization: + https://arxiv.org/abs/1711.05101 + .. _On the Convergence of Adam and Beyond: + https://openreview.net/forum?id=ryQu7f-RZ + """ + + def __init__( + self, + params, + lr=1e-3, + betas=(0.9, 0.98), + eps=1e-8, + weight_decay=1e-3, + target_rms=0.1, + ): + if not 0.0 <= lr: + raise ValueError("Invalid learning rate: {}".format(lr)) + if not 0.0 <= eps: + raise ValueError("Invalid epsilon value: {}".format(eps)) + if not 0.0 <= betas[0] < 1.0: + raise ValueError("Invalid beta parameter at index 0: {}".format(betas[0])) + if not 0.0 <= betas[1] < 1.0: + raise ValueError("Invalid beta parameter at index 1: {}".format(betas[1])) + if not 0 <= weight_decay <= 0.1: + raise ValueError("Invalid weight_decay value: {}".format(weight_decay)) + if not 0 < target_rms <= 10.0: + raise ValueError("Invalid target_rms value: {}".format(target_rms)) + defaults = dict( + lr=lr, + betas=betas, + eps=eps, + weight_decay=weight_decay, + target_rms=target_rms, + ) + super(Eve, self).__init__(params, defaults) + + def __setstate__(self, state): + super(Eve, self).__setstate__(state) + + @torch.no_grad() + def step(self, closure=None): + """Performs a single optimization step. + + Arguments: + closure (callable, optional): A closure that reevaluates the model + and returns the loss. + """ + loss = None + if closure is not None: + with torch.enable_grad(): + loss = closure() + + for group in self.param_groups: + for p in group["params"]: + if p.grad is None: + continue + + # Perform optimization step + grad = p.grad + if grad.is_sparse: + raise RuntimeError("AdamW does not support sparse gradients") + + state = self.state[p] + + # State initialization + if len(state) == 0: + state["step"] = 0 + # Exponential moving average of gradient values + state["exp_avg"] = torch.zeros_like( + p, memory_format=torch.preserve_format + ) + # Exponential moving average of squared gradient values + state["exp_avg_sq"] = torch.zeros_like( + p, memory_format=torch.preserve_format + ) + + exp_avg, exp_avg_sq = state["exp_avg"], state["exp_avg_sq"] + + beta1, beta2 = group["betas"] + + state["step"] += 1 + bias_correction1 = 1 - beta1 ** state["step"] + bias_correction2 = 1 - beta2 ** state["step"] + + # Decay the first and second moment running average coefficient + exp_avg.mul_(beta1).add_(grad, alpha=1 - beta1) + exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) + denom = (exp_avg_sq.sqrt() * (bias_correction2**-0.5)).add_( + group["eps"] + ) + + step_size = group["lr"] / bias_correction1 + target_rms = group["target_rms"] + weight_decay = group["weight_decay"] + + if p.numel() > 1: + # avoid applying this weight-decay on "scaling factors" + # (which are scalar). + is_above_target_rms = p.norm() > (target_rms * (p.numel() ** 0.5)) + p.mul_(1 - (weight_decay * is_above_target_rms)) + + p.addcdiv_(exp_avg, denom, value=-step_size) + + if random.random() < 0.0005: + step = (exp_avg / denom) * step_size + logging.info( + f"Delta rms = {(step**2).mean().item()}, shape = {step.shape}" + ) + + return loss + + +def _test_scaled_adam(hidden_dim: int): + import timeit + + from scaling import ScaledLinear + + E = 100 + B = 4 + T = 2 + logging.info("in test_eve_cain") + # device = torch.device('cuda') + device = torch.device("cpu") + dtype = torch.float32 + + fix_random_seed(42) + # these input_magnitudes and output_magnitudes are to test that + # Abel is working as we expect and is able to adjust scales of + # different dims differently. + input_magnitudes = (1.0 * torch.randn(E, dtype=dtype, device=device)).exp() + output_magnitudes = (1.0 * torch.randn(E, dtype=dtype, device=device)).exp() + + for iter in [1, 0]: + fix_random_seed(42) + Linear = torch.nn.Linear if iter == 0 else ScaledLinear + + m = torch.nn.Sequential( + Linear(E, hidden_dim), + torch.nn.PReLU(), + Linear(hidden_dim, hidden_dim), + torch.nn.PReLU(), + Linear(hidden_dim, E), + ).to(device) + + train_pairs = [ + ( + 100.0 + * torch.randn(B, T, E, device=device, dtype=dtype) + * input_magnitudes, + torch.randn(B, T, E, device=device, dtype=dtype) * output_magnitudes, + ) + for _ in range(20) + ] + + if iter == 0: + optim = Eve(m.parameters(), lr=0.003) + elif iter == 1: + optim = ScaledAdam(m.parameters(), lr=0.03, clipping_scale=2.0) + scheduler = Eden(optim, lr_batches=200, lr_epochs=5, verbose=False) + + start = timeit.default_timer() + avg_loss = 0.0 + for epoch in range(180): + scheduler.step_epoch() + # if epoch == 100 and iter in [2,3]: + # optim.reset_speedup() # check it doesn't crash. + + # if epoch == 130: + # opts = diagnostics.TensorDiagnosticOptions( + # 2 ** 22 + # ) # allow 4 megabytes per sub-module + # diagnostic = diagnostics.attach_diagnostics(m, opts) + + for n, (x, y) in enumerate(train_pairs): + y_out = m(x) + loss = ((y_out - y) ** 2).mean() * 100.0 + if epoch == 0 and n == 0: + avg_loss = loss.item() + else: + avg_loss = 0.98 * avg_loss + 0.02 * loss.item() + if n == 0 and epoch % 5 == 0: + # norm1 = '%.2e' % (m[0].weight**2).mean().sqrt().item() + # norm1b = '%.2e' % (m[0].bias**2).mean().sqrt().item() + # norm2 = '%.2e' % (m[2].weight**2).mean().sqrt().item() + # norm2b = '%.2e' % (m[2].bias**2).mean().sqrt().item() + # scale1 = '%.2e' % (m[0].weight_scale.exp().item()) + # scale1b = '%.2e' % (m[0].bias_scale.exp().item()) + # scale2 = '%.2e' % (m[2].weight_scale.exp().item()) + # scale2b = '%.2e' % (m[2].bias_scale.exp().item()) + lr = scheduler.get_last_lr()[0] + logging.info( + f"Iter {iter}, epoch {epoch}, batch {n}, avg_loss {avg_loss:.4g}, lr={lr:.4e}" + ) # , norms={norm1,norm1b,norm2,norm2b}") # scales={scale1,scale1b,scale2,scale2b} + loss.log().backward() + optim.step() + optim.zero_grad() + scheduler.step_batch() + + # diagnostic.print_diagnostics() + + stop = timeit.default_timer() + logging.info(f"Iter={iter}, Time taken: {stop - start}") + + logging.info(f"last lr = {scheduler.get_last_lr()}") + # logging.info("state dict = ", scheduler.state_dict()) + # logging.info("optim state_dict = ", optim.state_dict()) + logging.info(f"input_magnitudes = {input_magnitudes}") + logging.info(f"output_magnitudes = {output_magnitudes}") + + +if __name__ == "__main__": + torch.set_num_threads(1) + torch.set_num_interop_threads(1) + logging.getLogger().setLevel(logging.INFO) + import subprocess + + s = subprocess.check_output( + "git status -uno .; git log -1; git diff HEAD .", shell=True + ) + logging.info(s) + import sys + + if len(sys.argv) > 1: + hidden_dim = int(sys.argv[1]) + else: + hidden_dim = 200 + + _test_scaled_adam(hidden_dim) + _test_eden() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained.py new file mode 100755 index 000000000..2f1b1a49f --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained.py @@ -0,0 +1,353 @@ +#!/usr/bin/env python3 +# Copyright 2021 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads a checkpoint and uses it to decode waves. +You can generate the checkpoint with the following command: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 + +Usage of this script: + +(1) greedy search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method greedy_search \ + /path/to/foo.wav \ + /path/to/bar.wav + +(2) beam search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method beam_search \ + --beam-size 4 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(3) modified beam search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method modified_beam_search \ + --beam-size 4 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(4) fast beam search +./pruned_transducer_stateless7_ctc/pretrained.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model ./data/lang_bpe_500/bpe.model \ + --method fast_beam_search \ + --beam-size 4 \ + /path/to/foo.wav \ + /path/to/bar.wav + +You can also use `./pruned_transducer_stateless7_ctc/exp/epoch-xx.pt`. + +Note: ./pruned_transducer_stateless7_ctc/exp/pretrained.pt is generated by +./pruned_transducer_stateless7_ctc/export.py +""" + + +import argparse +import logging +import math +from typing import List + +import k2 +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from beam_search import ( + beam_search, + fast_beam_search_one_best, + greedy_search, + greedy_search_batch, + modified_beam_search, +) +from torch.nn.utils.rnn import pad_sequence +from train import add_model_arguments, get_params, get_transducer_model + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--checkpoint", + type=str, + required=True, + help="Path to the checkpoint. " + "The checkpoint is assumed to be saved by " + "icefall.checkpoint.save_checkpoint().", + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model.""", + ) + + parser.add_argument( + "--method", + type=str, + default="greedy_search", + help="""Possible values are: + - greedy_search + - beam_search + - modified_beam_search + - fast_beam_search + """, + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + parser.add_argument( + "--sample-rate", + type=int, + default=16000, + help="The sample rate of the input sound file", + ) + + parser.add_argument( + "--beam-size", + type=int, + default=4, + help="""An integer indicating how many candidates we will keep for each + frame. Used only when --method is beam_search or + modified_beam_search.""", + ) + + parser.add_argument( + "--beam", + type=float, + default=4, + help="""A floating point value to calculate the cutoff score during beam + search (i.e., `cutoff = max-score - beam`), which is the same as the + `beam` in Kaldi. + Used only when --method is fast_beam_search""", + ) + + parser.add_argument( + "--max-contexts", + type=int, + default=4, + help="""Used only when --method is fast_beam_search""", + ) + + parser.add_argument( + "--max-states", + type=int, + default=8, + help="""Used only when --method is fast_beam_search""", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + parser.add_argument( + "--max-sym-per-frame", + type=int, + default=1, + help="""Maximum number of symbols per frame. Used only when + --method is greedy_search. + """, + ) + + add_model_arguments(parser) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert ( + sample_rate == expected_sample_rate + ), f"Expected sample rate: {expected_sample_rate}. Given: {sample_rate}" + # We use only the first channel + ans.append(wave[0]) + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + + params = get_params() + + params.update(vars(args)) + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # is defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.unk_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + logging.info(f"{params}") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + logging.info("Creating model") + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + checkpoint = torch.load(args.checkpoint, map_location="cpu") + model.load_state_dict(checkpoint["model"], strict=False) + model.to(device) + model.eval() + model.device = device + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = params.sample_rate + opts.mel_opts.num_bins = params.feature_dim + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {params.sound_files}") + waves = read_sound_files( + filenames=params.sound_files, expected_sample_rate=params.sample_rate + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence(features, batch_first=True, padding_value=math.log(1e-10)) + + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder(x=features, x_lens=feature_lengths) + + num_waves = encoder_out.size(0) + hyps = [] + msg = f"Using {params.method}" + if params.method == "beam_search": + msg += f" with beam size {params.beam_size}" + logging.info(msg) + + if params.method == "fast_beam_search": + decoding_graph = k2.trivial_graph(params.vocab_size - 1, device=device) + hyp_tokens = fast_beam_search_one_best( + model=model, + decoding_graph=decoding_graph, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam, + max_contexts=params.max_contexts, + max_states=params.max_states, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.method == "modified_beam_search": + hyp_tokens = modified_beam_search( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + beam=params.beam_size, + ) + + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + elif params.method == "greedy_search" and params.max_sym_per_frame == 1: + hyp_tokens = greedy_search_batch( + model=model, + encoder_out=encoder_out, + encoder_out_lens=encoder_out_lens, + ) + for hyp in sp.decode(hyp_tokens): + hyps.append(hyp.split()) + else: + for i in range(num_waves): + # fmt: off + encoder_out_i = encoder_out[i:i+1, :encoder_out_lens[i]] + # fmt: on + if params.method == "greedy_search": + hyp = greedy_search( + model=model, + encoder_out=encoder_out_i, + max_sym_per_frame=params.max_sym_per_frame, + ) + elif params.method == "beam_search": + hyp = beam_search( + model=model, + encoder_out=encoder_out_i, + beam=params.beam_size, + ) + else: + raise ValueError(f"Unsupported method: {params.method}") + + hyps.append(sp.decode(hyp).split()) + + s = "\n" + for filename, hyp in zip(params.sound_files, hyps): + words = " ".join(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained_ctc.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained_ctc.py new file mode 100755 index 000000000..74aef1bc7 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/pretrained_ctc.py @@ -0,0 +1,441 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang, +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +This script loads torchscript models, exported by `torch.jit.script()` +and uses them to decode waves. +You can use the following command to get the exported models: + +./pruned_transducer_stateless7_ctc/export.py \ + --exp-dir ./pruned_transducer_stateless7_ctc/exp \ + --bpe-model data/lang_bpe_500/bpe.model \ + --epoch 20 \ + --avg 10 + +Usage of this script: + +(1) ctc-decoding +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --bpe-model data/lang_bpe_500/bpe.model \ + --method ctc-decoding \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(2) 1best +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --method 1best \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + +(3) nbest-rescoring +./bruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method nbest-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav + + +(4) whole-lattice-rescoring +./pruned_transducer_stateless7_ctc/jit_pretrained_ctc.py \ + --checkpoint ./pruned_transducer_stateless7_ctc/exp/pretrained.pt \ + --HLG data/lang_bpe_500/HLG.pt \ + --words-file data/lang_bpe_500/words.txt \ + --G data/lm/G_4_gram.pt \ + --method whole-lattice-rescoring \ + --sample-rate 16000 \ + /path/to/foo.wav \ + /path/to/bar.wav +""" + +import argparse +import logging +import math +from typing import List + +import k2 +import kaldifeat +import sentencepiece as spm +import torch +import torchaudio +from ctc_decode import get_decoding_params +from torch.nn.utils.rnn import pad_sequence +from train import add_model_arguments, get_params, get_transducer_model + +from icefall.decode import ( + get_lattice, + one_best_decoding, + rescore_with_n_best_list, + rescore_with_whole_lattice, +) +from icefall.utils import get_texts + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--checkpoint", + type=str, + required=True, + help="Path to the checkpoint. " + "The checkpoint is assumed to be saved by " + "icefall.checkpoint.save_checkpoint().", + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; " "2 means tri-gram", + ) + + parser.add_argument( + "--words-file", + type=str, + help="""Path to words.txt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--HLG", + type=str, + help="""Path to HLG.pt. + Used only when method is not ctc-decoding. + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + help="""Path to bpe.model. + Used only when method is ctc-decoding. + """, + ) + + parser.add_argument( + "--method", + type=str, + default="1best", + help="""Decoding method. + Possible values are: + (0) ctc-decoding - Use CTC decoding. It uses a sentence + piece model, i.e., lang_dir/bpe.model, to convert + word pieces to words. It needs neither a lexicon + nor an n-gram LM. + (1) 1best - Use the best path as decoding output. Only + the transformer encoder output is used for decoding. + We call it HLG decoding. + (2) nbest-rescoring. Extract n paths from the decoding lattice, + rescore them with an LM, the path with + the highest score is the decoding result. + We call it HLG decoding + n-gram LM rescoring. + (3) whole-lattice-rescoring - Use an LM to rescore the + decoding lattice and then use 1best to decode the + rescored lattice. + We call it HLG decoding + n-gram LM rescoring. + """, + ) + + parser.add_argument( + "--G", + type=str, + help="""An LM for rescoring. + Used only when method is + whole-lattice-rescoring or nbest-rescoring. + It's usually a 4-gram LM. + """, + ) + + parser.add_argument( + "--num-paths", + type=int, + default=100, + help=""" + Used only when method is attention-decoder. + It specifies the size of n-best list.""", + ) + + parser.add_argument( + "--ngram-lm-scale", + type=float, + default=1.3, + help=""" + Used only when method is whole-lattice-rescoring and nbest-rescoring. + It specifies the scale for n-gram LM scores. + (Note: You need to tune it on a dataset.) + """, + ) + + parser.add_argument( + "--nbest-scale", + type=float, + default=0.5, + help=""" + Used only when method is nbest-rescoring. + It specifies the scale for lattice.scores when + extracting n-best lists. A smaller value results in + more unique number of paths with the risk of missing + the best path. + """, + ) + + parser.add_argument( + "--num-classes", + type=int, + default=500, + help=""" + Vocab size in the BPE model. + """, + ) + + parser.add_argument( + "--sample-rate", + type=int, + default=16000, + help="The sample rate of the input sound file", + ) + + parser.add_argument( + "sound_files", + type=str, + nargs="+", + help="The input sound file(s) to transcribe. " + "Supported formats are those supported by torchaudio.load(). " + "For example, wav and flac are supported. " + "The sample rate has to be 16kHz.", + ) + + add_model_arguments(parser) + + return parser + + +def read_sound_files( + filenames: List[str], expected_sample_rate: float = 16000 +) -> List[torch.Tensor]: + """Read a list of sound files into a list 1-D float32 torch tensors. + Args: + filenames: + A list of sound filenames. + expected_sample_rate: + The expected sample rate of the sound files. + Returns: + Return a list of 1-D float32 torch tensors. + """ + ans = [] + for f in filenames: + wave, sample_rate = torchaudio.load(f) + assert sample_rate == expected_sample_rate, ( + f"expected sample rate: {expected_sample_rate}. " f"Given: {sample_rate}" + ) + # We use only the first channel + ans.append(wave[0]) + return ans + + +@torch.no_grad() +def main(): + parser = get_parser() + args = parser.parse_args() + + params = get_params() + # add decoding params + params.update(get_decoding_params()) + params.update(vars(args)) + params.vocab_size = params.num_classes + params.blank_id = 0 + + logging.info(f"{params}") + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", 0) + + logging.info(f"device: {device}") + + logging.info("Creating model") + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + checkpoint = torch.load(args.checkpoint, map_location="cpu") + model.load_state_dict(checkpoint["model"], strict=False) + model.to(device) + model.eval() + + logging.info("Constructing Fbank computer") + opts = kaldifeat.FbankOptions() + opts.device = device + opts.frame_opts.dither = 0 + opts.frame_opts.snip_edges = False + opts.frame_opts.samp_freq = params.sample_rate + opts.mel_opts.num_bins = params.feature_dim + + fbank = kaldifeat.Fbank(opts) + + logging.info(f"Reading sound files: {params.sound_files}") + waves = read_sound_files( + filenames=params.sound_files, expected_sample_rate=params.sample_rate + ) + waves = [w.to(device) for w in waves] + + logging.info("Decoding started") + features = fbank(waves) + feature_lengths = [f.size(0) for f in features] + + features = pad_sequence(features, batch_first=True, padding_value=math.log(1e-10)) + feature_lengths = torch.tensor(feature_lengths, device=device) + + encoder_out, encoder_out_lens = model.encoder( + x=features, + x_lens=feature_lengths, + ) + nnet_output = model.ctc_output(encoder_out) + + batch_size = nnet_output.shape[0] + supervision_segments = torch.tensor( + [[i, 0, nnet_output.shape[1]] for i in range(batch_size)], + dtype=torch.int32, + ) + + if params.method == "ctc-decoding": + logging.info("Use CTC decoding") + bpe_model = spm.SentencePieceProcessor() + bpe_model.load(params.bpe_model) + max_token_id = params.num_classes - 1 + + H = k2.ctc_topo( + max_token=max_token_id, + modified=False, + device=device, + ) + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=H, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + token_ids = get_texts(best_path) + hyps = bpe_model.decode(token_ids) + hyps = [s.split() for s in hyps] + elif params.method in [ + "1best", + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading HLG from {params.HLG}") + HLG = k2.Fsa.from_dict(torch.load(params.HLG, map_location="cpu")) + HLG = HLG.to(device) + if not hasattr(HLG, "lm_scores"): + # For whole-lattice-rescoring and attention-decoder + HLG.lm_scores = HLG.scores.clone() + + if params.method in [ + "nbest-rescoring", + "whole-lattice-rescoring", + ]: + logging.info(f"Loading G from {params.G}") + G = k2.Fsa.from_dict(torch.load(params.G, map_location="cpu")) + G = G.to(device) + if params.method == "whole-lattice-rescoring": + # Add epsilon self-loops to G as we will compose + # it with the whole lattice later + G = k2.add_epsilon_self_loops(G) + G = k2.arc_sort(G) + + # G.lm_scores is used to replace HLG.lm_scores during + # LM rescoring. + G.lm_scores = G.scores.clone() + + lattice = get_lattice( + nnet_output=nnet_output, + decoding_graph=HLG, + supervision_segments=supervision_segments, + search_beam=params.search_beam, + output_beam=params.output_beam, + min_active_states=params.min_active_states, + max_active_states=params.max_active_states, + subsampling_factor=params.subsampling_factor, + ) + + if params.method == "1best": + logging.info("Use HLG decoding") + best_path = one_best_decoding( + lattice=lattice, use_double_scores=params.use_double_scores + ) + if params.method == "nbest-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_n_best_list( + lattice=lattice, + G=G, + num_paths=params.num_paths, + lm_scale_list=[params.ngram_lm_scale], + nbest_scale=params.nbest_scale, + ) + best_path = next(iter(best_path_dict.values())) + elif params.method == "whole-lattice-rescoring": + logging.info("Use HLG decoding + LM rescoring") + best_path_dict = rescore_with_whole_lattice( + lattice=lattice, + G_with_epsilon_loops=G, + lm_scale_list=[params.ngram_lm_scale], + ) + best_path = next(iter(best_path_dict.values())) + + hyps = get_texts(best_path) + word_sym_table = k2.SymbolTable.from_file(params.words_file) + hyps = [[word_sym_table[i] for i in ids] for ids in hyps] + else: + raise ValueError(f"Unsupported decoding method: {params.method}") + + s = "\n" + for filename, hyp in zip(params.sound_files, hyps): + words = " ".join(hyp) + s += f"{filename}:\n{words}\n\n" + logging.info(s) + + logging.info("Decoding Done") + + +if __name__ == "__main__": + formatter = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)d] %(message)s" + + logging.basicConfig(format=formatter, level=logging.INFO) + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling.py new file mode 100755 index 000000000..6f63e0629 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling.py @@ -0,0 +1,1178 @@ +# Copyright 2022 Xiaomi Corp. (authors: Daniel Povey) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import collections +import logging +import random +from functools import reduce +from itertools import repeat +from typing import Optional, Tuple, Union + +import torch +import torch.nn as nn +import torch.nn.functional as F +from torch import Tensor +from torch.nn import Embedding as ScaledEmbedding + + +class ActivationBalancerFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, + x: Tensor, + scale_factor: Tensor, + sign_factor: Optional[Tensor], + channel_dim: int, + ) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + ctx.channel_dim = channel_dim + xgt0 = x > 0 + if sign_factor is None: + ctx.save_for_backward(xgt0, scale_factor) + else: + ctx.save_for_backward(xgt0, scale_factor, sign_factor) + return x + + @staticmethod + def backward(ctx, x_grad: Tensor) -> Tuple[Tensor, None, None, None]: + if len(ctx.saved_tensors) == 3: + xgt0, scale_factor, sign_factor = ctx.saved_tensors + for _ in range(ctx.channel_dim, x_grad.ndim - 1): + scale_factor = scale_factor.unsqueeze(-1) + sign_factor = sign_factor.unsqueeze(-1) + factor = sign_factor + scale_factor * (xgt0.to(x_grad.dtype) - 0.5) + else: + xgt0, scale_factor = ctx.saved_tensors + for _ in range(ctx.channel_dim, x_grad.ndim - 1): + scale_factor = scale_factor.unsqueeze(-1) + factor = scale_factor * (xgt0.to(x_grad.dtype) - 0.5) + neg_delta_grad = x_grad.abs() * factor + return ( + x_grad - neg_delta_grad, + None, + None, + None, + ) + + +def _compute_scale_factor( + x: Tensor, + channel_dim: int, + min_abs: float, + max_abs: float, + gain_factor: float, + max_factor: float, +) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + sum_dims = [d for d in range(x.ndim) if d != channel_dim] + x_abs_mean = torch.mean(x.abs(), dim=sum_dims).to(torch.float32) + + if min_abs == 0.0: + below_threshold = 0.0 + else: + # below_threshold is 0 if x_abs_mean > min_abs, can be at most max_factor if + # x_abs)_mean , min_abs. + below_threshold = ((min_abs - x_abs_mean) * (gain_factor / min_abs)).clamp( + min=0, max=max_factor + ) + + above_threshold = ((x_abs_mean - max_abs) * (gain_factor / max_abs)).clamp( + min=0, max=max_factor + ) + + return below_threshold - above_threshold + + +def _compute_sign_factor( + x: Tensor, + channel_dim: int, + min_positive: float, + max_positive: float, + gain_factor: float, + max_factor: float, +) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + sum_dims = [d for d in range(x.ndim) if d != channel_dim] + proportion_positive = torch.mean((x > 0).to(torch.float32), dim=sum_dims) + if min_positive == 0.0: + factor1 = 0.0 + else: + # 0 if proportion_positive >= min_positive, else can be + # as large as max_factor. + factor1 = ( + (min_positive - proportion_positive) * (gain_factor / min_positive) + ).clamp_(min=0, max=max_factor) + + if max_positive == 1.0: + factor2 = 0.0 + else: + # 0 if self.proportion_positive <= max_positive, else can be + # as large as -max_factor. + factor2 = ( + (proportion_positive - max_positive) * (gain_factor / (1.0 - max_positive)) + ).clamp_(min=0, max=max_factor) + sign_factor = factor1 - factor2 + # require min_positive != 0 or max_positive != 1: + assert not isinstance(sign_factor, float) + return sign_factor + + +class ActivationScaleBalancerFunction(torch.autograd.Function): + """ + This object is used in class ActivationBalancer when the user specified + min_positive=0, max_positive=1, so there are no constraints on the signs + of the activations and only the absolute value has a constraint. + """ + + @staticmethod + def forward( + ctx, + x: Tensor, + sign_factor: Tensor, + scale_factor: Tensor, + channel_dim: int, + ) -> Tensor: + if channel_dim < 0: + channel_dim += x.ndim + ctx.channel_dim = channel_dim + xgt0 = x > 0 + ctx.save_for_backward(xgt0, sign_factor, scale_factor) + return x + + @staticmethod + def backward(ctx, x_grad: Tensor) -> Tuple[Tensor, None, None, None]: + xgt0, sign_factor, scale_factor = ctx.saved_tensors + for _ in range(ctx.channel_dim, x_grad.ndim - 1): + sign_factor = sign_factor.unsqueeze(-1) + scale_factor = scale_factor.unsqueeze(-1) + + factor = sign_factor + scale_factor * (xgt0.to(x_grad.dtype) - 0.5) + neg_delta_grad = x_grad.abs() * factor + return ( + x_grad - neg_delta_grad, + None, + None, + None, + ) + + +class RandomClampFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, + x: Tensor, + min: Optional[float], + max: Optional[float], + prob: float, + reflect: float, + ) -> Tensor: + x_clamped = torch.clamp(x, min=min, max=max) + mask = torch.rand_like(x) < prob + ans = torch.where(mask, x_clamped, x) + if x.requires_grad: + ctx.save_for_backward(ans == x) + ctx.reflect = reflect + if reflect != 0.0: + ans = ans * (1.0 + reflect) - (x * reflect) + return ans + + @staticmethod + def backward(ctx, ans_grad: Tensor) -> Tuple[Tensor, None, None, None, None]: + (is_same,) = ctx.saved_tensors + x_grad = ans_grad * is_same.to(ans_grad.dtype) + reflect = ctx.reflect + if reflect != 0.0: + x_grad = x_grad * (1.0 + reflect) - (ans_grad * reflect) + return x_grad, None, None, None, None + + +def random_clamp( + x: Tensor, + min: Optional[float] = None, + max: Optional[float] = None, + prob: float = 0.5, + reflect: float = 0.0, +): + return RandomClampFunction.apply(x, min, max, prob, reflect) + + +def random_cast_to_half(x: Tensor, min_abs: float = 5.0e-06) -> Tensor: + """ + A randomized way of casting a floating point value to half precision. + """ + if x.dtype == torch.float16: + return x + x_abs = x.abs() + is_too_small = x_abs < min_abs + # for elements where is_too_small is true, random_val will contain +-min_abs with + # probability (x.abs() / min_abs), and 0.0 otherwise. [so this preserves expectations, + # for those elements]. + random_val = min_abs * x.sign() * (torch.rand_like(x) * min_abs < x_abs) + return torch.where(is_too_small, random_val, x).to(torch.float16) + + +class RandomGradFunction(torch.autograd.Function): + """ + Does nothing in forward pass; in backward pass, gets rid of very small grads using + randomized approach that preserves expectations (intended to reduce roundoff). + """ + + @staticmethod + def forward(ctx, x: Tensor, min_abs: float) -> Tensor: + ctx.min_abs = min_abs + return x + + @staticmethod + def backward(ctx, ans_grad: Tensor) -> Tuple[Tensor, None]: + if ans_grad.dtype == torch.float16: + return ( + random_cast_to_half(ans_grad.to(torch.float32), min_abs=ctx.min_abs), + None, + ) + else: + return ans_grad, None + + +class RandomGrad(torch.nn.Module): + """ + Gets rid of very small gradients using an expectation-preserving method, intended to increase + accuracy of training when using amp (automatic mixed precision) + """ + + def __init__(self, min_abs: float = 5.0e-06): + super(RandomGrad, self).__init__() + self.min_abs = min_abs + + def forward(self, x: Tensor): + if torch.jit.is_scripting() or not self.training: + return x + else: + return RandomGradFunction.apply(x, self.min_abs) + + +class SoftmaxFunction(torch.autograd.Function): + """ + Tries to handle half-precision derivatives in a randomized way that should + be more accurate for training than the default behavior. + """ + + @staticmethod + def forward(ctx, x: Tensor, dim: int): + ans = x.softmax(dim=dim) + # if x dtype is float16, x.softmax() returns a float32 because + # (presumably) that op does not support float16, and autocast + # is enabled. + if torch.is_autocast_enabled(): + ans = ans.to(torch.float16) + ctx.save_for_backward(ans) + ctx.x_dtype = x.dtype + ctx.dim = dim + return ans + + @staticmethod + def backward(ctx, ans_grad: Tensor): + (ans,) = ctx.saved_tensors + with torch.cuda.amp.autocast(enabled=False): + ans_grad = ans_grad.to(torch.float32) + ans = ans.to(torch.float32) + x_grad = ans_grad * ans + x_grad = x_grad - ans * x_grad.sum(dim=ctx.dim, keepdim=True) + return x_grad, None + + +def softmax(x: Tensor, dim: int): + if torch.jit.is_scripting(): + return x.softmax(dim) + + return SoftmaxFunction.apply(x, dim) + + +class MaxEigLimiterFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, + x: Tensor, + coeffs: Tensor, + direction: Tensor, + channel_dim: int, + grad_scale: float, + ) -> Tensor: + ctx.channel_dim = channel_dim + ctx.grad_scale = grad_scale + ctx.save_for_backward(x.detach(), coeffs.detach(), direction.detach()) + return x + + @staticmethod + def backward(ctx, x_grad, *args): + with torch.enable_grad(): + (x_orig, coeffs, new_direction) = ctx.saved_tensors + x_orig.requires_grad = True + num_channels = x_orig.shape[ctx.channel_dim] + x = x_orig.transpose(ctx.channel_dim, -1).reshape(-1, num_channels) + new_direction.requires_grad = False + x = x - x.mean(dim=0) + x_var = (x**2).mean() + x_residual = x - coeffs * new_direction + x_residual_var = (x_residual**2).mean() + # `variance_proportion` is the proportion of the variance accounted for + # by the top eigen-direction. This is to be minimized. + variance_proportion = (x_var - x_residual_var) / (x_var + 1.0e-20) + variance_proportion.backward() + x_orig_grad = x_orig.grad + x_extra_grad = ( + x_orig.grad + * ctx.grad_scale + * x_grad.norm() + / (x_orig_grad.norm() + 1.0e-20) + ) + return x_grad + x_extra_grad.detach(), None, None, None, None + + +class BasicNorm(torch.nn.Module): + """ + This is intended to be a simpler, and hopefully cheaper, replacement for + LayerNorm. The observation this is based on, is that Transformer-type + networks, especially with pre-norm, sometimes seem to set one of the + feature dimensions to a large constant value (e.g. 50), which "defeats" + the LayerNorm because the output magnitude is then not strongly dependent + on the other (useful) features. Presumably the weight and bias of the + LayerNorm are required to allow it to do this. + + So the idea is to introduce this large constant value as an explicit + parameter, that takes the role of the "eps" in LayerNorm, so the network + doesn't have to do this trick. We make the "eps" learnable. + + Args: + num_channels: the number of channels, e.g. 512. + channel_dim: the axis/dimension corresponding to the channel, + interprted as an offset from the input's ndim if negative. + shis is NOT the num_channels; it should typically be one of + {-2, -1, 0, 1, 2, 3}. + eps: the initial "epsilon" that we add as ballast in: + scale = ((input_vec**2).mean() + epsilon)**-0.5 + Note: our epsilon is actually large, but we keep the name + to indicate the connection with conventional LayerNorm. + learn_eps: if true, we learn epsilon; if false, we keep it + at the initial value. + eps_min: float + eps_max: float + """ + + def __init__( + self, + num_channels: int, + channel_dim: int = -1, # CAUTION: see documentation. + eps: float = 0.25, + learn_eps: bool = True, + eps_min: float = -3.0, + eps_max: float = 3.0, + ) -> None: + super(BasicNorm, self).__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + if learn_eps: + self.eps = nn.Parameter(torch.tensor(eps).log().detach()) + else: + self.register_buffer("eps", torch.tensor(eps).log().detach()) + self.eps_min = eps_min + self.eps_max = eps_max + + def forward(self, x: Tensor) -> Tensor: + assert x.shape[self.channel_dim] == self.num_channels + eps = self.eps + if self.training and random.random() < 0.25: + # with probability 0.25, in training mode, clamp eps between the min + # and max; this will encourage it to learn parameters within the + # allowed range by making parameters that are outside the allowed + # range noisy. + + # gradients to allow the parameter to get back into the allowed + # region if it happens to exit it. + eps = eps.clamp(min=self.eps_min, max=self.eps_max) + scales = ( + torch.mean(x**2, dim=self.channel_dim, keepdim=True) + eps.exp() + ) ** -0.5 + return x * scales + + +def ScaledLinear(*args, initial_scale: float = 1.0, **kwargs) -> nn.Linear: + """ + Behaves like a constructor of a modified version of nn.Linear + that gives an easy way to set the default initial parameter scale. + + Args: + Accepts the standard args and kwargs that nn.Linear accepts + e.g. in_features, out_features, bias=False. + + initial_scale: you can override this if you want to increase + or decrease the initial magnitude of the module's output + (affects the initialization of weight_scale and bias_scale). + Another option, if you want to do something like this, is + to re-initialize the parameters. + """ + ans = nn.Linear(*args, **kwargs) + with torch.no_grad(): + ans.weight[:] *= initial_scale + if ans.bias is not None: + torch.nn.init.uniform_(ans.bias, -0.1 * initial_scale, 0.1 * initial_scale) + return ans + + +def ScaledConv1d(*args, initial_scale: float = 1.0, **kwargs) -> nn.Conv1d: + """ + Behaves like a constructor of a modified version of nn.Conv1d + that gives an easy way to set the default initial parameter scale. + + Args: + Accepts the standard args and kwargs that nn.Linear accepts + e.g. in_features, out_features, bias=False. + + initial_scale: you can override this if you want to increase + or decrease the initial magnitude of the module's output + (affects the initialization of weight_scale and bias_scale). + Another option, if you want to do something like this, is + to re-initialize the parameters. + """ + ans = nn.Conv1d(*args, **kwargs) + with torch.no_grad(): + ans.weight[:] *= initial_scale + if ans.bias is not None: + torch.nn.init.uniform_(ans.bias, -0.1 * initial_scale, 0.1 * initial_scale) + return ans + + +class ActivationBalancer(torch.nn.Module): + """ + Modifies the backpropped derivatives of a function to try to encourage, for + each channel, that it is positive at least a proportion `threshold` of the + time. It does this by multiplying negative derivative values by up to + (1+max_factor), and positive derivative values by up to (1-max_factor), + interpolated from 1 at the threshold to those extremal values when none + of the inputs are positive. + + Args: + num_channels: the number of channels + channel_dim: the dimension/axis corresponding to the channel, e.g. + -1, 0, 1, 2; will be interpreted as an offset from x.ndim if negative. + min_positive: the minimum, per channel, of the proportion of the time + that (x > 0), below which we start to modify the derivatives. + max_positive: the maximum, per channel, of the proportion of the time + that (x > 0), above which we start to modify the derivatives. + max_factor: the maximum factor by which we modify the derivatives for + either the sign constraint or the magnitude constraint; + e.g. with max_factor=0.02, the the derivatives would be multiplied by + values in the range [0.98..1.02]. + sign_gain_factor: determines the 'gain' with which we increase the + change in gradient once the constraints on min_positive and max_positive + are violated. + scale_gain_factor: determines the 'gain' with which we increase the + change in gradient once the constraints on min_abs and max_abs + are violated. + min_abs: the minimum average-absolute-value difference from the mean + value per channel, which we allow, before we start to modify + the derivatives to prevent this. + max_abs: the maximum average-absolute-value difference from the mean + value per channel, which we allow, before we start to modify + the derivatives to prevent this. + min_prob: determines the minimum probability with which we modify the + gradients for the {min,max}_positive and {min,max}_abs constraints, + on each forward(). This is done randomly to prevent all layers + from doing it at the same time. Early in training we may use + higher probabilities than this; it will decay to this value. + """ + + def __init__( + self, + num_channels: int, + channel_dim: int, + min_positive: float = 0.05, + max_positive: float = 0.95, + max_factor: float = 0.04, + sign_gain_factor: float = 0.01, + scale_gain_factor: float = 0.02, + min_abs: float = 0.2, + max_abs: float = 100.0, + min_prob: float = 0.1, + ): + super(ActivationBalancer, self).__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + self.min_positive = min_positive + self.max_positive = max_positive + self.max_factor = max_factor + self.min_abs = min_abs + self.max_abs = max_abs + self.min_prob = min_prob + self.sign_gain_factor = sign_gain_factor + self.scale_gain_factor = scale_gain_factor + + # count measures how many times the forward() function has been called. + # We occasionally sync this to a tensor called `count`, that exists to + # make sure it is synced to disk when we load and save the model. + self.cpu_count = 0 + self.register_buffer("count", torch.tensor(0, dtype=torch.int64)) + + def forward(self, x: Tensor) -> Tensor: + if torch.jit.is_scripting() or not x.requires_grad: + return _no_op(x) + + count = self.cpu_count + self.cpu_count += 1 + + if random.random() < 0.01: + # Occasionally sync self.cpu_count with self.count. + # count affects the decay of 'prob'. don't do this on every iter, + # because syncing with the GPU is slow. + self.cpu_count = max(self.cpu_count, self.count.item()) + self.count.fill_(self.cpu_count) + + # the prob of doing some work exponentially decreases from 0.5 till it hits + # a floor at min_prob (==0.1, by default) + prob = max(self.min_prob, 0.5 ** (1 + (count / 4000.0))) + + if random.random() < prob: + sign_gain_factor = 0.5 + if self.min_positive != 0.0 or self.max_positive != 1.0: + sign_factor = _compute_sign_factor( + x, + self.channel_dim, + self.min_positive, + self.max_positive, + gain_factor=self.sign_gain_factor / prob, + max_factor=self.max_factor, + ) + else: + sign_factor = None + + scale_factor = _compute_scale_factor( + x, + self.channel_dim, + min_abs=self.min_abs, + max_abs=self.max_abs, + gain_factor=self.scale_gain_factor / prob, + max_factor=self.max_factor, + ) + return ActivationBalancerFunction.apply( + x, + scale_factor, + sign_factor, + self.channel_dim, + ) + else: + return _no_op(x) + + +def penalize_abs_values_gt(x: Tensor, limit: float, penalty: float) -> Tensor: + """ + Returns x unmodified, but in backprop will put a penalty for the excess of + the absolute values of elements of x over the limit "limit". E.g. if + limit == 10.0, then if x has any values over 10 it will get a penalty. + + Caution: the value of this penalty will be affected by grad scaling used + in automatic mixed precision training. For this reasons we use this, + it shouldn't really matter, or may even be helpful; we just use this + to disallow really implausible values of scores to be given to softmax. + """ + x_sign = x.sign() + over_limit = (x.abs() - limit) > 0 + # The following is a memory efficient way to penalize the absolute values of + # x that's over the limit. (The memory efficiency comes when you think + # about which items torch needs to cache for the autograd, and which ones it + # can throw away). The numerical value of aux_loss as computed here will + # actually be larger than it should be, by limit * over_limit.sum(), but it + # has the same derivative as the real aux_loss which is penalty * (x.abs() - + # limit).relu(). + aux_loss = penalty * ((x_sign * over_limit).to(torch.int8) * x) + # note: we don't do sum() here on aux)_loss, but it's as if we had done + # sum() due to how with_loss() works. + x = with_loss(x, aux_loss) + # you must use x for something, or this will be ineffective. + return x + + +def _diag(x: Tensor): # like .diag(), but works for tensors with 3 dims. + if x.ndim == 2: + return x.diag() + else: + (batch, dim, dim) = x.shape + x = x.reshape(batch, dim * dim) + x = x[:, :: dim + 1] + assert x.shape == (batch, dim) + return x + + +def _whitening_metric(x: Tensor, num_groups: int): + """ + Computes the "whitening metric", a value which will be 1.0 if all the eigenvalues of + of the centered feature covariance are the same within each group's covariance matrix + and also between groups. + Args: + x: a Tensor of shape (*, num_channels) + num_groups: the number of groups of channels, a number >=1 that divides num_channels + Returns: + Returns a scalar Tensor that will be 1.0 if the data is "perfectly white" and + greater than 1.0 otherwise. + """ + assert x.dtype != torch.float16 + x = x.reshape(-1, x.shape[-1]) + (num_frames, num_channels) = x.shape + assert num_channels % num_groups == 0 + channels_per_group = num_channels // num_groups + x = x.reshape(num_frames, num_groups, channels_per_group).transpose(0, 1) + # x now has shape (num_groups, num_frames, channels_per_group) + # subtract the mean so we use the centered, not uncentered, covariance. + # My experience has been that when we "mess with the gradients" like this, + # it's better not do anything that tries to move the mean around, because + # that can easily cause instability. + x = x - x.mean(dim=1, keepdim=True) + # x_covar: (num_groups, channels_per_group, channels_per_group) + x_covar = torch.matmul(x.transpose(1, 2), x) + x_covar_mean_diag = _diag(x_covar).mean() + # the following expression is what we'd get if we took the matrix product + # of each covariance and measured the mean of its trace, i.e. + # the same as _diag(torch.matmul(x_covar, x_covar)).mean(). + x_covarsq_mean_diag = (x_covar**2).sum() / (num_groups * channels_per_group) + # this metric will be >= 1.0; the larger it is, the less 'white' the data was. + metric = x_covarsq_mean_diag / (x_covar_mean_diag**2 + 1.0e-20) + return metric + + +class WhiteningPenaltyFunction(torch.autograd.Function): + @staticmethod + def forward( + ctx, x: Tensor, num_groups: int, whitening_limit: float, grad_scale: float + ) -> Tensor: + ctx.save_for_backward(x) + ctx.num_groups = num_groups + ctx.whitening_limit = whitening_limit + ctx.grad_scale = grad_scale + return x + + @staticmethod + def backward(ctx, x_grad: Tensor): + (x_orig,) = ctx.saved_tensors + with torch.enable_grad(): + with torch.cuda.amp.autocast(enabled=False): + x_detached = x_orig.to(torch.float32).detach() + x_detached.requires_grad = True + + metric = _whitening_metric(x_detached, ctx.num_groups) + + if random.random() < 0.005 or __name__ == "__main__": + logging.info( + f"Whitening: num_groups={ctx.num_groups}, num_channels={x_orig.shape[-1]}, " + f"metric={metric.item():.2f} vs. limit={ctx.whitening_limit}" + ) + + (metric - ctx.whitening_limit).relu().backward() + penalty_grad = x_detached.grad + scale = ctx.grad_scale * ( + x_grad.to(torch.float32).norm() / (penalty_grad.norm() + 1.0e-20) + ) + penalty_grad = penalty_grad * scale + return x_grad + penalty_grad.to(x_grad.dtype), None, None, None + + +class Whiten(nn.Module): + def __init__( + self, + num_groups: int, + whitening_limit: float, + prob: Union[float, Tuple[float, float]], + grad_scale: float, + ): + """ + Args: + num_groups: the number of groups to divide the channel dim into before + whitening. We will attempt to make the feature covariance + within each group, after mean subtraction, as "white" as possible, + while having the same trace across all groups. + whitening_limit: a value greater than 1.0, that dictates how much + freedom we have to violate the constraints. 1.0 would mean perfectly + white, with exactly the same trace across groups; larger values + give more freedom. E.g. 2.0. + prob: the probability with which we apply the gradient modification + (also affects the grad scale). May be supplied as a float, + or as a pair (min_prob, max_prob) + + grad_scale: determines the scale on the gradient term from this object, + relative to the rest of the gradient on the attention weights. + E.g. 0.02 (you may want to use smaller values than this if prob is large) + """ + super(Whiten, self).__init__() + assert num_groups >= 1 + assert whitening_limit >= 1 + assert grad_scale >= 0 + self.num_groups = num_groups + self.whitening_limit = whitening_limit + if isinstance(prob, float): + assert 0 < prob <= 1 + self.prob = prob + else: + (self.min_prob, self.max_prob) = prob + assert 0 < self.min_prob < self.max_prob <= 1 + self.prob = self.max_prob + + self.grad_scale = grad_scale + + def forward(self, x: Tensor) -> Tensor: + """ + In the forward pass, this function just returns the input unmodified. + In the backward pass, it will modify the gradients to ensure that the + distribution in each group has close to (lambda times I) as the covariance + after mean subtraction, with the same lambda across groups. + For whitening_limit > 1, there will be more freedom to violate this + constraint. + + Args: + x: the input of shape (*, num_channels) + + Returns: + x, unmodified. You should make sure + you use the returned value, or the graph will be freed + and nothing will happen in backprop. + """ + if not x.requires_grad or random.random() > self.prob or self.grad_scale == 0: + return _no_op(x) + else: + if hasattr(self, "min_prob") and random.random() < 0.25: + # occasionally switch between min_prob and max_prob, based on whether + # we are above or below the threshold. + if ( + _whitening_metric(x.to(torch.float32), self.num_groups) + > self.whitening_limit + ): + # there would be a change to the grad. + self.prob = self.max_prob + else: + self.prob = self.min_prob + + return WhiteningPenaltyFunction.apply( + x, self.num_groups, self.whitening_limit, self.grad_scale + ) + + +class WithLoss(torch.autograd.Function): + @staticmethod + def forward(ctx, x: Tensor, y: Tensor): + ctx.y_shape = y.shape + return x + + @staticmethod + def backward(ctx, ans_grad: Tensor): + return ans_grad, torch.ones( + ctx.y_shape, dtype=ans_grad.dtype, device=ans_grad.device + ) + + +def with_loss(x, y): + if torch.jit.is_scripting(): + return x + # returns x but adds y.sum() to the loss function. + return WithLoss.apply(x, y) + + +def _no_op(x: Tensor) -> Tensor: + if torch.jit.is_scripting(): + return x + else: + # a no-op function that will have a node in the autograd graph, + # to avoid certain bugs relating to backward hooks + return x.chunk(1, dim=-1)[0] + + +class Identity(torch.nn.Module): + def __init__(self): + super(Identity, self).__init__() + + def forward(self, x): + return _no_op(x) + + +class MaxEig(torch.nn.Module): + """ + Modifies the backpropped derivatives of a function to try to discourage + that any given direction in activation space accounts for more than + a specified proportion of the covariance (e.g. 0.2). + + + Args: + num_channels: the number of channels + channel_dim: the dimension/axis corresponding to the channel, e.g. + -1, 0, 1, 2; will be interpreted as an offset from x.ndim if negative. + max_var_per_eig: the maximum proportion of the variance of the + features/channels, after mean subtraction, that can come from + any given eigenvalue. + min_prob: the minimum probability with which we apply this during any invocation + of forward(), assuming last time we applied the constraint it was + not active; supplied for speed. + scale: determines the scale with which we modify the gradients, relative + to the existing / unmodified gradients + """ + + def __init__( + self, + num_channels: int, + channel_dim: int, + max_var_per_eig: float = 0.2, + min_prob: float = 0.01, + scale: float = 0.01, + ): + super(MaxEig, self).__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + self.scale = scale + assert max_var_per_eig == 0.0 or max_var_per_eig > 1.0 / num_channels + self.max_var_per_eig = max_var_per_eig + + # we figure out the dominant direction using the power method: starting with + # a random vector, keep multiplying by the covariance and renormalizing. + with torch.no_grad(): + # arbitrary.. would use randn() but want to leave the rest of the model's + # random parameters unchanged for comparison + direction = torch.arange(num_channels).to(torch.float) + direction = direction / direction.norm() + self.register_buffer("max_eig_direction", direction) + + self.min_prob = min_prob + # cur_prob is the current probability we'll use to apply the ActivationBalancer. + # We'll regress this towards prob, each tiem we try to apply it and it is not + # active. + self.cur_prob = 1.0 + + def forward(self, x: Tensor) -> Tensor: + if ( + torch.jit.is_scripting() + or self.max_var_per_eig <= 0 + or random.random() > self.cur_prob + ): + return _no_op(x) + + with torch.cuda.amp.autocast(enabled=False): + eps = 1.0e-20 + orig_x = x + x = x.to(torch.float32) + with torch.no_grad(): + x = x.transpose(self.channel_dim, -1).reshape(-1, self.num_channels) + x = x - x.mean(dim=0) + new_direction, coeffs = self._find_direction_coeffs( + x, self.max_eig_direction + ) + x_var = (x**2).mean() + x_residual = x - coeffs * new_direction + x_residual_var = (x_residual**2).mean() + + # `variance_proportion` is the proportion of the variance accounted for + # by the top eigen-direction. + variance_proportion = (x_var - x_residual_var) / (x_var + 1.0e-20) + + # ensure new direction is nonzero even if x == 0, by including `direction`. + self._set_direction(0.1 * self.max_eig_direction + new_direction) + + if random.random() < 0.01 or __name__ == "__main__": + logging.info( + f"variance_proportion = {variance_proportion.item()}, shape={tuple(orig_x.shape)}, cur_prob={self.cur_prob}" + ) + + if variance_proportion >= self.max_var_per_eig: + # The constraint is active. Note, we should quite rarely + # reach here, only near the beginning of training if we are + # starting to diverge, should this constraint be active. + cur_prob = self.cur_prob + self.cur_prob = 1.0 # next time, do the update with probability 1.0. + return MaxEigLimiterFunction.apply( + orig_x, coeffs, new_direction, self.channel_dim, self.scale + ) + else: + # let self.cur_prob exponentially approach self.min_prob, as + # long as the constraint is inactive. + self.cur_prob = 0.75 * self.cur_prob + 0.25 * self.min_prob + return orig_x + + def _set_direction(self, direction: Tensor): + """ + Sets self.max_eig_direction to a normalized version of `direction` + """ + direction = direction.detach() + direction = direction / direction.norm() + direction_sum = direction.sum().item() + if direction_sum - direction_sum == 0: # no inf/nan + self.max_eig_direction[:] = direction + else: + logging.info( + f"Warning: sum of direction in MaxEig is {direction_sum}, " + "num_channels={self.num_channels}, channel_dim={self.channel_dim}" + ) + + def _find_direction_coeffs( + self, x: Tensor, prev_direction: Tensor + ) -> Tuple[Tensor, Tensor, Tensor]: + """ + Figure out (an approximation to) the proportion of the variance of a set of + feature vectors that can be attributed to the top eigen-direction. + Args: + x: a Tensor of shape (num_frames, num_channels), with num_frames > 1. + prev_direction: a Tensor of shape (num_channels,), that is our previous estimate + of the top eigen-direction, or a random direction if this is the first + iteration. Does not have to be normalized, but should be nonzero. + + Returns: (cur_direction, coeffs), where: + cur_direction: a Tensor of shape (num_channels,) that is the current + estimate of the top eigen-direction. + coeffs: a Tensor of shape (num_frames, 1) that minimizes, or + approximately minimizes, (x - coeffs * cur_direction).norm() + """ + (num_frames, num_channels) = x.shape + assert num_channels > 1 and num_frames > 1 + assert prev_direction.shape == (num_channels,) + # `coeffs` are the coefficients of `prev_direction` in x. + # actually represent the coeffs up to a constant positive factor. + coeffs = (x * prev_direction).sum(dim=1, keepdim=True) + 1.0e-10 + cur_direction = (x * coeffs).sum(dim=0) / ((coeffs**2).sum() + 1.0e-20) + return cur_direction, coeffs + + +class DoubleSwishFunction(torch.autograd.Function): + """ + double_swish(x) = x * torch.sigmoid(x-1) + This is a definition, originally motivated by its close numerical + similarity to swish(swish(x)), where swish(x) = x * sigmoid(x). + + Memory-efficient derivative computation: + double_swish(x) = x * s, where s(x) = torch.sigmoid(x-1) + double_swish'(x) = d/dx double_swish(x) = x * s'(x) + x' * s(x) = x * s'(x) + s(x). + Now, s'(x) = s(x) * (1-s(x)). + double_swish'(x) = x * s'(x) + s(x). + = x * s(x) * (1-s(x)) + s(x). + = double_swish(x) * (1-s(x)) + s(x) + ... so we just need to remember s(x) but not x itself. + """ + + @staticmethod + def forward(ctx, x: Tensor) -> Tensor: + requires_grad = x.requires_grad + x_dtype = x.dtype + if x.dtype == torch.float16: + x = x.to(torch.float32) + + s = torch.sigmoid(x - 1.0) + y = x * s + + if requires_grad: + deriv = y * (1 - s) + s + # notes on derivative of x * sigmoid(x - 1): + # https://www.wolframalpha.com/input?i=d%2Fdx+%28x+*+sigmoid%28x-1%29%29 + # min \simeq -0.043638. Take floor as -0.043637 so it's a lower bund + # max \simeq 1.1990. Take ceil to be 1.2 so it's an upper bound. + # the combination of "+ torch.rand_like(deriv)" and casting to torch.uint8 (which + # floors), should be expectation-preserving. + floor = -0.043637 + ceil = 1.2 + d_scaled = (deriv - floor) * (255.0 / (ceil - floor)) + torch.rand_like( + deriv + ) + if __name__ == "__main__": + # for self-testing only. + assert d_scaled.min() >= 0.0 + assert d_scaled.max() < 256.0 + d_int = d_scaled.to(torch.uint8) + ctx.save_for_backward(d_int) + if x.dtype == torch.float16 or torch.is_autocast_enabled(): + y = y.to(torch.float16) + return y + + @staticmethod + def backward(ctx, y_grad: Tensor) -> Tensor: + (d,) = ctx.saved_tensors + # the same constants as used in forward pass. + floor = -0.043637 + ceil = 1.2 + d = d * ((ceil - floor) / 255.0) + floor + return y_grad * d + + +class DoubleSwish(torch.nn.Module): + def forward(self, x: Tensor) -> Tensor: + """Return double-swish activation function which is an approximation to Swish(Swish(x)), + that we approximate closely with x * sigmoid(x-1). + """ + if torch.jit.is_scripting(): + return x * torch.sigmoid(x - 1.0) + return DoubleSwishFunction.apply(x) + + +def _test_max_eig(): + for proportion in [0.1, 0.5, 10.0]: + logging.info(f"proportion = {proportion}") + x = torch.randn(100, 128) + direction = torch.randn(128) + coeffs = torch.randn(100, 1) + x += proportion * direction * coeffs + + x.requires_grad = True + + num_channels = 128 + m = MaxEig( + num_channels, 1, 0.5, scale=0.1 # channel_dim # max_var_per_eig + ) # grad_scale + + for _ in range(4): + y = m(x) + + y_grad = torch.randn_like(x) + y.backward(gradient=y_grad) + + if proportion < 0.2: + assert torch.allclose(x.grad, y_grad, atol=1.0e-02) + elif proportion > 1.0: + assert not torch.allclose(x.grad, y_grad) + + +def _test_whiten(): + for proportion in [0.1, 0.5, 10.0]: + logging.info(f"_test_whiten(): proportion = {proportion}") + x = torch.randn(100, 128) + direction = torch.randn(128) + coeffs = torch.randn(100, 1) + x += proportion * direction * coeffs + + x.requires_grad = True + + num_channels = 128 + m = Whiten( + 1, 5.0, prob=1.0, grad_scale=0.1 # num_groups # whitening_limit, + ) # grad_scale + + for _ in range(4): + y = m(x) + + y_grad = torch.randn_like(x) + y.backward(gradient=y_grad) + + if proportion < 0.2: + assert torch.allclose(x.grad, y_grad) + elif proportion > 1.0: + assert not torch.allclose(x.grad, y_grad) + + +def _test_activation_balancer_sign(): + probs = torch.arange(0, 1, 0.01) + N = 1000 + x = 1.0 * ((2.0 * (torch.rand(probs.numel(), N) < probs.unsqueeze(-1))) - 1.0) + x = x.detach() + x.requires_grad = True + m = ActivationBalancer( + probs.numel(), + channel_dim=0, + min_positive=0.05, + max_positive=0.95, + max_factor=0.2, + min_abs=0.0, + ) + + y_grad = torch.sign(torch.randn(probs.numel(), N)) + + y = m(x) + y.backward(gradient=y_grad) + print("_test_activation_balancer_sign: x = ", x) + print("_test_activation_balancer_sign: y grad = ", y_grad) + print("_test_activation_balancer_sign: x grad = ", x.grad) + + +def _test_activation_balancer_magnitude(): + magnitudes = torch.arange(0, 1, 0.01) + N = 1000 + x = torch.sign(torch.randn(magnitudes.numel(), N)) * magnitudes.unsqueeze(-1) + x = x.detach() + x.requires_grad = True + m = ActivationBalancer( + magnitudes.numel(), + channel_dim=0, + min_positive=0.0, + max_positive=1.0, + max_factor=0.2, + min_abs=0.2, + max_abs=0.8, + min_prob=1.0, + ) + + y_grad = torch.sign(torch.randn(magnitudes.numel(), N)) + + y = m(x) + y.backward(gradient=y_grad) + print("_test_activation_balancer_magnitude: x = ", x) + print("_test_activation_balancer_magnitude: y grad = ", y_grad) + print("_test_activation_balancer_magnitude: x grad = ", x.grad) + + +def _test_basic_norm(): + num_channels = 128 + m = BasicNorm(num_channels=num_channels, channel_dim=1) + + x = torch.randn(500, num_channels) + + y = m(x) + + assert y.shape == x.shape + x_rms = (x**2).mean().sqrt() + y_rms = (y**2).mean().sqrt() + print("x rms = ", x_rms) + print("y rms = ", y_rms) + assert y_rms < x_rms + assert y_rms > 0.5 * x_rms + + +def _test_double_swish_deriv(): + x = torch.randn(10, 12, dtype=torch.double) * 3.0 + x.requires_grad = True + m = DoubleSwish() + + tol = (1.2 - (-0.043637)) / 255.0 + torch.autograd.gradcheck(m, x, atol=tol) + + # for self-test. + x = torch.randn(1000, 1000, dtype=torch.double) * 3.0 + x.requires_grad = True + y = m(x) + + +def _test_softmax(): + a = torch.randn(2, 10, dtype=torch.float64) + b = a.clone() + a.requires_grad = True + b.requires_grad = True + a.softmax(dim=1)[:, 0].sum().backward() + print("a grad = ", a.grad) + softmax(b, dim=1)[:, 0].sum().backward() + print("b grad = ", b.grad) + assert torch.allclose(a.grad, b.grad) + + +if __name__ == "__main__": + logging.getLogger().setLevel(logging.INFO) + torch.set_num_threads(1) + torch.set_num_interop_threads(1) + _test_softmax() + _test_whiten() + _test_max_eig() + _test_activation_balancer_sign() + _test_activation_balancer_magnitude() + _test_basic_norm() + _test_double_swish_deriv() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling_converter.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling_converter.py new file mode 100755 index 000000000..56165d1f9 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/scaling_converter.py @@ -0,0 +1,114 @@ +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" +This file replaces various modules in a model. +Specifically, ActivationBalancer is replaced with an identity operator; +Whiten is also replaced with an identity operator; +BasicNorm is replaced by a module with `exp` removed. +""" + +import copy +from typing import List + +import torch +import torch.nn as nn +from scaling import ActivationBalancer, BasicNorm, Whiten + + +class NonScaledNorm(nn.Module): + """See BasicNorm for doc""" + + def __init__( + self, + num_channels: int, + eps_exp: float, + channel_dim: int = -1, # CAUTION: see documentation. + ): + super().__init__() + self.num_channels = num_channels + self.channel_dim = channel_dim + self.eps_exp = eps_exp + + def forward(self, x: torch.Tensor) -> torch.Tensor: + if not torch.jit.is_tracing(): + assert x.shape[self.channel_dim] == self.num_channels + scales = ( + torch.mean(x * x, dim=self.channel_dim, keepdim=True) + self.eps_exp + ).pow(-0.5) + return x * scales + + +def convert_basic_norm(basic_norm: BasicNorm) -> NonScaledNorm: + assert isinstance(basic_norm, BasicNorm), type(BasicNorm) + norm = NonScaledNorm( + num_channels=basic_norm.num_channels, + eps_exp=basic_norm.eps.data.exp().item(), + channel_dim=basic_norm.channel_dim, + ) + return norm + + +# Copied from https://pytorch.org/docs/1.9.0/_modules/torch/nn/modules/module.html#Module.get_submodule # noqa +# get_submodule was added to nn.Module at v1.9.0 +def get_submodule(model, target): + if target == "": + return model + atoms: List[str] = target.split(".") + mod: torch.nn.Module = model + for item in atoms: + if not hasattr(mod, item): + raise AttributeError( + mod._get_name() + " has no " "attribute `" + item + "`" + ) + mod = getattr(mod, item) + if not isinstance(mod, torch.nn.Module): + raise AttributeError("`" + item + "` is not " "an nn.Module") + return mod + + +def convert_scaled_to_non_scaled( + model: nn.Module, + inplace: bool = False, +): + """ + Args: + model: + The model to be converted. + inplace: + If True, the input model is modified inplace. + If False, the input model is copied and we modify the copied version. + Return: + Return a model without scaled layers. + """ + if not inplace: + model = copy.deepcopy(model) + + d = {} + for name, m in model.named_modules(): + if isinstance(m, BasicNorm): + d[name] = convert_basic_norm(m) + elif isinstance(m, (ActivationBalancer, Whiten)): + d[name] = nn.Identity() + + for k, v in d.items(): + if "." in k: + parent, child = k.rsplit(".", maxsplit=1) + setattr(get_submodule(model, parent), child, v) + else: + setattr(model, k, v) + + return model diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/test_model.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/test_model.py new file mode 100755 index 000000000..e482d2040 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/test_model.py @@ -0,0 +1,56 @@ +#!/usr/bin/env python3 +# Copyright 2022 Xiaomi Corp. (authors: Fangjun Kuang) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +""" +To run this file, do: + + cd icefall/egs/librispeech/ASR + python ./pruned_transducer_stateless7_ctc/test_model.py +""" + +from train import get_params, get_transducer_model + + +def test_model_1(): + params = get_params() + params.vocab_size = 500 + params.blank_id = 0 + params.context_size = 2 + params.num_encoder_layers = "2,4,3,2,4" + # params.feedforward_dims = "1024,1024,1536,1536,1024" + params.feedforward_dims = "1024,1024,2048,2048,1024" + params.nhead = "8,8,8,8,8" + params.encoder_dims = "384,384,384,384,384" + params.attention_dims = "192,192,192,192,192" + params.encoder_unmasked_dims = "256,256,256,256,256" + params.zipformer_downsampling_factors = "1,2,4,8,2" + params.cnn_module_kernels = "31,31,31,31,31" + params.decoder_dim = 512 + params.joiner_dim = 512 + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + print(f"Number of model parameters: {num_param}") + + +def main(): + test_model_1() + + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/train.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/train.py new file mode 100755 index 000000000..7eda72eec --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/train.py @@ -0,0 +1,1608 @@ +#!/usr/bin/env python3 +# Copyright 2021-2022 Xiaomi Corp. (authors: Fangjun Kuang, +# Wei Kang, +# Mingshuang Luo,) +# Zengwei Yao) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +""" +Usage: + +# initialize_param_list = ["ctc_output.1.bias","ctc_output.1.weight","decoder.conv.weight","decoder.embedding.weight","encoder.encoders.encoder.layers.10.self_attn.k_proj.bias","encoder.encoders.encoder.layers.11.self_attn.k_proj.bias","encoder.encoders.encoder.layers.9.self_attn.k_proj.bias","encoder.output_layer.0.bias","encoder.output_layer.0.weight","encoder.output_layer.1.weight","joiner.decoder_proj.bias","joiner.decoder_proj.weight","joiner.encoder_proj.bias","joiner.encoder_proj.weight","joiner.output_linear.bias","joiner.output_linear.weight","simple_am_proj.bias","simple_am_proj.weight","simple_lm_proj.bias","simple_lm_proj.weight"] + +export CUDA_VISIBLE_DEVICES="0,1,2,3" +./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T \ + --max-duration 150 \ + --freeze-finetune-updates 3000 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --accum-grads 4 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 + +""" + + +import random +import argparse +import copy +import logging +import warnings +from pathlib import Path +from shutil import copyfile +from typing import Any, Dict, Optional, Tuple, Union + +import k2 +import optim +import sentencepiece as spm +import torch +import torch.multiprocessing as mp +import torch.nn as nn +import torch.nn.functional as F +from asr_datamodule import LJSpeechAsrDataModule +from decoder import Decoder +from joiner import Joiner +from lhotse.cut import Cut +from lhotse.dataset.sampling.base import CutSampler +from lhotse.utils import fix_random_seed +from model import Transducer +from optim import Eden, ScaledAdam +from torch import Tensor +from torch.cuda.amp import GradScaler +from torch.nn.parallel import DistributedDataParallel as DDP +from torch.utils.tensorboard import SummaryWriter +from torch import distributed as tdist +from zipformer import Zipformer +from data2vec_encoder import FairSeqData2VecEncoder + +from icefall import diagnostics +from icefall.checkpoint import remove_checkpoints +from icefall.checkpoint import update_averaged_model +from checkpoint import ( + save_checkpoint as save_checkpoint_impl, + save_checkpoint_with_global_batch_idx, + load_checkpoint +) +from icefall.dist import cleanup_dist, setup_dist +from icefall.env import get_env_info +from icefall.hooks import register_inf_check_hooks +from icefall.utils import ( + AttributeDict, + MetricsTracker, + encode_supervisions, + setup_logger, + str2bool, + save_args, +) + +import wandb + +#from icefall.checkpoint import save_checkpoint as save_checkpoint_impl +LRSchedulerType = Union[torch.optim.lr_scheduler._LRScheduler, optim.LRScheduler] + + +def set_batch_count(model: Union[nn.Module, DDP], batch_count: float) -> None: + if isinstance(model, DDP): + # get underlying nn.Module + model = model.module + for module in model.modules(): + if hasattr(module, "batch_count"): + module.batch_count = batch_count + model.encoder.num_updates = int(batch_count) + + +def add_rep_arguments(parser: argparse.ArgumentParser): + parser.add_argument( + "--wandb", + type=str2bool, + default=True, + help="Use wandb for MLOps", + ) + parser.add_argument( + "--accum-grads", + type=int, + default=1, + help="accum-grad num.", + ) + + parser.add_argument( + "--multi-optim", + type=str2bool, + default=True, + help="use sperate optimizer (enc / dec)", + ) + + parser.add_argument( + "--peak-enc-lr", + type=float, + default=0.0001, + help="The initial learning rate. This value should not need to be changed.", + ) + + parser.add_argument( + "--peak-dec-lr", + type=float, + default=0.001, + help="The initial learning rate. This value should not need to be changed.", + ) + + parser.add_argument( + "--encoder-type", + type=str, + default='d2v', + help="Type of encoder (e.g. conformer, w2v, d2v...", + ) + + parser.add_argument( + "--encoder-dim", + type=int, + default=768, + help="encoder embedding dimension", + ) + + parser.add_argument( + "--freeze-finetune-updates", + type=int, + default=0 + ) + + parser.add_argument( + "--additional-block", + type=str2bool, + default=True, + ) + + parser.add_argument( + "--decode-interval", + type=int, + default=200, + help="decode interval", + ) + + parser.add_argument( + "--load-prefinetuned-model", + type=str, + default=None, + ) + + parser.add_argument( + "--use-pseudo-labels", + type=str2bool, + default=False, + ) + + parser.add_argument( + "--update-ema", + type=str2bool, + default=False, + ) + + parser.add_argument( + "--layer-average", + type=str2bool, + default=False, + ) + + parser.add_argument( + "--layer-average", + type=str2bool, + default=False, + ) + + parser.add_argument( + "--instance-norm-target-layer", + type=str2bool, + default=True, + ) + + parser.add_argument( + "--average-top-k-layers", + type=int, + default=12, + ) + + +def add_model_arguments(parser: argparse.ArgumentParser): + parser.add_argument( + "--num-encoder-layers", + type=str, + default="2,4,3,2,4", + help="Number of zipformer encoder layers, comma separated.", + ) + + parser.add_argument( + "--feedforward-dims", + type=str, + default="1024,1024,2048,2048,1024", + help="Feedforward dimension of the zipformer encoder layers, comma separated.", + ) + + parser.add_argument( + "--nhead", + type=str, + default="8,8,8,8,8", + help="Number of attention heads in the zipformer encoder layers.", + ) + + parser.add_argument( + "--encoder-dims", + type=str, + default="384,384,384,384,384", + help="Embedding dimension in the 2 blocks of zipformer encoder layers, comma separated", + ) + + parser.add_argument( + "--attention-dims", + type=str, + default="192,192,192,192,192", + help="""Attention dimension in the 2 blocks of zipformer encoder layers, comma separated; + not the same as embedding dimension.""", + ) + + parser.add_argument( + "--encoder-unmasked-dims", + type=str, + default="256,256,256,256,256", + help="Unmasked dimensions in the encoders, relates to augmentation during training. " + "Must be <= each of encoder_dims. Empirically, less than 256 seems to make performance " + " worse.", + ) + + parser.add_argument( + "--zipformer-downsampling-factors", + type=str, + default="1,2,4,8,2", + help="Downsampling factor for each stack of encoder layers.", + ) + + parser.add_argument( + "--cnn-module-kernels", + type=str, + default="31,31,31,31,31", + help="Sizes of kernels in convolution modules", + ) + + parser.add_argument( + "--decoder-dim", + type=int, + default=512, + help="Embedding dimension in the decoder model.", + ) + + parser.add_argument( + "--joiner-dim", + type=int, + default=512, + help="""Dimension used in the joiner model. + Outputs from the encoder and decoder model are projected + to this dimension before adding. + """, + ) + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + + parser.add_argument( + "--world-size", + type=int, + default=1, + help="Number of GPUs for DDP training.", + ) + + parser.add_argument( + "--master-port", + type=int, + default=12354, + help="Master port to use for DDP training.", + ) + + parser.add_argument( + "--tensorboard", + type=str2bool, + default=True, + help="Should various information be logged in tensorboard.", + ) + + parser.add_argument( + "--num-epochs", + type=int, + default=30, + help="Number of epochs to train.", + ) + + parser.add_argument( + "--start-epoch", + type=int, + default=1, + help="""Resume training from this epoch. It should be positive. + If larger than 1, it will load checkpoint from + exp-dir/epoch-{start_epoch-1}.pt + """, + ) + + parser.add_argument( + "--start-batch", + type=int, + default=0, + help="""If positive, --start-epoch is ignored and + it loads the checkpoint from exp-dir/checkpoint-{start_batch}.pt + """, + ) + + parser.add_argument( + "--exp-dir", + type=str, + default="pruned_transducer_stateless7_ctc/exp", + help="""The experiment dir. + It specifies the directory where all training related + files, e.g., checkpoints, log, etc, are saved + """, + ) + + parser.add_argument( + "--bpe-model", + type=str, + default="data/lang_bpe_500/bpe.model", + help="Path to the BPE model", + ) + + parser.add_argument( + "--base-lr", type=float, default=0.05, help="The base learning rate." + ) + + parser.add_argument( + "--lr-batches", + type=float, + default=5000, + help="""Number of steps that affects how rapidly the learning rate + decreases. We suggest not to change this.""", + ) + + parser.add_argument( + "--lr-epochs", + type=float, + default=3.5, + help="""Number of epochs that affects how rapidly the learning rate decreases. + """, + ) + + parser.add_argument( + "--context-size", + type=int, + default=2, + help="The context size in the decoder. 1 means bigram; 2 means tri-gram", + ) + + parser.add_argument( + "--prune-range", + type=int, + default=5, + help="The prune range for rnnt loss, it means how many symbols(context)" + "we are using to compute the loss", + ) + + parser.add_argument( + "--lm-scale", + type=float, + default=0.25, + help="The scale to smooth the loss with lm " + "(output of prediction network) part.", + ) + + parser.add_argument( + "--am-scale", + type=float, + default=0.0, + help="The scale to smooth the loss with am (output of encoder network) part.", + ) + + parser.add_argument( + "--simple-loss-scale", + type=float, + default=0.5, + help="To get pruning ranges, we will calculate a simple version" + "loss(joiner is just addition), this simple loss also uses for" + "training (as a regularization item). We will scale the simple loss" + "with this parameter before adding to the final loss.", + ) + + parser.add_argument( + "--ctc-loss-scale", + type=float, + default=0.2, + help="Scale for CTC loss.", + ) + + parser.add_argument( + "--seed", + type=int, + default=42, + help="The seed for random generators intended for reproducibility", + ) + + parser.add_argument( + "--print-diagnostics", + type=str2bool, + default=False, + help="Accumulate stats on activations, print them and exit.", + ) + + parser.add_argument( + "--inf-check", + type=str2bool, + default=False, + help="Add hooks to check for infinite module outputs and gradients.", + ) + + parser.add_argument( + "--save-every-n", + type=int, + default=2000, + help="""Save checkpoint after processing this number of batches" + periodically. We save checkpoint to exp-dir/ whenever + params.batch_idx_train % save_every_n == 0. The checkpoint filename + has the form: f'exp-dir/checkpoint-{params.batch_idx_train}.pt' + Note: It also saves checkpoint to `exp-dir/epoch-xxx.pt` at the + end of each epoch where `xxx` is the epoch number counting from 0. + """, + ) + + parser.add_argument( + "--keep-last-k", + type=int, + default=30, + help="""Only keep this number of checkpoints on disk. + For instance, if it is 3, there are only 3 checkpoints + in the exp-dir with filenames `checkpoint-xxx.pt`. + It does not affect checkpoints with name `epoch-xxx.pt`. + """, + ) + + parser.add_argument( + "--average-period", + type=int, + default=200, + help="""Update the averaged model, namely `model_avg`, after processing + this number of batches. `model_avg` is a separate version of model, + in which each floating-point parameter is the average of all the + parameters from the start of training. Each time we take the average, + we do: `model_avg = model * (average_period / batch_idx_train) + + model_avg * ((batch_idx_train - average_period) / batch_idx_train)`. + """, + ) + + parser.add_argument( + "--use-fp16", + type=str2bool, + default=True, + help="Whether to use half precision training.", + ) + + add_model_arguments(parser) + add_rep_arguments(parser) + + return parser + + +def get_params() -> AttributeDict: + """Return a dict containing training parameters. + + All training related parameters that are not passed from the commandline + are saved in the variable `params`. + + Commandline options are merged into `params` after they are parsed, so + you can also access them via `params`. + + Explanation of options saved in `params`: + + - best_train_loss: Best training loss so far. It is used to select + the model that has the lowest training loss. It is + updated during the training. + + - best_valid_loss: Best validation loss so far. It is used to select + the model that has the lowest validation loss. It is + updated during the training. + + - best_train_epoch: It is the epoch that has the best training loss. + + - best_valid_epoch: It is the epoch that has the best validation loss. + + - batch_idx_train: Used to writing statistics to tensorboard. It + contains number of batches trained so far across + epochs. + + - log_interval: Print training loss if batch_idx % log_interval` is 0 + + - reset_interval: Reset statistics if batch_idx % reset_interval is 0 + + - valid_interval: Run validation if batch_idx % valid_interval is 0 + + - feature_dim: The model input dim. It has to match the one used + in computing features. + + - subsampling_factor: The subsampling factor for the model. + + - encoder_dim: Hidden dim for multi-head attention model. + + - num_decoder_layers: Number of decoder layer of transformer decoder. + + - warm_step: The warmup period that dictates the decay of the + scale on "simple" (un-pruned) loss. + """ + params = AttributeDict( + { + "best_train_loss": float("inf"), + "best_valid_loss": float("inf"), + "best_train_epoch": -1, + "best_valid_epoch": -1, + "batch_idx_train": 0, + "log_interval": 50, + "reset_interval": 200, + "valid_interval": 3000, # For the 100h subset, use 800 + # parameters for zipformer + "feature_dim": 80, + "subsampling_factor": 320, # not passed in, this is fixed. + # parameters for ctc loss + "beam_size": 10, + "use_double_scores": True, + "warm_step": 4000, + #"warm_step": 3000, + "env_info": get_env_info(), + } + ) + + return params + + +def get_encoder_model(params: AttributeDict) -> nn.Module: + # TODO: We can add an option to switch between Zipformer and Transformer + def to_int_tuple(s: str): + return tuple(map(int, s.split(","))) + + if params.encoder_type == 'd2v': + encoder = FairSeqData2VecEncoder( + input_size=params.encoder_dim, + w2v_url='None', + output_size=params.encoder_dim, + freeze_finetune_updates=params.freeze_finetune_updates, + additional_block=params.additional_block, + layer_average=params.layer_average, + ) + else: + encoder = Zipformer( + num_features=params.feature_dim, + output_downsampling_factor=2, + zipformer_downsampling_factors=to_int_tuple( + params.zipformer_downsampling_factors + ), + encoder_dims=to_int_tuple(params.encoder_dims), + attention_dim=to_int_tuple(params.attention_dims), + encoder_unmasked_dims=to_int_tuple(params.encoder_unmasked_dims), + nhead=to_int_tuple(params.nhead), + feedforward_dim=to_int_tuple(params.feedforward_dims), + cnn_module_kernels=to_int_tuple(params.cnn_module_kernels), + num_encoder_layers=to_int_tuple(params.num_encoder_layers), + ) + + return encoder + + +def get_decoder_model(params: AttributeDict) -> nn.Module: + decoder = Decoder( + vocab_size=params.vocab_size, + decoder_dim=params.decoder_dim, + blank_id=params.blank_id, + context_size=params.context_size, + ) + return decoder + + +def get_joiner_model(params: AttributeDict) -> nn.Module: + joiner = Joiner( + encoder_dim=params.encoder_dim if params.encoder_type == 'd2v' else int(params.encoder_dims.split(",")[-1]), + decoder_dim=params.decoder_dim, + joiner_dim=params.joiner_dim, + vocab_size=params.vocab_size, + ) + return joiner + + +def get_transducer_model(params: AttributeDict) -> nn.Module: + encoder = get_encoder_model(params) + decoder = get_decoder_model(params) + joiner = get_joiner_model(params) + + model = Transducer( + encoder=encoder, + decoder=decoder, + joiner=joiner, + encoder_dim=params.encoder_dim if params.encoder_type == 'd2v' else int(params.encoder_dims.split(",")[-1]), + decoder_dim=params.decoder_dim, + joiner_dim=params.joiner_dim, + vocab_size=params.vocab_size, + ) + + if params.load_prefinetuned_model is not None: + prefinetuned_model = torch.load(params.load_prefinetuned_model) + prefinetuned_model = prefinetuned_model['model'] + state_dict_keys = [] + + with torch.no_grad(): + for name, p in model.named_parameters(): + if name in prefinetuned_model.keys(): + p.copy_(prefinetuned_model[name]) + else: + print(f""" + [WARNING] Parameter names of prefinetuned model and current model are different. + Parameter {name} is not in the current model + """) + state_dict_keys.append(name) + + for key in state_dict_keys: + if key in prefinetuned_model.keys(): + continue + else: + print(f""" + [WARNING] Parameter names of prefinetuned model and current model are different. + Parameter {key} is not in the prefinetuned model + """) + + logging.info(f'Model parameters from {params.load_prefinetuned_model} loaded') + + return model + + +def load_checkpoint_if_available( + params: AttributeDict, + model: nn.Module, + model_avg: nn.Module = None, + optimizer: Optional[torch.optim.Optimizer] = None, + scheduler: Optional[LRSchedulerType] = None, +) -> Optional[Dict[str, Any]]: + """Load checkpoint from file. + + If params.start_batch is positive, it will load the checkpoint from + `params.exp_dir/checkpoint-{params.start_batch}.pt`. Otherwise, if + params.start_epoch is larger than 1, it will load the checkpoint from + `params.start_epoch - 1`. + + Apart from loading state dict for `model` and `optimizer` it also updates + `best_train_epoch`, `best_train_loss`, `best_valid_epoch`, + and `best_valid_loss` in `params`. + + Args: + params: + The return value of :func:`get_params`. + model: + The training model. + model_avg: + The stored model averaged from the start of training. + optimizer: + The optimizer that we are using. + scheduler: + The scheduler that we are using. + Returns: + Return a dict containing previously saved training info. + """ + if params.start_batch > 0: + filename = params.exp_dir / f"checkpoint-{params.start_batch}.pt" + elif params.start_epoch > 1: + filename = params.exp_dir / f"epoch-{params.start_epoch-1}.pt" + else: + return None + + assert filename.is_file(), f"{filename} does not exist!" + + saved_params = load_checkpoint( + filename, + model=model, + model_avg=model_avg, + optimizer=optimizer, + scheduler=scheduler, + ) + + keys = [ + "best_train_epoch", + "best_valid_epoch", + "batch_idx_train", + "best_train_loss", + "best_valid_loss", + ] + for k in keys: + params[k] = saved_params[k] + + if params.start_batch > 0: + if "cur_epoch" in saved_params: + params["start_epoch"] = saved_params["cur_epoch"] + + if "cur_batch_idx" in saved_params: + params["cur_batch_idx"] = saved_params["cur_batch_idx"] + + return saved_params + + +def save_checkpoint( + params: AttributeDict, + model: Union[nn.Module, DDP], + model_avg: Optional[nn.Module] = None, + optimizer: Optional[torch.optim.Optimizer] = None, + scheduler: Optional[LRSchedulerType] = None, + sampler: Optional[CutSampler] = None, + scaler: Optional[GradScaler] = None, + rank: int = 0, +) -> None: + """Save model, optimizer, scheduler and training stats to file. + + Args: + params: + It is returned by :func:`get_params`. + model: + The training model. + model_avg: + The stored model averaged from the start of training. + optimizer: + The optimizer used in the training. + sampler: + The sampler for the training dataset. + scaler: + The scaler used for mix precision training. + """ + if rank != 0: + return + filename = params.exp_dir / f"epoch-{params.cur_epoch}.pt" + save_checkpoint_impl( + filename=filename, + model=model, + model_avg=model_avg, + params=params, + optimizer=optimizer, + scheduler=scheduler, + sampler=sampler, + scaler=scaler, + rank=rank, + ) + + if params.best_train_epoch == params.cur_epoch: + best_train_filename = params.exp_dir / "best-train-loss.pt" + copyfile(src=filename, dst=best_train_filename) + + if params.best_valid_epoch == params.cur_epoch: + best_valid_filename = params.exp_dir / "best-valid-loss.pt" + copyfile(src=filename, dst=best_valid_filename) + +def compute_var(y): + y = y.view(-1, y.size(-1)) + if tdist.is_initialized(): + zc = torch.tensor(y.size(0)).cuda() + zs = y.sum(dim=0) + zss = (y ** 2).sum(dim=0) + + tdist.all_reduce(zc) + tdist.all_reduce(zs) + tdist.all_reduce(zss) + + var = zss / (zc - 1) - (zs ** 2) / (zc * (zc - 1)) + return torch.sqrt(var + 1e-6).mean() + else: + return torch.sqrt(y.var(dim=0) + 1e-6).mean() + +def compute_loss( + params: AttributeDict, + model: Union[nn.Module, DDP], + sp: spm.SentencePieceProcessor, + batch: dict, + is_training: bool, + ema_model: Union[nn.Module, DDP] = None, + decode: bool = False, +) -> Tuple[Tensor, MetricsTracker]: + """ + Compute transducer loss given the model and its inputs. + + Args: + params: + Parameters for training. See :func:`get_params`. + model: + The model for training. It is an instance of Zipformer in our case. + batch: + A batch of data. See `lhotse.dataset.K2SpeechRecognitionDataset()` + for the content in it. + is_training: + True for training. False for validation. When it is True, this + function enables autograd during computation; when it is False, it + disables autograd. + warmup: a floating point value which increases throughout training; + values >= 1.0 are fully warmed up and have all modules present. + """ + device = model.device if isinstance(model, DDP) else next(model.parameters()).device + feature = batch["inputs"] + # at entry, feature is (N, T, C) + assert feature.ndim == 2 or feature.ndim == 3 + feature = feature.to(device) + + supervisions = batch["supervisions"] + + if feature.ndim == 2: + feature_lens = [] + for supervision in supervisions['cut']: + try: feature_lens.append(supervision.tracks[0].cut.recording.num_samples) + except: feature_lens.append(supervision.recording.num_samples) + feature_lens = torch.tensor(feature_lens) + + elif feature.ndim == 3: + feature_lens = supervisions["num_frames"].to(device) + + batch_idx_train = params.batch_idx_train + warm_step = params.warm_step + + with torch.no_grad(): + ema_model.eval() + ema_model.module.encoder.encoders.training = False + + average_top_k_layers = params.average_top_k_layers + target_layer_results, _ = ema_model.module.forward_speech_encoder( + x=feature, + x_lens=feature_lens, + with_proj=False, + ) + target_layer_results = [l[2] for l in target_layer_results] + target_layer_results[len(target_layer_results) - average_top_k_layers:] + + with torch.set_grad_enabled(is_training): + instance_norm_target_layer = params.instance_norm_target_layer + if instance_norm_target_layer: + target_layer_results = [ + tl.permute(1, 2, 0) for tl in target_layer_results # TBC -> BCT + ] + target_layer_results = [ + F.instance_norm(tl.float()) for tl in target_layer_results + ] + target_layer_results = [ + tl.transpose(1, 2) for tl in target_layer_results # BCT -> BTC + ] + + y = sum(target_layer_results) / len(target_layer_results) + + x, mask_indices = model.module.forward_speech_encoder( + x=feature, + x_lens=feature_lens, + with_proj=True, + ) + y = y[mask_indices] # FIXME: what about padding mask? It might be a critical problem + + loss = F.mse_loss(x.float(), y.float(), reduction="none").sum(dim=-1) + loss = loss.sum() / len(loss) + + info = MetricsTracker() + + assert loss.requires_grad == is_training + + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + info["frames"] = (feature_lens // params.subsampling_factor).sum().item() + + # Note: We use reduction=sum while computing the loss. + info["utterances"] = feature.size(0) + info["loss"] = loss.detach().cpu().item() + + # FIXME! + # with torch.no_grad(): + # info["target_var"] = compute_var(y) + # info["pred_var"] = compute_var(x.float()) + + return loss, info + + +def compute_validation_loss( + params: AttributeDict, + model: Union[nn.Module, DDP], + ema_model: Union[nn.Module, DDP], + sp: spm.SentencePieceProcessor, + valid_dl: torch.utils.data.DataLoader, + world_size: int = 1, +) -> MetricsTracker: + """Run the validation process.""" + model.eval() + + tot_loss = MetricsTracker() + + for batch_idx, batch in enumerate(valid_dl): + loss, loss_info = compute_loss( + params=params, + model=model, + ema_model=ema_model, + sp=sp, + batch=batch, + is_training=False, + ) + assert loss.requires_grad is False + tot_loss = tot_loss + loss_info + + if world_size > 1: + tot_loss.reduce(loss.device) + + loss_value = tot_loss["loss"] / tot_loss["utterances"] + if loss_value < params.best_valid_loss: + params.best_valid_epoch = params.cur_epoch + params.best_valid_loss = loss_value + + return tot_loss + + +def train_one_epoch( + params: AttributeDict, + model: Union[nn.Module, DDP], + optimizer: torch.optim.Optimizer or [torch.optim.Optimizer, torch.optim.Optimizer], + scheduler: LRSchedulerType or [LRSchedulerType, LRSchedulerType], + sp: spm.SentencePieceProcessor, + train_dl: torch.utils.data.DataLoader, + valid_dl: torch.utils.data.DataLoader, + scaler: GradScaler, + ema_model: Union[nn.Module, DDP] = None, + model_avg: Optional[nn.Module] = None, + tb_writer: Optional[SummaryWriter] = None, + world_size: int = 1, + rank: int = 0, + wb = None, +) -> None: + """Train the model for one epoch. + + The training loss from the mean of all frames is saved in + `params.train_loss`. It runs the validation process every + `params.valid_interval` batches. + + Args: + params: + It is returned by :func:`get_params`. + model: + The model for training. + optimizer: + The optimizer we are using. + scheduler: + The learning rate scheduler, we call step() every step. + train_dl: + Dataloader for the training dataset. + valid_dl: + Dataloader for the validation dataset. + scaler: + The scaler used for mix precision training. + model_avg: + The stored model averaged from the start of training. + tb_writer: + Writer to write log messages to tensorboard. + world_size: + Number of nodes in DDP training. If it is 1, DDP is disabled. + rank: + The rank of the node in DDP training. If no DDP is used, it should + be set to 0. + """ + model.train() + + tot_loss = MetricsTracker() + + cur_batch_idx = params.get("cur_batch_idx", 0) + + if params.multi_optim: + optimizer_enc, optimizer_dec = optimizer[0], optimizer[1] + scheduler_enc, scheduler_dec = scheduler[0], scheduler[1] + + for batch_idx, batch in enumerate(train_dl): + if batch_idx < cur_batch_idx: + continue + cur_batch_idx = batch_idx + + if batch_idx % params.accum_grads == 0: params.batch_idx_train += 1 + batch_size = len(batch["supervisions"]["text"]) + + try: + with torch.cuda.amp.autocast(enabled=params.use_fp16): + # HERE FIXME + loss, loss_info = compute_loss( + params=params, + model=model, + ema_model=ema_model, + sp=sp, + batch=batch, + is_training=True, + decode = True if batch_idx % params.decode_interval == 0 else False, + ) + loss_info.reduce(loss.device) + + numel = params.world_size / (params.accum_grads * loss_info["utterances"]) + loss *= numel ## normalize loss over utts(batch size) + + # summary stats + tot_loss = (tot_loss * (1 - 1 / params.reset_interval)) + loss_info + + # NOTE: We use reduction==sum and loss is computed over utterances + # in the batch and there is no normalization to it so far. + scaler.scale(loss).backward() + + if params.multi_optim and batch_idx % params.accum_grads == 0: + set_batch_count(model, params.batch_idx_train) + scheduler_enc.step_batch(params.batch_idx_train) + scheduler_dec.step_batch(params.batch_idx_train) + scaler.step(optimizer_enc) + scaler.step(optimizer_dec) + scaler.update() + optimizer_enc.zero_grad() + optimizer_dec.zero_grad() + elif not params.multi_optim and batch_idx % params.accum_grads == 0: + set_batch_count(model, params.batch_idx_train) + scheduler.step_batch(params.batch_idx_train) + scaler.step(optimizer) + scaler.update() + optimizer.zero_grad() + + except: # noqa + display_and_save_batch(batch, params=params, sp=sp) + raise + + if params.print_diagnostics and batch_idx == 5: + return + + if ( + rank == 0 + and params.batch_idx_train > 0 + and params.batch_idx_train % params.average_period == 0 + ): + update_averaged_model( + params=params, + model_cur=model, + model_avg=model_avg, + ) + + if ( + params.batch_idx_train > 0 + and params.batch_idx_train % params.save_every_n == 0 + ): + params.cur_batch_idx = batch_idx + save_checkpoint_with_global_batch_idx( + out_dir=params.exp_dir, + global_batch_idx=params.batch_idx_train, + model=model, + model_avg=model_avg, + params=params, + optimizer=optimizer, + scheduler=scheduler, + sampler=train_dl.sampler, + scaler=scaler, + rank=rank, + ) + del params.cur_batch_idx + remove_checkpoints( + out_dir=params.exp_dir, + topk=params.keep_last_k, + rank=rank, + ) + + if batch_idx % 100 == 0 and params.use_fp16: + # If the grad scale was less than 1, try increasing it. The _growth_interval + # of the grad scaler is configurable, but we can't configure it to have different + # behavior depending on the current grad scale. + cur_grad_scale = scaler._scale.item() + ''' + if cur_grad_scale < 1.0 or (cur_grad_scale < 8.0 and batch_idx % 400 == 0): + scaler.update(cur_grad_scale * 2.0) + ''' + if cur_grad_scale < 0.01: + logging.warning(f"Grad scale is small: {cur_grad_scale}") + if cur_grad_scale < 1.0e-05: + wb.log({"valid/loss": 10000}) + raise RuntimeError( + f"grad_scale is too small, exiting: {cur_grad_scale}" + ) + + if params.batch_idx_train > 4000 and loss > 300: + wb.log({"valid/loss": 10000}) + raise RunteimError( + f"divergence... exiting: loss={loss}" + ) + + if batch_idx % (params.log_interval*params.accum_grads) == 0: + if params.multi_optim: + cur_enc_lr = scheduler_enc.get_last_lr()[0] + cur_dec_lr = scheduler_dec.get_last_lr()[0] + cur_grad_scale = scaler._scale.item() if params.use_fp16 else 1.0 + + logging.info( + f"Epoch {params.cur_epoch}, " + f"batch {batch_idx}, loss[{loss_info}], " + f"tot_loss[{tot_loss}], batch size: {batch_size}, " + f"enc_lr: {cur_enc_lr:.2e}, " + f"dec_lr: {cur_dec_lr:.2e}, " + + (f"grad_scale: {scaler._scale.item()}" if params.use_fp16 else "") + ) + + else: + cur_lr = scheduler.get_last_lr()[0] + cur_grad_scale = scaler._scale.item() if params.use_fp16 else 1.0 + + logging.info( + f"Epoch {params.cur_epoch}, " + f"batch {batch_idx}, loss[{loss_info}], " + f"tot_loss[{tot_loss}], batch size: {batch_size}, " + f"lr: {cur_lr:.2e}, " + + (f"grad_scale: {scaler._scale.item()}" if params.use_fp16 else "") + ) + + if tb_writer is not None: + if params.multi_optim: + tb_writer.add_scalar( + "train/enc_learning_rate", cur_enc_lr, params.batch_idx_train + ) + tb_writer.add_scalar( + "train/dec_learning_rate", cur_dec_lr, params.batch_idx_train + ) + + else: + tb_writer.add_scalar( + "train/learning_rate", cur_lr, params.batch_idx_train + ) + + loss_info.write_summary( + tb_writer, "train/current_", params.batch_idx_train + ) + tot_loss.write_summary(tb_writer, "train/tot_", params.batch_idx_train) + if params.use_fp16: + tb_writer.add_scalar( + "train/grad_scale", + cur_grad_scale, + params.batch_idx_train, + ) + + if wb is not None and rank == 0: + wb.log({"train/loss": loss_info["loss"]*numel}) + +#if batch_idx % params.valid_interval == 0 and not params.print_diagnostics: + logging.info("Computing validation loss") + valid_info = compute_validation_loss( + params=params, + model=model, + ema_model=ema_model, + sp=sp, + valid_dl=valid_dl, + world_size=world_size, + ) + model.train() + logging.info(f"Epoch {params.cur_epoch}, validation: {valid_info}") + logging.info( + f"Maximum memory allocated so far is {torch.cuda.max_memory_allocated()//1000000}MB" + ) + if tb_writer is not None: + valid_info.write_summary( + tb_writer, "train/valid_", params.batch_idx_train + ) + + if wb is not None and rank == 0: + numel = 1 / (params.accum_grads * valid_info["utterances"]) + wb.log({"valid/loss": valid_info["loss"]*numel}) + + loss_value = tot_loss["loss"] / tot_loss["utterances"] + params.train_loss = loss_value + if params.train_loss < params.best_train_loss: + params.best_train_epoch = params.cur_epoch + params.best_train_loss = params.train_loss + + +def run(rank, world_size, args, wb=None): + """ + Args: + rank: + It is a value between 0 and `world_size-1`, which is + passed automatically by `mp.spawn()` in :func:`main`. + The node with rank 0 is responsible for saving checkpoint. + world_size: + Number of GPUs for DDP training. + args: + The return value of get_parser().parse_args() + """ + params = get_params() + params.update(vars(args)) + #params.warm_step *= params.accum_grads + + fix_random_seed(params.seed) + if world_size > 1: + setup_dist(rank, world_size, params.master_port) + + setup_logger(f"{params.exp_dir}/log/log-train") + logging.info("Training started") + + if args.tensorboard and rank == 0: + tb_writer = SummaryWriter(log_dir=f"{params.exp_dir}/tensorboard") + else: + tb_writer = None + + device = torch.device("cpu") + if torch.cuda.is_available(): + device = torch.device("cuda", rank) + logging.info(f"Device: {device}") + + sp = spm.SentencePieceProcessor() + sp.load(params.bpe_model) + + # is defined in local/train_bpe_model.py + params.blank_id = sp.piece_to_id("") + params.vocab_size = sp.get_piece_size() + + logging.info(params) + + logging.info("About to create model") + model = get_transducer_model(params) + + num_param = sum([p.numel() for p in model.parameters()]) + logging.info(f"Number of model parameters: {num_param}") + + assert params.save_every_n >= params.average_period + model_avg: Optional[nn.Module] = None + if rank == 0: + # model_avg is only used with rank 0 + model_avg = copy.deepcopy(model).to(torch.float64) + + assert params.start_epoch > 0, params.start_epoch + checkpoints = load_checkpoint_if_available( + params=params, model=model, model_avg=model_avg + ) + + # make ema model + ema_model = copy.deepcopy(model) + ema_model.to(device) + if world_size > 1: + logging.info("Using DDP") + ema_model = DDP(ema_model, device_ids=[rank], find_unused_parameters=True) + ema_model.eval() + + model.to(device) + if world_size > 1: + logging.info("Using DDP") + model = DDP(model, device_ids=[rank], find_unused_parameters=True) + + if params.multi_optim: + logging.info("Using seperate optimizers over encoder, decoder ...") + + enc_param = [] + enc_names = [] + + dec_names = [] + dec_param = [] + + org_state_dict = {} + for n, p in model.named_parameters(): + org_state_dict[n] = p.data.clone() + + name = n.split('.')[1] + if name == 'encoder' and 'feature_extractor' not in n: + enc_names.append(n) + enc_param.append(p) + elif 'ctc_output' in n: + enc_names.append(n) + enc_param.append(p) + elif 'feature_extractor' not in n: + dec_names.append(n) + dec_param.append(p) + else: + dec_names.append(n) + dec_param.append(p) + + optimizer_enc = ScaledAdam( + enc_param, + lr=params.peak_enc_lr, + clipping_scale=None, + parameters_names=[enc_names], + ) + optimizer_dec = ScaledAdam( + dec_param, + lr=params.peak_dec_lr, + clipping_scale=5.0, + parameters_names=[dec_names], + ) + + scheduler_enc = Eden(optimizer_enc, params.lr_batches, params.lr_epochs) + scheduler_dec = Eden(optimizer_dec, params.lr_batches, params.lr_epochs) + optimizer = [optimizer_enc, optimizer_dec] + scheduler = [scheduler_enc, scheduler_dec] + + else: + parameters_names = [] + parameters_names.append( + [name_param_pair[0] for name_param_pair in model.named_parameters()] + ) + + logging.info(f"len name = {len(parameters_names)}") + logging.info(f"len param = {len(list(model.parameters()))}") + + optimizer = ScaledAdam( + model.parameters(), + lr=params.base_lr, + clipping_scale=2.0, + parameters_names=parameters_names, + ) + + scheduler = Eden(optimizer, params.lr_batches, params.lr_epochs) + + if checkpoints and ("optimizer" in checkpoints or "optimizer_enc" in checkpoints): + if params.multi_optim: + logging.info("Loading optimizer state dict") + optimizer_enc.load_state_dict(checkpoints["optimizer_enc"]) + optimizer_dec.load_state_dict(checkpoints["optimizer_dec"]) + + else: + logging.info("Loading optimizer state dict") + optimizer.load_state_dict(checkpoints["optimizer"]) + + if checkpoints: + if ( + params.multi_optim + and "scheduler_enc" in checkpoints + and checkpoints["scheduler_enc"] is not None + ): + logging.info("Loading enc/dec scheduler state dict") + scheduler_enc.load_state_dict(checkpoints["scheduler_enc"]) + scheduler_dec.load_state_dict(checkpoints["scheduler_dec"]) + else: + logging.info("Loading scheduler state dict") + scheduler.load_state_dict(checkpoints["scheduler"]) + + if params.print_diagnostics: + opts = diagnostics.TensorDiagnosticOptions( + 2**22 + ) # allow 4 megabytes per sub-module + diagnostic = diagnostics.attach_diagnostics(model, opts) + + if params.inf_check: + register_inf_check_hooks(model) + + ljspeech = LJSpeechAsrDataModule(args) + + train_cuts = ljspeech.train_cuts(pseudo=args.use_pseudo_labels) + + def remove_short_and_long_utt(c: Cut): + # Keep only utterances with duration between 1 second and 20 seconds + # + # Caution: There is a reason to select 20.0 here. Please see + # ../local/display_manifest_statistics.py + # + # You should use ../local/display_manifest_statistics.py to get + # an utterance duration distribution for your dataset to select + # the threshold + return 1.0 <= c.duration <= 20.0 + + train_cuts = train_cuts.filter(remove_short_and_long_utt) + + if params.start_batch > 0 and checkpoints and "sampler" in checkpoints: + # We only load the sampler's state dict when it loads a checkpoint + # saved in the middle of an epoch + sampler_state_dict = checkpoints["sampler"] + else: + sampler_state_dict = None + + train_dl = ljspeech.train_dataloaders( + train_cuts, sampler_state_dict=sampler_state_dict + ) + + valid_cuts = ljspeech.dev_cuts() + valid_dl = ljspeech.valid_dataloaders(valid_cuts) + + ''' + if not params.print_diagnostics: + scan_pessimistic_batches_for_oom( + model=model, + train_dl=train_dl, + optimizer=optimizer, + sp=sp, + params=params, + ) + ''' + + scaler = GradScaler(enabled=params.use_fp16, init_scale=1.0) + if checkpoints and "grad_scaler" in checkpoints: + logging.info("Loading grad scaler state dict") + scaler.load_state_dict(checkpoints["grad_scaler"]) + + for epoch in range(params.start_epoch, params.num_epochs + 1): + if params.multi_optim: + scheduler_enc.step_epoch(epoch - 1) + scheduler_dec.step_epoch(epoch - 1) + else: + scheduler.step_epoch(epoch - 1) + fix_random_seed(params.seed + epoch - 1) + train_dl.sampler.set_epoch(epoch - 1) + + if tb_writer is not None: + tb_writer.add_scalar("train/epoch", epoch, params.batch_idx_train) + + params.cur_epoch = epoch + + train_one_epoch( + params=params, + model=model, + ema_model=ema_model, + model_avg=model_avg, + optimizer=optimizer, + scheduler=scheduler, + sp=sp, + train_dl=train_dl, + valid_dl=valid_dl, + scaler=scaler, + tb_writer=tb_writer, + world_size=world_size, + rank=rank, + wb=wb, + ) + + # TODO: argument + if params.update_ema: + with torch.no_grad(): + ema_decay = 0.999 + ema_end_decay = 0.99999 + start_weight = 1 - (params.cur_epoch / params.num_epochs) + end_weight = 1 - start_weight + alpha = start_weight * ema_decay + end_weight * ema_end_decay + + stu_state_dict = {} + for name, p in model.named_parameters(): + stu_state_dict[name] = p + + for name, p in ema_model.named_parameters(): + p_org = stu_state_dict[name] + p.copy_(alpha * p.data + (1 - alpha) * p_org) + + # initialize_param_list = ["ctc_output.1.bias","ctc_output.1.weight","decoder.conv.weight","decoder.embedding.weight","encoder.encoders.encoder.layers.10.self_attn.k_proj.bias","encoder.encoders.encoder.layers.11.self_attn.k_proj.bias","encoder.encoders.encoder.layers.9.self_attn.k_proj.bias","encoder.output_layer.0.bias","encoder.output_layer.0.weight","encoder.output_layer.1.weight","joiner.decoder_proj.bias","joiner.decoder_proj.weight","joiner.encoder_proj.bias","joiner.encoder_proj.weight","joiner.output_linear.bias","joiner.output_linear.weight","simple_am_proj.bias","simple_am_proj.weight","simple_lm_proj.bias","simple_lm_proj.weight"] + # for name, p in model.named_parameters(): + # if name in initialize_param_list: + # p_org = org_state_dict[name] + # p.copy_(alpha * p.data + (1 - alpha) * p_org) + # org_state_dict[name] = p.data.clone() + + if params.print_diagnostics: + diagnostic.print_diagnostics() + break + + save_checkpoint( + params=params, + model=model, + model_avg=model_avg, + optimizer=optimizer, + scheduler=scheduler, + sampler=train_dl.sampler, + scaler=scaler, + rank=rank, + ) + + logging.info("Done!") + + if world_size > 1: + torch.distributed.barrier() + cleanup_dist() + + +def display_and_save_batch( + batch: dict, + params: AttributeDict, + sp: spm.SentencePieceProcessor, +) -> None: + """Display the batch statistics and save the batch into disk. + + Args: + batch: + A batch of data. See `lhotse.dataset.K2SpeechRecognitionDataset()` + for the content in it. + params: + Parameters for training. See :func:`get_params`. + sp: + The BPE model. + """ + from lhotse.utils import uuid4 + + filename = f"{params.exp_dir}/batch-{uuid4()}.pt" + logging.info(f"Saving batch to {filename}") + torch.save(batch, filename) + + supervisions = batch["supervisions"] + features = batch["inputs"] + + logging.info(f"features shape: {features.shape}") + + y = sp.encode(supervisions["text"], out_type=int) + num_tokens = sum(len(i) for i in y) + logging.info(f"num tokens: {num_tokens}") + + +def scan_pessimistic_batches_for_oom( + model: Union[nn.Module, DDP], + train_dl: torch.utils.data.DataLoader, + optimizer: torch.optim.Optimizer, + sp: spm.SentencePieceProcessor, + params: AttributeDict, +): + from lhotse.dataset import find_pessimistic_batches + + logging.info( + "Sanity check -- see if any of the batches in epoch 1 would cause OOM." + ) + batches, crit_values = find_pessimistic_batches(train_dl.sampler) + for criterion, cuts in batches.items(): + batch = train_dl.dataset[cuts] + try: + with torch.cuda.amp.autocast(enabled=params.use_fp16): + loss, _ = compute_loss( + params=params, + model=model, + ema_model=ema_model, + sp=sp, + batch=batch, + is_training=True, + ) + loss.backward() + optimizer.zero_grad() + except Exception as e: + if "CUDA out of memory" in str(e): + logging.error( + "Your GPU ran out of memory with the current " + "max_duration setting. We recommend decreasing " + "max_duration and trying again.\n" + f"Failing criterion: {criterion} " + f"(={crit_values[criterion]}) ..." + ) + display_and_save_batch(batch, params=params, sp=sp) + raise + logging.info( + f"Maximum memory allocated so far is {torch.cuda.max_memory_allocated()//1000000}MB" + ) + + +def main(): + parser = get_parser() + LJSpeechAsrDataModule.add_arguments(parser) + args = parser.parse_args() + #args.exp_dir = args.exp_dir + str(random.randint(0,400)) + args.exp_dir = Path(args.exp_dir) + + logging.info("save arguments to config.yaml...") + save_args(args) + + if args.wandb: wb = wandb.init(project="d2v-T", entity="dohe0342", config=vars(args)) + else: wb = None + + world_size = args.world_size + assert world_size >= 1 + if world_size > 1: + mp.spawn(run, args=(world_size, args, wb), nprocs=world_size, join=True) + else: + run(rank=0, world_size=1, args=args, wb=wb) + + +torch.set_num_threads(1) +torch.set_num_interop_threads(1) + +if __name__ == "__main__": + main() diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/config.yaml b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/config.yaml new file mode 100644 index 000000000..304f42126 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/config.yaml @@ -0,0 +1,65 @@ +world_size: 4 +master_port: 12354 +tensorboard: True +num_epochs: 60 +start_epoch: 1 +start_batch: 0 +exp_dir: transducer_unsupervised_finetuning_d2v_v2/d2v-T-LJft +bpe_model: data/lang_bpe_500/bpe.model +base_lr: 0.05 +lr_batches: 5000 +lr_epochs: 3.5 +context_size: 2 +prune_range: 5 +lm_scale: 0.25 +am_scale: 0.0 +simple_loss_scale: 0.5 +ctc_loss_scale: 0.2 +seed: 42 +print_diagnostics: False +inf_check: False +save_every_n: 2000 +keep_last_k: 30 +average_period: 200 +use_fp16: True +num_encoder_layers: 2,4,3,2,4 +feedforward_dims: 1024,1024,2048,2048,1024 +nhead: 8,8,8,8,8 +encoder_dims: 384,384,384,384,384 +attention_dims: 192,192,192,192,192 +encoder_unmasked_dims: 256,256,256,256,256 +zipformer_downsampling_factors: 1,2,4,8,2 +cnn_module_kernels: 31,31,31,31,31 +decoder_dim: 768 +joiner_dim: 768 +wandb: False +accum_grads: 16 +multi_optim: True +peak_enc_lr: 0.0003859 +peak_dec_lr: 0.04175 +encoder_type: d2v +encoder_dim: 768 +freeze_finetune_updates: 1000 +additional_block: True +decode_interval: 200 +load_prefinetuned_model: ./model_locked/libri_finetuned.pt +use_pseudo_labels: True +update_ema: True +layer_average: False +full_libri: False +manifest_dir: data/fbank +max_duration: 150 +bucketing_sampler: True +num_buckets: 30 +concatenate_cuts: False +duration_factor: 1.0 +gap: 1.0 +on_the_fly_feats: False +shuffle: True +drop_last: True +return_cuts: True +num_workers: 2 +enable_spec_aug: False +spec_aug_time_warp_factor: 80 +enable_musan: True +input_strategy: AudioSamples diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/run.sh b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/run.sh new file mode 100755 index 000000000..283cd8eaa --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/run.sh @@ -0,0 +1,74 @@ +#!/usr/bin/env bash + +# fix segmentation fault reported in https://github.com/k2-fsa/icefall/issues/674 +export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python +. ../../../tools/activate_python.sh + +set -eou pipefail + +stage=0 +stop_stage=100 + +model=pruned_transducer_stateless_w2v +world_size=4 + +. shared/parse_options.sh || exit 1 + +log() { + # This function is from espnet + local fname=${BASH_SOURCE[1]##*/} + echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*" +} + +if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then + log "Stage 0: Train model" + ./pruned_transducer_stateless_d2v_v2/train.py \ + --wandb False \ + --use-pseudo-labels True \ + --load-prefinetuned-model ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-pseudo-trained/libri_finetuned.pt \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --multi-optim True \ + --start-epoch 1 \ + --world-size 4 \ + --num-epochs 30 \ + --exp-dir ./pruned_transducer_stateless_d2v_v2/d2v-T-LJft \ + --max-duration 150 \ + --freeze-finetune-updates 0 \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 \ + --use-fp16 1 \ + --accum-grads 16 \ + --encoder-type d2v \ + --additional-block True \ + --prune-range 10 \ + --context-size 2 \ + --ctc-loss-scale 0.2 \ + --peak-dec-lr 0.04175 \ + --peak-enc-lr 0.0003859 \ + --update-ema False \ + --layer-average False +fi + +if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then + log "Stage 1: Decoding" + # modified_beam_search, greedy_search, ctc_greedy_search + expdir=./pruned_transducer_stateless_d2v_v2/d2v-T-LJft-oracle-epoch100 + for method in ctc_greedy_search; do + ./pruned_transducer_stateless_d2v_v2/decode.py \ + --gen-pseudo-label False \ + --input-strategy AudioSamples \ + --enable-spec-aug False \ + --additional-block True \ + --model-name best-valid-loss.pt \ + --exp-dir $expdir \ + --max-duration 400 \ + --decoding-method $method \ + --max-sym-per-frame 1 \ + --encoder-type d2v \ + --encoder-dim 768 \ + --decoder-dim 768 \ + --joiner-dim 768 + done +fi \ No newline at end of file diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/tensorboard/events.out.tfevents.1674065530.icefall.778651.0 b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/unsup_LJft_trial2/tensorboard/events.out.tfevents.1674065530.icefall.778651.0 new file mode 100644 index 0000000000000000000000000000000000000000..8b3af5a5cb5df769ed864313a31dbabc416da7a7 GIT binary patch literal 23637 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/zipformer.py b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/zipformer.py new file mode 100755 index 000000000..b007a7308 --- /dev/null +++ b/egs/LJSpeech/ASR/transducer_unsupervised_finetuning_d2v_v2/zipformer.py @@ -0,0 +1,1866 @@ +#!/usr/bin/env python3 +# Copyright (c) 2021 University of Chinese Academy of Sciences (author: Han Zhu) +# +# See ../../../../LICENSE for clarification regarding multiple authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import copy +import itertools +import logging +import math +import random +import warnings +from typing import List, Optional, Tuple, Union + +import torch +from encoder_interface import EncoderInterface +from scaling import ( + ScaledLinear, # not as in other dirs.. just scales down initial parameter values. +) +from scaling import ( + ActivationBalancer, + BasicNorm, + DoubleSwish, + Identity, + MaxEig, + ScaledConv1d, + Whiten, + _diag, + penalize_abs_values_gt, + random_clamp, + softmax, +) +from torch import Tensor, nn + +from icefall.dist import get_rank +from icefall.utils import make_pad_mask + + +class Zipformer(EncoderInterface): + """ + Args: + num_features (int): Number of input features + d_model: (int,int): embedding dimension of 2 encoder stacks + attention_dim: (int,int): attention dimension of 2 encoder stacks + nhead (int, int): number of heads + dim_feedforward (int, int): feedforward dimension in 2 encoder stacks + num_encoder_layers (int): number of encoder layers + dropout (float): dropout rate + cnn_module_kernel (int): Kernel size of convolution module + vgg_frontend (bool): whether to use vgg frontend. + warmup_batches (float): number of batches to warm up over + """ + + def __init__( + self, + num_features: int, + output_downsampling_factor: int = 2, + encoder_dims: Tuple[int] = (384, 384), + attention_dim: Tuple[int] = (256, 256), + encoder_unmasked_dims: Tuple[int] = (256, 256), + zipformer_downsampling_factors: Tuple[int] = (2, 4), + nhead: Tuple[int] = (8, 8), + feedforward_dim: Tuple[int] = (1536, 2048), + num_encoder_layers: Tuple[int] = (12, 12), + dropout: float = 0.1, + cnn_module_kernels: Tuple[int] = (31, 31), + pos_dim: int = 4, + warmup_batches: float = 4000.0, + ) -> None: + super(Zipformer, self).__init__() + + self.num_features = num_features + self.encoder_unmasked_dims = encoder_unmasked_dims + assert 0 < encoder_dims[0] <= encoder_dims[1] + self.encoder_dims = encoder_dims + self.encoder_unmasked_dims = encoder_unmasked_dims + self.zipformer_downsampling_factors = zipformer_downsampling_factors + self.output_downsampling_factor = output_downsampling_factor + + # will be written to, see set_batch_count() + self.batch_count = 0 + self.warmup_end = warmup_batches + + for u, d in zip(encoder_unmasked_dims, encoder_dims): + assert u <= d, (u, d) + + # self.encoder_embed converts the input of shape (N, T, num_features) + # to the shape (N, (T - 7)//2, encoder_dims). + # That is, it does two things simultaneously: + # (1) subsampling: T -> (T - 7)//2 + # (2) embedding: num_features -> encoder_dims + self.encoder_embed = Conv2dSubsampling( + num_features, encoder_dims[0], dropout=dropout + ) + + # each one will be ZipformerEncoder or DownsampledZipformerEncoder + encoders = [] + + num_encoders = len(encoder_dims) + for i in range(num_encoders): + encoder_layer = ZipformerEncoderLayer( + encoder_dims[i], + attention_dim[i], + nhead[i], + feedforward_dim[i], + dropout, + cnn_module_kernels[i], + pos_dim, + ) + + # For the segment of the warmup period, we let the Conv2dSubsampling + # layer learn something. Then we start to warm up the other encoders. + encoder = ZipformerEncoder( + encoder_layer, + num_encoder_layers[i], + dropout, + warmup_begin=warmup_batches * (i + 1) / (num_encoders + 1), + warmup_end=warmup_batches * (i + 2) / (num_encoders + 1), + ) + + if zipformer_downsampling_factors[i] != 1: + encoder = DownsampledZipformerEncoder( + encoder, + input_dim=encoder_dims[i - 1] if i > 0 else encoder_dims[0], + output_dim=encoder_dims[i], + downsample=zipformer_downsampling_factors[i], + ) + encoders.append(encoder) + self.encoders = nn.ModuleList(encoders) + + # initializes self.skip_layers and self.skip_modules + self._init_skip_modules() + + self.downsample_output = AttentionDownsample( + encoder_dims[-1], encoder_dims[-1], downsample=output_downsampling_factor + ) + + def _get_layer_skip_dropout_prob(self): + if not self.training: + return 0.0 + batch_count = self.batch_count + min_dropout_prob = 0.025 + + if batch_count > self.warmup_end: + return min_dropout_prob + else: + return 0.5 - (batch_count / self.warmup_end) * (0.5 - min_dropout_prob) + + def _init_skip_modules(self): + """ + If self.zipformer_downampling_factors = (1, 2, 4, 8, 4, 2), then at the input of layer + indexed 4 (in zero indexing), with has subsapling_factor=4, we combine the output of + layers 2 and 3; and at the input of layer indexed 5, which which has subsampling_factor=2, + we combine the outputs of layers 1 and 5. + """ + skip_layers = [] + skip_modules = [] + z = self.zipformer_downsampling_factors + for i in range(len(z)): + if i <= 1 or z[i - 1] <= z[i]: + skip_layers.append(None) + skip_modules.append(SimpleCombinerIdentity()) + else: + # TEMP + for j in range(i - 2, -1, -1): + if z[j] <= z[i] or j == 0: + # TEMP logging statement. + logging.info( + f"At encoder stack {i}, which has downsampling_factor={z[i]}, we will " + f"combine the outputs of layers {j} and {i-1}, with downsampling_factors={z[j]} and {z[i-1]}." + ) + skip_layers.append(j) + skip_modules.append( + SimpleCombiner( + self.encoder_dims[j], + self.encoder_dims[i - 1], + min_weight=(0.0, 0.25), + ) + ) + break + self.skip_layers = skip_layers + self.skip_modules = nn.ModuleList(skip_modules) + + def get_feature_masks(self, x: torch.Tensor) -> List[float]: + # Note: The actual return type is Union[List[float], List[Tensor]], + # but to make torch.jit.script() work, we use List[float] + """ + In eval mode, returns [1.0] * num_encoders; in training mode, returns a number of + randomized feature masks, one per encoder. + On e.g. 15% of frames, these masks will zero out all enocder dims larger than + some supplied number, e.g. >256, so in effect on those frames we are using + a smaller encoer dim. + + We generate the random masks at this level because we want the 2 masks to 'agree' + all the way up the encoder stack. This will mean that the 1st mask will have + mask values repeated self.zipformer_subsampling_factor times. + + Args: + x: the embeddings (needed for the shape and dtype and device), of shape + (num_frames, batch_size, encoder_dims0) + """ + num_encoders = len(self.encoder_dims) + if torch.jit.is_scripting() or not self.training: + return [1.0] * num_encoders + + (num_frames0, batch_size, _encoder_dims0) = x.shape + + assert self.encoder_dims[0] == _encoder_dims0, ( + self.encoder_dims, + _encoder_dims0, + ) + + max_downsampling_factor = max(self.zipformer_downsampling_factors) + + num_frames_max = num_frames0 + max_downsampling_factor - 1 + + feature_mask_dropout_prob = 0.15 + + # frame_mask_max shape: (num_frames_max, batch_size, 1) + frame_mask_max = ( + torch.rand(num_frames_max, batch_size, 1, device=x.device) + > feature_mask_dropout_prob + ).to(x.dtype) + + feature_masks = [] + for i in range(num_encoders): + ds = self.zipformer_downsampling_factors[i] + upsample_factor = max_downsampling_factor // ds + + frame_mask = ( + frame_mask_max.unsqueeze(1) + .expand(num_frames_max, upsample_factor, batch_size, 1) + .reshape(num_frames_max * upsample_factor, batch_size, 1) + ) + num_frames = (num_frames0 + ds - 1) // ds + frame_mask = frame_mask[:num_frames] + feature_mask = torch.ones( + num_frames, + batch_size, + self.encoder_dims[i], + dtype=x.dtype, + device=x.device, + ) + u = self.encoder_unmasked_dims[i] + feature_mask[:, :, u:] *= frame_mask + feature_masks.append(feature_mask) + + return feature_masks + + def forward( + self, + x: torch.Tensor, + x_lens: torch.Tensor, + ) -> Tuple[torch.Tensor, torch.Tensor]: + """ + Args: + x: + The input tensor. Its shape is (batch_size, seq_len, feature_dim). + x_lens: + A tensor of shape (batch_size,) containing the number of frames in + `x` before padding. + Returns: + Return a tuple containing 2 tensors: + - embeddings: its shape is (batch_size, output_seq_len, encoder_dims[-1]) + - lengths, a tensor of shape (batch_size,) containing the number + of frames in `embeddings` before padding. + """ + x = self.encoder_embed(x) + + x = x.permute(1, 0, 2) # (N, T, C) -> (T, N, C) + + lengths = (x_lens - 7) >> 1 + assert x.size(0) == lengths.max().item(), (x.shape, lengths, lengths.max()) + mask = make_pad_mask(lengths) + + outputs = [] + feature_masks = self.get_feature_masks(x) + + for i, (module, skip_module) in enumerate( + zip(self.encoders, self.skip_modules) + ): + ds = self.zipformer_downsampling_factors[i] + k = self.skip_layers[i] + if isinstance(k, int): + layer_skip_dropout_prob = self._get_layer_skip_dropout_prob() + if torch.jit.is_scripting(): + x = skip_module(outputs[k], x) + elif (not self.training) or random.random() > layer_skip_dropout_prob: + x = skip_module(outputs[k], x) + x = module( + x, + feature_mask=feature_masks[i], + src_key_padding_mask=None if mask is None else mask[..., ::ds], + ) + outputs.append(x) + + x = self.downsample_output(x) + # class Downsample has this rounding behavior.. + assert self.output_downsampling_factor == 2, self.output_downsampling_factor + lengths = (lengths + 1) >> 1 + + x = x.permute(1, 0, 2) # (T, N, C) ->(N, T, C) + + return x, lengths + + +class ZipformerEncoderLayer(nn.Module): + """ + ZipformerEncoderLayer is made up of self-attn, feedforward and convolution networks. + + Args: + d_model: the number of expected features in the input (required). + nhead: the number of heads in the multiheadattention models (required). + feedforward_dim: the dimension of the feedforward network model (default=2048). + dropout: the dropout value (default=0.1). + cnn_module_kernel (int): Kernel size of convolution module. + + Examples:: + >>> encoder_layer = ZipformerEncoderLayer(d_model=512, nhead=8) + >>> src = torch.rand(10, 32, 512) + >>> pos_emb = torch.rand(32, 19, 512) + >>> out = encoder_layer(src, pos_emb) + """ + + def __init__( + self, + d_model: int, + attention_dim: int, + nhead: int, + feedforward_dim: int = 2048, + dropout: float = 0.1, + cnn_module_kernel: int = 31, + pos_dim: int = 4, + ) -> None: + super(ZipformerEncoderLayer, self).__init__() + + self.d_model = d_model + + # will be written to, see set_batch_count() + self.batch_count = 0 + + self.self_attn = RelPositionMultiheadAttention( + d_model, + attention_dim, + nhead, + pos_dim, + dropout=0.0, + ) + + self.pooling = PoolingModule(d_model) + + self.feed_forward1 = FeedforwardModule(d_model, feedforward_dim, dropout) + + self.feed_forward2 = FeedforwardModule(d_model, feedforward_dim, dropout) + + self.feed_forward3 = FeedforwardModule(d_model, feedforward_dim, dropout) + + self.conv_module1 = ConvolutionModule(d_model, cnn_module_kernel) + + self.conv_module2 = ConvolutionModule(d_model, cnn_module_kernel) + + self.norm_final = BasicNorm(d_model) + + self.bypass_scale = nn.Parameter(torch.tensor(0.5)) + + # try to ensure the output is close to zero-mean (or at least, zero-median). + self.balancer = ActivationBalancer( + d_model, + channel_dim=-1, + min_positive=0.45, + max_positive=0.55, + max_abs=6.0, + ) + self.whiten = Whiten( + num_groups=1, whitening_limit=5.0, prob=(0.025, 0.25), grad_scale=0.01 + ) + + def get_bypass_scale(self): + if torch.jit.is_scripting() or not self.training: + return self.bypass_scale + if random.random() < 0.1: + # ensure we get grads if self.bypass_scale becomes out of range + return self.bypass_scale + # hardcode warmup period for bypass scale + warmup_period = 20000.0 + initial_clamp_min = 0.75 + final_clamp_min = 0.25 + if self.batch_count > warmup_period: + clamp_min = final_clamp_min + else: + clamp_min = initial_clamp_min - (self.batch_count / warmup_period) * ( + initial_clamp_min - final_clamp_min + ) + return self.bypass_scale.clamp(min=clamp_min, max=1.0) + + def get_dynamic_dropout_rate(self): + # return dropout rate for the dynamic modules (self_attn, pooling, convolution); this + # starts at 0.2 and rapidly decreases to 0. Its purpose is to keep the training stable + # at the beginning, by making the network focus on the feedforward modules. + if torch.jit.is_scripting() or not self.training: + return 0.0 + warmup_period = 2000.0 + initial_dropout_rate = 0.2 + final_dropout_rate = 0.0 + if self.batch_count > warmup_period: + return final_dropout_rate + else: + return initial_dropout_rate - ( + initial_dropout_rate * final_dropout_rate + ) * (self.batch_count / warmup_period) + + def forward( + self, + src: Tensor, + pos_emb: Tensor, + src_mask: Optional[Tensor] = None, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + """ + Pass the input through the encoder layer. + + Args: + src: the sequence to the encoder layer (required). + pos_emb: Positional embedding tensor (required). + src_mask: the mask for the src sequence (optional). + src_key_padding_mask: the mask for the src keys per batch (optional). + batch_split: if not None, this layer will only be applied to + + Shape: + src: (S, N, E). + pos_emb: (N, 2*S-1, E) + src_mask: (S, S). + src_key_padding_mask: (N, S). + S is the source sequence length, N is the batch size, E is the feature number + """ + src_orig = src + + # macaron style feed forward module + src = src + self.feed_forward1(src) + + # dropout rate for submodules that interact with time. + dynamic_dropout = self.get_dynamic_dropout_rate() + + # pooling module + if torch.jit.is_scripting(): + src = src + self.pooling(src, key_padding_mask=src_key_padding_mask) + elif random.random() > dynamic_dropout: + src = src + self.pooling(src, key_padding_mask=src_key_padding_mask) + + if torch.jit.is_scripting(): + src_att, attn_weights = self.self_attn( + src, + pos_emb=pos_emb, + attn_mask=src_mask, + key_padding_mask=src_key_padding_mask, + ) + src = src + src_att + + src = src + self.conv_module1( + src, src_key_padding_mask=src_key_padding_mask + ) + + src = src + self.feed_forward2(src) + + src = src + self.self_attn.forward2(src, attn_weights) + + src = src + self.conv_module2( + src, src_key_padding_mask=src_key_padding_mask + ) + else: + use_self_attn = random.random() > dynamic_dropout + if use_self_attn: + src_att, attn_weights = self.self_attn( + src, + pos_emb=pos_emb, + attn_mask=src_mask, + key_padding_mask=src_key_padding_mask, + ) + src = src + src_att + + if random.random() > dynamic_dropout: + src = src + self.conv_module1( + src, src_key_padding_mask=src_key_padding_mask + ) + + src = src + self.feed_forward2(src) + if use_self_attn: + src = src + self.self_attn.forward2(src, attn_weights) + + if random.random() > dynamic_dropout: + src = src + self.conv_module2( + src, src_key_padding_mask=src_key_padding_mask + ) + + src = src + self.feed_forward3(src) + + src = self.norm_final(self.balancer(src)) + + delta = src - src_orig + + src = src_orig + delta * self.get_bypass_scale() + + return self.whiten(src) + + +class ZipformerEncoder(nn.Module): + r"""ZipformerEncoder is a stack of N encoder layers + + Args: + encoder_layer: an instance of the ZipformerEncoderLayer() class (required). + num_layers: the number of sub-encoder-layers in the encoder (required). + + Examples:: + >>> encoder_layer = ZipformerEncoderLayer(d_model=512, nhead=8) + >>> zipformer_encoder = ZipformerEncoder(encoder_layer, num_layers=6) + >>> src = torch.rand(10, 32, 512) + >>> out = zipformer_encoder(src) + """ + + def __init__( + self, + encoder_layer: nn.Module, + num_layers: int, + dropout: float, + warmup_begin: float, + warmup_end: float, + ) -> None: + super().__init__() + # will be written to, see set_batch_count() Note: in inference time this + # may be zero but should be treated as large, we can check if + # self.training is true. + self.batch_count = 0 + self.warmup_begin = warmup_begin + self.warmup_end = warmup_end + # module_seed is for when we need a random number that is unique to the module but + # shared across jobs. It's used to randomly select how many layers to drop, + # so that we can keep this consistent across worker tasks (for efficiency). + self.module_seed = torch.randint(0, 1000, ()).item() + + self.encoder_pos = RelPositionalEncoding(encoder_layer.d_model, dropout) + + self.layers = nn.ModuleList( + [copy.deepcopy(encoder_layer) for i in range(num_layers)] + ) + self.num_layers = num_layers + + assert 0 <= warmup_begin <= warmup_end, (warmup_begin, warmup_end) + + delta = (1.0 / num_layers) * (warmup_end - warmup_begin) + cur_begin = warmup_begin + for i in range(num_layers): + self.layers[i].warmup_begin = cur_begin + cur_begin += delta + self.layers[i].warmup_end = cur_begin + + def get_layers_to_drop(self, rnd_seed: int): + ans = set() + if not self.training: + return ans + + batch_count = self.batch_count + num_layers = len(self.layers) + + def get_layerdrop_prob(layer: int) -> float: + layer_warmup_begin = self.layers[layer].warmup_begin + layer_warmup_end = self.layers[layer].warmup_end + + initial_layerdrop_prob = 0.5 + final_layerdrop_prob = 0.05 + + if batch_count == 0: + # As a special case, if batch_count == 0, return 0 (drop no + # layers). This is rather ugly, I'm afraid; it is intended to + # enable our scan_pessimistic_batches_for_oom() code to work correctly + # so if we are going to get OOM it will happen early. + # also search for 'batch_count' with quotes in this file to see + # how we initialize the warmup count to a random number between + # 0 and 10. + return 0.0 + elif batch_count < layer_warmup_begin: + return initial_layerdrop_prob + elif batch_count > layer_warmup_end: + return final_layerdrop_prob + else: + # linearly interpolate + t = (batch_count - layer_warmup_begin) / layer_warmup_end + assert 0.0 <= t < 1.001, t + return initial_layerdrop_prob + t * ( + final_layerdrop_prob - initial_layerdrop_prob + ) + + shared_rng = random.Random(batch_count + self.module_seed) + independent_rng = random.Random(rnd_seed) + + layerdrop_probs = [get_layerdrop_prob(i) for i in range(num_layers)] + tot = sum(layerdrop_probs) + # Instead of drawing the samples independently, we first randomly decide + # how many layers to drop out, using the same random number generator between + # jobs so that all jobs drop out the same number (this is for speed). + # Then we use an approximate approach to drop out the individual layers + # with their specified probs while reaching this exact target. + num_to_drop = int(tot) + int(shared_rng.random() < (tot - int(tot))) + + layers = list(range(num_layers)) + independent_rng.shuffle(layers) + + # go through the shuffled layers until we get the required number of samples. + if num_to_drop > 0: + for layer in itertools.cycle(layers): + if independent_rng.random() < layerdrop_probs[layer]: + ans.add(layer) + if len(ans) == num_to_drop: + break + if shared_rng.random() < 0.005 or __name__ == "__main__": + logging.info( + f"warmup_begin={self.warmup_begin:.1f}, warmup_end={self.warmup_end:.1f}, " + f"batch_count={batch_count:.1f}, num_to_drop={num_to_drop}, layers_to_drop={ans}" + ) + return ans + + def forward( + self, + src: Tensor, + # Note: The type of feature_mask should be Union[float, Tensor], + # but to make torch.jit.script() work, we use `float` here + feature_mask: float = 1.0, + mask: Optional[Tensor] = None, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + r"""Pass the input through the encoder layers in turn. + + Args: + src: the sequence to the encoder (required). + feature_mask: something that broadcasts with src, that we'll multiply `src` + by at every layer. + mask: the mask for the src sequence (optional). + src_key_padding_mask: the mask for the src keys per batch (optional). + + Shape: + src: (S, N, E). + pos_emb: (N, 2*S-1, E) + mask: (S, S). + src_key_padding_mask: (N, S). + S is the source sequence length, T is the target sequence length, N is the batch size, E is the feature number + + Returns: (x, x_no_combine), both of shape (S, N, E) + """ + pos_emb = self.encoder_pos(src) + output = src + + if torch.jit.is_scripting(): + layers_to_drop = [] + else: + rnd_seed = src.numel() + random.randint(0, 1000) + layers_to_drop = self.get_layers_to_drop(rnd_seed) + + output = output * feature_mask + + for i, mod in enumerate(self.layers): + if not torch.jit.is_scripting(): + if i in layers_to_drop: + continue + output = mod( + output, + pos_emb, + src_mask=mask, + src_key_padding_mask=src_key_padding_mask, + ) + + output = output * feature_mask + + return output + + +class DownsampledZipformerEncoder(nn.Module): + r""" + DownsampledZipformerEncoder is a zipformer encoder evaluated at a reduced frame rate, + after convolutional downsampling, and then upsampled again at the output, and combined + with the origin input, so that the output has the same shape as the input. + """ + + def __init__( + self, encoder: nn.Module, input_dim: int, output_dim: int, downsample: int + ): + super(DownsampledZipformerEncoder, self).__init__() + self.downsample_factor = downsample + self.downsample = AttentionDownsample(input_dim, output_dim, downsample) + self.encoder = encoder + self.upsample = SimpleUpsample(output_dim, downsample) + self.out_combiner = SimpleCombiner( + input_dim, output_dim, min_weight=(0.0, 0.25) + ) + + def forward( + self, + src: Tensor, + # Note: the type of feature_mask should be Unino[float, Tensor], + # but to make torch.jit.script() happ, we use float here + feature_mask: float = 1.0, + mask: Optional[Tensor] = None, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + r"""Downsample, go through encoder, upsample. + + Args: + src: the sequence to the encoder (required). + feature_mask: something that broadcasts with src, that we'll multiply `src` + by at every layer. feature_mask is expected to be already downsampled by + self.downsample_factor. + mask: the mask for the src sequence (optional). CAUTION: we need to downsample + this, if we are to support it. Won't work correctly yet. + src_key_padding_mask: the mask for the src keys per batch (optional). Should + be downsampled already. + + Shape: + src: (S, N, E). + mask: (S, S). + src_key_padding_mask: (N, S). + S is the source sequence length, T is the target sequence length, N is the batch size, E is the feature number + + Returns: output of shape (S, N, F) where F is the number of output features + (output_dim to constructor) + """ + src_orig = src + src = self.downsample(src) + ds = self.downsample_factor + if mask is not None: + mask = mask[::ds, ::ds] + + src = self.encoder( + src, + feature_mask=feature_mask, + mask=mask, + src_key_padding_mask=mask, + ) + src = self.upsample(src) + # remove any extra frames that are not a multiple of downsample_factor + src = src[: src_orig.shape[0]] + + return self.out_combiner(src_orig, src) + + +class AttentionDownsample(torch.nn.Module): + """ + Does downsampling with attention, by weighted sum, and a projection.. + """ + + def __init__(self, in_channels: int, out_channels: int, downsample: int): + """ + Require out_channels > in_channels. + """ + super(AttentionDownsample, self).__init__() + self.query = nn.Parameter(torch.randn(in_channels) * (in_channels**-0.5)) + + # fill in the extra dimensions with a projection of the input + if out_channels > in_channels: + self.extra_proj = nn.Linear( + in_channels * downsample, out_channels - in_channels, bias=False + ) + else: + self.extra_proj = None + self.downsample = downsample + + def forward(self, src: Tensor) -> Tensor: + """ + x: (seq_len, batch_size, in_channels) + Returns a tensor of shape + ( (seq_len+downsample-1)//downsample, batch_size, out_channels) + """ + (seq_len, batch_size, in_channels) = src.shape + ds = self.downsample + d_seq_len = (seq_len + ds - 1) // ds + + # Pad to an exact multiple of self.downsample + if seq_len != d_seq_len * ds: + # right-pad src, repeating the last element. + pad = d_seq_len * ds - seq_len + src_extra = src[src.shape[0] - 1 :].expand(pad, src.shape[1], src.shape[2]) + src = torch.cat((src, src_extra), dim=0) + assert src.shape[0] == d_seq_len * ds, (src.shape[0], d_seq_len, ds) + + src = src.reshape(d_seq_len, ds, batch_size, in_channels) + scores = (src * self.query).sum(dim=-1, keepdim=True) + + scores = penalize_abs_values_gt(scores, limit=10.0, penalty=1.0e-04) + + weights = scores.softmax(dim=1) + + # ans1 is the first `in_channels` channels of the output + ans = (src * weights).sum(dim=1) + src = src.permute(0, 2, 1, 3).reshape(d_seq_len, batch_size, ds * in_channels) + + if self.extra_proj is not None: + ans2 = self.extra_proj(src) + ans = torch.cat((ans, ans2), dim=2) + return ans + + +class SimpleUpsample(torch.nn.Module): + """ + A very simple form of upsampling that mostly just repeats the input, but + also adds a position-specific bias. + """ + + def __init__(self, num_channels: int, upsample: int): + super(SimpleUpsample, self).__init__() + self.bias = nn.Parameter(torch.randn(upsample, num_channels) * 0.01) + + def forward(self, src: Tensor) -> Tensor: + """ + x: (seq_len, batch_size, num_channels) + Returns a tensor of shape + ( (seq_len*upsample), batch_size, num_channels) + """ + upsample = self.bias.shape[0] + (seq_len, batch_size, num_channels) = src.shape + src = src.unsqueeze(1).expand(seq_len, upsample, batch_size, num_channels) + src = src + self.bias.unsqueeze(1) + src = src.reshape(seq_len * upsample, batch_size, num_channels) + return src + + +class SimpleCombinerIdentity(nn.Module): + def __init__(self, *args, **kwargs): + super().__init__() + + def forward(self, src1: Tensor, src2: Tensor) -> Tensor: + return src1 + + +class SimpleCombiner(torch.nn.Module): + """ + A very simple way of combining 2 vectors of 2 different dims, via a + learned weighted combination in the shared part of the dim. + Args: + dim1: the dimension of the first input, e.g. 256 + dim2: the dimension of the second input, e.g. 384. + The output will have the same dimension as dim2. + """ + + def __init__(self, dim1: int, dim2: int, min_weight: Tuple[float] = (0.0, 0.0)): + super(SimpleCombiner, self).__init__() + assert dim2 >= dim1, (dim2, dim1) + self.weight1 = nn.Parameter(torch.zeros(())) + self.min_weight = min_weight + + def forward(self, src1: Tensor, src2: Tensor) -> Tensor: + """ + src1: (*, dim1) + src2: (*, dim2) + + Returns: a tensor of shape (*, dim2) + """ + assert src1.shape[:-1] == src2.shape[:-1], (src1.shape, src2.shape) + + weight1 = self.weight1 + if not torch.jit.is_scripting(): + if ( + self.training + and random.random() < 0.25 + and self.min_weight != (0.0, 0.0) + ): + weight1 = weight1.clamp( + min=self.min_weight[0], max=1.0 - self.min_weight[1] + ) + + src1 = src1 * weight1 + src2 = src2 * (1.0 - weight1) + + src1_dim = src1.shape[-1] + src2_dim = src2.shape[-1] + if src1_dim != src2_dim: + if src1_dim < src2_dim: + src1 = torch.nn.functional.pad(src1, (0, src2_dim - src1_dim)) + else: + src1 = src1[:src2_dim] + + return src1 + src2 + + +class RelPositionalEncoding(torch.nn.Module): + """Relative positional encoding module. + + See : Appendix B in "Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context" + Modified from https://github.com/espnet/espnet/blob/master/espnet/nets/pytorch_backend/transformer/embedding.py + + Args: + d_model: Embedding dimension. + dropout_rate: Dropout rate. + max_len: Maximum input length. + + """ + + def __init__(self, d_model: int, dropout_rate: float, max_len: int = 5000) -> None: + """Construct a PositionalEncoding object.""" + super(RelPositionalEncoding, self).__init__() + self.d_model = d_model + self.dropout = torch.nn.Dropout(dropout_rate) + self.pe = None + self.extend_pe(torch.tensor(0.0).expand(1, max_len)) + + def extend_pe(self, x: Tensor) -> None: + """Reset the positional encodings.""" + if self.pe is not None: + # self.pe contains both positive and negative parts + # the length of self.pe is 2 * input_len - 1 + if self.pe.size(1) >= x.size(0) * 2 - 1: + # Note: TorchScript doesn't implement operator== for torch.Device + if self.pe.dtype != x.dtype or str(self.pe.device) != str(x.device): + self.pe = self.pe.to(dtype=x.dtype, device=x.device) + return + # Suppose `i` means to the position of query vecotr and `j` means the + # position of key vector. We use position relative positions when keys + # are to the left (i>j) and negative relative positions otherwise (i Tensor: + """Add positional encoding. + + Args: + x (torch.Tensor): Input tensor (time, batch, `*`). + + Returns: + torch.Tensor: Encoded tensor (batch, time, `*`). + torch.Tensor: Encoded tensor (batch, 2*time-1, `*`). + + """ + self.extend_pe(x) + pos_emb = self.pe[ + :, + self.pe.size(1) // 2 + - x.size(0) + + 1 : self.pe.size(1) // 2 # noqa E203 + + x.size(0), + ] + return self.dropout(pos_emb) + + +class RelPositionMultiheadAttention(nn.Module): + r"""Multi-Head Attention layer with relative position encoding + + This is a quite heavily modified from: "Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context", + we have to write up the differences. + + + Args: + embed_dim: total dimension of the model. + attention_dim: dimension in the attention module, may be less or more than embed_dim + but must be a multiple of num_heads. + num_heads: parallel attention heads. + dropout: a Dropout layer on attn_output_weights. Default: 0.0. + + Examples:: + + >>> rel_pos_multihead_attn = RelPositionMultiheadAttention(embed_dim, num_heads) + >>> attn_output, attn_output_weights = multihead_attn(query, key, value, pos_emb) + """ + + def __init__( + self, + embed_dim: int, + attention_dim: int, + num_heads: int, + pos_dim: int, + dropout: float = 0.0, + ) -> None: + super(RelPositionMultiheadAttention, self).__init__() + self.embed_dim = embed_dim + self.attention_dim = attention_dim + self.num_heads = num_heads + self.dropout = dropout + self.head_dim = attention_dim // num_heads + self.pos_dim = pos_dim + assert self.head_dim % 2 == 0, self.head_dim + assert self.head_dim * num_heads == attention_dim, ( + self.head_dim, + num_heads, + attention_dim, + ) + + # the initial_scale is supposed to take over the "scaling" factor of + # head_dim ** -0.5, dividing it between the query and key. + in_proj_dim = ( + 2 * attention_dim + + attention_dim // 2 # query, key + + pos_dim * num_heads # value + ) # positional encoding query + + self.in_proj = ScaledLinear( + embed_dim, in_proj_dim, bias=True, initial_scale=self.head_dim**-0.25 + ) + + # self.whiten_values is applied on the values in forward(); + # it just copies the keys but prevents low-rank distribution by modifying grads. + self.whiten_values = Whiten( + num_groups=num_heads, + whitening_limit=2.0, + prob=(0.025, 0.25), + grad_scale=0.025, + ) + self.whiten_keys = Whiten( + num_groups=num_heads, + whitening_limit=2.0, + prob=(0.025, 0.25), + grad_scale=0.025, + ) + + # linear transformation for positional encoding. + self.linear_pos = ScaledLinear( + embed_dim, num_heads * pos_dim, bias=False, initial_scale=0.05 + ) + + # the following are for diagnosics only, see --print-diagnostics option. + # they only copy their inputs. + self.copy_pos_query = Identity() + self.copy_query = Identity() + + self.out_proj = ScaledLinear( + attention_dim // 2, embed_dim, bias=True, initial_scale=0.05 + ) + + self.in_proj2 = nn.Linear(embed_dim, attention_dim // 2, bias=False) + self.out_proj2 = ScaledLinear( + attention_dim // 2, embed_dim, bias=True, initial_scale=0.05 + ) + # self.whiten_values2 is applied on the values in forward2() + self.whiten_values2 = Whiten( + num_groups=num_heads, + whitening_limit=2.0, + prob=(0.025, 0.25), + grad_scale=0.025, + ) + + def forward( + self, + x: Tensor, + pos_emb: Tensor, + key_padding_mask: Optional[Tensor] = None, + attn_mask: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor]: + r""" + Args: + x: input to be projected to query, key, value + pos_emb: Positional embedding tensor + key_padding_mask: if provided, specified padding elements in the key will + be ignored by the attention. When given a binary mask and a value is True, + the corresponding value on the attention layer will be ignored. When given + a byte mask and a value is non-zero, the corresponding value on the attention + layer will be ignored + attn_mask: 2D or 3D mask that prevents attention to certain positions. A 2D mask will be broadcasted for all + the batches while a 3D mask allows to specify a different mask for the entries of each batch. + + Shape: + - Inputs: + - x: :math:`(L, N, E)` where L is the target sequence length, N is the batch size, E is + the embedding dimension. + - pos_emb: :math:`(N, 2*L-1, E)` where L is the target sequence length, N is the batch size, E is + the embedding dimension. + - key_padding_mask: :math:`(N, S)` where N is the batch size, S is the source sequence length. + If a ByteTensor is provided, the non-zero positions will be ignored while the position + with the zero positions will be unchanged. If a BoolTensor is provided, the positions with the + value of ``True`` will be ignored while the position with the value of ``False`` will be unchanged. + - attn_mask: 2D mask :math:`(L, S)` where L is the target sequence length, S is the source sequence length. + 3D mask :math:`(N*num_heads, L, S)` where N is the batch size, L is the target sequence length, + S is the source sequence length. attn_mask ensure that position i is allowed to attend the unmasked + positions. If a ByteTensor is provided, the non-zero positions are not allowed to attend + while the zero positions will be unchanged. If a BoolTensor is provided, positions with ``True`` + is not allowed to attend while ``False`` values will be unchanged. If a FloatTensor + is provided, it will be added to the attention weight. + + - Returns: (attn_output, attn_weights) + + - attn_output: :math:`(S, N, E)` where S is the sequence length, N is the batch size, + E is the embedding dimension. + - attn_weights: :math:`(N * N, S, S)` where N is the batch size, H is the num-heads + and S is the sequence length. + """ + x, weights = self.multi_head_attention_forward( + self.in_proj(x), + self.linear_pos(pos_emb), + self.attention_dim, + self.num_heads, + self.dropout, + self.out_proj.weight, + self.out_proj.bias, + training=self.training, + key_padding_mask=key_padding_mask, + attn_mask=attn_mask, + ) + return x, weights + + def multi_head_attention_forward( + self, + x_proj: Tensor, + pos: Tensor, + attention_dim: int, + num_heads: int, + dropout_p: float, + out_proj_weight: Tensor, + out_proj_bias: Tensor, + training: bool = True, + key_padding_mask: Optional[Tensor] = None, + attn_mask: Optional[Tensor] = None, + ) -> Tuple[Tensor, Tensor]: + r""" + Args: + x_proj: the projected input, to be split into query, key, value. + pos: head-specific biases arising from the positional embeddings. + attention_dim: dimension inside attention mechanism + num_heads: parallel attention heads. + dropout_p: probability of an element to be zeroed. + out_proj_weight, out_proj_bias: the output projection weight and bias. + training: apply dropout if is ``True``. + key_padding_mask: if provided, specified padding elements in the key will + be ignored by the attention. This is an binary mask. When the value is True, + the corresponding value on the attention layer will be filled with -inf. + attn_mask: 2D or 3D mask that prevents attention to certain positions. A 2D mask will be broadcasted for all + the batches while a 3D mask allows to specify a different mask for the entries of each batch. + + Shape: + Inputs: + - x: :math:`(L, N, 7 * A // 2)` where L is the target sequence length, N is the batch size, A is + the attention dimension. Will be split into (query, key, value, pos). + - pos: :math:`(N, 2*L-1, A//2)` or :math:`(1, 2*L-1, A//2)` where L is the sequence + length, N is the batch size, and A is the attention dim. + - key_padding_mask: :math:`(N, S)` where N is the batch size, S is the source sequence length. + If a ByteTensor is provided, the non-zero positions will be ignored while the zero positions + will be unchanged. If a BoolTensor is provided, the positions with the + value of ``True`` will be ignored while the position with the value of ``False`` will be unchanged. + - attn_mask: 2D mask :math:`(L, S)` where L is the target sequence length, S is the source sequence length. + 3D mask :math:`(N*num_heads, L, S)` where N is the batch size, L is the target sequence length, + S is the source sequence length. attn_mask ensures that position i is allowed to attend the unmasked + positions. If a ByteTensor is provided, the non-zero positions are not allowed to attend + while the zero positions will be unchanged. If a BoolTensor is provided, positions with ``True`` + are not allowed to attend while ``False`` values will be unchanged. If a FloatTensor + is provided, it will be added to the attention weight. + + Outputs: + - attn_output: :math:`(L, N, E)` where L is the target sequence length, N is the batch size, + E is the embedding dimension. + - attn_weights: :math:`(N * H, S, S)` where N is the batch size, + H is the num-heads, S is the sequence length. + """ + + seq_len, bsz, _ = x_proj.size() + + head_dim = attention_dim // num_heads + pos_dim = self.pos_dim # positional-encoding dim per head + assert ( + head_dim * num_heads == attention_dim + ), f"attention_dim must be divisible by num_heads: {head_dim}, {num_heads}, {attention_dim}" + + # self-attention + q = x_proj[..., 0:attention_dim] + k = x_proj[..., attention_dim : 2 * attention_dim] + value_dim = attention_dim // 2 + v = x_proj[..., 2 * attention_dim : 2 * attention_dim + value_dim] + # p is the position-encoding query, its dimension is num_heads*pos_dim.. + p = x_proj[..., 2 * attention_dim + value_dim :] + + k = self.whiten_keys(k) # does nothing in the forward pass. + v = self.whiten_values(v) # does nothing in the forward pass. + q = self.copy_query(q) # for diagnostics only, does nothing. + p = self.copy_pos_query(p) # for diagnostics only, does nothing. + + if attn_mask is not None: + assert ( + attn_mask.dtype == torch.float32 + or attn_mask.dtype == torch.float64 + or attn_mask.dtype == torch.float16 + or attn_mask.dtype == torch.uint8 + or attn_mask.dtype == torch.bool + ), "Only float, byte, and bool types are supported for attn_mask, not {}".format( + attn_mask.dtype + ) + if attn_mask.dtype == torch.uint8: + warnings.warn( + "Byte tensor for attn_mask is deprecated. Use bool tensor instead." + ) + attn_mask = attn_mask.to(torch.bool) + + if attn_mask.dim() == 2: + attn_mask = attn_mask.unsqueeze(0) + if list(attn_mask.size()) != [1, seq_len, seq_len]: + raise RuntimeError("The size of the 2D attn_mask is not correct.") + elif attn_mask.dim() == 3: + if list(attn_mask.size()) != [ + bsz * num_heads, + seq_len, + seq_len, + ]: + raise RuntimeError("The size of the 3D attn_mask is not correct.") + else: + raise RuntimeError( + "attn_mask's dimension {} is not supported".format(attn_mask.dim()) + ) + # attn_mask's dim is 3 now. + + # convert ByteTensor key_padding_mask to bool + if key_padding_mask is not None and key_padding_mask.dtype == torch.uint8: + warnings.warn( + "Byte tensor for key_padding_mask is deprecated. Use bool tensor instead." + ) + key_padding_mask = key_padding_mask.to(torch.bool) + + q = q.reshape(seq_len, bsz, num_heads, head_dim) + p = p.reshape(seq_len, bsz, num_heads, pos_dim) + k = k.reshape(seq_len, bsz, num_heads, head_dim) + v = v.reshape(seq_len, bsz * num_heads, head_dim // 2).transpose(0, 1) + + if key_padding_mask is not None: + assert key_padding_mask.size(0) == bsz, "{} == {}".format( + key_padding_mask.size(0), bsz + ) + assert key_padding_mask.size(1) == seq_len, "{} == {}".format( + key_padding_mask.size(1), seq_len + ) + + q = q.permute(1, 2, 0, 3) # (batch, head, time1, head_dim) + p = p.permute(1, 2, 0, 3) # (batch, head, time1, pos_dim) + k = k.permute(1, 2, 3, 0) # (batch, head, d_k, time2) + + seq_len2 = 2 * seq_len - 1 + pos = pos.reshape(1, seq_len2, num_heads, pos_dim).permute(0, 2, 3, 1) + # pos shape now: (batch, head, pos_dim, seq_len2) + + # (batch, head, time1, pos_dim) x (1, head, pos_dim, seq_len2) -> (batch, head, time1, seq_len2) + # [where seq_len2 represents relative position.] + pos_weights = torch.matmul(p, pos) + # the following .as_strided() expression converts the last axis of pos_weights from relative + # to absolute position. I don't know whether I might have got the time-offsets backwards or + # not, but let this code define which way round it is supposed to be. + pos_weights = pos_weights.as_strided( + (bsz, num_heads, seq_len, seq_len), + ( + pos_weights.stride(0), + pos_weights.stride(1), + pos_weights.stride(2) - pos_weights.stride(3), + pos_weights.stride(3), + ), + storage_offset=pos_weights.stride(3) * (seq_len - 1), + ) + + # caution: they are really scores at this point. + attn_output_weights = torch.matmul(q, k) + pos_weights + + if not torch.jit.is_scripting(): + if training and random.random() < 0.1: + # This is a harder way of limiting the attention scores to not be too large. + # It incurs a penalty if any of them has an absolute value greater than 50.0. + # this should be outside the normal range of the attention scores. We use + # this mechanism instead of, say, a limit on entropy, because once the entropy + # gets very small gradients through the softmax can become very small, and + # some mechanisms like that become ineffective. + attn_output_weights = penalize_abs_values_gt( + attn_output_weights, limit=25.0, penalty=1.0e-04 + ) + + # attn_output_weights: (batch, head, time1, time2) + attn_output_weights = attn_output_weights.view( + bsz * num_heads, seq_len, seq_len + ) + + assert list(attn_output_weights.size()) == [ + bsz * num_heads, + seq_len, + seq_len, + ] + + if attn_mask is not None: + if attn_mask.dtype == torch.bool: + attn_output_weights.masked_fill_(attn_mask, float("-inf")) + else: + attn_output_weights += attn_mask + + if key_padding_mask is not None: + attn_output_weights = attn_output_weights.view( + bsz, num_heads, seq_len, seq_len + ) + attn_output_weights = attn_output_weights.masked_fill( + key_padding_mask.unsqueeze(1).unsqueeze(2), + float("-inf"), + ) + attn_output_weights = attn_output_weights.view( + bsz * num_heads, seq_len, seq_len + ) + + # Using this version of softmax, defined in scaling.py, + # should save a little of the memory used in backprop by, if + # we are in automatic mixed precision mode (amp) == autocast, + # only storing the half-precision output for backprop purposes. + attn_output_weights = softmax(attn_output_weights, dim=-1) + + attn_output_weights = nn.functional.dropout( + attn_output_weights, p=dropout_p, training=training + ) + + attn_output = torch.bmm(attn_output_weights, v) + assert list(attn_output.size()) == [bsz * num_heads, seq_len, head_dim // 2] + attn_output = ( + attn_output.transpose(0, 1) + .contiguous() + .view(seq_len, bsz, attention_dim // 2) + ) + attn_output = nn.functional.linear(attn_output, out_proj_weight, out_proj_bias) + + return attn_output, attn_output_weights + + def forward2( + self, + x: Tensor, + attn_weights: Tensor, + ) -> Tensor: + """ + Second forward function, where we re-use the attn_weights returned by the first forward function + but with different input. + Args: + x: input, of shape (seq_len, batch_size, embed_dim) + attn_weights: attention weights returned by forward(), of shape (batch_size * num_heads, seq_len, seq_len) + Returns: + output of the same shape as x, i.e. (seq_len, batch_size, embed_dim) + """ + num_heads = self.num_heads + (seq_len, bsz, embed_dim) = x.shape + head_dim = self.attention_dim // num_heads + # v: (tgt_len, bsz, embed_dim // 2) + v = self.in_proj2(x) + v = self.whiten_values2(v) # does nothing in the forward pass. + v = v.reshape(seq_len, bsz * num_heads, head_dim // 2).transpose(0, 1) + + # now v: (bsz * num_heads, seq_len, head_dim // 2) + attn_output = torch.bmm(attn_weights, v) + + if not torch.jit.is_scripting(): + if random.random() < 0.001 or __name__ == "__main__": + self._print_attn_stats(attn_weights, attn_output) + + # attn_output: (bsz * num_heads, seq_len, head_dim) + attn_output = ( + attn_output.transpose(0, 1) + .contiguous() + .view(seq_len, bsz, self.attention_dim // 2) + ) + # returned value is of shape (seq_len, bsz, embed_dim), like x. + return self.out_proj2(attn_output) + + def _print_attn_stats(self, attn_weights: Tensor, attn_output: Tensor): + # attn_weights: (batch_size * num_heads, seq_len, seq_len) + # attn_output: (bsz * num_heads, seq_len, head_dim) + (n, seq_len, head_dim) = attn_output.shape + num_heads = self.num_heads + bsz = n // num_heads + + with torch.no_grad(): + with torch.cuda.amp.autocast(enabled=False): + attn_weights = attn_weights.to(torch.float32) + attn_output = attn_output.to(torch.float32) + attn_weights_entropy = ( + -((attn_weights + 1.0e-20).log() * attn_weights) + .sum(dim=-1) + .reshape(bsz, num_heads, seq_len) + .mean(dim=(0, 2)) + ) + attn_output = attn_output.reshape(bsz, num_heads, seq_len, head_dim) + attn_output = attn_output.permute(1, 0, 2, 3).reshape( + num_heads, bsz * seq_len, head_dim + ) + attn_output_mean = attn_output.mean(dim=1, keepdim=True) + attn_output = attn_output - attn_output_mean + attn_covar = torch.matmul(attn_output.transpose(1, 2), attn_output) / ( + bsz * seq_len + ) + # attn_covar: (num_heads, head_dim, head_dim) + # eigs, _ = torch.symeig(attn_covar) + # logging.info(f"attn_weights_entropy = {attn_weights_entropy}, output_eigs = {eigs}") + + attn_covar = _diag(attn_covar).mean(dim=1) # (num_heads,) + embed_dim = self.in_proj2.weight.shape[1] + in_proj_covar = ( + self.in_proj2.weight.reshape(num_heads, head_dim, embed_dim) ** 2 + ).mean(dim=(1, 2)) + out_proj_covar = ( + self.out_proj2.weight.reshape(embed_dim, num_heads, head_dim) ** 2 + ).mean(dim=(0, 2)) + logging.info( + f"attn_weights_entropy = {attn_weights_entropy}, covar={attn_covar}, in_proj_covar={in_proj_covar}, out_proj_covar={out_proj_covar}" + ) + + +class PoolingModule(nn.Module): + """ + Averages the input over the time dimension and project with a square matrix. + """ + + def __init__(self, d_model: int): + super().__init__() + self.proj = ScaledLinear(d_model, d_model, initial_scale=0.1, bias=False) + + def forward(self, x: Tensor, key_padding_mask: Optional[Tensor] = None): + """ + Args: + x: a Tensor of shape (T, N, C) + key_padding_mask: a Tensor of bool, of shape (N, T), with True in masked + positions. + Returns: + a Tensor of shape (1, N, C) + """ + if key_padding_mask is not None: + pooling_mask = key_padding_mask.logical_not().to(x.dtype) # (N, T) + pooling_mask = pooling_mask / pooling_mask.sum(dim=1, keepdim=True) + pooling_mask = pooling_mask.transpose(0, 1).contiguous().unsqueeze(-1) + # now pooling_mask: (T, N, 1) + x = (x * pooling_mask).sum(dim=0, keepdim=True) + else: + num_frames = x.shape[0] + pooling_mask = 1.0 / num_frames + x = (x * pooling_mask).sum(dim=0, keepdim=True) + + x = self.proj(x) + return x + + +class FeedforwardModule(nn.Module): + """Feedforward module in Zipformer model.""" + + def __init__(self, d_model: int, feedforward_dim: int, dropout: float): + super(FeedforwardModule, self).__init__() + self.in_proj = nn.Linear(d_model, feedforward_dim) + self.balancer = ActivationBalancer( + feedforward_dim, channel_dim=-1, max_abs=10.0, min_prob=0.25 + ) + self.activation = DoubleSwish() + self.dropout = nn.Dropout(dropout) + self.out_proj = ScaledLinear(feedforward_dim, d_model, initial_scale=0.01) + + def forward(self, x: Tensor): + x = self.in_proj(x) + x = self.balancer(x) + x = self.activation(x) + x = self.dropout(x) + x = self.out_proj(x) + return x + + +class ConvolutionModule(nn.Module): + """ConvolutionModule in Zipformer model. + Modified from https://github.com/espnet/espnet/blob/master/espnet/nets/pytorch_backend/zipformer/convolution.py + + Args: + channels (int): The number of channels of conv layers. + kernel_size (int): Kernerl size of conv layers. + bias (bool): Whether to use bias in conv layers (default=True). + + """ + + def __init__(self, channels: int, kernel_size: int, bias: bool = True) -> None: + """Construct an ConvolutionModule object.""" + super(ConvolutionModule, self).__init__() + # kernerl_size should be a odd number for 'SAME' padding + assert (kernel_size - 1) % 2 == 0, kernel_size + + self.pointwise_conv1 = nn.Conv1d( + channels, + 2 * channels, + kernel_size=1, + stride=1, + padding=0, + bias=bias, + ) + + # after pointwise_conv1 we put x through a gated linear unit (nn.functional.glu). + # For most layers the normal rms value of channels of x seems to be in the range 1 to 4, + # but sometimes, for some reason, for layer 0 the rms ends up being very large, + # between 50 and 100 for different channels. This will cause very peaky and + # sparse derivatives for the sigmoid gating function, which will tend to make + # the loss function not learn effectively. (for most layers the average absolute values + # are in the range 0.5..9.0, and the average p(x>0), i.e. positive proportion, + # at the output of pointwise_conv1.output is around 0.35 to 0.45 for different + # layers, which likely breaks down as 0.5 for the "linear" half and + # 0.2 to 0.3 for the part that goes into the sigmoid. The idea is that if we + # constrain the rms values to a reasonable range via a constraint of max_abs=10.0, + # it will be in a better position to start learning something, i.e. to latch onto + # the correct range. + self.deriv_balancer1 = ActivationBalancer( + 2 * channels, + channel_dim=1, + max_abs=10.0, + min_positive=0.05, + max_positive=1.0, + ) + + self.depthwise_conv = nn.Conv1d( + channels, + channels, + kernel_size, + stride=1, + padding=(kernel_size - 1) // 2, + groups=channels, + bias=bias, + ) + + self.deriv_balancer2 = ActivationBalancer( + channels, + channel_dim=1, + min_positive=0.05, + max_positive=1.0, + max_abs=20.0, + ) + + self.activation = DoubleSwish() + + self.pointwise_conv2 = ScaledConv1d( + channels, + channels, + kernel_size=1, + stride=1, + padding=0, + bias=bias, + initial_scale=0.05, + ) + + def forward( + self, + x: Tensor, + src_key_padding_mask: Optional[Tensor] = None, + ) -> Tensor: + """Compute convolution module. + + Args: + x: Input tensor (#time, batch, channels). + src_key_padding_mask: the mask for the src keys per batch (optional): + (batch, #time), contains bool in masked positions. + + Returns: + Tensor: Output tensor (#time, batch, channels). + + """ + # exchange the temporal dimension and the feature dimension + x = x.permute(1, 2, 0) # (#batch, channels, time). + + # GLU mechanism + x = self.pointwise_conv1(x) # (batch, 2*channels, time) + + x = self.deriv_balancer1(x) + x = nn.functional.glu(x, dim=1) # (batch, channels, time) + + if src_key_padding_mask is not None: + x.masked_fill_(src_key_padding_mask.unsqueeze(1).expand_as(x), 0.0) + + # 1D Depthwise Conv + x = self.depthwise_conv(x) + + x = self.deriv_balancer2(x) + x = self.activation(x) + + x = self.pointwise_conv2(x) # (batch, channel, time) + + return x.permute(2, 0, 1) + + +class Conv2dSubsampling(nn.Module): + """Convolutional 2D subsampling (to 1/4 length). + + Convert an input of shape (N, T, idim) to an output + with shape (N, T', odim), where + T' = (T-3)//2 - 2 == (T-7)//2 + + It is based on + https://github.com/espnet/espnet/blob/master/espnet/nets/pytorch_backend/transformer/subsampling.py # noqa + """ + + def __init__( + self, + in_channels: int, + out_channels: int, + layer1_channels: int = 8, + layer2_channels: int = 32, + layer3_channels: int = 128, + dropout: float = 0.1, + ) -> None: + """ + Args: + in_channels: + Number of channels in. The input shape is (N, T, in_channels). + Caution: It requires: T >=7, in_channels >=7 + out_channels + Output dim. The output shape is (N, (T-7)//2, out_channels) + layer1_channels: + Number of channels in layer1 + layer2_channels: + Number of channels in layer2 + layer3_channels: + Number of channels in layer3 + """ + assert in_channels >= 7, in_channels + super().__init__() + + self.conv = nn.Sequential( + nn.Conv2d( + in_channels=1, + out_channels=layer1_channels, + kernel_size=3, + padding=(0, 1), # (time, freq) + ), + ActivationBalancer(layer1_channels, channel_dim=1), + DoubleSwish(), + nn.Conv2d( + in_channels=layer1_channels, + out_channels=layer2_channels, + kernel_size=3, + stride=2, + padding=0, + ), + ActivationBalancer(layer2_channels, channel_dim=1), + DoubleSwish(), + nn.Conv2d( + in_channels=layer2_channels, + out_channels=layer3_channels, + kernel_size=3, + stride=(1, 2), # (time, freq) + ), + ActivationBalancer(layer3_channels, channel_dim=1), + DoubleSwish(), + ) + out_height = (((in_channels - 1) // 2) - 1) // 2 + self.out = ScaledLinear(out_height * layer3_channels, out_channels) + self.dropout = nn.Dropout(dropout) + + def forward(self, x: torch.Tensor) -> torch.Tensor: + """Subsample x. + + Args: + x: + Its shape is (N, T, idim). + + Returns: + Return a tensor of shape (N, (T-7)//2, odim) + """ + # On entry, x is (N, T, idim) + x = x.unsqueeze(1) # (N, T, idim) -> (N, 1, T, idim) i.e., (N, C, H, W) + x = self.conv(x) + # Now x is of shape (N, odim, (T-7)//2, ((idim-1)//2 - 1)//2) + b, c, t, f = x.size() + x = self.out(x.transpose(1, 2).reshape(b, t, c * f)) + # Now x is of shape (N, (T-7)//2, odim) + x = self.dropout(x) + return x + + +class AttentionCombine(nn.Module): + """ + This module combines a list of Tensors, all with the same shape, to + produce a single output of that same shape which, in training time, + is a random combination of all the inputs; but which in test time + will be just the last input. + + All but the last input will have a linear transform before we + randomly combine them; these linear transforms will be initialized + to the identity transform. + + The idea is that the list of Tensors will be a list of outputs of multiple + zipformer layers. This has a similar effect as iterated loss. (See: + DEJA-VU: DOUBLE FEATURE PRESENTATION AND ITERATED LOSS IN DEEP TRANSFORMER + NETWORKS). + """ + + def __init__( + self, + num_channels: int, + num_inputs: int, + random_prob: float = 0.25, + single_prob: float = 0.333, + ) -> None: + """ + Args: + num_channels: + the number of channels + num_inputs: + The number of tensor inputs, which equals the number of layers' + outputs that are fed into this module. E.g. in an 18-layer neural + net if we output layers 16, 12, 18, num_inputs would be 3. + random_prob: + the probability with which we apply a nontrivial mask, in training + mode. + single_prob: + the probability with which we mask to allow just a single + module's output (in training) + """ + super().__init__() + + self.random_prob = random_prob + self.single_prob = single_prob + self.weight = torch.nn.Parameter(torch.zeros(num_channels, num_inputs)) + self.bias = torch.nn.Parameter(torch.zeros(num_inputs)) + + assert 0 <= random_prob <= 1, random_prob + assert 0 <= single_prob <= 1, single_prob + + def forward(self, inputs: List[Tensor]) -> Tensor: + """Forward function. + Args: + inputs: + A list of Tensor, e.g. from various layers of a transformer. + All must be the same shape, of (*, num_channels) + Returns: + A Tensor of shape (*, num_channels). In test mode + this is just the final input. + """ + num_inputs = self.weight.shape[1] + assert len(inputs) == num_inputs + + # Shape of weights: (*, num_inputs) + num_channels = inputs[0].shape[-1] + num_frames = inputs[0].numel() // num_channels + + ndim = inputs[0].ndim + # stacked_inputs: (num_frames, num_channels, num_inputs) + stacked_inputs = torch.stack(inputs, dim=ndim).reshape( + (num_frames, num_channels, num_inputs) + ) + + scores = (stacked_inputs * self.weight).sum(dim=(1,)) + self.bias + + if random.random() < 0.002: + logging.info(f"Average scores are {scores.softmax(dim=1).mean(dim=0)}") + + if self.training: + # random masking.. + mask_start = torch.randint( + low=1, + high=int(num_inputs / self.random_prob), + size=(num_frames,), + device=scores.device, + ).unsqueeze(1) + # mask will have rows like: [ False, False, False, True, True, .. ] + arange = ( + torch.arange(num_inputs, device=scores.device) + .unsqueeze(0) + .expand(num_frames, num_inputs) + ) + mask = arange >= mask_start + + apply_single_prob = torch.logical_and( + torch.rand(size=(num_frames, 1), device=scores.device) + < self.single_prob, + mask_start < num_inputs, + ) + single_prob_mask = torch.logical_and( + apply_single_prob, arange < mask_start - 1 + ) + + mask = torch.logical_or(mask, single_prob_mask) + + scores = scores.masked_fill(mask, float("-inf")) + + if self.training and random.random() < 0.1: + scores = penalize_abs_values_gt(scores, limit=10.0, penalty=1.0e-04) + + weights = scores.softmax(dim=1) + + # (num_frames, num_channels, num_inputs) * (num_frames, num_inputs, 1) -> (num_frames, num_channels, 1), + ans = torch.matmul(stacked_inputs, weights.unsqueeze(2)) + # ans: (*, num_channels) + ans = ans.reshape(*tuple(inputs[0].shape[:-1]), num_channels) + + if __name__ == "__main__": + # for testing only... + print("Weights = ", weights.reshape(num_frames, num_inputs)) + return ans + + +def _test_random_combine(): + print("_test_random_combine()") + num_inputs = 3 + num_channels = 50 + m = AttentionCombine( + num_channels=num_channels, + num_inputs=num_inputs, + random_prob=0.5, + single_prob=0.0, + ) + + x = [torch.ones(3, 4, num_channels) for _ in range(num_inputs)] + + y = m(x) + assert y.shape == x[0].shape + assert torch.allclose(y, x[0]) # .. since actually all ones. + + +def _test_zipformer_main(): + feature_dim = 50 + batch_size = 5 + seq_len = 20 + feature_dim = 50 + # Just make sure the forward pass runs. + + c = Zipformer( + num_features=feature_dim, + encoder_dims=(64, 96), + encoder_unmasked_dims=(48, 64), + nhead=(4, 4), + ) + batch_size = 5 + seq_len = 20 + # Just make sure the forward pass runs. + f = c( + torch.randn(batch_size, seq_len, feature_dim), + torch.full((batch_size,), seq_len, dtype=torch.int64), + ) + assert ((seq_len - 7) // 2 + 1) // 2 == f[0].shape[1], (seq_len, f.shape[1]) + f[0].sum().backward() + c.eval() + f = c( + torch.randn(batch_size, seq_len, feature_dim), + torch.full((batch_size,), seq_len, dtype=torch.int64), + ) + f # to remove flake8 warnings + + +def _test_conv2d_subsampling(): + num_features = 80 + encoder_dims = 384 + dropout = 0.1 + encoder_embed = Conv2dSubsampling(num_features, encoder_dims, dropout=dropout) + for i in range(20, 40): + x = torch.rand(2, i, num_features) + y = encoder_embed(x) + assert (x.shape[1] - 7) // 2 == y.shape[1], (x.shape[1], y.shape[1]) + + +if __name__ == "__main__": + logging.getLogger().setLevel(logging.INFO) + torch.set_num_threads(1) + torch.set_num_interop_threads(1) + _test_random_combine() + _test_zipformer_main() + _test_conv2d_subsampling() diff --git a/egs/LJSpeech/ASR/utils/decoded_result_to_text_files.py b/egs/LJSpeech/ASR/utils/decoded_result_to_text_files.py new file mode 100755 index 000000000..52ddf9c05 --- /dev/null +++ b/egs/LJSpeech/ASR/utils/decoded_result_to_text_files.py @@ -0,0 +1,31 @@ +# usage: +# python3 utils/decoded_result_to_text_files.py input_file output_directory + +import os +import sys +import re + +input_file = sys.argv[1] +output_directory = sys.argv[2] + +if not os.path.exists(output_directory): + os.makedirs(output_directory, exist_ok=True) + +with open(input_file, 'r') as f: + lines = f.readlines() + for line in lines: + if "_sp" in line: + continue + # use regular expression to extract the filename and hyp list + match = re.search(r'(.*):\s*hyp=\[(.*)\]', line) + if match: + filename = match.group(1) + hyp = match.group(2) + hyp = hyp.replace("'", "").replace("[", "").replace("]", "").split(',') + hyp_sentence = ' '.join(hyp) + + filename = "-".join(filename.split('-')[:-1]) + output_file = os.path.join(output_directory, f'{filename}.txt') + + with open(output_file, 'w') as f: + f.write(hyp_sentence) \ No newline at end of file diff --git a/egs/LJSpeech/ASR/utils/plot_similarities.py b/egs/LJSpeech/ASR/utils/plot_similarities.py new file mode 100755 index 000000000..0d1c43274 --- /dev/null +++ b/egs/LJSpeech/ASR/utils/plot_similarities.py @@ -0,0 +1,77 @@ +import os +import torch +import matplotlib.pyplot as plt + +out_dir='outputs/' + +org = torch.load('pruned_transducer_stateless_d2v_v2/d2v-T/epoch-27.pt') +ft = torch.load('pruned_transducer_stateless_d2v_v2/d2v-T-LJft-oracle-epoch100/best-valid-loss.pt') +pft = torch.load('pruned_transducer_stateless_d2v_v2/d2v-T-LJft-pseudo-trained/best-valid-loss.pt') + +org_state_dict, ft_state_dict, pft_state_dict = org['model'], ft['model'], pft['model'] + +# # Define three model parameters +# for (n1, p1), (n2, p2), (n3, p3) in zip(org.named_parameters(), ft.named_parameters(), pft.named_parameters()): +# assert n1 == n2 == n3 +# org_state_dict[n1] = p1 +# ft_state_dict[n1] = p2 +# pft_state_dict[n1] = p3 + +for name in org_state_dict.keys(): + # Define the weight names + weights = [org_state_dict[name], ft_state_dict[name], pft_state_dict[name]] + + # Define the x-axis labels + x = ['org vs ft', 'org vs pft', 'ft vs pft'] + abs_diff, rel_diff, cos_sim = [], [], [] + + i = 0 + k = 0 + for j in range(i+1,3): + if weights[i].dim() > 1: + wi = weights[i].view(-1) + wj = weights[j].view(-1) + else: + wi = weights[i] + wj = weights[j] + + # Compute absolute difference + abs_diff.append(torch.abs(wi - wj).sum(-1).cpu().numpy()) + + # Compute relative difference + rel_diff.append(abs_diff[k] / torch.max(torch.abs(wi).sum(-1), torch.abs(wj).sum(-1)).cpu().numpy()) + + # Compute cosine similarity + cos_sim.append(torch.nn.functional.cosine_similarity(wi, wj, dim=0).cpu().numpy()) + + k += 1 + + i, j = 1, 2 + if weights[i].dim() > 1: + wi = weights[i].view(-1) + wj = weights[j].view(-1) + else: + wi = weights[i] + wj = weights[j] + + # Compute absolute difference + abs_diff.append(torch.abs(wi - wj).sum(-1).cpu().numpy()) + + # Compute relative difference + rel_diff.append(abs_diff[2] / torch.max(torch.abs(wi).sum(-1), torch.abs(wj).sum(-1)).cpu().numpy()) + + # Compute cosine similarity + cos_sim.append(torch.nn.functional.cosine_similarity(wi, wj, dim=0).cpu().numpy()) + + if abs_diff[1] > 0.001: + print(name) + + for k, metric in enumerate([abs_diff, rel_diff, cos_sim]): + y = metric + # Plot results as a bar graph + plt.bar(x, y) + + if not os.path.exists(out_dir + name): + os.makedirs(out_dir + name, exist_ok=True) + plt.savefig(out_dir + name + "/" + ['abs_diff', 'rel_diff', 'cos_sim'][k] + ".png") + plt.close() \ No newline at end of file diff --git a/egs/LJSpeech/ASR/utils/plot_word_histogram.py b/egs/LJSpeech/ASR/utils/plot_word_histogram.py new file mode 100755 index 000000000..fe2e35c63 --- /dev/null +++ b/egs/LJSpeech/ASR/utils/plot_word_histogram.py @@ -0,0 +1,227 @@ +import os +import torch +import matplotlib.pyplot as plt +import seaborn as sns +from collections import Counter + +# mode = "phone" +# mode = "bpe" +mode = "word" + +# read the text file +with open('/DB/LJSpeech/combined_text.txt', 'r') as f: + org_text = f.readlines() +with open('/DB/LJSpeech_pseudo/combined_text.txt', 'r') as f: + pseudo_text = f.readlines() + +if mode == "word": + org_dict = {} + # split the text into words + for text in org_text: + words = text.split() + for word in words: + if word in org_dict.keys(): + org_dict[word] += 1 + else: + org_dict[word] = 1 + + pseudo_dict = {} + # split the text into words + for text in pseudo_text: + words = text.split() + for word in words: + if word in pseudo_dict.keys(): + pseudo_dict[word] += 1 + else: + pseudo_dict[word] = 1 + + org_dict = dict(sorted(org_dict.items(), key=lambda x: x[1])) + pseudo_dict_ = {} + pop_list = [] + oov_count = 0 + for key in org_dict.keys(): + if key not in pseudo_dict.keys(): + oov_count += 1 + pop_list.append(key) + continue + pseudo_dict_[key] = pseudo_dict[key] + + for key in pop_list: + org_dict.pop(key) + + print("Total number of words", len(org_dict.keys())) + print("OOV Count", oov_count) + pseudo_dict = pseudo_dict_ + for dict_, name in zip([org_dict, pseudo_dict], ["_org", "_pseudo"]): + # plot a bar graph of the word counts + plt.bar(dict_.keys(), dict_.values()) + plt.xlabel('Words') + plt.ylabel('Counts') + plt.show() + + out_dir = "outputs/" + name = "word_histogram" + name + if not os.path.exists(out_dir + name): + os.makedirs(out_dir + name, exist_ok=True) + plt.savefig(out_dir + name + "/plot.png") + plt.close() + + # Example dictionaries + dict1 = org_dict + dict2 = pseudo_dict + + # Convert dictionaries to lists + list1 = [count for count in dict1.values()] + list2 = [count for count in dict2.values()] + + # Plot density plots + sns.kdeplot(list1, color='blue', label='True') + sns.kdeplot(list2, color='orange', label='Pseudo') + + # Add labels and show plot + plt.xlabel('Word Counts') + plt.ylabel('Density') + plt.title('Density Plot of Word Counts') + plt.legend() + + plt.savefig(out_dir + "/density_plot" + ".png") + plt.close() + +elif mode == "bpe": + import sentencepiece as spm + + sp = spm.SentencePieceProcessor() + bpe_model = "data/lang_bpe_500/bpe.model" + sp.load(bpe_model) + + # is defined in local/train_bpe_model.py + blank_id = sp.piece_to_id("") + vocab_size = sp.get_piece_size() + + org_dict = {} + # split the text into phones + for text in org_text: + words = sp.encode(text, out_type=str) + for word in words: + if word in org_dict.keys(): + org_dict[word] += 1 + else: + org_dict[word] = 1 + + pseudo_dict_ = {} + # split the text into words + for text in pseudo_text: + words = sp.encode(text, out_type=str) + for word in words: + if word in pseudo_dict_.keys(): + pseudo_dict_[word] += 1 + else: + pseudo_dict_[word] = 1 + + org_dict = dict(sorted(org_dict.items(), key=lambda x: x[1])) + pseudo_dict = {} + for key in org_dict.keys(): + pseudo_dict[key] = pseudo_dict_[key] + + for dict_, name in zip([org_dict, pseudo_dict], ["_org", "_pseudo"]): + # plot a bar graph of the word counts + num_axis = len(dict_.keys()) // 10 + tot_len = len(dict_.keys()) // num_axis + if num_axis * (len(dict_.keys()) // num_axis) < len(dict_.keys()): + remainders = len(dict_.keys()) - num_axis * (len(dict_.keys()) // num_axis) + else: + remainders = None + + name_ = name + for i in range(tot_len - 1): + name = name_ + plt.bar(list(dict_.keys())[num_axis * i: num_axis * (i+1)], list(dict_.values())[num_axis * i: num_axis * (i+1)]) + plt.xlabel(mode + "s") + plt.xticks(rotation=90, fontsize=7) + plt.ylabel('Counts') + plt.tight_layout() + plt.show() + + out_dir = "outputs/" + name = mode + "_histogram" + name + if not os.path.exists(out_dir + name): + os.makedirs(out_dir + name, exist_ok=True) + plt.savefig(out_dir + name + "/plot_" + str(i) + ".png") + plt.close() + + if remainders is not None: + name = name_ + plt.bar(list(dict_.keys())[num_axis * (i+1):], list(dict_.values())[num_axis * (i+1):]) + plt.xlabel(mode + "s") + plt.xticks(rotation=90, fontsize=7) + plt.ylabel('Counts') + plt.tight_layout() + plt.show() + + out_dir = "outputs/" + name = mode + "_histogram" + name + if not os.path.exists(out_dir + name): + os.makedirs(out_dir + name, exist_ok=True) + plt.savefig(out_dir + name + "/plot_9" + ".png") + plt.close() + + # Example dictionaries + dict1 = org_dict + dict2 = pseudo_dict + + # Convert dictionaries to lists + list1 = [count for count in dict1.values()] + list2 = [count for count in dict2.values()] + + # Plot density plots + sns.kdeplot(list1, color='blue', label='True') + sns.kdeplot(list2, color='orange', label='Pseudo') + + # Add labels and show plot + plt.xlabel('Word Counts') + plt.ylabel('Density') + plt.title('Density Plot of Word Counts') + plt.legend() + + plt.savefig(out_dir + "/density_plot" + ".png") + plt.close() + +elif mode == "phone": + org_dict = {} + # split the text into phones + for text in org_text: + words = text.split() + for word in words: + for phone in word: + if phone in org_dict.keys(): + org_dict[phone] += 1 + else: + org_dict[phone] = 1 + + pseudo_dict = {} + # split the text into words + for text in pseudo_text: + words = text.split() + for word in words: + for phone in word: + if phone in pseudo_dict.keys(): + pseudo_dict[phone] += 1 + else: + pseudo_dict[phone] = 1 + + org_dict = dict(sorted(org_dict.items(), key=lambda x: x[1])) + pseudo_dict = dict(sorted(pseudo_dict.items(), key=lambda x: x[1])) + for dict_, name in zip([org_dict, pseudo_dict], ["_org", "_pseudo"]): + # plot a bar graph of the word counts + plt.bar(dict_.keys(), dict_.values()) + plt.xlabel('Phones') + plt.ylabel('Counts') + plt.tight_layout() + plt.show() + + out_dir = "outputs/" + name = "phone_histogram" + name + if not os.path.exists(out_dir + name): + os.makedirs(out_dir + name, exist_ok=True) + plt.savefig(out_dir + name + "/plot.png") + plt.close() \ No newline at end of file diff --git a/egs/librispeech/ASR/.gtrans.sh.swp b/egs/librispeech/ASR/.gtrans.sh.swp deleted file mode 100644 index eaba3d1219c82510c7de116735df3f5ae84b1efb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI2O=}ZD7{{l@OAoE02SGfHX-~3~eMuUl;Gu1T1T2c7K~PvGJCkJXW@nw*C9MYq zKZAY^KZJtb#ES?02zpn%`RuxRA&OW$6`p}VGyBZU^YUAA2>bM%UT2?PuQ~+AIYJ(P zeHXkQUOw~r0U<(-q*JSV`PSb?3(mP|KHCN@(uI}^cM66^a2!s?tpH9wm=)8 z9~*?c0=)!12MN$E&{fbS&?@K)`2SeOd7sC^fdr5M5wGSPH-B5*Jw@wQo|M%19dH|LPsLi$HGEFVdMOwKh#^kVO$I`py>ugBP7LnW$j2 zU@h{`ZHCt7xj-j-B$x@G$OT9f9*aJOzIG$?q^tHnWC~S;aWy&4FF=7xr*!Y2wd40X z-Oldqw%=;^I(zNz&5C2WmS@$hy0vXJtZNl$(6xX9*jHrJyKTBkJ%4gJF~ Jr3utdegd_D-t7PY diff --git a/egs/librispeech/ASR/pruned_transducer_stateless_gtrans/.conformer_randomcombine.py.swp b/egs/librispeech/ASR/pruned_transducer_stateless_gtrans/.conformer_randomcombine.py.swp deleted file mode 100644 index 007036d30827c933b889935d7d5527202cc81e09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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

    tS-KQgOhy(8B@YkXQX+85}j1a@=vN__+;Eale5 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn.v_proj.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a663c655fafa2bdadde9c35744fcec2998a99f05 GIT binary patch literal 15230 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 VQ}@<{sUz^`xUrd0{*ULb{2QJ3NV)(3 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..a9f75d3919efa372a39402266eac893239d43593 GIT binary patch literal 13093 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..4e9bda1e5311c78ae21588565d0d09aa073a8717 GIT binary patch literal 8266 zcmeHMcT`jPp1)YfQ9(on1OdS^R>T4*B|1jXqk;@0$N-5F5fKDJ3y?qqWFdl1tb>;j4oN1ts@%EvuwjgS2tHIa9sB)GYMlXd13?~eU;f4COU)pm=@ zTohy-gmNSGF--PAob8Z+?_;hxMq;7a-CX~t=W<*GP-ptI%uBL6REkF=G&8jIJ z3{!R#nS-pe`t$N1*5KTJrn=wS{-L3`7ChDB>JrW6hYlT@!YLyS3!UPt8q=)_1FiXX zF3CN(M1-P_qsqjOv$Ebwb|R7dSJ@2a>I4`6Bg}-G>T^b1HFlmojFs{i?GEg1FlQ`4 zdZXjw;?TQg+O{|0;fSfC;f99?=j$OZr+<=9I^6fA%th86`=4$HIs*jBv=48&J%yVS z`Y}uqJB9o4Wx?FK+t=Bb@Ld6LLpL#lN4t!TE*o{!YfFD-hpRLdAk zAP{!%*;5s_#?0-*??;Tnr^ikGI`=c!4CmtQL(lv3&R@6?m10J!E@p~zTmLw7kRpo4 z4+!thMaCKMhVI$~c6sPn+QWxyH`pX=WINi!i>ijx{wE-<%iEq zxQq;Tl$jX&a5bpo*3^%NUJH<#1f?n53yxoJ!$Z^1(X&50I810Ta&lr^%Yw!GJU-<( z5#c|R9ei0wO~F=P#LVDiG;1v8Iw*^9k0{&V?A-##GAAp$ZAFsm{~KCoU=~iu))lD@)gL3E~&LqEfk&rfQJ( z`|s=8+S|!7#l^+!-o|utN`Rz;#Lg||txlDXXBy~tWo73@5!i86gT;Iu{Pc%}w35k> z#<+sBM|K+<_vDcR18Mt_&P(>o%pxB>dSqvBueNR5w$l8ep`r7hp4Xp0e~uGsV#G-N1J#W+oZO?k#`z>{-5BRg`J)z^UE4 zcVn@Y$$JCbxFy6!E>~Msb=SFfG<3hNVWgiE_XS-T;5^+p#GDyQG$L4SpQnU;Z})Ou z=ev8m1f4H0=X-Ms&U<-9zq!4UopC(LAHRfC?2D(bVLdvUU}a}#x7GFeZX9fq#$Nxk z?-Gp+lrXHYuyy zi!Pc8MAuYw^mGG{GWNc;!2ReFZPOk4`Y_g+fHw#d zYPZZ+iS&=CKss^_69ZT{^~dQ00QTy;jyO$#89v!Ow15@A6uF^3KYwn>f6fNOyb6&( zS7Cat{=ph86Q39h@C;{N%*+B>%=Yc8kC2OMib!*N#nVHfAXj-{)W$97iR7{=*(mC)04be7o!```b2TLZC z>7t2=2@Q*|Kt@1yjHa6ILta_4xRB?kN(9R9IMub#--R1ONtCktYVO12=G6j~Z62AXLX(hnsQ2 zJ9qC^fwq!e5M=xA`Kpnss<4-$k=H8hVwP;MwKTxvT`C3x^d3LsFoN>In_KHk1;YAN zU0>$Zxvjqx{(uYn`Y2@d%|-!mK{V9Lm;OyKn&?ZD%MW8K|4Tktp{~dxWoKn|S!1T{ zxS%gYakC@4geY)pOgoexBI=@8%ts<4>~<(=sOI~9es!wE?+l~(BCmYvPCjgD$OOlu zUX+C(b%yiDR_#ELa05gMS^nqcUs(hD6G|oi-ESY~<;9JTj-o*JZZFEU9s9(<>w>W( zHXS!fX`ep_NnZH<2E^nWB454^=z3{>S6A0#27{jKT>K!IXCdLLrCY^DwfmIiV&WGeemIRA z!}F7uUQ=EZb$g?&mAkt;UG(e;{f&sFGsb2eSeu z9>`(nBEMn41X*Fh4ODYW0|;;LY_fB9*4pBbLj%`v=-|PFSS;XgBk;BQ`}glrcjt%; zb*E3gzPdD;X6mku{MNAI7*dzKcbBq`xdzy+=%S*cMDtL8@3z8ClByfvpbim<=-)i&*MEP*cP~JrTAAVGk1Z|2 z>Zs^w)S(yobhKs8m_|rLl1+*F+nJMHO*&2BsliTLY)26F`ygLnO{>5%rWX_xutNaD zh0mUezgn&`#A!o8531f|<&~E11y|^w0OKY-^Fbmhpq-TBA(ldZiWL!VKG8~mGLL8z zpkT9((|+TM3l}#>xU5HBaAw_#mQ{>~>iYHT8+kk)p}eBP!iugFUR{cp^*IXUGsE=E z)QEj~%;~;eI?iB~VF<%v72tG!{;S7s5-iqcNq@9RlTYw^HwCd{WL^G1lv3on$U-0rGR7I^MLPLE1{COIUwl|=s5@aq7W}~mq9KFk^ zEO4)N>v$ey=jxg=lhX+fnlRG&GL)=?Ai`h%J6jDhdg1k$uVTVC9SBoCP%qD6%h09_ zFKfn&g&)9RoqRd(G!`Wm0*YW>5x`fc#o5`pUiJ;WBF+5>GHvre?Wq6%CL|fZ&GGAg zdl&X^O?P*s>5lg4jz?uvKzxegMy4M!1Gm3+-e>dHv+iJ~eb)Zu>$tMZ4}bfPem zmoc<@s(j1{{9}oPM;6@o%De6xF_t7N_eUb-dr%Xv1$N49W@0e^?3-KMQ$!*Wkjws* z>r7603JvvnZ|?ykV`%L|q$0NMj48CijU3LsvWPD=H)*uq-rf-PY)r*aoj~{{qI5@c z_E=wvpK`|gy@#18*#RR7k|cM|-crTl0|(}HK0J7>>&u(lc1}(lLU}>K&fvke=Kf@m z9UR@)%gby~u-n9hoxqZI+gF1zjEFw@`rgT$8p-#EQvz;K%vywegYkGk-W&COy{OZ~1VnGg02iV);VnqDws zpbsQX7~+;1xxc;hI5#&I&0F#bY%~ke*YA0EPYp^Xx~HdyMmtq_-p&OAG*RbemFid% zo<@HQgRYJXS?j>SrPOCCA%1l$|FMoAqR;BMh+%BbsF-LwRqW%6w%^RjD#Pj-zCw;} zs^IMw#=92#PQ|7zTcR^EGVFQ&*W_KZtCf88kkecKuM3dFCk{{+EJGrhYLN(XUG>{# z-P+oM64^w%pex!iE-fu>@~bWN{_y$(5ImUsFsFJn_643_v2tbA=hxT9D%MT+{zyLV zR1p^R^U0IoEQn~Y$glluu7@0X1r*xVXssK&@j;0G#4ukMwJPvrifB0EYQSJSUmh&| zvJrEAn{!d6Ts9+M$@^K`X^EY$!j6CK?WJ8=tX|z!6)gZAi*EO2Sy)cw)2oD*l2VFc ztoi0d{M^@58*2;D#Ak`d4Mo#HcLF{RoLVK^pEUf)PdUX_=z=eoj@F_m;WAP$T)g;x z_)_oF#b5Wh^O@m9Fs&t`YAphU6_9ZXqnAwgLQwP8a)wiX&cHhE9k{Xr&!!A_=$dOg z-S$i2 z;}$ljf=pVa%Bf2+BgYuxndW6MoTrdOoA4>Sk{|>#21}X)-8q>*!%N6@dYaKPlLQL0 zO0~4sJ;62JHJIa`8AFtpo~SQ{r}`NzOJ`_$i%!41xV~9fR&*M1yxx- zEyl+Y<)J2wO+i6H9ChZ%6&=DtW$l^;utu^bjLbgX-Khwgf`Ra1GTy<#AwG8Xp3P+d zGuyIwYn{+_*^eLB=#U5Uxyf2SC2QLu;Tf91V;B+PGS!Z7O4-!20m8cX;9MS5z^XdM%lfW~njP^eG66yh9Z z>@+dnWb1)ZOw~WdOx?!3fw0-XO}E-9-rYXq*qiw6u5E-IXtPabr#kxO4QH$#lZp<2 zV{dD5R|W~dfS9SQYnj{;P;bFmpWt$9kk7)HK~5Rm`Qq2D`UU7@Osc1ZKUxS21{8CA zL3=rAhoTE06m;iL)sYGylyuK_WYiUGt>uLXVj=Sjb%Msah^mm!juf~){ty-&rm)&n zQJ&Ot2PIg}qXgXjnalg*-8m*qQ7pF=9oOAEch2^I%B}sy+4<=jv*5ET7UK<`Eu%FC z^s_+x?;wY}b&*rBp8WZWdO=%T+d!Ka<2`(AoG#{pg>1aZ340c;F+fP_8cT|4c6N4c z&-Yx|CHm{^BiYvzRAKrtQ?^8oVgHVkA-K^X8 zi|S1a@LSF?7ij+wje>2?CBsYAlTgD^$Iw#YGL(Y8q{7Ovs)V_Y4#6F{v*B0AL^Bw1Zm6)m5N{Z?4%XI=T3*(A+usKfw0Vwse|mY0mx zneoK}|1K3#32P37~T{@GADJMZ~seSP%I25sMmBP3-;=iVirD)M$Z zc7OL9#&=ygYLVk_Ryw+;!0zv8INGC&I&zPXYI9`c{Y?pf&w^2Xh{di{fzM z;o;`sz(uI_ZG_kXBNx$a$y8sKEVz8+)#B2AG=qG7O@$3*X=9dISokqCzGSh0wEhN3 z-8Ik-4Yn+SRM=JOcd~0s3H6jghx#bY$9RiQGLS0=F;+11U zozA4L9uwBn(JC31@rJ7)_75lqW!ie-!iBDby3;2hU8q*GH78c9m+|22!usgZqiA`8 zO1Mpqd>%e;DRfwy8~}zZ8rp=(F^pmiJvpEVwD`1zx|ESZHXWFjH}*hMiOS-wquZ~8 ze|-G-v8jOIC-3d|dJA>2!lWb6o*ORd$OkSh>5g~yFSZa>s^yc0d6T`?nAI?GdaRa- z6^SI##Jt)8z?dBHz-ZwW(=CJ-kxFQwHd$kB`9VNfR*@@)9f63=)i>cphd+y#{_EV+2Hj5Sk+8ac}7 z?NoDtEFdCuBV!YqCZ);-Jctk-SD_@VrEBbcYW84;PL&E!jX(A5!bysxj328K-g_{! zf`J}80Syr#aYhfF&~<=1{v1Q63R6f{P>;uwO^vMLv^8PV$R4)wi*a_Kj!g9fzd$y+ z3bktJ#>JTJ^(*=!NS7s@W5|8B1Y%u;opYgt-R zkuik0%O%_ZTkKytmey$swO`y@w12wFku}}i3U=Vmw|r>U`9SLQh3vFq2i)^Dbg>3x rD$IFv{_dpmZ)cYO`#&Wr=3A{gx!i8qo^5bojvP5;gU$Q#^re3T(4QPU literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.8.self_attn_layer_norm.weight/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..fbc6a677b265d391609e0ebca5eb499f96ffedc2 GIT binary patch literal 13139 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 Nnwa69fA4tf-vI7e3d#Tg literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/cos_sim.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/cos_sim.png new file mode 100755 index 0000000000000000000000000000000000000000..a851beb839504cd50134398289922083d770ede6 GIT binary patch literal 8689 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/rel_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.bias/rel_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..477bd12f1434f5da36c6df7e50bbd4ccb21f7b49 GIT binary patch literal 14160 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 literal 0 HcmV?d00001 diff --git a/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/abs_diff.png b/egs/LJSpeech/ASR/outputs_sim/encoder.encoders.encoder.layers.9.fc1.weight/abs_diff.png new file mode 100755 index 0000000000000000000000000000000000000000..3ca5b188da07f25c137653efe3d33c06dd9ce538 GIT binary patch literal 9461 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