Подключите самообучаемые векторы встраивания в CNN - PullRequest
0 голосов
/ 14 марта 2020

Я пытаюсь загрузить вектор word2ve c, который я обучил сам, используя слово gensim, чтобы ve c таким образом:

embedding_model = gensim.models.Word2Vec(sentences = X_train, 
                                         size = 300, 
                                         window = 10, 
                                         min_count = 1)

в CNN, используя слой Embedding, используя следующая настройка:

model = Sequential()
model.add(Embedding(4998, 300, weights=[emb_weights], input_length=100, trainable = False))
(...)

Моя проблема в том, что я не знаю, как правильно извлечь вектор весов вложения. Я пробовал с:

emb_weights = embedding_model.wv.vector

И CNN фактически принимает входные данные, но моя точность сразу же падает с 50% -ной скоростью (для двух классов):

Epoch 5/5

25000/25000 [==============================]  

9s 378us/step - loss: 7.9712 - acc: 0.5000 - val_loss: 7.9712 - val_acc: 0.5000

Как вы думаете, я неправильно предоставляю CNN?

...