Tensor

interfejs publiczny Tensor

Wielowymiarowa tablica o określonym typie używana w Tensorflow Lite.

Natywny nick elementu Tensor jest zarządzany przez NativeInterpreterWrapper i nie musi być zamknięty przez klienta. Jednak po zamknięciu obiektu NativeInterpreterWrapper uchwyt tensora zostanie unieważniony.

Zagnieżdżone klasy

klasa Tensor.QuantizationParams Parametry kwantyzacji odpowiadające tabeli QuantizationParameters w pliku schematu modelu TTite .

Metody publiczne

abstrakcja ByteBuffer
asReadOnlyBuffer()
Zwraca widok ByteBuffer danych tensora tylko do odczytu.
abstrakcyjny DataType
dataType()
Zwraca DataType elementów przechowywanych w Tensorzie.
abstrakcja int
numBytes()
Zwraca rozmiar danych tensora (w bajtach).
abstrakcja int
numDimensions()
Zwraca liczbę wymiarów (nazywanych czasem rankingiem) Tensor.
abstrakcja int
numElements().
Zwraca liczbę elementów w spłaszczonym widoku (1-D) tensora.
abstrat Tensor.QuantizationParams
quantizationParams()
Zwraca parametry kwantyzacji tensora w interpretatorze właściciela.
abstrakcja int[]
kształt()
Zwraca kształt Tensor, tj. rozmiary poszczególnych wymiarów.
abstrakcja int[]
shapeSignature()
Zwraca oryginalny kształt Tensor, tj. rozmiary poszczególnych wymiarów, przed zmianą rozmiaru.

Metody publiczne

public abstract ByteBuffer asReadOnlyBuffer ()

Zwraca widok ByteBuffer danych tensora tylko do odczytu.

Ogólnie ta metoda jest najbardziej przydatna do uzyskiwania widoku danych tensora wyjściowego w trybie tylko do odczytu, *po* wnioskowaniu (np. za pomocą funkcji InterpreterApi.run(Object, Object)). W szczególności niektóre wykresy mają dynamicznie kształtowane dane wyjściowe, co może sprawić, że przesyłanie wstępnie zdefiniowanego bufora danych wyjściowych, aby wyświetlić wyniki interpretera, może wydawać się niezręczne. Przykład użycia:

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

OSTRZEŻENIE: jeśli tensor nie został jeszcze przydzielony, np. przed wykonaniem wnioskowania, wynik będzie niezdefiniowany. Zwróć uwagę, że bazowy wskaźnik tensora może się też zmienić, gdy tensor zostanie w jakikolwiek sposób unieważniony (np. jeśli wnioskowanie zostanie wykonane lub wykres zostanie zmieniony), więc przechowywanie odwołania do zwróconego bufora w sposób, który nie zostanie natychmiast zastosowane bezpośrednio po wywnioskowaniu, jest *nie* bezpieczne. Przykład *nieprawidłowe* użycie:

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

Rzuty
IllegalArgumentException jeśli dane tensora nie zostały przydzielone.

public abstract DataType dataType ()

Zwraca DataType elementów przechowywanych w Tensorzie.

public abstract int numBytes ()

Zwraca rozmiar danych tensora (w bajtach).

public abstract int numDimensions ()

Zwraca liczbę wymiarów (nazywanych czasem rankingiem) Tensor.

Będzie to 0 dla skalaru, 1 dla wektora, 2 dla macierzy, 3 dla tensora trójwymiarowego itd.

public abstract int numElements ()

Zwraca liczbę elementów w spłaszczonym widoku (1-D) tensora.

public abstract Tensor.QuantizationParams quantizationParams ()

Zwraca parametry kwantyzacji tensora w interpretatorze właściciela.

Tylko tensory skwantyzowane mają prawidłową właściwość QuantizationParameters. W przypadku tensorów, które nie są poddane kwantyzacji, wartości skali i punktu zerowego mają wartość 0.

public abstract int[] kształt ()

Zwraca kształt Tensor, tj. rozmiary poszczególnych wymiarów.

Zwroty
  • tablica, w której i-ten element jest rozmiarem i-tego wymiaru tensora.

public abstract int[] shapeSignature ()

Zwraca oryginalny kształt Tensor, tj. rozmiary poszczególnych wymiarów, przed zmianą rozmiaru. Nieznane wymiary są oznaczone wartością -1.

Zwroty
  • tablica, w której i-ten element jest rozmiarem i-tego wymiaru tensora.