อัปเดตรายการที่เกี่ยวข้องใน '*var' และ '*accum' ตามรูปแบบโมเมนตัม
ตั้งค่า use_nesterov = True หากคุณต้องการใช้โมเมนตัม Nesterov
นั่นคือสำหรับแถวที่เราได้ grad เราอัพเดต var และ accum ดังนี้:
$$accum = accum * momentum + grad$$$$var -= lr * accum$$
คลาสที่ซ้อนกัน
ระดับ | SparseApplyMomentum.ตัวเลือก | แอ็ตทริบิวต์ทางเลือกสำหรับ SparseApplyMomentum |
ค่าคงที่
สตริง | OP_NAME | ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow |
วิธีการสาธารณะ
เอาท์พุต <T> | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
คง <T ขยาย TType > SparseApplyMomentum <T> | สร้าง ( ขอบเขต ขอบเขต ตัวดำเนินการ <T> var, ตัวดำเนินการ <T> สะสม, ตัวดำเนินการ <T> lr, ตัวดำเนินการ <T> ผู้สำเร็จการศึกษา, ตัวดำเนินการ <? ขยาย TNumber > ดัชนี, ตัวดำเนินการ <T> โมเมนตัม, ตัวเลือก... ตัวเลือก) วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseApplyMomentum ใหม่ |
เอาท์พุต <T> | ออก () เช่นเดียวกับ "var" |
SparseApplyMomentum.Options แบบคงที่ | useLocking (การใช้ล็อคแบบบูลีน) |
SparseApplyMomentum.Options แบบคงที่ | useNesterov (การใช้บูลีน UseNesterov) |
วิธีการสืบทอด
ค่าคงที่
สตริงสุดท้ายแบบคงที่สาธารณะ OP_NAME
ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow
วิธีการสาธารณะ
เอาท์พุท สาธารณะ <T> asOutput ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต
สาธารณะ SparseApplyMomentum <T> สร้าง แบบคงที่ (ขอบเขต ขอบเขต , ตัวดำเนินการ <T> var, ตัวดำเนินการ <T> สะสม, ตัวดำเนินการ <T> lr, ตัวดำเนินการ <T> ผู้สำเร็จการศึกษา, ตัวดำเนินการ <? ขยาย TNumber > ดัชนี, ตัว ดำเนินการ <T> โมเมนตัม, ตัวเลือก ... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseApplyMomentum ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
var | ควรมาจากตัวแปร () |
สะสม | ควรมาจากตัวแปร () |
ล | อัตราการเรียนรู้ ต้องเป็นสเกลาร์ |
ผู้สำเร็จการศึกษา | การไล่ระดับสี |
ดัชนี | เวกเตอร์ของดัชนีในมิติแรกของ var และ accum |
โมเมนตัม | โมเมนตัม ต้องเป็นสเกลาร์ |
ตัวเลือก | มีค่าแอตทริบิวต์ทางเลือก |
การส่งคืน
- อินสแตนซ์ใหม่ของ SparseApplyMomentum
สาธารณะ SparseApplyMomentum.Options useLocking แบบคงที่ (useLocking แบบบูลีน)
พารามิเตอร์
ใช้ล็อค | หากเป็น "จริง" การอัปเดต var และ accum tensor จะได้รับการปกป้องด้วยการล็อค มิฉะนั้นพฤติกรรมจะไม่ได้กำหนดไว้ แต่อาจแสดงความขัดแย้งน้อยลง |
---|
สาธารณะ SparseApplyMomentum.Options useNesterov แบบคงที่ (useNesterov แบบบูลีน)
พารามิเตอร์
ใช้ Nesterov | หาก "จริง" เทนเซอร์ที่ส่งผ่านเพื่อคำนวณ Grad จะเป็น var - lr * โมเมนตัม * สะสม ดังนั้นในท้ายที่สุด var ที่คุณได้รับก็คือ var - lr * โมเมนตัม * สะสม |
---|