DepthToSpace

공개 최종 클래스 DepthToSpace

T 유형의 텐서에 대한 DepthToSpace.

데이터를 깊이에서 공간 데이터 블록으로 재배열합니다. 이는 SpaceToDepth의 역변환입니다. 더 구체적으로 말하면, 이 작업은 '깊이' 차원의 값이 공간 블록에서 '높이' 및 '너비' 차원으로 이동되는 입력 텐서의 복사본을 출력합니다. 'block_size' 속성은 입력 블록 크기와 데이터 이동 방법을 나타냅니다.

* 깊이에서 `block_size * block_size` 크기의 데이터 덩어리는 `block_size x block_size` 크기의 겹치지 않는 블록으로 재배열됩니다. * 출력 텐서의 너비는 `input_length * block_size`이고 높이는 `input_height * block_size`입니다. * 출력 영상의 각 블록 내 Y, X 좌표는 입력 채널 인덱스의 상위 구성 요소에 의해 결정됩니다. * 입력 텐서의 깊이는 `block_size * block_size`로 나눌 수 있어야 합니다.

`data_format` 속성은 다음 옵션을 사용하여 입력 및 출력 텐서의 레이아웃을 지정합니다: "NHWC": `[ 배치, 높이, 너비, 채널 ]` "NCHW": `[ 배치, 채널, 높이, 너비 ]` " NCHW_VECT_C": `qint8 [ 배치, 채널 / 4, 높이, 너비, 4 ]`

이 작업을 6차원 텐서 변환으로 간주하는 것이 유용합니다. 예를 들어 data_format = NHWC의 경우 입력 텐서의 각 요소는 6개 좌표를 통해 지정할 수 있으며 메모리 레이아웃 중요도를 감소시키는 순서로 다음과 같이 정렬할 수 있습니다. n,iY,iX,bY,bX,oC(여기서 n=배치 인덱스, iX, iY는 X를 의미함) 또는 입력 이미지 내의 Y 좌표, bX, bY는 출력 블록 내의 좌표를 의미하고 oC는 출력 채널을 의미합니다. 출력은 다음 레이아웃으로 바뀐 입력입니다: n,iY,bY,iX,bX,oC

이 작업은 풀링 대신 컨볼루션 간의 활성화 크기를 조정하는 데 유용합니다(그러나 모든 데이터는 유지). 이는 순수 컨볼루션 모델을 훈련하는 데에도 유용합니다.

예를 들어 `[1, 1, 1, 4]` 형태의 입력이 주어지면 data_format = "NHWC" 및 block_size = 2입니다.

x = [[[[1, 2, 3, 4]]]]
 
 
이 작업은 '[1, 2, 2, 1]' 모양의 텐서를 출력합니다.
[[[[1], [2]],
      [[3], [4]]]]
 
여기서 입력은 1개의 배치를 가지며 각 배치 요소는 '[1, 1, 4]' 모양을 가지며, 해당 출력은 2x2 요소를 가지며 1 채널의 깊이를 갖습니다(1 = `4 / (block_size * block_size) )`). 출력 요소 모양은 `[2, 2, 1]`입니다.

더 큰 깊이를 가진 입력 텐서의 경우 여기에서는 '[1, 1, 1, 12]' 모양입니다. 예:

x = [[[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]]]
 
블록 크기가 2인 경우 이 작업은 '[1, 2, 2, 3]' 모양의 다음 텐서를 반환합니다.
[[[[1, 2, 3], [4, 5, 6]],
      [[7, 8, 9], [10, 11, 12]]]]
 
 
마찬가지로, '[1 2 2 4]' 형태의 다음 입력과 블록 크기 2의 경우:
x =  [[[[1, 2, 3, 4],
        [5, 6, 7, 8]],
       [[9, 10, 11, 12],
        [13, 14, 15, 16]]]]
 
연산자는 `[1 4 4 1]` 모양의 다음 텐서를 반환합니다.
x = [[[ [1],   [2],  [5],  [6]],
       [ [3],   [4],  [7],  [8]],
       [ [9],  [10], [13],  [14]],
       [ [11], [12], [15],  [16]]]]
 
 

중첩 클래스

수업 DepthToSpace.Options DepthToSpace 의 선택적 속성

상수

OP_NAME TensorFlow 코어 엔진에서 알려진 이 작업의 이름

공개 방법

출력 <T>
출력 ()
텐서의 기호 핸들을 반환합니다.
static <T는 TType을 확장합니다. > DepthToSpace <T>
생성 (범위 범위 , 피연산자 <T> 입력, Long blockSize, 옵션... 옵션)
새로운 DepthToSpace 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
정적 DepthToSpace.Options
dataFormat (문자열 데이터 형식)
출력 <T>
출력 ()

상속된 메서드

org.tensorflow.op.RawOp 클래스에서
최종 부울
같음 (객체 객체)
최종 정수
작업
op ()
이 계산 단위를 단일 Operation 으로 반환합니다.
최종 문자열
부울
같음 (개체 arg0)
마지막 수업<?>
getClass ()
정수
해시코드 ()
최종 무효
알림 ()
최종 무효
통지모두 ()
toString ()
최종 무효
대기 (long arg0, int arg1)
최종 무효
기다리세요 (긴 arg0)
최종 무효
기다리다 ()
org.tensorflow.op.Op 에서
추상 실행환경
환경 ()
이 작업이 생성된 실행 환경을 반환합니다.
추상적인 작업
op ()
이 계산 단위를 단일 Operation 으로 반환합니다.
org.tensorflow.Operand 에서
추상 출력 <T>
출력 ()
텐서의 기호 핸들을 반환합니다.
추상 T
텐서 ()
이 피연산자의 텐서를 반환합니다.
추상 모양
모양 ()
이 피연산자의 Output 에서 ​​참조하는 텐서의 (아마도 부분적으로 알려진) 모양을 반환합니다.
추상 클래스<T>
유형 ()
이 피연산자의 텐서 유형을 반환합니다.
org.tensorflow.ndarray.Shaped 에서
추상 정수
순위 ()
추상 모양
모양 ()
추상적인 긴
사이즈 ()
이 컨테이너의 전체 크기를 값 개수로 계산하고 반환합니다.

상수

공개 정적 최종 문자열 OP_NAME

TensorFlow 코어 엔진에서 알려진 이 작업의 이름

상수 값: "DepthToSpace"

공개 방법

공개 출력 <T> asOutput ()

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

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

공개 정적 DepthToSpace <T> 생성 ( 범위 범위, 피연산자 <T> 입력, Long blockSize, 옵션... 옵션)

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

매개변수
범위 현재 범위
블록 크기 Space2Depth와 동일한 공간 블록의 크기입니다.
옵션 선택적 속성 값을 전달합니다.
보고
  • DepthToSpace의 새로운 인스턴스

공개 정적 DepthToSpace.Options dataFormat (문자열 dataFormat)

공개 출력 <T> 출력 ()