tf.keras.utils.pad_sequences
Заполняет последовательности до одинаковой длины.
tf.keras.utils.pad_sequences(
sequences,
maxlen=None,
dtype='int32',
padding='pre',
truncating='pre',
value=0.0
)
Эта функция преобразует список (длиной num_samples) последовательностей (списков целых чисел) в двумерный массив Numpy формы (num_samples, num_timesteps). num_timesteps — это либо аргумент maxlen, если он указан, либо длина самой длинной последовательности в списке.
Последовательности, которые короче num_timesteps, заполняются value до тех пор, пока они не достигнут длины num_timesteps.
Последовательности, длиннее num_timesteps, усекаются, чтобы соответствовать желаемой длине.
Позиция, где происходит заполнение или усечение, определяется аргументами padding и truncating, соответственно. По умолчанию выполняется заполнение или удаление значений с начала последовательности.
sequence = [[1], [2, 3], [4, 5, 6]]
tf.keras.preprocessing.sequence.pad_sequences(sequence)
array([[0, 0, 1],
[0, 2, 3],
[4, 5, 6]], dtype=int32)
tf.keras.preprocessing.sequence.pad_sequences(sequence, value=-1)
array([[-1, -1, 1],
[-1, 2, 3],
[ 4, 5, 6]], dtype=int32)
tf.keras.preprocessing.sequence.pad_sequences(sequence, padding='post')
array([[1, 0, 0],
[2, 3, 0],
[4, 5, 6]], dtype=int32)
tf.keras.preprocessing.sequence.pad_sequences(sequence, maxlen=2)
array([[0, 1],
[2, 3],
[5, 6]], dtype=int32)
| Аргументы | |
|---|---|
sequences | Список последовательностей (каждая последовательность — список целых чисел). |
maxlen | Необязательное целое число, максимальная длина всех последовательностей. Если не указано, последовательности будут заполнены до длины самой длинной индивидуальной последовательности. |
dtype | (Необязательно, по умолчанию "int32"). Тип выходных последовательностей. Для заполнения последовательностей с переменной длиной строк можно использовать object. |
padding | Строка, "pre" или "post" (необязательно, по умолчанию "pre"): заполнять либо перед, либо после каждой последовательности. |
truncating | Строка, "pre" или "post" (необязательно, по умолчанию "pre"): удалять значения из последовательностей, больших, чем maxlen, либо в начале, либо в конце последовательностей. |
value | Вещественное число или строка, значение заполнения. (Необязательно, по умолчанию 0.) |
| Возвращаемое значение | |
|---|---|
Массив Numpy с формой (len(sequences), maxlen) |
| Исключения | |
|---|---|
ValueError | В случае недопустимых значений для truncating или padding, или в случае недопустимой формы для записи sequences . |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/keras/utils/pad_sequences