UniformQuantizedConvolution

lớp cuối cùng công khai Thống nhấtQuantizedConvolution

Thực hiện tích chập lượng tử hóa của Tensor lượng tử hóa `lhs` và Tensor lượng tử hóa `rhs`. để tạo ra `đầu ra` được lượng tử hóa.

Cho `lhs` được lượng tử hóa và `rhs` được lượng tử hóa, thực hiện dấu chấm được lượng tử hóa trên `lhs` và `rhs` để tạo ra `đầu ra` được lượng tử hóa.

`lhs` và `rhs` phải là Tensor có cùng hạng và đáp ứng các điều kiện hình dạng sau. - `lhs_feature` % `feature_group_count` == 0 - `lhs_feature` % `rhs_input_feature` == 0 - `lhs_feature` / `feature_group_count` == `rhs_input_feature` - `rhs_output_feature` % `feature_group_count` == 0 - `lhs_batch` % `batch_group_count` == 0 - `rhs_output_feature` % `batch_group_count` == 0

`lhs` và `rhs` phải được lượng tử hóa Tensor, trong đó giá trị dữ liệu được lượng tử hóa bằng công thức:

quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
 
`output` cũng được lượng tử hóa, sử dụng cùng một công thức. Nếu `rhs` được lượng tử hóa trên mỗi tensor thì `đầu ra` cũng phải được lượng tử hóa trên mỗi tensor.

Các lớp lồng nhau

lớp học Đồng phụcQuantizedConvolution.Options Các thuộc tính tùy chọn cho UniformQuantizedConvolution

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 Thống nhấtQuantizedConvolution.Options
batchGroupCount (Đếm nhóm dài)
tĩnh <U, T> Đồng nhấtQuantizedConvolution <U>
tạo ( Phạm vi phạm vi, Toán hạng <T> lhs, Toán hạng <T> rhs, Toán hạng <Float> lhsScales, Toán hạng <Integer> lhsZeroPoints, Toán hạng <Float> rhsScales, Toán hạng <Integer> rhsZeroPoints, Toán hạng <Float> đầu raScales, Toán hạng <Số nguyên > outZeroPoints, Class<U> Tout, đệm chuỗi, lhsQuantizationMinVal dài, lhsQuantizationMaxVal dài, rhsQuantizationMinVal dài, rhsQuantizationMaxVal dài, đầu ra dàiQuantizationMinVal, đầu ra dàiQuantizationMaxVal, 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 UnityQuantizedConvolution mới.
tĩnh Thống nhấtQuantizedConvolution.Options
số thứ nguyên (Số thứ nguyên chuỗi)
tĩnh Thống nhấtQuantizedConvolution.Options
rõ ràngPadding (Danh sách<Long> rõ ràngPadding)
tĩnh Thống nhấtQuantizedConvolution.Options
featureGroupCount (Tính năng nhóm dài)
tĩnh Thống nhấtQuantizedConvolution.Options
lhsDilation (Danh sách<Long> lhsDilation)
tĩnh Thống nhấtQuantizedConvolution.Options
lhsTrục lượng tử hóa (Trục lhsQuantization dài)
Đầu ra <U>
đầu ra ()
Tenxor lượng tử hóa đầu ra của `Tout`, cùng hạng với `lhs` và `rhs`.
tĩnh Thống nhấtQuantizedConvolution.Options
trục lượng tử đầu ra (Trục lượng tử hóa đầu ra dài)
tĩnh Thống nhấtQuantizedConvolution.Options
rhsDilation (Danh sách<Long> rhsDilation)
tĩnh Thống nhấtQuantizedConvolution.Options
rhsQuantizationAxis (RhsQuantizationAxis dài)
tĩnh Thống nhấtQuantizedConvolution.Options
windowStrides (Danh sách<Long> windowStrides)

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.

tĩnh công khai Thống nhấtQuantizedConvolution.Options batchGroupCount (batchGroupCount dài)

Thông số
lôNhómĐếm Số lượng nhóm lô. Được sử dụng cho các bộ lọc được nhóm. Phải là ước số của `output_feature`.

tĩnh công khai UnityQuantizedConvolution <U> tạo ( Phạm vi phạm vi , Toán hạng <T> lhs, Toán hạng <T> rhs, Toán hạng <Float> lhsScales, Toán hạng <Integer> lhsZeroPoints, Toán hạng <Float> rhsScales, Toán hạng <Integer> rhsZeroPoints, Toán hạng <Float> > đầu raScales, Toán hạng <Integer> đầu raZeroPoints, Lớp<U> Tout, Đệm chuỗi, LhsQuantizationMinVal dài, LhsQuantizationMaxVal dài, RhsQuantizationMinVal dài, RhsQuantizationMaxVal dài, Đầu ra dàiQuantizationMinVal, Đầu ra dàiQuantizationMaxVal, 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 UnityQuantizedConvolution mới.

Thông số
phạm vi phạm vi hiện tại
lh Phải là tensor lượng tử hóa, hạng >= 3.
Phải là một tensor lượng tử hóa, cùng hạng với `lhs`.
lhsCân (Các) giá trị float được sử dụng làm hệ số tỷ lệ khi lượng tử hóa dữ liệu gốc mà `lhs` đại diện. Phải là một `Tensor` vô hướng (`lhs` chỉ hỗ trợ lượng tử hóa trên mỗi tensor).
lhsZeroPoints (Các) giá trị int32 được sử dụng làm điểm 0 khi lượng tử hóa dữ liệu gốc mà `lhs` đại diện. Tình trạng hình dạng tương tự như `lhs_scales`.
rhsCân (Các) giá trị float được sử dụng làm hệ số tỷ lệ khi lượng tử hóa dữ liệu gốc mà `rhs` đại diện. Phải là một `Tensor` vô hướng để lượng tử hóa trên mỗi tensor hoặc `Tensor` 1D có kích thước `rhs.dim_size(kernel_output_feature_dimension)` để lượng tử hóa trên mỗi kênh.
rhsZeroPoints (Các) giá trị int32 được sử dụng làm điểm 0 khi lượng tử hóa dữ liệu gốc mà `rhs` đại diện. Tình trạng hình dạng tương tự như `rhs_scales`.
đầu raThang đo (Các) giá trị float được sử dụng làm hệ số tỷ lệ khi lượng tử hóa dữ liệu gốc mà `đầu ra` đại diện. Phải là một `Tensor` vô hướng để lượng tử hóa trên mỗi tensor hoặc `Tensor` 1D có kích thước `rhs.dim_size(kernel_output_feature_dimension)` - bằng `output.dim_size(output_feature_dimension)`, để lượng tử hóa trên mỗi kênh. Nếu `rhs` được lượng tử hóa trên mỗi tensor, thì đầu ra cũng phải được lượng tử hóa trên mỗi tensor. Điều này có nghĩa là nếu `rhs_scales` và `rhs_zero_points` là vô hướng thì `Tensor`s, `output_scales` và `output_zero_points` cũng phải là `Tensor`s vô hướng.
đầu raZeroPoints (Các) giá trị int32 được sử dụng làm điểm 0 khi lượng tử hóa dữ liệu gốc mà đầu ra đại diện. Điều kiện hình dạng tương tự như `output_scales`.
Tout Loại `đầu ra` `Tensor`.
phần đệm chuỗi từ: `"CÙNG"`, `"VALID"` hoặc `"EXPLICIT"`, cho biết loại thuật toán đệm sẽ sử dụng.
lhsQuantizationMinVal Giá trị tối thiểu của dữ liệu lượng tử hóa được lưu trữ trong `lhs`. Ví dụ: nếu `Tin` là `qint8`, thì giá trị này phải được đặt thành -127 nếu phạm vi hẹp được lượng tử hóa hoặc -128 nếu không.
lhsQuantizationMaxVal Giá trị tối đa của dữ liệu lượng tử hóa được lưu trữ trong `lhs`. Ví dụ: nếu `Tin` là `qint8`, thì giá trị này phải được đặt thành 127.
rhsQuantizationMinVal Giá trị tối thiểu của dữ liệu lượng tử hóa được lưu trữ trong `rhs`. Ví dụ: nếu `Tin` là `qint8`, thì giá trị này phải được đặt thành -127 nếu phạm vi hẹp được lượng tử hóa hoặc -128 nếu không.
rhsQuantizationMaxVal Giá trị tối đa của dữ liệu lượng tử hóa được lưu trữ trong `rhs`. Ví dụ: nếu `Tin` là `qint8`, thì giá trị này phải được đặt thành 127.
đầu raLượng tử hóaMinVal Giá trị tối thiểu của dữ liệu lượng tử hóa được lưu trữ trong `đầu ra`. Ví dụ: nếu `Tout` là `qint8`, thì giá trị này phải được đặt thành -127 nếu phạm vi hẹp được lượng tử hóa hoặc -128 nếu không.
đầu raQuantizationMaxVal Giá trị tối đa của dữ liệu lượng tử hóa được lưu trữ trong `đầu ra`. Ví dụ: nếu `Tout` là `qint8`, thì giá trị này phải đượ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 UnityQuantizedConvolution

tĩnh công khai Thống nhấtQuantizedConvolution.Options DimensionNumbers (Chuỗi số thứ nguyên)

Thông số
số thứ nguyên Cấu trúc thông tin kích thước cho tích chập op. Phải là một chuỗi trống (mặc định) hoặc một chuỗi được tuần tự hóa của nguyên mẫu `tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr`. Nếu chuỗi trống, mặc định là `("NCHW", "OIHW", "NCHW")` (đối với tích chập 2D).

tĩnh công khai Thống nhấtQuantizedConvolution.Options rõ ràngPadding (Danh sách <Dài> Padding rõ ràng)

Thông số
rõ ràngĐệm Nếu `phần đệm` là `"RÕ RÀNG"`, thì phải được đặt làm danh sách cho biết phần đệm rõ ràng ở đầu và cuối của mỗi chiều không gian `lhs`. Nếu không thì cái này phải trống.

(Nếu được sử dụng,) Phải là danh sách có kích thước `2 * (số kích thước không gian lhs)`, trong đó `(explicit_padding[2 * i], clear_padding[2 * i + 1])` biểu thị `(start_padding, end_padding) ` của `spatial_dimensions[i]`.

tĩnh công khai UnityQuantizedConvolution.Options featureGroupCount (Tính năng dàiGroupCount)

Thông số
tính năngNhómĐếm Số lượng nhóm đặc điểm Được sử dụng cho các tổ hợp được nhóm. Phải là ước số của cả `lhs_feature` và `output_feature`.

tĩnh công khai UnityQuantizedConvolution.Options lhsDilation (Danh sách <Dài> lhsDilation)

Thông số
lhsSự giãn nở Hệ số giãn nở để áp dụng trong từng chiều không gian của `lhs`. Phải là danh sách trống (mặc định) hoặc danh sách kích thước (số kích thước không gian `lhs`). Nếu danh sách trống, độ giãn nở cho mỗi chiều không gian `lhs` được đặt thành 1.

tĩnh công khai UnityQuantizedConvolution.Options lhsQuantizationAxis (LhsQuantizationAxis dài)

Thông số
lhsTrụ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. Đối với `lhs`, chỉ hỗ trợ lượng tử hóa trên mỗi tensor. Vì vậy, điều này phải được đặt thành -1. Các giá trị khác sẽ gây ra lỗi khi xây dựng OpKernel.

Đầu ra công khai đầu ra <U> ()

Tenxor lượng tử hóa đầu ra của `Tout`, cùng hạng với `lhs` và `rhs`.

tĩnh công khai Thống nhấtQuantizedConvolution.Options đầu raQuantizationAxis (Đầu ra dàiQuantizationAxis)

Thông số
trục lượng tử hóa đầu ra 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. Đối với `output`, chỉ hỗ trợ lượng tử hóa trên mỗi tensor hoặc lượng tử hóa trên mỗi kênh dọc theo `output_feature_dimension`. Do đó, giá trị này phải được đặt thành -1 hoặc `dimension_numbers.output_feature_dimension`. Các giá trị khác sẽ gây ra lỗi khi xây dựng OpKernel.

tĩnh công khai UnityQuantizedConvolution.Options rhsDilation (Danh sách <Long> rhsDilation)

Thông số
rhsSự giãn nở Hệ số giãn nở để áp dụng trong từng chiều không gian của `rhs`. Phải là danh sách trống (mặc định) hoặc danh sách kích thước (số kích thước không gian `rhs`). Nếu danh sách trống, độ giãn nở cho mỗi chiều không gian `rhs` được đặt thành 1.

tĩnh công khai Thống nhấtQuantizedConvolution.Options rhsQuantizationAxis (RhsQuantizationAxis dài)

Thông số
rhsLượng tử hóaTrục 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. Đối với `rhs`, chỉ hỗ trợ lượng tử hóa trên mỗi tensor hoặc lượng tử hóa trên mỗi kênh dọc theo `kernel_output_feature_dimension`. Do đó, giá trị này phải được đặt thành -1 hoặc `dimension_numbers.kernel_output_feature_dimension`. Các giá trị khác sẽ gây ra lỗi khi xây dựng OpKernel.

tĩnh công khai UnityQuantizedConvolution.Options windowStrides (Danh sách<Long> windowStrides)

Thông số
cửa sổSải bước Bước tiến của cửa sổ trượt đối với từng chiều không gian của `lhs`. Phải là danh sách trống (mặc định) hoặc danh sách kích thước (số thứ nguyên không gian). Nếu danh sách trống được cung cấp, bước tiến cho từng chiều không gian được đặt thành 1.