อัปเดต '*var' ตามอัลกอริทึม RMSProp ที่อยู่กึ่งกลาง
อัลกอริธึม RMSProp ที่มีศูนย์กลางใช้การประมาณค่าของโมเมนต์ที่สองที่อยู่ตรงกลาง (เช่น ความแปรปรวน) สำหรับการทำให้เป็นมาตรฐาน ตรงข้ามกับ RMSProp ปกติ ซึ่งใช้โมเมนต์ที่สอง (ไม่อยู่ศูนย์กลาง) ซึ่งมักจะช่วยในการฝึกอบรม แต่จะมีราคาแพงกว่าเล็กน้อยในแง่ของการคำนวณและหน่วยความจำ
โปรดทราบว่าในการใช้อัลกอริธึมนี้อย่างหนาแน่น mg, ms และ mom จะอัปเดตแม้ว่าผู้สำเร็จการศึกษาจะเป็นศูนย์ แต่ในการใช้งานแบบเบาบางนี้ mg, ms และ mom จะไม่อัปเดตในการวนซ้ำในระหว่างที่ผู้สำเร็จการศึกษาเป็นศูนย์
Mean_Square = การสลาย * Mean_Square + (1-การสลายตัว) * การไล่ระดับสี ** 2 Mean_grad = การสลาย * Mean_grad + (1-การสลายตัว) * การไล่ระดับสี Delta = Learning_rate * การไล่ระดับสี / sqrt (mean_square + epsilon - Mean_grad ** 2)
ms<−rho∗mst−1+(1−rho)∗grad∗gradmom<−momentum∗momt−1+lr∗grad/sqrt(ms+epsilon)var<−var−mom
คลาสที่ซ้อนกัน
ระดับ | SparseApplyCenteredRmsProp.Options | แอ็ตทริบิวต์ทางเลือกสำหรับ SparseApplyCenteredRmsProp |
ค่าคงที่
สตริง | OP_NAME | ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow |
วิธีการสาธารณะ
เอาท์พุต <T> | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
คง <T ขยาย TType > SparseApplyCenteredRmsProp <T> | สร้าง ( ขอบเขต ขอบเขต ตัวดำเนินการ <T> var, ตัวดำเนินการ <T> mg, ตัวถูกดำเนิน การ <T> ms, ตัวถูกดำเนินการ <T> mom, ตัวถูกดำเนินการ <T> lr, ตัวถูกดำเนินการ <T> rho, ตัวถูกดำเนินการ <T> โมเมนตัม, ตัวถูกดำเนินการ <T > เอปไซลอน, ตัวดำเนินการ <T> ผู้สำเร็จการศึกษา, ตัวดำเนินการ <? ขยาย TNumber > ดัชนี, ตัวเลือก... ตัวเลือก) วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseApplyCenteredRmsProp ใหม่ |
เอาท์พุต <T> | ออก () เช่นเดียวกับ "var" |
SparseApplyCenteredRmsProp.Options แบบคงที่ | useLocking (การใช้ล็อคแบบบูลีน) |
วิธีการสืบทอด
บูลีน | เท่ากับ (วัตถุ arg0) |
คลาสสุดท้าย<?> | รับคลาส () |
ภายใน | แฮชโค้ด () |
โมฆะสุดท้าย | แจ้ง () |
โมฆะสุดท้าย | แจ้งทั้งหมด () |
สตริง | toString () |
โมฆะสุดท้าย | รอสักครู่ (ยาว arg0, int arg1) |
โมฆะสุดท้าย | รอ (ยาว arg0) |
โมฆะสุดท้าย | รอ () |
บทคัดย่อ ExecutionEnvironment | สิ่งแวดล้อม () ส่งคืนสภาพแวดล้อมการดำเนินการที่ op นี้ถูกสร้างขึ้น |
การดำเนินการ ที่เป็นนามธรรม |
เอาท์พุท นามธรรม <T> | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
นามธรรมต | แอสเทนเซอร์ () ส่งกลับเทนเซอร์ที่ตัวถูกดำเนินการนี้ |
รูปร่าง นามธรรม | |
คลาสนามธรรม<T> | พิมพ์ () ส่งกลับประเภทเทนเซอร์ของตัวถูกดำเนินการนี้ |
ค่าคงที่
สตริงสุดท้ายแบบคงที่สาธารณะ OP_NAME
ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow
วิธีการสาธารณะ
เอาท์พุท สาธารณะ <T> asOutput ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต
สาธารณะ SparseApplyCenteredRmsProp <T> สร้าง แบบคงที่ (ขอบเขต ขอบเขต , ตัวดำเนินการ <T> var, ตัวดำเนินการ <T> mg, ตัวดำเนินการ <T> ms, ตัวดำเนินการ <T> แม่, ตัวดำเนินการ <T> lr, ตัวดำเนินการ <T> rho, ตัวดำเนินการ <T > โมเมนตัม, ตัวดำเนินการ <T> เอปไซลอน, ตัวดำเนินการ <T> ผู้สำเร็จการศึกษา, ตัวดำเนินการ <? ขยาย TNumber > ดัชนี, ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseApplyCenteredRmsProp ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
var | ควรมาจากตัวแปร () |
มก | ควรมาจากตัวแปร () |
นางสาว | ควรมาจากตัวแปร () |
แม่ | ควรมาจากตัวแปร () |
ล | ปัจจัยการปรับขนาด ต้องเป็นสเกลาร์ |
โร | อัตราการสลายตัว ต้องเป็นสเกลาร์ |
เอปไซลอน | ระยะริดจ์ ต้องเป็นสเกลาร์ |
ผู้สำเร็จการศึกษา | การไล่ระดับสี |
ดัชนี | เวกเตอร์ของดัชนีในมิติแรกของ var, ms และ mom |
ตัวเลือก | มีค่าแอตทริบิวต์ทางเลือก |
การส่งคืน
- อินสแตนซ์ใหม่ของ SparseApplyCenteredRmsProp
สาธารณะ SparseApplyCenteredRmsProp.Options useLocking แบบคงที่ (useLocking แบบบูลีน)
พารามิเตอร์
ใช้ล็อค | หากเป็น "จริง" การอัปเดต var, mg, ms และ mom tensors ได้รับการปกป้องด้วยการล็อค มิฉะนั้นพฤติกรรมจะไม่ได้กำหนดไว้ แต่อาจแสดงความขัดแย้งน้อยลง |
---|