Znane podklasy pośrednie |
Wielowymiarowa tablica o typie statycznym.
Istnieją dwie kategorie tensorów w TensorFlow Java: typed tensors
i raw tensors
. Pierwsza mapuje rodzimą pamięć tensora do n-wymiarowej przestrzeni danych, umożliwiając bezpośrednie operacje we / wy z JVM, podczas gdy druga jest jedynie odniesieniem do natywnego tensora, umożliwiającego podstawowe operacje i płaski dostęp do danych.
OSTRZEŻENIE: Zasoby zużywane przez obiekt Tensor muszą zostać jawnie zwolnione przez wywołanie metody close()
, gdy obiekt nie jest już potrzebny. Na przykład używając bloku Try-with-Resources:
try (Tensor t = Tensor.of(...)) {
doSomethingWith(t);
}
Wystąpienia tensora nie są bezpieczne dla wątków.
Metody publiczne
streszczenie RawTensor | asRawTensor () Zwraca surową (bez typu) reprezentację tego tensora |
abstrakcyjna pustka | zamknij () Zwolnij zasoby powiązane z Tensorem. |
streszczenie DataType | |
abstrakcyjne długie | numBytes () Zwraca rozmiar w bajtach danych tensora. |
abstrakcyjny statyczny <T rozszerza TType > T | |
abstrakcyjny statyczny <T rozszerza TType > T | |
abstrakcyjny statyczny <T rozszerza TType > T | |
abstrakcyjny statyczny <T rozszerza TType > T | |
abstrakcyjny statyczny <T rozszerza TType > T | of (typ Class <T>, kształt kształtu, ByteDataBuffer rawData) Tworzy Tensor dowolnego typu z surowych danych dostarczonych przez dany bufor. |
abstrakcyjny kształt | kształt () Zwraca kształt tensora. |
Dziedziczone metody
Metody publiczne
public abstract void close ()
Zwolnij zasoby powiązane z Tensorem.
OSTRZEŻENIE: To musi być wywołane dla wszystkich tensorów, które nie zostały wyprodukowane przez gorliwą operację, w przeciwnym razie pamięć zostanie przecieka.
Obiekt Tensor nie nadaje się już do użytku po close
powrotu.
public abstract long numBytes ()
Zwraca rozmiar w bajtach danych tensora.
public static abstract T of (Class <T> type, Shape shape, long size, Consumer <T> dataInitializer)
Przydziela tensor o podanym typie danych, kształcie i rozmiarze.
Ta metoda jest taka sama jak of(Class, Shape, Consumer)
, z tą różnicą, że ostateczny rozmiar tensora można jawnie ustawić zamiast obliczania go na podstawie typu danych i kształtu.
Może to być przydatne w przypadku typów tensorów, które przechowują dane, ale także metadane w pamięci tensora, takie jak tabela przeglądowa w tensorze ciągów.
Parametry
rodzaj | klasa typu tensora |
---|---|
kształt | kształt tensora |
rozmiar | size w bajtach tensora lub -1, aby obliczyć rozmiar na podstawie kształtu |
dataInitializer | metoda odbierająca metodę dostępu do przydzielonych danych tensora w celu zainicjowania |
Zwroty
- przydzielony i zainicjowany tensor
Rzuty
IllegalArgumentException | jeśli size jest mniejszy niż minimalna przestrzeń wymagana do przechowywania danych tensora |
---|---|
IllegalArgumentException | jeśli size jest ustawiony na -1, ale elementy danego type mają zmienną długość (np. stringi) |
IllegalArgumentException | jeśli shape jest całkowicie lub częściowo unknown |
IllegalStateException | jeśli tensor nie został przydzielony |
Zobacz też
public static abstract T of (Class <T> type, Shape shape)
Przydziela tensor o podanym typie danych i kształcie.
Ilość pamięci do przydzielenia pochodzi z typu danych i kształtu tensora i pozostaje niezainicjowana.
Parametry
rodzaj | klasa typu tensora |
---|---|
kształt | kształt tensora |
Zwroty
- przydzielony, ale niezainicjowany tensor
Rzuty
IllegalArgumentException | czy elementy danego type mają zmienną długość (np. stringi) |
---|---|
IllegalArgumentException | jeśli shape jest całkowicie lub częściowo unknown |
IllegalStateException | jeśli tensor nie został przydzielony |
public static abstract T of (Class <T> type, Shape shape, long size)
Przydziela tensor o podanym typie danych, kształcie i rozmiarze.
Ta metoda jest identyczna of(Class, Shape)
, z tym wyjątkiem, że ostateczny rozmiar tensora można jawnie ustawić zamiast obliczać go na podstawie typu danych i kształtu, który może być większy niż rzeczywista przestrzeń wymagana do przechowywania danych, ale nie mniejsza .
Parametry
rodzaj | klasa typu tensora |
---|---|
kształt | kształt tensora |
rozmiar | size w bajtach tensora lub -1, aby obliczyć rozmiar na podstawie kształtu |
Zwroty
- przydzielony, ale niezainicjowany tensor
Rzuty
IllegalArgumentException | jeśli size jest mniejszy niż minimalna przestrzeń wymagana do przechowywania danych tensora |
---|---|
IllegalArgumentException | jeśli size jest ustawiony na -1, ale elementy danego type mają zmienną długość (np. stringi) |
IllegalArgumentException | jeśli shape jest całkowicie lub częściowo unknown |
IllegalStateException | jeśli tensor nie został przydzielony |
Zobacz też
public static abstract T of (Class <T> type, Shape shape, Consumer <T> dataInitializer)
Przydziela i inicjalizuje tensor o podanym typie danych i kształcie.
Ilość pamięci do przydzielenia jest określana na podstawie typu danych i kształtu tensora. Dane tensora są inicjowane przez wywołanie dataInitializer
, który jako argument odbiera wartość zwróconą przez ERROR(/#data())
na przydzielonym tensorze. Na przykład:
FloatNdArray data = ...
try (TFloat32 t = Tensor.of(TFloat32.class, Shape.of(2, 2), data::copyTo)) {
...
}
Jeśli dataInitializer
nie powiedzie się i zgłosi wyjątek, przydzielony tensor zostanie automatycznie zwolniony przed ponownym zgłoszeniem tego samego wyjątku.
Parametry
rodzaj | klasa typu tensora |
---|---|
kształt | kształt tensora |
dataInitializer | metoda odbierająca metodę dostępu do przydzielonych danych tensora w celu zainicjowania |
Zwroty
- przydzielony i zainicjowany tensor
Rzuty
IllegalArgumentException | czy elementy danego type mają zmienną długość (np. stringi) |
---|---|
IllegalArgumentException | jeśli shape jest całkowicie lub częściowo unknown |
IllegalStateException | jeśli tensor nie został przydzielony |
public static abstract T of (Class <T> type, Shape shape, ByteDataBuffer rawData)
Tworzy Tensor dowolnego typu z surowych danych dostarczonych przez dany bufor.
Dane muszą zostać zakodowane w data
zgodnie ze specyfikacją API TensorFlow C.
Parametry
rodzaj | klasa typu tensora |
---|---|
kształt | kształt tensora. |
rawData | bufor zawierający surowe dane tensora. |
Rzuty
IllegalArgumentException | jeśli rawData nie jest wystarczająco duża, aby pomieścić dane tensora |
---|---|
IllegalArgumentException | jeśli shape jest całkowicie lub częściowo unknown |
IllegalStateException | jeśli tensorowi nie udało się przypisać podanych parametrów |