Проблема с использованием предварительно обученного вектора.Проблема токенизации - PullRequest
0 голосов
/ 25 января 2019

Я использую предварительно обученные векторы для модели керас, и у меня проблема с преобразованием слов в идентификаторы. Для этого я использую токенизатор. Но получите ошибку:

index 117004 is out of bounds for axis 0 with size 116997

Полагаю, проблема в том, что он получает идентификаторы для поезда, но не расширяет их для разработки и тестирования.

t = Tokenizer()
t.fit_on_texts(X_train_words)
vocab_size = len(t.word_index) + 1
X_train = np.array(t.texts_to_sequences(X_train_words))
t.fit_on_texts(X_dev_words)
X_dev = np.array(t.texts_to_sequences(X_dev_words))
t.fit_on_texts(X_test_words)
X_test = np.array(t.texts_to_sequences(X_test_words))

Проблема появляется здесь (embedding_matrix [i] = embedding_vector)

for word, i in t.word_index.items():
embedding_vector = embeddings_index.get(word)
if embedding_vector is not None:
    embedding_matrix[i] = embedding_vector  
...