Статически типизированный многомерный массив, элементы которого имеют тип, описанный T.
Экземпляры Tensor не являются потокобезопасными.
ВНИМАНИЕ: Ресурсы, потребляемые объектом Tensor, должны быть явно освобождены путем вызова метода close() , когда объект больше не нужен. Например, используя блок try-with-resources:
try (Tensor t = Tensor.create(...)) {
doSomethingWith(t);
}
Публичные методы
| логическое значение | логическое значение () Возвращает значение в скалярном Boolean тензоре. |
| байт[] | байтЗначение () Возвращает значение в скалярном тензоре String . |
| пустота | закрывать () Освободите ресурсы, связанные с Тензором. |
| <Н> У | copyTo (U dst) Копирует содержимое тензора в dst и возвращает dst . |
| статический тензор <?> | создать (объект объекта) Создает тензор из объекта, класс которого проверяется, чтобы определить, каким должен быть базовый тип данных. |
| статический <T> Тензор <T> | create (тип Class<T>, фигура long[], данные ByteBuffer) Создайте тензор любого типа с данными из заданного буфера. |
| статический Тензор <Двойной> | |
| статический тензор <длинный> | |
| статический тензор <Целое число> | |
| статический тензор <Float> | |
| статический <T> Тензор <T> | создать (объект Object, тип Class<T>) Создает тензор из объекта Java. |
| Тип данных | тип данных () Возвращает DataType элементов, хранящихся в Тензоре. |
| двойной | двойное значение () Возвращает значение в скалярном тензоре Double . |
| <U> Тензор <U> | ожидать (тип Class<U>) Возвращает этот объект Tensor с типом Tensor<U> . |
| плавать | плавающее значение () Возвращает значение в скалярном тензоре Float . |
| интервал | |
| длинный | длинное значение () Возвращает значение в скалярном Long тензоре. |
| интервал | числобайт () Возвращает размер тензорных данных в байтах. |
| интервал | numDimensions () Возвращает количество измерений (иногда называемое рангом ) тензора. |
| интервал | числоЭлементы () Возвращает количество элементов в плоском (1D) представлении тензора. |
| длинный[] | |
| Нить | toString () Возвращает строку, описывающую тип и форму Тензора. |
| пустота | |
| пустота | |
| пустота | |
| пустота | writeTo (ByteBuffer dst) Запишите данные тензора в данный буфер. |
| пустота |
Унаследованные методы
Публичные методы
общедоступное логическое логическое значение ()
Возвращает значение в скалярном Boolean тензоре.
Броски
| IllegalArgumentException | если Тензор не представляет логический скаляр. |
|---|
общедоступный байт[] bytesValue ()
Возвращает значение в скалярном тензоре String .
Броски
| IllegalArgumentException | если Тензор не представляет логический скаляр. |
|---|
public void закрыть ()
Освободите ресурсы, связанные с Тензором.
ВНИМАНИЕ: это необходимо вызвать для всех тензоров, которые не были созданы в результате активной операции, иначе произойдет утечка памяти.
Объект Tensor больше нельзя использовать после close возврата.
общедоступный U copyTo (U dst)
Копирует содержимое тензора в dst и возвращает dst .
Для нескалярных тензоров этот метод копирует содержимое базового тензора в массив Java. Для скалярных тензоров вместо этого используйте один из bytesValue() , floatValue() , doubleValue() , intValue() , longValue() или booleanValue() . Тип и форма dst должны быть совместимы с тензором. Например:
int matrix[2][2] = { {1,2},{3,4} };
try(Tensor t = Tensor.create(matrix)) {
// Succeeds and prints "3"
int[][] copy = new int[2][2];
System.out.println(t.copyTo(copy)[1][0]);
// Throws IllegalArgumentException since the shape of dst does not match the shape of t.
int[][] dst = new int[4][1];
t.copyTo(dst);
}
Параметры
| летнее время |
|---|
Броски
| IllegalArgumentException | если тензор является скаляром или dst несовместим с тензором (например, несовпадающие типы данных или формы). |
|---|
public static Tensor <?> create (Object obj)
Создает тензор из объекта, класс которого проверяется, чтобы определить, каким должен быть базовый тип данных.
Параметры
| объект |
|---|
Броски
| IllegalArgumentException | если obj несовместим с системой типов TensorFlow. |
|---|
public static Tensor <T> create (тип Class<T>, форма long[], данные ByteBuffer)
Создайте тензор любого типа с данными из заданного буфера.
Создает тензор с предоставленной формой любого типа, где данные тензора были закодированы в data в соответствии со спецификацией API TensorFlow C.
Параметры
| тип | тип тензорного элемента, представленный как объект класса. |
|---|---|
| форма | тензорная форма. |
| данные | буфер, содержащий данные тензора. |
Броски
| IllegalArgumentException | Если тип данных или форма тензора несовместимы с буфером |
|---|
public static Tensor <Double> create (длинная [] фигура, данные DoubleBuffer)
Создайте Double тензор с данными из данного буфера.
Создает тензор заданной формы путем копирования элементов из буфера (начиная с его текущей позиции) в тензор. Например, если shape = {2,3} (которая представляет матрицу 2x3), то в буфере должно остаться 6 элементов, которые будут использованы этим методом.
Параметры
| форма | тензорная форма. |
|---|---|
| данные | буфер, содержащий данные тензора. |
Броски
| IllegalArgumentException | Если форма тензора несовместима с буфером |
|---|
public static Tensor <Long> create (форма long[], данные LongBuffer)
Создайте Long тензор с данными из данного буфера.
Создает тензор заданной формы путем копирования элементов из буфера (начиная с его текущей позиции) в тензор. Например, если shape = {2,3} (которая представляет матрицу 2x3), то в буфере должно остаться 6 элементов, которые будут использованы этим методом.
Параметры
| форма | тензорная форма. |
|---|---|
| данные | буфер, содержащий данные тензора. |
Броски
| IllegalArgumentException | Если форма тензора несовместима с буфером |
|---|
public static Tensor <Integer> create (форма long[], данные IntBuffer)
Создайте Integer тензор с данными из данного буфера.
Создает тензор заданной формы путем копирования элементов из буфера (начиная с его текущей позиции) в тензор. Например, если shape = {2,3} (которая представляет матрицу 2x3), то в буфере должно остаться 6 элементов, которые будут использованы этим методом.
Параметры
| форма | тензорная форма. |
|---|---|
| данные | буфер, содержащий данные тензора. |
Броски
| IllegalArgumentException | Если форма тензора несовместима с буфером |
|---|
общедоступный статический Tensor <Float> create (форма long[], данные FloatBuffer)
Создайте тензор Float с данными из данного буфера.
Создает тензор заданной формы путем копирования элементов из буфера (начиная с его текущей позиции) в тензор. Например, если shape = {2,3} (которая представляет матрицу 2x3), то в буфере должно остаться 6 элементов, которые будут использованы этим методом.
Параметры
| форма | тензорная форма. |
|---|---|
| данные | буфер, содержащий данные тензора. |
Броски
| IllegalArgumentException | Если форма тензора несовместима с буфером |
|---|
public static Tensor <T> create (Object obj, тип Class<T>)
Создает тензор из объекта Java.
Tensor — это многомерный массив элементов ограниченного набора типов. Не все объекты Java можно преобразовать в Tensor . В частности, аргумент obj должен быть либо примитивом (float, double, int, long, boolean, byte), либо многомерным массивом одного из этих примитивов. type аргумента указывает, как интерпретировать первый аргумент как тип TensorFlow. Например:
// Valid: A 64-bit integer scalar.
Tensor<Long> s = Tensor.create(42L, Long.class);
// Valid: A 3x2 matrix of floats.
float[][] matrix = new float[3][2];
Tensor<Float> m = Tensor.create(matrix, Float.class);
// Invalid: Will throw an IllegalArgumentException as an arbitrary Object
// does not fit into the TensorFlow type system.
Tensor<?> o = Tensor.create(new Object())
// Invalid: Will throw an IllegalArgumentException since there are
// a differing number of elements in each row of this 2-D array.
int[][] twoD = new int[2][];
twoD[0] = new int[1];
twoD[1] = new int[2];
Tensor<Integer> x = Tensor.create(twoD, Integer.class);
String типа представляют собой многомерные массивы произвольных последовательностей байтов, поэтому их можно инициализировать из массивов элементов byte[] . Например:// Valid: A String tensor.
Tensor<String> s = Tensor.create(new byte[]{1, 2, 3}, String.class);
// Java Strings will need to be encoded into a byte-sequence.
String mystring = "foo";
Tensor<String> s = Tensor.create(mystring.getBytes("UTF-8"), String.class);
// Valid: Matrix of String tensors.
// Each element might have a different length.
byte[][][] matrix = new byte[2][2][];
matrix[0][0] = "this".getBytes("UTF-8");
matrix[0][1] = "is".getBytes("UTF-8");
matrix[1][0] = "a".getBytes("UTF-8");
matrix[1][1] = "matrix".getBytes("UTF-8");
Tensor<String> m = Tensor.create(matrix, String.class);
Параметры
| объект | Объект для преобразования в Tensor<T> . Обратите внимание, что совместимость с типом T не проверяется системой типов. Для безопасного создания тензоров используйте Tensors . |
|---|---|
| тип | Объект класса, представляющий тип T. |
Броски
| IllegalArgumentException | если obj несовместим с системой типов TensorFlow. |
|---|
общественный двойной doubleValue ()
Возвращает значение в скалярном тензоре Double .
Броски
| IllegalArgumentException | если Тензор не представляет двойной скаляр. |
|---|
общедоступный Tensor <U> ожидать (тип Class<U>)
Возвращает этот объект Tensor с типом Tensor<U> . Этот метод полезен, если задано значение типа Tensor<?> .
Параметры
| тип | любой (ненулевой) массив правильного типа. |
|---|
Броски
| IllegalArgumentException | если фактический тип данных этого объекта не соответствует типу U |
|---|
общедоступное число с плавающей запятой floatValue ()
Возвращает значение в скалярном тензоре Float .
Броски
| IllegalArgumentException | если Тензор не представляет скаляр с плавающей запятой. |
|---|
public int intValue ()
Возвращает значение в скалярном Integer тензоре.
Броски
| IllegalArgumentException | если Тензор не представляет скаляр типа int. |
|---|
публичный длинный longValue ()
Возвращает значение в скалярном Long тензоре.
Броски
| IllegalArgumentException | если Тензор не представляет длинный скаляр. |
|---|
public int numBytes ()
Возвращает размер тензорных данных в байтах.
public int numDimensions ()
Возвращает количество измерений (иногда называемое рангом ) тензора.
Будет 0 для скаляра, 1 для вектора, 2 для матрицы, 3 для трехмерного тензора и т. д.
public int numElements ()
Возвращает количество элементов в плоском (1D) представлении тензора.
общедоступная длинная[] форма ()
Возвращает форму тензора, т. е. размеры каждого измерения.
Возврат
- массив, где i-й элемент — это размер i-го измерения тензора.
публичная строка toString ()
Возвращает строку, описывающую тип и форму Тензора.
public void writeTo (LongBuffer dst)
public void writeTo (DoubleBuffer dst)
public void writeTo (IntBuffer dst)
public void writeTo (ByteBuffer dst)
Запишите данные тензора в данный буфер.
Копирует numBytes() в буфер в собственном порядке байтов для примитивных типов.
Параметры
| летнее время | буфер назначения |
|---|
Броски
| исключение BufferOverflowException | Если в данном буфере недостаточно места для данных в этом тензоре |
|---|