อัปเดตรายการที่เกี่ยวข้องใน '*var' ตามรูปแบบ Ftrl-proximal
นั่นคือสำหรับแถวที่เรามี grad เราอัปเดต var, accum และ linear ดังนี้: grad_with_shrinkage = grad + 2 * l2_shrinkage * var accum_new = accum + grad * grad linear += grad_with_shrinkage - (accum_new^(-lr_power) - accum^ (-lr_power)) / lr * var quadratic = 1.0 / (accum_new^(lr_power) * lr) + 2 * l2 var = (เครื่องหมาย(เชิงเส้น) * l1 - เชิงเส้น) / กำลังสองถ้า |linear| > l1 อื่น 0.0 สะสม = accum_new
คลาสที่ซ้อนกัน
ระดับ | SparseApplyFtrl.ตัวเลือก | แอ็ตทริบิวต์ทางเลือกสำหรับ SparseApplyFtrl |
ค่าคงที่
สตริง | OP_NAME | ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow |
วิธีการสาธารณะ
เอาท์พุต <T> | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
คงที่ <T ขยาย TType > SparseApplyFtrl <T> | สร้าง ( ขอบเขต ขอบเขต ตัวดำเนินการ <T> var, ตัวดำเนินการ <T> สะสม, ตัวถูก ดำเนิน การ <T> เชิงเส้น, ตัวถูกดำเนินการ <T> ผู้สำเร็จการศึกษา, ตัว ถูกดำเนินการ <? ขยาย TNumber > ดัชนี, ตัวดำเนินการ <T> lr, ตัวดำเนินการ <T> l1, ตัว ถูกดำเนินการ <T> l2, ตัวดำเนินการ <T> l2การหดตัว, ตัวดำเนินการ <T> lrPower, ตัวเลือก... ตัวเลือก) วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseApplyFtrl ใหม่ |
SparseApplyFtrl.Options แบบคงที่ | คูณLinearByLr (บูลีนคูณLinearByLr) |
เอาท์พุต <T> | ออก () เช่นเดียวกับ "var" |
SparseApplyFtrl.Options แบบคงที่ | useLocking (การใช้ล็อคแบบบูลีน) |
วิธีการสืบทอด
ค่าคงที่
สตริงสุดท้ายแบบคงที่สาธารณะ OP_NAME
ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow
วิธีการสาธารณะ
เอาท์ พุท สาธารณะ <T> asOutput ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต
สาธารณะ SparseApplyFtrl <T> สร้าง แบบคงที่ (ขอบเขต ขอบเขต , ตัวดำเนินการ <T> var, ตัวดำเนินการ <T> สะสม, ตัวดำเนินการ <T> เชิงเส้น, ตัวดำเนินการ <T> ผู้สำเร็จการศึกษา, ตัวดำเนินการ <? ขยาย TNumber > ดัชนี, ตัวดำเนินการ <T> lr, ตัวถูกดำเนินการ <T> l1, ตัวดำเนินการ <T> l2, ตัวดำเนินการ <T> l2การหดตัว, ตัวดำเนินการ <T> lrPower, ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseApplyFtrl ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
var | ควรมาจากตัวแปร () |
สะสม | ควรมาจากตัวแปร () |
เชิงเส้น | ควรมาจากตัวแปร () |
ผู้สำเร็จการศึกษา | การไล่ระดับสี |
ดัชนี | เวกเตอร์ของดัชนีในมิติแรกของ var และ accum |
ล | ปัจจัยการปรับขนาด ต้องเป็นสเกลาร์ |
l1 | การทำให้เป็นมาตรฐาน L1 ต้องเป็นสเกลาร์ |
l2 | การทำให้การหดตัวเป็นปกติของ L2 ต้องเป็นสเกลาร์ |
lrพาวเวอร์ | ปัจจัยการปรับขนาด ต้องเป็นสเกลาร์ |
ตัวเลือก | มีค่าแอตทริบิวต์ทางเลือก |
การส่งคืน
- อินสแตนซ์ใหม่ของ SparseApplyFtrl
สาธารณะ SparseApplyFtrl.Options useLocking แบบคงที่ (useLocking แบบบูลีน)
พารามิเตอร์
ใช้ล็อค | หากเป็น "จริง" การอัปเดต var และ accum tensor จะได้รับการปกป้องด้วยการล็อค มิฉะนั้นพฤติกรรมจะไม่ได้กำหนดไว้ แต่อาจแสดงความขัดแย้งน้อยลง |
---|