ดำเนินการเพิ่มเชิงปริมาณของ Tensor เชิงปริมาณ `lhs` และ Tensor เชิงปริมาณ `rhs` เพื่อสร้าง `เอาต์พุต' เชิงปริมาณ
เมื่อกำหนด `lhs` เชิงปริมาณและ `rhs` เชิงปริมาณ จะดำเนินการบวกเชิงปริมาณใน 'lhs` และ 'rhs` เพื่อสร้าง `เอาต์พุต' เชิงปริมาณ
`UniformQuantizedAdd` เป็นไปตามกฎการออกอากาศของ Numpy รูปร่างอาร์เรย์อินพุตทั้งสองจะถูกเปรียบเทียบตามองค์ประกอบ เริ่มต้นด้วยมิติส่วนท้าย สองมิติจะต้องเท่ากันหรือหนึ่งในนั้นต้องเป็น 1
`lhs` และ `rhs` จะต้องเป็น Tensor เชิงปริมาณ โดยที่ค่าข้อมูลจะถูกหาปริมาณโดยใช้สูตร:
quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
"เอาต์พุต" ก็มีการวัดปริมาณเช่นกัน โดยใช้สูตรเดียวกันหาก `lhs` และ `output` ถูกหาปริมาณตามแกนทั้งคู่ แกนการหาปริมาณจะต้องตรงกัน นอกจากนี้ หาก `rhs` และ `output` ถูกหาปริมาณตามแกนทั้งคู่ แกนการหาปริมาณจะต้องตรงกัน การจับคู่ หมายความว่าแกนจะต้องตรงกันเมื่อทำการเพิ่ม เกี่ยวกับการออกอากาศ กล่าวคือ สำหรับทั้งตัวถูกดำเนินการ `lhs` และ `rhs` ถ้า `operand.quantization_axis` >= 0 และ `output.quantization_axis` >= 0, `operand.dims` - `operand.quantization_axis` จะต้องเท่ากับ `output.dims ` - `output.quantization_axis`
คลาสที่ซ้อนกัน
ระดับ | UniformQuantizedAdd.Options | แอ็ตทริบิวต์ทางเลือกสำหรับ UniformQuantizedAdd |
วิธีการสาธารณะ
เอาท์พุต <T> | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
คงที่ <T> UniformQuantizedAdd <T> | สร้าง ( ขอบเขตขอบเขต ตัว ดำเนิน การ <T> lhs ตัว ดำเนินการ <T> rhs ตัว ดำเนินการ <Float> lhsScales ตัว ดำเนิน การ <จำนวนเต็ม> lhsZeroPoints ตัวดำเนินการ <Float> rhsScales ตัวดำเนิน การ <จำนวนเต็ม > rhsZeroPoints ตัวดำเนินการ <Float> เอา ท์พุทสเกล ตัว ดำเนินการ <จำนวนเต็ม > เอาต์พุต ZeroPoints, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long outputQuantizationMaxVal, Options... ตัวเลือก) วิธีการจากโรงงานเพื่อสร้างคลาสที่ห่อการดำเนินการ UniformQuantizedAdd ใหม่ |
UniformQuantizedAdd.Options แบบ คงที่ | lhsQuantizationAxis (ยาว lhsQuantizationAxis) |
เอาท์พุต <T> | เอาท์พุท () เทนเซอร์เชิงปริมาณเอาต์พุต |
UniformQuantizedAdd.Options แบบ คงที่ | เอาท์พุทQuantizationAxis (เอาท์พุทยาวQuantizationAxis) |
UniformQuantizedAdd.Options แบบ คงที่ | rhsQuantizationAxis (ยาว rhsQuantizationAxis) |
วิธีการสืบทอด
วิธีการสาธารณะ
เอาท์พุท สาธารณะ <T> asOutput ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต
สาธารณะคงที่ UniformQuantizedAdd <T> สร้าง (ขอบเขต ขอบเขต , ตัวดำเนินการ <T> lhs, ตัวดำเนินการ <T> rhs, ตัวดำเนิน การ <Float> lhsScales, ตัวดำเนิน การ <Integer> lhsZeroPoints, ตัวดำเนิน การ <Float> rhsScales, ตัว ดำเนินการ <Integer> rhsZeroPoints, ตัวดำเนินการ <Float > เอาต์พุตสเกล, ตัวดำเนินการ <จำนวนเต็ม> เอาต์พุตศูนย์พอยต์, ยาว lhsQuantizationMinVal, ยาว lhsQuantizationMaxVal, ยาว rhsQuantizationMinVal, ยาว rhsQuantizationMaxVal, ยาว outputQuantizationMinVal, ยาว outputQuantizationMaxVal, ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่ห่อการดำเนินการ UniformQuantizedAdd ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
นะ | จะต้องเป็นเมตริกซ์เชิงปริมาณ |
Rhs | จะต้องเป็นเมตริกซ์เชิงปริมาณ |
lhsScales | ค่าทศนิยมที่ใช้เป็นปัจจัยมาตราส่วนเมื่อหาปริมาณข้อมูลต้นฉบับที่ `lhs` เป็นตัวแทน |
lhsZeroPoints | ค่า int32 ที่ใช้เป็นศูนย์เมื่อหาปริมาณข้อมูลต้นฉบับที่แสดงถึง "lhs" ต้องมีรูปร่างเดียวกันกับ `lhs_scales` |
rhsScales | ค่าทศนิยมที่ใช้เป็นปัจจัยมาตราส่วนเมื่อหาปริมาณข้อมูลต้นฉบับที่ `rhs` เป็นตัวแทน |
rhsZeroPoints | ค่า int32 ที่ใช้เป็นศูนย์เมื่อหาปริมาณข้อมูลต้นฉบับที่แสดงถึง "rhs" ต้องมีรูปร่างเดียวกันกับ `rhs_scales` |
เอาท์พุทสเกล | ค่าทศนิยมที่จะใช้เป็นปัจจัยมาตราส่วนเมื่อหาปริมาณข้อมูลต้นฉบับที่ "เอาต์พุต" เป็นตัวแทน |
เอาท์พุตZeroPoints | ค่า int32 ที่ใช้เป็นศูนย์เมื่อหาปริมาณข้อมูลต้นฉบับที่เอาต์พุตเป็นตัวแทน ต้องมีรูปร่างเดียวกันกับ `output_scales` |
lhsQuantizationMinVal | ค่าต่ำสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน "lhs" ตัวอย่างเช่น หาก `Tin` คือ `qint8` ค่านี้จะต้องตั้งค่าเป็น -127 หากเป็นช่วงที่แคบหรือ -128 หากไม่ใช่ |
lhsQuantizationMaxVal | ค่าสูงสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน "lhs" ตัวอย่างเช่น หาก `Tin` คือ `qint8` จะต้องตั้งค่าเป็น 127 |
rhsQuantizationMinVal | ค่าต่ำสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน "rhs" ตัวอย่างเช่น หาก `Tin` คือ `qint8` ค่านี้จะต้องตั้งค่าเป็น -127 หากเป็นช่วงที่แคบหรือ -128 หากไม่ใช่ |
rhsQuantizationMaxVal | ค่าสูงสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน `rhs` ตัวอย่างเช่น หาก `Tin` คือ `qint8` จะต้องตั้งค่าเป็น 127 |
เอาท์พุทปริมาณ MinVal | ค่าต่ำสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน "เอาต์พุต" ตัวอย่างเช่น หาก `Tout` คือ `qint8` ค่านี้จะต้องตั้งค่าเป็น -127 หากเป็นช่วงที่แคบ หรือ -128 หากไม่ใช่ |
เอาท์พุทปริมาณMaxVal | ค่าสูงสุดของข้อมูลเชิงปริมาณที่จัดเก็บไว้ใน "เอาต์พุต" ตัวอย่างเช่น หาก `Tout` คือ `qint8` จะต้องตั้งค่าเป็น 127 |
ตัวเลือก | มีค่าแอตทริบิวต์ทางเลือก |
การส่งคืน
- อินสแตนซ์ใหม่ของ UniformQuantizedAdd
สาธารณะคง UniformQuantizedAdd.Options lhsQuantizationAxis (ยาว lhsQuantizationAxis)
พารามิเตอร์
lhsQuantizationAxis | ระบุดัชนีขนาดของเทนเซอร์ที่ใช้การหาปริมาณต่อแกนสำหรับชิ้นตามขนาดนั้น หากตั้งค่าเป็น -1 (ค่าเริ่มต้น) จะบ่งชี้ถึงการหาปริมาณต่อเทนเซอร์ สำหรับ `lhs` รองรับเฉพาะการหาปริมาณต่อเทนเซอร์เท่านั้น ดังนั้นจึงต้องตั้งค่าเป็น -1 ค่าอื่นจะทำให้เกิดข้อผิดพลาดในการก่อสร้าง OpKernel |
---|
สาธารณะคงที่ UniformQuantizedAdd.Options outputQuantizationAxis (เอาท์พุทยาวQuantizationAxis)
พารามิเตอร์
เอาท์พุท QuantizationAxis | ระบุดัชนีขนาดของเทนเซอร์ที่ใช้การหาปริมาณต่อแกนสำหรับชิ้นตามขนาดนั้น หากตั้งค่าเป็น -1 (ค่าเริ่มต้น) จะบ่งชี้ถึงการหาปริมาณต่อเทนเซอร์ สำหรับ `เอาต์พุต` รองรับเฉพาะการหาปริมาณต่อเทนเซอร์หรือการหาปริมาณต่อแชนเนลตาม `output_feature_daiment` เท่านั้น ดังนั้นจึงต้องตั้งค่าเป็น -1 หรือ `size_numbers.output_feature_daiment` ค่าอื่นจะทำให้เกิดข้อผิดพลาดในการก่อสร้าง OpKernel |
---|
สาธารณะคง UniformQuantizedAdd.Options rhsQuantizationAxis (ยาว rhsQuantizationAxis)
พารามิเตอร์
rhsQuantizationAxis | ระบุดัชนีขนาดของเทนเซอร์ที่ใช้การหาปริมาณต่อแกนสำหรับชิ้นตามขนาดนั้น หากตั้งค่าเป็น -1 (ค่าเริ่มต้น) จะบ่งชี้ถึงการหาปริมาณต่อเทนเซอร์ สำหรับ `rhs` รองรับเฉพาะการหาปริมาณต่อเทนเซอร์หรือการหาปริมาณต่อช่องสัญญาณตาม `kernel_output_feature_size` เท่านั้น ดังนั้นจึงต้องตั้งค่าเป็น -1 หรือ `size_numbers.kernel_output_feature_daiment` ค่าอื่นจะทำให้เกิดข้อผิดพลาดในการก่อสร้าง OpKernel |
---|