Skip to content

Instantly share code, notes, and snippets.

@daxiongshu
Created June 10, 2019 03:47
Show Gist options
  • Save daxiongshu/01c12cf5e502be3d54b87cda1cf2d14f to your computer and use it in GitHub Desktop.
Save daxiongshu/01c12cf5e502be3d54b87cda1cf2d14f to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(200000, 202)\n"
]
}
],
"source": [
"import cudf as gd\n",
"import pandas as pd\n",
"import time\n",
"import xgboost as xgb\n",
"import warnings\n",
"warnings.filterwarnings(\"ignore\")\n",
"\n",
"PATH = '../input'\n",
"cols = ['ID_code', 'target'] + ['var_%d'%i for i in range(200)]\n",
"dtypes = ['int32', 'int32'] + ['float32' for i in range(200)]\n",
"train_gd = gd.read_csv('%s/train.csv'%PATH,names=cols,dtype=dtypes,skiprows=1)\n",
"print(train_gd.shape)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 39.6 s, sys: 1min 55s, total: 2min 34s\n",
"Wall time: 3min 41s\n"
]
}
],
"source": [
"%%time\n",
"for i in range(200):\n",
" col = 'var_%d'%i\n",
" var_count = train_gd.groupby(col).agg({col:'count'})\n",
" var_count.columns = ['%s_count'%col]\n",
" var_count = var_count.reset_index()\n",
" train_gd = train_gd.merge(var_count,on=col,how='left')"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 1min 42s, sys: 3min 25s, total: 5min 7s\n",
"Wall time: 5min 41s\n"
]
}
],
"source": [
"%%time\n",
"for i in range(200):\n",
" col = 'var_%d'%i\n",
" dg = train_gd[[col,'%s_count'%col,'ID_code']].query(\"%s_count > 1\"%col)\n",
" dg.columns = ['%s_gt1'%col,'%s_count'%col,'ID_code']\n",
" train_gd = train_gd.merge(dg[['ID_code','%s_gt1'%col]],on='ID_code',how='left')"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"train,valid = train_gd[:-10000],train_gd[-10000:]"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"x_train = train.drop(['target','ID_code'])\n",
"y_train = train['target']\n",
"x_valid = valid.drop(['target','ID_code'])\n",
"y_valid = valid['target']"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 1min 24s, sys: 12.2 s, total: 1min 36s\n",
"Wall time: 7.17 s\n"
]
}
],
"source": [
"%%time\n",
"xgb_params = {\n",
" 'objective': 'binary:logistic',\n",
" 'tree_method': 'gpu_hist',\n",
" 'max_depth': 1, \n",
" 'eta':0.1,\n",
" 'silent':1,\n",
" 'subsample':0.5,\n",
" 'colsample_bytree': 0.05, \n",
" 'eval_metric':'auc',\n",
"}\n",
"dtrain = xgb.DMatrix(data=x_train.to_pandas(), label=y_train.to_pandas())\n",
"dvalid = xgb.DMatrix(data=x_valid.to_pandas(), label=y_valid.to_pandas())"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0]\teval-auc:0.525513\ttrain-auc:0.530052\n",
"Multiple eval metrics have been passed: 'train-auc' will be used for early stopping.\n",
"\n",
"Will train until train-auc hasn't improved in 30 rounds.\n",
"[1000]\teval-auc:0.891935\ttrain-auc:0.897651\n",
"[2000]\teval-auc:0.908812\ttrain-auc:0.915395\n",
"[3000]\teval-auc:0.915829\ttrain-auc:0.921903\n",
"[4000]\teval-auc:0.918794\ttrain-auc:0.925332\n",
"[5000]\teval-auc:0.91931\ttrain-auc:0.927491\n",
"[6000]\teval-auc:0.92052\ttrain-auc:0.929105\n",
"[7000]\teval-auc:0.91998\ttrain-auc:0.93053\n",
"[8000]\teval-auc:0.919491\ttrain-auc:0.931805\n",
"[9000]\teval-auc:0.919273\ttrain-auc:0.93297\n",
"[9999]\teval-auc:0.919236\ttrain-auc:0.933955\n"
]
}
],
"source": [
"watchlist = [(dvalid, 'eval'), (dtrain, 'train')]\n",
"clf = xgb.train(xgb_params, dtrain=dtrain,\n",
" num_boost_round=10000,evals=watchlist,\n",
" early_stopping_rounds=30,maximize=True,\n",
" verbose_eval=1000)\n",
"yp = clf.predict(dvalid)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAa8AAAEWCAYAAADRrhi8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3dfZzVZZ3/8ddbwXsNCpTMkAhRDETCMFrLsXJVoDJjcQttUDa1G1uM8mYxAzcXHRHFhbUVajMwRa1Vkd2o1ZncRcBAB8cbvAV/DJnoqM2Agw3D5/fH9wsdh3Pmzjlz5jDv5+MxD8735lzfz/kA5zPXda7zvRQRmJmZFZO9Ch2AmZlZW7l4mZlZ0XHxMjOzouPiZWZmRcfFy8zMio6Ll5mZFR0XL7M9nKSfSPphoeMw60jy97zMspO0ATgMaMzYPTgi/vge2iwBFkXEEe8tuuIk6edAdURcWehYrLi552XWvC9ExEEZP+0uXB1BUo9CXv+9kLR3oWOwPYeLl1k7SPqkpEckvSVpbdqj2nnsPEnPSKqT9JKkC9P9BwL/DRwuaUv6c7ikn0v6ccbzSyRVZ2xvkHSZpCeArZJ6pM/7laTXJK2X9N1mYt3V/s62JV0qabOkVySdKWmMpOckvSHpnzKeO13SPZIWp6/nMUnDM44PkVSR5uEpSV9sct1bJP2XpK3AZGAicGn62pek510u6cW0/aclfTmjjUmS/k/SLElvpq/1jIzj75f0H5L+mB6/N+PYOEmVaWyPSDqu1X/B1uW5eJm1kaQPAUuBHwPvB74P/EpS3/SUzcA44BDgPOBGSR+PiK3AGcAf29GT+yowFugF7ACWAGuBDwGfA6ZIOq2VbfUD9kufexUwHzgHGAl8GvihpI9knP8l4O70tf4SuFdST0k90zh+CxwKXAzcLunojOd+DbgGOBj4BXA7UJa+9i+k57yYXvd9wAxgkaQPZrRxIvAs0AcoA34qSemxhcABwMfSGG4EkDQC+BlwIfAB4N+B+yXt28ocWRfn4mXWvHvT39zfyvit/hzgvyLivyJiR0T8DlgNjAGIiKUR8WIkfk/y5v7p9xjHzRGxMSLqgU8AfSPi6oj4S0S8RFKA/r6VbTUA10REA3AnSVGYExF1EfEU8DQwPOP8NRFxT3r+bJLC98n05yDg2jSOh4AHSArtTvdFxPI0T9uyBRMRd0fEH9NzFgPPA6MyTnk5IuZHRCNwG/BB4LC0wJ0BXBQRb0ZEQ5pvgAuAf4+IVRHRGBG3Ae+kMdseoGjHz806yZkR8T9N9h0J/J2kL2Ts6wmUA6TDWj8CBpP8gngAUPUe49jY5PqHS3orY9/ewP+2sq2atBAA1Kd/vppxvJ6kKO127YjYkQ5pHr7zWETsyDj3ZZIeXba4s5L0deB7wIB010EkBXWnP2Vc/+2003UQSU/wjYh4M0uzRwKlki7O2LdPRtxW5Fy8zNpuI7AwIr7R9EA6LPUr4OskvY6GtMe2c5gr2/TerSQFbqd+Wc7JfN5GYH1EHNWe4NvhwzsfSNoLOALYOdz5YUl7ZRSw/sBzGc9t+nrftS3pSJJe4+eAFRHRKKmSv+arORuB90vqFRFvZTl2TURc04p2rAh52NCs7RYBX5B0mqS9Je2XToQ4guS3+32B14DtaS/sbzOe+yrwAUnvy9hXCYxJJx/0A6a0cP1Hgbp0Esf+aQxDJX2iw17hu42UdFY603EKyfDbSmAV8DbJBIye6aSVL5AMRebyKjAwY/tAkoL2GiSTXYChrQkqIl4hmQDzb5J6pzF8Jj08H7hI0olKHChprKSDW/marYtz8TJro4jYSDKJ4Z9I3nQ3Aj8A9oqIOuC7wF3AmyQTFu7PeO464A7gpfRztMNJJh2sBTaQfD62uIXrN5JMCDkeWA+8DiwgmfCQD/cBZ5O8nnOBs9LPl/5CUqzOSGP4N+Dr6WvM5afAsTs/Q4yIp4EbgBUkhW0YsLwNsZ1L8hneOpKJMlMAImI18A1gbhr3C8CkNrRrXZy/pGxmOUmaDgyKiHMKHYtZJve8zMys6Lh4mZlZ0fGwoZmZFR33vMzMrOj4e16dpFevXjFo0KBCh9Elbd26lQMPPLDQYXRJzk12zktue1pu1qxZ83pE9G2638Wrkxx22GGsXr260GF0SRUVFZSUlBQ6jC7JucnOecltT8uNpJez7fewoZmZFR0XLzMzKzouXmZmVnRcvMzMrOi4eJmZWdFx8TIzs6Lj4mVmZkXHxcvMzIqOi5eZmRUdFy8zMys6Ll5mZlZ0XLzMzKzouHiZmVnRcfEyM7Oi4+JlZmYdorGxkREjRjBu3DgAJk+ezPDhwznuuOMYP348W7Zs6bBruXiZmVmHmDNnDkOGDNm1feONN7J27VqeeOIJ+vfvz9y5czvsWl6Msh0knQ1MA/YGHoiIy1p6Tn1DIwMuX5r32IrR1GHbmeTcZOXcZOe85JaP3Gy4dmyL51RXV7N06VKmTZvG7NmzATjkkEMAiAjq6+uR1GExueeVgxK75UfSB4Drgc9FxMeAfpI+1+kBmpl1IVOmTKGsrIy99nr32+Z5551Hv379WLduHRdffHGHXW+P73lJuhbYGBHz0u3pwHbgFKA30BO4MiLukzQAWAasAkYCY4CmS1APBJ6PiNfS7f8BvgI8mOXaFwAXAPTp05erhm3vyJe2xzhs/+S3Rdudc5Od85JbPnJTUVHR7PEVK1bQ0NBAXV0dlZWV1NTU7HpOaWkp55xzDjfffDMzZszgjDPO6JCYFBEd0lBXJWkEcFNEnJxuPw2cBvw5Imol9QFWAkcBRwIvAZ+KiJU52usNVAEnAdXAYmCfiPhCc3H0Hzgo9powp4Ne1Z5l6rDt3FC1x/8e1S7OTXbOS275yE1Lw4ZXXHEFCxcupEePHmzbto3a2lrOOussFi1atOuchx9+mLKyMh544IE2XVvSmog4YbcDEbHH/wDPAIcDw4HlJL2tucATQCVQD/QDBgDrW9HeF0h6ZyuAG4B7W3rO4MGDw7IrLy8vdAhdlnOTnfOSW6FzU15eHmPHjo0dO3bE888/HxERO3bsiKlTp8bUqVPb3B6wOrK8p3aXX13uBsaTFKjFwESgLzAyIhokbQD2S8/d2lJjEbEEWAK7hgYb8xCzmVnRighKS0upra0lIhg+fDi33HJLh7XfXYrXYmA+0Ac4GZgAbE4L1ykkw4WtJunQiNicDiF+K23PzKzbKykpoaSkBIDly5fn7TrdonhFxFOSDgY2RcQrkm4HlkiqAlYD69rY5BxJw9PHV0fEcx0Zr5mZNa9bFC+AiBiW8fh1YHSOU4e2oq2vdlRcZmbWdv6el5mZFZ1u0/NqD0mrgH2b7D43IqoKEY+ZmSVcvJoREScWOgYzM9udhw3NzKzouHiZmVnRcfEyM7Oi4+JlZmZFx8XLzMyKjouXmZkVHRcvMzPrEI2NjYwYMYJx48YBMHnyZIYPH85xxx3H+PHj2bJlS4ddy8XLzMw6xJw5cxgyZMiu7RtvvJG1a9fyxBNP0L9/f+bOndth1/KXlNtI0gEkS6x8lGQplCURcXlLz6tvaGTA5UvzHV5RmjpsO5Ocm6ycm+ycl9zykZuWFqMEqK6uZunSpUybNo3Zs2cDcMghhwDJ8ij19fVI6rCY3PPKQYlc+ZkVEccAI4C/kdQx61qbmRWpKVOmUFZWxl57vftt87zzzqNfv36sW7eOiy++uMOup2Shyj2XpGuBjRExL92eDmwHTgF6k6yqfGVE3CdpALCMZJXkkcCYiHi5hfbnAE9GxPwsxy4ALgDo06fvyKtu2u0UAw7bH16tL3QUXZNzk53zkls+cjPsQ+9r9viKFStYuXIll1xyCZWVlSxevJiZM2fuOt7Y2MjNN9/MMcccwxlntO13/VNOOWVNRJzQdH93KF4jgJsi4uR0+2ngNODPEVErqQ+wEjiKZFHKl4BPRcTKVrTdC3gM+HxEvNTcuf0HDoq9Jsx5by9mDzV12HZuqPIIdjbOTXbOS275yE1Lw4ZXXHEFCxcupEePHmzbto3a2lrOOussFi1atOuchx9+mLKyMh544IE2XVtS1uJFROzxP8AzwOHAcGA5SW9rLvAEUAnUA/2AAcD6VrbZA/hvYEprzh88eHBYduXl5YUOoctybrJzXnIrdG7Ky8tj7NixsWPHjnj++ecjImLHjh0xderUmDp1apvbA1ZHlvfU7vKry93AeJICtRiYCPQFRkZEg6QNwH7puVtb2eatwPMRcVMHx2pmVvQigtLSUmpra4kIhg8fzi233NJh7XeX4rUYmA/0AU4GJgCb08J1CslwYatJ+jHwPuAfOjpQM7NiVlJSQklJCQDLly/P23W6xWzDiHgKOBjYFBGvALcDJ0iqAr4OrGttW5KOAKYBxwKPSaqU5CJmZtaJukvPi4gYlvH4dWB0jlOHttBONdBxX1YwM7M26xY9LzMz27N0m55Xe0haBezbZPe5EVFViHjMzCzh4tWMiDix0DGYmdnuPGxoZmZFx8XLzMyKjouXmZkVHRcvMzMrOi5eZmZWdFy8zMys6Lh4mZlZh2hsbGTEiBGMGzcOgMmTJzN8+HCOO+44xo8fz5YtWzrsWkVTvCRdI2mjpC1N9k+S9Fp6j8Hd7jMo6RBJ1ZLmtvO6Z0o6NmP77yQ9JWmHpN3XmDEz66bmzJnDkCFDdm3feOONrF27lieeeIL+/fszd2673oaz6lJfUpYkkgUyd2Q5vIRkDa7nsxxbHBHfydHsPwMPv4ewzgQeAJ5Ot58EzgL+vS2N1Dc0MuDype8hjD3X1GHbmeTcZOXcZOe85JaP3LS0GCVAdXU1S5cuZdq0acyePRuAQw45BEiWR6mvryd5i+8Yeel5SbpW0rcztqdLulLSg5Iek1Ql6UvpsQGSnpX0C5LC8OFsbUbEyvSO8G2JYyRwGPDbVpw7WdJzkh6VNF/SXEmfAr4IXJ/26j4aEc9ExLNticPMbE83ZcoUysrK2Guvd5eV8847j379+rFu3TouvvjiDrtevnpei4GbgHnp9gTgNODmiKiV1AdYKen+9PhRQGlErGzn9b4i6TPAc8AlEbFR0l7ADcA5wOebe7Kkw4EfAh8H6oCHgLUR8Uga4wMRcU9bg5J0AXABQJ8+fblq2Pa2NtEtHLZ/8tui7c65yc55yS0fuamoqGj2+IoVK2hoaKCuro7Kykpqamp2Pae0tJRzzjmHm2++mRkzZnDGGWd0SEx5KV4R8bikQ9Oi0Bd4E/gTcGNaZHYAHyLpFQG8/B4K1xLgjoh4R9KFwG3AZ4FvAf8VEdWt6KqOAn4fEW8ASLobGNzOeHaJiFtJVlym/8BBcUNVlxql7TKmDtuOc5Odc5Od85JbPnKzYWJJs8eXLVvGmjVrmDRpEtu2baO2tpYFCxawaNGiXef07NmTsrIyrrvuug6JKZ9/+3cD44F+JD2xiSSFbGS6gvEGYL/03K3tvUhE1GRsLgDK0sejgU9L+hZwELCPpC0RcXl7r/Ve7N9zb55txbhxd1RRUdHif47uyrnJznnJrRC5mTlzJjNnztx1/VmzZrFw4UJeeOEFBg0aRERw//33c8wxx3TYNfNZvBYD84E+wMkkQ4eb08J1CnBkR1xE0gczPgv7IvAMQERMzDhnEnBCM4XrD8BNknqTDBt+Bdi57EkdySrMZmbWShFBaWkptbW1RATDhw/nlltu6bD281a8IuIpSQcDmyLiFUm3A0skVQGrgXVtaU9SGfA14ABJ1cCCiJgOfFfSF4HtwBvApHbEuknSvwCPpm2sA/6cHr4TmC/puyQ9yeOAfyXpRS6VVBkRp7X1mmZme6KSkhJKSkoAWL58ed6uk9dB44gYlvH4dZKhvGyGtqKtS4FLs+y/Ariihef+HPh5C5f4ZUTcKqkH8J/AvelzlwPHZpz3YnrczMwKpGi+pNwJpkuqJJmuv560eJmZWdfT5abrSFoF7Ntk97kRUZXt/A5s//sd0b6ZmeVflyteEXFiMbdvZmb552FDMzMrOi5eZmZWdFy8zMys6Lh4mZlZ0XHxMjOzouPiZWZmRcfFy8zMWq2xsZERI0Ywbtw4ACZOnMjRRx/N0KFDOf/882loaOiUOFy8zMys1ebMmcOQIUN2bU+cOJF169ZRVVVFfX09CxYs6JQ4utyXlHORdA3wdaB3RByUsf9I4GckN8p9AzgnIqrTY6XAlempP46I29px3TOB5yLi6XT774DpwBBgVESsbk079Q2NDPCy5Vl5SffcnJvsnJfc2pubDa1Ysqm6upqlS5cybdo0Zs+eDcCYMWN2HR81ahTV1dVtvnZ7dKmelxK5YlpCsmhkU7OAX0TEccDVwMy0rfcDPwJOTJ/3o3TJk7Y6k3ffmPdJ4Czg4Xa0ZWZWtKZMmUJZWRl77bX723RDQwMLFy7k9NNP75RY8tLzknQtsDEi5qXb00mWLDkF6A30BK6MiPskDQCWAauAkcAY4OWmbe5caTnLqsjHAt9LH5fz1xvqngb8LmN15N8BpwN35Ih5MnAZ8BawFngH+CXJGmEnS7oS+EpEPJMjjmxtXgBcANCnT1+u8rLlWXlJ99ycm+ycl9zam5uKiopmj69YsYKGhgbq6uqorKykpqbmXc+ZNWsWAwcOpLGxscW2OkK+hg0XAzcB89LtCSTF5OaIqJXUB1gp6f70+FFA6c4C1UZrSXpCc4AvAwdL+gDwIWBjxnnV6b7dSDoc+CHwcZLFJx8C1kbEI2mMD0TEPW0NLCJuBW4F6D9wUHjZ8uy8pHtuzk12zktu7c1NS6svL1u2jDVr1jBp0iS2bdtGbW0tCxYsYNGiRcyYMYMePXpw1113Ze2V5UNe/vYj4nFJh6ZFoS/wJvAn4EZJnwF2kBSSw9KnvNzOwgXwfWBuulryw8AmoLGNbYwCfp/RS7sbGNzOeLLav+fePNuKMeXuyEu65+bcZOe85Jav3MycOZOZM2fuusasWbNYtGgRCxYsYNmyZTz44IOdVrggv5953U2y8vDZJD2xiSSFbGREHA+8CuyXnru1vReJiD9GxFkRMQKYlu57i6SIfTjj1CPSfWZm1kEuuugiXn31VUaPHs3xxx/P1Vdf3SnXzWe/ezEwH+gDnEwydLg5IhoknQIc2REXSYcg34iIHSQrKv8sPbQM+JeMSRp/S+4Vl/8A3JSeWwd8Bdi5flgdcHBHxGpmticoKSmhpKQEgO3bC/PZY956XhHxFMmb/qaIeAW4HThBUhXJlPd1bWlPUpmkauAASdXpJBCAEuBZSc+RDENek17/DeCfSQrTH4Crdw4LZol1E/AvwKPAcmAD8Of08J3ADyQ9Lumjkr6cxjEaWCppWVteh5mZvXd5/cQzIoZlPH6d5A0/m6GtaOtS4NIs++8Bsk6miIif8deeWEt+GRG3SuoB/CfprMWIWM67p8q/mB43M7MC6VLf8yqw6ZIqSb7HtZ6/Trk3M7MupsvNNZW0Cti3ye5zI6Iq2/kd2P73O6J9MzPLvy5XvCLixGJu38zM8s/DhmZmVnTaXLwk9ZZ0XD6CMTMza41WFS9JFZIOSW92+xgwX9Ls/IZmZmaWXWt7Xu+LiFqSewj+Iv3c6PP5C8vMzCy31havHpI+SHKXjAfyGI+ZmVmLWlu8ria53dKLEfEHSQOB5/MXlpmZWW6tKl4RcXdEHBcR30y3X4qIr+Q3NDMz62oaGxsZMWIE48aNA2DixIkcffTRDB06lPPPP5+GhoZOiaO1EzYGS3pQ0pPp9nHp4oxmZtaNzJkzhyFDhuzanjhxIuvWraOqqor6+noWLFjQKXG09kvK84EfAP8OEBFPSPol8ON8BdYVSPoq8E9AAH8EzomI19NZl4uBASQ38Z0QEW8211Z9QyMDLl+a34CL1NRh25nk3GTl3GTnvOTW3txsaMV6g9XV1SxdupRp06Yxe3Yy4XzMmDG7jo8aNYrq6uo2X7s9WvuZ1wER8WiTfXvEGtxK7JaH9Aa9c4BTIuI44AngO+nhy4EHI+Io4MF028xsjzZlyhTKysqyLjrZ0NDAwoULOf300zslltb2vF6X9FGSHgiSxgOv5C2qdpB0LbAxIual29NJCuwpQG+gJ3BlRNwnaQDJBJRVwEhgDPBy0ybTnwMl1QCHAC+kx75EshQLwG1ABXBZlpguAC4A6NOnL1cN2yPqfYc7bP/kt0XbnXOTnfOSW3tzU1FR0ezxFStW0NDQQF1dHZWVldTU1LzrObNmzWLgwIE0Nja22FZHUES0fFIyu/BW4FPAmyR3XZ8YEU3f8AtG0gjgpog4Od1+GjgN+HNE1KaLVq4EjiJZCPMl4FMRsbKZNseTLKmylWR25SkR0SjprYjolZ4j4M2d27n0Hzgo9pow5z2/zj3R1GHbuaGqy91ms0twbrJzXnJrb25aGja84oorWLhwIT169GDbtm3U1tZy1llnsWjRImbMmMHjjz/Or3/966y9svdC0pqIOGG3AxHR7A/J0OKE9PGBwMEtPadQP8AzwOHAcJJFJXsCc0mG/CqBeqAfyWdV61toqyfJkOBHSXpgc0l6bgBvNTn3zZZiGzx4cFh25eXlhQ6hy3JusnNecuuM3JSXl8fYsWMjImL+/PkxevToePvtt/NyLWB1ZHlPbbFERsQO0kUgI2JrRNS1vXZ2mruB8cDZJBMqJgJ9gZERcTzwKrBfeu7WFto6HiAiXkwTeBdJzxPg1fRL26R/bu7IF2FmViwuuugiXn31VUaPHs3xxx/P1Vdf3SnXbW3f8n8kfZ+kIOx604+IN/ISVfstJpkZ2Qc4meSOIJsjokHSKSTDha21CThWUt+IeA04laRnB3A/UApcm/55XwfFb2bW5ZWUlFBSUgLA9u2F+eyxtcXr7PTPb2fsC2Bgx4bz3kTEU5IOBjZFxCuSbgeWSKoCVgPr2tDWHyXNAB6W1EAyoWNSevha4C5Jk9P9EzrydZiZWfNaVbwi4iP5DqSjRMSwjMevA6NznDq0FW39BPhJlv01wOfaG6OZmb03rSpekr6ebX9E/KJjwzEzM2tZa4cNP5HxeD+SXsdjwB5RvCStAvZtsvvciKgqRDxmZta81g4bXpy5LakXcGdeIiqASNYnMzOzItHeb5NtBYrmczAzM9uztPYzryWkt4YiKXjHknynyszMrNO19jOvWRmPtwMvR0Tn3DrYzMysidYOG46JiN+nP8sjolrSdXmNzMzMLIfWFq9Ts+w7oyMDMTMza61mhw0lfRP4FjBQ0hMZhw4mufGtmZlZp2up5/VL4Ask9/L7QsbPyIg4J8+xmZlZF9PY2MiIESMYN24cABMnTuToo49m6NChnH/++TQ0NHRKHM0Wr4j4c0RsiIivRrJ2Vz3JrMODJPXvlAjNzKzLmDNnDkOGDNm1PXHiRNatW0dVVRX19fUsWLCgU+Jo7VT5LwCzSdbK2kxyd/ZngI/lL7TOIeka4OtA74g4qMmxCcB0koK9NiK+lu5vBHbefeP/RcQXW7pOfUMjAy5f2pGh7zGmDtvOJOcmK+cmO+clt/bmpqXFKAGqq6tZunQp06ZNY/bs2QCMGTNm1/FRo0ZRXd05E9FbO2Hjx8AngefSm/R+jmRV4qKgRK7XugQYleU5RwFXAH8TER8DpmQcro+I49OfFguXmdmeYMqUKZSVlWVdLbmhoYGFCxdy+umnd0osrf2eV0NE1EjaS9JeEVEu6aa8RpaFpGuBjRExL92eTvK9s1OA3iSrH18ZEfdJGgAsA1YBI4ExJMuXvEtErEzbanroG8C8iHgzPa/NC05KugC4AKBPn75cNaww6950dYftn/y2aLtzbrJzXnJrb24qKiqaPb5ixQoaGhqoq6ujsrKSmpqadz1n1qxZDBw4kMbGxhbb6gitLV5vSToI+F/gdkmbaXkl4nxYDNwEzEu3JwCnATdHRK2kPsBKSfenx48CSncWqDYaDCBpObA3MD0ifpMe20/SapLCeW1E3JutgYi4FbgVoP/AQXFDVWvT3b1MHbYd5yY75yY75yW39uZmw8SSZo8vW7aMNWvWMGnSJLZt20ZtbS0LFixg0aJFzJgxgx49enDXXXdl7ZXlRUS0+AMcSDLE2INk5eDvAh9ozXM7+ofks7bDgeEk0/V7AnOBJ4BKkkkl/YABwPo2tLulyfYDwH+m7X8E2Aj0So99KP1zILAB+GhL7Q8ePDgsu/Ly8kKH0GU5N9k5L7l1Rm7Ky8tj7NixERExf/78GD16dLz99tt5uRawOrK8p7b2rvJbJR0JHBURt0k6gKQ3Ugh3A+NJCtRiYCLQl2T6foOkDSTLtsB76x1WA6siogFYL+k5kp7cHyJiE0BEvCSpAhgBvPgermVmVpQuuugijjzySEaPTtb9Peuss7jqqqvyft3Wzjb8BslnN+8HPgp8iGSF4UKsJrwYmA/0AU4mGTrcnBauU0hmQnaEe4GvAv+RDkcOBl6S1Bt4OyLeSff/DVDWQdc0M+vySkpKKCkpAWD79sJ89tjawclvk7xJ1wJExPPAofkKqjkR8RTJHT42RcQrwO3ACZKqSKa8r2tLe5LKJFUDB0iqTieBQDLZo0bS00A58IOIqAGGAKslrU33XxsRT3fEazMzs9Zp7ad670TEX3bOyJPUg78ukdLpImJYxuPXgdE5Th3airYuBS7Nsj+A76U/mfsfAYY1Pd/MzDpPa3tev5f0T8D+kk4l+dxpSf7CMjMzy621Pa/Lgckkd5W4EPgvoHPuAdJBJK0C9m2y+9yIqMp2vpmZdV0t3VW+f0T8v4jYQTJJYn7nhNXxIuLEQsdgZmYdo6Vhw11fvpX0qzzHYmZm1iotFa/MeyYNzGcgZmZmrdVS8Yocj83MzAqmpQkbwyXVkvTA9k8fk25HRByS1+jMzMyyaLZ4RUShbgFlZmaWUyfd/tfMzKzjuHiZmVmrNTY2MmLECMaNGwfAxIkTOfrooxk6dCjnn38+DQ0NnRJH0RQvSddI2ihpS5P9F0mqklQp6f8kHZvu30fSf6TH1koqaed1z9zZZrr9d5KekrRD0gnv6UWZmRWZOXPmMGTIkF3bEydOZN26dVRVVVFfX8+CBZ1z/4outZqbkpsnKv1SdFNLSNbter7J/l9GxE/S538RmDgllOAAABUkSURBVA2cTrISMhExTNKhwH9L+kSOtptzJsnaXjtvvvskcBbw721ppL6hkQGXL23jpbuHqcO2M8m5ycq5yc55ya29udlw7dgWz6murmbp0qVMmzaN2bNnAzBmzJhdx0eNGkV1dXWbr90eeel5SbpW0rcztqdLulLSg5IeS3tDX0qPDZD0rKRfkBSGD2drMyJWpneRb7q/NmPzQP46pf9Y4KH0nM3AW0DOnpKkyZKek/SopPmS5kr6FPBF4Pq0Z/fRiHgmIp5tSz7MzPYEU6ZMoaysLOtqyQ0NDSxcuJDTTz+9U2LJV89rMXATMC/dngCcBtwcEbXpOlgrJd2fHj8KKI2Ile25WFoovwfsA3w23b0W+KKkO0gK4sj0z0ezPP9w4IfAx4E6kqK3NiIeSWN8ICLuaUdcF5Csg0afPn25alhh1r3p6g7bP/lt0Xbn3GTnvOTW3txUVFQ0e3zFihU0NDRQV1dHZWUlNTU173rOrFmzGDhwII2NjS221RHyUrwi4nFJh6ZFoS/wJvAn4EZJnwF2kCxoeVj6lJfbW7jS680D5kn6GnAlUAr8jHTtLeBl4BGgMUcTo4DfR8QbAJLuJll88j2JiFuBWwH6DxwUN1R1qVHaLmPqsO04N9k5N9k5L7m1NzcbJpY0e3zZsmWsWbOGSZMmsW3bNmpra1mwYAGLFi1ixowZ9OjRg7vuuitrrywf8vm3fzcwHuhH0hObSFLIRqarHm8A9kvP3dpB17wTuAUgIrYDl+w8IOkR4LkOuk6b7d9zb55txZhyd1RRUdHif5zuyrnJznnJLV+5mTlzJjNnztx1jVmzZrFo0SIWLFjAsmXLePDBBzutcEF+ZxsuBv6epIDdDbwP2JwWrlOAIzviIpKOytgcSzqhQ9IBkg5MH58KbG9mxeM/ACdL6p0utPmVjGN1JCs3m5lZExdddBGvvvoqo0eP5vjjj+fqq6/ulOvmrecVEU9JOhjYFBGvSLodWCKpimQob11b2pNUBnwNOEBSNbAgIqYD35H0eaCBZHiyNH3KocAySTuATcC5zcS6SdK/kHwe9kYa25/Tw3cC8yV9l6QQHwf8K0kvcqmkyog4rS2vxcysmJWUlFBSUgLA9u2F+ewxr4PGETEs4/HrwOgcpw5tRVuXApdm2f+POc7fABzdqkATv4yIW9Oe13+SLgcTEctJZi7u9GJ63MzMCqRovqTcCaZLqiSZrr+ejLXMzMysa+ly03UkrQL2bbL73IioynP73++I9s3MLP+6XPGKiBOLuX0zM8s/DxuamVnRcfEyM7Oi4+JlZmZFx8XLzMyKjouXmZkVHRcvMzMrOi5eZmbdUGNjIyNGjGDcuHEArF+/nhNPPJFBgwZx9tln85e//KXAETbPxcvMrBuaM2cOQ4YM2bV92WWXcckll/DCCy/Qu3dvfvrTnxYwupZ1++Il6RpJGyVtabL/yHTl5yckVUg6IuNYmaSnJD0j6WZJ6vzIzczap7q6mqVLl/IP//APAEQEDz30EOPHjwegtLSUe+/t2nfI63J32MiHtLgoInZkObwEmEu6lEqGWcAvIuI2SZ8FZgLnSvoU8Dckd5cH+D/gZKCiuRjqGxoZcPnS9r+IPdjUYduZ5Nxk5dxk57zk9vPTD2zxnClTplBWVkZdXR0ANTU19OrVix49kpJwxBFHsGnTprzG+V4VVfGSdC2wMV05GUnTge3AKUBvoCdwZUTcJ2kAsAxYBYwExpCsqPwuO1dwztJ5Ohb4Xvq4nL/eqDdIFtHcB1B6zVdzxHsBcAFAnz59ucrLlmflJd1zc26yc15y27JlCxUVFTmPr1ixgoaGBurq6qisrKSmpobly5dTX1+/63mbN29m69atzbZTaEVVvEgWuLwJmJduTwBOA26OiFpJfYCVku5Pjx8FlO4sUG20FjgLmAN8GThY0gciYoWkcuAVkuI1NyKeydZARNwK3ArQf+Cg8LLl2XlJ99ycm+ycl9x+fvqBu9baymbZsmWsWbOGSZMmsW3bNmpra7nrrrt45513OOmkk+jRowcrVqxg8ODBzbZTcBFRVD/AM8DhwHBgOUnPZy7wBFAJ1AP9gAHA+ja0u6XJ9uHAr4HHSQpYNdALGAQsBQ5Kf1YAn26p/cGDB4dlV15eXugQuiznJjvnJbe25Ka8vDzGjh0bERHjx4+PO+64IyIiLrzwwpg3b14+wmszYHVkeU8txgkbd5OsaHw2SU9sIsmqxiMj4niSIbz90nO3tvciEfHHiDgrIkYA09J9b5H0wlZGxJaI2AL8N7kX2TQzKwrXXXcds2fPZtCgQdTU1DB58uRCh9SsYux3LwbmA31IJkpMADZHRIOkU4AjO+Ii6RDkG5FM8rgC+Fl66P8B35A0k2TY8GSSoUwzs6JSUlKya2hw4MCBPProo4UNqA2KrucVEU8BBwObIuIV4HbgBElVwNeBdW1pL532Xg0cIKk6nQQCUAI8K+k54DDgmnT/PcCLQBXJ52JrI2LJe3tVZmbWFsXY8yIihmU8fp3cw3ZDW9HWpcClWfbfQ1Komu5vBC5sdbBmZtbhiq7nZWZmVpQ9r/aQtArYt8nucyOiqhDxmJlZ+3Wb4hURJxY6BjMz6xgeNjQzs6Lj4mVmZkXHxcvMzIqOi5eZmRUdFy8zMys6Ll5mZlZ0XLzMzLqhxsZGRowYwbhx4wBYv349J554IoMGDeLss8/mL3/5S4EjbJ6Ll5lZNzRnzhyGDBmya/uyyy7jkksu4YUXXqB379789Kc/LWB0LVOyXEr3Jekakhv69o6IgzL230iyQjPAAcChEdEr4/ghwNPAvRHxnZau03/goNhrwpwOjX1P4YUFc3NusnNecmtpMUqA6upqSktLmTZtGrNnz2bJkiX07duXP/3pT7sWo5w+fTrLli3rnKCbIWlNRJzQdH+3+NuXJJJCvSPL4SUki1k+n7kzIi7JeP7FwIgmz/tn4OEODtXMLO+mTJlCWVkZdXV1ANTU1NCrVy969EhKwhFHHMGmTZsKGWKLiqp4SboW2BgR89Lt6cB2kh5Sb5JVla+MiPskDQCWAauAkcAY4OWmbUbEyrSt5i79VeBHGXGMJFkm5TfAbr8RZJx3AXABQJ8+fblq2PZWvc7u5rD9k9+kbXfOTXbOS25btmyhoqIi5/EVK1bQ0NBAXV0dlZWV1NTUsHz5curr63c9b/PmzWzdurXZdgqtqIoXyUKUNwHz0u0JwGnAzRFRmy4guVLS/enxo4DSnQWqPSQdCXwEeCjd3gu4ATgH+Hxzz42IW4FbIRk29DBHdh4Cys25yc55ya2lYcNly5axZs0aJk2axLZt26itreWuu+7inXfe4aSTTto1bDh48OAWhx8LKiKK6gd4BjgcGA4sJ+ltzQWeACqBeqAfMABY34Z2t+TYfxnwrxnb3wEuTR9PAua2pv3BgweHZVdeXl7oELos5yY75yW3tuSmvLw8xo4dGxER48ePjzvuuCMiIi688MKYN29ePsJrM2B1ZHlPLcbZhncD44GzSXpiE4G+wMiIOB54FdgvPXdrB1zv74E7MrZHA9+RtAGYBXw9Hc40Myta1113HbNnz2bQoEHU1NQwefLkQofUrGLsdy8G5gN9gJNJhg43R0SDpFOAIzvqQpKOIfksbcXOfRExMeP4JOCEiLi8o65pZtZZSkpKdg0NDhw4kEcffbSwAbVB0fW8IuIp4GBgU0S8AtwOnCCpimTK+7q2tCepTFI1cICk6nQSyE5/D9yZdl3NzKyLKMaeFxExLOPx6yRDedkMbUVblwKX5jg2vYXn/hz4eUvXMDOzjlV0PS8zM7Oi7Hm1h6RVwL5Ndp8bEVWFiMfMzNqv2xSviDix0DGYmVnH8LChmZkVHRcvMzMrOi5eZmZWdFy8zMys6Lh4mZlZ0XHxMjOzouPiZWa2h9m2bRujRo1i+PDhfOxjH+NHP0qWI3zooYf4+Mc/ztChQyktLWX79uJdE83Fy8xsD7Pvvvvy0EMPsXbtWiorK/nNb37DI488QmlpKXfeeSdPPvkkRx55JLfddluhQ223PepLyukilAMjYmi6fTzwE5IlUrYD34qINt02WVIv4GsR8W8Z+34DfBL4v4gY15p26hsaGXD50rZcutuYOmw7k5ybrJyb7Lp7XjZcO7bZ45I46KCDAGhoaKChoYG9996bffbZh8GDBwNw6qmnMnPmzC6/9EkuRdPzUiJnvJLOArY02V0GzEjX+boq3W6rXsC3muy7Hji3HW2ZmXWKxsZGjj/+eA499FBOPfVURo0axfbt21m9ejUA99xzDxs3bixwlO3X6T2vdOHGjRExL92eTtIrOoVk7ayewJURcZ+kAcAyYBUwEhgDvJylzYOA7wEXAHdlHArgkPTx+4A/NhNXX+CXJKs0rwBOTa95LfBRSZXA7yLiBxHxoKSSVrzWC9KY6NOnL1cNK97x5Xw6bP/kN2nbnXOTXXfPS0VFRc5jW7Zs2XX8pptuYsuWLfzwhz/kmGOO4dJLL+X888+noaGBE044gfr6+mbb6soKMWy4GLgJmJduTwBOA26OiFpJfYCV6RAgwFFAaUSsbKbNfwZuAN5usn8KsEzSLJJe5qeaaeNHwEMRMVPS6cDOvvTlwNC099YmEXErcCtA/4GD4oaqPWqUtsNMHbYd5yY75ya77p6XDRNLch6rqKjYtcDkTo899hg1NTV8//vf59vf/jYAv/3tb3nnnXd2O7dYdPrffkQ8LulQSYcDfYE3gT8BN0r6DLAD+BBwWPqUl5srXOnnWh+NiEvSnlqmbwKXRMSvJE0Afgp8PkdTJwFfTmP8jaQ32/UCc9i/594828I4dXdVUVHR7H/G7sy5yc55ad5rr71Gz5496dWrF/X19fzud7/jsssuY/PmzRx66KG88847XHfddUybNq3QobZboX51uRsYD/Qj6YlNJClkIyOiQdIGkkkWAFtbaGs0yUrKG0hez6GSKiKiBCgF/jHjmgs68DWYmXVJr7zyCqWlpTQ2NrJjxw4mTJjAuHHj+MEPfsADDzzAjh07+OY3v8lnP/vZQofaboUqXouB+UAf4GSSocPNaeE6BTiytQ1FxC3ALQBpz+uBtHBB8hnXyUAF8Fng+WaaWp7GcZ2kvyX5/A2gDji4tfGYmRXacccdx+OPP77b/uuvv57rr7++ABF1vIIUr4h4StLBwKaIeEXS7cASSVXAamBdB13qG8AcST2AbaSTJ3KYAdwh6VySCRt/Auoi4h1JyyU9Cfx3RPxA0v8CxwAHSaoGJkfEsg6K2czMWlCwTzwjYljG49dJhv+yGdqGNjdknh8R/0cyY7A1/gycFhHbJY0GPhER76TtfK3JdT7d2pjMzKzjdd/pOrvrD9yVfpfsLyS9NjMz64KKqnhJWgXs22T3uRFR1YY2zuOvkzh2Wh4R3wZGvMcQzcysExRV8YqIEzugjf8A/qMDwjEzswIpmttDmZmZ7eTiZWZmRcfFy8zMio6Ll5mZFR0XLzMzKzouXmZmVnRcvMzMrOi4eJmZWdFx8TIzs6Lj4mVmZkVHEVHoGLoFSXXAs4WOo4vqA7xe6CC6KOcmO+cltz0tN0dGRN+mO4vq3oZF7tmIOKHQQXRFklY7N9k5N9k5L7l1l9x42NDMzIqOi5eZmRUdF6/Oc2uhA+jCnJvcnJvsnJfcukVuPGHDzMyKjnteZmZWdFy8zMys6Lh45Zmk0yU9K+kFSZcXOp5Ck/QzSZslPZmx7/2Sfifp+fTP3oWMsRAkfVhSuaSnJT0l6R/T/c6NtJ+kRyWtTXMzI93/EUmr0v9biyXtU+hYC0HS3pIel/RAut0t8uLilUeS9gbmAWcAxwJflXRsYaMquJ8DpzfZdznwYEQcBTyYbnc324GpEXEs8Eng2+m/FecG3gE+GxHDgeOB0yV9ErgOuDEiBgFvApMLGGMh/SPwTMZ2t8iLi1d+jQJeiIiXIuIvwJ3AlwocU0FFxMPAG012fwm4LX18G3BmpwbVBUTEKxHxWPq4juTN6EM4N0RiS7rZM/0J4LPAPen+bpkbSUcAY4EF6bboJnlx8cqvDwEbM7ar0332bodFxCvp4z8BhxUymEKTNAAYAazCuQF2DY1VApuB3wEvAm9FxPb0lO76f+sm4FJgR7r9AbpJXly8rEuJ5Lsb3fb7G5IOAn4FTImI2sxj3Tk3EdEYEccDR5CMaBxT4JAKTtI4YHNErCl0LIXgexvm1ybgwxnbR6T77N1elfTBiHhF0gdJfrvudiT1JClct0fEr9Pdzk2GiHhLUjkwGuglqUfay+iO/7f+BviipDHAfsAhwBy6SV7c88qvPwBHpbN/9gH+Hri/wDF1RfcDpenjUuC+AsZSEOlnFT8FnomI2RmHnBupr6Re6eP9gVNJPhMsB8anp3W73ETEFRFxREQMIHlveSgiJtJN8uI7bORZ+lvRTcDewM8i4poCh1RQku4ASkiWbXgV+BFwL3AX0B94GZgQEU0ndezRJJ0E/C9QxV8/v/gnks+9untujiOZeLA3yS/cd0XE1ZIGkkyCej/wOHBORLxTuEgLR1IJ8P2IGNdd8uLiZWZmRcfDhmZmVnRcvMzMrOi4eJmZWdFx8TIzs6Lj4mVmZkXHX1I2K2KSGkmm1+90ZkRsKFA4Zp3GU+XNipikLRFxUCder0fGffPMCsbDhmZ7MEkflPSwpEpJT0r6dLr/dEmPpWtkPZjue7+keyU9IWll+uVgJE2XtFDScmBhepPc6yX9IT33wgK+ROumPGxoVtz2T++2DrA+Ir7c5PjXgGURcU26vtwBkvoC84HPRMR6Se9Pz50BPB4RZ0r6LPALkvWzIFmP7qSIqJd0AfDniPiEpH2B5ZJ+GxHr8/lCzTK5eJkVt/r0buu5/AH4WXrT33sjojK9ldDDO4tNxu2mTgK+ku57SNIHJB2SHrs/IurTx38LHCdp5/3z3gccBbh4Wadx8TLbg0XEw5I+Q7Jg4c8lzSZZXbettmY8FnBxRCzriBjN2sOfeZntwSQdCbwaEfNJVtv9OLAS+Iykj6Tn7Bw2/F9gYrqvBHi96ZpiqWXAN9PeHJIGSzowry/ErAn3vMz2bCXADyQ1AFuAr0fEa+nnVr+WtBfJGmGnAtNJhhifAN7mr0uxNLUAGAA8li7l8hp76FLz1nV5qryZmRUdDxuamVnRcfEyM7Oi4+JlZmZFx8XLzMyKjouXmZkVHRcvMzMrOi5eZmZWdP4/vxHQGt6q6WoAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"print('plot top10 important features')\n",
"xgb.plot_importance(clf,max_num_features=10)\n",
"plt.show()"
]
}
],
"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.6.8"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment