op는 입력 텐서에 제공된 protobuf 메시지를 직렬화합니다.
'values'의 텐서 유형은 'field_names'에 지정된 필드의 스키마와 일치해야 합니다. `values`의 모든 텐서에는 공통 모양 접두사 인 배치_모양이 있어야 합니다.
'sizes' 텐서는 각 필드의 반복 횟수를 지정합니다. '값'에 있는 각 텐서의 반복 횟수(마지막 차원)는 '크기'에 있는 해당 반복 횟수보다 크거나 같아야 합니다.
필드 이름에 대한 컨텍스트를 제공하려면 `message_type` 이름을 제공해야 합니다. 실제 메시지 설명자는 연결된 설명자 풀이나 `descriptor_source` 속성을 사용하여 호출자가 제공한 파일 이름에서 조회할 수 있습니다.
대부분의 경우 Proto 필드 유형과 TensorFlow dtype 간의 매핑은 간단합니다. 그러나 몇 가지 특별한 경우가 있습니다:
- 하위 메시지나 그룹을 포함하는 proto 필드는 'DT_STRING'(직렬화된 하위 메시지)로만 변환될 수 있습니다. 이는 API의 복잡성을 줄이기 위한 것입니다. 결과 문자열은 decode_proto 작업의 다른 인스턴스에 대한 입력으로 사용될 수 있습니다.
- TensorFlow는 부호 없는 정수에 대한 지원이 부족합니다. ops는 uint64 유형을 동일한 2의 보수 비트 패턴을 갖는 `DT_INT64`로 나타냅니다(명백한 방법). 부호 없는 int32 값은 `DT_INT64` 유형을 지정하거나 호출자가 `output_types` 속성에 `DT_INT32`를 지정한 경우 2의 보수를 사용하여 정확하게 표현할 수 있습니다.
`descriptor_source` 속성은 `message_type`을 검색할 때 참조할 프로토콜 설명자의 소스를 선택합니다. 이는 다음과 같을 수 있습니다:
- 빈 문자열 또는 "local://". 이 경우 프로토콜 설명자는 바이너리에 연결된 C++(Python 아님) proto 정의에 대해 생성됩니다.
- 파일에서 프로토콜 설명자가 생성되는 파일로, 문자열로 직렬화된 `FileDescriptorSet`을 포함할 것으로 예상됩니다. 참고: 프로토콜 컴파일러 `protoc`에 `--descriptor_set_out` 및 `--include_imports` 옵션을 사용하여 `descriptor_source` 파일을 빌드할 수 있습니다.
- "바이트://
중첩 클래스
수업 | EncodeProto.Options | EncodeProto 의 선택적 속성 |
공개 방법
출력 <문자열> | 출력 () 텐서의 기호 핸들을 반환합니다. |
출력 <문자열> | 바이트 () `batch_shape` 형태를 갖는 직렬화된 proto의 텐서입니다. |
정적 EncodeProto | |
정적 EncodeProto.Options | descriptorSource (문자열 설명자 소스) |
상속된 메서드
공개 방법
공개 출력 <String> asOutput ()
텐서의 기호 핸들을 반환합니다.
TensorFlow 작업에 대한 입력은 다른 TensorFlow 작업의 출력입니다. 이 메서드는 입력 계산을 나타내는 기호 핸들을 얻는 데 사용됩니다.
public static EncodeProto create ( 범위 범위, Operand <Integer> 크기, Iterable< Operand <?>> 값, List<String> fieldNames, String messageType, 옵션... 옵션)
새로운 EncodeProto 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
매개변수
범위 | 현재 범위 |
---|---|
크기 | 형태가 `[batch_shape, len(field_names)]`인 int32의 텐서. |
가치 | 해당 필드의 값을 포함하는 텐서 목록입니다. |
필드 이름 | proto 필드 이름이 포함된 문자열 목록입니다. |
메시지 유형 | 디코딩할 프로토 메시지 유형의 이름입니다. |
옵션 | 선택적 속성 값을 전달합니다. |
보고
- EncodeProto의 새로운 인스턴스