"
+ },
+ "metadata": {},
+ "execution_count": 20
+ }
+ ],
"source": [
"citrus_df.describe()"
]
@@ -565,15 +663,27 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 21,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "c61DljFmzpY9"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ " diameter weight red green blue\ncount 5000.000000 5000.000000 5000.000000 5000.000000 5000.000000\nmean 8.474424 152.804920 156.832800 81.988200 7.115200\nstd 1.260665 18.669021 9.890258 10.090789 6.493779\nmin 2.960000 86.760000 123.000000 49.000000 2.000000\n50% 8.470000 152.665000 157.000000 82.000000 4.000000\nmax 12.870000 231.090000 192.000000 116.000000 38.000000\n diameter weight red green blue\ncount 5000.000000 5000.000000 5000.000000 5000.000000 5000.000000\nmean 11.476946 197.296664 150.862800 70.033000 15.611200\nstd 1.221148 19.193190 10.103148 10.044924 9.271592\nmin 7.630000 126.790000 115.000000 31.000000 2.000000\n50% 11.450000 197.430000 151.000000 70.000000 15.000000\nmax 16.450000 261.510000 187.000000 103.000000 56.000000\n"
+ ]
+ }
+ ],
"source": [
- "# Your Solution Goes Here"
+ "# Your Solution Goes Here\n",
+ "orange = citrus_df['name'] == 'orange'\n",
+ "print(citrus_df[orange].describe(percentiles=[.5]))\n",
+ "grapefruit = citrus_df['name'] == 'grapefruit'\n",
+ "print(citrus_df[grapefruit].describe(percentiles=[.5]))"
]
},
{
@@ -610,7 +720,7 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 22,
"metadata": {
"colab": {},
"colab_type": "code",
@@ -637,13 +747,25 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 23,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "YlBaIjExfPFE"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/html": "\n\n",
+ "text/plain": [
+ "alt.Chart(...)"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 23
+ }
+ ],
"source": [
"citrus_df_sample = citrus_df.sample(n=5000, random_state=2020)\n",
"\n",
@@ -669,13 +791,25 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 24,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "X9S23tjUAMXo"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/html": "\n\n",
+ "text/plain": [
+ "alt.HConcatChart(...)"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 24
+ }
+ ],
"source": [
"alt.Chart(citrus_df_sample, width=400).mark_boxplot().encode(\n",
" x='name',\n",
@@ -732,15 +866,38 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 25,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "kvguHDwYB4_P"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ " diameter weight red green blue\ndiameter 1.000000 0.999476 -0.217821 -0.396832 0.363307\nweight 0.999476 1.000000 -0.214714 -0.392003 0.358916\nred -0.217821 -0.214714 1.000000 0.148937 -0.135900\ngreen -0.396832 -0.392003 0.148937 1.000000 -0.242495\nblue 0.363307 0.358916 -0.135900 -0.242495 1.000000\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": "",
+ "image/svg+xml": "\n\n\n\n",
+ "image/png": "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\n"
+ },
+ "metadata": {
+ "needs_background": "light"
+ }
+ }
+ ],
"source": [
- "# Your Solution Goes Here"
+ "# Your Solution Goes Here\n",
+ "import seaborn as sns\n",
+ "corr = citrus_df.corr()\n",
+ "sns.heatmap(corr)\n",
+ "print(corr)"
]
},
{
@@ -793,13 +950,25 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 26,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "voAyuNFs7uBy"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/html": "\n\n",
+ "text/plain": [
+ "alt.Chart(...)"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 26
+ }
+ ],
"source": [
"alt.Chart(citrus_df_sample).mark_circle().encode(\n",
" x='diameter',\n",
@@ -844,13 +1013,25 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 27,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "yCwnzlaqMMPU"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/html": "\n\n",
+ "text/plain": [
+ "alt.HConcatChart(...)"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 27
+ }
+ ],
"source": [
"alt.Chart(citrus_df_sample, width=400).mark_boxplot().encode(\n",
" x='name',\n",
@@ -898,13 +1079,27 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 28,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "PfZyWY4_Lqo7"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "name\n",
+ "grapefruit 5000\n",
+ "orange 5000\n",
+ "Name: name, dtype: int64"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 28
+ }
+ ],
"source": [
"citrus_df.groupby('name')['name'].count()"
]
@@ -925,13 +1120,35 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 29,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "SR96sFvDLnCr"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 29
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": "",
+ "image/svg+xml": "\n\n\n\n",
+ "image/png": "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\n"
+ },
+ "metadata": {
+ "needs_background": "light"
+ }
+ }
+ ],
"source": [
"from PIL import Image\n",
"from matplotlib.pyplot import imshow\n",
@@ -986,15 +1203,62 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 46,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "pWmg9cLXQlWA"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 46
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": "",
+ "image/svg+xml": "\n\n\n\n",
+ "image/png": "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\n"
+ },
+ "metadata": {
+ "needs_background": "light"
+ }
+ }
+ ],
"source": [
- "# Your Solution Goes Here"
+ "# Your Solution Goes Here\n",
+ "from PIL import Image\n",
+ "from matplotlib.pyplot import imshow\n",
+ "import numpy as np\n",
+ "\n",
+ "height, width = 100, 100\n",
+ "img = Image.new('RGB', (width, height), color=(255, 255, 255))\n",
+ "pixels = img.load()\n",
+ "\n",
+ "row_i, col_i = 0, 0\n",
+ "for _, fruit in citrus_df[citrus_df['name'] == 'orange'].iterrows():\n",
+ " pixels[col_i, row_i] = (fruit['red'], fruit['green'], fruit['blue'])\n",
+ " col_i += 1\n",
+ " if col_i >= width:\n",
+ " col_i = 0\n",
+ " row_i += 1\n",
+ "\n",
+ "row_i, col_i = 50, 0\n",
+ "for _, fruit in citrus_df[citrus_df['name'] == 'grapefruit'].iterrows():\n",
+ " pixels[col_i, row_i] = (fruit['red'], fruit['green'], fruit['blue'])\n",
+ " col_i += 1\n",
+ " if col_i >= width:\n",
+ " col_i = 0\n",
+ " row_i += 1\n",
+ "\n",
+ "imshow(img)"
]
},
{
@@ -1058,13 +1322,24 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 47,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "AV0d1qhhOxml"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "Index(['name', 'diameter', 'weight', 'red', 'green', 'blue'], dtype='object')"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 47
+ }
+ ],
"source": [
"citrus_df.columns"
]
@@ -1103,7 +1378,7 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 51,
"metadata": {
"colab": {},
"colab_type": "code",
@@ -1111,7 +1386,8 @@
},
"outputs": [],
"source": [
- "# Your Solution Goes Here"
+ "# Your Solution Goes Here\n",
+ "citrus_df['is_orange'] = citrus_df['name'] == 'orange'"
]
},
{
@@ -1148,13 +1424,27 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 52,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "6dtKjRtAYtsg"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "is_orange\n",
+ "False 5000\n",
+ "True 5000\n",
+ "Name: is_orange, dtype: int64"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 52
+ }
+ ],
"source": [
"citrus_df.groupby('is_orange')['is_orange'].count()"
]
@@ -1173,13 +1463,24 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 53,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "XDdyNHZgZEUN"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "array(['orange'], dtype=object)"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 53
+ }
+ ],
"source": [
"citrus_df[citrus_df['is_orange']]['name'].unique()"
]
@@ -1216,13 +1517,24 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 56,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "YuE6tX8qO3fF"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "('is_orange', ['diameter', 'weight', 'red', 'green', 'blue'])"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 56
+ }
+ ],
"source": [
"target_column = 'is_orange'\n",
"\n",
@@ -1245,13 +1557,27 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 57,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "E9y3IXRaeYPD"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "is_orange\n",
+ "False 4030\n",
+ "True 3970\n",
+ "Name: is_orange, dtype: int64"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 57
+ }
+ ],
"source": [
"from sklearn.model_selection import train_test_split\n",
"\n",
@@ -1277,13 +1603,27 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 58,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "duQC2BDgnDJt"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "is_orange\n",
+ "False 970\n",
+ "True 1030\n",
+ "Name: is_orange, dtype: int64"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 58
+ }
+ ],
"source": [
"y_test.groupby(y_test).count()"
]
@@ -1322,15 +1662,40 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 59,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "cJ1Cf4YMwutU"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "is_orange\n",
+ "False 4000\n",
+ "True 4000\n",
+ "Name: is_orange, dtype: int64"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 59
+ }
+ ],
"source": [
- "# Your Code Goes Here"
+ "# Your Code Goes Here\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "\n",
+ "X_train, X_test, y_train, y_test = train_test_split(\n",
+ " citrus_df[feature_columns],\n",
+ " citrus_df[target_column],\n",
+ " test_size=0.2,\n",
+ " random_state=180,\n",
+ " shuffle=True,\n",
+ " stratify=citrus_df[target_column])\n",
+ "\n",
+ "y_train.groupby(y_train).count()"
]
},
{
@@ -1365,13 +1730,24 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 60,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "M05Xb00YQce_"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "((8000, 5), (8000,))"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 60
+ }
+ ],
"source": [
"X_train.shape, y_train.shape"
]
@@ -1388,13 +1764,24 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 61,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "0J5iWTZVQgYr"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "((2000, 5), (2000,))"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 61
+ }
+ ],
"source": [
"X_test.shape, y_test.shape"
]
@@ -1411,13 +1798,28 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 62,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "CYqtUfInQw2K"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "count 8000\n",
+ "unique 2\n",
+ "top False\n",
+ "freq 4000\n",
+ "Name: is_orange, dtype: object"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 62
+ }
+ ],
"source": [
"y_train.describe()"
]
@@ -1436,13 +1838,28 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 63,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "JgTAtdGRRdzZ"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "count 2000\n",
+ "unique 2\n",
+ "top False\n",
+ "freq 1000\n",
+ "Name: is_orange, dtype: object"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 63
+ }
+ ],
"source": [
"y_test.describe()"
]
@@ -1459,13 +1876,27 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 64,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "pwnrwBbKTLo6"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "is_orange\n",
+ "False 1000\n",
+ "True 1000\n",
+ "Name: is_orange, dtype: int64"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 64
+ }
+ ],
"source": [
"y_test.groupby(by=y_test).count()"
]
@@ -1494,13 +1925,28 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 65,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "jCmKNLvDTgti"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n",
+ " intercept_scaling=1, l1_ratio=None, max_iter=100,\n",
+ " multi_class='auto', n_jobs=None, penalty='l2',\n",
+ " random_state=2020, solver='lbfgs', tol=0.0001, verbose=0,\n",
+ " warm_start=False)"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 65
+ }
+ ],
"source": [
"from sklearn.linear_model import LogisticRegression\n",
"\n",
@@ -1532,7 +1978,7 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 67,
"metadata": {
"colab": {},
"colab_type": "code",
@@ -1555,13 +2001,21 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 70,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "aIESA8B8WYgn"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Accuracy: 0.953\nPrecision: 0.941\nRecall: 0.964\nF1: 0.952\n"
+ ]
+ }
+ ],
"source": [
"from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score\n",
"\n",
@@ -1585,13 +2039,21 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 71,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "zqkTlKu_ax3B"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "True Positive: 941\nTrue Negative: 965\nFalse Positive: 35\nFalse Negative: 59\n"
+ ]
+ }
+ ],
"source": [
"from sklearn.metrics import confusion_matrix\n",
"\n",
@@ -1649,7 +2111,7 @@
"id": "U-upCwGgktep"
},
"source": [
- "---"
+ "a false postive is when a grapefruit is identified as an orange, and a false negative is when an orange is identified as a grapefruit"
]
},
{
@@ -1674,13 +2136,25 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 72,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "X4vXHTwvY4aV"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": "",
+ "image/svg+xml": "\n\n\n\n",
+ "image/png": "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\n"
+ },
+ "metadata": {
+ "needs_background": "light"
+ }
+ }
+ ],
"source": [
"from sklearn.metrics import roc_curve\n",
"from sklearn.metrics import roc_auc_score\n",
@@ -1727,13 +2201,25 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 73,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "YyvmOGaHluCl"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": "",
+ "image/svg+xml": "\n\n\n\n",
+ "image/png": "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\n"
+ },
+ "metadata": {
+ "needs_background": "light"
+ }
+ }
+ ],
"source": [
"from sklearn.metrics import precision_recall_curve\n",
"\n",
@@ -1819,13 +2305,246 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 76,
"metadata": {
"colab": {},
"colab_type": "code",
- "id": "VrFSNQv1onp4"
- },
- "outputs": [],
+ "id": "VrFSNQv1onp4",
+ "tags": [
+ "outputPrepend"
+ ]
+ },
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stderr",
+ "text": [
+ "/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "ValueError: Logistic Regression supports only solvers in ['liblinear', 'newton-cg', 'lbfgs', 'sag', 'saga'], got netwton-cg.\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "AttributeError: 'str' object has no attribute 'decode'\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "ValueError: Logistic Regression supports only solvers in ['liblinear', 'newton-cg', 'lbfgs', 'sag', 'saga'], got netwton-cg.\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "LogisticRegression(C=1, class_weight=None, dual=False, fit_intercept=True,\n",
+ " intercept_scaling=1, l1_ratio=None, max_iter=100,\n",
+ " multi_class='auto', n_jobs=None, penalty='l2',\n",
+ " random_state=2020, solver='lbfgs', tol=1, verbose=0,\n",
+ " warm_start=False)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n"
+ ]
+ }
+ ],
"source": [
"import pandas as pd\n",
"\n",
@@ -1852,7 +2571,10 @@
")\n",
"\n",
"search = GridSearchCV(model, {\n",
- " # Your Solution Goes Here\n",
+ " 'tol' : [10 **(-k) for k in range(6)],\n",
+ " 'C' : [10**(-k) for k in range(6)],\n",
+ " 'solver' : ['netwton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'],\n",
+ " 'max_iter' : [10 ** k for k in range(3)],\n",
"})\n",
"\n",
"search.fit(X_train, y_train)\n",
@@ -1896,15 +2618,30 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 77,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "4RpgwipWsmB8"
},
- "outputs": [],
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Accuracy: 0.958\nPrecision: 0.94\nRecall: 0.974\nF1: 0.957\n"
+ ]
+ }
+ ],
"source": [
- "# Your Solution Goes Here"
+ "# Your Solution Goes Here\n",
+ "from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score\n",
+ "predictions = search.predict(X_validate)\n",
+ "\n",
+ "print('Accuracy: ', round(accuracy_score(predictions, y_validate), 3))\n",
+ "print('Precision: ', round(precision_score(predictions, y_validate), 3))\n",
+ "print('Recall: ', round(recall_score(predictions, y_validate), 3))\n",
+ "print('F1: ', round(f1_score(predictions, y_validate), 3))"
]
},
{
@@ -1946,7 +2683,7 @@
"id": "SNzRzEB8tHaZ"
},
"source": [
- "*Please Put Your Answer Here*"
+ "the grid search is only a little better, accuracy is .005 more accurate "
]
},
{
@@ -1988,7 +2725,7 @@
"id": "vIR8qHyyuVPy"
},
"source": [
- "*Please Put Your Answer Here*"
+ "i dont think so because the humans can achieve a similar score. we wanted our machine leaerning model to do better."
]
},
{
@@ -2042,7 +2779,8 @@
"id": "tibOqWcM1UIP"
},
"source": [
- "*Please Put Your Answer Here*"
+ "Standardizing the features around the center and 0 with a standard deviation of 1 is important when we compare measurements that have different units. Variables that are measured at different scales do not contribute equally to the analysis and might end up creating a bais.\n",
+ "article: https://towardsai.net/p/data-science/how-when-and-why-should-you-normalize-standardize-rescale-your-data-3f083def38ff"
]
},
{
@@ -2079,15 +2817,264 @@
},
{
"cell_type": "code",
- "execution_count": 0,
+ "execution_count": 87,
"metadata": {
"colab": {},
"colab_type": "code",
- "id": "YLTLFHgZyP_r"
- },
- "outputs": [],
+ "id": "YLTLFHgZyP_r",
+ "tags": [
+ "outputPrepend"
+ ]
+ },
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "ed to converge, increase the number of iterations.\n",
+ " \"the number of iterations.\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/svm/_base.py:947: ConvergenceWarning: Liblinear failed to converge, increase the number of iterations.\n",
+ " \"the number of iterations.\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "ValueError: Logistic Regression supports only solvers in ['liblinear', 'newton-cg', 'lbfgs', 'sag', 'saga'], got netwton-cg.\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/linear_model/_sag.py:330: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n",
+ " \"the coef_ did not converge\", ConvergenceWarning)\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/model_selection/_validation.py:536: FitFailedWarning: Estimator fit failed. The score on this train-test partition for these parameters will be set to nan. Details: \n",
+ "ValueError: Logistic Regression supports only solvers in ['liblinear', 'newton-cg', 'lbfgs', 'sag', 'saga'], got netwton-cg.\n",
+ "\n",
+ " FitFailedWarning)\n",
+ "LogisticRegression(C=1, class_weight=None, dual=False, fit_intercept=True,\n",
+ " intercept_scaling=1, l1_ratio=None, max_iter=10,\n",
+ " multi_class='auto', n_jobs=None, penalty='l2',\n",
+ " random_state=2020, solver='liblinear', tol=0.001, verbose=0,\n",
+ " warm_start=False)\n",
+ "Accuracy: 0.942\n",
+ "Precision: 0.934\n",
+ "Recall: 0.948\n",
+ "F1: 0.941\n",
+ "/opt/anaconda3/envs/tf/lib/python3.7/site-packages/sklearn/svm/_base.py:947: ConvergenceWarning: Liblinear failed to converge, increase the number of iterations.\n",
+ " \"the number of iterations.\", ConvergenceWarning)\n"
+ ]
+ }
+ ],
"source": [
- "# Your code goes here"
+ "# Your code goes here\n",
+ "import pandas as pd\n",
+ "\n",
+ "from sklearn.linear_model import LogisticRegression\n",
+ "from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score\n",
+ "from sklearn.model_selection import train_test_split, GridSearchCV\n",
+ "from sklearn.preprocessing import StandardScaler\n",
+ "\n",
+ "\n",
+ "citrus_df = pd.read_csv('citrus.csv', header=0)\n",
+ "citrus_df['is_orange'] = citrus_df['name'].apply(lambda name: name == 'orange')\n",
+ "\n",
+ "target_column = 'is_orange'\n",
+ "feature_columns = ['diameter', 'weight', 'red', 'green', 'blue']\n",
+ "\n",
+ "scale = StandardScaler()\n",
+ "\n",
+ "citrus_df[feature_columns] = scale.fit_transform(citrus_df[feature_columns])\n",
+ "# citrus_df[feature_columns] = scale.transform(citrus_df[feature_columns])\n",
+ "# print(citrus_df)\n",
+ "\n",
+ "X_train, X_validate, y_train, y_validate = train_test_split(\n",
+ " citrus_df[feature_columns],\n",
+ " citrus_df[target_column],\n",
+ " test_size=0.2,\n",
+ " random_state=42,\n",
+ " shuffle=True,\n",
+ " stratify=citrus_df[target_column])\n",
+ "\n",
+ "model = LogisticRegression(\n",
+ " random_state=2020,\n",
+ ")\n",
+ "\n",
+ "search = GridSearchCV(model, {\n",
+ " 'tol' : [10 **(-k) for k in range(6)],\n",
+ " 'C' : [10**(-k) for k in range(6)],\n",
+ " 'solver' : ['netwton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'],\n",
+ " 'max_iter' : [10 ** k for k in range(3)],\n",
+ "})\n",
+ "\n",
+ "search.fit(X_train, y_train)\n",
+ "\n",
+ "print(search.best_estimator_)\n",
+ "\n",
+ "from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score\n",
+ "predictions = search.predict(X_validate)\n",
+ "\n",
+ "print('Accuracy: ', round(accuracy_score(predictions, y_validate), 3))\n",
+ "print('Precision: ', round(precision_score(predictions, y_validate), 3))\n",
+ "print('Recall: ', round(recall_score(predictions, y_validate), 3))\n",
+ "print('F1: ', round(f1_score(predictions, y_validate), 3))"
]
},
{
@@ -2119,17 +3106,7 @@
"id": "jS4EWkOS3-MH"
},
"source": [
- "#### **Student Solution**"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "colab_type": "text",
- "id": "XBy3g7pz4win"
- },
- "source": [
- "*Please Put Your Answer Here*"
+ "no they are not. because the data has been scaled which will cause the hyperparameters to change. though it changed the hyperparameters it seems like it ran faster beacuse of the scaling."
]
},
{
@@ -2170,10 +3147,13 @@
"toc_visible": true
},
"kernelspec": {
- "display_name": "Python 3",
- "name": "python3"
+ "name": "python3",
+ "display_name": "Python 3.7.10 64-bit ('tf': conda)"
+ },
+ "interpreter": {
+ "hash": "10e89b4373ca82b9aa008416dbc6678ec2573a3d463e333e4d350f38af34d33f"
}
},
"nbformat": 4,
"nbformat_minor": 0
-}
+}
\ No newline at end of file