Я знаю, что можно, например, с помощью TensorFlow, но также и в PyTorch или чего-либо еще, сохранять экземпляр обученной (или обучаемой) модели таким образом, чтобы он мог быть загружен в будущем или загружен на другой машине.или просто использовать его в качестве контрольной точки во время обучения.
Интересно, есть ли способ, например, упомянутый выше, сохранить разницу (возможно, не алгебраическое вычитание, а аналогичноеконцепция, всегда относящаяся к работе над тензорами) между двумя экземплярами одной и той же нейронной сети (одна и та же архитектура, разные веса) в целях эффективности.Если вам интересно, почему это должно быть удобно, рассмотрите гипотетический параметр, в котором существуют разные сущности, и все они знают экземпляр модели («разделяемая модель»), поэтому можно использовать «разницу», рассчитанную для этой совместно используемой модели.полезно с точки зрения места для хранения или с точки зрения пропускной способности (если локальные параметры модели должны быть отправлены через Интернет на другую машину).Гипотеза заключается в том, что можно реконструировать модель, зная общую модель и «разницу» с моделью для реконструкции.
Подводя итог моим вопросам:
- Есть ли в TensorFlow, Pytorch и т. Д. Какие-либо встроенные функции для этого?
- Это может быть удобно в вашеммнение сделать что-то подобное?Если нет, то почему?
PS: В литературе эта концепция существует, и она недавно была исследована в рамках темы "Федеративное обучение", и упомянутая мною "разница" называется update .