SegmentProdV2

공개 최종 클래스 SegmentProdV2

텐서의 세그먼트를 따라 곱을 계산합니다.

세그먼트에 대한 설명은 [세그먼트 섹션](https://tensorflow.org/api_docs/python/tf/math#Segmentation)을 읽어보세요.

`segment_ids[j] == i`와 같이 곱이 `j` 위에 있는 \\(output_i = \prod_j data_j\\) 과 같은 텐서를 계산합니다.

주어진 세그먼트 ID `i`에 대해 제품이 비어 있으면 `output[i] = 1`입니다.

참고: 이 작업은 현재 jit_compile=True에서만 지원됩니다.

SegmentProd와의 유일한 차이점은 추가 입력 'num_segments'입니다. 이는 컴파일 타임에 출력 형태를 평가하는 데 도움이 됩니다. 'num_segments'는 세그먼트 ID와 일치해야 합니다. 예를 들어 Max(segment_ids) - 1은 1-d 세그먼트_id에 대한 `num_segments`와 같아야 합니다. num_segments가 일치하지 않으면 작업이 계속 실행됩니다. 유일한 차이점은 출력은 세그먼트 ID 및 데이터의 크기에 관계없이 num_segments의 크기를 사용한다는 것입니다. 예상 출력 크기보다 작은 num_segments의 경우 마지막 요소는 예상 출력 크기보다 큰 num_segments에 대해 무시되고 마지막 요소에는 1이 할당됩니다.

예를 들어:

>>> @tf.function(jit_compile=True) ... def test(c): ... return tf.raw_ops.SegmentProdV2(data=c, 세그먼트_ids=tf.constant([0, 0, 1]), num_segments=2) >>> c = tf.constant([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]]) >>> 테스트( c).numpy() 배열([[4, 6, 6, 4], [5, 6, 7, 8]], dtype=int32)

공개 방법

출력 <T>
출력 ()
텐서의 기호 핸들을 반환합니다.
static <T, U 확장 번호, V 확장 번호> SegmentProdV2 <T>
생성 ( 범위 범위, 피연산자 <T> 데이터, 피연산자 <U> 세그먼트 ID, 피연산자 <V> numSegments)
새 SegmentProdV2 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
출력 <T>
출력 ()
크기가 `num_segments`인 단일 차원으로 대체되는 첫 번째 `segment_ids.rank` 차원을 제외하고 데이터와 모양이 동일합니다.

상속된 메서드

공개 방법

공개 출력 <T> asOutput ()

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

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

공개 정적 SegmentProdV2 <T> 생성 ( 범위 범위, 피연산자 <T> 데이터, 피연산자 <U> 세그먼트 ID, 피연산자 <V> numSegments)

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

매개변수
범위 현재 범위
세그먼트 ID 크기가 '데이터'의 첫 번째 차원 크기와 동일한 1차원 텐서입니다. 값은 정렬되어야 하며 반복될 수 있습니다. 값은 'num_segments'보다 작아야 합니다.

주의: 값은 항상 CPU에서 정렬되도록 검증되며 GPU에서는 검증되지 않습니다.

보고
  • SegmentProdV2의 새 인스턴스

공개 출력 <T> 출력 ()

크기가 `num_segments`인 단일 차원으로 대체되는 첫 번째 `segment_ids.rank` 차원을 제외하고 데이터와 모양이 동일합니다.