BlockLSTM คลาสสุดท้ายสาธารณะ
คำนวณการแพร่กระจายเซลล์ไปข้างหน้าของ LSTM สำหรับขั้นตอนเวลาทั้งหมด
ซึ่งเทียบเท่ากับการใช้ LSTMBlockCell ในลูป เช่น:
for x1 in unpack(x):
i1, cs1, f1, o1, ci1, co1, h1 = LSTMBlock(
x1, cs_prev, h_prev, w, wci, wcf, wco, b)
cs_prev = cs1
h_prev = h1
i.append(i1)
cs.append(cs1)
f.append(f1)
o.append(o1)
ci.append(ci1)
co.append(co1)
h.append(h1)
return pack(i), pack(cs), pack(f), pack(o), pack(ci), pack(ch), pack(h)
Note that unlike LSTMBlockCell (and BlockLSTM) which uses ICFO gate layout,
this op uses IFCO. So in order for the following snippet to be equivalent
all gate-related outputs should be reordered.
คลาสที่ซ้อนกัน
ระดับ | BlockLSTM.ตัวเลือก | แอ็ตทริบิวต์ทางเลือกสำหรับ BlockLSTM |
ค่าคงที่
สตริง | OP_NAME | ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow |
วิธีการสาธารณะ
BlockLSTM.Options แบบคงที่ | cellClip (โฟลตเซลล์คลิป) |
เอาท์พุต <T> | ซี () อินพุตของเซลล์ตลอดลำดับเวลาทั้งหมด |
เอาท์พุต <T> | ร่วม () เซลล์หลัง tanh ตลอดลำดับเวลาทั้งหมด |
คงที่ <T ขยาย TNumber > BlockLSTM <T> | สร้าง ( ขอบเขต ขอบเขต ตัว ดำเนินการ < TInt64 > seqLenMax, ตัวดำเนินการ <T> x, ตัวดำเนินการ <T> csPrev, ตัวดำเนินการ <T> hPrev, ตัวดำเนินการ <T> w, ตัวดำเนินการ <T> wci, ตัวดำเนินการ <T> wcf, ตัวดำเนินการ <T > wco, ตัวดำเนินการ <T> b, ตัวเลือก... ตัวเลือก) วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ BlockLSTM ใหม่ |
เอาท์พุต <T> | ซีเอส () สถานะของเซลล์ก่อน tanh ตลอดลำดับเวลาทั้งหมด |
เอาท์พุต <T> | ฉ () ประตูลืมตลอดลำดับเวลาทั้งหมด |
เอาท์พุต <T> | ชม () เวกเตอร์เอาต์พุต h ตลอดลำดับเวลาทั้งหมด |
เอาท์พุต <T> | ฉัน () ประตูอินพุตตลอดลำดับเวลาทั้งหมด |
เอาท์พุต <T> | โอ () ประตูเอาต์พุตตลอดลำดับเวลาทั้งหมด |
BlockLSTM.Options แบบคงที่ | usePeephole (การใช้บูลีน Peephole) |
วิธีการสืบทอด
ค่าคงที่
สตริงสุดท้ายแบบคงที่สาธารณะ OP_NAME
ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow
ค่าคงที่: "BlockLSTMV2"
วิธีการสาธารณะ
BlockLSTM.Options สาธารณะแบบคงที่ cellClip (Float cellClip)
พารามิเตอร์
เซลล์คลิป | ค่าที่จะตัดค่า 'cs' ไปที่ |
---|
สาธารณะคง BlockLSTM <T> สร้าง (ขอบเขต ขอบเขต ตัว ดำเนินการ < TInt64 > seqLenMax, ตัวดำเนินการ <T> x, ตัวดำเนินการ <T> csPrev, ตัวดำเนินการ <T> hPrev, ตัวดำเนินการ <T> w, ตัวดำเนินการ <T> wci, ตัวดำเนินการ <T > wcf, ตัวดำเนินการ <T> wco, ตัวถูกดำเนินการ <T> b, ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ BlockLSTM ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
seqLenMax | ระยะเวลาสูงสุดที่ใช้จริงโดยอินพุตนี้ เอาต์พุตจะถูกเสริมด้วยศูนย์ที่เกินความยาวนี้ |
x | อินพุตลำดับไปยัง LSTM รูปร่าง (timelen, bat_size, num_inputs) |
csก่อนหน้า | ค่าของสถานะเซลล์เริ่มต้น |
hก่อนหน้า | เอาต์พุตเริ่มต้นของเซลล์ (เพื่อใช้เป็นช่องมอง) |
ว | เมทริกซ์น้ำหนัก |
WCI | เมทริกซ์น้ำหนักสำหรับการเชื่อมต่อช่องมองอินพุตของเกต |
ห้องสุขา | เมทริกซ์น้ำหนักสำหรับการเชื่อมต่อช่องมองลืมเกต |
ส้วม | เมทริกซ์น้ำหนักสำหรับการเชื่อมต่อช่องตาแมวเอาท์พุต |
ข | เวกเตอร์อคติ |
ตัวเลือก | มีค่าแอตทริบิวต์ทางเลือก |
การส่งคืน
- ตัวอย่างใหม่ของ BlockLSTM
BlockLSTM แบบคงที่สาธารณะ ใช้Peephole (usePeephole แบบบูลีน)
พารามิเตอร์
ใช้ช่องมอง | ไม่ว่าจะใช้ตุ้มน้ำหนักตาแมว |
---|