def cross_validation_mse_rdkit(param): param["num_epochs"] = int(np.round(param["num_epochs"])) MSE = [] for train_index, test_index in kf5.split(train_RDKIT, train_Y): model = build_model(input_dim=2048, learning_rate=param["learning_rate"], decay=param["decay"], momentum=param["momentum"], l2_parameter=param["l2_parameter"], hidden_layer_size1=param["hidden_layer_size1"], hidden_layer_size2=param["hidden_layer_size2"]) model.fit(np.array(train_RDKIT[train_index]), np.array(train_Y[train_index]), epochs=param["num_epochs"], batch_size=param["batch_size"], verbose=0) MSE.append( np.mean( abs( model.predict(np.array(train_RDKIT[test_index])) - np.array(train_Y[test_index]))**2)) return (np.mean(MSE))
def cross_validation_mse_gradient_boosting_maccs(param): num_round = param["num_rounds"] del param["num_rounds"] param["max_depth"] = int(np.round(param["max_depth"])) MSE = [] for i in range(5): train_index, test_index = CV_indices_train[i], CV_indices_test[i] train_index = [ True if ind in train_index else False for ind in list(brenda_train.index) ] test_index = [ True if ind in test_index else False for ind in list(brenda_train.index) ] dtrain = xgb.DMatrix(train_MACCS[train_index], label=train_Y[train_index]) dvalid = xgb.DMatrix(train_MACCS[test_index]) bst = xgb.train(param, dtrain, int(num_round), verbose_eval=False) y_valid_pred = bst.predict(dvalid) MSE.append( np.mean( abs(np.reshape(train_Y[test_index], (-1)) - y_valid_pred)**2)) return (np.mean(MSE))