Skip to content

Instantly share code, notes, and snippets.

@fhiyo
Last active February 16, 2018 09:58
Show Gist options
  • Save fhiyo/58efcfd245c238e00d0cd6eace911893 to your computer and use it in GitHub Desktop.
Save fhiyo/58efcfd245c238e00d0cd6eace911893 to your computer and use it in GitHub Desktop.
KaggleのTitanicチュートリアルを試してみた結果のjupyter notebook
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# titanicのチュートリアル問題\n",
"\n",
"18/01/21\n",
"今回はfeature engineeringではなく,モデル構築を色々やっていく."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- [Titanic Top 4% with ensemble modeling | Kaggle](https://www.kaggle.com/yassineghouzam/titanic-top-4-with-ensemble-modeling)\n",
"\n",
"を参考にしながら書いている."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import math\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import seaborn as sns\n",
"\n",
"from collections import Counter\n",
"\n",
"sns.set(style='white', context='notebook', palette='deep')\n",
"\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/usr/local/lib/python3.6/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"
]
}
],
"source": [
"# modelingの関数をimport\n",
"\n",
"import xgboost as xgb\n",
"\n",
"from sklearn.ensemble import RandomForestClassifier, AdaBoostClassifier, GradientBoostingClassifier, ExtraTreesClassifier, VotingClassifier\n",
"from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n",
"from sklearn.linear_model import LogisticRegression\n",
"from sklearn.neighbors import KNeighborsClassifier\n",
"from sklearn.tree import DecisionTreeClassifier\n",
"from sklearn.neural_network import MLPClassifier\n",
"from sklearn.svm import SVC\n",
"from sklearn.model_selection import GridSearchCV, cross_val_score, StratifiedKFold, learning_curve"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"# Load training and test data\n",
"train_df = pd.read_csv(\"../input/train.csv\", header=0)\n",
"test_df = pd.read_csv(\"../input/test.csv\", header=0)\n",
"# trainとtestで同じ処理するのが煩わしくなったからまとめて,学習のときに分ける\n",
"test_df_ids = test_df.PassengerId\n",
"train_count = len(train_df)\n",
"dataset_df = pd.concat(objs=[train_df, test_df], axis=0).reset_index(drop=True)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Age</th>\n",
" <th>Cabin</th>\n",
" <th>Embarked</th>\n",
" <th>Fare</th>\n",
" <th>Name</th>\n",
" <th>Parch</th>\n",
" <th>PassengerId</th>\n",
" <th>Pclass</th>\n",
" <th>Sex</th>\n",
" <th>SibSp</th>\n",
" <th>Survived</th>\n",
" <th>Ticket</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>22.0</td>\n",
" <td>NaN</td>\n",
" <td>S</td>\n",
" <td>7.2500</td>\n",
" <td>Braund, Mr. Owen Harris</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>male</td>\n",
" <td>1</td>\n",
" <td>0.0</td>\n",
" <td>A/5 21171</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>38.0</td>\n",
" <td>C85</td>\n",
" <td>C</td>\n",
" <td>71.2833</td>\n",
" <td>Cumings, Mrs. John Bradley (Florence Briggs Th...</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>female</td>\n",
" <td>1</td>\n",
" <td>1.0</td>\n",
" <td>PC 17599</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>26.0</td>\n",
" <td>NaN</td>\n",
" <td>S</td>\n",
" <td>7.9250</td>\n",
" <td>Heikkinen, Miss. Laina</td>\n",
" <td>0</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>female</td>\n",
" <td>0</td>\n",
" <td>1.0</td>\n",
" <td>STON/O2. 3101282</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>35.0</td>\n",
" <td>C123</td>\n",
" <td>S</td>\n",
" <td>53.1000</td>\n",
" <td>Futrelle, Mrs. Jacques Heath (Lily May Peel)</td>\n",
" <td>0</td>\n",
" <td>4</td>\n",
" <td>1</td>\n",
" <td>female</td>\n",
" <td>1</td>\n",
" <td>1.0</td>\n",
" <td>113803</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>35.0</td>\n",
" <td>NaN</td>\n",
" <td>S</td>\n",
" <td>8.0500</td>\n",
" <td>Allen, Mr. William Henry</td>\n",
" <td>0</td>\n",
" <td>5</td>\n",
" <td>3</td>\n",
" <td>male</td>\n",
" <td>0</td>\n",
" <td>0.0</td>\n",
" <td>373450</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Age Cabin Embarked Fare \\\n",
"0 22.0 NaN S 7.2500 \n",
"1 38.0 C85 C 71.2833 \n",
"2 26.0 NaN S 7.9250 \n",
"3 35.0 C123 S 53.1000 \n",
"4 35.0 NaN S 8.0500 \n",
"\n",
" Name Parch PassengerId \\\n",
"0 Braund, Mr. Owen Harris 0 1 \n",
"1 Cumings, Mrs. John Bradley (Florence Briggs Th... 0 2 \n",
"2 Heikkinen, Miss. Laina 0 3 \n",
"3 Futrelle, Mrs. Jacques Heath (Lily May Peel) 0 4 \n",
"4 Allen, Mr. William Henry 0 5 \n",
"\n",
" Pclass Sex SibSp Survived Ticket \n",
"0 3 male 1 0.0 A/5 21171 \n",
"1 1 female 1 1.0 PC 17599 \n",
"2 3 female 0 1.0 STON/O2. 3101282 \n",
"3 1 female 1 1.0 113803 \n",
"4 3 male 0 0.0 373450 "
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dataset_df.head()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Age 263\n",
"Cabin 1014\n",
"Embarked 2\n",
"Fare 1\n",
"Name 0\n",
"Parch 0\n",
"PassengerId 0\n",
"Pclass 0\n",
"Sex 0\n",
"SibSp 0\n",
"Survived 418\n",
"Ticket 0\n",
"dtype: int64"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 欠損値が各属性にどれだけあるかを見る.\n",
"# Survivedが欠損しているのはtest_df由来のデータ.\n",
"dataset_df.isnull().sum()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>PassengerId</th>\n",
" <th>Survived</th>\n",
" <th>Pclass</th>\n",
" <th>Age</th>\n",
" <th>SibSp</th>\n",
" <th>Parch</th>\n",
" <th>Fare</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>891.000000</td>\n",
" <td>891.000000</td>\n",
" <td>891.000000</td>\n",
" <td>714.000000</td>\n",
" <td>891.000000</td>\n",
" <td>891.000000</td>\n",
" <td>891.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>446.000000</td>\n",
" <td>0.383838</td>\n",
" <td>2.308642</td>\n",
" <td>29.699118</td>\n",
" <td>0.523008</td>\n",
" <td>0.381594</td>\n",
" <td>32.204208</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>257.353842</td>\n",
" <td>0.486592</td>\n",
" <td>0.836071</td>\n",
" <td>14.526497</td>\n",
" <td>1.102743</td>\n",
" <td>0.806057</td>\n",
" <td>49.693429</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1.000000</td>\n",
" <td>0.420000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>223.500000</td>\n",
" <td>0.000000</td>\n",
" <td>2.000000</td>\n",
" <td>20.125000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>7.910400</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>446.000000</td>\n",
" <td>0.000000</td>\n",
" <td>3.000000</td>\n",
" <td>28.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>14.454200</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>668.500000</td>\n",
" <td>1.000000</td>\n",
" <td>3.000000</td>\n",
" <td>38.000000</td>\n",
" <td>1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>31.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>891.000000</td>\n",
" <td>1.000000</td>\n",
" <td>3.000000</td>\n",
" <td>80.000000</td>\n",
" <td>8.000000</td>\n",
" <td>6.000000</td>\n",
" <td>512.329200</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" PassengerId Survived Pclass Age SibSp \\\n",
"count 891.000000 891.000000 891.000000 714.000000 891.000000 \n",
"mean 446.000000 0.383838 2.308642 29.699118 0.523008 \n",
"std 257.353842 0.486592 0.836071 14.526497 1.102743 \n",
"min 1.000000 0.000000 1.000000 0.420000 0.000000 \n",
"25% 223.500000 0.000000 2.000000 20.125000 0.000000 \n",
"50% 446.000000 0.000000 3.000000 28.000000 0.000000 \n",
"75% 668.500000 1.000000 3.000000 38.000000 1.000000 \n",
"max 891.000000 1.000000 3.000000 80.000000 8.000000 \n",
"\n",
" Parch Fare \n",
"count 891.000000 891.000000 \n",
"mean 0.381594 32.204208 \n",
"std 0.806057 49.693429 \n",
"min 0.000000 0.000000 \n",
"25% 0.000000 7.910400 \n",
"50% 0.000000 14.454200 \n",
"75% 0.000000 31.000000 \n",
"max 6.000000 512.329200 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"### Summarize data\n",
"# Summarie and statistics\n",
"train_df.describe()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"# feature analysisは後回し."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"# Convert \"Sex\" to be a dummy variable (female = 0, Male = 1)\n",
"dataset_df[\"Sex\"] = dataset_df[\"Sex\"].map({\"female\": 0, \"male\": 1}).astype(int)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 Mr\n",
"1 Mrs\n",
"2 Miss\n",
"3 Mrs\n",
"4 Mr\n",
"Name: Title, dtype: object"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 前回同様,敬称からAgeの欠損値を予測してみる\n",
"# Nameから敬称を抽出する.データを見る限り,\"名字 敬称 名前\"の順になっていたのでそのルールに沿って敬称を取得する\n",
"dataset_df_title = [i.split(\",\")[1].split(\".\")[0].strip() for i in dataset_df[\"Name\"]]\n",
"dataset_df[\"Title\"] = pd.Series(dataset_df_title)\n",
"dataset_df[\"Title\"].head()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x111766828>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 敬称の頻度分布を可視化\n",
"g = sns.countplot(x=\"Title\",data=dataset_df)\n",
"g = plt.setp(g.get_xticklabels(), rotation=45) "
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"# 敬称をカテゴリデータに変換する.本当はonehot-vectorの形にしたほうがよさそう\n",
"dataset_df[\"Title\"] = dataset_df[\"Title\"].replace(['Lady', 'the Countess','Countess','Capt', 'Col','Don', 'Dr', 'Major', 'Rev', 'Sir', 'Jonkheer', 'Dona'], 'Rare')\n",
"dataset_df[\"Title\"] = dataset_df[\"Title\"].map({\"Master\":0, \"Miss\":1, \"Mme\":1, \"Mlle\":1, \"Ms\" : 2 , \"Mrs\":2, \"Mr\":3, \"Rare\":4})\n",
"dataset_df[\"Title\"] = dataset_df[\"Title\"].astype(int)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1125d4fd0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"g = sns.countplot(dataset_df[\"Title\"])\n",
"g = g.set_xticklabels([\"Master\",\"Miss/Mme/Mlle\", \"Ms/Mrs\",\"Mr\",\"Rare\"])"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x112b16eb8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"g = sns.factorplot(x=\"Title\",y=\"Survived\",data=dataset_df,kind=\"bar\")\n",
"g = g.set_xticklabels([\"Master\",\"Miss\",\"Mrs\",\"Mr\",\"Rare\"])\n",
"g = g.set_ylabels(\"survival probability\")"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"# Nameの属性を削除\n",
"dataset_df.drop(labels = [\"Name\"], axis = 1, inplace = True)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"# fillnaで各行のTitleなどの属性によって補完値を変えるやり方がわからなかったので,forで回す\n",
"for i, dataset in dataset_df.iterrows():\n",
" if math.isnan(dataset.Age):\n",
" if math.isnan(dataset.Title):\n",
" dataset_df.at[i, 'Age'] = dataset_df[dataset_df.Title==dataset.Title].Age.dropna().mean()\n",
" else:\n",
" dataset_df.at[i, 'Age'] = dataset_df.Age.dropna().mean()"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Age 0\n",
"Cabin 1014\n",
"Embarked 2\n",
"Fare 1\n",
"Parch 0\n",
"PassengerId 0\n",
"Pclass 0\n",
"Sex 0\n",
"SibSp 0\n",
"Survived 418\n",
"Ticket 0\n",
"Title 0\n",
"dtype: int64"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dataset_df.isnull().sum()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"# XXX: 今回はとにかく属性を削除しまくる\n",
"dataset_df = dataset_df.drop([\"Ticket\", \"SibSp\", \"Parch\", \"Fare\", \"Cabin\", \"Embarked\"], axis=1)\n",
"\n",
"# Prepare data\n",
"X_train = dataset_df[:train_count].drop(['PassengerId', 'Survived'], axis=1)\n",
"y_train = dataset_df[:train_count].Survived\n",
"X_test = dataset_df[train_count:].drop(['PassengerId', 'Survived'], axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"# from sklearn.model_selection import KFold\n",
"from sklearn.metrics import accuracy_score"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"様々なアルゴリズムで学習をさせてみる.\n",
"\n",
"[Titanic Top 4% with ensemble modeling | Kaggle](https://www.kaggle.com/yassineghouzam/titanic-top-4-with-ensemble-modeling)を参考に,以下のアルゴリズムで学習を行う.\n",
"\n",
"- SVC\n",
"- Decision Tree\n",
"- AdaBoost\n",
"- Random Forest\n",
"- Extra Trees\n",
"- Gradient Boosting\n",
"- Multiple layer perceprton (neural network)\n",
"- KNN\n",
"- Logistic regression\n",
"- Linear Discriminant Analysis\n",
"- xgboost"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x11294cf28>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Modeling step Test differents algorithms \n",
"N_SPLITS = 4\n",
"kfold = StratifiedKFold(n_splits=N_SPLITS)\n",
"\n",
"random_state = 2 # 乱数のseed\n",
"\n",
"classifiers = []\n",
"classifiers.append(SVC(random_state=random_state))\n",
"classifiers.append(DecisionTreeClassifier(random_state=random_state))\n",
"classifiers.append(AdaBoostClassifier(DecisionTreeClassifier(random_state=random_state),random_state=random_state,learning_rate=0.1))\n",
"classifiers.append(RandomForestClassifier(random_state=random_state))\n",
"classifiers.append(ExtraTreesClassifier(random_state=random_state))\n",
"classifiers.append(GradientBoostingClassifier(random_state=random_state))\n",
"classifiers.append(MLPClassifier(random_state=random_state))\n",
"classifiers.append(KNeighborsClassifier())\n",
"classifiers.append(LogisticRegression(random_state=random_state))\n",
"classifiers.append(LinearDiscriminantAnalysis())\n",
"classifiers.append(xgb.XGBClassifier(seed=random_state))\n",
"\n",
"cv_results = []\n",
"for classifier in classifiers :\n",
" cv_results.append(cross_val_score(classifier, X_train, y = y_train, scoring = \"accuracy\", cv = kfold, n_jobs=4))\n",
" \n",
"cv_means = []\n",
"cv_std = []\n",
"for cv_result in cv_results:\n",
" cv_means.append(cv_result.mean())\n",
" cv_std.append(cv_result.std())\n",
"\n",
"cv_res = pd.DataFrame({\"CrossValMeans\":cv_means,\"CrossValerrors\": cv_std,\"Algorithm\":[\"SVC\",\"DecisionTree\",\"AdaBoost\",\n",
"\"RandomForest\",\"ExtraTrees\",\"GradientBoosting\",\"MultipleLayerPerceptron\",\"KNeighboors\",\"LogisticRegression\",\"LinearDiscriminantAnalysis\", \"XGBClassifier\"]})\n",
"\n",
"g = sns.barplot(\"CrossValMeans\",\"Algorithm\",data = cv_res, palette=\"Set3\",orient = \"h\",**{'xerr':cv_std})\n",
"g.set_xlabel(\"Mean Accuracy\")\n",
"g = g.set_title(\"Cross validation scores\") "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"hyper parameter tuningを行う.この辺りは中のアルゴリズムを知ってないと少し難しそう \n",
"> grid search optimization for AdaBoost, ExtraTrees , RandomForest, GradientBoosting and SVC classifiers "
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting 4 folds for each of 112 candidates, totalling 448 fits\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"[Parallel(n_jobs=4)]: Done 448 out of 448 | elapsed: 1.9s finished\n"
]
},
{
"data": {
"text/plain": [
"0.8125701459034792"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Adaboost\n",
"DTC = DecisionTreeClassifier()\n",
"\n",
"adaDTC = AdaBoostClassifier(DTC, random_state=7)\n",
"\n",
"ada_param_grid = {\"base_estimator__criterion\" : [\"gini\", \"entropy\"],\n",
" \"base_estimator__splitter\" : [\"best\", \"random\"],\n",
" \"algorithm\" : [\"SAMME\",\"SAMME.R\"],\n",
" \"n_estimators\" :[1,2],\n",
" \"learning_rate\": [0.0001, 0.001, 0.01, 0.1, 0.2, 0.3, 1.5]}\n",
"\n",
"gsadaDTC = GridSearchCV(adaDTC, param_grid=ada_param_grid, cv=kfold, scoring=\"accuracy\", n_jobs=4, verbose=1)\n",
"\n",
"gsadaDTC.fit(X_train, y_train)\n",
"\n",
"ada_best = gsadaDTC.best_estimator_\n",
"gsadaDTC.best_score_"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting 4 folds for each of 54 candidates, totalling 216 fits\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"[Parallel(n_jobs=4)]: Done 42 tasks | elapsed: 6.8s\n",
"[Parallel(n_jobs=4)]: Done 192 tasks | elapsed: 32.1s\n",
"[Parallel(n_jobs=4)]: Done 216 out of 216 | elapsed: 37.6s finished\n"
]
},
{
"data": {
"text/plain": [
"0.81144781144781142"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# ExtraTrees \n",
"ExtC = ExtraTreesClassifier()\n",
"\n",
"# Search grid for optimal parameters\n",
"ex_param_grid = {\"max_depth\": [None],\n",
" \"max_features\": [1, 3, 4],\n",
" \"min_samples_split\": [2, 3, 10],\n",
" \"min_samples_leaf\": [1, 3, 10],\n",
" \"bootstrap\": [False],\n",
" \"n_estimators\" :[100,300],\n",
" \"criterion\": [\"gini\"]}\n",
"\n",
"\n",
"gsExtC = GridSearchCV(ExtC, param_grid=ex_param_grid, cv=kfold, scoring=\"accuracy\", n_jobs=4, verbose=1)\n",
"\n",
"gsExtC.fit(X_train,y_train)\n",
"\n",
"ExtC_best = gsExtC.best_estimator_\n",
"\n",
"# Best score\n",
"gsExtC.best_score_"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting 4 folds for each of 54 candidates, totalling 216 fits\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"[Parallel(n_jobs=4)]: Done 42 tasks | elapsed: 10.3s\n",
"[Parallel(n_jobs=4)]: Done 192 tasks | elapsed: 40.5s\n",
"[Parallel(n_jobs=4)]: Done 216 out of 216 | elapsed: 45.8s finished\n"
]
},
{
"data": {
"text/plain": [
"0.8125701459034792"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# RFC Parameters tunning \n",
"RFC = RandomForestClassifier()\n",
"\n",
"# Search grid for optimal parameters\n",
"rf_param_grid = {\"max_depth\": [None],\n",
" \"max_features\": [1, 3, 4],\n",
" \"min_samples_split\": [2, 3, 10],\n",
" \"min_samples_leaf\": [1, 3, 10],\n",
" \"bootstrap\": [False],\n",
" \"n_estimators\" :[100, 300],\n",
" \"criterion\": [\"gini\"]}\n",
"\n",
"gsRFC = GridSearchCV(RFC, param_grid=rf_param_grid, cv=kfold, scoring=\"accuracy\", n_jobs=4, verbose=1)\n",
"\n",
"gsRFC.fit(X_train,y_train)\n",
"\n",
"RFC_best = gsRFC.best_estimator_\n",
"\n",
"# Best score\n",
"gsRFC.best_score_"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting 4 folds for each of 72 candidates, totalling 288 fits\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"[Parallel(n_jobs=4)]: Done 76 tasks | elapsed: 3.7s\n",
"[Parallel(n_jobs=4)]: Done 288 out of 288 | elapsed: 15.5s finished\n"
]
},
{
"data": {
"text/plain": [
"0.81369248035914699"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Gradient boosting tunning\n",
"\n",
"GBC = GradientBoostingClassifier()\n",
"gb_param_grid = {'loss' : [\"deviance\"],\n",
" 'n_estimators' : [100, 200, 300],\n",
" 'learning_rate': [0.1, 0.05, 0.01],\n",
" 'max_depth': [4, 8],\n",
" 'min_samples_leaf': [100, 150],\n",
" 'max_features': [0.3, 0.1]}\n",
"\n",
"gsGBC = GridSearchCV(GBC, param_grid=gb_param_grid, cv=kfold, scoring=\"accuracy\", n_jobs=4, verbose=1)\n",
"\n",
"gsGBC.fit(X_train, y_train)\n",
"\n",
"GBC_best = gsGBC.best_estimator_\n",
"\n",
"# Best score\n",
"gsGBC.best_score_"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting 4 folds for each of 28 candidates, totalling 112 fits\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"[Parallel(n_jobs=4)]: Done 76 tasks | elapsed: 8.3s\n",
"[Parallel(n_jobs=4)]: Done 112 out of 112 | elapsed: 22.6s finished\n"
]
},
{
"data": {
"text/plain": [
"0.80808080808080807"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# SVC classifier\n",
"SVMC = SVC(probability=True)\n",
"svc_param_grid = {'kernel': ['rbf'], \n",
" 'gamma': [0.001, 0.01, 0.1, 1],\n",
" 'C': [1, 10, 50, 100,200, 300, 1000]}\n",
"\n",
"gsSVMC = GridSearchCV(SVMC, param_grid=svc_param_grid, cv=kfold, scoring=\"accuracy\", n_jobs=4, verbose=1)\n",
"\n",
"gsSVMC.fit(X_train, y_train)\n",
"\n",
"SVMC_best = gsSVMC.best_estimator_\n",
"\n",
"# Best score\n",
"gsSVMC.best_score_"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting 4 folds for each of 6 candidates, totalling 24 fits\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"[Parallel(n_jobs=4)]: Done 24 out of 24 | elapsed: 1.3s finished\n"
]
},
{
"data": {
"text/plain": [
"0.86025492508120771"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# xgboost ref: https://www.kaggle.com/phunter/xgboost-with-gridsearchcv\n",
"XgbC = xgb.XGBClassifier()\n",
"\n",
"xgb_param_grid = {'learning_rate': [0.1, 0.05, 0.01], #so called `eta` value\n",
" 'max_depth': [4, 8],\n",
" 'min_child_weight': [11],\n",
" 'silent': [1],\n",
" 'subsample': [0.8],\n",
" 'colsample_bytree': [0.7],\n",
" 'n_estimators': [100], #number of trees, change it to 1000 for better results\n",
" 'seed': [random_state]}\n",
"\n",
"gsXgbC = GridSearchCV(XgbC, xgb_param_grid, n_jobs=4, cv=kfold, scoring='roc_auc', verbose=1, refit=True)\n",
"gsXgbC.fit(X_train, y_train)\n",
"\n",
"Xgb_best = gsXgbC.best_estimator_\n",
"\n",
"# Best score\n",
"gsXgbC.best_score_"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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La+//jqmaXL66aezaNEiMjMzeeGFF3jqqac47rjjSEtL48EHH2Tz5s1UVVWxc+dODh48yHPPPUdxcTHbt29vcP+YmBjOPPNM3nvvPaZPn85bb73F888/zxdffMGtt96KUorly5fzxhtvNBAFH08//TRTpkxh7ty5vPPOOyxatAiA7du388wzz5CQkMCf/vQnVq1axbXXXstLL73EvHnzeOONNwDQWvPuu+/yyiuv4HQ6mTVrFh999BEAsbGxPPfcc6xevZrnn3++gSgEy1dxcTHPPvssb775JnFxcTz88MPs2bOHhQsXsnTpUpKTk5k/fz6vvvoqiYmJpKam8tRTT3Hw4EEuueQS7rzzTn9eVq9e7XeVBWKz2bp9cp1vdNHA5IEyukiIWHr1LzMpJom5U+bymzd/0yTt9pNu73CNcdCgQWzY0DAY3a5du9i/fz8Aw4YNA6C0tHPiN2kAAAx5SURBVJTk5GQyM61WxzHHHMMjjzzC3Llz2b59OzNnzsTpdHLttddy+OGHc+GFFzJ79mzcbjeXX345X3/9NY899hgAV111FRdccAHz5s1j+PDhDBs2jPT0dAYMGMCTTz5JfHw8lZWVJCcHD5Wwfft2zjnnHACOPvpovyj07duXW2+9laSkJLZu3cqECROCXr9161bGjx9PTIzVZzJp0iR+/PFHAEaPHg3AwIEDqatrGOk1WL527drF4YcfTny8NeJozpw55OfnM3LkSL/9xxxzDKtWrWL8+PH+z3Pnzp2UlJTw4IMPkpKSQmVlJTt37gwqCsFobXKdrxO7IwW6YRp+d5EgRDK9WhSS45K58qgrSYhJ4P5V97OhaANj+o/hthNv46Lcizp836lTp/L3v/+diy++mCFDhuByuXjggQeYMmUKI0eOxG63ap7p6elUVFRQWFjIgAEDWLt2LTk5OXz55ZcMGDCA559/nm+++YZHHnmEO++8k8rKSp555hkKCwu56KKL+PDDD3nxxRcbPNs0TZ577jl/38V9993HggULGDFiBI8//jh79uwJavOIESP8hfi6ddbKqYcOHeLxxx/n448/BuDKK6/0d9Y27rQdPnw4//znP3G73TgcDr766iumT5/Opk2bWhRXrXWTfC1evJitW7dSV1dHbGwsN9xwA7feeitbtmyhqqqKxMRE1q5d6xcD3+eZnZ1NVlYWf/zjHznuuON4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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1129ff4a8>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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JfWKBVdwyweRs6TmZOfw0Fk151P68MMPOfHEE+nduzcALpeLBx98kMTExFCmVLfbzdVXX02nTp149NFHSU5Opm3btjzwwAP4fD5uuOEGLMvC7XZz991307dv34jZTW28Xi9jxoxh4cKFpKWl8eyzz+JyuTjppJOYPn06fr+fvXv3ctdddzFkyJDQdWPHjuWuu+4iMzOTSZMmYVkWnTp1Ch1/9913D8jk+uqrr7Jv3z7uuususrKyWLx4MZMmTWLOnDm89dZbJCQkMGzYMCZPnsysWbPIz89n9+7dbNu2jalTp3LqqaeG7h/trK1FRUU899xzUcvaKv+pzZXwxumKisqurXbjdCRSU+EXvzALwI8/VjZWL10Ks2ebJSXF5HKyG6yPOCJ6DcuRhKKoqOoAPBGKJsUbiJwNtab9dWHnzp0cVs0bTU9PD6273W7uvPNOhgwZwhlnnMErr7xCly5deP7553nqqac48cQTadu2LTNmzGDjxo2UlZVFzG4aTmJiImeddRbvvfceF1xwAW+++SZz5szh888/Z8qUKSileOONN3jttdeqiILNP//5T84991wuuugi3n77bV555RXAZGKtnsn1uuuu46WXXuKuu+5i5syZgMmp9M477zB37lwSEhIYN24cixcvBiApKYnZs2ezbNky5syZU0UUop219dJLL2X+/PlRy9oq/5XxgJ13ybIqu7Z6vQcP0xx+uMn0+oc/mB5HK1ZUioQdcgKT3XXkSLL69IG+fSGYJTJq2HYeTChSUsyncEg8dNZDtb7VD3pqEKt3HpgldVCXQXz7l4ZlSe3evTvrqs1q+NNPP7Fjxw6gMlPq3r17ycjICKXLPv7445k5cyaTJ09my5YtXH/99SQkJHDddddFzG761Vdf8dhjjwFwzTXXkJOTw1133UXfvn3p06cP7dq1o3Pnzjz55JOkpKRQWloaynpanS1btnDRRRcBMGTIkJAoHCyTq83mzZsZPHgwicG/2WHDhvH9998DhJLkde3aFU+19r1oZ23ds2dPVLO2SkNzPOFwmNHOXbuaJSXFhJbq0piXnGzaGG6/HT74AL76Ch5+GM49F/btgxdeoPfdd8PAgWbsxJNPmvYJy4KFC838Eb16mc+FCw+9LC6X8XpskSguhh074KefKhuzi4tjluO/NXPrqbdG3D/1lIZnSR01ahRLlixh69at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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1129ffcf8>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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HusfiXNJS7P2C0KyMHcuXH557fbq1bXbEyce1C3vuusuAP7973+zceNGpkyZ0uxrjzzySI488sgGj48fP/6gbBIOjo4tCmCJgdfxNfj91gJgGNZin+MUjdRUSEmJjc2C0Bh33AHz5jV8fOfOyPuvuQaClXs9LrkEHn20xaZ8/vnnPPbYY6SkpHD88cdTVFTEq6++it/vx+Vy8cwzz7Bu3Trmzp3LE088wRlnnMGoUaPYtGkT3bp1Y+bMmcyfP5+NGzcyceJEbr/9dnr37s22bds4+uijuf/++ykuLmbKlClUV1czePBgli9fzocffhiywefzceutt3LgwAEqKyu57bbbGDduHPPmzeO1117DMAx+9KMfccstt7BgwQJefvllUlNTGTRoEH/4wx946623eOONNzAMg1tuuYWvvvqKRx55BLfbzejRo1skgIlA1EQhONfrbKw5XX3AL7TW6x3Hb8eaPNwApmut33QcOwJrisJeWuuqaNnYJG63tQCYZkTBSCkshF276opGaqq1uDu2d06IU2pqWra/lfh8PubNm0deXh5ffPEFzz33HBkZGfz+979nyZIl9OrVK3Tutm3bePnll+nTpw8TJ05k9eq6s4tu3ryZv/71r2RkZHDaaadRVFTE888/z6mnnsqVV17J0qVLWbp0aZ1rtm7dyr59+3jhhRfYu3cvmzdvZu/evTz//PMsWLCAtLQ0Hn/8cXbs2MHMmTN58803yc7OZvr06bz++utkZmaSm5vLs88+y759+/jtb3/LO++8Q0ZGBnfccQdLly7lxBNPjMp3Fwui2VK4EEjXWp+glBoLPA5cAKCU6gzcijXnbRawEngzeCw3eK4v0k3jBlsw3G5LMGpqav9RhbcwRDCE9uTRRxt/qx8xwnIZRdr/zTdtbs7gwYND6926dWPq1KlkZWWxceNGjjnmmDrndunShT59+gDQp08ffL661cCAAQPIzs4GoEePHvh8PjZs2MBFF10EwJgxY+o9f+jQoVx22WVMnjwZv9/P1VdfzbZt2xg6dCjp6ekATJkyhVWrVnHYYYeF7n/cccexZMkSRo4cGSrD1q1bKSsr4/rrrwegvLycrVu3iig0k3HA+wBa6+VKKeevVQ5swRKELKzWAkopF/AccA8wP4q2RZfwFkZTgmGLhgiG0B7cc0/dPgWbu++OyuPcwb/niooKnn76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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x112bee6a0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1129cf240>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x11303a3c8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot learning curve\n",
"def plot_learning_curve(estimator, title, X, y, ylim=None, cv=None,\n",
" n_jobs=-1, train_sizes=np.linspace(.1, 1.0, 5)):\n",
" \"\"\"Generate a simple plot of the test and training learning curve.\"\"\"\n",
" plt.figure()\n",
" plt.title(title)\n",
" if ylim is not None:\n",
" plt.ylim(*ylim)\n",
" plt.xlabel(\"Training examples\")\n",
" plt.ylabel(\"Score\")\n",
" train_sizes, train_scores, test_scores = learning_curve(\n",
" estimator, X, y, cv=cv, n_jobs=n_jobs, train_sizes=train_sizes)\n",
" train_scores_mean = np.mean(train_scores, axis=1)\n",
" train_scores_std = np.std(train_scores, axis=1)\n",
" test_scores_mean = np.mean(test_scores, axis=1)\n",
" test_scores_std = np.std(test_scores, axis=1)\n",
" plt.grid()\n",
"\n",
" plt.fill_between(train_sizes, train_scores_mean - train_scores_std,\n",
" train_scores_mean + train_scores_std, alpha=0.1,\n",
" color=\"r\")\n",
" plt.fill_between(train_sizes, test_scores_mean - test_scores_std,\n",
" test_scores_mean + test_scores_std, alpha=0.1, color=\"g\")\n",
" plt.plot(train_sizes, train_scores_mean, 'o-', color=\"r\",\n",
" label=\"Training score\")\n",
" plt.plot(train_sizes, test_scores_mean, 'o-', color=\"g\",\n",
" label=\"Cross-validation score\")\n",
"\n",
" plt.legend(loc=\"best\")\n",
" return plt\n",
"\n",
"g = plot_learning_curve(gsRFC.best_estimator_, \"RF mearning curves\", X_train, y_train, cv=kfold)\n",
"g = plot_learning_curve(gsExtC.best_estimator_, \"ExtraTrees learning curves\", X_train, y_train, cv=kfold)\n",
"g = plot_learning_curve(gsSVMC.best_estimator_, \"SVC learning curves\", X_train, y_train, cv=kfold)\n",
"g = plot_learning_curve(gsadaDTC.best_estimator_, \"AdaBoost learning curves\", X_train, y_train, cv=kfold)\n",
"g = plot_learning_curve(gsGBC.best_estimator_, \"GradientBoosting learning curves\", X_train, y_train, cv=kfold)"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x112b3b198>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"nrows = ncols = 2\n",
"fig, axes = plt.subplots(nrows = nrows, ncols = ncols, sharex=\"all\", figsize=(15, 15))\n",
"\n",
"names_classifiers = [(\"AdaBoosting\", ada_best), (\"ExtraTrees\", ExtC_best), (\"RandomForest\", RFC_best), (\"GradientBoosting\", GBC_best)]\n",
"\n",
"nclassifier = 0\n",
"for row in range(nrows):\n",
" for col in range(ncols):\n",
" name = names_classifiers[nclassifier][0]\n",
" classifier = names_classifiers[nclassifier][1]\n",
" indices = np.argsort(classifier.feature_importances_)[::-1][:40]\n",
" g = sns.barplot(y=X_train.columns[indices][:40], x = classifier.feature_importances_[indices][:40] , orient='h',ax=axes[row][col])\n",
" g.set_xlabel(\"Relative importance\", fontsize=12)\n",
" g.set_ylabel(\"Features\", fontsize=12)\n",
" g.tick_params(labelsize=9)\n",
" g.set_title(name + \" feature importance\")\n",
" nclassifier += 1"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1131a0c50>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"test_Survived_RFC = pd.Series(RFC_best.predict(X_test), name=\"RFC\")\n",
"test_Survived_ExtC = pd.Series(ExtC_best.predict(X_test), name=\"ExtC\")\n",
"test_Survived_SVMC = pd.Series(SVMC_best.predict(X_test), name=\"SVC\")\n",
"test_Survived_AdaC = pd.Series(ada_best.predict(X_test), name=\"Ada\")\n",
"test_Survived_GBC = pd.Series(GBC_best.predict(X_test), name=\"GBC\")\n",
"test_Survived_XgbC = pd.Series(Xgb_best.predict(X_test), name=\"Xgb\")\n",
"\n",
"# Concatenate all classifier results\n",
"ensemble_results = pd.concat([test_Survived_RFC, test_Survived_ExtC, test_Survived_AdaC, test_Survived_GBC, test_Survived_SVMC, test_Survived_XgbC], axis=1)\n",
"\n",
"g= sns.heatmap(ensemble_results.corr(),annot=True)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [],
"source": [
"# ensamble modeling\n",
"# votingC = VotingClassifier(estimators=[('rfc', RFC_best), ('extc', ExtC_best),\n",
"# ('svc', SVMC_best), ('adac',ada_best),('gbc',GBC_best), ('xgb', Xgb_best)], voting='soft', n_jobs=4)\n",
"votingC = VotingClassifier(estimators=[('rfc', RFC_best), ('extc', ExtC_best),\n",
" ('svc', SVMC_best), ('adac',ada_best),('gbc',GBC_best)], voting='soft', n_jobs=4)\n",
"\n",
"votingC = votingC.fit(X_train, y_train)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [],
"source": [
"# Prediction\n",
"y_pred = pd.Series(votingC.predict(X_test), name=\"Survived\").astype(int)\n",
"\n",
"submission = pd.DataFrame({\n",
" \"PassengerId\": test_df[\"PassengerId\"],\n",
" \"Survived\": y_pred\n",
" })\n",
"submission.to_csv('../output/submission.csv', index=False)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# score: 0.72 (xgboostをvotingClassifierで未使用の場合)"
]
}
],
"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.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment