Spec-Zone.ru › TensorFlow

tf.keras.Optimizer

Класс для логики оптимизатора, специфичной для TensorFlow.

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

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

tf.keras.optimizers.Optimizer

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

Подробнее см. в руководстве по миграции.

tf.compat.v1.keras.Optimizer

tf.keras.Optimizer(
    *args, **kwargs
)

Основное изменение поведения этого класса связано с tf.distribute.

Он переопределяет методы базового оптимизатора Keras Core, обеспечивающие функциональность для распределенных вычислений, например создание переменных, сведение функции потерь и т. д.

Атрибуты
learning_rate
variables

Методы

add_variable

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

add_variable(
    shape,
    initializer='zeros',
    dtype=None,
    aggregation='mean',
    name=None
)

add_variable_from_reference

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

add_variable_from_reference(
    reference_variable, name=None, initializer='zeros'
)

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

apply

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

apply(
    grads, trainable_variables=None
)

Обновляет обучаемые переменные в соответствии с заданными значениями градиентов.

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

trainable_variables можно передать при первом вызове для создания оптимизатора.

apply_gradients

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

apply_gradients(
    grads_and_vars
)

assign

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

assign(
    variable, value
)

Присваивает переменной значение.

В оптимизаторах следует использовать этот метод вместо variable.assign(value) для поддержки оптимизаций, специфичных для бэкенда. Обратите внимание: переменная может быть переменной модели или оптимизатора; она может быть собственной переменной бэкенда или переменной Keras.

Аргументы
variable Переменная для обновления.
value Значение, которое нужно добавить к переменной.

assign_add

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

assign_add(
    variable, value
)

Добавляет значение к переменной.

В оптимизаторах следует использовать этот метод вместо variable.assign_add(value) для поддержки оптимизаций, специфичных для бэкенда. Обратите внимание: переменная может быть переменной модели или оптимизатора; она может быть собственной переменной бэкенда или переменной Keras.

Аргументы
variable Переменная для обновления.
value Значение, которое нужно добавить к переменной.

assign_sub

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

assign_sub(
    variable, value
)

Вычитает значение из переменной.

В оптимизаторах следует использовать этот метод вместо variable.assign_sub(value) для поддержки оптимизаций, специфичных для бэкенда. Обратите внимание: переменная может быть переменной модели или оптимизатора; она может быть собственной переменной бэкенда или переменной Keras.

Аргументы
variable Переменная для обновления.
value Значение, которое нужно добавить к переменной.

build

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

build(
    variables
)

exclude_from_weight_decay

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

exclude_from_weight_decay(
    var_list=None, var_names=None
)

Исключает переменные из затухания весов.

Этот метод необходимо вызвать до вызова метода оптимизатора build. Можно указать переменные, которые следует исключить, или задать список строк в качестве ключевых слов: если какое-либо из них встречается в имени переменной, эта переменная исключается.

Аргументы
var_list Список Variable, которые нужно исключить из затухания весов.
var_names Список строк. Если какая-либо строка из var_names встречается в имени переменной модели, эта переменная модели исключается из затухания весов. Например, var_names=['bias'] исключает все переменные смещения из затухания весов.

finalize_variable_values

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

finalize_variable_values(
    var_list
)

Задает итоговые значения обучаемых переменных модели.

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

Аргументы
var_list Список переменных модели.

from_config

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

@classmethod
from_config(
    config, custom_objects=None
)

Создает оптимизатор на основе его конфигурации.

Этот метод является обратным по отношению к get_config и позволяет создать такой же оптимизатор из словаря конфигурации.

Аргументы
config Словарь Python, обычно полученный с помощью get_config.
custom_objects Словарь Python, сопоставляющий имена с дополнительными объектами Python, определенными пользователем и необходимыми для повторного создания этого оптимизатора.
Возвращает
Экземпляр оптимизатора.

get_config

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

get_config()

Возвращает конфигурацию оптимизатора.

Конфигурация оптимизатора — это сериализуемый словарь Python, содержащий параметры оптимизатора. Позднее оптимизатор можно создать заново (без сохраненного состояния) на основе этой конфигурации.

Производный класс оптимизатора должен переопределить этот метод, чтобы включить другие гиперпараметры.

Возвращает
Словарь Python.

load_own_variables

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

load_own_variables(
    store
)

Задает состояние этого объекта оптимизатора.

save_own_variables

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

save_own_variables(
    store
)

Получает состояние этого объекта оптимизатора.

scale_loss

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

scale_loss(
    loss
)

Масштабирует функцию потерь перед вычислением градиентов.

Масштабирует функцию потерь перед вычислением градиентов в train_step. Это особенно полезно при обучении со смешанной точностью, чтобы предотвратить численное исчезновение значений при переполнении вниз.

set_weights

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

set_weights(
    weights
)

Задает веса оптимизатора.

stateless_apply

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

stateless_apply(
    optimizer_variables, grads, trainable_variables
)

update_step

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

update_step(
    gradient, variable, learning_rate
)

© 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/Optimizer

Spec-Zone.ru

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