Spec-Zone.ru › TensorFlow

tf.keras.DTypePolicy

Политика типа данных для слоя Keras.

Просмотреть псевдонимы

Основные псевдонимы

tf.keras.dtype_policies.DTypePolicy, tf.keras.mixed_precision.DTypePolicy, tf.keras.mixed_precision.Policy

Псевдонимы совместимости для переноса

Подробнее см. в руководстве по переносу.

tf.compat.v1.keras.DTypePolicy

tf.keras.DTypePolicy(
    name
)

Используется в блокнотах

Используется в руководстве
  • Смешанная точность

Политика типа данных определяет типы данных вычислений и переменных слоя. У каждого слоя есть своя политика. Политики можно передавать в аргумент dtype конструкторов слоёв или задать глобальную политику с помощью keras.config.set_dtype_policy.

Аргументы
name Имя политики, определяющее типы данных вычислений и переменных. Может быть любым именем типа данных, например "float32" или "float64", при этом для вычислений и переменных будет использоваться указанный тип данных. Также может быть строкой "mixed_float16" или "mixed_bfloat16"; в этом случае для вычислений будет использоваться тип float16 или bfloat16, а для переменных — тип float32.

Обычно взаимодействовать с политиками типов данных нужно только при использовании смешанной точности — то есть при использовании float16 или bfloat16 для вычислений и float32 для переменных. Поэтому в имени API используется термин mixed_precision. Смешанную точность можно включить, передав "mixed_float16" или "mixed_bfloat16" в keras.mixed_precision.set_dtype_policy().

keras.config.set_dtype_policy("mixed_float16")
layer1 = keras.layers.Dense(10)
layer1.dtype_policy  # layer1 will automatically use mixed precision
<DTypePolicy "mixed_float16">
# Can optionally override layer to use float32
# instead of mixed precision.
layer2 = keras.layers.Dense(10, dtype="float32")
layer2.dtype_policy
<DTypePolicy "float32">
# Set policy back to initial float32.
keras.config.set_dtype_policy('float32')

В приведённом выше примере передача dtype="float32" слою эквивалентна передаче dtype=keras.config.DTypePolicy("float32"). В общем случае передача имени политики типа данных слою эквивалентна передаче соответствующей политики, поэтому явно создавать объект DTypePolicy никогда не требуется.

Атрибуты
compute_dtype Тип данных вычислений этой политики.

Это тип данных, в котором слои выполняют вычисления. Обычно слои также выдают тензоры с этим типом данных.

Обратите внимание: даже если тип данных вычислений — float16 или bfloat16, аппаратные устройства могут выполнять отдельные операции сложения, умножения и другие базовые операции не в float16 или bfloat16, а в float32, чтобы повысить числовую стабильность. Тип данных вычислений — это тип данных входов и выходов операций, выполняемых слоем. Для повышения числовой стабильности многие операции внутри могут выполнять отдельные вычисления в float32 или в другом внутреннем промежуточном формате устройства с более высокой точностью, чем float16/bfloat16.

name Возвращает имя этой политики.
variable_dtype Тип данных переменных этой политики.

Это тип данных, в котором слои создают переменные, если слой явно не задаёт другой тип данных. Если он отличается от типа DTypePolicy.compute_dtype, слои преобразуют тип переменных к типу данных вычислений, чтобы избежать ошибок типов.

Регуляризаторы переменных выполняются с типом данных переменных, а не с типом данных вычислений.

Методы

convert_input

Посмотреть исходный код

convert_input(
    x, autocast, dtype
)

from_config

Посмотреть исходный код

@classmethod
from_config(
    config
)

get_config

Посмотреть исходный код

get_config()

© 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/keras/DTypePolicy

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API