Tensor

публичный интерфейс Тензор

Типизированный многомерный массив, используемый в Tensorflow Lite.

Собственный дескриптор Tensor управляется NativeInterpreterWrapper и не требует закрытия клиентом. Однако после закрытия NativeInterpreterWrapper дескриптор тензора станет недействительным.

Вложенные классы

сорт Tensor.QuantizationParams Параметры квантования, соответствующие таблице QuantizationParameters в файле схемы модели TFLite.

Публичные методы

абстрактный байтбуфер
asReadOnlyBuffer ()
Возвращает представление данных тензора ByteBuffer только для чтения.
абстрактный тип данных
тип данных ()
Возвращает DataType элементов, хранящихся в Тензоре.
абстрактный интервал
числобайт ()
Возвращает размер тензорных данных в байтах.
абстрактный интервал
numDimensions ()
Возвращает количество измерений (иногда называемое рангом ) тензора.
абстрактный int
числоЭлементы ()
Возвращает количество элементов в плоском (1D) представлении тензора.
абстрактный Tensor.QuantizationParams
квантованиеПарамсы ()
Возвращает параметры квантования тензора в интерпретаторе-владельце.
абстрактный int[]
форма ()
Возвращает форму тензора, т. е. размеры каждого измерения.
абстрактный int[]
формаПодпись ()
Возвращает исходную форму тензора, т. е. размеры каждого измерения — до того, как было выполнено изменение размера.

Публичные методы

общедоступный абстрактный ByteBuffer asReadOnlyBuffer ()

Возвращает представление ByteBuffer только для чтения данных тензора.

В общем, этот метод наиболее полезен для получения представления выходных тензорных данных, доступного только для чтения, *после* выполнения вывода (например, через InterpreterApi.run(Object, Object) ). В частности, некоторые графики имеют выходные данные динамической формы, что может затруднить подачу интерпретатору предопределенного выходного буфера. Пример использования:

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

ВНИМАНИЕ: Если тензор еще не был выделен, например, до выполнения вывода, результат не определен. Обратите внимание, что базовый указатель тензора также может измениться, когда тензор каким-либо образом становится недействительным (например, если выполняется вывод или изменяется размер графа), поэтому *не* безопасно хранить ссылку на возвращенный буфер после немедленного использования. непосредственно после умозаключения. Пример *плохого* использования:

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

Броски
IllegalArgumentException если данные тензора не были выделены.

общедоступный абстрактный тип данных dataType ()

Возвращает DataType элементов, хранящихся в Тензоре.

общедоступный абстрактный int numBytes ()

Возвращает размер тензорных данных в байтах.

общедоступный абстрактный int numDimensions ()

Возвращает количество измерений (иногда называемое рангом ) тензора.

Будет 0 для скаляра, 1 для вектора, 2 для матрицы, 3 для трехмерного тензора и т. д.

публичный абстрактный int numElements ()

Возвращает количество элементов в плоском (1D) представлении тензора.

публичный абстрактный Tensor.QuantizationParams quantizationParams ()

Возвращает параметры квантования тензора в интерпретаторе-владельце.

Только квантованные тензоры имеют действительные QuantizationParameters . Для тензоров, которые не квантованы, значения масштаба и нулевой точки оба равны 0.

общедоступная абстрактная форма int[] ()

Возвращает форму тензора, т. е. размеры каждого измерения.

Возврат
  • массив, где i-й элемент — это размер i-го измерения тензора.

публичный абстрактный int[] shapeSignature ()

Возвращает исходную форму тензора, т. е. размеры каждого измерения — до того, как было выполнено изменение размера. Неизвестные размеры обозначаются значением -1.

Возврат
  • массив, где i-й элемент — это размер i-го измерения тензора.