Недостаток в Керасе -> обучение под угрозой? Пользовательские слои с функциональным API приводят к отсутствию весов в trainable_variables и non_trainable_variables - PullRequest
0 голосов
/ 14 июля 2020

Мне интересно, является ли это серьезной ошибкой / недостатком в Керасе; использование пользовательских слоев с функциональным API приводит к отсутствию весов в trainable_variables. Эти веса также не входят в «non_trainable_variables».

Но если этих весов нет в trainable_variables, они существенно заморожены, поскольку только те веса получают обновления градиента.

Ошибку можно увидеть в этом Colab gist

https://colab.research.google.com/gist/Santosh-Gupta/766a27c1500a330cba6f479805dad27d/missingtrainablevarsinference.ipynb

В этой сущности для создания моделей используется библиотека transformers, поэтому ошибку легко увидеть. Для более детального просмотра приведенная ниже таблица создает все пользовательские слои с нуля

https://colab.research.google.com/gist/Santosh-Gupta/ec9f7c8a189a8d99e73d96fbe728aef8/model_weight_debug_scratch_public_inference.ipynb

Как вы можете видеть в записных книжках, обходной путь заключается в создавать модели, используя подклассы keras для создания моделей; в результате создания подклассов все веса появляются в trainable_variables.

Однако у меня есть модели, которые я уже обучал с помощью функционального API. Я смотрел на это около месяца, насколько я могу судить, любая модель Keras, использующая настраиваемые подслои и функциональный API, подвержена этому. И мне интересно, есть ли какие-либо другие модели, которые я тренировал с пользовательскими слоями и функциональным API, которые могли скомпрометировать обучение

Я поставил проблему Github 24 дня go, но я не могу сказать, это

https://github.com/tensorflow/tensorflow/issues/40638

У меня есть крайние сроки для моделей, которые я обучил, поэтому мне очень любопытно, какова природа этого проблема, чтобы я мог точно сообщить о своих результатах, и мне интересно, есть ли какие-либо способы получить более полное представление об этой проблеме.

...