标签:code dir process lstm 浮点 add pad 前端 意思
源码:https://github.com/keras-team/keras/blob/master/examples/imdb_bidirectional_lstm.py
数据集来自 IMDB 的 25,000 条电影评论,以情绪(正面/负面)标记。评论已经过预处理,并编码为词索引(整数)的序列表示。为了方便起见,将词按数据集中出现的频率进行索引,例如整数 3 编码数据中第三个最频繁的词。
这允许快速筛选操作,例如:「只考虑前 10,000 个最常用的词,但排除前 20 个最常见的词」。
作为惯例,0 不代表特定的单词,而是被用于编码任何未知单词。
from keras.datasets import imdb (x_train, y_train), (x_test, y_test) = imdb.load_data(path="imdb.npz", num_words=None, skip_top=0, maxlen=None, seed=113, start_char=1, oov_char=2, index_from=3)
返回:
num_words
参数,则可能的最大索引值是 num_words-1
。如果指定了 maxlen
参数,则可能的最大序列长度为 maxlen
。参数:
‘~/.keras/datasets/‘ + path
),它将被下载到此目录。oov_char
值。oov_char
值)。num_words
或 skip_top
限制而被删除的单词将被替换为此字符。//主要还是关注num_words和maxlen两个参数吧,这两个都在我的ibdm_Bilstm.ipynb里试了。
num_words=2000,意思是只取下标为前2000的,出现次数最频繁的前2000个单词;maxlen=500是针对评论来说的,只取长度≤500的。
x_train=sequence.pad_sequences(x_train,maxlen=maxlen)
keras.preprocessing.sequence.pad_sequences(sequences, maxlen=None, dtype=‘int32‘, padding=‘pre‘, truncating=‘pre‘, value=0.0)
将多个序列截断或补齐为相同长度。
该函数将一个 num_samples
的序列(整数列表)转化为一个 2D Numpy 矩阵,其尺寸为 (num_samples, num_timesteps)
。 num_timesteps
要么是给定的 maxlen
参数,要么是最长序列的长度。
比 num_timesteps
短的序列将在末端以 value
值补齐。
比 num_timesteps
长的序列将会被截断以满足所需要的长度。补齐或截断发生的位置分别由参数 pading
和 truncating
决定。
向前补齐为默认操作。
参数
object
。maxlen
的序列的值,要么在序列前端截断,要么在后端。返回
(len(sequences), maxlen)
。异常
//默认补齐和截断都是在序列前端pre的。
标签:code dir process lstm 浮点 add pad 前端 意思
原文地址:https://www.cnblogs.com/BlueBlueSea/p/10669837.html