Skip to content

Set scale_embedding to False in some TF tests#15952

Merged
ydshieh merged 2 commits intohuggingface:masterfrom
ydshieh:set_scale_embedding_to_false_in_some_tf_tests
Mar 7, 2022
Merged

Set scale_embedding to False in some TF tests#15952
ydshieh merged 2 commits intohuggingface:masterfrom
ydshieh:set_scale_embedding_to_false_in_some_tf_tests

Conversation

@ydshieh
Copy link
Collaborator

@ydshieh ydshieh commented Mar 5, 2022

What does this PR do?

This PR set scale_embedding=False in TFSpeech2TextModelTester to avoid inputs_embeds and the PT/TF difference being scaled by 4 - the objective is to keep a low tolerance 1e-5 in the PT/TF test, as we see several times this is a strong safe guard!

(This is not a real bug. It's also similar to #15684, where we got larger differences between PT/TF simply because the model weights are initialized with larger values).

TF: @gante @Rocketknight1
Speech: @patrickvonplaten

More context

Set scale_embedding to False in some TF tests.

Current Speech2TextConfig has default scale_embedding=True. Therefore we have

inputs_embeds = self.conv(inputs["input_features"])
inputs_embeds = self.embed_scale * inputs_embeds

Since inputs_embeds here is obtained by some (conv.) layer instead of via look-up table, it contains some tiny difference between PT/TF. This difference is scaled by 4 through self.embed_scale.

This makes TFSpeech2TextModel the only one model that will fail the aggressive PT/TF test introduced in #15839 (with low tolerance 1e-5). More precisely, the output tensors failed are encoder_hidden_states_0 and encoder_hidden_states_1.

Results

With this PR, the tolerance 1e-5 works for all TF models' test_pt_tf_model_equivalence (in #15839), both on GPU / CPU, tested 100 times per model.

@HuggingFaceDocBuilderDev

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

@ydshieh ydshieh merged commit 8b9ae45 into huggingface:master Mar 7, 2022
@ydshieh ydshieh deleted the set_scale_embedding_to_false_in_some_tf_tests branch March 7, 2022 21:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants