У меня есть модель тензорного потока 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])
Из-за этого мои прогнозы неверны.Может кто-нибудь помочь мне решить эту проблему.