public class AMSGrad<Model: Differentiable & KeyPathIterable>: Optimizer
where
Model.TangentVector: VectorProtocol & PointwiseMultiplicative & ElementaryFunctions
& KeyPathIterable,
Model.TangentVector.VectorSpaceScalar == Float
Trình tối ưu hóa AMSGrad.
Thuật toán này là sự sửa đổi của Adam với đặc tính hội tụ tốt hơn khi gần với tối ưu cục bộ.
Tham khảo: “Về sự hội tụ của Adam và thế giới bên kia”
Tuyên ngôn
public typealias Model = Model
Tỷ lệ học tập.
Tuyên ngôn
public var learningRate: Float
Một hệ số được sử dụng để tính toán khoảnh khắc thứ nhất và thứ hai của độ dốc.
Tuyên ngôn
public var beta1: Float
Một hệ số được sử dụng để tính toán khoảnh khắc thứ nhất và thứ hai của độ dốc.
Tuyên ngôn
public var beta2: Float
Một đại lượng vô hướng nhỏ được thêm vào mẫu số để cải thiện độ ổn định về số.
Tuyên ngôn
public var epsilon: Float
Tỷ lệ học tập suy giảm.
Tuyên ngôn
public var decay: Float
Bước hiện tại.
Tuyên ngôn
public var step: Int
Những khoảnh khắc đầu tiên của tạ.
Tuyên ngôn
public var firstMoments: Model.TangentVector
Khoảnh khắc thứ hai của tạ.
Tuyên ngôn
public var secondMoments: Model.TangentVector
Tối đa khoảnh khắc thứ hai của trọng lượng.
Tuyên ngôn
public var secondMomentsMax: Model.TangentVector
Tuyên ngôn
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 )
Tuyên ngôn
public required init(copying other: AMSGrad, to device: Device)