public class AdaMax<Model: Differentiable & KeyPathIterable>: Optimizer
where
Model.TangentVector: VectorProtocol & PointwiseMultiplicative & ElementaryFunctions
& KeyPathIterable,
Model.TangentVector.VectorSpaceScalar == Float
AdaMax オプティマイザー。
無限規範に基づいたアダムの変形。
参考: 「Adam - 確率的最適化の手法」のセクション 7
宣言
public typealias Model = Model
学習率。
宣言
public var learningRate: Float
勾配の最初のモーメント (平均) を推定するために使用される減衰率。
宣言
public var beta1: Float
指数関数的に重み付けされた無限ノルムを推定するために使用される減衰率。
宣言
public var beta2: Float
数値の安定性を向上させるために、分母に小さなスカラーが追加されました。
宣言
public var epsilon: Float
学習率が低下します。
宣言
public var decay: Float
歩数。
宣言
public var step: Int
重みの最初の瞬間。
宣言
public var firstMoments: Model.TangentVector
指数関数的に重み付けされた重みの無限ノルム。
宣言
public var infinityNorm: Model.TangentVector
注: デフォルトのパラメータは、論文で提供されているパラメータに従います。
宣言
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 )
宣言
public required init(copying other: AdaMax, to device: Device)