public struct ParameterGroupOptimizerBuilder
Создает ParameterGroupOptimizer
. Это используется по существу на уровне одного веса в модели. Сопоставление групп параметров, выбранных с помощью ( [Bool]
с Оптимизатором Группы Параметров), определяет окончательный оптимизатор.
Декларация
public init()
Декларация
public mutating mutating func makeParameter(_ name: String, _ value: Float) -> GlobalAccessor
Декларация
public subscript(global: GlobalAccessor) -> Float { get }
Декларация
public subscript(state name: String) -> StateAccessor { mutating get }
Декларация
public subscript(local name: String) -> LocalAccessor { mutating get }
Добавляет обратный вызов в список обратных вызовов.
Декларация
public mutating mutating func appendCallback(_ cb: @escaping OptimizerCallback)
Возвращает оптимизатор и очищает построитель.
Декларация
public mutating mutating func makeOptimizer() -> ParameterGroupOptimizer
Применяет sgdStep с импульсом к оптимизации текущей группы параметров.
Декларация
public mutating func sgdStep( nesterov: Bool, mom: GlobalAccessor, lr: GlobalAccessor, velocity: StateAccessor )
Вычисляет clippedTrustRatio (используется в LARS).
Декларация
public mutating func clippedTrustRatio( trustCoefficient: GlobalAccessor, epsilon: GlobalAccessor, weightDecay: GlobalAccessor ) -> LocalAccessor
Масштабирует градиент с помощью TrustRatio (используется в LARS).
Декларация
public mutating mutating func scaleGradByTrustRatio(trustRatio: LocalAccessor)
Применяет масштабирование затухания веса к градиенту.
Декларация
public mutating mutating func scaleGradient(byWeightDecay weightDecay: GlobalAccessor)
Пересчитывает параметр скорости на основе нового градиента (масштабируемого скоростью обучения).
Декларация
public mutating func updateVelocity( mom: GlobalAccessor, lr: GlobalAccessor, velocity: StateAccessor )