Thực hiện lượng tử hóa trên Tensor `input`.
Cho `input`, `scales` và `zero_points`, thực hiện lượng tử hóa bằng công thức: quantized_data = Floor(input_data * (1.0f /scale) + 0.5f) + zero_point
Các lớp lồng nhau
lớp học | Đồng phụcQuantize.Options | Các thuộc tính tùy chọn cho UniformQuantize |
Phương pháp công cộng
Đầu ra <U> | asOutput () Trả về phần điều khiển tượng trưng của một tenxơ. |
tĩnh <U, T mở rộng Số> Định lượng hóa thống nhất <U> | |
Đầu ra <U> | đầu ra () Tensor lượng tử hóa đầu ra của Tout, có hình dạng giống với đầu vào. |
tĩnh Thống nhấtQuantize.Options | Trục lượng tử hóa (Trục lượng tử hóa dài) |
Phương pháp kế thừa
Phương pháp công cộng
Đầu ra công khai <U> asOutput ()
Trả về phần điều khiển tượng trưng của một tenxơ.
Đầu vào của các hoạt động TensorFlow là đầu ra của một hoạt động TensorFlow khác. Phương pháp này được sử dụng để thu được một thẻ điều khiển mang tính biểu tượng đại diện cho việc tính toán đầu vào.
public static Thống nhất định lượng <U> tạo ( Phạm vi phạm vi, đầu vào Toán hạng <T>, Thang đo toán hạng <Float>, Toán tử <Integer> zeroPoints, Lớp<U> Tout, Lượng tử hóa dàiMinVal, Lượng tử hóa dàiMaxVal, Tùy chọn... tùy chọn)
Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động Thống nhấtQuantize mới.
Thông số
phạm vi | phạm vi hiện tại |
---|---|
đầu vào | Phải là Tensor của Thiếc. |
quy mô | (Các) giá trị float được sử dụng làm (các) thang đo để lượng tử hóa `đầu vào`. Phải là Tensor vô hướng nếu lượng tử hóa_axis là -1 (lượng tử hóa trên mỗi tensor), nếu không thì Tensor 1D có kích thước (input.dim_size(quantization_axis),) (lượng tử hóa trên mỗi trục). |
số điểm không | (Các) giá trị int32 sẽ sử dụng làm (các) điểm 0 để lượng tử hóa `đầu vào`. Tình trạng hình dạng tương tự như vảy. |
Tout | Loại Tensor đầu ra. Một tf.DType từ: tf.float32 |
lượng tử hóaMinVal | Giá trị lượng tử hóa tối thiểu để lượng tử hóa `đầu vào`. Mục đích của thuộc tính này thường (nhưng không giới hạn) để biểu thị phạm vi hẹp, trong đó giá trị này được đặt thành: `(Tin thấp nhất) + 1` nếu phạm vi hẹp và `(Tin thấp nhất)` nếu không. Ví dụ: nếu Tin là qint8 thì giá trị này được đặt thành -127 nếu phạm vi lượng tử hóa hẹp hoặc -128 nếu không. |
lượng tử hóaMaxVal | Giá trị tối đa lượng tử hóa để lượng tử hóa `đầu vào`. Mục đích của thuộc tính này thường (nhưng không giới hạn) là biểu thị phạm vi hẹp, trong đó thuộc tính này được đặt thành: `(Tout max)` cho cả phạm vi hẹp và không phải phạm vi hẹp. Ví dụ: nếu Tin là qint8 thì giá trị này được đặt thành 127. |
tùy chọn | mang các giá trị thuộc tính tùy chọn |
Trả lại
- một phiên bản mới của UnityQuantize
tĩnh công khai UnityQuantize.Options quantizationAxis (Trục lượng tử hóa dài)
Thông số
trục lượng tử hóa | Biểu thị chỉ số thứ nguyên của tensor trong đó lượng tử hóa trên mỗi trục được áp dụng cho các lát cắt dọc theo thứ nguyên đó. Nếu được đặt thành -1 (mặc định), điều này biểu thị lượng tử hóa trên mỗi tensor. Nếu không, nó phải được đặt trong phạm vi [0, input.dims()). |
---|