public class RMSProp<Model: Differentiable>: Optimizer
where
Model.TangentVector: VectorProtocol & PointwiseMultiplicative
& ElementaryFunctions & KeyPathIterable,
Model.TangentVector.VectorSpaceScalar == Float
เครื่องมือเพิ่มประสิทธิภาพ RMSProp
ใช้อัลกอริทึมการปรับให้เหมาะสม RMSProp RMSProp คือรูปแบบหนึ่งของการไล่ระดับสีแบบสุ่ม โดยที่การไล่ระดับสีจะถูกหารด้วยค่าเฉลี่ยรันของขนาดล่าสุด RMSProp เก็บค่าเฉลี่ยเคลื่อนที่ของการไล่ระดับสีกำลังสองสำหรับแต่ละน้ำหนัก
อ้างอิง:
- “การบรรยาย 6.5 - rmsprop: หารการไล่ระดับสีด้วยค่าเฉลี่ยรันของขนาดล่าสุด” (Tieleman และ Hinton, 2012)
- “การสร้างลำดับด้วยโครงข่ายประสาทเทียมที่เกิดซ้ำ” (Graves, 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)