DynamicStitch

публичный финальный класс DynamicStitch

Чередуйте значения из тензоров данных в один тензор.

Создает объединенный тензор так, что

merged[indices[m][i, ..., j], ...] = data[m][i, ..., j, ...]
 
Например, если каждый `indices[m]` является скаляром или вектором, у нас есть
# Scalar indices:
     merged[indices[m], ...] = data[m][...]
 
     # Vector indices:
     merged[indices[m][i], ...] = data[m][i, ...]
 
Каждый `data[i].shape` должен начинаться с соответствующего `indices[i]. shape`, а остальная часть `data[i].shape` должна быть постоянной относительно `i`. То есть у нас должно быть `data[i].shape = index[i].shape + константа`. С точки зрения этой «константы», выходная форма имеет вид

merged.shape = [макс(индексы)] + константа

Значения объединяются по порядку, поэтому, если индекс появляется как в индексах[m][i]`, так и в индексах[n][j]` для `(m,i) < (n,j)`, срез `данных [n][j]` появится в объединенном результате. Если вам не нужна эта гарантия, ParallelDynamicStitch может работать лучше на некоторых устройствах.

Например:

indices[0] = 6
     indices[1] = [4, 1]
     indices[2] = [[5, 2], [0, 3]]
     data[0] = [61, 62]
     data[1] = [[41, 42], [11, 12]]
     data[2] = [[[51, 52], [21, 22]], [[1, 2], [31, 32]]]
     merged = [[1, 2], [11, 12], [21, 22], [31, 32], [41, 42],
               [51, 52], [61, 62]]
 
Этот метод можно использовать для объединения разделов, созданных с помощью `dynamic_partition`, как показано в следующем примере:
# Apply function (increments x_i) on elements for which a certain condition
     # apply (x_i != -1 in this example).
     x=tf.constant([0.1, -1., 5.2, 4.3, -1., 7.4])
     condition_mask=tf.not_equal(x,tf.constant(-1.))
     partitioned_data = tf.dynamic_partition(
         x, tf.cast(condition_mask, tf.int32) , 2)
     partitioned_data[1] = partitioned_data[1] + 1.0
     condition_indices = tf.dynamic_partition(
         tf.range(tf.shape(x)[0]), tf.cast(condition_mask, tf.int32) , 2)
     x = tf.dynamic_stitch(condition_indices, partitioned_data)
     # Here x=[1.1, -1., 6.2, 5.3, -1, 8.4], the -1. values remain
     # unchanged.
 

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

Выход <Т>
какВывод ()
Возвращает символический дескриптор тензора.
статический <T> DynamicStitch <T>
create (область области действия , индексы Iterable< Operand <Integer>>, данные Iterable< Operand <T>>)
Фабричный метод для создания класса, обертывающего новую операцию DynamicStitch.
Выход <Т>

Унаследованные методы

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

публичный вывод <T> asOutput ()

Возвращает символический дескриптор тензора.

Входные данные для операций TensorFlow являются выходными данными другой операции TensorFlow. Этот метод используется для получения символического дескриптора, который представляет собой вычисление входных данных.

public static DynamicStitch <T> create (область действия , индексы Iterable< Operand <Integer>>, данные Iterable< Operand <T>>)

Фабричный метод для создания класса, обертывающего новую операцию DynamicStitch.

Параметры
объем текущий объем
Возврат
  • новый экземпляр DynamicStitch

публичный вывод <T> объединен ()