ดำเนินการจุดเชิงปริมาณแบบไฮบริดของ float Tensor `lhs` และ Tensor เชิงปริมาณ `rhs`
เมื่อระบุ float `lhs` และ `rhs` เชิงปริมาณ จะดำเนินการหาปริมาณภายใน `lhs` จากนั้นจึงดำเนินการจุดเชิงปริมาณบน lhs เชิงปริมาณและ `rhs` การหาปริมาณภายในบน `lhs` คือการหาปริมาณถึง qint8, ช่วงไดนามิก, ต่อชุด (ต่อแกนตามแกน 0), ช่วงไม่สมมาตร และไม่ใช่ช่วงแคบ (ช่วงคือ [-128, 127]) `lhs` และ `rhs` ต้องเป็น 2D Tensors และ lhs.dim_size(1) จะต้องตรงกับ rhs.dim_size(0) `rhs` จะต้องเป็น Tensor เชิงปริมาณ โดยที่ค่าข้อมูลจะถูกหาปริมาณโดยใช้สูตร: quantized_data = clip(Original_data / scale + zero_point, quantization_min_val, quantization_max_val)
คลาสที่ซ้อนกัน
ระดับ | UniformQuantizedDotHybrid.Options | แอ็ตทริบิวต์ทางเลือกสำหรับ UniformQuantizedDotHybrid |
วิธีการสาธารณะ
เอาท์พุต <วี> | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
คงที่ <V ขยายหมายเลข, T ขยายหมายเลข, U> UniformQuantizedDotHybrid <V> | สร้าง (ขอบเขต ขอบเขต ตัวดำเนินการ <T> lhs ตัว ดำเนินการ <U> rhs ตัวดำเนินการ <Float> rhsScales ตัวดำเนินการ <จำนวนเต็ม> rhsZeroPoints คลาส<V> Tout ยาว rhsQuantizationMinVal ยาว rhsQuantizationMaxVal ตัวเลือก... ตัวเลือก) วิธีการจากโรงงานเพื่อสร้างคลาสที่ห่อการดำเนินการ UniformQuantizedDotHybrid ใหม่ |
เอาท์พุต <วี> | เอาท์พุท () เอาท์พุต 2D Tensor ของ Tout ซึ่งมีรูปร่างเป็น (lhs.dim_size(0), rhs.dim_size(1)) |
คง UniformQuantizedDotHybrid.Options | rhsQuantizationAxis (ยาว rhsQuantizationAxis) |
วิธีการสืบทอด
วิธีการสาธารณะ
เอาท์ พุท สาธารณะ <V> asOutput ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต
สาธารณะคงที่ UniformQuantizedDotHybrid <V> สร้าง (ขอบเขต ขอบเขต , ตัวดำเนินการ <T> lhs, ตัวดำเนินการ <U> rhs, ตัว ดำเนินการ <Float> rhsScales, ตัวดำเนินการ <จำนวนเต็ม> rhsZeroPoints, คลาส <V> Tout, ยาว rhsQuantizationMinVal, ยาว rhsQuantizationMaxVal, ตัวเลือก .. . ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่ห่อการดำเนินการ UniformQuantizedDotHybrid ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
นะ | ต้องเป็นเทนเซอร์ 2 มิติของ Tlhs |
Rhs | ต้องเป็นเทนเซอร์ 2 มิติของ Trhs |
rhsScales | ค่าทศนิยมที่ใช้เป็นมาตราส่วนเมื่อหาปริมาณข้อมูลต้นฉบับที่ rhs เป็นตัวแทน ต้องเป็นสเกลาร์เทนเซอร์ (การหาปริมาณต่อเทนเซอร์) หรือเทนเซอร์ 1D ขนาด (rhs.dim_size(1),) (การหาปริมาณต่อแชนเนล) |
rhsZeroPoints | ค่า int32 ที่ใช้เป็นศูนย์_point เมื่อหาปริมาณข้อมูลต้นฉบับที่ rhs เป็นตัวแทน สภาพรูปร่างเหมือนกับ rhs_scales |
โน้มน้าว | ประเภทของเทนเซอร์เอาท์พุต |
rhsQuantizationMinVal | ค่าต่ำสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน rhs ตัวอย่างเช่น หาก Trhs คือ qint8 ค่านี้จะต้องตั้งค่าเป็น -127 หากเป็นช่วงที่แคบ หรือ -128 หากไม่ใช่ |
rhsQuantizationMaxVal | ค่าสูงสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน rhs ตัวอย่างเช่น หาก Trhs คือ qint8 จะต้องตั้งค่าเป็น 127 |
ตัวเลือก | มีค่าแอตทริบิวต์ทางเลือก |
การส่งคืน
- อินสแตนซ์ใหม่ของ UniformQuantizedDotHybrid
เอาท์พุท สาธารณะ <V> เอาท์พุท ()
เอาท์พุต 2D Tensor ของ Tout ซึ่งมีรูปร่างเป็น (lhs.dim_size(0), rhs.dim_size(1)) ข้อมูลเอาต์พุตคือข้อมูลเอาต์พุตดั้งเดิม (ไม่ใช่เชิงปริมาณ)
สาธารณะคง UniformQuantizedDotHybrid.Options rhsQuantizationAxis (ยาว rhsQuantizationAxis)
พารามิเตอร์
rhsQuantizationAxis | ระบุดัชนีขนาดของเทนเซอร์ที่ใช้การหาปริมาณต่อแกนสำหรับชิ้นตามขนาดนั้น หากตั้งค่าเป็น -1 (ค่าเริ่มต้น) จะบ่งชี้ถึงการหาปริมาณต่อเทนเซอร์ สำหรับ dot op rhs รองรับเฉพาะการหาปริมาณต่อเทนเซอร์หรือการหาปริมาณต่อช่องสัญญาณตามมิติ 1 เท่านั้น ดังนั้น ต้องตั้งค่าแอ็ตทริบิวต์นี้เป็น -1 หรือ 1 ค่าอื่นๆ จะถูกปฏิเสธ |
---|