# first line: 457
@memory.cache
def executeModel():

    create_global_function()
    global estimator

    params = {"C": (0.0001, 10000), "gamma": (0.0001, 10000)}
    svc_bayesopt = BayesianOptimization(estimator, params)
    svc_bayesopt.maximize(init_points=10, n_iter=25, acq='ucb')
    bestParams = svc_bayesopt.max['params']
    estimator = SVC(C=bestParams.get('C'), gamma=bestParams.get('gamma'), probability=True)
    estimator.fit(XData, yData)
    yPredict = estimator.predict(XData)
    yPredictProb = cross_val_predict(estimator, XData, yData, cv=crossValidation, method='predict_proba')
