{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "--- This is a regression problem ---\n", "\n", "1. Loading dataset from file...\n", "\n", "2. Calculating gram matrices. This could take a while...\n", "\n", " --- Weisfeiler-Lehman subtree kernel matrix of size 183 built in 0.35580015182495117 seconds ---\n", "\n", "gram matrix with parameters {'base_kernel': 'subtree', 'height': 0} is: \n", "[[ 5. 6. 4. ... 20. 20. 20.]\n", " [ 6. 8. 4. ... 20. 20. 20.]\n", " [ 4. 4. 5. ... 21. 21. 21.]\n", " ...\n", " [ 20. 20. 21. ... 101. 101. 101.]\n", " [ 20. 20. 21. ... 101. 101. 101.]\n", " [ 20. 20. 21. ... 101. 101. 101.]]\n", "\n", " --- Weisfeiler-Lehman subtree kernel matrix of size 183 built in 0.812713623046875 seconds ---\n", "\n", "gram matrix with parameters {'base_kernel': 'subtree', 'height': 1} is: \n", "[[ 10. 10. 4. ... 20. 20. 20.]\n", " [ 10. 16. 4. ... 20. 20. 20.]\n", " [ 4. 4. 10. ... 22. 22. 24.]\n", " ...\n", " [ 20. 20. 22. ... 130. 130. 122.]\n", " [ 20. 20. 22. ... 130. 130. 122.]\n", " [ 20. 20. 24. ... 122. 122. 154.]]\n", "\n", " --- Weisfeiler-Lehman subtree kernel matrix of size 183 built in 1.3875529766082764 seconds ---\n", "\n", "gram matrix with parameters {'base_kernel': 'subtree', 'height': 2} is: \n", "[[ 15. 4. 0. ... 0. 0. 0.]\n", " [ 4. 24. 0. ... 0. 0. 0.]\n", " [ 0. 0. 15. ... 1. 1. 5.]\n", " ...\n", " [ 0. 0. 1. ... 87. 58. 23.]\n", " [ 0. 0. 1. ... 58. 67. 23.]\n", " [ 0. 0. 5. ... 23. 23. 101.]]\n", "\n", "3. Fitting and predicting using nested cross validation. This could really take a while...\n", "cross validation: 0%| | 0/2 [00:00" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.datasets import load_iris\n", "from matplotlib import pyplot as plt\n", "from sklearn.kernel_ridge import KernelRidge\n", "from sklearn.svm import SVC\n", "from sklearn.metrics import accuracy_score, mean_squared_error\n", "from sklearn.model_selection import GridSearchCV, cross_val_score, KFold, train_test_split, ParameterGrid\n", "import numpy as np\n", "\n", "import sys\n", "sys.path.insert(0, \"../\")\n", "\n", "from pygraph.utils.graphfiles import loadDataset\n", "from pygraph.kernels.weisfeilerLehmanKernel import weisfeilerlehmankernel\n", "\n", "print(__doc__)\n", "\n", "\n", "\n", "# Load the dataset\n", "iris = load_iris()\n", "X_iris = iris.data\n", "y_iris = iris.target\n", "\n", "datafile = '../../../../datasets/acyclic/Acyclic/dataset_bps.ds'\n", "dataset, y = loadDataset(datafile)\n", "\n", "# Set up possible values of parameters to optimize over\n", "p_grid = {\"C\": [1, 10, 100],\n", " \"gamma\": [.01, .1]}\n", "\n", "estimator = weisfeilerlehmankernel\n", "param_grid_precomputed = {'height': [0,1,2,3], 'base_kernel': ['subtree']} # param grid for precomputed kernel gram matrix\n", "# param_grid = {\"C\": [1, 10, 100]}\n", "param_grid = {\"alpha\": np.logspace(-5, 5, num = 21, base = 10)}\n", "NUM_TRIALS = 3 # Number of random trials\n", "\n", "\n", "# We will use a Support Vector Classifier with \"rbf\" kernel\n", "# svm = SVC(kernel=\"precomputed\")\n", "\n", "best_params = []\n", "gram_matrices = []\n", "run_time = []\n", "\n", "param_list_precomputed = list(ParameterGrid(param_grid_precomputed))\n", "# print('param_list_precomputed: ', param_list_precomputed)\n", "param_list = list(ParameterGrid(param_grid))\n", "# print('param_list: ', param_list)\n", "\n", "# Arrays to store scores\n", "train_pref = np.zeros((NUM_TRIALS, len(param_list_precomputed), len(param_list)))\n", "val_pref = np.zeros((NUM_TRIALS, len(param_list_precomputed), len(param_list)))\n", "test_pref = np.zeros((NUM_TRIALS, len(param_list_precomputed), len(param_list)))\n", "\n", "# calculate all gram matrices\n", "for params_out in param_list_precomputed:\n", "# print('params_out: ', params_out)\n", " Kmatrix, current_run_time = estimator(dataset, **params_out)\n", "# print('gram matrix: ', Kmatrix)\n", " import matplotlib.pyplot as plt\n", " plt.matshow(Kmatrix)\n", " gram_matrices.append(Kmatrix)\n", " run_time.append(current_run_time)\n", "\n", "# Loop for each trial\n", "for trial in range(NUM_TRIALS): # Test set level\n", " print()\n", " print('trial: ', trial)\n", " \n", " for index_out, params_out in enumerate(param_list_precomputed):\n", "# print()\n", "# print('index_out: ', index_out) \n", "# print('params_out: ', params_out) \n", " X_app,X_test,y_app,y_test = train_test_split(gram_matrices[index_out], y, test_size=0.1)\n", " split_index_app = [y.index(y_i) for y_i in y_app if y_i in y]\n", " split_index_test = [y.index(y_i) for y_i in y_test if y_i in y]\n", " X_app = X_app[:,split_index_app]\n", " X_test = X_test[:,split_index_app] \n", " y_app = np.array(y_app)\n", " y_test = np.array(y_test)\n", "# print('split_index_app: ', split_index_app)\n", "# print('split_index_test: ', split_index_test)\n", "# print('X_app: ', X_app)\n", "# print('y_app: ', y_app)\n", "# print('X_app_shape: ', X_app.shape)\n", "\n", " for index_in, params_in in enumerate(param_list):\n", "# print()\n", "# print('params_in: ', params_in)\n", " inner_cv = KFold(n_splits=10, shuffle=True, random_state=trial)\n", " KR = KernelRidge(kernel = 'precomputed', **params_in)\n", " current_train_perf = []\n", " current_valid_perf = []\n", " current_test_perf = []\n", "# print('split_y_app: ', list(inner_cv.split(y_app)))\n", " \n", " for train_index, valid_index in inner_cv.split(X_app): # validation set level\n", "# print()\n", "# print('train_index: ', train_index)\n", "# print('train_index_shape: ', train_index.shape)\n", "# print('valid_index: ', valid_index)\n", "# print('valid_index_shape: ', valid_index.shape)\n", " KR.fit(X_app[train_index,:][:,train_index], y_app[train_index])\n", " \n", " # predict on the train and test set\n", " y_pred_train = KR.predict(X_app[train_index,:][:,train_index])\n", " y_pred_valid = KR.predict(X_app[valid_index,:][:,train_index])\n", " y_pred_test = KR.predict(X_test[:,train_index])\n", "\n", " # root mean squared errors\n", " current_train_perf.append(np.sqrt(mean_squared_error(y_app[train_index], y_pred_train)))\n", " current_valid_perf.append(np.sqrt(mean_squared_error(y_app[valid_index], y_pred_valid)))\n", " current_test_perf.append(np.sqrt(mean_squared_error(y_test, y_pred_test)))\n", "# print('y_test: ', y_test)\n", "# print('y_pred_test: ', y_pred_test)\n", " \n", "# print('current_train_perf: ', current_train_perf)\n", "# print('current_valid_perf: ', current_valid_perf)\n", "# print('current_test_perf: ', current_test_perf)\n", " \n", " train_pref[trial][index_out][index_in] = np.mean(current_train_perf)\n", " val_pref[trial][index_out][index_in] = np.mean(current_valid_perf)\n", " test_pref[trial][index_out][index_in] = np.mean(current_test_perf)\n", " \n", "print('train_pref: ', train_pref)\n", "print('val_pref: ', val_pref)\n", "print('test_pref: ', test_pref)\n", "\n", "average_train_scores = np.mean(train_pref, axis=0)\n", "average_val_scores = np.mean(val_pref, axis=0)\n", "average_perf_scores = np.mean(test_pref, axis=0)\n", "std_train_scores = np.std(train_pref, axis=0, ddof=1) # sample std is used here\n", "std_val_scores = np.std(val_pref, axis=0, ddof=1)\n", "std_perf_scores = np.std(test_pref, axis=0, ddof=1)\n", "# print('average_train_scores: ', average_train_scores)\n", "# print('average_val_scores: ', average_val_scores)\n", "# print('average_perf_scores: ', average_perf_scores)\n", "# print('std_train_scores: ', std_train_scores)\n", "# print('std_val_scores: ', std_val_scores)\n", "# print('std_perf_scores: ', std_perf_scores)\n", "best_val_perf = np.amin(average_val_scores)\n", "print('best_val_perf: ', best_val_perf)\n", "best_params_index = np.where(average_val_scores == best_val_perf)\n", "best_params_out = [param_list_precomputed[i] for i in best_params_index[0]]\n", "best_params_in = [param_list[i] for i in best_params_index[1]]\n", "print('best_params_index: ', best_params_index)\n", "print('best_params_out: ', best_params_out)\n", "print('best_params_in: ', best_params_in)\n", "# below: only find one performance; muitiple pref might exist\n", "best_val_std = std_val_scores[best_params_index[0][0]][best_params_index[1][0]]\n", "print('best_val_std: ', best_val_std)\n", "\n", "final_performance = average_perf_scores[best_params_index[0][0]][best_params_index[1][0]]\n", "final_confidence = std_perf_scores[best_params_index[0][0]][best_params_index[1][0]]\n", "print('final_performance: ', final_performance)\n", "print('final_confidence: ', final_confidence)\n", "train_performance = average_train_scores[best_params_index[0][0]][best_params_index[1][0]]\n", "train_std = std_train_scores[best_params_index[0][0]][best_params_index[1][0]]\n", "print('train_performance: ', train_performance)\n", "print('train_std: ', train_std)\n", "\n", "best_run_time = run_time[best_params_index[0][0]]\n", "print('run_time: ', run_time)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[{'o1': 1, 'o2': 2}, {'o1': 3, 'o2': 4}]\n", "[{'i2': 6, 'i1': 5}, {'i2': 8, 'i1': 7}, {'i2': 10, 'i1': 9}]\n" ] }, { "data": { "text/plain": [ "[({'o1': 1, 'o2': 2}, {'o1': 3, 'o2': 4}),\n", " ({'o1': 3, 'o2': 4}, {'o1': 1, 'o2': 2})]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x = [ {'o1':1,'o2':2},{'o1':3,'o2':4}]\n", "print(x)\n", "y = [ {'i1':5,'i2':6},{'i1':7,'i2':8},{'i1':9,'i2':10}]\n", "print(y)\n", "from itertools import permutations\n", "[item for item in permutations(x)]" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Automatically created module for IPython interactive environment\n", "\n", "0\n", "{'std_score_time': array([3.69876958e-05, 1.59321777e-05, 2.74488935e-05, 1.14532461e-05,\n", " 1.88863033e-06, 2.37223491e-06]), 'split2_train_score': array([0.91666667, 0.96428571, 0.96428571, 0.96428571, 0.97619048,\n", " 0.97619048]), 'split0_test_score': array([0.92857143, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.96428571]), 'split1_train_score': array([0.86904762, 0.96428571, 0.96428571, 0.97619048, 0.97619048,\n", " 0.97619048]), 'split2_test_score': array([0.96428571, 0.96428571, 0.96428571, 1. , 1. ,\n", " 1. ]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00021189, 0.0001657 , 0.00017828, 0.00015265, 0.00014174,\n", " 0.00014162]), 'mean_train_score': array([0.9077381 , 0.9702381 , 0.97321429, 0.98214286, 0.98511905,\n", " 0.98511905]), 'mean_fit_time': array([0.00046653, 0.0002929 , 0.00035262, 0.00029558, 0.00025451,\n", " 0.00026101]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.05646924, 0.04639422, 0.03092948, 0.01785714, 0.01546474,\n", " 0.05854856]), 'std_train_score': array([0.03705327, 0.01030983, 0.01546474, 0.01330993, 0.00987091,\n", " 0.00987091]), 'mean_test_score': array([0.89285714, 0.9375 , 0.94642857, 0.98214286, 0.97321429,\n", " 0.95535714]), 'split3_test_score': array([0.82142857, 0.85714286, 0.89285714, 0.96428571, 0.96428571,\n", " 0.85714286]), 'rank_test_score': array([6, 5, 4, 1, 2, 3], dtype=int32), 'split1_test_score': array([0.85714286, 0.96428571, 0.96428571, 1. , 0.96428571,\n", " 1. ]), 'std_fit_time': array([9.01377338e-05, 6.28426330e-06, 3.60406571e-05, 5.15247249e-05,\n", " 1.17498278e-05, 1.70351493e-05]), 'split3_train_score': array([0.96428571, 0.98809524, 1. , 1. , 1. ,\n", " 1. ]), 'split0_train_score': array([0.88095238, 0.96428571, 0.96428571, 0.98809524, 0.98809524,\n", " 0.98809524]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "1\n", "{'std_score_time': array([8.33272081e-06, 2.06132131e-06, 1.89343984e-05, 5.24080428e-06,\n", " 6.61047489e-07, 1.83423550e-06]), 'split2_train_score': array([0.91666667, 0.96428571, 0.96428571, 0.98809524, 0.97619048,\n", " 0.98809524]), 'split0_test_score': array([0.92857143, 0.96428571, 1. , 1. , 1. ,\n", " 0.96428571]), 'split1_train_score': array([0.95238095, 0.97619048, 0.97619048, 0.98809524, 0.98809524,\n", " 0.98809524]), 'split2_test_score': array([1. , 1. , 1. , 1. , 1. ,\n", " 0.96428571]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00018692, 0.00016367, 0.00017142, 0.00014895, 0.0001412 ,\n", " 0.00014251]), 'mean_train_score': array([0.93154762, 0.97321429, 0.9702381 , 0.99107143, 0.98809524,\n", " 0.98809524]), 'mean_fit_time': array([0.00044656, 0.00030571, 0.00029963, 0.00027484, 0.00025165,\n", " 0.00027138]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.06376275, 0.01546474, 0.01785714, 0.02961272, 0.02961272,\n", " 0. ]), 'std_train_score': array([0.01297291, 0.00987091, 0.00595238, 0.00515491, 0.00841794,\n", " 0.00841794]), 'mean_test_score': array([0.91964286, 0.97321429, 0.98214286, 0.97321429, 0.97321429,\n", " 0.96428571]), 'split3_test_score': array([0.92857143, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.96428571]), 'rank_test_score': array([6, 2, 1, 2, 2, 5], dtype=int32), 'split1_test_score': array([0.82142857, 0.96428571, 0.96428571, 0.92857143, 0.92857143,\n", " 0.96428571]), 'std_fit_time': array([9.50373959e-05, 3.66022995e-06, 1.56844048e-05, 1.16622698e-05,\n", " 8.33527856e-06, 1.73377812e-05]), 'split3_train_score': array([0.92857143, 0.96428571, 0.96428571, 1. , 1. ,\n", " 1. ]), 'split0_train_score': array([0.92857143, 0.98809524, 0.97619048, 0.98809524, 0.98809524,\n", " 0.97619048]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "2\n", "{'std_score_time': array([3.39013698e-06, 2.39236739e-06, 1.81965083e-06, 2.35117470e-06,\n", " 1.03924249e-06, 4.57831964e-07]), 'split2_train_score': array([0.92857143, 0.97619048, 0.97619048, 0.98809524, 0.98809524,\n", " 1. ]), 'split0_test_score': array([1., 1., 1., 1., 1., 1.]), 'split1_train_score': array([0.94047619, 1. , 1. , 1. , 1. ,\n", " 1. ]), 'split2_test_score': array([0.96428571, 1. , 1. , 1. , 1. ,\n", " 0.89285714]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00017661, 0.00015908, 0.00015056, 0.00014818, 0.00014067,\n", " 0.00014156]), 'mean_train_score': array([0.90178571, 0.98511905, 0.98511905, 0.98809524, 0.98809524,\n", " 0.99404762]), 'mean_fit_time': array([0.00038451, 0.00029421, 0.00026572, 0.00026315, 0.00024247,\n", " 0.00025213]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.09902265, 0.01785714, 0.01785714, 0.04374089, 0.04374089,\n", " 0.05646924]), 'std_train_score': array([0.06033671, 0.00987091, 0.00987091, 0.00841794, 0.00841794,\n", " 0.01030983]), 'mean_test_score': array([0.88392857, 0.98214286, 0.98214286, 0.96428571, 0.96428571,\n", " 0.92857143]), 'split3_test_score': array([0.78571429, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.96428571]), 'rank_test_score': array([6, 1, 1, 3, 3, 5], dtype=int32), 'split1_test_score': array([0.78571429, 0.96428571, 0.96428571, 0.89285714, 0.89285714,\n", " 0.85714286]), 'std_fit_time': array([4.54199517e-05, 3.46733083e-06, 4.18932042e-06, 3.81609399e-06,\n", " 4.63232022e-06, 5.49527672e-06]), 'split3_train_score': array([0.79761905, 0.98809524, 0.98809524, 0.98809524, 0.98809524,\n", " 1. ]), 'split0_train_score': array([0.94047619, 0.97619048, 0.97619048, 0.97619048, 0.97619048,\n", " 0.97619048]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "3\n", "{'std_score_time': array([1.44149616e-05, 1.05787750e-06, 8.49235466e-07, 4.57831964e-07,\n", " 8.76005796e-07, 9.88431212e-07]), 'split2_train_score': array([0.89285714, 0.96428571, 0.95238095, 0.97619048, 0.96428571,\n", " 0.96428571]), 'split0_test_score': array([0.85714286, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.96428571]), 'split1_train_score': array([0.94047619, 0.98809524, 0.98809524, 0.98809524, 0.98809524,\n", " 1. ]), 'split2_test_score': array([0.85714286, 0.89285714, 0.89285714, 0.92857143, 0.92857143,\n", " 0.92857143]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00018787, 0.00016254, 0.00016016, 0.00015181, 0.00014877,\n", " 0.00014991]), 'mean_train_score': array([0.9047619 , 0.96428571, 0.96130952, 0.97619048, 0.97321429,\n", " 0.97321429]), 'mean_fit_time': array([0.00039715, 0.00030398, 0.00029951, 0.00027311, 0.00025588,\n", " 0.00027567]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.04374089, 0.03992979, 0.03992979, 0.02525381, 0.01546474,\n", " 0.01785714]), 'std_train_score': array([0.02227177, 0.0145803 , 0.01546474, 0.00841794, 0.00987091,\n", " 0.01760738]), 'mean_test_score': array([0.89285714, 0.94642857, 0.94642857, 0.96428571, 0.95535714,\n", " 0.94642857]), 'split3_test_score': array([0.96428571, 1. , 1. , 1. , 0.96428571,\n", " 0.96428571]), 'rank_test_score': array([6, 3, 3, 1, 2, 3], dtype=int32), 'split1_test_score': array([0.89285714, 0.92857143, 0.92857143, 0.96428571, 0.96428571,\n", " 0.92857143]), 'std_fit_time': array([5.56155415e-05, 1.26754851e-05, 1.82599488e-05, 2.66826502e-06,\n", " 3.90808343e-06, 3.21367993e-06]), 'split3_train_score': array([0.9047619 , 0.95238095, 0.95238095, 0.96428571, 0.97619048,\n", " 0.97619048]), 'split0_train_score': array([0.88095238, 0.95238095, 0.95238095, 0.97619048, 0.96428571,\n", " 0.95238095]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "4\n", "{'std_score_time': array([3.84623189e-06, 2.97307108e-06, 9.29144458e-07, 8.93115488e-06,\n", " 1.71796883e-05, 3.76084054e-05]), 'split2_train_score': array([0.9047619 , 0.94047619, 0.94047619, 0.96428571, 0.96428571,\n", " 0.96428571]), 'split0_test_score': array([0.82142857, 1. , 0.96428571, 1. , 0.96428571,\n", " 0.92857143]), 'split1_train_score': array([0.89285714, 0.94047619, 0.94047619, 0.97619048, 0.97619048,\n", " 0.97619048]), 'split2_test_score': array([0.89285714, 0.96428571, 0.96428571, 0.96428571, 1. ,\n", " 1. ]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00019467, 0.0001688 , 0.00015813, 0.00016057, 0.00016457,\n", " 0.00017679]), 'mean_train_score': array([0.90178571, 0.95535714, 0.95833333, 0.97916667, 0.97916667,\n", " 0.97619048]), 'mean_fit_time': array([0.0004366 , 0.00031209, 0.00028533, 0.0002737 , 0.00026488,\n", " 0.0002774 ]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.04374089, 0.03891874, 0.03092948, 0.04374089, 0.04374089,\n", " 0.02961272]), 'std_train_score': array([0.00515491, 0.01546474, 0.01785714, 0.01297291, 0.01297291,\n", " 0.00841794]), 'mean_test_score': array([0.89285714, 0.95535714, 0.94642857, 0.96428571, 0.96428571,\n", " 0.95535714]), 'split3_test_score': array([0.92857143, 0.89285714, 0.89285714, 0.89285714, 0.89285714,\n", " 0.92857143]), 'rank_test_score': array([6, 3, 5, 1, 1, 3], dtype=int32), 'split1_test_score': array([0.92857143, 0.96428571, 0.96428571, 1. , 1. ,\n", " 0.96428571]), 'std_fit_time': array([6.65989292e-05, 7.14460567e-06, 5.84338354e-06, 4.58917059e-06,\n", " 8.89687927e-06, 2.05769875e-05]), 'split3_train_score': array([0.9047619 , 0.96428571, 0.97619048, 1. , 1. ,\n", " 0.98809524]), 'split0_train_score': array([0.9047619 , 0.97619048, 0.97619048, 0.97619048, 0.97619048,\n", " 0.97619048]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "5\n", "{'std_score_time': array([1.85062584e-06, 1.10550147e-06, 4.28162198e-05, 1.62142164e-06,\n", " 9.29144458e-07, 1.37349589e-06]), 'split2_train_score': array([0.98809524, 0.98809524, 0.98809524, 0.98809524, 0.98809524,\n", " 0.98809524]), 'split0_test_score': array([0.96428571, 0.96428571, 0.96428571, 1. , 1. ,\n", " 0.96428571]), 'split1_train_score': array([0.92857143, 0.96428571, 0.96428571, 0.97619048, 0.97619048,\n", " 0.97619048]), 'split2_test_score': array([0.82142857, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.96428571]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00018179, 0.00016308, 0.00018311, 0.00015223, 0.00014824,\n", " 0.00015038]), 'mean_train_score': array([0.9375 , 0.97916667, 0.98214286, 0.98511905, 0.98511905,\n", " 0.98214286]), 'mean_fit_time': array([0.00041962, 0.00029922, 0.00027883, 0.00028938, 0.00025576,\n", " 0.00028121]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.08134316, 0.03891874, 0.03891874, 0.02961272, 0.02961272,\n", " 0.02525381]), 'std_train_score': array([0.03078595, 0.00987091, 0.01030983, 0.00515491, 0.00515491,\n", " 0.00595238]), 'mean_test_score': array([0.88392857, 0.95535714, 0.95535714, 0.97321429, 0.97321429,\n", " 0.96428571]), 'split3_test_score': array([0.96428571, 1. , 1. , 1. , 1. ,\n", " 1. ]), 'rank_test_score': array([6, 4, 4, 1, 1, 3], dtype=int32), 'split1_test_score': array([0.78571429, 0.89285714, 0.89285714, 0.92857143, 0.92857143,\n", " 0.92857143]), 'std_fit_time': array([7.58356620e-05, 7.24925794e-06, 4.00550309e-06, 2.77644424e-05,\n", " 4.33887425e-06, 1.71334067e-05]), 'split3_train_score': array([0.92857143, 0.97619048, 0.98809524, 0.98809524, 0.98809524,\n", " 0.97619048]), 'split0_train_score': array([0.9047619 , 0.98809524, 0.98809524, 0.98809524, 0.98809524,\n", " 0.98809524]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "6\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "{'std_score_time': array([3.09198197e-06, 1.37349589e-06, 2.29303647e-06, 9.31054315e-07,\n", " 6.05123955e-05, 1.57039859e-05]), 'split2_train_score': array([0.89285714, 0.95238095, 0.96428571, 0.96428571, 0.96428571,\n", " 0.96428571]), 'split0_test_score': array([0.92857143, 0.89285714, 0.89285714, 0.92857143, 0.92857143,\n", " 0.92857143]), 'split1_train_score': array([0.92857143, 0.96428571, 0.96428571, 0.98809524, 0.97619048,\n", " 0.98809524]), 'split2_test_score': array([0.96428571, 1. , 1. , 1. , 1. ,\n", " 0.96428571]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00017935, 0.00016373, 0.00015998, 0.00015104, 0.00022823,\n", " 0.00016546]), 'mean_train_score': array([0.91071429, 0.9702381 , 0.97619048, 0.97916667, 0.97619048,\n", " 0.98214286]), 'mean_fit_time': array([0.00038064, 0.00030971, 0.00028497, 0.0002746 , 0.00040722,\n", " 0.00030589]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.05282214, 0.05357143, 0.04639422, 0.02961272, 0.02961272,\n", " 0.02525381]), 'std_train_score': array([0.01785714, 0.01785714, 0.0145803 , 0.00987091, 0.00841794,\n", " 0.01030983]), 'mean_test_score': array([0.9375 , 0.94642857, 0.95535714, 0.97321429, 0.97321429,\n", " 0.96428571]), 'split3_test_score': array([1., 1., 1., 1., 1., 1.]), 'rank_test_score': array([6, 5, 4, 1, 1, 3], dtype=int32), 'split1_test_score': array([0.85714286, 0.89285714, 0.92857143, 0.96428571, 0.96428571,\n", " 0.96428571]), 'std_fit_time': array([2.67222985e-05, 9.33340985e-06, 8.74767969e-06, 9.21446169e-06,\n", " 5.52532164e-05, 1.68831669e-05]), 'split3_train_score': array([0.89285714, 0.96428571, 0.97619048, 0.97619048, 0.97619048,\n", " 0.98809524]), 'split0_train_score': array([0.92857143, 1. , 1. , 0.98809524, 0.98809524,\n", " 0.98809524]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "7\n", "{'std_score_time': array([1.38380370e-06, 1.73672634e-05, 1.37349589e-06, 6.54322188e-06,\n", " 1.01152436e-06, 8.31870747e-05]), 'split2_train_score': array([0.88095238, 0.98809524, 0.97619048, 0.98809524, 0.97619048,\n", " 0.98809524]), 'split0_test_score': array([0.78571429, 1. , 1. , 1. , 1. ,\n", " 1. ]), 'split1_train_score': array([0.94047619, 0.92857143, 0.95238095, 0.98809524, 0.98809524,\n", " 0.98809524]), 'split2_test_score': array([0.89285714, 0.96428571, 0.96428571, 1. , 1. ,\n", " 1. ]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00018364, 0.00017959, 0.00016695, 0.0001623 , 0.0001545 ,\n", " 0.00025201]), 'mean_train_score': array([0.89583333, 0.9672619 , 0.9702381 , 0.98809524, 0.98511905,\n", " 0.99107143]), 'mean_fit_time': array([0.00041223, 0.00032604, 0.000305 , 0.00029951, 0.00030398,\n", " 0.00040394]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.05357143, 0.02525381, 0.02961272, 0.02961272, 0.02961272,\n", " 0.01785714]), 'std_train_score': array([0.05670404, 0.02436117, 0.01330993, 0. , 0.00515491,\n", " 0.00515491]), 'mean_test_score': array([0.875 , 0.96428571, 0.97321429, 0.97321429, 0.97321429,\n", " 0.98214286]), 'split3_test_score': array([0.89285714, 0.92857143, 0.92857143, 0.92857143, 0.92857143,\n", " 0.96428571]), 'rank_test_score': array([6, 5, 2, 2, 2, 1], dtype=int32), 'split1_test_score': array([0.92857143, 0.96428571, 1. , 0.96428571, 0.96428571,\n", " 0.96428571]), 'std_fit_time': array([4.18887941e-05, 1.97113921e-05, 6.32904785e-06, 1.24610777e-05,\n", " 4.97184205e-05, 8.18184646e-05]), 'split3_train_score': array([0.95238095, 0.98809524, 0.98809524, 0.98809524, 0.98809524,\n", " 1. ]), 'split0_train_score': array([0.80952381, 0.96428571, 0.96428571, 0.98809524, 0.98809524,\n", " 0.98809524]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "8\n", "{'std_score_time': array([7.51373230e-06, 1.75252860e-05, 1.23119306e-05, 1.40419233e-06,\n", " 1.33812096e-06, 2.89677960e-05]), 'split2_train_score': array([0.89285714, 0.95238095, 0.95238095, 0.98809524, 0.98809524,\n", " 0.98809524]), 'split0_test_score': array([0.92857143, 0.92857143, 0.92857143, 0.92857143, 0.96428571,\n", " 0.96428571]), 'split1_train_score': array([0.92857143, 0.96428571, 0.96428571, 1. , 0.98809524,\n", " 1. ]), 'split2_test_score': array([0.92857143, 0.96428571, 0.96428571, 1. , 1. ,\n", " 1. ]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.0001846 , 0.00017673, 0.00015813, 0.00014585, 0.00014281,\n", " 0.00016087]), 'mean_train_score': array([0.92559524, 0.9672619 , 0.9702381 , 0.99107143, 0.98809524,\n", " 0.99404762]), 'mean_fit_time': array([0.00045431, 0.00032181, 0.00026774, 0.00026602, 0.00025386,\n", " 0.00027066]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.04374089, 0.03992979, 0.02961272, 0.02961272, 0.01785714,\n", " 0.02525381]), 'std_train_score': array([0.01951619, 0.01297291, 0.01330993, 0.00515491, 0. ,\n", " 0.00595238]), 'mean_test_score': array([0.89285714, 0.94642857, 0.95535714, 0.97321429, 0.98214286,\n", " 0.96428571]), 'split3_test_score': array([0.89285714, 1. , 1. , 1. , 1. ,\n", " 0.92857143]), 'rank_test_score': array([6, 5, 4, 2, 1, 3], dtype=int32), 'split1_test_score': array([0.82142857, 0.89285714, 0.92857143, 0.96428571, 0.96428571,\n", " 0.96428571]), 'std_fit_time': array([1.30075909e-04, 4.45017634e-05, 4.03202403e-06, 3.17363251e-06,\n", " 2.87773793e-06, 1.10786100e-05]), 'split3_train_score': array([0.94047619, 0.96428571, 0.97619048, 0.98809524, 0.98809524,\n", " 1. ]), 'split0_train_score': array([0.94047619, 0.98809524, 0.98809524, 0.98809524, 0.98809524,\n", " 0.98809524]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n", "\n", "9\n", "{'std_score_time': array([1.12099525e-05, 1.45513482e-06, 9.72341588e-06, 1.22007665e-06,\n", " 1.34241517e-05, 1.19803853e-06]), 'split2_train_score': array([0.92857143, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.97619048]), 'split0_test_score': array([0.78571429, 0.89285714, 0.89285714, 0.89285714, 0.89285714,\n", " 0.89285714]), 'split1_train_score': array([0.89285714, 0.96428571, 0.95238095, 0.97619048, 0.97619048,\n", " 0.98809524]), 'split2_test_score': array([0.92857143, 0.96428571, 0.96428571, 0.96428571, 0.96428571,\n", " 0.92857143]), 'param_C': masked_array(data=[1, 1, 10, 10, 100, 100],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object), 'mean_score_time': array([0.00018686, 0.0001651 , 0.00016868, 0.0001542 , 0.00015867,\n", " 0.00015223]), 'mean_train_score': array([0.90178571, 0.96130952, 0.9672619 , 0.97619048, 0.97619048,\n", " 0.98511905]), 'mean_fit_time': array([0.0004074 , 0.00030303, 0.00029409, 0.00029194, 0.00027001,\n", " 0.00028688]), 'params': [{'C': 1, 'gamma': 0.01}, {'C': 1, 'gamma': 0.1}, {'C': 10, 'gamma': 0.01}, {'C': 10, 'gamma': 0.1}, {'C': 100, 'gamma': 0.01}, {'C': 100, 'gamma': 0.1}], 'std_test_score': array([0.06858166, 0.03891874, 0.03891874, 0.04374089, 0.04374089,\n", " 0.03992979]), 'std_train_score': array([0.02286055, 0.01297291, 0.01297291, 0.00841794, 0.00841794,\n", " 0.00987091]), 'mean_test_score': array([0.88392857, 0.95535714, 0.95535714, 0.96428571, 0.96428571,\n", " 0.94642857]), 'split3_test_score': array([0.96428571, 1. , 1. , 1. , 1. ,\n", " 1. ]), 'rank_test_score': array([6, 3, 3, 1, 1, 5], dtype=int32), 'split1_test_score': array([0.85714286, 0.96428571, 0.96428571, 1. , 1. ,\n", " 0.96428571]), 'std_fit_time': array([4.94338875e-05, 4.75942249e-06, 1.19803853e-06, 5.52107629e-06,\n", " 6.87187531e-06, 1.12618083e-05]), 'split3_train_score': array([0.91666667, 0.94047619, 0.96428571, 0.97619048, 0.97619048,\n", " 0.97619048]), 'split0_train_score': array([0.86904762, 0.97619048, 0.98809524, 0.98809524, 0.98809524,\n", " 1. ]), 'param_gamma': masked_array(data=[0.01, 0.1, 0.01, 0.1, 0.01, 0.1],\n", " mask=[False, False, False, False, False, False],\n", " fill_value='?',\n", " dtype=object)}\n" ] } ], "source": [ "from sklearn.datasets import load_iris\n", "from matplotlib import pyplot as plt\n", "from sklearn.svm import SVC\n", "from sklearn.model_selection import GridSearchCV, cross_val_score, KFold, train_test_split\n", "import numpy as np\n", "\n", "print(__doc__)\n", "\n", "# Number of random trials\n", "NUM_TRIALS = 10\n", "\n", "# Load the dataset\n", "iris = load_iris()\n", "X_iris = iris.data\n", "y_iris = iris.target\n", "\n", "# Set up possible values of parameters to optimize over\n", "p_grid = {\"C\": [1, 10, 100],\n", " \"gamma\": [.01, .1]}\n", "\n", "# We will use a Support Vector Classifier with \"rbf\" kernel\n", "svm = SVC(kernel=\"rbf\")\n", "\n", "# Arrays to store scores\n", "val_scores = np.zeros((NUM_TRIALS,len(p_grid['C'])))\n", "test_scores = np.zeros((NUM_TRIALS,len(p_grid['C'])))\n", "\n", "best_params = []\n", "# Loop for each trial\n", "for i in range(NUM_TRIALS): #Test set level\n", " print()\n", " print(i)\n", " X_app,X_test,y_app,y_test = train_test_split(X_iris,y_iris)\n", " inner_cv = KFold(n_splits=4, shuffle=True, random_state=i)\n", " # Non_nested parameter search and scoring\n", " clf = GridSearchCV(estimator=svm, param_grid=p_grid, cv=inner_cv)\n", " clf.fit(X_app, y_app)\n", " print(clf.cv_results_)\n", " best_params.append(clf.best_params_)\n", " val_scores[i] = clf.best_score_\n", " test_scores[i] = clf.score(X_test,y_test)\n", "\n", "final_performance = np.mean(test_scores)\n" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "import networkx as nx\n", "import matplotlib.pyplot as plt\n", "import sys\n", "sys.path.insert(0, \"../\")\n", "from pygraph.utils.graphfiles import loadDataset\n", "from pygraph.utils.utils import kernel_train_test\n", "\n", "from sklearn.model_selection import GridSearchCV, KFold, cross_val_score, cross_validate\n", "from sklearn.kernel_ridge import KernelRidge\n", "from sklearn.metrics import classification_report\n", "from sklearn.metrics import accuracy_score, mean_squared_error, make_scorer\n", "\n", "from pygraph.kernels.treeletKernel import treeletkernel\n", "from pygraph.kernels.pathKernel import pathkernel\n", "from pygraph.kernels.spKernel import spkernel\n", "\n", "import numpy as np\n", "\n", "datafile = '../../../../datasets/acyclic/Acyclic/dataset_bps.ds'\n", "\n", "dataset, y = loadDataset(datafile)\n", "\n", "Kmatrix, run_time = treeletkernel(dataset)\n", "\n", "import matplotlib.pyplot as plt\n", "plt.matshow(Kmatrix)\n", "\n", "# Set the training, test\n", "# Note: the percentage can be set up by the user\n", "datasize = len(y)\n", "num_train = int((datasize * 90) / 100) # 90% (of entire dataset) for training\n", "num_test = datasize - num_train # 10% (of entire dataset) for test\n", "\n", "# Split the kernel matrix\n", "Kmatrix_train = Kmatrix[0:num_train, 0:num_train]\n", "Kmatrix_test = Kmatrix[num_train:datasize, 0:num_train]\n", "\n", "# Split the targets\n", "y_train = y[0:num_train]\n", "y_test = y[num_train:datasize]\n", "\n", "# Set the parameters by cross-validation\n", "tuned_parameters = [{'alpha': np.logspace(-10, 10, num = 100, base = 10)}]\n", "\n", "print(\"# Tuning hyper-parameters\")\n", "print()\n", "\n", "def loss_func_rmse(x_true, x_pred):\n", " return np.sqrt(mean_squared_error(x_true, x_pred))\n", "\n", "loss_rmse = make_scorer(loss_func_rmse, greater_is_better=False)\n", "inner_cv = KFold(n_splits=10, shuffle=True, random_state=10)\n", "outer_cv = KFold(n_splits=10, shuffle=True, random_state=10)\n", "\n", "kr = KernelRidge(kernel='precomputed')\n", "cv = GridSearchCV(estimator=kr, param_grid=tuned_parameters, cv=inner_cv, \n", " scoring=loss_rmse, return_train_score=True)\n", "cv.fit(Kmatrix, y)\n", "cv.get_params()\n", "\n", "print(\"Best parameters set found on development set:\")\n", "print()\n", "print(cv.best_params_)\n", "print()\n", "print(\"Best score set found on development set:\")\n", "print()\n", "print(-cv.best_score_)\n", "print()\n", "print(\"Grid scores on development set:\")\n", "print()\n", "means_train = cv.cv_results_['mean_train_score']\n", "stds_train = cv.cv_results_['std_train_score']\n", "means_test = cv.cv_results_['mean_test_score']\n", "stds_test = cv.cv_results_['std_test_score']\n", "for means_train, stds_train, means_test, stds_test, params \\\n", " in zip(means_train, stds_train, means_test, stds_test, cv.cv_results_['params']):\n", " print(\"train: %0.3f (+/-%0.03f) | test: %0.3f (+/-%0.03f) for %r\"\n", " % (-means_train, stds_train, -means_test, stds_test, params))\n", "print()\n", "\n", "print(Kmatrix.shape)\n", "# Nested CV with parameter optimization\n", "nested_score = cross_val_score(estimator=cv, X=Kmatrix, y=y, cv=outer_cv, \n", " scoring=loss_rmse)\n", "print(nested_score)\n", "# nested_scores[i] = nested_score.mean()\n", "\n", "# print(\"Detailed classification report:\")\n", "# print()\n", "# print(\"The model is trained on the full development set.\")\n", "# print(\"The scores are computed on the full evaluation set.\")\n", "# print()\n", "# # predict on the train and test set\n", "# y_pred_train = cv.predict(Kmatrix_train)\n", "# y_pred_test = cv.predict(Kmatrix_test)\n", "\n", "\n", "# print('y_train: ', y_train)\n", "# print('y_pred_train: ', y_pred_train)\n", "# print('y_test: ', y_test)\n", "# print('y_pred_test: ', y_pred_test)\n", "\n", "# # root mean squared error on train set\n", "# accuracy_train = np.sqrt(mean_squared_error(y_train, y_pred_train))\n", "# accuracy_test = np.sqrt(mean_squared_error(y_test, y_pred_test))\n", "# print('\\n Mean performance on train set: %3f' % accuracy_train)\n", "# print('\\n Mean performance on test set: %3f' % accuracy_test)\n", "\n", "# print()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/ljia/.local/lib/python3.5/site-packages/sklearn/cross_validation.py:41: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.\n", " \"This module will be removed in 0.20.\", DeprecationWarning)\n", "/home/ljia/.local/lib/python3.5/site-packages/sklearn/grid_search.py:42: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. This module will be removed in 0.20.\n", " DeprecationWarning)\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.base import BaseEstimator\n", "from sklearn.grid_search import GridSearchCV\n", "from sklearn.datasets.samples_generator import make_classification\n", "from sklearn.svm import LinearSVC, SVC\n", "from sklearn.metrics import f1_score, precision_score\n", "\n", "X_, y_ = make_classification(n_samples=200, n_features=100, random_state=0)\n", "# compute the training kernel matrix corresponding to the linear kernel\n", "K_train = np.dot(X_[:180], X_[:180].T)\n", "y_train = y_[:180]\n", "clf = SVC(kernel='precomputed')\n", "cv = GridSearchCV(clf, {'C': [0.1, 1.0]})\n", "cv.fit(K_train, y_train)\n", "# compute the test kernel matrix\n", "K_test = np.dot(X_[180:], X_[:180].T)\n", "y_test = y_[180:]\n", "y_pred = cv.predict(K_test)\n", "np.mean(y_pred == y_test) >= 0" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[2 3] [0 1]\n", "[0 1] [2 3]\n" ] } ], "source": [ "import numpy as np\n", "from sklearn.model_selection import KFold\n", "\n", "X = [\"a\", \"b\", \"c\", \"d\"]\n", "kf = KFold(n_splits=2)\n", "for train, test in kf.split(X):\n", " print(\"%s %s\" % (train, test))" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9733333333333334" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import numpy as np\n", "from sklearn.model_selection import train_test_split\n", "from sklearn import datasets\n", "from sklearn import svm\n", "\n", "iris = datasets.load_iris()\n", "iris.data.shape, iris.target.shape\n", "\n", "X_train, X_test, y_train, y_test = train_test_split(\n", " iris.data, iris.target, test_size=0.4, random_state=0)\n", "\n", "X_train.shape, y_train.shape\n", "\n", "X_test.shape, y_test.shape\n", "\n", "\n", "clf = svm.SVC(kernel='linear', C=1).fit(X_train, y_train)\n", "clf.score(X_test, y_test)\n", "\n", "\n", "from sklearn.model_selection import cross_val_score, cross_validate\n", "clf = svm.SVC(kernel='linear', C=1)\n", "scores = cross_validate(clf, iris.data, iris.target, cv=5, return_train_score=True)\n", "scores \n", "# print(\"Accuracy: %0.2f (+/- %0.2f)\" % (scores.mean(), scores.std() * 2))\n", "\n", "\n", "from sklearn.model_selection import cross_val_predict\n", "from sklearn.metrics import accuracy_score\n", "predicted = cross_val_predict(clf, iris.data, iris.target, cv=10)\n", "accuracy_score(iris.target, predicted) \n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Automatically created module for IPython interactive environment\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=0, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 1, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.913 (+/-0.085) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.079) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.079) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 10, 'gamma': 0.1}\n", "0.960 (+/-0.060) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.038) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=1, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.927 (+/-0.101) for {'C': 1, 'gamma': 0.01}\n", "0.947 (+/-0.064) for {'C': 1, 'gamma': 0.1}\n", "0.940 (+/-0.086) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.027) for {'C': 10, 'gamma': 0.1}\n", "0.960 (+/-0.027) for {'C': 100, 'gamma': 0.01}\n", "0.933 (+/-0.080) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=2, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.920 (+/-0.039) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.060) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.059) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.066) for {'C': 100, 'gamma': 0.01}\n", "0.953 (+/-0.070) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=3, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.940 (+/-0.117) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.046) for {'C': 10, 'gamma': 0.1}\n", "0.960 (+/-0.046) for {'C': 100, 'gamma': 0.01}\n", "0.940 (+/-0.059) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=4, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.913 (+/-0.042) for {'C': 1, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 1, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.044) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.038) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.037) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=5, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.947 (+/-0.066) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.059) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.980 (+/-0.023) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.023) for {'C': 100, 'gamma': 0.01}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=6, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.920 (+/-0.084) for {'C': 1, 'gamma': 0.01}\n", "0.947 (+/-0.064) for {'C': 1, 'gamma': 0.1}\n", "0.953 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.001) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.039) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=7, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.947 (+/-0.124) for {'C': 1, 'gamma': 0.01}\n", "0.967 (+/-0.087) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.058) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.058) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.933 (+/-0.096) for {'C': 100, 'gamma': 0.1}\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=8, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.940 (+/-0.078) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.026) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.059) for {'C': 10, 'gamma': 0.01}\n", "0.973 (+/-0.065) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.084) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=9, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.927 (+/-0.129) for {'C': 1, 'gamma': 0.01}\n", "0.953 (+/-0.045) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.028) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.059) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.038) for {'C': 100, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=10, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.920 (+/-0.101) for {'C': 1, 'gamma': 0.01}\n", "0.953 (+/-0.044) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.973 (+/-0.065) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 100, 'gamma': 0.01}\n", "0.973 (+/-0.065) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=11, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.947 (+/-0.083) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.026) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.043) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.1}\n", "0.967 (+/-0.022) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.037) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=12, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 1, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.927 (+/-0.069) for {'C': 1, 'gamma': 0.01}\n", "0.973 (+/-0.037) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.027) for {'C': 10, 'gamma': 0.1}\n", "0.967 (+/-0.022) for {'C': 100, 'gamma': 0.01}\n", "0.940 (+/-0.024) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=13, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.920 (+/-0.091) for {'C': 1, 'gamma': 0.01}\n", "0.973 (+/-0.037) for {'C': 1, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.059) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.053) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.065) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=14, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.920 (+/-0.086) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.027) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.027) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 100, 'gamma': 0.01}\n", "0.960 (+/-0.059) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=15, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 1, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.953 (+/-0.044) for {'C': 1, 'gamma': 0.01}\n", "0.973 (+/-0.037) for {'C': 1, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 10, 'gamma': 0.01}\n", "0.973 (+/-0.038) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.038) for {'C': 100, 'gamma': 0.01}\n", "0.953 (+/-0.059) for {'C': 100, 'gamma': 0.1}\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=16, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.900 (+/-0.088) for {'C': 1, 'gamma': 0.01}\n", "0.953 (+/-0.024) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.027) for {'C': 10, 'gamma': 0.01}\n", "0.973 (+/-0.037) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.940 (+/-0.057) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=17, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.920 (+/-0.084) for {'C': 1, 'gamma': 0.01}\n", "0.967 (+/-0.059) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.059) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.044) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.940 (+/-0.043) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=18, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 1, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.927 (+/-0.059) for {'C': 1, 'gamma': 0.01}\n", "0.973 (+/-0.054) for {'C': 1, 'gamma': 0.1}\n", "0.973 (+/-0.054) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.045) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.038) for {'C': 100, 'gamma': 0.01}\n", "0.953 (+/-0.070) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=19, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.907 (+/-0.057) for {'C': 1, 'gamma': 0.01}\n", "0.967 (+/-0.057) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.043) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.023) for {'C': 100, 'gamma': 0.01}\n", "0.960 (+/-0.027) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=20, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.893 (+/-0.107) for {'C': 1, 'gamma': 0.01}\n", "0.953 (+/-0.059) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.059) for {'C': 10, 'gamma': 0.01}\n", "0.973 (+/-0.038) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.023) for {'C': 100, 'gamma': 0.01}\n", "0.953 (+/-0.080) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=21, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.947 (+/-0.038) for {'C': 1, 'gamma': 0.01}\n", "0.973 (+/-0.065) for {'C': 1, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.980 (+/-0.044) for {'C': 10, 'gamma': 0.1}\n", "0.987 (+/-0.046) for {'C': 100, 'gamma': 0.01}\n", "0.973 (+/-0.065) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=22, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.913 (+/-0.078) for {'C': 1, 'gamma': 0.01}\n", "0.940 (+/-0.044) for {'C': 1, 'gamma': 0.1}\n", "0.953 (+/-0.043) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.059) for {'C': 10, 'gamma': 0.1}\n", "0.953 (+/-0.043) for {'C': 100, 'gamma': 0.01}\n", "0.960 (+/-0.045) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=23, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.940 (+/-0.057) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.027) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.1}\n", "0.967 (+/-0.022) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.091) for {'C': 100, 'gamma': 0.1}\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=24, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.907 (+/-0.048) for {'C': 1, 'gamma': 0.01}\n", "0.953 (+/-0.070) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.059) for {'C': 10, 'gamma': 0.01}\n", "0.973 (+/-0.037) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.947 (+/-0.066) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=25, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.913 (+/-0.069) for {'C': 1, 'gamma': 0.01}\n", "0.953 (+/-0.043) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 100, 'gamma': 0.01}\n", "0.953 (+/-0.068) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=26, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 1, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.907 (+/-0.091) for {'C': 1, 'gamma': 0.01}\n", "0.967 (+/-0.059) for {'C': 1, 'gamma': 0.1}\n", "0.967 (+/-0.059) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 10, 'gamma': 0.1}\n", "0.967 (+/-0.059) for {'C': 100, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=27, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 1, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.947 (+/-0.001) for {'C': 1, 'gamma': 0.01}\n", "0.980 (+/-0.044) for {'C': 1, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 10, 'gamma': 0.01}\n", "0.980 (+/-0.023) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.967 (+/-0.044) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=28, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 100, 'gamma': 0.01}\n", "\n", "Grid scores on development set:\n", "\n", "0.933 (+/-0.060) for {'C': 1, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 1, 'gamma': 0.1}\n", "0.960 (+/-0.060) for {'C': 10, 'gamma': 0.01}\n", "0.960 (+/-0.060) for {'C': 10, 'gamma': 0.1}\n", "0.973 (+/-0.037) for {'C': 100, 'gamma': 0.01}\n", "0.960 (+/-0.089) for {'C': 100, 'gamma': 0.1}\n", "\n", "clf.params: {'error_score': 'raise', 'estimator__probability': False, 'estimator__gamma': 'auto', 'estimator__class_weight': None, 'pre_dispatch': '2*n_jobs', 'estimator__random_state': None, 'estimator': SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False), 'estimator__tol': 0.001, 'estimator__shrinking': True, 'n_jobs': 1, 'param_grid': {'C': [1, 10, 100], 'gamma': [0.01, 0.1]}, 'estimator__max_iter': -1, 'estimator__verbose': False, 'iid': True, 'estimator__degree': 3, 'estimator__C': 1.0, 'fit_params': None, 'estimator__kernel': 'rbf', 'cv': KFold(n_splits=4, random_state=29, shuffle=True), 'scoring': None, 'verbose': 0, 'refit': True, 'return_train_score': 'warn', 'estimator__decision_function_shape': 'ovr', 'estimator__coef0': 0.0, 'estimator__cache_size': 200}\n", "\n", "Best parameters set found on development set:\n", "\n", "{'C': 10, 'gamma': 0.1}\n", "\n", "Grid scores on development set:\n", "\n", "0.940 (+/-0.022) for {'C': 1, 'gamma': 0.01}\n", "0.967 (+/-0.022) for {'C': 1, 'gamma': 0.1}\n", "0.973 (+/-0.001) for {'C': 10, 'gamma': 0.01}\n", "0.980 (+/-0.044) for {'C': 10, 'gamma': 0.1}\n", "0.980 (+/-0.044) for {'C': 100, 'gamma': 0.01}\n", "0.953 (+/-0.043) for {'C': 100, 'gamma': 0.1}\n", "\n", "Average difference of 0.007742 with std. dev. of 0.007688.\n" ] }, { "data": { "image/png": "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c+bMSs6ms2bNGr9z5865ZLIoKSmJevbsWfu55567cvbs2YjIyMjj48aNu3Lz5s1Cbdu2vbl27dqyetz4+HivsLAw38GDB9+0Jw9PqPfhw4e9TOs9a9asihUrVkw9efJk5KlTp44tW7YspmjRok6ZOOt+PBUKT0YJtzzGy8uLhw0bdmXWrFnZPsQnTpwo+vDDD9epU6dOQMuWLeucOnWqKAD079/ff8SIEdWbNGlSr1q1ao2WL19eNnvKQkhISPwPP/xQ7tKlS17G4X5+flc+/fTTco0aNapfr169gCFDhjyQlpaGtLQ09O/f37927doN6tSpE/DWW29VXL58edmIiAifYcOG1axXr15AYmIi7dmzxyc4OLhugwYN6rdp06b22bNniwDAnj17fOrWrRtQt27dgLlz55pd/v7555+Xa9q0aeKQIUMyPtw9evS4FRwcnBwSEnJt48aN5fTwtWvXlmnbtm1CyZIlrY5M/Pz8MqwdLNUbAO6Verdp0+a2ab3j4uKKVK1aNUMaNW7cOKV48eIMAAsXLixfp06dgLp16wb06dOnBpBzGxoyZMj9gYGB9caOHVstISGh0IABA/wbNWpUv379+gFr1qwpY+1+O8jnuZSuu/C0+gCeWScl3NzBpEmTLn/77bfl4uPjs3yIx44de//QoUPjT548GTlo0KD4sWPHVtfPXbp0qUhoaGjU5s2bT73xxhtVLaXt6+ubHhIScnX27NlZhOfFixcTN23aVC40NDQqKioqslChQrx48eLy+/fv94mLiyty6tSpYydPnox8/vnn459++unrDRs2TFq1atWZqKioyCJFimDChAn3b968+fSxY8eODx8+/Oqrr75aFQCeeeYZ/48//vjciRMnIs2XCIiIiCjetGnTJHPn+vXrl3Ds2DGf//77zwsANm7cWC4kJOSaLffxvvvuy5g/tVTvQ4cOed8r9R46dGicabzRo0dfXbBgwX1BQUH1JkyYUOXo0aPFACA0NNR7zpw5lXft2nXyxIkTkUuWLDkH5NyG4uLiih46dChq6dKlsdOnT6/8yCOPJBw9evT4nj17Trz22mvVEhISXP49YGaP+nB6Wn0Az6wToISbWyhXrpxhwIAB8bNnz87S4//nn39KjB49+hoAjB079lpYWJivfq5Xr143vLy80KxZs+T4+Pgc1WZTp069/PXXX5e/fv16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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.datasets import load_iris\n", "from matplotlib import pyplot as plt\n", "from sklearn.svm import SVC\n", "from sklearn.model_selection import GridSearchCV, cross_val_score, KFold\n", "import numpy as np\n", "\n", "print(__doc__)\n", "\n", "# Number of random trials\n", "NUM_TRIALS = 30\n", "\n", "# Load the dataset\n", "iris = load_iris()\n", "X_iris = iris.data\n", "y_iris = iris.target\n", "\n", "# Set up possible values of parameters to optimize over\n", "p_grid = {\"C\": [1, 10, 100],\n", " \"gamma\": [.01, .1]}\n", "\n", "# We will use a Support Vector Classifier with \"rbf\" kernel\n", "svm = SVC(kernel=\"rbf\")\n", "\n", "# Arrays to store scores\n", "non_nested_scores = np.zeros(NUM_TRIALS)\n", "nested_scores = np.zeros(NUM_TRIALS)\n", "\n", "# Loop for each trial\n", "for i in range(NUM_TRIALS):\n", "\n", " # Choose cross-validation techniques for the inner and outer loops,\n", " # independently of the dataset.\n", " # E.g \"LabelKFold\", \"LeaveOneOut\", \"LeaveOneLabelOut\", etc.\n", " inner_cv = KFold(n_splits=4, shuffle=True, random_state=i)\n", " outer_cv = KFold(n_splits=4, shuffle=True, random_state=i)\n", "\n", " # Non_nested parameter search and scoring\n", " clf = GridSearchCV(estimator=svm, param_grid=p_grid, cv=inner_cv)\n", " clf.fit(X_iris, y_iris)\n", " print('clf.params: ', clf.get_params())\n", " print()\n", " non_nested_scores[i] = clf.best_score_\n", " \n", " print(\"Best parameters set found on development set:\")\n", " print()\n", " print(clf.best_params_)\n", " print()\n", " print(\"Grid scores on development set:\")\n", " print()\n", " means = clf.cv_results_['mean_test_score']\n", " stds = clf.cv_results_['std_test_score']\n", " for mean, std, params in zip(means, stds, clf.cv_results_['params']):\n", " print(\"%0.3f (+/-%0.03f) for %r\"\n", " % (mean, std * 2, params))\n", " print()\n", "\n", " # Nested CV with parameter optimization\n", " nested_score = cross_val_score(clf, X=X_iris, y=y_iris, cv=outer_cv)\n", " nested_scores[i] = nested_score.mean()\n", "\n", "score_difference = non_nested_scores - nested_scores\n", "\n", "print(\"Average difference of {0:6f} with std. dev. of {1:6f}.\"\n", " .format(score_difference.mean(), score_difference.std()))\n", "\n", "# Plot scores on each trial for nested and non-nested CV\n", "plt.figure()\n", "plt.subplot(211)\n", "non_nested_scores_line, = plt.plot(non_nested_scores, color='r')\n", "nested_line, = plt.plot(nested_scores, color='b')\n", "plt.ylabel(\"score\", fontsize=\"14\")\n", "plt.legend([non_nested_scores_line, nested_line],\n", " [\"Non-Nested CV\", \"Nested CV\"],\n", " bbox_to_anchor=(0, .4, .5, 0))\n", "plt.title(\"Non-Nested and Nested Cross Validation on Iris Dataset\",\n", " x=.5, y=1.1, fontsize=\"15\")\n", "\n", "# Plot bar chart of the difference.\n", "plt.subplot(212)\n", "difference_plot = plt.bar(range(NUM_TRIALS), score_difference)\n", "plt.xlabel(\"Individual Trial #\")\n", "plt.legend([difference_plot],\n", " [\"Non-Nested CV - Nested CV Score\"],\n", " bbox_to_anchor=(0, 1, .8, 0))\n", "plt.ylabel(\"score difference\", fontsize=\"14\")\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.2" } }, "nbformat": 4, "nbformat_minor": 2 }