Tensor

Tensor de interface pública

Uma matriz multidimensional digitada usada no Tensorflow Lite.

O identificador nativo de um Tensor é gerenciado por NativeInterpreterWrapper e não precisa ser fechado pelo cliente. No entanto, uma vez fechado o NativeInterpreterWrapper , o identificador do tensor será invalidado.

Classes aninhadas

aula Tensor.QuantizaçãoParams Parâmetros de quantização que correspondem à tabela QuantizationParameters , no arquivo de esquema do modelo TFLite.

Métodos Públicos

ByteBuffer abstrato
asReadOnlyBuffer ()
Retorna uma visualização ByteBuffer somente leitura dos dados do tensor.
tipo de dados abstrato
tipo de dados ()
Retorna o DataType dos elementos armazenados no Tensor.
abstrato int
numBytes ()
Retorna o tamanho, em bytes, dos dados do tensor.
abstrato int
numDimensões ()
Retorna o número de dimensões (às vezes chamadas de rank ) do Tensor.
abstrato int
numElementos ()
Retorna o número de elementos em uma visualização achatada (1-D) do tensor.
tensor abstrato.QuantizationParams
quantizaçãoParams ()
Retorna os parâmetros de quantização do tensor dentro do intérprete proprietário.
resumo int[]
forma ()
Retorna a forma do Tensor, ou seja, os tamanhos de cada dimensão.
resumo int[]
formaAssinatura ()
Retorna a forma original do Tensor, ou seja, os tamanhos de cada dimensão - antes de qualquer redimensionamento ser realizado.

Métodos Públicos

público abstrato ByteBuffer asReadOnlyBuffer ()

Retorna uma visualização ByteBuffer somente leitura dos dados do tensor.

Em geral, este método é mais útil para obter uma visualização somente leitura dos dados do tensor de saída, *após* a inferência ter sido executada (por exemplo, via InterpreterApi.run(Object, Object) ). Em particular, alguns gráficos têm saídas com formato dinâmico, o que pode tornar complicado alimentar o interpretador com um buffer de saída predefinido. Exemplo de uso:

 interpreter.run(input, null);
 ByteBuffer outputBuffer = interpreter.getOutputTensor(0).asReadOnlyBuffer();
 // Copy or read from outputBuffer.

AVISO: Se o tensor ainda não foi alocado, por exemplo, antes da execução da inferência, o resultado é indefinido. Observe que o ponteiro do tensor subjacente também pode mudar quando o tensor é invalidado de alguma forma (por exemplo, se a inferência for executada ou o gráfico for redimensionado), portanto *não* é seguro manter uma referência ao buffer retornado além do uso imediato diretamente após a inferência. Exemplo de uso *ruim*:

 ByteBuffer outputBuffer = interpreter.getOutputTensor(0).asReadOnlyBuffer();
 interpreter.run(input, null);
 // Copy or read from outputBuffer (which may now be invalid).

Lança
Exceção de argumento ilegal se os dados do tensor não foram alocados.

tipo de dados abstrato público tipo de dados ()

Retorna o DataType dos elementos armazenados no Tensor.

resumo público int numBytes ()

Retorna o tamanho, em bytes, dos dados do tensor.

resumo público int numDimensions ()

Retorna o número de dimensões (às vezes chamadas de rank ) do Tensor.

Será 0 para um escalar, 1 para um vetor, 2 para uma matriz, 3 para um tensor tridimensional etc.

resumo público int numElements ()

Retorna o número de elementos em uma visualização achatada (1-D) do tensor.

público abstrato Tensor.QuantizationParams quantizationParams ()

Retorna os parâmetros de quantização do tensor dentro do intérprete proprietário.

Somente tensores quantizados possuem QuantizationParameters válidos. Para tensores que não são quantizados, os valores de escala e ponto_zero são ambos 0.

público abstrato int[] forma ()

Retorna a forma do Tensor, ou seja, os tamanhos de cada dimensão.

Devoluções
  • uma matriz onde o i-ésimo elemento é o tamanho da i-ésima dimensão do tensor.

público abstrato int[] shapeSignature ()

Retorna a forma original do Tensor, ou seja, os tamanhos de cada dimensão - antes de qualquer redimensionamento ser realizado. Dimensões desconhecidas são designadas com um valor de -1.

Devoluções
  • uma matriz onde o i-ésimo elemento é o tamanho da i-ésima dimensão do tensor.