Разделяет `данные` на тензоры `num_partitions`, используя индексы из `partitions`.
Для каждого индексного кортежа `js` размера `partitions.ndim` срез `data[js, ...]` становится частью `outputs[partitions[js]]`. Срезы с `partitions[js] = i` помещаются в `outputs[i]` в лексикографическом порядке `js`, а первое измерение `outputs[i]` — это количество записей в `partitions`, равное `я`. Подробно,
outputs[i].shape = [sum(partitions == i)] + data.shape[partitions.ndim:]
outputs[i] = pack([data[js, ...] for js if partitions[js] == i])
`data.shape` должен начинаться с `partitions.shape`.Например:
# Scalar partitions.
partitions = 1
num_partitions = 2
data = [10, 20]
outputs[0] = [] # Empty with shape [0, 2]
outputs[1] = [[10, 20]]
# Vector partitions.
partitions = [0, 0, 1, 1, 0]
num_partitions = 2
data = [10, 20, 30, 40, 50]
outputs[0] = [10, 20, 50]
outputs[1] = [30, 40]
См. `dynamic_stitch` для примера того, как объединить разделы обратно. Константы
Нить | OP_NAME | Название этой операции, известное основному движку TensorFlow. |
Публичные методы
статический <T расширяет TType > DynamicPartition <T> | |
Итератор< Операнд <T>> | итератор () |
Список< Выход <T>> | выходы () |
Унаследованные методы
Константы
общедоступная статическая финальная строка OP_NAME
Название этой операции, известное основному движку TensorFlow.
Публичные методы
public static DynamicPartition <T> create (область действия , данные операнда <T>, разделы операнда <TInt32> , длинные numPartitions)
Фабричный метод для создания класса, обертывающего новую операцию DynamicPartition.
Параметры
объем | текущий объем |
---|---|
перегородки | Любая форма. Индексы в диапазоне `[0, num_partitions)`. |
numPartitions | Количество разделов для вывода. |
Возврат
- новый экземпляр DynamicPartition