我在这里按照教程:(https://blog.keras.io/using-pre-trained-word-embeddings-in-a-keras-model.html)
但是,我修改了代码,以便能够通过h5py
. 因此,在运行训练脚本后,我的目录中生成model.h5
了一个。
现在,当我想加载它时,我的问题是我对如何重新启动Tokenizer
. 本教程有以下代码行:
tokenizer = Tokenizer(nb_words=MAX_NB_WORDS)
tokenizer.fit_on_texts(texts)
sequences = tokenizer.texts_to_sequences(texts)
但是假设,如果我model.h5
在不同的模块中重新加载,我需要创建另一个Tokenizer
来标记测试集。但是,新的Tokenizer
将适合测试数据,从而创建一个完全不同的词表。
因此,我的问题是:如何重新加载在Tokenizer
训练数据集上训练的数据?我是否在某种程度上误解了Embedding
Keras 中图层的功能?现在,我假设由于我们基于预先训练的词嵌入将某些词索引映射到它们相应的嵌入向量,因此词索引需要保持一致。fit_on_texts
但是,如果我们在测试数据集上执行另一个,这是不可能的。
谢谢你,期待你的回答!