Subclasses indiretas conhecidas |
Uma matriz multidimensional com tipagem estática.
Existem duas categorias de tensores no TensorFlow Java: typed tensors
e raw tensors
. O primeiro mapeia a memória nativa do tensor para um espaço de dados com tipo n-dimensional, permitindo operações de E / S diretas da JVM, enquanto o último é apenas uma referência a um tensor nativo permitindo operações básicas e acesso a dados simples.
AVISO: os recursos consumidos pelo objeto Tensor devem ser liberados explicitamente invocando o método close()
quando o objeto não for mais necessário. Por exemplo, usando um bloco try-with-resources:
try (Tensor t = Tensor.of(...)) {
doSomethingWith(t);
}
As instâncias de um tensor não são thread-safe.
Métodos Públicos
RawTensor abstrato | asRawTensor () Retorna uma representação bruta (não digitada) deste tensor |
vazio abstrato | fechar () Libere recursos associados ao Tensor. |
DataType abstrato | |
abstrato longo | numBytes () Retorna o tamanho, em bytes, dos dados do tensor. |
estático abstrato <T extends TType > T | |
estático abstrato <T extends TType > T | |
estático abstrato <T extends TType > T | |
estático abstrato <T extends TType > T | |
estático abstrato <T extends TType > T | de (tipo de classe <T>, forma da forma, ByteDataBuffer rawData) Cria um tensor de qualquer tipo a partir dos dados brutos fornecidos pelo buffer fornecido. |
forma abstrata | forma () Retorna a forma do tensor. |
Métodos herdados
Métodos Públicos
public abstract RawTensor asRawTensor ()
Retorna uma representação bruta (não digitada) deste tensor
public abstract void close ()
Libere recursos associados ao Tensor.
AVISO: Isso deve ser invocado para todos os tensores que não foram produzidos por uma operação rápida ou haverá vazamento de memória.
O objeto Tensor não pode mais ser usado após retornos de close
.
public abstract long numBytes ()
Retorna o tamanho, em bytes, dos dados do tensor.
public static abstract T of (Class <T> type, Shape shape, long size, Consumer <T> dataInitializer)
Aloca um tensor de um determinado tipo de dados, forma e tamanho.
Este método é idêntico a of(Class, Shape, Consumer)
, exceto que o tamanho final do tensor pode ser definido explicitamente em vez de ser calculado a partir do tipo de dados e da forma.
Isso pode ser útil para tipos de tensores que armazenam dados, mas também metadados na memória do tensor, como a tabela de pesquisa em um tensor de strings.
Parâmetros
modelo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
Tamanho | tamanho em bytes do tensor ou -1 para calcular o tamanho da forma |
dataInitializer | método de recebimento de acessador para os dados de tensor alocados para inicialização |
Devoluções
- um tensor alocado e inicializado
Lança
Exceção de argumento ilegal | se o size for menor do que o espaço mínimo necessário para armazenar os dados do tensor |
---|---|
Exceção de argumento ilegal | se o size é definido como -1, mas os elementos do type dado são de comprimento variável (por exemplo, strings) |
Exceção de argumento ilegal | se a shape é total ou parcialmente unknown |
IllegalStateException | se tensor falhou ao ser alocado |
Veja também
public static abstract T of (Class <T> type, Shape shape)
Aloca um tensor de um determinado tipo de dados e forma.
A quantidade de memória a ser alocada é derivada do tipo de dados e da forma do tensor e não é inicializada.
Parâmetros
modelo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
Devoluções
- um tensor alocado, mas não inicializado
Lança
Exceção de argumento ilegal | se os elementos de um determinado type são de comprimento variável (por exemplo, strings) |
---|---|
Exceção de argumento ilegal | se a shape é total ou parcialmente unknown |
IllegalStateException | se o tensor falhou ao ser alocado |
public static abstract T of (Class <T> type, Shape shape, long size)
Aloca um tensor de um determinado tipo de dados, forma e tamanho.
Este método é idêntico a of(Class, Shape)
, exceto que o tamanho final do tensor pode ser definido explicitamente em vez de computá-lo a partir do tipo de dados e forma, que pode ser maior do que o espaço real necessário para armazenar os dados, mas não menor .
Parâmetros
modelo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
Tamanho | tamanho em bytes do tensor ou -1 para calcular o tamanho da forma |
Devoluções
- um tensor alocado, mas não inicializado
Lança
Exceção de argumento ilegal | se o size for menor do que o espaço mínimo necessário para armazenar os dados do tensor |
---|---|
Exceção de argumento ilegal | se o size é definido como -1, mas os elementos do type dado são de comprimento variável (por exemplo, strings) |
Exceção de argumento ilegal | se a shape é total ou parcialmente unknown |
IllegalStateException | se o tensor falhou ao ser alocado |
Veja também
public static abstract T of (Class <T> type, Shape shape, Consumer <T> dataInitializer)
Aloca e inicializa um tensor de um determinado tipo de dados e forma.
A quantidade de memória a ser alocada é derivada do tipo de dados e da forma do tensor. Os dados do tensor são inicializados chamando o dataInitializer
, que recebe no argumento o valor retornado por ERROR(/#data())
no tensor alocado. Por exemplo:
FloatNdArray data = ...
try (TFloat32 t = Tensor.of(TFloat32.class, Shape.of(2, 2), data::copyTo)) {
...
}
Se dataInitializer
falhar e lançar uma exceção, o tensor alocado será automaticamente liberado antes de relançar a mesma exceção.
Parâmetros
modelo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
dataInitializer | método de recebimento de acessador para os dados de tensor alocados para inicialização |
Devoluções
- um tensor alocado e inicializado
Lança
Exceção de argumento ilegal | se os elementos de um determinado type são de comprimento variável (por exemplo, strings) |
---|---|
Exceção de argumento ilegal | se a shape é total ou parcialmente unknown |
IllegalStateException | se o tensor falhou ao ser alocado |
public static abstract T of (Class <T> type, Shape shape, ByteDataBuffer rawData)
Cria um tensor de qualquer tipo a partir dos dados brutos fornecidos pelo buffer fornecido.
Os dados devem ter sido codificados em data
acordo com a especificação da API TensorFlow C.
Parâmetros
modelo | a classe do tipo tensor |
---|---|
forma | a forma do tensor. |
dados não tratados | um buffer contendo os dados brutos do tensor. |
Lança
Exceção de argumento ilegal | se rawData não for grande o suficiente para conter os dados do tensor |
---|---|
Exceção de argumento ilegal | se a shape é total ou parcialmente unknown |
IllegalStateException | se o tensor falhou ao ser alocado com os parâmetros dados |