অ্যাডাডেল্টা

public class AdaDelta<Model: Differentiable>: Optimizer
where
  Model.TangentVector: VectorProtocol & PointwiseMultiplicative
    & ElementaryFunctions & KeyPathIterable,
  Model.TangentVector.VectorSpaceScalar == Float

একটি অ্যাডাডেল্টা অপ্টিমাইজার।

AdaDelta অপ্টিমাইজেশান অ্যালগরিদম প্রয়োগ করে। AdaDelta হল প্রথম অর্ডার তথ্যের উপর ভিত্তি করে একটি স্টোকাস্টিক গ্রেডিয়েন্ট ডিসেন্ট পদ্ধতি। এটি গ্রেডিয়েন্ট আপডেটের চলমান উইন্ডোর উপর ভিত্তি করে শেখার হারগুলিকে অভিযোজিত করে, পরিবর্তে সমস্ত অতীত গ্রেডিয়েন্ট জমা করে। এইভাবে, অনেক আপডেট করা হয়ে গেলেও অ্যাডাডেল্টা শেখা অব্যাহত রাখে। এটি অপ্টিমাইজেশান সমস্যার স্থান পরিবর্তনের গতিবিদ্যার সাথে দ্রুত খাপ খায়।

রেফারেন্স: "ADADELTA: একটি অভিযোজিত শেখার হার পদ্ধতি" (Zeiler, 2012)

  • ঘোষণা

    public typealias Model = Model
  • শেখার হার।

    ঘোষণা

    public var learningRate: Float
  • rho

    ক্ষয় ফ্যাক্টর, প্রতিটি সময় ধাপে রাখা গ্রেডিয়েন্টের ভগ্নাংশের সাথে সঙ্গতিপূর্ণ।

    ঘোষণা

    public var rho: Float
  • সাংখ্যিক স্থিতিশীলতা উন্নত করতে হরটিতে একটি ছোট স্কেলার যোগ করা হয়েছে।

    ঘোষণা

    public var epsilon: Float
  • শেখার হার ক্ষয়।

    ঘোষণা

    public var decay: Float
  • বর্তমান পদক্ষেপ।

    ঘোষণা

    public var step: Int
  • বর্গাকৃতি গ্রেডিয়েন্টের সঞ্চিত, দ্রুতগতিতে ক্ষয়প্রাপ্ত গড়।

    ঘোষণা

    public var averageSquared: Model.TangentVector
  • জমা পরামিতি আপডেট.

    ঘোষণা

    public var accumulatedDelta: Model.TangentVector
  • model জন্য একটি উদাহরণ তৈরি করে।

    ঘোষণা

    public init(
      for model: __shared Model,
      learningRate: Float = 1,
      rho: Float = 0.95,
      epsilon: Float = 1e-6,
      decay: Float = 0
    )

    পরামিতি

    learningRate

    শেখার হার। ডিফল্ট মান হল 1

    rho

    ক্ষয় ফ্যাক্টর. ডিফল্ট মান হল 0.95

    epsilon

    সাংখ্যিক স্থিতিশীলতা উন্নত করতে হরটিতে একটি ছোট স্কেলার যোগ করা হয়েছে। ডিফল্ট মান হল 1e-6

    decay

    শেখার হার ক্ষয়। ডিফল্ট মান হল 0

  • ঘোষণা

    public func update(_ model: inout Model, along direction: Model.TangentVector)
  • ঘোষণা

    public required init(copying other: AdaDelta, to device: Device)