TType

interfejs publiczny TType
Znane podklasy pośrednie

Wspólny interfejs dla wszystkich tensorów typu.

Wpisane tensory otaczają RawTensor , mapując ich natywną pamięć na n-wymiarową przestrzeń danych, umożliwiając bezpośredni dostęp we/wy z maszyny JVM.

Podinterfejsy TType są propagowane jako parametr ogólny do różnych jednostek TensorFlow w celu zidentyfikowania typu tensora, który niosą. Na przykład Operand<TFloat32> jest operandem, który generuje 32-bitowy tensor zmiennoprzecinkowy. Ten parametr zapewnia zgodność typów między argumentami obliczenia w czasie kompilacji. Na przykład:

Ops tf = Ops.create();

 Constant<TFloat32> c1 = tf.array(2.0f, 3.0f, 2.0f);
 Constant<TFloat32> c2 = tf.array(1.0f, 2.0f, 3.0f);
 Constant<TInt32> c3 = tf.array(2, 3, 2);

 tf.math.add(c1, c2);  // OK
 tf.math.add(c1, c3);  // Compilation failure
 

Nawet jeśli wszystkie tensory z typem implementują w jakiś sposób NdArray aby zapewnić dostęp do swoich danych, TType celowo nie rozszerza się bezpośrednio z tego interfejsu z następujących powodów:

  • Implementacja NdArray na tym poziomie może ujawnić jedynie akcesory typu pudełkowego, które są mniej wydajne niż ich prymitywne odpowiedniki, ujawnione jedynie przez podinterfejsy NdArray (np. FloatNdArray ).
  • TType musiałby przenosić nowy parametr ogólny do wpisywania NdArray , co zwiększy szczegółowość podpisu dowolnej metody akceptującej lub zwracającej instancję tego interfejsu, co jest bardzo powszechne.
Dlatego też wymuszenie na użytkowniku rzutowania odniesienia do TType na konkretny typ tensora przed uzyskaniem dostępu do jego danych gwarantuje lepszą wydajność i poprawia czytelność.

Metody publiczne

abstrakcyjna pustka
zamknąć ()
Zwolnij zasoby powiązane z Tensorem.
abstrakcyjny typ danych
typ danych ()
Zwraca DataType elementów przechowywanych w tensorze.
abstrakcyjne, długie
liczba bajtów ()
Zwraca rozmiar danych tensora w bajtach.
Klasa abstrakcyjna<? rozszerza TType >
typ ()
Zwraca typ tego tensora jako zarejestrowaną podklasę TType

Metody dziedziczone

Metody publiczne

publiczne streszczenie nieważne zamknij ()

Zwolnij zasoby powiązane z Tensorem.

OSTRZEŻENIE: Należy to wywołać w przypadku wszystkich tensorów, które nie zostały wygenerowane w wyniku operacji chętnie, w przeciwnym razie nastąpi wyciek pamięci.

Obiekt Tensor nie jest już użyteczny po close .

publiczny abstrakcyjny typ danych typ danych ()

Zwraca DataType elementów przechowywanych w tensorze.

publiczne streszczenie długie numBytes ()

Zwraca rozmiar danych tensora w bajtach.

publiczna klasa abstrakcyjna<? rozszerza TType > wpisz ()

Zwraca typ tego tensora jako zarejestrowaną podklasę TType