add Chinese distill-whisper fine-tuning results #1648
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In #1605, we fine-tuned whisper using 14k hours Chinese data. This PR added decoding results for distill-whisper fine-tuning experiment.
Instead of actually using distillation loss for training, the model structure and parameter initialization method from the distill-whisper paper (https://arxiv.org/abs/2311.00430) were adopted: only the first and last layers of the decoder were retained.
Accuracy:
Distill-whisper is slightly worse comparing with norm whisper.
Speed:
![image](https://private-user-images.githubusercontent.com/28823245/338894248-9069ef91-641d-48f3-881e-47f6336e238f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkxNjI5MzEsIm5iZiI6MTczOTE2MjYzMSwicGF0aCI6Ii8yODgyMzI0NS8zMzg4OTQyNDgtOTA2OWVmOTEtNjQxZC00OGYzLTg4MWUtNDdmNjMzNmUyMzhmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEwVDA0NDM1MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWI1ZTJiOGZkYjZlZTQ5MTk3MGEyMTVkMmUyNmRmNDgyNGFjMTgyYWNkNzE3OGM1ZGE1MDI1YmY1MmE3ZTE4NTQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.FZXnwtZQ0q6B1J-0Aa1OOG2GPonVy4py8nNkNoUSuTI)
![image](https://private-user-images.githubusercontent.com/28823245/338894459-c3f7abd8-bbe7-4794-ad6f-a2d67fe31245.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkxNjI5MzEsIm5iZiI6MTczOTE2MjYzMSwicGF0aCI6Ii8yODgyMzI0NS8zMzg4OTQ0NTktYzNmN2FiZDgtYmJlNy00Nzk0LWFkNmYtYTJkNjdmZTMxMjQ1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEwVDA0NDM1MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTFiM2YxZjNkMGFkMzkwZDI2YTg3NWRiMmQ1ZTMwOWVjMjlhOGI0YTY2MTI0MDFjOWQ0NDllNjRjZDgyZTdiNGQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.Jxcoh_WJ0i_bVoa_zj5oNP-H1cmzpU9pMXpyxsLQR5M)
Every decoding step could acclerate about 4x comparing with the original decoder.
Norm whisper: 32 decoder layers
Distill-whisper: 2 decoder layers
For a quick test: https://huggingface.co/yuekai/icefall_asr_multi-hans-zh_whisper/blob/main/test_model.py