Tensor

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

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

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

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

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

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

абстрактный байтбуфер
asReadOnlyBuffer ()
Возвращает представление данных тензора ByteBuffer только для чтения.
абстрактный тип данных
тип данных ()
Возвращает DataType элементов, хранящихся в Тензоре.
абстрактный int
числобайт ()
Возвращает размер тензорных данных в байтах.
абстрактный int
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-го измерения тензора.