public class AMSGrad<Model: Differentiable & KeyPathIterable>: Optimizer
where
Model.TangentVector: VectorProtocol & PointwiseMultiplicative & ElementaryFunctions
& KeyPathIterable,
Model.TangentVector.VectorSpaceScalar == Float
محسن AMSGrad.
هذه الخوارزمية عبارة عن تعديل لخوارزمية آدم مع خصائص تقارب أفضل عندما تكون قريبة من الأمثل المحلي.
المرجع: "في التقاء آدم وما بعده"
تصريح
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 secondMoments: Model.TangentVector
الحد الأقصى للحظات الثانية من الأوزان.
تصريح
public var secondMomentsMax: Model.TangentVector
تصريح
public init( for model: __shared Model, learningRate: Float = 1e-3, beta1: Float = 0.9, beta2: Float = 0.999, epsilon: Float = 1e-8, decay: Float = 0 )
تصريح
public required init(copying other: AMSGrad, to device: Device)