public class AdaMax<Model: Differentiable & KeyPathIterable>: Optimizer
where
Model.TangentVector: VectorProtocol & PointwiseMultiplicative & ElementaryFunctions
& KeyPathIterable,
Model.TangentVector.VectorSpaceScalar == Float
Optymalizator AdaMax.
Wariant Adama oparty na normie nieskończoności.
Odniesienie: Sekcja 7 książki „Adam – metoda optymalizacji stochastycznej”
Deklaracja
public typealias Model = Model
Szybkość uczenia się.
Deklaracja
public var learningRate: Float
Szybkość zaniku używana do oszacowania pierwszego momentu (średniego) gradientów.
Deklaracja
public var beta1: Float
Szybkość zaniku wykorzystana do oszacowania wykładniczo ważonej normy nieskończoności.
Deklaracja
public var beta2: Float
Mały skalar dodany do mianownika w celu poprawy stabilności liczbowej.
Deklaracja
public var epsilon: Float
Spadek szybkości uczenia się.
Deklaracja
public var decay: Float
Liczba kroków.
Deklaracja
public var step: Int
Pierwsze chwile z ciężarami.
Deklaracja
public var firstMoments: Model.TangentVector
Wykładniczo ważona nieskończona norma wag.
Deklaracja
public var infinityNorm: Model.TangentVector
Uwaga: Domyślne parametry są zgodne z tymi podanymi w artykule.
Deklaracja
public init( for model: __shared Model, learningRate: Float = 0.002, beta1: Float = 0.9, beta2: Float = 0.999, epsilon: Float = 1e-8, decay: Float = 0 )
Deklaracja
public required init(copying other: AdaMax, to device: Device)