TensorBuffer

공개 추상 클래스 TensorBuffer
알려진 직접 서브클래스

모델의 입력 또는 출력을 위한 데이터 버퍼를 나타냅니다.

공개 메서드

정적 TensorBuffer
createDynamic(DataType dataType)
지정된 DataType로 빈 동적 TensorBuffer를 만듭니다.
정적 TensorBuffer
createFixedSize(int[] 도형, DataType dataType)
지정된 shapeDataTypeTensorBuffer를 만듭니다.
정적 TensorBuffer
createFrom(TensorBuffer 버퍼, DataType dataType)
지정된 DataType를 사용하여 다른 항목에서 딥 복사 데이터를 만드는 TensorBuffer를 만듭니다.
ByteBuffer
getBuffer()
데이터 버퍼를 반환합니다.
추상 DataType
getDataType()
이 버퍼의 데이터 유형을 반환합니다.
int
getFlatSize()
버퍼의 splitSize를 가져옵니다.
추상 float[]
getFloatArray()
이 버퍼에 저장된 값의 부동 소수점 배열을 반환합니다.
추상 부동 소수점 수
getFloatValue(int absIndex)
주어진 색인의 부동 소수점 값을 반환합니다.
추상 정수[]
getIntArray()
이 버퍼에 저장된 값의 int 배열을 반환합니다.
추상 정수
getIntValue(int absIndex)
지정된 색인에서 int 값을 반환합니다.
int[]
getShape()
현재 셰이프를 가져옵니다.
추상 정수
getTypeSize()
배열에서 단일 요소의 바이트 수를 반환합니다.
부울
isDynamic()
TensorBuffer의 크기가 동적인 경우 (임의의 크기 조절 가능)를 반환합니다.
추상 무효
loadArray(int[] src, int[] 도형)
int 배열을 특정 형태로 이 버퍼에 로드합니다.
추상 무효
loadArray(float[] src, int[] 도형)
이 버퍼에 특정 모양의 부동 배열을 로드합니다.
void
loadArray(float[] src)
이 버퍼에 부동 배열을 로드합니다.
void
loadArray(int[] src)
이 버퍼에 int 배열을 로드합니다.
void
loadBuffer(ByteBuffer 버퍼)
TensorBuffer에 바이트 버퍼를 로드합니다.
void
loadBuffer(ByteBuffer 버퍼, int[] 모양)
TensorBuffer에 특정 형태의 바이트 버퍼를 로드합니다.

상속된 메서드

공개 메서드

<ph type="x-smartling-placeholder"></ph> 공개 정적 TensorBuffer createDynamic (DataType 데이터 유형)

지정된 DataType로 빈 동적 TensorBuffer를 만듭니다. 피처스토어의 모양은 만든 TensorBuffer이(가) {0}입니다.

동적 TensorBuffer는 다음에 해당하는 배열이나 데이터 버퍼를 로드할 때 메모리를 재할당합니다. 다양한 버퍼 크기를 지원합니다. 예를 들면 다음과 같습니다.

 // Creating a float dynamic TensorBuffer:
 TensorBuffer tensorBuffer = TensorBuffer.createDynamic(DataType.FLOAT32);
 // Loading a float array:
 float[] arr1 = new float[] {1, 2, 3};
 tensorBuffer.loadArray(arr, new int[] {arr1.length});
 // loading another float array:
 float[] arr2 = new float[] {1, 2, 3, 4, 5};
 tensorBuffer.loadArray(arr, new int[] {arr2.length});
 // loading a third float array with the same size as arr2, assuming shape doesn't change:
 float[] arr3 = new float[] {5, 4, 3, 2, 1};
 tensorBuffer.loadArray(arr);
 // loading a forth float array with different size as arr3 and omitting the shape will result
 // in error:
 float[] arr4 = new float[] {3, 2, 1};
 tensorBuffer.loadArray(arr); // Error: The size of byte buffer and the shape do not match.
 

매개변수
dataType 생성할 TensorBuffer의 dataType입니다.

<ph type="x-smartling-placeholder"></ph> 공개 정적 TensorBuffer createFixedSize (int[] 도형, DataType dataType)

지정된 shapeDataTypeTensorBuffer를 만듭니다. 다음은 몇 가지 예:

 // Creating a float TensorBuffer with shape {2, 3}:
 int[] shape = new int[] {2, 3};
 TensorBuffer tensorBuffer = TensorBuffer.createFixedSize(shape, DataType.FLOAT32);
 
 // Creating an uint8 TensorBuffer of a scalar:
 int[] shape = new int[] {};
 TensorBuffer tensorBuffer = TensorBuffer.createFixedSize(shape, DataType.UINT8);
 
 // Creating an empty uint8 TensorBuffer:
 int[] shape = new int[] {0};
 TensorBuffer tensorBuffer = TensorBuffer.createFixedSize(shape, DataType.UINT8);
 

고정 크기 TensorBuffer는 일단 생성된 후에는 변경할 수 없습니다.

매개변수
shape 생성할 TensorBuffer의 모양입니다.
dataType 생성할 TensorBuffer의 dataType입니다.
생성 값
NullPointerException shape가 null인 경우
IllegalArgumentException shape에 양수가 아닌 요소가 있는 경우.