Ответ 1
pad_sequences
используется для обеспечения того, чтобы все последовательности в списке имели одинаковую длину. По умолчанию это делается путем добавления 0
в начале каждой последовательности, пока каждая последовательность не будет иметь такую же длину, как и самая длинная последовательность.
Например
>>> pad_sequences([[1, 2, 3], [3, 4, 5, 6], [7, 8]])
array([[0, 1, 2, 3],
[3, 4, 5, 6],
[0, 0, 7, 8]], dtype=int32)
[3, 4, 5, 6]
- самая длинная последовательность, поэтому 0
будет дополняться к другим последовательностям, чтобы их длина соответствовала [3, 4, 5, 6]
.
Если вы предпочитаете вставлять до конца последовательности, вы можете установить padding='post'
.
Если вы хотите указать максимальную длину каждой последовательности, вы можете использовать аргумент maxlen
. Это приведет к усечению всех последовательностей дольше, чем maxlen
.
>>> pad_sequences([[1, 2, 3], [3, 4, 5, 6], [7, 8]], maxlen=3)
array([[1, 2, 3],
[4, 5, 6],
[0, 7, 8]], dtype=int32)
Теперь каждая последовательность имеет длину 3.