UniformQuantizedConvolutionHybrid

공개 최종 클래스 UniformQuantizedConvolutionHybrid

float Tensor 'lhs'와 양자화 Tensor 'rhs'의 하이브리드 양자화 컨볼루션을 수행합니다.

float 'lhs'와 양자화된 'rhs'가 주어지면 내부적으로 'lhs'에 대해 양자화를 수행한 다음 양자화된 'lhs' 및 'rhs'에 대해 양자화된 컨볼루션을 수행합니다.

`lhs`의 내부 양자화는 `Trhs`, 동적 범위, 배치당(`dimension_numbers.input_batch_dimension` 축을 따른 축별), 비대칭 및 좁은 범위가 아닌(범위는 [Trhs_MIN, Trhs_MAX])에 대한 양자화입니다. .

`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

`rhs`는 양자화된 Tensor여야 합니다. 여기서 해당 데이터 값은 다음 공식을 사용하여 양자화됩니다: 퀀타이즈_데이터 = 클립(원래_데이터 / 스케일 + 제로_포인트, 퀀타이즈_최소_발, 퀀타이즈_최대_발).

중첩 클래스

수업 균일QuantizedConvolutionHybrid.Options UniformQuantizedConvolutionHybrid 의 선택적 속성

공개 방법

출력 <V>
출력 ()
텐서의 기호 핸들을 반환합니다.
정적 UniformQuantizedConvolutionHybrid.Options
배치그룹카운트 (긴 배치그룹카운트)
static <V는 Number를 확장하고, T는 Number를 확장하고, U> UniformQuantizedConvolutionHybrid <V>
생성 ( 범위 범위, 피연산자 <T> lhs, 피연산자 <U> rhs, 피연산자 <Float> rhsScales, 피연산자 <Integer> rhsZeroPoints, Class<V> Tout, 문자열 패딩, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, 옵션... 옵션)
새로운UniformQuantizedConvolutionHybrid 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
정적 UniformQuantizedConvolutionHybrid.Options
차원 번호 (문자열 차원 번호)
정적 UniformQuantizedConvolutionHybrid.Options
explicitPadding (List<Long>explicitPadding)
정적 UniformQuantizedConvolutionHybrid.Options
featureGroupCount (긴 featureGroupCount)
정적 UniformQuantizedConvolutionHybrid.Options
lhsDilation (List<Long> lhsDilation)
출력 <V>
출력 ()
'Tout'의 출력 텐서, 'lhs' 및 'rhs'와 순위가 동일합니다.
정적 UniformQuantizedConvolutionHybrid.Options
rhsDilation (List<Long> rhsDilation)
정적 UniformQuantizedConvolutionHybrid.Options
rhsQuantizationAxis (긴 rhsQuantizationAxis)
정적 UniformQuantizedConvolutionHybrid.Options
windowStrides (List<Long> windowStrides)

상속된 메서드

공개 방법

공개 출력 <V> asOutput ()

텐서의 기호 핸들을 반환합니다.

TensorFlow 작업에 대한 입력은 다른 TensorFlow 작업의 출력입니다. 이 메서드는 입력 계산을 나타내는 기호 핸들을 얻는 데 사용됩니다.

공개 정적 균일 QuantizedConvolutionHybrid.Options 배치그룹카운트 (긴 배치그룹카운트)

매개변수
배치그룹수 일괄 그룹 수입니다. 그룹화된 필터에 사용됩니다. Output_feature의 제수여야 합니다.

public staticUniformQuantizedConvolutionHybrid <V> create ( Scope 범위, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, 옵션... 옵션)

새로운UniformQuantizedConvolutionHybrid 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.

매개변수
범위 현재 범위
ㅋㅋㅋ 'Tlhs'의 양자화되지 않은 Tensor여야 합니다(등급 >= 3).
rhs 'lhs'와 동일한 순위인 'Trhs'의 양자화된 텐서여야 합니다.
rhsScale 'rhs'가 나타내는 원본 데이터를 양자화할 때 배율 인수로 사용되는 부동 소수점 값입니다. 텐서별 양자화를 위한 스칼라 텐서이거나, 채널별 양자화를 위한 'rhs.dim_size(kernel_output_feature_dimension)' 크기의 1D 텐서여야 합니다.
rhsZeroPoints `rhs`가 나타내는 원본 데이터를 양자화할 때 zero_point로 사용되는 int32 값입니다. `rhs_scales`와 모양 조건이 동일합니다.
암표 장수 출력 텐서의 유형입니다.
사용할 패딩 알고리즘 유형을 나타내는 `"SAME"`, `"VALID"` 또는 `"EXPLICIT"`의 문자열.
rhs양자화MinVal 'rhs'에 저장된 양자화된 데이터의 최소값입니다. 예를 들어 `Trhs`가 qint8인 경우 좁은 범위가 양자화되면 -127로 설정되어야 하고, 그렇지 않으면 -128로 설정되어야 합니다.
rhsQuantizationMaxVal 'rhs'에 저장된 양자화된 데이터의 최대값입니다. 예를 들어 'Trhs'가 qint8인 경우 127로 설정해야 합니다.
옵션 선택적 속성 값을 전달합니다.
보고
  • UniformQuantizedConvolutionHybrid의 새로운 인스턴스

공개 정적 균일 QuantizedConvolutionHybrid.Options 차원Numbers (문자열 차원Numbers)

매개변수
차원번호 컨볼루션 연산에 대한 차원 정보의 구조. 빈 문자열(기본값) 또는 tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr proto의 직렬화된 문자열이어야 합니다. 빈 문자열인 경우 기본값은 `("NCHW", "OIHW", "NCHW")`입니다(2D 컨볼루션의 경우).

공개 정적 유니폼QuantizedConvolutionHybrid.OptionsexplicitPadding ( List<Long>explicitPadding)

매개변수
명시적 패딩 `padding` 속성이 `"EXPLICIT"`인 경우 각 lhs 공간 차원의 시작과 끝에서 명시적 패딩을 나타내는 목록으로 설정되어야 합니다. 그렇지 않으면 이 속성은 비어 있어야 합니다.

(사용되는 경우) 크기 2 * (lhs 공간 차원 수)의 목록이어야 합니다. 여기서 (explicit_padding[2 * i],explicit_padding[2 * i + 1])은 space_dimensions[i](start_padding, end_padding)을 나타냅니다.

공개 정적 균일 QuantizedConvolutionHybrid.Options featureGroupCount (Long featureGroupCount)

매개변수
featureGroupCount 기능 그룹의 수입니다. 그룹화된 컨볼루션에 사용됩니다. lhs_feature와output_feature의 제수여야 합니다.

공개 정적 UniformQuantizedConvolutionHybrid.Options lhsDilation (List<Long> lhsDilation)

매개변수
lhs확장 'lhs'의 각 공간 차원에 적용할 확장 인자입니다. 빈 목록(기본값) 또는 크기 목록(lhs 공간 차원 수)이어야 합니다. 목록이 비어 있으면 각 lhs 공간 차원의 확장이 1로 설정됩니다.

공개 출력 <V> 출력 ()

'Tout'의 출력 텐서, 'lhs' 및 'rhs'와 순위가 동일합니다. 출력 데이터는 양자화되지 않은 출력 데이터입니다.

공개 정적 균일 QuantizedConvolutionHybrid.Options rhsDilation (List<Long> rhsDilation)

매개변수
rhs확장 'rhs'의 각 공간 차원에 적용할 확장 인자입니다. 빈 목록(기본값) 또는 크기 목록(rhs 공간 차원 수)이어야 합니다. 목록이 비어 있으면 각 rhs 공간 차원의 확장이 1로 설정됩니다.

공개 정적 균일 QuantizedConvolutionHybrid.Options rhsQuantizationAxis (Long rhsQuantizationAxis)

매개변수
rhs양자화축 해당 차원에 따른 조각에 축당 양자화가 적용되는 텐서의 차원 인덱스를 나타냅니다. -1(기본값)로 설정하면 텐서별 양자화를 나타냅니다. 'rhs'의 경우 kernel_output_feature_dimension에 따른 텐서별 양자화 또는 채널별 양자화만 지원됩니다. 따라서 이 속성은 -1 또는 `dimension_numbers.kernel_output_feature_dimension`으로 설정되어야 합니다. 다른 값은 OpKernel 구성 시 오류를 발생시킵니다.

공개 정적 균일 QuantizedConvolutionHybrid.Options windowStrides (List<Long> windowStrides)

매개변수
창스트라이드 'lhs'의 각 공간 차원에 대한 슬라이딩 윈도우의 보폭입니다. 빈 목록(기본값) 또는 크기 목록(공간 차원 수)이어야 합니다. 빈 목록이 제공되면 각 공간 차원의 보폭은 1로 설정됩니다.