Я прочитал официальный документ о смешанной точности в tenorflow 2.1 и получил несколько вопросов о смешанной точности:
- Почему мы приводим выходные данные к
float32
даже когда мы используем mixed_float16
, что на самом деле выводит float16
в промежуточных слоях? Официальный документ говорит, что выходные данные float16
не всегда численно стабильны, но что это значит? Почему просто приведение к float32
улучшит стабильность чисел c? - В документе рекомендуется использовать масштабирование потерь, чтобы избежать потери значения. Тем не менее, поскольку все веса, потери и градиенты сети равны
float32
, как может происходить такой недостаток?