DataLayouts

공개 최종 클래스 DataLayouts

선형 대수학 계산에 자주 사용되는 데이터 형식의 DataLayout 인스턴스를 노출합니다.

사용 예:

// Storing boolean values in a ByteDataBuffer
 BooleanDataBuffer boolBuffer = DataLayouts.BOOL.applyTo(byteDataBuffer);

 // Allocating a new buffer of 256 half floats
 FloatDataBuffer halfBuffer = DataLayouts.FLOAT16.applyTo(DataBuffers.ofShorts(256 * DataLayouts.FLOAT16.scale());
 

필드

공개 정적 최종 FloatDataLayout < ShortDataBuffer > BFLOAT16 16비트 bfloat를 짧은 값으로/에서 변환하기 위한 데이터 레이아웃입니다.
공개 정적 최종 BooleanDataLayout < ByteDataBuffer > 부울 부울을 바이트 값으로/에서 변환하기 위한 데이터 레이아웃입니다.
공개 정적 최종 FloatDataLayout < ShortDataBuffer > 플로트16 16비트 반 부동 소수점을 짧은 값으로/에서 변환하기 위한 데이터 레이아웃입니다.

공공 생성자

공개 방법

정적 DataLayout < DataBuffer <byte[]>, String>
ofStrings (문자 집합 문자 집합)
문자열을 바이트 시퀀스로/에서 변환하기 위한 데이터 레이아웃을 생성합니다.

상속된 메서드

필드

공개 정적 최종 FloatDataLayout < ShortDataBuffer > BFLOAT16

16비트 bfloat를 짧은 값으로/에서 변환하기 위한 데이터 레이아웃입니다.

이 형식은 TensorFlow에만 국한되었지만 이제는 기계 학습 분야에서 더 광범위하게 채택되었습니다. 이는 단순히 값을 이동하고 가수를 7비트로 자르는 단정밀도 32비트 부동 소수점을 사용한 빠른 변환에 최적화되어 있습니다.

따라서 이는 IEEE-754 반정밀도 부동 소수점 사양과 비교하여 분수 부분의 정밀도가 손실된 것입니다( FLOAT16 참조). 그러나 8비트 지수를 유지하고 다음을 사용하므로 전체 부분에서 가능한 값의 범위가 더 넓습니다. 동일한 편향(즉, 대략 [10 -40 , 3.39 × 10 38 ]의 0 이상의 절대 범위)

일부 CPU는 더 나은 성능을 위해 기본적으로 bfloat16 형식을 지원합니다.

공개 정적 최종 BooleanDataLayout < ByteDataBuffer > BOOL

부울을 바이트 값으로/에서 변환하기 위한 데이터 레이아웃입니다.

Java NIO 부울 버퍼가 없기 때문에 이 레이아웃은 부울 값을 표준 바이트 버퍼에 매핑하는 데 특히 유용합니다. 부울과 바이트 간의 변환에는 명시적인 유형 캐스팅이 필요합니다.

공개 정적 최종 FloatDataLayout < ShortDataBuffer > FLOAT16

16비트 반 부동 소수점을 짧은 값으로/에서 변환하기 위한 데이터 레이아웃입니다.

반 부동 소수점은 IEEE-754 반정밀도 부동 소수점 사양에 따라 메모리에 저장되며 사용자 공간에서 32비트 부동 소수점으로/에서 변환됩니다.

단일 부동 소수점(32비트)을 반 부동 소수점(16비트)으로 변환하면 정밀도가 손실될 수 있습니다. 반 부동 소수점에 대해 0보다 큰 값의 절대 범위는 대략 [5.96 × 10 -8 , 6.55 × 10 4 ]이며 소수 부분은 10비트 가수로 반올림됩니다.

일반적으로 CPU는 기본적으로 이 형식을 지원하지 않기 때문에 Half Float 계산은 GPU에서 더 잘 수행됩니다.

공공 생성자

공개 DataLayout ()

공개 방법

public static DataLayout < DataBuffer <byte[]>, String> ofStrings (Charset charset)

문자열을 바이트 시퀀스로/에서 변환하기 위한 데이터 레이아웃을 생성합니다.

이 레이아웃에는 문자열을 바이트 시퀀스로 인코딩/디코딩하는 방법을 지정하기 위해 charset 변수에 문자 세트가 필요합니다. 따라서 항상 새 레이아웃 인스턴스가 반환됩니다.

매개변수
문자셋 사용할 문자셋
보고
  • 새로운 문자열 레이아웃