public class RMSProp<Model: Differentiable>: Optimizer
where
Model.TangentVector: VectorProtocol & PointwiseMultiplicative
& ElementaryFunctions & KeyPathIterable,
Model.TangentVector.VectorSpaceScalar == Float
एक आरएमएसप्रॉप अनुकूलक।
आरएमएसप्रॉप अनुकूलन एल्गोरिदम लागू करता है। आरएमएसप्रॉप स्टोकेस्टिक ग्रेडिएंट डिसेंट का एक रूप है जहां ग्रेडिएंट्स को उनके हाल के परिमाण के रनिंग औसत से विभाजित किया जाता है। आरएमएसप्रॉप प्रत्येक वजन के लिए वर्ग ग्रेडिएंट का मूविंग एवरेज रखता है।
सन्दर्भ:
- "व्याख्यान 6.5 - आरएमएसप्रॉप: ग्रेडिएंट को उसके हालिया परिमाण के रनिंग औसत से विभाजित करें" (टीलेमैन और हिंटन, 2012)
- "आवर्ती तंत्रिका नेटवर्क के साथ अनुक्रम उत्पन्न करना" (ग्रेव्स, 2013)
घोषणा
public typealias Model = Model
सीखने की दर.
घोषणा
public var learningRate: Float
ग्रेडिएंट मूविंग औसत क्षय कारक।
घोषणा
public var rho: Float
संख्यात्मक स्थिरता में सुधार के लिए हर में एक छोटा अदिश जोड़ा गया।
घोषणा
public var epsilon: Float
सीखने की दर में गिरावट.
घोषणा
public var decay: Float
कदम गिनती.
घोषणा
public var step: Float
सभी मॉडल भिन्न-भिन्न चरों के लिए अल्फा मान।
घोषणा
public var alpha: Model.TangentVector
model
के लिए एक उदाहरण बनाता है।घोषणा
public init( for model: __shared Model, learningRate: Float = 1e-3, rho: Float = 0.9, epsilon: Float = 1e-8, decay: Float = 0 )
पैरामीटर
learningRate
सीखने की दर. डिफ़ॉल्ट मान
1e-3
है.rho
ग्रेडिएंट मूविंग औसत क्षय कारक। डिफ़ॉल्ट मान
0.9
है.epsilon
संख्यात्मक स्थिरता में सुधार के लिए हर में एक छोटा अदिश जोड़ा गया। डिफ़ॉल्ट मान
1e-8
है.decay
सीखने की दर में गिरावट. डिफॉल्यू मूल्य
0
है ।घोषणा
public required init(copying other: RMSProp, to device: Device)