Обновите соответствующие записи в '*var' по схеме Ftrl-proximal.
То есть для строк, для которых у нас есть grad, мы обновляем var, accum и Linear следующим образом: grad_with_shrinkage = grad + 2 * l2_shrinkage * var accum_new = accum + grad * grad Linear += grad_with_shrinkage - (accum_new^(-lr_power) - accum^ (-lr_power)) / lr * var квадратичная = 1,0 / (accum_new^(lr_power) * lr) + 2 * l2 var = (sign(линейная) * l1 - линейная) / квадратичная, если |linear| > l1 еще 0,0 аккум = аккум_новый
Вложенные классы
сорт | SparseApplyFtrl.Options | Необязательные атрибуты для SparseApplyFtrl |
Константы
Нить | OP_NAME | Название этой операции, известное основному движку TensorFlow. |
Публичные методы
Выход <Т> | какВывод () Возвращает символический дескриптор тензора. |
static <T расширяет TType > SparseApplyFtrl <T> | create ( Область видимости , Операнд <T> var, Операнд <T> accum, Операнд <T> линейный, Операнд <T> град, Операнд <? расширяет индексы TNumber >, Операнд <T> lr, Операнд <T> l1, Операнд <T> l2, Операнд <T> l2Сжатие, Операнд <T> lrPower, Опции... опции) Фабричный метод для создания класса, обертывающего новую операцию SparseApplyFtrl. |
статический SparseApplyFtrl.Options | MultipleLinearByLr (логическое значение MultipleLinearByLr) |
Выход <Т> | вне () То же, что «вар». |
статический SparseApplyFtrl.Options | useLocking (логическое значение useLocking) |
Унаследованные методы
Константы
общедоступная статическая финальная строка OP_NAME
Название этой операции, известное основному движку TensorFlow.
Публичные методы
публичный вывод <T> asOutput ()
Возвращает символический дескриптор тензора.
Входные данные для операций TensorFlow являются выходными данными другой операции TensorFlow. Этот метод используется для получения символического дескриптора, который представляет собой вычисление входных данных.
public static SparseApplyFtrl <T> create ( Область действия, Операнд <T> var, Операнд <T> accum, Операнд <T> линейный, Операнд <T> град, Операнд <? расширяет индексы TNumber >, Операнд <T> lr, Операнд <T> l1, Операнд <T> l2, Операнд <T> l2Сжатие, Операнд <T> lrPower, Опции... опции)
Фабричный метод для создания класса, обертывающего новую операцию SparseApplyFtrl.
Параметры
объем | текущий объем |
---|---|
вар | Должно быть из переменной(). |
накапливать | Должно быть из переменной(). |
линейный | Должно быть из переменной(). |
выпускник | Градиент. |
индексы | Вектор индексов в первом измерении var и accum. |
лр | Коэффициент масштабирования. Должно быть скаляр. |
л1 | Регуляризация L1. Должно быть скаляр. |
л2 | Регуляризация усадки L2. Должно быть скаляр. |
lrPower | Коэффициент масштабирования. Должно быть скаляр. |
параметры | содержит значения необязательных атрибутов |
Возврат
- новый экземпляр SparseApplyFtrl
общедоступный статический SparseApplyFtrl.Options MultipleLinearByLr (логическое значение MultipleLinearByLr)
public static SparseApplyFtrl.Options useLocking (логическое значение useLocking)
Параметры
использоватьLocking | Если `True`, обновление тензоров var и accum будет защищено блокировкой; в противном случае поведение не определено, но может вызывать меньше конфликтов. |
---|