Subclasses indiretas conhecidas |
Uma matriz multidimensional digitada estaticamente.
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 digitado n-dimensional, permitindo operações diretas de E/S da JVM, enquanto o último é apenas uma referência a um tensor nativo que permite operações básicas e acesso simples a dados.
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 seguras para threads.
Métodos Públicos
Resumo Raw Tensor | asRawTensor () Retorna uma representação bruta (sem tipo) deste tensor |
vazio abstrato | fechar () Libere recursos associados ao Tensor. |
tipo de dados abstrato | tipo de dados () Retorna o DataType dos elementos armazenados no tensor. |
abstrato longo | numBytes () Retorna o tamanho, em bytes, dos dados do tensor. |
abstrato estático <T estende TType > T | |
abstrato estático <T estende TType > T | |
abstrato estático <T estende TType > T | |
abstrato estático <T estende TType > T | |
abstrato estático <T estende TType > T | de (tipo Class<T>, formato Shape , 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
público abstrato vazio fechar ()
Libere recursos associados ao Tensor.
AVISO: Isto deve ser invocado para todos os tensores que não foram produzidos por uma operação antecipada ou a memória vazará.
O objeto Tensor não pode mais ser usado após retornos close
.
tipo de dados abstrato público tipo de dados ()
Retorna o DataType
dos elementos armazenados no tensor.
público abstrato longo numBytes ()
Retorna o tamanho, em bytes, dos dados do tensor.
público estático abstrato T de (tipo Classe<T>, formato de forma , tamanho longo, 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 consulta em um tensor de strings.
Parâmetros
tipo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
tamanho | tamanho em bytes do tensor ou -1 para calcular o tamanho da forma |
inicializador de dados | método que recebe acessador para os dados do tensor alocado para inicialização |
Devoluções
- um tensor alocado e inicializado
Lança
IllegalArgumentException | se size for menor que o espaço mínimo necessário para armazenar os dados do tensor |
---|---|
IllegalArgumentException | se size estiver definido como -1, mas os elementos do type fornecido tiverem comprimento variável (por exemplo, strings) |
IllegalArgumentException | se shape é total ou parcialmente unknown |
IllegalStateException | se o tensor não foi alocado |
Veja também
público estático abstrato T de (tipo Class<T>, formato 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
tipo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
Devoluções
- um tensor alocado, mas não inicializado
Lança
IllegalArgumentException | se os elementos de um determinado type forem de comprimento variável (por exemplo, strings) |
---|---|
IllegalArgumentException | se shape é total ou parcialmente unknown |
IllegalStateException | se o tensor não foi alocado |
público estático abstrato T de (tipo Class<T>, formato de forma , tamanho longo)
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 calculá-lo a partir do tipo de dados e da forma, que pode ser maior que o espaço real necessário para armazenar os dados, mas não menor .
Parâmetros
tipo | 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
IllegalArgumentException | se size for menor que o espaço mínimo necessário para armazenar os dados do tensor |
---|---|
IllegalArgumentException | se size estiver definido como -1, mas os elementos do type fornecido tiverem comprimento variável (por exemplo, strings) |
IllegalArgumentException | se shape é total ou parcialmente unknown |
IllegalStateException | se o tensor não foi alocado |
Veja também
public static abstract T de (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 como 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á liberado automaticamente antes de lançar novamente a mesma exceção.
Parâmetros
tipo | a classe do tipo tensor |
---|---|
forma | forma do tensor |
inicializador de dados | método que recebe acessador para os dados do tensor alocado para inicialização |
Devoluções
- um tensor alocado e inicializado
Lança
IllegalArgumentException | se os elementos de um determinado type forem de comprimento variável (por exemplo, strings) |
---|---|
IllegalArgumentException | se shape é total ou parcialmente unknown |
IllegalStateException | se o tensor não foi alocado |
público estático abstrato T de (tipo Class<T>, formato 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
de acordo com a especificação da API TensorFlow C.
Parâmetros
tipo | a classe do tipo tensor |
---|---|
forma | a forma do tensor. |
dados brutos | um buffer contendo os dados brutos do tensor. |
Lança
IllegalArgumentException | se rawData não for grande o suficiente para conter os dados do tensor |
---|---|
IllegalArgumentException | se shape é total ou parcialmente unknown |
IllegalStateException | se o tensor não foi alocado com os parâmetros fornecidos |