tf.saved_model.experimental.VariablePolicy
Перечисление, определяющее параметры обработки переменных при сохранении.
NONE Политика не применяется: распределённые переменные сохраняются как одна переменная без указания устройства.
SAVE_VARIABLE_DEVICES При сохранении переменных сохраняется также назначенное им устройство. Это полезно, если нужно жестко задать устройства в сохранённых моделях, но также делает их непереносимыми, если отключено программное размещение на устройствах (подробнее см. в разделе tf.config.set_soft_device_placement). В настоящее время это не полностью поддерживается функцией saved_model.load и предназначено главным образом для случаев, когда сохранённая модель будет считываться на более низком уровне API. В примере ниже граф, сохранённый вызовом saved_model.save, будет содержать корректно заданные устройства переменных:
exported = tf.train.Checkpoint()
with tf.device('/GPU:0'):
exported.x_gpu = tf.Variable(1.0)
with tf.device('/CPU:0'):
exported.x_cpu = tf.Variable(1.0)
tf.saved_model.save(exported, export_dir,
options = tf.saved_model.SaveOptions(
experimental_variable_policy=
tf.saved_model.experimental.VariablePolicy.SAVE_VARIABLE_DEVICES))
При использовании этой политики распределённые переменные по-прежнему сохраняются как одна переменная.
EXPAND_DISTRIBUTED_VARIABLES Распределённые переменные сохраняются вместе с информацией об их компонентах, что позволяет восстановить их при загрузке. Кроме того, сохранённый граф будет содержать ссылки на эти переменные. Это полезно, если модель планируется использовать для обучения в средах, где исходная стратегия распределения недоступна.
| Переменные класса | |
|---|---|
| EXPAND_DISTRIBUTED_VARIABLES | <VariablePolicy.EXPAND_DISTRIBUTED_VARIABLES: 'expand_distributed_variables'> |
| NONE | <VariablePolicy.NONE: None> |
| SAVE_VARIABLE_DEVICES | <VariablePolicy.SAVE_VARIABLE_DEVICES: 'save_variable_devices'> |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/saved_model/experimental/VariablePolicy