使用model.predict测试Keras情绪分类

dnt*_*nth 2 python sentiment-analysis lstm keras

我已经在我的电脑上训练了imdb_lstm.py.现在我想通过输入我自己的一些文本来测试训练有素的网络.我该怎么做?谢谢!

Lio*_*gen 7

所以你基本上需要做的是如下:

  1. Tokenize sequnces:将字符串转换为单词(features):例如:"hello my name is georgio"to ["hello","my","name","is","georgio"].
  2. 接下来,您要删除停用词(请检查Google是否有停用词).
  3. 这个阶段是可选的,它可能会导致错误的结果,但我认为值得一试.干掉你的文字(特征),这样你就可以减少能够加快跑步速度的特征数量.同样,这是可选的,可能会导致一些失败,例如:如果你阻止"停车"一词,你就会得到"停车"这个词有不同的含义.
  4. 接下来是创建一个字典(检查谷歌).每个单词都有一个唯一的数字,从这一点开始我们只会使用这个数字.
  5. 计算机仅理解数字,因此我们需要用他们的语言进行交谈.我们将从第4阶段开始学习字典,并用我们的匹配编号替换我们语料库中的每个单词.
  6. 现在我们需要将数据集拆分为两组:训练集和测试集.一个(训练)将训练我们的NN模型,第二个(测试)将帮助我们弄清楚我们的NN有多好.您可以使用Keras的交叉验证功能.
  7. 接下来的事情是定义我们的NN可以作为输入获得的最大特征数量.Keras称这个参数为''maxlen'.但是你不必手动完成这项工作,Keras可以通过搜索你语料库中最长的句子来自动完成.
  8. 接下来,让我们说Keras发现你的语料库中最长的句子有20个单词(特征),你的一个句子就是第一个阶段的例子,它的长度是5(如果我们删除了止词,它就会在这种情况下,我们需要添加零,实际上是15个零.这称为填充序列,我们这样做,因此每个输入序列将具有相同的长度.