tensorflow::ops::QuantizeDownAndShrinkRange
#include <math_ops.h>แปลงเทนเซอร์ 'อินพุต' ที่ถูกควอนไทซ์แล้ว ให้เป็น 'เอาต์พุต' ที่มีความแม่นยำต่ำกว่า โดยใช้...
สรุป
การกระจายค่าที่แท้จริงเพื่อเพิ่มประสิทธิภาพการใช้ความลึกบิตต่ำสุดให้มากที่สุด และปรับช่วงค่าต่ำสุดและสูงสุดของเอาต์พุตให้เหมาะสม
[input_min, input_max] เป็นค่าสเกลาร์แบบทศนิยมที่ระบุช่วงสำหรับการตีความค่าทศนิยมของข้อมูล 'อินพุต' ตัวอย่างเช่น หาก input_min คือ -1.0f และ input_max คือ 1.0f และเรากำลังจัดการกับข้อมูลควอนไทซ์แบบ quint16 ค่า 0 ในข้อมูล 16 บิตควรถูกตีความว่าเป็น -1.0f และ 65535 หมายถึง 1.0f
ตัวดำเนินการนี้พยายามบีบเอาความแม่นยำให้มากที่สุดเท่าที่จะเป็นไปได้ลงในเอาต์พุตที่มีความลึกของบิตต่ำกว่า โดยการคำนวณค่าต่ำสุดและสูงสุดที่แท้จริงที่พบในข้อมูล ตัวอย่างเช่น อินพุต quint16 อาจมีค่าไม่ต่ำกว่า 16,384 และไม่มีค่าสูงกว่า 49,152 นั่นหมายความว่าจริงๆ แล้วต้องการเพียงครึ่งช่วงเท่านั้น การตีความค่าทศนิยมทั้งหมดอยู่ระหว่าง -0.5f และ 0.5f ดังนั้นหากเราต้องการบีบอัดข้อมูลลงในเอาต์พุต quint8 เราสามารถใช้ช่วงนั้นแทนที่จะใช้ช่วงทางทฤษฎี -1.0f ถึง 1.0f ที่แนะนำโดยค่าต่ำสุดและสูงสุดของอินพุต
ในทางปฏิบัติ วิธีนี้มีประโยชน์มากที่สุดสำหรับการนำเอาผลลัพธ์จากการดำเนินการต่างๆ เช่น QuantizedMatMul ซึ่งสามารถสร้างผลลัพธ์ที่มีความลึกของบิตสูงกว่าอินพุต และอาจมีช่วงผลลัพธ์ที่เป็นไปได้กว้าง แต่ในทางปฏิบัติแล้ว การกระจายของค่าอินพุตจะใช้เพียงเศษส่วนเล็กๆ ของช่วงที่เป็นไปได้เท่านั้น การป้อนผลลัพธ์นั้นเข้าไปในตัวดำเนินการนี้ จะช่วยลดความลึกของบิตจาก 32 บิตเหลือ 8 บิต โดยมีการสูญเสียความแม่นยำน้อยที่สุด
ข้อโต้แย้ง:
- ขอบเขต: วัตถุ ขอบเขต
- input_min: ค่าทศนิยมที่แสดงถึงค่าต่ำสุดของอินพุตที่ถูกควอนไทซ์
- input_max: ค่าทศนิยมที่แสดงค่าสูงสุดของอินพุตที่ถูกควอนไทซ์
- out_type: ประเภทของข้อมูลเอาต์พุต ควรมีความละเอียดบิตต่ำกว่า Tinput
การส่งคืนสินค้า:
-
Output - ค่า
Outputoutput_min: ค่าทศนิยมที่แสดงถึงค่าเอาต์พุตขั้นต่ำที่ถูกควอนไทซ์ - ค่า
Outputoutput_max: ค่าทศนิยมที่แสดงค่าเอาต์พุตสูงสุดที่ถูกควอนไทซ์
ตัวสร้างและตัวทำลาย | |
|---|---|
QuantizeDownAndShrinkRange (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input input_min, :: tensorflow::Input input_max, DataType out_type) |
คุณลักษณะสาธารณะ | |
|---|---|
operation | |
output | |
output_max | |
output_min | |
คุณลักษณะสาธารณะ
การดำเนินการ
Operation operation
เอาต์พุต
::tensorflow::Output output
เอาต์พุตสูงสุด
::tensorflow::Output output_max
เอาต์พุตขั้นต่ำ
::tensorflow::Output output_min
หน้าที่สาธารณะ
QuantizeDownAndShrinkRange
QuantizeDownAndShrinkRange( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input input_min, ::tensorflow::Input input_max, DataType out_type )