양자화된 텐서 'lhs'와 양자화된 텐서 'rhs'의 양자화된 컨볼루션을 수행합니다. 양자화된 '출력'을 만들기 위해.
양자화된 'lhs'와 양자화된 'rhs'가 주어지면 'lhs'와 'rhs'에 양자화된 점을 수행하여 양자화된 '출력'을 만듭니다.
`lhs`와 `rhs`는 동일한 순위의 Tensor여야 하며 다음 모양 조건을 충족해야 합니다. - `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` % `배치_그룹_수` == 0 - `rhs_output_feature` % `배치_그룹_수` == 0
`lhs` 및 `rhs`는 Tensor로 양자화되어야 하며, 여기서 데이터 값은 다음 공식을 사용하여 양자화됩니다.
quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
중첩 클래스
수업 | 균일QuantizedConvolution.Options | UniformQuantizedConvolution 의 선택적 속성 |
공개 방법
출력 <U> | 출력 () 텐서의 기호 핸들을 반환합니다. |
정적 UniformQuantizedConvolution.Options | 배치그룹카운트 (긴 배치그룹카운트) |
static <U, T> 균일QuantizedConvolution <U> | create ( Scope 범위, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Operand <Float> outputScales, Operand <Integer > outputZeroPoints, Class<U> Tout, 문자열 패딩, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long outputQuantizationMaxVal, 옵션... 옵션) 새로운UniformQuantizedConvolution 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다. |
정적 UniformQuantizedConvolution.Options | 차원 번호 (문자열 차원 번호) |
정적 UniformQuantizedConvolution.Options | explicitPadding (List<Long>explicitPadding) |
정적 UniformQuantizedConvolution.Options | featureGroupCount (긴 featureGroupCount) |
정적 UniformQuantizedConvolution.Options | lhsDilation (List<Long> lhsDilation) |
정적 UniformQuantizedConvolution.Options | lhsQuantizationAxis (Long lhsQuantizationAxis) |
출력 <U> | 출력 () 'Tout'의 출력 양자화 텐서, 'lhs' 및 'rhs'와 동일한 순위. |
정적 UniformQuantizedConvolution.Options | outputQuantizationAxis (긴 출력QuantizationAxis) |
정적 UniformQuantizedConvolution.Options | rhsDilation (List<Long> rhsDilation) |
정적 UniformQuantizedConvolution.Options | rhsQuantizationAxis (긴 rhsQuantizationAxis) |
정적 UniformQuantizedConvolution.Options | windowStrides (List<Long> windowStrides) |
상속된 메서드
공개 방법
공개 출력 <U> asOutput ()
텐서의 기호 핸들을 반환합니다.
TensorFlow 작업에 대한 입력은 다른 TensorFlow 작업의 출력입니다. 이 메서드는 입력 계산을 나타내는 기호 핸들을 얻는 데 사용됩니다.
공개 정적 균일QuantizedConvolution.Options 배치그룹카운트 (긴 배치그룹카운트)
매개변수
배치그룹수 | 일괄 그룹 수입니다. 그룹화된 필터에 사용됩니다. `output_feature`의 제수여야 합니다. |
---|
public staticUniformQuantizedConvolution <U> create ( Scope 범위, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Operand <Float > outputScales, 피연산자 <Integer> outputZeroPoints, Class<U> Tout, String padding, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long OutputQuantizationMaxVal, 옵션... 옵션)
새로운UniformQuantizedConvolution 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
매개변수
범위 | 현재 범위 |
---|---|
ㅋㅋㅋ | 양자화된 텐서여야 하며 순위는 >= 3입니다. |
rhs | 'lhs'와 동일한 순위의 양자화된 텐서여야 합니다. |
lhs저울 | 'lhs'가 나타내는 원본 데이터를 양자화할 때 배율 인수로 사용되는 부동 소수점 값입니다. 스칼라 `Tensor`여야 합니다(`lhs`는 텐서당 양자화만 지원합니다). |
lhs제로포인트 | 'lhs'가 나타내는 원본 데이터를 양자화할 때 영점으로 사용되는 int32 값입니다. `lhs_scales`와 모양 조건이 동일합니다. |
rhsScale | 'rhs'가 나타내는 원본 데이터를 양자화할 때 배율 인수로 사용되는 부동 소수점 값입니다. 텐서별 양자화의 경우 스칼라 'Tensor', 채널별 양자화의 경우 'rhs.dim_size(kernel_output_feature_dimension)' 크기의 1D 'Tensor'여야 합니다. |
rhsZeroPoints | `rhs`가 나타내는 원본 데이터를 양자화할 때 영점으로 사용되는 int32 값입니다. `rhs_scales`와 모양 조건이 동일합니다. |
출력스케일 | '출력'이 나타내는 원본 데이터를 양자화할 때 배율 인수로 사용할 부동 소수점 값입니다. 텐서별 양자화의 경우 스칼라 'Tensor'이거나 채널별 양자화의 경우 'output.dim_size(output_feature_dimension)'과 동일한 크기 'rhs.dim_size(kernel_output_feature_dimension)'의 1D 'Tensor'여야 합니다. 'rhs'가 텐서별 양자화되는 경우 출력도 텐서별 양자화되어야 합니다. 이는 `rhs_scales` 및 `rhs_zero_points`가 스칼라 `Tensor`인 경우 `output_scales` 및 `output_zero_points`도 스칼라 `Tensor`여야 함을 의미합니다. |
출력ZeroPoint | 출력이 나타내는 원본 데이터를 양자화할 때 영점으로 사용되는 int32 값입니다. `output_scales`와 동일한 모양 조건. |
암표 장수 | '출력' 'Tensor' 유형입니다. |
심 | 사용할 패딩 알고리즘 유형을 나타내는 `"SAME"`, `"VALID"` 또는 `"EXPLICIT"`의 문자열. |
lhs양자화MinVal | 'lhs'에 저장된 양자화된 데이터의 최소값입니다. 예를 들어 'Tin'이 'qint8'인 경우 좁은 범위가 양자화되면 -127로 설정되어야 하고, 그렇지 않으면 -128로 설정되어야 합니다. |
lhsQuantizationMaxVal | 'lhs'에 저장된 양자화된 데이터의 최대값입니다. 예를 들어 'Tin'이 'qint8'인 경우 127로 설정해야 합니다. |
rhs양자화MinVal | 'rhs'에 저장된 양자화된 데이터의 최소값입니다. 예를 들어 'Tin'이 'qint8'인 경우 좁은 범위가 양자화되면 -127로 설정되어야 하고, 그렇지 않으면 -128로 설정되어야 합니다. |
rhsQuantizationMaxVal | 'rhs'에 저장된 양자화된 데이터의 최대값입니다. 예를 들어 'Tin'이 'qint8'인 경우 127로 설정해야 합니다. |
출력양자화MinVal | '출력'에 저장된 양자화된 데이터의 최소값입니다. 예를 들어 'Tout'이 'qint8'인 경우 좁은 범위가 양자화되면 -127로 설정되어야 하고, 그렇지 않으면 -128로 설정되어야 합니다. |
출력QuantizationMaxVal | '출력'에 저장된 양자화된 데이터의 최대값입니다. 예를 들어 'Tout'이 'qint8'인 경우 127로 설정해야 합니다. |
옵션 | 선택적 속성 값을 전달합니다. |
보고
- UniformQuantizedConvolution의 새로운 인스턴스
공개 정적 균일QuantizedConvolution.Options 차원Numbers (문자열 차원Numbers)
매개변수
차원번호 | 컨볼루션 연산에 대한 차원 정보의 구조. 빈 문자열(기본값)이거나 'tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr' proto의 직렬화된 문자열이어야 합니다. 빈 문자열인 경우 기본값은 `("NCHW", "OIHW", "NCHW")`입니다(2D 컨볼루션의 경우). |
---|
공개 정적 유니폼QuantizedConvolution.OptionsexplicitPadding ( List<Long>explicitPadding)
매개변수
명시적 패딩 | `padding`이 `"EXPLICIT"`인 경우 각 `lhs` 공간 차원의 시작과 끝에서 명시적 패딩을 나타내는 목록으로 설정되어야 합니다. 그렇지 않으면 비어 있어야 합니다. (사용되는 경우) `2 * (lhs 공간 차원 수)` 크기의 목록이어야 합니다. 여기서 `(explicit_padding[2 * i],explicit_padding[2 * i + 1])`는 `(start_padding, end_padding)을 나타냅니다. `공간_차원[i]`의 `입니다. |
---|
공개 정적 균일QuantizedConvolution.Options featureGroupCount (Long featureGroupCount)
매개변수
featureGroupCount | 기능 그룹의 수입니다. 그룹화된 컨볼루션에 사용됩니다. `lhs_feature`와 `output_feature` 모두의 제수여야 합니다. |
---|
공개 정적 균일 QuantizedConvolution.Options lhsDilation (List<Long> lhsDilation)
매개변수
lhs확장 | 'lhs'의 각 공간 차원에 적용할 확장 인자입니다. 빈 목록(기본값) 또는 크기 목록(`lhs` 공간 차원 수)이어야 합니다. 목록이 비어 있으면 각 'lhs' 공간 차원의 팽창이 1로 설정됩니다. |
---|
공개 정적 균일QuantizedConvolution.Options lhsQuantizationAxis (Long lhsQuantizationAxis)
매개변수
lhs양자화축 | 해당 차원을 따르는 조각에 축당 양자화가 적용되는 텐서의 차원 인덱스를 나타냅니다. -1(기본값)로 설정하면 텐서별 양자화를 나타냅니다. `lhs`의 경우 텐서당 양자화만 지원됩니다. 따라서 이 값은 -1로 설정되어야 합니다. 다른 값은 OpKernel 구성 시 오류를 발생시킵니다. |
---|
공개 정적 균일QuantizedConvolution. 옵션 출력QuantizationAxis (긴 출력QuantizationAxis)
매개변수
출력양자화축 | 해당 차원을 따르는 조각에 축당 양자화가 적용되는 텐서의 차원 인덱스를 나타냅니다. -1(기본값)로 설정하면 텐서별 양자화를 나타냅니다. '출력'의 경우 'output_feature_dimension'에 따른 텐서별 양자화 또는 채널별 양자화만 지원됩니다. 따라서 이는 -1 또는 `dimension_numbers.output_feature_dimension`으로 설정되어야 합니다. 다른 값은 OpKernel 구성 시 오류를 발생시킵니다. |
---|
공개 정적 균일QuantizedConvolution.Options rhsDilation (List<Long> rhsDilation)
매개변수
rhs확장 | 'rhs'의 각 공간 차원에 적용할 확장 인자입니다. 빈 목록(기본값) 또는 크기 목록(`rhs` 공간 차원 수)이어야 합니다. 목록이 비어 있으면 각 'rhs' 공간 차원의 팽창이 1로 설정됩니다. |
---|
공개 정적 균일QuantizedConvolution.Options rhsQuantizationAxis (Long rhsQuantizationAxis)
매개변수
rhs양자화축 | 해당 차원을 따르는 조각에 축당 양자화가 적용되는 텐서의 차원 인덱스를 나타냅니다. -1(기본값)로 설정하면 텐서별 양자화를 나타냅니다. 'rhs'의 경우 'kernel_output_feature_dimension'에 따른 텐서별 양자화 또는 채널별 양자화만 지원됩니다. 따라서 이는 -1 또는 `dimension_numbers.kernel_output_feature_dimension`으로 설정되어야 합니다. 다른 값은 OpKernel 구성 시 오류를 발생시킵니다. |
---|
공개 정적 균일QuantizedConvolution.Options windowStrides (List<Long> windowStrides)
매개변수
창스트라이드 | 'lhs'의 각 공간 차원에 대한 슬라이딩 윈도우의 보폭입니다. 빈 목록(기본값) 또는 크기 목록(공간 차원 수)이어야 합니다. 빈 목록이 제공되면 각 공간 차원의 보폭은 1로 설정됩니다. |
---|