如何在深度学习中应用K折验证?

时间:2019-12-11 14:50:48

标签: deep-learning lstm k-fold

我是这个主题的初学者。我如何在此应用交叉验证?

X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.33, random_state=42)
tokenizer = Tokenizer(num_words=MAX_NUM_WORDS)
tokenizer.fit_on_texts(X_train)
X_train = tokenizer.texts_to_sequences(X_train)
X_test = tokenizer.texts_to_sequences(X_test)
vocab_size = len(tokenizer.word_index) + 1
X_train = pad_sequences(X_train, maxlen=MAX_SEQUENCE_LENGTH)
X_test = pad_sequences(X_test, maxlen=MAX_SEQUENCE_LENGTH)
def model():
    input_shape = (MAX_SEQUENCE_LENGTH,)
    model_input = Input(shape = input_shape, name = "input", dtype = 'int32')    
    embedding = glove_embd(model_input)
    lstm = LSTM(100, dropout=0.3, recurrent_dropout=0.3, name="lstm")(embedding)
    model_output = Dense(2, activation='softmax', name="softmax")(lstm)
    model = Model(inputs=model_input, outputs=model_output)
    return model
model = model()
model.compile(loss='binary_crossentropy', 
              optimizer = 'adam', 
              metrics = ['accuracy'])
history = model.fit(X_train, Y_train, batch_size=1500, epochs=50, verbose=1, validation_data=(X_test, Y_test))
loss, accuracy = model.evaluate(X_train, Y_train, verbose=False)

0 个答案:

没有答案