diff --git a/example/example_notebook.ipynb b/example/example_notebook.ipynb index 734cbd8..979758a 100644 --- a/example/example_notebook.ipynb +++ b/example/example_notebook.ipynb @@ -26,7 +26,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 48, "metadata": {}, "outputs": [], "source": [ @@ -44,7 +44,7 @@ "import xarray as xr\n", "import rasterio as rio\n", "import seaborn as sbs\n", - "from sklearn import svm, preprocessing, model_selection, metrics\n", + "from sklearn import svm, tree, preprocessing, model_selection, metrics\n", "from shutil import copyfile\n", "import os, sys" ] @@ -696,20 +696,30 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 56, + "metadata": {}, + "outputs": [], + "source": [ + "clf4 = tree.DecisionTreeClassifier(class_weight=class_weight, random_state=42)" + ] + }, + { + "cell_type": "code", + "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "clfs = [\n", " clf1,\n", " clf2,\n", - " clf3\n", + " clf3,\n", + " clf4\n", "]" ] }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 58, "metadata": {}, "outputs": [], "source": [ @@ -722,33 +732,15 @@ " # Predict with the scaled prediction data\n", " y_pred = clf.predict(X_test)\n", " # Determine score\n", - " y_score = clf.decision_function(X_test)\n", + " try:\n", + " y_score = clf.decision_function(X_test)\n", + " except:\n", + " pass\n", " # Append\n", " predictions.append(y_pred)\n", " scores.append(y_score)" ] }, - { - "cell_type": "code", - "execution_count": 43, - "metadata": {}, - "outputs": [ - { - "ename": "AttributeError", - "evalue": "'LinearSVC' object has no attribute 'coefs_'", - "output_type": "error", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mclf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcoefs_\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msorted\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[1;31mAttributeError\u001b[0m: 'LinearSVC' object has no attribute 'coefs_'" - ] - } - ], - "source": [ - "clf.coefs_.sorted()" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -808,7 +800,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 59, "metadata": {}, "outputs": [ { @@ -882,6 +874,30 @@ "needs_background": "light" }, "output_type": "display_data" + }, + { + "data": { + "image/png": "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eHCZce3atavw+Y0bN9bPfvYzHTx4sNy5AQMG6MYbbyQ8AgAAAABUWb0Lj2qL1q1b69y5czp69KhWrVqluLg47dixQ8XFxerevbv69OmjTz/9VCtXrtS2bdvUqFEjHT9+vMwcx48f14oVK/Tpp5/KzHTy5MlyX2fo0KGaPXu2br75Zk2ePFmZmZnBMKO0tFTbt2/X22+/rczMzAsuhYuJidGHH36oY8eO6c4779T69evVuHFjPfPMM3ruuec0adIkjRs3TqtWrVLz5s21ZMkSPfHEE/r973+vb775Rm3atKn0e/Lb3/5WTZs21dmzZ9WzZ0/t3r1biYmJFV7j1KlTtW7dOl1zzTXlrrtFixb64x//qKysLK1Zs6bMuWPHjumpp54qV//kyZPLXOf5tmzZok6dOgUfnzlzRhs2bNBLL72kkydPavHixRWGR2+99ZZ+8pOflDv+7LPP6rXXXit3/KabbtLzzz9f5thXX32la6+9Nvg4MTFRX331VbnnVkV8fLyKi4uVn5+vZs2aVcucAAAAAIDLS70Ljy7mDqGa5pyT5F/+tHv3bi1fvlySVFBQoAMHDmj9+vV68MEH1ahRI0kK3nnynSZNmigmJkYjR47Ubbfdpttvv73M+YKCAp08eVI333yzJGnYsGG66667gufvvPNOSVKnTp10+PDhC9b63bKvrVu3at++ferevbsk6dtvv1W3bt20f/9+7dmzR71795bkX/bVsmVLOedCfueupUuXat68eSotLdWRI0e0b98+tW/fvsJr7N69u4YPH6677747eB2h8Kr//Os835EjR8rc2bNmzRr16NFDjRo10i9+8QtNmzZNM2fODC51u//++9WwYUMlJSVp9uzZ5ebLyMhQRkZGSDV/9//k+6rz3dBatGihr7/+mvAIAAAAAFAl9S48qi0OHTqkqKgotWjRQs45zZ49O7jf0HfWrl17wZAgOjpa27dv14YNG/T666/rD3/4gzZu3BhyDVdddZUk/2bepaWlFxzbuHFjSf4go3fv3lq8eHGZ85988olSUlL00UcfVfjcQ4cOqXXr1p7zf/7558rKytKOHTsUHx+v4cOHq6ioyPMa586dq23btulPf/qTfD5fcG+jynjVf/51nq9hw4YqKioKPl68eLG2bNmipKQkSf5NqTdt2qRevXpJ+teeR14u5s6jxMREbd68Ofg4NzdX6enpnnNfrKKiIjVs2LDa5gMAAAAAXF54t7UakJeXp1GjRmns2LEyM/Xt21dz5sxRSUmJJOmzzz7TP//5T/Xp00fz58/X6dOnJancsrVTp06poKBA/fv316xZs8oFKHFxcYqPj9cHH3wgSVq0aFHwLqSq6tq1q7Zs2RLcP+f06dP67LPPlJycrLy8vGB4VFJSor1790qSJk2apDFjxqiw0L/XVGFhoebNm1dm3sLCQjVu3FhxcXH6xz/+oXfeeeeC1/i3v/1NXbp00dSpU5WQkKAvv/zykuqvTLt27YLPKSws1IcffqgvvvhChw8f1uHDh/XCCy94BlIVycjI0K5du8p9nB8cSf6NzLOzs3XixAmdOHFC2dnZ5YLGqnLO6e9//3swBAMAAAAA4GJx51E1OXPmjHw+n0pKShQdHa0hQ4Zo4sSJkqSRI0fq8OHD6tixo5xzat68uVauXKlbb71Vu3btUlpamq688kr1799f06dPD875zTffaODAgSoqKpJzTjNnziz3dRcuXBjcMLt169Z65ZVXLuk6mjdvrgULFmjw4MEqLi6WJD311FO67rrrtHz5co0fP14FBQUqLS3VI488opSUFI0ePVqnTp1S586d1aBBAzVo0ECPPvpomXlTU1N1ww03KCUlRa1btw4uK/O6xoyMDB04cEDOOfXs2VOpqal67733Lqn+C+nXr5+GDBkiSXrzzTd1yy23BO/ckqSBAwfq17/+dXDO6tS0aVP95je/UefOnSVJkydPDi5hHDlypEaNGqW0tDStWLFC48aNU15enm677Tb5fD6tW7dOkn/T88LCQn377bdauXKlsrOz1b59e+3cuVNdu3YtsxE4AAAAAAAXwyrab6U2S0tLczk5OWWO/fWvf/V8JyogVHfccYdmzJihtm3bRrqUajNhwgQNGDBAPXv2LHeOvgEAAAAAfMfMdjrnKtyfhWVrQMDTTz+tI0eORLqMatWhQ4cKgyMAAAAAAELFWhYgIDk5WcnJyZEuo1o9/PDDkS4BAAAAAFDH1Zs7j+ra8jsgkugXAAAAAECo6kV4FBMTo/z8fH4hBkLgnFN+fr5iYmIiXQoAAAAAoA6oF8vWEhMTlZubq7y8vEiXAtQJMTExSkxMjHQZAAAAAIA6oF6ERw0aNFCrVq0iXQYAAAAAAEC9Uy+WrQEAAAAAAKBmEB4BAAAAAADAE+ERAAAAAAAAPFlde4cyM8uT9H+RrqOaJEg6FukigDqAXgFCQ68AoaFXgMrRJ0Bo6lOv/Ng517yiE3UuPKpPzCzHOZcW6TqA2o5eAUJDrwChoVeAytEnQGgul15h2RoAAAAAAAA8ER4BAAAAAADAE+FRZM2LdAFAHUGvAKGhV4DQ0CtA5egTIDSXRa+w5xEAAAAAAAA8cecRAAAAAAAAPBEeAQAAAAAAwBPhURiY2a1mtt/MDprZ4xWcv8rMlgTObzOzpPBXCURWCH0y0cz2mdluM9tgZj+ORJ1ApFXWK98bN8jMnJnV+7eOBSoSSq+Y2d2B15a9Zva/4a4RqA1C+BnsR2a2ycw+Dvwc1j8SdQKRZmbzzeyome3xOG9m9nygl3abWcdw11iTCI9qmJlFSXpBUj9J7SUNNrP25w0bIemEc+7fJc2U9Ex4qwQiK8Q++VhSmnPuPyQtlzQjvFUCkRdir8jMrpY0XtK28FYI1A6h9IqZtZU0SVJ351yKpEfCXigQYSG+rvy3pKXOuRsk3SvpxfBWCdQaCyTdeoHz/SS1DXz8UtKcMNQUNoRHNe8/JR10zh1yzn0r6XVJA88bM1DSwsDnyyX1NDMLY41ApFXaJ865Tc6504GHWyUlhrlGoDYI5TVFkqbJH7AWhbM4oBYJpVcelvSCc+6EJDnnjoa5RqA2CKVXnKQmgc/jJH0dxvqAWsM5976k4xcYMlDSq85vq6QfmFnL8FRX8wiPat41kr783uPcwLEKxzjnSiUVSGoWluqA2iGUPvm+EZLeqdGKgNqp0l4xsxskXeucWxPOwoBaJpTXleskXWdmW8xsq5ld6K/JQH0VSq9MkfSAmeVKelvSuPCUBtQ5F/s7TZ0SHekCLgMV3UHkqjAGqM9C7gEze0BSmqSba7QioHa6YK+Y2RXyL38eHq6CgFoqlNeVaPmXFqTLfzfrB2bWwTl3soZrA2qTUHplsKQFzrnfmVk3SYsCvXKu5ssD6pR6/Xs9dx7VvFxJ137vcaLK3+oZHGNm0fLfDnqh2+GA+iaUPpGZ9ZL0hKQBzrniMNUG1CaV9crVkjpI2mxmhyV1lbSaTbNxGQr1569VzrkS59znkvbLHyYBl5NQemWEpKWS5Jz7SFKMpISwVAfULSH9TlNXER7VvB2S2ppZKzO7Uv5N5lafN2a1pGGBzwdJ2uicqzcJJRCCSvsksBTnJfmDI/alwOXqgr3inCtwziU455Kcc0ny7w82wDmXE5lygYgJ5eevlZJ6SJKZJci/jO1QWKsEIi+UXvlCUk9JMrN28odHeWGtEqgbVksaGnjXta6SCpxzRyJdVHVh2VoNc86VmtlYSeskRUma75zba2ZTJeU451ZLeln+2z8Pyn/H0b2RqxgIvxD75FlJsZKWBfaT/8I5NyBiRQMREGKvAJe9EHtlnaQ+ZrZP0llJGc65/MhVDYRfiL3yqKT/MbP/kn8JznD+0I3LkZktln+pc0JgD7AnJTWQJOfcXPn3BOsv6aCk05IejEylNcPoewAAAAAAAHhh2RoAAAAAAAA8ER4BAAAAAADAE+ERAAAAAAAAPBEeAQAAAAAAwBPhEQAAAAAAADwRHgEAAFTCzM6a2S4z22Nmb5nZD6p5/sNmlhD4/FR1zg0AAHCpCI8AtsM/KQAAAcNJREFUAAAqd8Y553POdZB0XNKYSBcEAAAQLoRHAAAAF+cjSddIkpm1MbO1ZrbTzD4ws+sDx//NzFaY2V8CHz8NHF8ZGLvXzH4ZwWsAAAAIWXSkCwAAAKgrzCxKUk9JLwcOzZM0yjl3wMy6SHpR0i2Snpf0nnPujsBzYgPjH3LOHTezhpJ2mNkbzrn8MF8GAADARSE8AgAAqFxDM9slKUnSTknvmlmspJ9KWmZm3427KvDvLZKGSpJz7qykgsDx8WZ2R+DzayW1lUR4BAAAajXCIwAAgMqdcc75zCxO0hr59zxaIOmkc84XygRmli6pl6RuzrnTZrZZUkzNlAsAAFB92PMIAAAgRM65AknjJT0m6Yykz83sLkkyv9TA0A2SRgeOR5lZE0lxkk4EgqPrJXUN+wUAAABUAeERAADARXDOfSzpL5LulXS/pBFm9hdJeyUNDAybIKmHmX0i/zK3FElrJUWb2W5J0yRtDXftAAAAVWHOuUjXAAAAAAAAgFqKO48AAAAAAADgifAIAAAAAAAAngiPAAAAAAAA4InwCAAAAAAAAJ4IjwAAAAAAAOCJ8AgAAAAAAACeCI8AAAAAAADg6f8Bj13N3YE34OYAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" } ], "source": [ @@ -931,20 +947,6 @@ "Let's safe some settings used in this run to csv-files so results can be assessed in light of these settings." ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "First, the parameters of our SVM model." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Second, the parameters of the scaling method we used." - ] - }, { "cell_type": "code", "execution_count": 28, @@ -959,29 +961,12 @@ " w.writerow([key, val])" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Third, the resulting values of our objective functions." - ] - }, { "cell_type": "code", - "execution_count": 29, + "execution_count": null, "metadata": {}, "outputs": [], - "source": [ - "evaluation = {'Accuracy': round(metrics.accuracy_score(y_test, y_pred), 2),\n", - " 'Precision': round(metrics.precision_score(y_test, y_pred), 2),\n", - " 'Recall': round(metrics.recall_score(y_test, y_pred), 2),\n", - " 'Average precision-recall score': round(average_precision, 2)}\n", - "\n", - "out_fo = os.path.join(out_dir, 'evaluation.csv')\n", - "w = csv.writer(open(out_fo, \"w\"))\n", - "for key, val in evaluation.items():\n", - " w.writerow([key, val])" - ] + "source": [] } ], "metadata": {