tf.split
| Просмотреть исходный код на GitHub |
Разделяет тензор на подтензоры.
tf.split(
value, num_or_size_splits, axis=0, num=None, name='split'
)
Если num_or_size_splits является целым числом, то value разделяется вдоль измерения axis на num_split меньших тензоров. Для этого необходимо, чтобы num_split равномерно делило value.shape[axis].
Если num_or_size_splits является одномерным тензором (или списком), мы называем его size_splits и value разделяется на len(size_splits) элементов. Форма i-го элемента имеет тот же размер, что и value, за исключением измерения axis, где размер равен size_splits[i].
Например:
# 'value' is a tensor with shape [5, 30] # Split 'value' into 3 tensors with sizes [4, 15, 11] along dimension 1 split0, split1, split2 = tf.split(value, [4, 15, 11], 1) tf.shape(split0) # [5, 4] tf.shape(split1) # [5, 15] tf.shape(split2) # [5, 11] # Split 'value' into 3 tensors along dimension 1 split0, split1, split2 = tf.split(value, num_or_size_splits=3, axis=1) tf.shape(split0) # [5, 10]
| Аргументы | |
|---|---|
value | Разделяемый Tensor |
num_or_size_splits | Либо целое число, указывающее количество разделений вдоль split_dim, либо одномерный целочисленный Tensor или список Python, содержащий размеры каждого выходного тензора вдоль split_dim. Если скаляр, то он должен равномерно делиться на value.shape[axis]; в противном случае сумма размеров вдоль измерения разделения должна соответствовать размеру value. |
axis | Целое число или скалярное int32 Tensor. Измерение, вдоль которого выполняется разделение. Должно находиться в диапазоне [-rank(value), rank(value)). По умолчанию равно 0. |
num | Необязательно, используется для указания количества выходных данных, когда его нельзя определить из формы size_splits. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Если num_or_size_splits является скаляром, возвращаются num_or_size_splits Tensor объекта; если num_or_size_splits является одномерным тензором, возвращаются num_or_size_splits.get_shape[0] Tensor объекта, полученные в результате разделения value. |
| Исключения | |
|---|---|
ValueError | Если num не указан и его нельзя определить. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/split