Liupeng
Feb 24, 2020
数据机填充到相同长度
代码
train_data = tensorflow.keras.preprocessing.sequence.pad_sequences
(
train_data,
value=word_index["<PAD>"],
padding='post',
maxlen=256
)
API 文档
pad_sequences
keras.preprocessing.sequence.pad_sequences(sequences, maxlen=None, dtype='int32', padding='pre', truncating='pre', value=0.0)
将序列填充到相同的长度。
此函数将 num_samples序列列表(整数列表)转换为shape的2D Numpy数组(num_samples, num_timesteps)
。 num_timesteps
是自maxlen
变量(如果提供),或者是最长序列的长度(否则)。
比最后num_timesteps
填充的序列短的序列value
。
序列的长度比num_timesteps
被截断的长度长,因此适合所需的长度。填充或截断发生的位置分别由参数padding
和决定truncating
。
预填充是默认设置。
参数
- sequence:列表列表,其中每个元素都是一个序列。
- maxlen:Int,所有序列的最大长度。
- dtype:输出序列的类型。要填充长度可变的字符串序列,可以使用
object
。 - padding:字符串,“ pre”或“ post”:在每个序列之前或之后填充。
- 截断:字符串,“ pre”或“ post”:从大于或大于的序列中删除序列
maxlen
的开头或结尾的值。 - value:浮点数或字符串,填充值。
返回值
- x:具有形状的块状数组
(len(sequences), maxlen)
报错信息
- ValueError:如果
truncating
或的值无效padding
,或者sequences
条目的形状无效。