Проблема с максимальной длиной последовательности при прогнозировании с использованием модели lstm - PullRequest
0 голосов
/ 29 января 2019

У меня есть модель тензорного потока LSTM для прогнозирования настроения.Я строю модель с максимальной длиной последовательности 150. (Максимальное количество слов). Делая предсказания, я написал следующий код:

batchSize = 32
maxSeqLength = 150

def getSentenceMatrix(sentence):
  arr = np.zeros([batchSize, maxSeqLength])
  sentenceMatrix = np.zeros([batchSize,maxSeqLength], dtype='int32')
  cleanedSentence = cleanSentences(sentence)
  cleanedSentence = ' '.join(cleanedSentence.split()[:150])
  split = cleanedSentence.split()
  for indexCounter,word in enumerate(split):
      try:
          sentenceMatrix[0,indexCounter] = wordsList.index(word)
      except ValueError:
          sentenceMatrix[0,indexCounter] = 399999 #Vector for unkown words
  return sentenceMatrix

input_text = "example data"
inputMatrix = getSentenceMatrix(input_text)

В коде я усекаю свой входной текст до 150слова и игнорирование оставшихся данных.
cleanedSentence = ' '.join(cleanedSentence.split()[:150])

Из-за этого мои прогнозы неверны.Может кто-нибудь помочь мне решить эту проблему.

...