machinelearning

Machine learning code
git clone git://git.laack.co/machinelearning.git
Log | Files | Refs

svmClassifier.ipynb (21734B)


      1 {
      2  "cells": [
      3   {
      4    "cell_type": "code",
      5    "execution_count": 7,
      6    "metadata": {},
      7    "outputs": [
      8     {
      9      "name": "stderr",
     10      "output_type": "stream",
     11      "text": [
     12       "/home/andrew/gitRepos/myvenv/lib/python3.11/site-packages/sklearn/svm/_classes.py:31: FutureWarning: The default value of `dual` will change from `True` to `'auto'` in 1.5. Set the value of `dual` explicitly to suppress the warning.\n",
     13       "  warnings.warn(\n"
     14      ]
     15     },
     16     {
     17      "data": {
     18       "text/html": [
     19        "<style>#sk-container-id-2 {\n",
     20        "  /* Definition of color scheme common for light and dark mode */\n",
     21        "  --sklearn-color-text: black;\n",
     22        "  --sklearn-color-line: gray;\n",
     23        "  /* Definition of color scheme for unfitted estimators */\n",
     24        "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
     25        "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
     26        "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
     27        "  --sklearn-color-unfitted-level-3: chocolate;\n",
     28        "  /* Definition of color scheme for fitted estimators */\n",
     29        "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
     30        "  --sklearn-color-fitted-level-1: #d4ebff;\n",
     31        "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
     32        "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
     33        "\n",
     34        "  /* Specific color for light theme */\n",
     35        "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
     36        "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
     37        "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
     38        "  --sklearn-color-icon: #696969;\n",
     39        "\n",
     40        "  @media (prefers-color-scheme: dark) {\n",
     41        "    /* Redefinition of color scheme for dark theme */\n",
     42        "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
     43        "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
     44        "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
     45        "    --sklearn-color-icon: #878787;\n",
     46        "  }\n",
     47        "}\n",
     48        "\n",
     49        "#sk-container-id-2 {\n",
     50        "  color: var(--sklearn-color-text);\n",
     51        "}\n",
     52        "\n",
     53        "#sk-container-id-2 pre {\n",
     54        "  padding: 0;\n",
     55        "}\n",
     56        "\n",
     57        "#sk-container-id-2 input.sk-hidden--visually {\n",
     58        "  border: 0;\n",
     59        "  clip: rect(1px 1px 1px 1px);\n",
     60        "  clip: rect(1px, 1px, 1px, 1px);\n",
     61        "  height: 1px;\n",
     62        "  margin: -1px;\n",
     63        "  overflow: hidden;\n",
     64        "  padding: 0;\n",
     65        "  position: absolute;\n",
     66        "  width: 1px;\n",
     67        "}\n",
     68        "\n",
     69        "#sk-container-id-2 div.sk-dashed-wrapped {\n",
     70        "  border: 1px dashed var(--sklearn-color-line);\n",
     71        "  margin: 0 0.4em 0.5em 0.4em;\n",
     72        "  box-sizing: border-box;\n",
     73        "  padding-bottom: 0.4em;\n",
     74        "  background-color: var(--sklearn-color-background);\n",
     75        "}\n",
     76        "\n",
     77        "#sk-container-id-2 div.sk-container {\n",
     78        "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
     79        "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
     80        "     so we also need the `!important` here to be able to override the\n",
     81        "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
     82        "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
     83        "  display: inline-block !important;\n",
     84        "  position: relative;\n",
     85        "}\n",
     86        "\n",
     87        "#sk-container-id-2 div.sk-text-repr-fallback {\n",
     88        "  display: none;\n",
     89        "}\n",
     90        "\n",
     91        "div.sk-parallel-item,\n",
     92        "div.sk-serial,\n",
     93        "div.sk-item {\n",
     94        "  /* draw centered vertical line to link estimators */\n",
     95        "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
     96        "  background-size: 2px 100%;\n",
     97        "  background-repeat: no-repeat;\n",
     98        "  background-position: center center;\n",
     99        "}\n",
    100        "\n",
    101        "/* Parallel-specific style estimator block */\n",
    102        "\n",
    103        "#sk-container-id-2 div.sk-parallel-item::after {\n",
    104        "  content: \"\";\n",
    105        "  width: 100%;\n",
    106        "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
    107        "  flex-grow: 1;\n",
    108        "}\n",
    109        "\n",
    110        "#sk-container-id-2 div.sk-parallel {\n",
    111        "  display: flex;\n",
    112        "  align-items: stretch;\n",
    113        "  justify-content: center;\n",
    114        "  background-color: var(--sklearn-color-background);\n",
    115        "  position: relative;\n",
    116        "}\n",
    117        "\n",
    118        "#sk-container-id-2 div.sk-parallel-item {\n",
    119        "  display: flex;\n",
    120        "  flex-direction: column;\n",
    121        "}\n",
    122        "\n",
    123        "#sk-container-id-2 div.sk-parallel-item:first-child::after {\n",
    124        "  align-self: flex-end;\n",
    125        "  width: 50%;\n",
    126        "}\n",
    127        "\n",
    128        "#sk-container-id-2 div.sk-parallel-item:last-child::after {\n",
    129        "  align-self: flex-start;\n",
    130        "  width: 50%;\n",
    131        "}\n",
    132        "\n",
    133        "#sk-container-id-2 div.sk-parallel-item:only-child::after {\n",
    134        "  width: 0;\n",
    135        "}\n",
    136        "\n",
    137        "/* Serial-specific style estimator block */\n",
    138        "\n",
    139        "#sk-container-id-2 div.sk-serial {\n",
    140        "  display: flex;\n",
    141        "  flex-direction: column;\n",
    142        "  align-items: center;\n",
    143        "  background-color: var(--sklearn-color-background);\n",
    144        "  padding-right: 1em;\n",
    145        "  padding-left: 1em;\n",
    146        "}\n",
    147        "\n",
    148        "\n",
    149        "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
    150        "clickable and can be expanded/collapsed.\n",
    151        "- Pipeline and ColumnTransformer use this feature and define the default style\n",
    152        "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
    153        "*/\n",
    154        "\n",
    155        "/* Pipeline and ColumnTransformer style (default) */\n",
    156        "\n",
    157        "#sk-container-id-2 div.sk-toggleable {\n",
    158        "  /* Default theme specific background. It is overwritten whether we have a\n",
    159        "  specific estimator or a Pipeline/ColumnTransformer */\n",
    160        "  background-color: var(--sklearn-color-background);\n",
    161        "}\n",
    162        "\n",
    163        "/* Toggleable label */\n",
    164        "#sk-container-id-2 label.sk-toggleable__label {\n",
    165        "  cursor: pointer;\n",
    166        "  display: block;\n",
    167        "  width: 100%;\n",
    168        "  margin-bottom: 0;\n",
    169        "  padding: 0.5em;\n",
    170        "  box-sizing: border-box;\n",
    171        "  text-align: center;\n",
    172        "}\n",
    173        "\n",
    174        "#sk-container-id-2 label.sk-toggleable__label-arrow:before {\n",
    175        "  /* Arrow on the left of the label */\n",
    176        "  content: \"▸\";\n",
    177        "  float: left;\n",
    178        "  margin-right: 0.25em;\n",
    179        "  color: var(--sklearn-color-icon);\n",
    180        "}\n",
    181        "\n",
    182        "#sk-container-id-2 label.sk-toggleable__label-arrow:hover:before {\n",
    183        "  color: var(--sklearn-color-text);\n",
    184        "}\n",
    185        "\n",
    186        "/* Toggleable content - dropdown */\n",
    187        "\n",
    188        "#sk-container-id-2 div.sk-toggleable__content {\n",
    189        "  max-height: 0;\n",
    190        "  max-width: 0;\n",
    191        "  overflow: hidden;\n",
    192        "  text-align: left;\n",
    193        "  /* unfitted */\n",
    194        "  background-color: var(--sklearn-color-unfitted-level-0);\n",
    195        "}\n",
    196        "\n",
    197        "#sk-container-id-2 div.sk-toggleable__content.fitted {\n",
    198        "  /* fitted */\n",
    199        "  background-color: var(--sklearn-color-fitted-level-0);\n",
    200        "}\n",
    201        "\n",
    202        "#sk-container-id-2 div.sk-toggleable__content pre {\n",
    203        "  margin: 0.2em;\n",
    204        "  border-radius: 0.25em;\n",
    205        "  color: var(--sklearn-color-text);\n",
    206        "  /* unfitted */\n",
    207        "  background-color: var(--sklearn-color-unfitted-level-0);\n",
    208        "}\n",
    209        "\n",
    210        "#sk-container-id-2 div.sk-toggleable__content.fitted pre {\n",
    211        "  /* unfitted */\n",
    212        "  background-color: var(--sklearn-color-fitted-level-0);\n",
    213        "}\n",
    214        "\n",
    215        "#sk-container-id-2 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
    216        "  /* Expand drop-down */\n",
    217        "  max-height: 200px;\n",
    218        "  max-width: 100%;\n",
    219        "  overflow: auto;\n",
    220        "}\n",
    221        "\n",
    222        "#sk-container-id-2 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
    223        "  content: \"▾\";\n",
    224        "}\n",
    225        "\n",
    226        "/* Pipeline/ColumnTransformer-specific style */\n",
    227        "\n",
    228        "#sk-container-id-2 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
    229        "  color: var(--sklearn-color-text);\n",
    230        "  background-color: var(--sklearn-color-unfitted-level-2);\n",
    231        "}\n",
    232        "\n",
    233        "#sk-container-id-2 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
    234        "  background-color: var(--sklearn-color-fitted-level-2);\n",
    235        "}\n",
    236        "\n",
    237        "/* Estimator-specific style */\n",
    238        "\n",
    239        "/* Colorize estimator box */\n",
    240        "#sk-container-id-2 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
    241        "  /* unfitted */\n",
    242        "  background-color: var(--sklearn-color-unfitted-level-2);\n",
    243        "}\n",
    244        "\n",
    245        "#sk-container-id-2 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
    246        "  /* fitted */\n",
    247        "  background-color: var(--sklearn-color-fitted-level-2);\n",
    248        "}\n",
    249        "\n",
    250        "#sk-container-id-2 div.sk-label label.sk-toggleable__label,\n",
    251        "#sk-container-id-2 div.sk-label label {\n",
    252        "  /* The background is the default theme color */\n",
    253        "  color: var(--sklearn-color-text-on-default-background);\n",
    254        "}\n",
    255        "\n",
    256        "/* On hover, darken the color of the background */\n",
    257        "#sk-container-id-2 div.sk-label:hover label.sk-toggleable__label {\n",
    258        "  color: var(--sklearn-color-text);\n",
    259        "  background-color: var(--sklearn-color-unfitted-level-2);\n",
    260        "}\n",
    261        "\n",
    262        "/* Label box, darken color on hover, fitted */\n",
    263        "#sk-container-id-2 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
    264        "  color: var(--sklearn-color-text);\n",
    265        "  background-color: var(--sklearn-color-fitted-level-2);\n",
    266        "}\n",
    267        "\n",
    268        "/* Estimator label */\n",
    269        "\n",
    270        "#sk-container-id-2 div.sk-label label {\n",
    271        "  font-family: monospace;\n",
    272        "  font-weight: bold;\n",
    273        "  display: inline-block;\n",
    274        "  line-height: 1.2em;\n",
    275        "}\n",
    276        "\n",
    277        "#sk-container-id-2 div.sk-label-container {\n",
    278        "  text-align: center;\n",
    279        "}\n",
    280        "\n",
    281        "/* Estimator-specific */\n",
    282        "#sk-container-id-2 div.sk-estimator {\n",
    283        "  font-family: monospace;\n",
    284        "  border: 1px dotted var(--sklearn-color-border-box);\n",
    285        "  border-radius: 0.25em;\n",
    286        "  box-sizing: border-box;\n",
    287        "  margin-bottom: 0.5em;\n",
    288        "  /* unfitted */\n",
    289        "  background-color: var(--sklearn-color-unfitted-level-0);\n",
    290        "}\n",
    291        "\n",
    292        "#sk-container-id-2 div.sk-estimator.fitted {\n",
    293        "  /* fitted */\n",
    294        "  background-color: var(--sklearn-color-fitted-level-0);\n",
    295        "}\n",
    296        "\n",
    297        "/* on hover */\n",
    298        "#sk-container-id-2 div.sk-estimator:hover {\n",
    299        "  /* unfitted */\n",
    300        "  background-color: var(--sklearn-color-unfitted-level-2);\n",
    301        "}\n",
    302        "\n",
    303        "#sk-container-id-2 div.sk-estimator.fitted:hover {\n",
    304        "  /* fitted */\n",
    305        "  background-color: var(--sklearn-color-fitted-level-2);\n",
    306        "}\n",
    307        "\n",
    308        "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
    309        "\n",
    310        "/* Common style for \"i\" and \"?\" */\n",
    311        "\n",
    312        ".sk-estimator-doc-link,\n",
    313        "a:link.sk-estimator-doc-link,\n",
    314        "a:visited.sk-estimator-doc-link {\n",
    315        "  float: right;\n",
    316        "  font-size: smaller;\n",
    317        "  line-height: 1em;\n",
    318        "  font-family: monospace;\n",
    319        "  background-color: var(--sklearn-color-background);\n",
    320        "  border-radius: 1em;\n",
    321        "  height: 1em;\n",
    322        "  width: 1em;\n",
    323        "  text-decoration: none !important;\n",
    324        "  margin-left: 1ex;\n",
    325        "  /* unfitted */\n",
    326        "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
    327        "  color: var(--sklearn-color-unfitted-level-1);\n",
    328        "}\n",
    329        "\n",
    330        ".sk-estimator-doc-link.fitted,\n",
    331        "a:link.sk-estimator-doc-link.fitted,\n",
    332        "a:visited.sk-estimator-doc-link.fitted {\n",
    333        "  /* fitted */\n",
    334        "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
    335        "  color: var(--sklearn-color-fitted-level-1);\n",
    336        "}\n",
    337        "\n",
    338        "/* On hover */\n",
    339        "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
    340        ".sk-estimator-doc-link:hover,\n",
    341        "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
    342        ".sk-estimator-doc-link:hover {\n",
    343        "  /* unfitted */\n",
    344        "  background-color: var(--sklearn-color-unfitted-level-3);\n",
    345        "  color: var(--sklearn-color-background);\n",
    346        "  text-decoration: none;\n",
    347        "}\n",
    348        "\n",
    349        "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
    350        ".sk-estimator-doc-link.fitted:hover,\n",
    351        "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
    352        ".sk-estimator-doc-link.fitted:hover {\n",
    353        "  /* fitted */\n",
    354        "  background-color: var(--sklearn-color-fitted-level-3);\n",
    355        "  color: var(--sklearn-color-background);\n",
    356        "  text-decoration: none;\n",
    357        "}\n",
    358        "\n",
    359        "/* Span, style for the box shown on hovering the info icon */\n",
    360        ".sk-estimator-doc-link span {\n",
    361        "  display: none;\n",
    362        "  z-index: 9999;\n",
    363        "  position: relative;\n",
    364        "  font-weight: normal;\n",
    365        "  right: .2ex;\n",
    366        "  padding: .5ex;\n",
    367        "  margin: .5ex;\n",
    368        "  width: min-content;\n",
    369        "  min-width: 20ex;\n",
    370        "  max-width: 50ex;\n",
    371        "  color: var(--sklearn-color-text);\n",
    372        "  box-shadow: 2pt 2pt 4pt #999;\n",
    373        "  /* unfitted */\n",
    374        "  background: var(--sklearn-color-unfitted-level-0);\n",
    375        "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
    376        "}\n",
    377        "\n",
    378        ".sk-estimator-doc-link.fitted span {\n",
    379        "  /* fitted */\n",
    380        "  background: var(--sklearn-color-fitted-level-0);\n",
    381        "  border: var(--sklearn-color-fitted-level-3);\n",
    382        "}\n",
    383        "\n",
    384        ".sk-estimator-doc-link:hover span {\n",
    385        "  display: block;\n",
    386        "}\n",
    387        "\n",
    388        "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
    389        "\n",
    390        "#sk-container-id-2 a.estimator_doc_link {\n",
    391        "  float: right;\n",
    392        "  font-size: 1rem;\n",
    393        "  line-height: 1em;\n",
    394        "  font-family: monospace;\n",
    395        "  background-color: var(--sklearn-color-background);\n",
    396        "  border-radius: 1rem;\n",
    397        "  height: 1rem;\n",
    398        "  width: 1rem;\n",
    399        "  text-decoration: none;\n",
    400        "  /* unfitted */\n",
    401        "  color: var(--sklearn-color-unfitted-level-1);\n",
    402        "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
    403        "}\n",
    404        "\n",
    405        "#sk-container-id-2 a.estimator_doc_link.fitted {\n",
    406        "  /* fitted */\n",
    407        "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
    408        "  color: var(--sklearn-color-fitted-level-1);\n",
    409        "}\n",
    410        "\n",
    411        "/* On hover */\n",
    412        "#sk-container-id-2 a.estimator_doc_link:hover {\n",
    413        "  /* unfitted */\n",
    414        "  background-color: var(--sklearn-color-unfitted-level-3);\n",
    415        "  color: var(--sklearn-color-background);\n",
    416        "  text-decoration: none;\n",
    417        "}\n",
    418        "\n",
    419        "#sk-container-id-2 a.estimator_doc_link.fitted:hover {\n",
    420        "  /* fitted */\n",
    421        "  background-color: var(--sklearn-color-fitted-level-3);\n",
    422        "}\n",
    423        "</style><div id=\"sk-container-id-2\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>Pipeline(steps=[(&#x27;standardscaler&#x27;, StandardScaler()),\n",
    424        "                (&#x27;linearsvc&#x27;, LinearSVC(C=1, random_state=10))])</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-4\" type=\"checkbox\" ><label for=\"sk-estimator-id-4\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\">&nbsp;&nbsp;Pipeline<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.pipeline.Pipeline.html\">?<span>Documentation for Pipeline</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>Pipeline(steps=[(&#x27;standardscaler&#x27;, StandardScaler()),\n",
    425        "                (&#x27;linearsvc&#x27;, LinearSVC(C=1, random_state=10))])</pre></div> </div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-5\" type=\"checkbox\" ><label for=\"sk-estimator-id-5\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\">&nbsp;StandardScaler<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.preprocessing.StandardScaler.html\">?<span>Documentation for StandardScaler</span></a></label><div class=\"sk-toggleable__content fitted\"><pre>StandardScaler()</pre></div> </div></div><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-6\" type=\"checkbox\" ><label for=\"sk-estimator-id-6\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\">&nbsp;LinearSVC<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.4/modules/generated/sklearn.svm.LinearSVC.html\">?<span>Documentation for LinearSVC</span></a></label><div class=\"sk-toggleable__content fitted\"><pre>LinearSVC(C=1, random_state=10)</pre></div> </div></div></div></div></div></div>"
    426       ],
    427       "text/plain": [
    428        "Pipeline(steps=[('standardscaler', StandardScaler()),\n",
    429        "                ('linearsvc', LinearSVC(C=1, random_state=10))])"
    430       ]
    431      },
    432      "execution_count": 7,
    433      "metadata": {},
    434      "output_type": "execute_result"
    435     }
    436    ],
    437    "source": [
    438     "from sklearn.datasets import load_iris\n",
    439     "from sklearn.pipeline import make_pipeline\n",
    440     "from sklearn.preprocessing import StandardScaler\n",
    441     "from sklearn.svm import LinearSVC\n",
    442     "\n",
    443     "iris = load_iris(as_frame=True)\n",
    444     "X = iris.data[['petal length (cm)' , 'petal width (cm)']].values\n",
    445     "y = (iris.target == 2)\n",
    446     "\n",
    447     "svm_clf = make_pipeline(StandardScaler() , LinearSVC(C=1,random_state=10))\n",
    448     "svm_clf.fit(X,y)"
    449    ]
    450   },
    451   {
    452    "cell_type": "code",
    453    "execution_count": 8,
    454    "metadata": {},
    455    "outputs": [
    456     {
    457      "data": {
    458       "text/plain": [
    459        "array([ True, False])"
    460       ]
    461      },
    462      "execution_count": 8,
    463      "metadata": {},
    464      "output_type": "execute_result"
    465     }
    466    ],
    467    "source": [
    468     "X_new = [[5.5, 1.7] , [5.0 , 1.5]]\n",
    469     "svm_clf.predict(X_new)"
    470    ]
    471   },
    472   {
    473    "cell_type": "code",
    474    "execution_count": 9,
    475    "metadata": {},
    476    "outputs": [
    477     {
    478      "data": {
    479       "text/plain": [
    480        "array([ 0.66163366, -0.22036138])"
    481       ]
    482      },
    483      "execution_count": 9,
    484      "metadata": {},
    485      "output_type": "execute_result"
    486     }
    487    ],
    488    "source": [
    489     "# Distance for each sample from the decision boundary (signed values denoting which side they are on positive is true)\n",
    490     "svm_clf.decision_function(X_new)"
    491    ]
    492   }
    493  ],
    494  "metadata": {
    495   "kernelspec": {
    496    "display_name": "notebook",
    497    "language": "python",
    498    "name": "notebook"
    499   },
    500   "language_info": {
    501    "codemirror_mode": {
    502     "name": "ipython",
    503     "version": 3
    504    },
    505    "file_extension": ".py",
    506    "mimetype": "text/x-python",
    507    "name": "python",
    508    "nbconvert_exporter": "python",
    509    "pygments_lexer": "ipython3",
    510    "version": "3.11.2"
    511   }
    512  },
    513  "nbformat": 4,
    514  "nbformat_minor": 2
    515 }