A operação serializa mensagens protobuf fornecidas nos tensores de entrada.
Os tipos de tensores em `values` devem corresponder ao esquema dos campos especificados em `field_names`. Todos os tensores em `values` devem ter um prefixo de forma comum, batch_shape .
O tensor `sizes` especifica contagens repetidas para cada campo. A contagem de repetições (última dimensão) de cada tensor em `valores` deve ser maior ou igual à contagem de repetições correspondente em `tamanhos`.
Um nome `message_type` deve ser fornecido para fornecer contexto para os nomes dos campos. O descritor de mensagem real pode ser consultado no conjunto de descritores vinculados ou em um nome de arquivo fornecido pelo chamador usando o atributo `descriptor_source`.
Na maior parte, o mapeamento entre os tipos de campo Proto e os dtypes do TensorFlow é direto. No entanto, existem alguns casos especiais:
- Um campo proto que contém uma submensagem ou grupo só pode ser convertido em `DT_STRING` (a submensagem serializada). Isso reduz a complexidade da API. A string resultante pode ser usada como entrada para outra instância da operação decode_proto.
- O TensorFlow não oferece suporte para números inteiros não assinados. As operações representam os tipos uint64 como `DT_INT64` com o mesmo padrão de bits de complemento de dois (a maneira óbvia). Valores int32 não assinados podem ser representados exatamente especificando o tipo `DT_INT64` ou usando complemento de dois se o chamador especificar `DT_INT32` no atributo `output_types`.
O atributo `descriptor_source` seleciona a fonte dos descritores de protocolo a serem consultados ao procurar `message_type`. Isto pode ser:
- Uma string vazia ou "local://", caso em que os descritores de protocolo são criados para definições de proto C++ (não Python) vinculadas ao binário.
- Um arquivo, nesse caso os descritores de protocolo são criados a partir do arquivo, que deve conter um `FileDescriptorSet` serializado como uma string. NOTA: Você pode construir um arquivo `descriptor_source` usando as opções `--descriptor_set_out` e `--include_imports` para o compilador de protocolo `protoc`.
- Um "byte://
Classes aninhadas
aula | EncodeProto.Options | Atributos opcionais para EncodeProto |
Constantes
Corda | OP_NAME | O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow |
Métodos Públicos
Saída <TString> | asOutput () Retorna o identificador simbólico do tensor. |
Saída <TString> | bytes () Tensor de protos serializados com formato `batch_shape`. |
EncodeProto estático | create (Escopo do escopo , tamanhos de operando < TInt32 >, valores Iterable < Operando <?>>, List<String> fieldNames, String messageType, Options... options) Método de fábrica para criar uma classe que envolve uma nova operação EncodeProto. |
EncodeProto.Options estático | descriptorSource (String descriptorSource) |
Métodos herdados
Constantes
String final estática pública OP_NAME
O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow
Métodos Públicos
Saída pública < TString > asOutput ()
Retorna o identificador simbólico do tensor.
As entradas para operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.
public static EncodeProto create (escopo do escopo , tamanhos do operando < TInt32 >, valores Iterable < Operando <?>>, List<String> fieldNames, String messageType, Options... options)
Método de fábrica para criar uma classe que envolve uma nova operação EncodeProto.
Parâmetros
escopo | escopo atual |
---|---|
tamanhos | Tensor de int32 com forma `[batch_shape, len(field_names)]`. |
valores | Lista de tensores contendo valores para o campo correspondente. |
nomes de campo | Lista de strings contendo nomes de campos proto. |
tipo de mensagem | Nome do tipo de mensagem proto a ser decodificada. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância do EncodeProto
A operação serializa mensagens protobuf fornecidas nos tensores de entrada.
Os tipos de tensores em `values` devem corresponder ao esquema dos campos especificados em `field_names`. Todos os tensores em `values` devem ter um prefixo de forma comum, batch_shape .
O tensor `sizes` especifica contagens repetidas para cada campo. A contagem de repetições (última dimensão) de cada tensor em `valores` deve ser maior ou igual à contagem de repetições correspondente em `tamanhos`.
Um nome `message_type` deve ser fornecido para fornecer contexto para os nomes dos campos. O descritor de mensagem real pode ser consultado no conjunto de descritores vinculados ou em um nome de arquivo fornecido pelo chamador usando o atributo `descriptor_source`.
Na maior parte, o mapeamento entre os tipos de campo Proto e os dtypes do TensorFlow é direto. No entanto, existem alguns casos especiais:
- Um campo proto que contém uma submensagem ou grupo só pode ser convertido em `DT_STRING` (a submensagem serializada). Isso reduz a complexidade da API. A string resultante pode ser usada como entrada para outra instância da operação decode_proto.
- O TensorFlow não oferece suporte para números inteiros não assinados. As operações representam os tipos uint64 como `DT_INT64` com o mesmo padrão de bits de complemento de dois (a maneira óbvia). Valores int32 não assinados podem ser representados exatamente especificando o tipo `DT_INT64` ou usando complemento de dois se o chamador especificar `DT_INT32` no atributo `output_types`.
O atributo `descriptor_source` seleciona a fonte dos descritores de protocolo a serem consultados ao procurar `message_type`. Isto pode ser:
- Uma string vazia ou "local://", caso em que os descritores de protocolo são criados para definições de proto C++ (não Python) vinculadas ao binário.
- Um arquivo, nesse caso os descritores de protocolo são criados a partir do arquivo, que deve conter um `FileDescriptorSet` serializado como uma string. NOTA: Você pode construir um arquivo `descriptor_source` usando as opções `--descriptor_set_out` e `--include_imports` para o compilador de protocolo `protoc`.
- Um "byte://
Classes aninhadas
aula | EncodeProto.Options | Atributos opcionais para EncodeProto |
Constantes
Corda | OP_NAME | O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow |
Métodos Públicos
Saída <TString> | asOutput () Retorna o identificador simbólico do tensor. |
Saída <TString> | bytes () Tensor de protos serializados com formato `batch_shape`. |
EncodeProto estático | create (Escopo do escopo , tamanhos de operando < TInt32 >, valores Iterable < Operando <?>>, List<String> fieldNames, String messageType, Options... options) Método de fábrica para criar uma classe que envolve uma nova operação EncodeProto. |
EncodeProto.Options estático | descriptorSource (String descriptorSource) |
Métodos herdados
Constantes
String final estática pública OP_NAME
O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow
Métodos Públicos
Saída pública < TString > asOutput ()
Retorna o identificador simbólico do tensor.
As entradas para operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.
public static EncodeProto create (escopo do escopo , tamanhos do operando < TInt32 >, valores Iterable < Operando <?>>, List<String> fieldNames, String messageType, Options... options)
Método de fábrica para criar uma classe que envolve uma nova operação EncodeProto.
Parâmetros
escopo | escopo atual |
---|---|
tamanhos | Tensor de int32 com forma `[batch_shape, len(field_names)]`. |
valores | Lista de tensores contendo valores para o campo correspondente. |
nomes de campo | Lista de strings contendo nomes de campos proto. |
tipo de mensagem | Nome do tipo de mensagem proto a ser decodificada. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância do EncodeProto