Оптимальные размеры слоя встраивания для Keras - PullRequest
0 голосов
/ 10 июля 2020

Я обучаю модель LSTM и загружаю пользовательское встраивание слов BERT в слой встраивания Keras. Моя матрица встраивания, которую я добавил в слой встраивания, имеет размеры 30 576 x 24 576. Но когда я передаю эту матрицу на слой встраивания, Google Colab вылетает из-за того, что барабан выстреливает до максимального предела.

Что я могу сделать, чтобы слой встраивания принимал эту матрицу?

Здесь это мой код

max_words = 30576
max_len = 24576
tok = Tokenizer(num_words = max_words)
tok.fit_on_texts(X_train)
sequences = tok.texts_to_sequences(X_train)
sequences_matrix = sequence.pad_sequences(sequences, maxlen = max_len)
Y_train = np.array(Y_train)
Y_test = np.array(Y_test)

model = Sequential()
model.add(Embedding(max_words, 768, input_length=max_len, weights=[embedding]))
model.add(BatchNormalization())
model.add(Activation('tanh'))
model.add(SpatialDropout1D(0.5))
model.add(Conv1D(32, kernel_size=3, activation='relu'))
model.add(Bidirectional(LSTM(32)))
model.add(BatchNormalization())
model.add(Activation('tanh'))
model.add(Dropout(0.5))
model.add(Dense(1, activation='sigmoid'))
model.summary()
...