machinelearning

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit e23879d5f5e27fbec6e1eec7a78e2a5072ccce72
parent 8445d37b442f80d7415bb919ee0967774ac6a027
Author: Andrew <andrewlaack1@gmail.com>
Date:   Wed, 17 Jul 2024 17:53:26 -0500

Diabetes prediction.

Diffstat:
Adiabetes/DiabetesPrediction.ipynb | 4740+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 4740 insertions(+), 0 deletions(-)

diff --git a/diabetes/DiabetesPrediction.ipynb b/diabetes/DiabetesPrediction.ipynb @@ -0,0 +1,4740 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "https://www.kaggle.com/datasets/ayatollahabdelhamed/diabetes" + ] + }, + { + "cell_type": "code", + "execution_count": 374, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np \n", + "\n", + "df = pd.read_csv('../datasets/diabetes/diabetes.csv')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Exploration" + ] + }, + { + "cell_type": "code", + "execution_count": 375, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Pregnancies</th>\n", + " <th>Glucose</th>\n", + " <th>BloodPressure</th>\n", + " <th>SkinThickness</th>\n", + " <th>Insulin</th>\n", + " <th>BMI</th>\n", + " <th>DiabetesPedigreeFunction</th>\n", + " <th>Age</th>\n", + " <th>Outcome</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>Pregnancies</th>\n", + " <td>1.000000</td>\n", + " <td>0.129459</td>\n", + " <td>0.141282</td>\n", + " <td>-0.081672</td>\n", + " <td>-0.073535</td>\n", + " <td>0.017683</td>\n", + " <td>-0.033523</td>\n", + " <td>0.544341</td>\n", + " <td>0.221898</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Glucose</th>\n", + " <td>0.129459</td>\n", + " <td>1.000000</td>\n", + " <td>0.152590</td>\n", + " <td>0.057328</td>\n", + " <td>0.331357</td>\n", + " <td>0.221071</td>\n", + " <td>0.137337</td>\n", + " <td>0.263514</td>\n", + " <td>0.466581</td>\n", + " </tr>\n", + " <tr>\n", + " <th>BloodPressure</th>\n", + " <td>0.141282</td>\n", + " <td>0.152590</td>\n", + " <td>1.000000</td>\n", + " <td>0.207371</td>\n", + " <td>0.088933</td>\n", + " <td>0.281805</td>\n", + " <td>0.041265</td>\n", + " <td>0.239528</td>\n", + " <td>0.065068</td>\n", + " </tr>\n", + " <tr>\n", + " <th>SkinThickness</th>\n", + " <td>-0.081672</td>\n", + " <td>0.057328</td>\n", + " <td>0.207371</td>\n", + " <td>1.000000</td>\n", + " <td>0.436783</td>\n", + " <td>0.392573</td>\n", + " <td>0.183928</td>\n", + " <td>-0.113970</td>\n", + " <td>0.074752</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Insulin</th>\n", + " <td>-0.073535</td>\n", + " <td>0.331357</td>\n", + " <td>0.088933</td>\n", + " <td>0.436783</td>\n", + " <td>1.000000</td>\n", + " <td>0.197859</td>\n", + " <td>0.185071</td>\n", + " <td>-0.042163</td>\n", + " <td>0.130548</td>\n", + " </tr>\n", + " <tr>\n", + " <th>BMI</th>\n", + " <td>0.017683</td>\n", + " <td>0.221071</td>\n", + " <td>0.281805</td>\n", + " <td>0.392573</td>\n", + " <td>0.197859</td>\n", + " <td>1.000000</td>\n", + " <td>0.140647</td>\n", + " <td>0.036242</td>\n", + " <td>0.292695</td>\n", + " </tr>\n", + " <tr>\n", + " <th>DiabetesPedigreeFunction</th>\n", + " <td>-0.033523</td>\n", + " <td>0.137337</td>\n", + " <td>0.041265</td>\n", + " <td>0.183928</td>\n", + " <td>0.185071</td>\n", + " <td>0.140647</td>\n", + " <td>1.000000</td>\n", + " <td>0.033561</td>\n", + " <td>0.173844</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Age</th>\n", + " <td>0.544341</td>\n", + " <td>0.263514</td>\n", + " <td>0.239528</td>\n", + " <td>-0.113970</td>\n", + " <td>-0.042163</td>\n", + " <td>0.036242</td>\n", + " <td>0.033561</td>\n", + " <td>1.000000</td>\n", + " <td>0.238356</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Outcome</th>\n", + " <td>0.221898</td>\n", + " <td>0.466581</td>\n", + " <td>0.065068</td>\n", + " <td>0.074752</td>\n", + " <td>0.130548</td>\n", + " <td>0.292695</td>\n", + " <td>0.173844</td>\n", + " <td>0.238356</td>\n", + " <td>1.000000</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " Pregnancies Glucose BloodPressure SkinThickness \\\n", + "Pregnancies 1.000000 0.129459 0.141282 -0.081672 \n", + "Glucose 0.129459 1.000000 0.152590 0.057328 \n", + "BloodPressure 0.141282 0.152590 1.000000 0.207371 \n", + "SkinThickness -0.081672 0.057328 0.207371 1.000000 \n", + "Insulin -0.073535 0.331357 0.088933 0.436783 \n", + "BMI 0.017683 0.221071 0.281805 0.392573 \n", + "DiabetesPedigreeFunction -0.033523 0.137337 0.041265 0.183928 \n", + "Age 0.544341 0.263514 0.239528 -0.113970 \n", + "Outcome 0.221898 0.466581 0.065068 0.074752 \n", + "\n", + " Insulin BMI DiabetesPedigreeFunction \\\n", + "Pregnancies -0.073535 0.017683 -0.033523 \n", + "Glucose 0.331357 0.221071 0.137337 \n", + "BloodPressure 0.088933 0.281805 0.041265 \n", + "SkinThickness 0.436783 0.392573 0.183928 \n", + "Insulin 1.000000 0.197859 0.185071 \n", + "BMI 0.197859 1.000000 0.140647 \n", + "DiabetesPedigreeFunction 0.185071 0.140647 1.000000 \n", + "Age -0.042163 0.036242 0.033561 \n", + "Outcome 0.130548 0.292695 0.173844 \n", + "\n", + " Age Outcome \n", + "Pregnancies 0.544341 0.221898 \n", + "Glucose 0.263514 0.466581 \n", + "BloodPressure 0.239528 0.065068 \n", + "SkinThickness -0.113970 0.074752 \n", + "Insulin -0.042163 0.130548 \n", + "BMI 0.036242 0.292695 \n", + "DiabetesPedigreeFunction 0.033561 0.173844 \n", + "Age 1.000000 0.238356 \n", + "Outcome 0.238356 1.000000 " + ] + }, + "execution_count": 375, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.corr()" + ] + }, + { + "cell_type": "code", + "execution_count": 376, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Pregnancies</th>\n", + " <th>Glucose</th>\n", + " <th>BloodPressure</th>\n", + " <th>SkinThickness</th>\n", + " <th>Insulin</th>\n", + " <th>BMI</th>\n", + " <th>DiabetesPedigreeFunction</th>\n", + " <th>Age</th>\n", + " <th>Outcome</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>count</th>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " <td>768.000000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>mean</th>\n", + " <td>3.845052</td>\n", + " <td>120.894531</td>\n", + " <td>69.105469</td>\n", + " <td>20.536458</td>\n", + " <td>79.799479</td>\n", + " <td>31.992578</td>\n", + " <td>0.471876</td>\n", + " <td>33.240885</td>\n", + " <td>0.348958</td>\n", + " </tr>\n", + " <tr>\n", + " <th>std</th>\n", + " <td>3.369578</td>\n", + " <td>31.972618</td>\n", + " <td>19.355807</td>\n", + " <td>15.952218</td>\n", + " <td>115.244002</td>\n", + " <td>7.884160</td>\n", + " <td>0.331329</td>\n", + " <td>11.760232</td>\n", + " <td>0.476951</td>\n", + " </tr>\n", + " <tr>\n", + " <th>min</th>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", + " <td>0.078000</td>\n", + " <td>21.000000</td>\n", + " <td>0.000000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25%</th>\n", + " <td>1.000000</td>\n", + " <td>99.000000</td>\n", + " <td>62.000000</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", + " <td>27.300000</td>\n", + " <td>0.243750</td>\n", + " <td>24.000000</td>\n", + " <td>0.000000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50%</th>\n", + " <td>3.000000</td>\n", + " <td>117.000000</td>\n", + " <td>72.000000</td>\n", + " <td>23.000000</td>\n", + " <td>30.500000</td>\n", + " <td>32.000000</td>\n", + " <td>0.372500</td>\n", + " <td>29.000000</td>\n", + " <td>0.000000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>75%</th>\n", + " <td>6.000000</td>\n", + " <td>140.250000</td>\n", + " <td>80.000000</td>\n", + " <td>32.000000</td>\n", + " <td>127.250000</td>\n", + " <td>36.600000</td>\n", + " <td>0.626250</td>\n", + " <td>41.000000</td>\n", + " <td>1.000000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>max</th>\n", + " <td>17.000000</td>\n", + " <td>199.000000</td>\n", + " <td>122.000000</td>\n", + " <td>99.000000</td>\n", + " <td>846.000000</td>\n", + " <td>67.100000</td>\n", + " <td>2.420000</td>\n", + " <td>81.000000</td>\n", + " <td>1.000000</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " Pregnancies Glucose BloodPressure SkinThickness Insulin \\\n", + "count 768.000000 768.000000 768.000000 768.000000 768.000000 \n", + "mean 3.845052 120.894531 69.105469 20.536458 79.799479 \n", + "std 3.369578 31.972618 19.355807 15.952218 115.244002 \n", + "min 0.000000 0.000000 0.000000 0.000000 0.000000 \n", + "25% 1.000000 99.000000 62.000000 0.000000 0.000000 \n", + "50% 3.000000 117.000000 72.000000 23.000000 30.500000 \n", + "75% 6.000000 140.250000 80.000000 32.000000 127.250000 \n", + "max 17.000000 199.000000 122.000000 99.000000 846.000000 \n", + "\n", + " BMI DiabetesPedigreeFunction Age Outcome \n", + "count 768.000000 768.000000 768.000000 768.000000 \n", + "mean 31.992578 0.471876 33.240885 0.348958 \n", + "std 7.884160 0.331329 11.760232 0.476951 \n", + "min 0.000000 0.078000 21.000000 0.000000 \n", + "25% 27.300000 0.243750 24.000000 0.000000 \n", + "50% 32.000000 0.372500 29.000000 0.000000 \n", + "75% 36.600000 0.626250 41.000000 1.000000 \n", + "max 67.100000 2.420000 81.000000 1.000000 " + ] + }, + "execution_count": 376, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.describe()" + ] + }, + { + "cell_type": "code", + "execution_count": 377, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[<Axes: title={'center': 'Pregnancies'}>,\n", + " <Axes: title={'center': 'Glucose'}>,\n", + " <Axes: title={'center': 'BloodPressure'}>],\n", + " [<Axes: title={'center': 'SkinThickness'}>,\n", + " <Axes: title={'center': 'Insulin'}>,\n", + " <Axes: title={'center': 'BMI'}>],\n", + " [<Axes: title={'center': 'DiabetesPedigreeFunction'}>,\n", + " <Axes: title={'center': 'Age'}>,\n", + " <Axes: title={'center': 'Outcome'}>]], dtype=object)" + ] + }, + "execution_count": 377, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 9 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df.hist()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Preprocessing" + ] + }, + { + "cell_type": "code", + "execution_count": 378, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[<Axes: title={'center': 'Pregnancies'}>,\n", + " <Axes: title={'center': 'Glucose'}>,\n", + " <Axes: title={'center': 'BloodPressure'}>],\n", + " [<Axes: title={'center': 'SkinThickness'}>,\n", + " <Axes: title={'center': 'Insulin'}>,\n", + " <Axes: title={'center': 'BMI'}>],\n", + " [<Axes: title={'center': 'DiabetesPedigreeFunction'}>,\n", + " <Axes: title={'center': 'Age'}>,\n", + " <Axes: title={'center': 'Outcome'}>]], dtype=object)" + ] + }, + "execution_count": 378, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 9 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df['DiabetesPedigreeFunction'] = np.log(df['DiabetesPedigreeFunction'])\n", + "df['Age'] = np.log2(df['Age'])\n", + "df['Age'] = np.log2(df['Age'])\n", + "df['Insulin'] = df['Insulin'] + 50\n", + "df['Insulin'] = np.log(df['Insulin'])\n", + "df['Pregnancies'] = df['Pregnancies'] + 1\n", + "df['Pregnancies'] = np.log(df['Pregnancies'])\n", + "df.hist()" + ] + }, + { + "cell_type": "code", + "execution_count": 379, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.preprocessing import StandardScaler\n", + "std_scl = StandardScaler()\n", + "\n", + "y = df['Outcome']\n", + "\n", + "df = df.drop('Outcome' , axis=1)\n", + "df = std_scl.fit_transform(df)\n", + "\n", + "df = pd.DataFrame(data=df, columns=std_scl.feature_names_in_)" + ] + }, + { + "cell_type": "code", + "execution_count": 380, + "metadata": {}, + "outputs": [], + "source": [ + "X = df" + ] + }, + { + "cell_type": "code", + "execution_count": 381, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "X_train, X_test, y_train, y_test = train_test_split(X,y)\n", + "X_test, X_val, y_test, y_val = train_test_split(X_test,y_test, test_size=.5)" + ] + }, + { + "cell_type": "code", + "execution_count": 382, + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "config": { + "plotlyServerURL": "https://plot.ly" + }, + "data": [ + { + "hovertemplate": "x=%{x}<br>y=%{y}<br>z=%{z}<br>color=%{marker.color}<extra></extra>", + "legendgroup": "", + "marker": { + "color": [ + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1, + 0, + 1, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 1, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 1, + 1, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 0, + 1, + 0, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 0, + 0, + 1, + 0, + 0, + 1, + 0, + 1, + 1, + 1, + 0, + 0, + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0 + ], + "coloraxis": "coloraxis", + "size": 2, + "symbol": "circle" + }, + "mode": "markers", + "name": "", + "scene": "scene", + "showlegend": false, + "type": "scatter3d", + "x": [ + -0.6840181946754456, + -1.0150731801986694, + -10.661722183227539, + -2.0502448081970215, + 5.018872261047363, + -9.08219051361084, + -0.06331798434257507, + -3.415402889251709, + 10.774115562438965, + -7.702784538269043, + -12.187478065490723, + -11.512876510620117, + -6.620882034301758, + 11.062910079956055, + 13.047811508178711, + -2.5132901668548584, + 9.226292610168457, + -9.629138946533203, + 4.94183874130249, + 4.545485496520996, + 9.629724502563477, + -13.11251163482666, + -12.644564628601074, + -1.4018417596817017, + 12.54177474975586, + 10.705717086791992, + -12.850478172302246, + -2.408620834350586, + 12.190841674804688, + -11.518744468688965, + -1.232822299003601, + 10.945609092712402, + -3.046107053756714, + -10.225014686584473, + -1.946470022201538, + 2.671769857406616, + -10.509251594543457, + -2.2697741985321045, + 1.3633086681365967, + 15.219943046569824, + 8.134971618652344, + -9.552206993103027, + -10.298823356628418, + 15.460782051086426, + -10.987890243530273, + 7.404746055603027, + -8.689630508422852, + -0.48078474402427673, + 0.7322788238525391, + -4.3724493980407715, + -3.0505785942077637, + -2.363294839859009, + -1.9736441373825073, + 14.11999225616455, + 13.097779273986816, + -5.392125606536865, + 10.865859031677246, + 8.641199111938477, + -9.851844787597656, + 6.374657154083252, + -4.751324653625488, + -11.146930694580078, + -12.748885154724121, + 3.2272863388061523, + -11.011547088623047, + -1.26039457321167, + -9.31250286102295, + -9.035171508789062, + -3.6154885292053223, + 7.337930679321289, + 2.041217088699341, + 6.301244735717773, + -9.977885246276855, + 6.882272243499756, + 0.30038273334503174, + -4.6390790939331055, + -12.32021427154541, + 0.7885571122169495, + -4.8523454666137695, + -1.8557078838348389, + -5.271785259246826, + -5.181116580963135, + 2.0182831287384033, + -2.8945693969726562, + -14.3254976272583, + 3.605417251586914, + 2.5663821697235107, + 3.370887279510498, + 11.376862525939941, + -2.504513740539551, + -5.847396373748779, + 5.294243335723877, + 2.4037554264068604, + -9.454216957092285, + 3.023876190185547, + 10.30477237701416, + -1.9343886375427246, + -4.064642906188965, + 0.6506973505020142, + 9.772605895996094, + -9.92646598815918, + -8.143463134765625, + -10.055513381958008, + -2.101900815963745, + -10.21934700012207, + 2.3816051483154297, + -10.632868766784668, + 9.466700553894043, + 0.8040961027145386, + 3.7170517444610596, + 8.183876991271973, + 12.966086387634277, + -0.15819403529167175, + -7.930088043212891, + 12.193039894104004, + -8.554100036621094, + -10.664741516113281, + -8.155754089355469, + -0.6411228179931641, + -2.980515718460083, + 8.596604347229004, + -0.014670544303953648, + 2.699094533920288, + -10.59779167175293, + -11.343042373657227, + 5.081132411956787, + 6.788390159606934, + 4.768221378326416, + 9.871087074279785, + -5.81571626663208, + 8.985846519470215, + -7.564587116241455, + 9.555424690246582, + -1.3659305572509766, + -1.6708552837371826, + 7.0632805824279785, + 3.4826157093048096, + 3.4596853256225586, + -10.063255310058594, + 7.403505802154541, + -8.98711109161377, + 0.7328687310218811, + 2.1780192852020264, + -11.505730628967285, + 8.42475700378418, + -5.440566062927246, + 1.4646745920181274, + 2.6799168586730957, + -10.665477752685547, + -2.9449939727783203, + 7.276194095611572, + -7.755793571472168, + 14.887054443359375, + 9.683268547058105, + -13.964011192321777, + 1.7965737581253052, + -0.2796758711338043, + 0.9257557392120361, + -1.9702903032302856, + 14.84600830078125, + 0.06944077461957932, + 11.759490013122559, + 7.4336347579956055, + -0.4084912836551666, + -10.048856735229492, + 2.3179006576538086, + 0.5458378791809082, + -8.036808967590332, + -8.595320701599121, + 4.928424835205078, + -10.51614761352539, + 5.682323932647705, + -2.218930244445801, + 6.010542869567871, + -0.4950452744960785, + 12.862771987915039, + -12.356680870056152, + 10.279764175415039, + -13.347261428833008, + -9.325827598571777, + -9.467644691467285, + 3.981900930404663, + -4.45176887512207, + -7.191643714904785, + -9.948051452636719, + 0.374925434589386, + 13.417228698730469, + 9.512184143066406, + 4.253367900848389, + 6.624492168426514, + -6.251498222351074, + 12.240334510803223, + -10.985259056091309, + -2.5311646461486816, + -3.14156436920166, + 11.408650398254395, + -6.518795490264893, + -1.1541879177093506, + 3.316842794418335, + 8.279894828796387, + -10.716473579406738, + -11.973006248474121, + -9.104960441589355, + -4.075346946716309, + 13.010103225708008, + -1.804100513458252, + 14.52920150756836, + -14.699787139892578, + 3.0076239109039307, + 0.734322726726532, + -1.4575698375701904, + 4.941652297973633, + 1.0202600955963135, + 7.02303409576416, + 11.060243606567383, + 13.73103141784668, + 3.178422451019287, + 5.35116720199585, + -2.7913730144500732, + -10.515534400939941, + 8.725561141967773, + -8.392325401306152, + -3.2922165393829346, + 14.049173355102539, + -1.5580923557281494, + -0.5858229398727417, + -11.928176879882812, + 3.147176504135132, + 11.668413162231445, + 7.164401531219482, + -11.566496849060059, + 12.329018592834473, + -0.7104196548461914, + -9.21994686126709, + -0.47848939895629883, + -12.50620174407959, + 14.602729797363281, + 6.224636077880859, + -1.1836069822311401, + -8.157758712768555, + -1.831626534461975, + 1.181080937385559, + -7.87448263168335, + 2.6253631114959717, + 8.925670623779297, + -9.233755111694336, + -11.334914207458496, + 9.846000671386719, + 10.57329273223877, + -1.8301770687103271, + -12.08954906463623, + -9.832139015197754, + -2.759671688079834, + 1.828956127166748, + 2.606909990310669, + 1.9421870708465576, + -0.15196850895881653, + -2.506345510482788, + 8.516525268554688, + 15.168578147888184, + 9.060513496398926, + -3.0615758895874023, + -0.8442894816398621, + -9.877167701721191, + -9.998312950134277, + 1.7705873250961304, + -3.7983176708221436, + 3.531907320022583, + -6.088347911834717, + -4.21214485168457, + -3.408508062362671, + -3.2097980976104736, + -8.950214385986328, + 2.4419362545013428, + -11.70743465423584, + 6.45977258682251, + -2.213097095489502, + 3.5492868423461914, + -6.368431568145752, + 0.17209510505199432, + -11.367453575134277, + 11.202747344970703, + 9.631152153015137, + -12.322148323059082, + -8.382761001586914, + 13.817564964294434, + 13.363722801208496, + 9.780118942260742, + -3.409644365310669, + 10.514436721801758, + 3.573518753051758, + 4.38413143157959, + 10.061673164367676, + 5.665460109710693, + -6.58004093170166, + 11.463943481445312, + 8.272632598876953, + 5.324666500091553, + 13.90174674987793, + -6.179136276245117, + -3.7168054580688477, + 6.571779251098633, + 1.9948983192443848, + -14.14256763458252, + -9.284346580505371, + 7.269372463226318, + 12.042752265930176, + -2.7088756561279297, + 3.6773650646209717, + 4.4680705070495605, + -1.834377646446228, + 5.481932163238525, + 7.600772857666016, + 0.04338562488555908, + -3.055894374847412, + 3.3295860290527344, + -4.402690887451172, + -11.731768608093262, + 6.81088924407959, + -12.593012809753418, + 4.883020401000977, + -0.8406768441200256, + -4.916891574859619, + -1.7693442106246948, + -0.8590285181999207, + -2.875206708908081, + 4.710777282714844, + -12.913679122924805, + 7.104230880737305, + 9.84812068939209, + -4.5145697593688965, + -1.1174373626708984, + -4.421005725860596, + -11.199899673461914, + -3.088747262954712, + 9.01930046081543, + -3.0932939052581787, + -9.605388641357422, + 13.508366584777832, + -12.714051246643066, + 1.9923409223556519, + -0.5935022234916687, + -4.397961139678955, + -11.288660049438477, + -13.491250038146973, + 12.524556159973145, + 1.8640166521072388, + -4.158120632171631, + -3.5048210620880127, + -1.1689984798431396, + -12.63477897644043, + -10.635854721069336, + -0.00630774162709713, + -1.2798830270767212, + -10.996076583862305, + -11.632671356201172, + 4.930995941162109, + -2.3276634216308594, + -1.4670964479446411, + 9.990165710449219, + 10.965428352355957, + -11.099969863891602, + 0.9514167904853821, + -8.781900405883789, + 8.916362762451172, + 2.109463691711426, + -9.06479263305664, + -3.538069009780884, + -2.199848175048828, + 10.263562202453613, + 11.39107894897461, + -5.422501564025879, + 3.332679510116577, + 5.03386926651001, + 4.910971164703369, + 14.708271980285645, + 2.9060611724853516, + 3.36214017868042, + -13.241222381591797, + 8.675945281982422, + 3.065617322921753, + -3.3868582248687744, + 0.33565792441368103, + -0.6283915042877197, + -3.6501564979553223, + -3.833763360977173, + -1.5588886737823486, + 1.1724048852920532, + 14.101284980773926, + 2.039727210998535, + 9.144998550415039, + -12.795255661010742, + -1.9260947704315186, + 4.030799388885498, + -9.976344108581543, + 2.2182421684265137, + 2.6100194454193115, + 1.814766526222229, + -6.805430889129639, + 1.2066859006881714, + -8.256671905517578, + -11.998556137084961, + 10.848910331726074, + -1.4439505338668823, + -13.702062606811523, + 5.577332496643066, + -9.112125396728516, + -7.7779130935668945, + -10.04473876953125, + 9.7200288772583, + -1.325805425643921, + 5.137911796569824, + 10.42979907989502, + -4.009751796722412, + 6.174921989440918, + 9.71137523651123, + -0.937098503112793, + -0.08131508529186249, + -7.194622993469238, + 6.466408729553223, + 9.631877899169922, + -0.31925028562545776, + 5.32485818862915, + -0.01205188687890768, + 13.033409118652344, + 10.415185928344727, + -4.964146614074707, + 9.356760025024414, + 8.45630168914795, + 9.636628150939941, + -4.439651966094971, + 2.466642141342163, + -0.36261820793151855, + -9.059450149536133, + -8.040106773376465, + -4.909049034118652, + 1.1109240055084229, + -9.925812721252441, + -4.30470085144043, + -9.048319816589355, + -0.46660327911376953, + 0.6087216734886169, + 6.08122444152832, + -7.508477210998535, + -7.982152938842773, + 8.187204360961914, + -1.2072131633758545, + 5.022541046142578, + 4.3103203773498535, + 2.990619659423828, + -2.9433858394622803, + -8.624752044677734, + 5.516853332519531, + -1.8967550992965698, + 3.16402530670166, + 1.7116650342941284, + -6.5999836921691895, + 0.4160243570804596, + 14.774703979492188, + 14.359700202941895, + -4.050587177276611, + -6.7344441413879395, + -2.212221145629883, + -1.2443792819976807, + -6.685568332672119, + -2.650273323059082, + -5.319495677947998, + 4.717240333557129, + -3.2983739376068115, + 11.86279296875, + 4.943221569061279, + 1.7857385873794556, + 2.1229264736175537, + -11.538012504577637, + -7.152919769287109, + -5.089568138122559, + 6.7998809814453125, + 4.160754203796387, + 10.046043395996094, + -1.5319688320159912, + 9.369356155395508, + 2.335130214691162, + -0.9343108534812927, + 4.816810607910156, + -4.200101852416992, + 7.822977542877197, + 8.968534469604492, + 11.985346794128418, + -2.261525869369507, + -10.538049697875977, + 2.12092661857605, + 0.20184552669525146, + 0.7389985918998718, + 1.8739736080169678, + -4.890964508056641, + -10.8463773727417, + -8.71680736541748, + 0.14575834572315216, + 11.034225463867188, + 13.276222229003906, + -2.561549186706543, + 1.345667839050293, + -1.2033298015594482, + 1.821825623512268, + 0.9369068741798401, + -11.634708404541016, + 10.882872581481934, + 2.280593156814575, + 0.484112024307251, + -9.71022891998291, + -1.866985559463501, + -2.59592866897583, + -10.910024642944336, + -6.665939807891846, + -2.42720365524292, + 8.209699630737305, + 14.798994064331055, + -12.970599174499512, + -10.571746826171875, + 13.537286758422852, + -1.301269769668579, + 6.505917549133301, + -4.444920063018799, + -9.171634674072266, + -7.133026123046875, + -4.368229866027832, + -3.4367008209228516, + -2.1126911640167236, + 5.323645114898682, + -8.756821632385254, + 1.4425426721572876, + -11.252443313598633, + 6.822566032409668, + -2.4448790550231934, + 0.6898022294044495, + -3.6878201961517334, + -7.146778583526611, + -5.3678669929504395, + 6.058498382568359, + 9.644026756286621, + 14.107412338256836, + 5.49836540222168, + -2.623723268508911, + 2.9700605869293213, + 2.147397518157959, + 13.498281478881836, + 15.421284675598145, + 7.209020614624023, + 11.685943603515625, + -0.6913435459136963, + -1.8175663948059082, + 1.5142180919647217, + -10.478763580322266, + 0.31987982988357544, + 3.0178725719451904, + 9.658642768859863, + 2.2856509685516357, + -10.687520980834961, + 2.664724349975586, + -11.46542739868164, + -12.490402221679688, + 8.801187515258789, + 3.2264556884765625, + 2.8472282886505127, + -10.257306098937988, + -0.18874341249465942, + 2.02120041847229, + 9.869685173034668, + 9.544880867004395, + 5.651139259338379, + -12.079456329345703, + -10.20644474029541, + 1.6121972799301147, + -0.6024526953697205, + 5.562148094177246, + 4.8486456871032715, + 2.672330379486084, + -11.210158348083496, + -11.031961441040039, + 12.5648193359375, + 4.98018217086792, + -2.352602481842041, + -10.33591079711914, + -10.737922668457031, + 13.675485610961914, + -5.623761177062988, + -13.270830154418945, + -8.620705604553223, + 15.639983177185059, + -4.741397380828857, + -3.392552375793457, + 6.884685516357422, + -9.143850326538086, + 0.24135281145572662, + 12.805000305175781, + 8.026378631591797, + -6.901119709014893, + -2.0581350326538086, + -14.56360149383545, + -2.950218439102173, + -1.1593599319458008, + -3.5467300415039062, + -2.040562868118286, + 14.383207321166992, + -4.366247177124023, + 2.024949312210083, + 10.333144187927246, + -2.9928877353668213, + 8.656623840332031, + -2.5175979137420654, + 2.0252978801727295, + 10.402913093566895, + 13.822549819946289, + -1.615929126739502, + 14.270936012268066, + -8.470438957214355, + -10.861918449401855, + -4.847414493560791, + -4.0373077392578125, + -5.041812419891357, + 7.411964416503906, + -1.4432413578033447, + -8.999364852905273, + 5.486266613006592, + -6.839665412902832, + 4.245032787322998, + -8.324295043945312, + -10.83448600769043, + -12.544872283935547, + -2.9930386543273926, + -7.561413288116455, + 5.091310977935791, + -7.356533050537109, + -2.6527867317199707, + -9.1094388961792, + -12.183501243591309, + -11.455906867980957, + 0.5345911979675293, + 1.4902831315994263, + -4.711211681365967, + 3.99465274810791, + -9.663561820983887, + -11.788924217224121, + -2.397601366043091, + 3.193478584289551, + 9.501480102539062, + 7.733586311340332, + 8.130857467651367, + 11.229695320129395, + -2.747728109359741, + -2.6448628902435303, + 4.267299652099609, + 10.239157676696777, + -7.874593257904053, + 4.602417945861816, + 8.626128196716309, + -3.2305853366851807, + 10.07263469696045, + -14.733732223510742, + 1.531779408454895, + -12.024340629577637, + 7.351168155670166, + 13.08242130279541, + 13.832113265991211, + 1.0809690952301025, + 6.589161396026611, + -9.838314056396484, + -2.740894317626953, + 13.406994819641113, + 11.084577560424805, + 13.631102561950684, + -5.780209541320801, + 0.3342204689979553, + 11.001848220825195, + -13.725563049316406, + -11.758686065673828, + -11.58444881439209, + -11.920000076293945, + -7.059404373168945, + -0.14712095260620117, + -3.8660645484924316, + 5.6099700927734375, + 5.642499923706055, + -9.387211799621582, + -7.679993152618408, + 5.446385860443115, + -7.759456157684326, + -3.17496657371521, + 3.584352731704712, + 10.14114761352539, + -6.919133186340332, + -14.879055976867676, + 3.5044565200805664, + 12.723624229431152, + -6.306216239929199, + 9.596741676330566, + 8.482283592224121, + -4.793890953063965, + 5.289770603179932, + -10.76841926574707, + 5.759702205657959, + -1.7494614124298096, + -0.49170246720314026, + -3.721835136413574, + -1.9918365478515625, + 2.049478054046631, + -4.223287582397461, + 8.193758964538574, + -12.835792541503906, + 2.952988624572754, + 8.415166854858398, + -1.4201459884643555, + 0.9150311946868896, + -2.2362706661224365, + -8.477134704589844, + 11.424286842346191, + 11.022443771362305, + -4.737940311431885, + 5.956469535827637, + -0.9444993138313293, + -0.8642422556877136, + 5.878228664398193, + 11.10503101348877, + 11.873800277709961, + -7.481529235839844, + 1.1150001287460327, + 5.455044746398926, + 3.403913974761963, + -10.220356941223145, + -6.473626613616943, + 6.345584869384766, + -10.254858016967773, + 11.326944351196289, + 2.331667900085449, + -6.664905071258545, + 0.7277563810348511, + 5.024351119995117, + -2.147641897201538, + 2.8440096378326416, + -7.135761260986328, + 14.392889976501465, + 1.5912460088729858, + -2.497450828552246, + -8.826109886169434, + 14.920653343200684, + 14.348468780517578, + 5.285011291503906, + 7.360119342803955, + 9.829933166503906, + -12.216036796569824, + -9.00596809387207, + 7.262331962585449, + -2.199317216873169, + 9.347167015075684, + -0.2628268301486969, + 9.718507766723633, + -0.01726130209863186, + -6.786989212036133, + -12.139571189880371, + -11.759806632995605, + -0.3744069039821625, + 1.228623628616333, + -9.102229118347168, + 11.992220878601074, + 0.8945233821868896, + 6.367093086242676, + -6.997201919555664, + -0.11585500091314316 + ], + "y": [ + 7.3768839836120605, + -0.03516802564263344, + 6.805875301361084, + -4.455857276916504, + -4.461436748504639, + 5.0314741134643555, + -2.1695141792297363, + 7.626062870025635, + -10.906517028808594, + 12.618102073669434, + 4.566076278686523, + 5.412073612213135, + 6.81865930557251, + -10.849472999572754, + -9.8248291015625, + 7.805458068847656, + -0.48243260383605957, + 5.680069923400879, + -1.6990904808044434, + -4.279829978942871, + -2.6916043758392334, + 8.365574836730957, + 5.801023006439209, + 2.2568957805633545, + -7.8455963134765625, + -7.871463775634766, + 6.612088203430176, + -5.693277359008789, + -10.061140060424805, + 5.50492000579834, + 5.107419490814209, + -6.8361310958862305, + -2.437171459197998, + 4.985806465148926, + 6.788917064666748, + -8.738394737243652, + 5.990182399749756, + 5.245579242706299, + 3.660284996032715, + -4.835714340209961, + -8.34524154663086, + 4.665951251983643, + 12.37501335144043, + -7.743505001068115, + 7.475364685058594, + 3.8420779705047607, + 1.428839087486267, + -1.705276608467102, + 3.7912755012512207, + 3.981764793395996, + -5.713516712188721, + -4.697532653808594, + -0.06485601514577866, + -9.371514320373535, + -6.9643330574035645, + -0.5245133638381958, + -7.224352836608887, + -0.10986563563346863, + 2.042795419692993, + 0.11629519611597061, + 4.018989086151123, + 7.167354583740234, + 7.952470779418945, + -7.278676509857178, + 7.71766471862793, + 1.7724617719650269, + -3.692370891571045, + 3.8685100078582764, + -3.9691245555877686, + -7.647563934326172, + -5.8040924072265625, + -7.085423946380615, + 4.958046913146973, + -5.530725955963135, + 0.4744771718978882, + -1.9693268537521362, + 7.908332824707031, + 3.356926441192627, + 8.865700721740723, + 1.3549492359161377, + 3.057870388031006, + 4.109950542449951, + -8.489907264709473, + 1.1974393129348755, + 5.081171989440918, + -5.719422340393066, + 4.285398006439209, + -1.964817762374878, + -7.948638916015625, + 2.271458148956299, + -0.1339176446199417, + -9.475090980529785, + 3.2157111167907715, + 10.349119186401367, + -8.11462116241455, + -7.957046031951904, + 3.1805408000946045, + -3.4109790325164795, + -2.106811285018921, + -0.22455501556396484, + 2.157404899597168, + 1.9378297328948975, + 1.4315197467803955, + -3.0128896236419678, + 0.7910189628601074, + -6.8344502449035645, + 2.34629487991333, + -8.508817672729492, + 1.874403476715088, + 1.0712000131607056, + -7.49093770980835, + -10.106139183044434, + 2.1964943408966064, + 0.27261611819267273, + -8.696305274963379, + 8.26296615600586, + 6.780342102050781, + 0.31574374437332153, + 1.1396161317825317, + -1.9188430309295654, + 1.9263592958450317, + 2.840891122817993, + -2.253823757171631, + 10.761234283447266, + -0.0740150734782219, + -2.4522671699523926, + -4.697812557220459, + -1.3248896598815918, + -0.9947927594184875, + 8.320852279663086, + -9.350102424621582, + 3.9453258514404297, + -7.117473602294922, + 3.743689775466919, + -5.407546043395996, + -5.858957290649414, + -2.4075498580932617, + -2.7075846195220947, + -1.4961609840393066, + -4.847376823425293, + 10.029032707214355, + 3.8262908458709717, + -1.9073431491851807, + 7.979934215545654, + -5.963706016540527, + -5.801567077636719, + 1.19010591506958, + -7.714293003082275, + 10.539066314697266, + 3.6060924530029297, + -2.3192241191864014, + 6.157408237457275, + -7.6949543952941895, + -4.098837375640869, + 6.058178424835205, + 6.960227966308594, + -5.968965530395508, + -6.736009120941162, + -2.6132938861846924, + -5.925413608551025, + 7.293186187744141, + -5.957046031951904, + 0.03758160397410393, + 1.2248203754425049, + -1.531516432762146, + -9.489339828491211, + 3.995847225189209, + 4.424741268157959, + 3.802722454071045, + -9.877151489257812, + 6.125828266143799, + -8.096466064453125, + 6.949750900268555, + -0.11423138529062271, + -0.9928001165390015, + -7.66452693939209, + 7.717221260070801, + 0.8023284077644348, + 6.183809280395508, + 4.307166576385498, + 5.926167011260986, + -3.4653749465942383, + -2.0790112018585205, + 0.036531995981931686, + 8.390205383300781, + 8.627680778503418, + -10.100235939025879, + -2.2010858058929443, + -7.567628383636475, + -6.606762886047363, + 2.8807473182678223, + -5.412942886352539, + 6.906333923339844, + 9.537975311279297, + 1.2749079465866089, + -5.414379596710205, + 1.7994518280029297, + -5.7028679847717285, + -5.607333660125732, + -5.881718158721924, + -2.731262683868408, + 0.9530829787254333, + -3.1862707138061523, + -2.91550350189209, + -5.730597972869873, + 1.1951110363006592, + -9.315895080566406, + 7.334775447845459, + -1.2099019289016724, + 8.173524856567383, + 0.47395092248916626, + 4.270085334777832, + 8.991347312927246, + -2.5582597255706787, + -6.9461774826049805, + -5.891452312469482, + -5.480024337768555, + -7.738452434539795, + 5.133113861083984, + 7.4507904052734375, + -6.431362152099609, + 8.250283241271973, + 7.447638988494873, + -9.617222785949707, + -5.0872907638549805, + 3.19376540184021, + 0.181712806224823, + 3.892341136932373, + -5.885811805725098, + 1.4953830242156982, + 2.141867160797119, + -7.157389163970947, + -2.6311569213867188, + 3.7698957920074463, + -2.3031933307647705, + 3.7306792736053467, + -9.061906814575195, + 4.248969078063965, + 8.954035758972168, + -1.5120244026184082, + 1.919270634651184, + -3.013784646987915, + 2.1106340885162354, + -9.679472923278809, + -5.590964317321777, + 6.789682865142822, + 7.766701698303223, + -2.3126308917999268, + -7.052115440368652, + 3.1068642139434814, + 7.571188926696777, + 3.0879673957824707, + -2.4081170558929443, + 1.8225804567337036, + -10.47349739074707, + 2.1673812866210938, + 4.4004387855529785, + 3.75223970413208, + -7.673933506011963, + -7.886676788330078, + -9.278029441833496, + 8.242745399475098, + 4.471353530883789, + 11.423788070678711, + 6.55309534072876, + -9.055439949035645, + 9.159514427185059, + 3.815480947494507, + 1.6867198944091797, + 7.903581619262695, + 5.367603778839111, + -4.355891704559326, + 8.965546607971191, + -0.5193328857421875, + 8.767870903015137, + 0.21549299359321594, + 1.5656659603118896, + -2.952028751373291, + 7.591378211975098, + -7.789974689483643, + 0.20893950760364532, + -7.326718807220459, + -8.06835651397705, + 9.298542022705078, + 9.488214492797852, + -9.74402141571045, + -6.058818340301514, + -1.3094377517700195, + -1.9332040548324585, + -4.8152899742126465, + 0.6142358779907227, + -2.622591018676758, + -1.9241857528686523, + -3.628410577774048, + 10.151247024536133, + -7.120995998382568, + -6.707365989685059, + -4.578083038330078, + -6.373849391937256, + 7.392638683319092, + 9.244824409484863, + -6.801276206970215, + 1.872169852256775, + 4.639269828796387, + 8.75074291229248, + -0.7787609100341797, + -9.966531753540039, + -7.568894386291504, + -5.44533634185791, + -6.250566005706787, + 2.063683032989502, + -1.9404325485229492, + -9.93722152709961, + -6.400946140289307, + 5.453773498535156, + -2.1405065059661865, + -2.4986777305603027, + 6.460852146148682, + -0.956822395324707, + 10.634489059448242, + -9.484710693359375, + 3.2795283794403076, + 10.470134735107422, + 8.376870155334473, + 3.432112693786621, + -7.5406599044799805, + -4.872084617614746, + 7.633730888366699, + 0.9046942591667175, + -7.069171905517578, + 6.383341312408447, + -3.892653465270996, + 9.511473655700684, + 10.683964729309082, + -4.28145694732666, + -1.707811951637268, + 9.280961036682129, + 7.880127906799316, + -7.280437469482422, + 5.941782474517822, + -7.936915874481201, + -5.975388526916504, + -2.1008970737457275, + 5.174136161804199, + 8.692740440368652, + -6.924604892730713, + -6.565092086791992, + 6.857388973236084, + -2.3680901527404785, + 0.835777223110199, + 4.29481840133667, + 4.394728660583496, + 2.094021797180176, + -4.3240180015563965, + 1.029809832572937, + 8.976351737976074, + -4.694378852844238, + 9.338103294372559, + 3.3940443992614746, + -5.895358085632324, + -8.401419639587402, + 10.61616325378418, + 4.322621822357178, + 8.428415298461914, + -6.668272972106934, + -5.157705307006836, + 4.747687339782715, + 0.8720625042915344, + -2.057140827178955, + -1.0556904077529907, + -5.679697036743164, + -5.848905563354492, + -1.993638515472412, + -1.2765040397644043, + -4.596229076385498, + -6.711025714874268, + -2.831329107284546, + -1.6344189643859863, + 4.489620685577393, + -0.38437619805336, + -5.341253757476807, + 0.964440107345581, + -7.542261123657227, + -4.201672077178955, + -6.286753177642822, + -4.759629249572754, + 5.837183475494385, + 4.219679832458496, + -10.05685806274414, + -6.018626689910889, + -0.9773536920547485, + 3.9991729259490967, + -8.526640892028809, + -8.7177734375, + 3.7334227561950684, + -8.16507339477539, + -8.630636215209961, + 3.2248404026031494, + -0.6822836399078369, + 5.280730724334717, + 5.350799560546875, + 11.29006576538086, + -5.34586238861084, + 2.3029022216796875, + 8.84837532043457, + -3.6914849281311035, + 8.11019515991211, + -0.7216979265213013, + 6.872189521789551, + -4.532334804534912, + 5.113173484802246, + -4.808701515197754, + -3.6037073135375977, + -6.540859699249268, + -3.4436542987823486, + -5.569087028503418, + -2.677022695541382, + 7.0159382820129395, + -1.3988736867904663, + -7.417979717254639, + -0.9677431583404541, + -4.701416492462158, + -1.0916497707366943, + 1.5184589624404907, + -5.535740375518799, + -6.652061462402344, + 4.187582015991211, + -8.426520347595215, + -0.7137787342071533, + -0.9216156601905823, + 6.493119716644287, + -9.11807632446289, + -3.717316150665283, + 3.3284342288970947, + -3.122424602508545, + 8.879983901977539, + 6.801048755645752, + 4.170955181121826, + 1.3573098182678223, + 4.002147674560547, + 9.77422046661377, + -2.9200217723846436, + -5.732986927032471, + 4.482917308807373, + 4.049038410186768, + 2.7861530780792236, + -5.3628315925598145, + 0.3651542663574219, + -1.9059085845947266, + -2.7132210731506348, + -4.858189105987549, + 2.146556854248047, + -1.0519939661026, + 9.008519172668457, + -3.4143450260162354, + 7.963890552520752, + 9.231195449829102, + -2.5068233013153076, + -6.4244208335876465, + -10.076456069946289, + 7.679867744445801, + -0.9478796720504761, + 3.388451099395752, + 1.843564510345459, + 5.3001604080200195, + -7.605718612670898, + -1.2254942655563354, + -2.0197696685791016, + 7.750576972961426, + -4.870095252990723, + 4.315247535705566, + 3.334031343460083, + 2.5611963272094727, + 9.554779052734375, + 3.9136312007904053, + 10.547933578491211, + -4.69880485534668, + -8.644845008850098, + -7.929158687591553, + 6.959766387939453, + -6.944126129150391, + 3.8622114658355713, + -1.315285325050354, + 0.5281833410263062, + 9.375980377197266, + -1.9989902973175049, + -3.8608293533325195, + -2.6855528354644775, + 0.7422799468040466, + 9.22378158569336, + -3.3185813426971436, + 2.4276509284973145, + 2.345154285430908, + -9.73938274383545, + 4.055349349975586, + 10.067279815673828, + 5.141098499298096, + -3.9486172199249268, + -10.283740043640137, + -8.11608600616455, + -1.70619797706604, + 2.748765707015991, + 0.844131350517273, + -8.666086196899414, + 3.1575143337249756, + 8.0022554397583, + -1.3016422986984253, + -6.915921688079834, + -4.395395278930664, + 11.008845329284668, + 2.4493730068206787, + -7.823693752288818, + 10.691648483276367, + 0.42154064774513245, + -3.9645369052886963, + -8.902015686035156, + -8.658975601196289, + 7.087034702301025, + 8.540245056152344, + -11.434188842773438, + -3.029942750930786, + -6.16085147857666, + 4.048446178436279, + 5.769103527069092, + 3.824838638305664, + -0.04806968569755554, + -4.6080427169799805, + -6.2694244384765625, + -3.5853090286254883, + -1.8890159130096436, + -6.748488903045654, + 0.12670476734638214, + 0.06594491004943848, + 7.655259609222412, + -3.92206072807312, + 7.821141719818115, + 9.975810050964355, + 8.06694507598877, + -4.365290641784668, + -2.7006943225860596, + -5.554505825042725, + -6.617372989654541, + 5.044032096862793, + 1.6726974248886108, + -1.4812003374099731, + -8.050093650817871, + -8.830146789550781, + -5.997192859649658, + -1.9030870199203491, + 9.522757530212402, + 2.011889696121216, + -3.8491902351379395, + 10.887948036193848, + -2.4628541469573975, + -2.663168430328369, + -8.13829517364502, + 2.800271511077881, + 10.724468231201172, + 3.970989227294922, + 7.709040641784668, + 9.565210342407227, + -5.352571964263916, + -1.5605814456939697, + -7.5957136154174805, + -1.5177412033081055, + -5.795496940612793, + 1.1417156457901, + -6.800657272338867, + -8.478333473205566, + 0.935251772403717, + 6.948746681213379, + 2.217524290084839, + -1.6012272834777832, + -4.139186382293701, + -6.451175212860107, + -1.5239042043685913, + -9.723231315612793, + 1.298262596130371, + 7.455810070037842, + -1.7931010723114014, + 4.2490410804748535, + 1.888169527053833, + 12.006352424621582, + 8.136212348937988, + -10.96391487121582, + -0.06283322721719742, + 8.754616737365723, + 5.368741512298584, + -8.842329025268555, + 6.431047439575195, + 5.375960826873779, + -0.03426387533545494, + 7.341203212738037, + -4.426231861114502, + -6.032503604888916, + -6.728227138519287, + 8.993986129760742, + 6.375156879425049, + 9.01983642578125, + -5.474819183349609, + -0.18171942234039307, + 6.8447394371032715, + 4.405847549438477, + -8.601776123046875, + 8.51608657836914, + 2.331911563873291, + -5.270449161529541, + -4.2823710441589355, + -1.4620215892791748, + -6.200625896453857, + -3.240812063217163, + -8.885824203491211, + -6.536582946777344, + 5.064270496368408, + -8.248370170593262, + 4.399415016174316, + 4.971993446350098, + -1.1997220516204834, + 6.164431095123291, + 7.6255035400390625, + -0.4498606026172638, + -2.7911884784698486, + 5.855261325836182, + -0.5305520296096802, + 3.1309354305267334, + 1.4195597171783447, + 0.9414187073707581, + -0.23919719457626343, + 9.162029266357422, + 2.7855944633483887, + 4.652440071105957, + 0.5242742896080017, + 1.505676031112671, + -7.188706398010254, + 6.851562023162842, + 7.3210344314575195, + 9.963116645812988, + -4.062240123748779, + -7.115101337432861, + -3.3906848430633545, + -4.400583267211914, + 3.4854636192321777, + 9.689658164978027, + 7.62595272064209, + -6.5648417472839355, + -4.7130351066589355, + -10.16501522064209, + -4.984581470489502, + -8.42443561553955, + 1.8478803634643555, + -4.5464653968811035, + -3.7246479988098145, + -4.810769557952881, + 1.6579962968826294, + 0.2675913870334625, + -4.750367164611816, + -4.3280253410339355, + -1.8555082082748413, + 6.78057861328125, + -6.220349311828613, + 9.659704208374023, + 3.870245933532715, + -8.56029987335205, + -5.969871997833252, + 3.9912796020507812, + -0.35441333055496216, + 11.45521354675293, + 1.3922773599624634, + -5.0985212326049805, + -8.855435371398926, + -9.030492782592773, + 0.16675488650798798, + 2.9921321868896484, + -1.168744683265686, + 8.823822975158691, + 6.597346782684326, + 9.616857528686523, + -0.09215573221445084, + 4.078329086303711, + -7.667729377746582, + -2.565871000289917, + 4.428926467895508, + -0.6825816035270691, + 3.6073174476623535, + 12.608979225158691, + -6.172123432159424, + 2.1637134552001953, + 1.941880226135254, + -7.25446081161499, + -0.11069726943969727, + 5.102503299713135, + 6.417877674102783, + -5.018919467926025, + -5.404144287109375, + 1.870134949684143, + -9.159289360046387, + -9.11137866973877, + 6.732481479644775, + -9.838354110717773, + 1.5989279747009277, + -5.612115859985352, + 6.737078666687012, + 9.451744079589844, + 9.064922332763672, + -6.226271629333496, + 2.229674816131592, + 4.00979471206665, + -4.315530300140381, + 8.826342582702637, + -3.9583261013031006, + -5.801131248474121, + 6.462235450744629, + 5.611135959625244, + -8.290136337280273, + 5.233461380004883, + -8.741820335388184, + -6.749246120452881, + 7.489490509033203, + -2.201117992401123, + 4.585315704345703, + 1.44785475730896, + -1.6137295961380005, + -2.351606607437134, + -6.43239688873291, + 9.791180610656738, + 3.6359000205993652, + -4.9324541091918945, + 3.1970162391662598, + 2.173865556716919, + 2.9251439571380615, + -8.499924659729004, + 4.211882591247559, + -4.4778923988342285, + -3.185582399368286, + 8.205788612365723, + 2.6914896965026855, + -4.554964065551758, + 3.322756052017212, + -3.437072277069092, + 9.046086311340332, + -5.874884605407715, + -3.3317313194274902, + -5.153316497802734, + 5.8765106201171875, + -6.567514419555664, + -6.684341907501221, + 4.526251316070557, + -0.05590728670358658, + -8.699203491210938, + 11.048222541809082, + 2.5874881744384766, + -0.7230511903762817, + 1.7730568647384644, + -1.984541893005371, + 7.5633978843688965, + -2.071986198425293, + 7.048081874847412, + 9.387523651123047, + 0.7506297826766968, + 9.04647159576416, + -2.495218515396118, + 7.510275363922119, + 6.835409164428711, + -6.002382278442383, + 3.147258996963501, + -7.827868938446045, + 9.255311965942383, + 0.8255829811096191 + ], + "z": [ + -4.982514381408691, + 0.969621479511261, + -6.359896659851074, + -1.1868491172790527, + -1.4335349798202515, + 1.3950574398040771, + -2.057298183441162, + 10.74579906463623, + -0.6172070503234863, + -2.624955892562866, + 0.254769891500473, + -3.970907211303711, + -4.652217388153076, + -0.048543475568294525, + -1.7459392547607422, + 9.470819473266602, + 3.70436692237854, + 0.8715587258338928, + -2.5699942111968994, + 1.7825429439544678, + 4.588045120239258, + 1.054810881614685, + -4.378965377807617, + -2.9914603233337402, + -4.926539897918701, + -5.356939315795898, + -2.5034101009368896, + 2.201446771621704, + -3.867260694503784, + -0.5984058380126953, + -6.215468883514404, + 2.4022064208984375, + -0.9739518761634827, + 2.7957117557525635, + -5.37624979019165, + 0.9432514905929565, + -2.8435497283935547, + -5.8926849365234375, + -1.5282478332519531, + -2.4301857948303223, + -1.376152753829956, + -4.438564777374268, + -0.7950702905654907, + 1.4401121139526367, + -3.456021785736084, + 3.4204728603363037, + -0.47981005907058716, + 3.6098859310150146, + -3.362348794937134, + 9.982566833496094, + 2.4216456413269043, + 3.9333221912384033, + -1.7736245393753052, + 0.7568899989128113, + -0.7446416020393372, + 2.4419491291046143, + -0.7931286096572876, + 5.0659565925598145, + -5.3035454750061035, + 1.563036322593689, + 9.347208976745605, + -1.3781185150146484, + 3.897099256515503, + 3.931919813156128, + -0.2808816432952881, + -3.8030638694763184, + 1.1343605518341064, + -5.758694171905518, + 1.3656480312347412, + -2.9848861694335938, + 1.7139188051223755, + -0.7700126767158508, + -4.694002628326416, + -2.7383339405059814, + 2.1319894790649414, + 5.107043743133545, + 2.7677478790283203, + -2.6420042514801025, + 8.171955108642578, + 0.3527643084526062, + 2.177564859390259, + 9.527749061584473, + -1.8926345109939575, + 3.7971084117889404, + -1.5905383825302124, + 1.797620415687561, + -5.213787078857422, + 0.4394884407520294, + -5.885116100311279, + 2.467839002609253, + 2.3233819007873535, + -1.8204110860824585, + -6.435488224029541, + -2.415409564971924, + 5.4865264892578125, + -3.568298578262329, + 1.607524037361145, + 2.4935412406921387, + -1.7186394929885864, + 2.9575352668762207, + -5.035898208618164, + 2.608701705932617, + 3.1044037342071533, + 0.7772142291069031, + -2.811673402786255, + 4.243899822235107, + 3.6249186992645264, + -2.6484477519989014, + -1.7972060441970825, + 2.877497673034668, + -1.753805160522461, + -0.1260770708322525, + 2.696411371231079, + -2.2508931159973145, + -0.2759378254413605, + -5.02426815032959, + -0.5501837134361267, + -2.4729530811309814, + -0.28074127435684204, + 0.18164467811584473, + 3.6249783039093018, + -2.3127799034118652, + 0.25046396255493164, + -2.651357650756836, + 1.4218238592147827, + -3.2940337657928467, + 0.7084530591964722, + -0.9732712507247925, + -3.366072416305542, + -1.4434292316436768, + -0.9433188438415527, + -3.2338850498199463, + -0.06777379661798477, + -6.148787498474121, + 3.359389305114746, + -4.992271900177002, + 4.87529182434082, + 5.299440383911133, + 0.5531936287879944, + -3.9753878116607666, + -2.1878864765167236, + -5.52520227432251, + -1.4622414112091064, + 0.11980699747800827, + -2.0427443981170654, + 3.399503707885742, + -5.29739236831665, + 1.115169644355774, + -3.7862250804901123, + 1.851421594619751, + 1.182105302810669, + -1.0095573663711548, + -0.36919790506362915, + 2.8259990215301514, + -3.5908913612365723, + -4.194411754608154, + 4.234832286834717, + 4.029635906219482, + 0.26718372106552124, + -0.5161224007606506, + -6.211223125457764, + -5.655167579650879, + 1.414472222328186, + 0.539454996585846, + 0.4058438837528229, + -1.5553288459777832, + 0.5857553482055664, + -2.364495277404785, + -1.2319765090942383, + -2.6064906120300293, + 1.3446749448776245, + -0.5665322542190552, + 8.101051330566406, + 5.344829559326172, + -0.8688424229621887, + 0.5060869455337524, + 2.2919535636901855, + 3.4817306995391846, + -2.548630952835083, + -4.472549915313721, + 3.316857099533081, + 4.307653903961182, + 5.397955894470215, + -1.6272581815719604, + -2.398726463317871, + -4.599297523498535, + 0.6041125059127808, + 6.542295932769775, + -1.1312856674194336, + -1.4584285020828247, + 2.380295991897583, + -3.661762237548828, + -3.6157166957855225, + 10.212637901306152, + -4.257015705108643, + 0.3193455934524536, + 2.8320326805114746, + 4.001033306121826, + -0.5683473944664001, + -3.0034494400024414, + 1.1792579889297485, + 0.4505161643028259, + 1.2647157907485962, + -0.013181607238948345, + -5.051972389221191, + -1.7832337617874146, + 0.9888246059417725, + -2.3965585231781006, + -0.5056121945381165, + -5.205657958984375, + 0.6903160810470581, + 3.17683482170105, + -6.508243560791016, + 3.1943297386169434, + -4.674710273742676, + -0.3269979655742645, + -0.9008141756057739, + -1.1221696138381958, + -3.097287178039551, + 0.09567226469516754, + 4.022782325744629, + -5.148735523223877, + 10.249907493591309, + -1.9563477039337158, + 3.1182851791381836, + 2.7278921604156494, + 1.5495944023132324, + 0.7635254263877869, + 3.8443143367767334, + 0.3875945806503296, + -2.9517014026641846, + -3.2724108695983887, + 2.9740631580352783, + -1.0639214515686035, + -0.3238854706287384, + -3.3310632705688477, + 0.5514385104179382, + 3.1708242893218994, + -4.911375045776367, + 1.6866966485977173, + 2.2406504154205322, + 0.0479927621781826, + 0.31430092453956604, + 0.759281575679779, + 0.14347583055496216, + -6.768559455871582, + -0.7954915165901184, + 1.8441011905670166, + -3.5926027297973633, + 2.8949272632598877, + 0.16054491698741913, + 1.3233932256698608, + 0.5465364456176758, + 3.1641616821289062, + -1.153254747390747, + 1.032771348953247, + -1.5210155248641968, + 2.118776559829712, + 3.688480854034424, + -0.6842620372772217, + -0.7450250387191772, + 8.561717987060547, + -2.0499866008758545, + -4.107058048248291, + -0.28512197732925415, + -1.6531368494033813, + 7.514176368713379, + 0.9479145407676697, + 4.117397308349609, + 9.485810279846191, + -7.540754318237305, + -2.702794075012207, + -2.060460090637207, + 2.7073960304260254, + 0.37883198261260986, + 5.781992435455322, + -1.9052485227584839, + 5.621371269226074, + -3.5468695163726807, + 3.679487466812134, + 0.3581453561782837, + -4.770251750946045, + -4.34689474105835, + -3.7218692302703857, + -1.1471647024154663, + -2.140043258666992, + 1.198235273361206, + 4.214728832244873, + -1.3339306116104126, + -4.757173538208008, + 3.1120288372039795, + 3.9421331882476807, + 4.85402774810791, + -0.1175149604678154, + -1.7963145971298218, + 0.9618937969207764, + 0.15128560364246368, + 5.291866779327393, + -4.760350227355957, + -3.8716278076171875, + 7.550507068634033, + 0.18293188512325287, + -4.8616719245910645, + -1.424484372138977, + -2.7419867515563965, + -1.0895049571990967, + -3.4119746685028076, + -1.0221118927001953, + 4.594427585601807, + 1.5658038854599, + -5.075284957885742, + 3.6345787048339844, + -0.6956348419189453, + 5.066969394683838, + -5.896824359893799, + 0.0687391459941864, + -0.08432876318693161, + -5.383510112762451, + -1.8884904384613037, + -4.743148326873779, + -0.6083257794380188, + 0.7172812223434448, + 0.3952999413013458, + -5.2455267906188965, + 1.558681607246399, + -1.8885846138000488, + 1.3919031620025635, + -4.046340465545654, + -0.9989197850227356, + -6.8296732902526855, + -4.9722161293029785, + -2.2691688537597656, + 8.990158081054688, + 0.3194003999233246, + 0.1398017853498459, + 1.7370058298110962, + 7.680981159210205, + -0.9115551710128784, + -0.04613492637872696, + -4.092875957489014, + 5.3434929847717285, + 1.7992600202560425, + 5.490267276763916, + -0.3721858263015747, + 1.136473536491394, + -4.693321704864502, + 5.076793670654297, + 9.556417465209961, + -1.0513615608215332, + -7.88828182220459, + 0.2153930515050888, + -0.016677778214216232, + -6.0732855796813965, + 3.2256827354431152, + -2.6688406467437744, + -4.544075965881348, + -0.37006545066833496, + 10.284207344055176, + -7.794848918914795, + 3.2714452743530273, + 1.293991208076477, + -4.001276969909668, + -7.210657119750977, + -4.9354424476623535, + -0.6119487881660461, + -1.9270693063735962, + -0.3661271035671234, + 3.8767616748809814, + 0.7555394768714905, + -3.093169927597046, + 3.7824504375457764, + 3.424872398376465, + 4.479118347167969, + -1.2565656900405884, + -0.26685458421707153, + -2.003333330154419, + 7.050300598144531, + 2.287853956222534, + -2.9566221237182617, + 5.624565601348877, + 2.50416898727417, + 3.885160446166992, + 3.954540729522705, + 5.186814308166504, + -1.0698175430297852, + -0.32745325565338135, + -4.3193359375, + -6.860998630523682, + -0.9021753072738647, + 1.504533290863037, + -3.95534348487854, + -3.222137928009033, + 0.7494804859161377, + -3.1623504161834717, + -3.157867431640625, + 3.0973052978515625, + 0.9023251533508301, + 3.759500026702881, + 0.2845543324947357, + 0.7011356949806213, + 2.651709794998169, + -3.017979383468628, + -4.394196033477783, + -5.655203819274902, + -3.537510633468628, + -0.060079194605350494, + -1.043823003768921, + 2.232959032058716, + -6.65529203414917, + 2.816051483154297, + -3.0151455402374268, + 2.234189748764038, + 3.551095724105835, + -1.0021851062774658, + 4.288347244262695, + -1.1217970848083496, + 5.016842365264893, + -4.457242012023926, + 1.1873044967651367, + -3.674494981765747, + 3.738393545150757, + 3.182634115219116, + 3.898325204849243, + 0.4443874955177307, + -0.05917265638709068, + -0.5385488271713257, + 8.930023193359375, + 0.3422023355960846, + 1.806235909461975, + -3.5398244857788086, + 9.495024681091309, + -2.442689895629883, + 2.5367071628570557, + 1.9592061042785645, + 1.6445327997207642, + 8.339694023132324, + -5.67088508605957, + -1.715072512626648, + 3.1644766330718994, + -3.999091625213623, + -2.4662375450134277, + 1.8890149593353271, + -3.533651113510132, + -3.1318373680114746, + -0.6918090581893921, + 3.641930341720581, + 2.6453957557678223, + 1.824934482574463, + 4.239938735961914, + 6.9563984870910645, + 1.98634672164917, + -0.6300435662269592, + 2.6377956867218018, + 8.006287574768066, + 0.49875596165657043, + -5.589179039001465, + -1.8275278806686401, + -0.4899519681930542, + -1.2407052516937256, + -3.326493740081787, + -4.986611366271973, + 1.1593362092971802, + -7.620354175567627, + -4.689737319946289, + -3.7010867595672607, + 1.7180126905441284, + 3.3551552295684814, + 3.762843608856201, + 10.432883262634277, + 0.7601609826087952, + 2.2479305267333984, + 3.7936103343963623, + 3.439249038696289, + -2.9032745361328125, + 2.803449869155884, + 0.25616782903671265, + 2.6543195247650146, + -3.0200741291046143, + -6.223504066467285, + -6.3407392501831055, + -0.38228386640548706, + 3.548490524291992, + -1.4736087322235107, + 2.395164728164673, + 7.9072265625, + 2.2586560249328613, + 2.4531121253967285, + 5.570854663848877, + -1.4260772466659546, + -5.773131370544434, + 1.4916281700134277, + -5.8537678718566895, + -4.109001159667969, + -0.9170777201652527, + 9.586953163146973, + -4.789409160614014, + 0.5670205950737, + 2.3012900352478027, + -3.456892251968384, + -0.43115711212158203, + 1.460524320602417, + -2.519371271133423, + -7.912926197052002, + -1.6821458339691162, + -5.258532524108887, + 2.2750840187072754, + -0.840721845626831, + 4.413406848907471, + 5.03971004486084, + -1.4914308786392212, + -5.658434867858887, + -0.4149526059627533, + -0.2847691774368286, + 0.20881332457065582, + -2.1846282482147217, + -1.4183515310287476, + -1.2918428182601929, + -1.2820767164230347, + 2.011549234390259, + -1.9190433025360107, + -0.6996971964836121, + -1.8548402786254883, + 10.018094062805176, + -3.623666524887085, + 3.20200514793396, + 0.5286770462989807, + 1.206821322441101, + -3.2271745204925537, + 4.833872318267822, + 1.4099459648132324, + 4.5821685791015625, + -1.580121397972107, + 5.769814968109131, + 9.322355270385742, + 5.330853462219238, + 9.318042755126953, + 0.35068026185035706, + -1.4272900819778442, + 4.500732898712158, + 5.420291423797607, + -3.0700104236602783, + 1.078281283378601, + -6.2010650634765625, + -3.565627336502075, + 1.2845202684402466, + 1.431458830833435, + 1.0426416397094727, + -3.813683271408081, + -1.933915138244629, + -4.219627380371094, + 2.5474376678466797, + 0.7516379356384277, + -1.7118467092514038, + 1.9741460084915161, + 1.6713533401489258, + -5.8413496017456055, + -1.5885182619094849, + -1.000640630722046, + -5.593202590942383, + 1.9780843257904053, + -1.7781319618225098, + 3.8361873626708984, + 1.8938744068145752, + -2.962759017944336, + 1.0116379261016846, + 4.311740398406982, + 1.5781633853912354, + -7.056618690490723, + -2.4048397541046143, + 0.3945976495742798, + 2.8536112308502197, + 2.5885000228881836, + -1.4004123210906982, + -2.248434543609619, + 4.349902629852295, + -1.7698824405670166, + 0.7003124952316284, + -2.653482437133789, + -1.8893163204193115, + -1.9619027376174927, + 3.2326459884643555, + -1.4862949848175049, + -1.0257664918899536, + 0.7946575284004211, + -0.8495409488677979, + 1.0279173851013184, + -2.685624837875366, + 1.069632649421692, + 0.05773034691810608, + 8.131470680236816, + -7.569677829742432, + -1.0895240306854248, + -1.561613917350769, + 5.625718116760254, + -1.5953086614608765, + 4.465914249420166, + 1.5256401300430298, + 7.560089111328125, + -3.659595251083374, + 4.731198310852051, + 2.4580841064453125, + 9.981532096862793, + 2.606755495071411, + -1.2658475637435913, + 10.114580154418945, + 1.014460563659668, + 3.396620750427246, + 2.725329637527466, + 1.7482661008834839, + -1.565757155418396, + -2.0377793312072754, + 0.16887615621089935, + 0.8244757056236267, + -2.834207773208618, + -1.90322744846344, + 1.7071479558944702, + 1.6924687623977661, + 1.8471498489379883, + -5.205183029174805, + 8.38730525970459, + -0.9350480437278748, + 5.733504772186279, + -6.311122894287109, + 2.9499940872192383, + 3.1190185546875, + -4.885783672332764, + 2.9685447216033936, + 1.1594765186309814, + -1.8285243511199951, + 0.615193784236908, + -2.7020201683044434, + 1.6926193237304688, + 0.4719514548778534, + -2.1352336406707764, + 2.487539529800415, + 1.0101783275604248, + -0.71344393491745, + 2.3115432262420654, + -1.2666137218475342, + 0.0330495610833168, + 6.106366157531738, + -0.5899361968040466, + -3.2163803577423096, + 8.97555160522461, + 1.5093743801116943, + -1.3286277055740356, + -0.45877838134765625, + 4.114985942840576, + -4.961302280426025, + 3.5447773933410645, + -0.6465617418289185, + 1.7055975198745728, + -4.575040817260742, + -0.15824955701828003, + -0.7952973246574402, + -1.9530426263809204, + -2.623999834060669, + 5.823062419891357, + -1.6278676986694336, + 0.6873974800109863, + -4.17074728012085, + 3.4032397270202637, + -5.297483921051025, + -1.1944377422332764, + -4.3668951988220215, + -0.34432628750801086, + -4.1611857414245605, + -4.141725540161133, + -4.752319812774658, + -5.104939937591553, + -0.7441611886024475, + 0.6894333958625793, + -7.761119365692139, + 3.7747652530670166, + 1.1793856620788574, + -5.26514196395874, + -4.178526878356934, + 1.7985213994979858, + 3.5740466117858887, + 3.458730936050415, + 2.8936965465545654, + 2.9269232749938965, + 3.21852445602417, + -1.7983072996139526, + -2.637089252471924, + 1.6347969770431519, + 0.7069950103759766, + 1.865814208984375, + 4.680846691131592, + 2.4005706310272217, + -3.3439619541168213, + -1.7789548635482788, + 0.8877979516983032, + -3.101510763168335, + 2.36068058013916, + -4.910215854644775, + -1.3144724369049072, + 8.25900936126709, + -2.0091888904571533, + -3.054189920425415, + 1.5829317569732666, + -5.500804901123047, + -2.798370122909546, + 9.273612976074219, + -3.4267730712890625, + -3.959904909133911, + 10.176579475402832, + -2.488353729248047, + -3.6638259887695312, + 0.8855860233306885, + -1.765333652496338, + -4.97749662399292, + -4.307864665985107, + 0.5028447508811951, + 2.783393383026123, + 1.2559759616851807, + 2.4572882652282715, + -4.484270095825195, + 0.6207011938095093, + -6.147719860076904, + -4.958867073059082, + 0.5170155763626099, + -2.0897152423858643, + -4.8915510177612305, + 0.30694642663002014, + -5.217358589172363, + 2.2742717266082764, + 4.043866157531738, + 1.9257925748825073, + 3.310021162033081, + -3.0880990028381348, + 0.9880166053771973, + 1.6224735975265503, + -1.7120537757873535, + -2.2547762393951416, + -2.302809000015259, + 5.683371543884277, + -6.142442226409912, + -0.3547287881374359, + 0.8493488430976868, + -2.407766580581665, + -2.235001564025879, + -1.0411931276321411, + -4.608438968658447, + -0.2313631922006607, + -4.958648204803467, + 2.586334466934204, + 5.800790786743164, + -0.1184491366147995, + -3.594292163848877, + -2.5656566619873047, + -0.5258044600486755, + 0.022577274590730667, + 1.434993028640747, + -5.242930889129639, + 6.147258281707764, + -5.901611804962158, + 0.28150674700737, + 1.170911431312561, + -5.676027297973633, + 4.369208335876465, + -4.567860126495361, + 2.674489736557007, + -6.456090927124023, + -0.09707427024841309, + -3.563173532485962, + -1.1866146326065063, + 1.9348506927490234 + ] + } + ], + "layout": { + "coloraxis": { + "colorbar": { + "title": { + "text": "color" + } + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "legend": { + "tracegroupgap": 0 + }, + "margin": { + "t": 60 + }, + "scene": { + "domain": { + "x": [ + 0, + 1 + ], + "y": [ + 0, + 1 + ] + }, + "xaxis": { + "title": { + "text": "x" + } + }, + "yaxis": { + "title": { + "text": "y" + } + }, + "zaxis": { + "title": { + "text": "z" + } + } + }, + "template": { + "data": { + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "#E5ECF6", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "white", + "linecolor": "white", + "minorgridcolor": "white", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "heatmapgl": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "heatmapgl" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "fillpattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "#E5ECF6", + "showlakes": true, + "showland": true, + "subunitcolor": "white" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "#E5ECF6", + "polar": { + "angularaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "yaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + }, + "zaxis": { + "backgroundcolor": "#E5ECF6", + "gridcolor": "white", + "gridwidth": 2, + "linecolor": "white", + "showbackground": true, + "ticks": "", + "zerolinecolor": "white" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "baxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + }, + "bgcolor": "#E5ECF6", + "caxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "white", + "linecolor": "white", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "white", + "zerolinewidth": 2 + } + } + } + } + } + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from sklearn.manifold import TSNE\n", + "import plotly.express as px\n", + "\n", + "tsne = TSNE(n_components=3)\n", + "tsneOut = tsne.fit_transform(X=X)\n", + "tsneOut.shape\n", + "\n", + "fig = px.scatter_3d(x=tsneOut[:,0], y=tsneOut[:,1], z=tsneOut[:,2], color=y)\n", + "fig.update_traces(marker=dict(size=2))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Start Model Training\n", + "\n", + "1. Logistic Regression\n", + "2. AdaBoost\n", + "3. Random Forest\n", + "4. Neural Network\n", + "5. Polynomial Feature Logistic Regression" + ] + }, + { + "cell_type": "code", + "execution_count": 383, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.7708333333333334 0.7916666666666666\n", + "0.8090277777777778 0.71875\n", + "0.8263888888888888 0.7604166666666666\n" + ] + } + ], + "source": [ + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.ensemble import RandomForestClassifier\n", + "from sklearn.ensemble import AdaBoostClassifier\n", + "\n", + "models = [\n", + " LogisticRegression(),\n", + " AdaBoostClassifier(n_estimators=40, algorithm='SAMME'),\n", + " RandomForestClassifier(max_depth=4, n_jobs=-1, max_features=7, n_estimators=100),\n", + "]\n", + "\n", + "for model in models:\n", + " model.fit(X=X_train,y=y_train)\n", + " print(model.score(X_train,y_train), model.score(X_val,y_val))\n" + ] + }, + { + "cell_type": "code", + "execution_count": 384, + "metadata": {}, + "outputs": [], + "source": [ + "import keras\n", + "\n", + "model = keras.Sequential(\n", + " layers=[\n", + " keras.layers.Input(shape=(8,)),\n", + " keras.layers.Dense(32, activation='relu'),\n", + " keras.layers.Dense(64, activation='relu'),\n", + " keras.layers.BatchNormalization(),\n", + " keras.layers.Dense(64, activation='relu'),\n", + " keras.layers.Dense(32, activation='relu'),\n", + " keras.layers.Dropout(.5),\n", + " keras.layers.Dense(1, activation='sigmoid')\n", + " ]\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 385, + "metadata": {}, + "outputs": [], + "source": [ + "model.compile(loss=keras.losses.binary_crossentropy, optimizer='adam', metrics=['accuracy'])" + ] + }, + { + "cell_type": "code", + "execution_count": 386, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 1/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 8ms/step - accuracy: 0.5114 - loss: 0.7966 - val_accuracy: 0.6771 - val_loss: 0.6707\n", + "Epoch 2/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 3ms/step - accuracy: 0.6403 - loss: 0.6296 - val_accuracy: 0.7396 - val_loss: 0.6437\n", + "Epoch 3/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 3ms/step - accuracy: 0.7108 - loss: 0.5425 - val_accuracy: 0.7292 - val_loss: 0.6204\n", + "Epoch 4/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.7841 - loss: 0.4895 - val_accuracy: 0.7396 - val_loss: 0.6035\n", + "Epoch 5/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.7335 - loss: 0.5056 - val_accuracy: 0.7500 - val_loss: 0.5940\n", + "Epoch 6/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 4ms/step - accuracy: 0.7647 - loss: 0.4612 - val_accuracy: 0.7812 - val_loss: 0.5836\n", + "Epoch 7/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.7974 - loss: 0.4371 - val_accuracy: 0.7917 - val_loss: 0.5755\n", + "Epoch 8/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.7866 - loss: 0.4563 - val_accuracy: 0.7708 - val_loss: 0.5627\n", + "Epoch 9/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.8228 - loss: 0.4207 - val_accuracy: 0.7812 - val_loss: 0.5584\n", + "Epoch 10/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.8226 - loss: 0.3962 - val_accuracy: 0.7812 - val_loss: 0.5629\n", + "Epoch 11/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.8265 - loss: 0.4075 - val_accuracy: 0.7708 - val_loss: 0.5577\n", + "Epoch 12/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.8353 - loss: 0.3923 - val_accuracy: 0.7396 - val_loss: 0.5593\n", + "Epoch 13/13\n", + "\u001b[1m18/18\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 2ms/step - accuracy: 0.8152 - loss: 0.4005 - val_accuracy: 0.7500 - val_loss: 0.5643\n" + ] + }, + { + "data": { + "text/plain": [ + "<keras.src.callbacks.history.History at 0x7f55979ff350>" + ] + }, + "execution_count": 386, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.fit(X_train,y_train, validation_data=(X_val,y_val), epochs=13, batch_size=32)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Accuracy Metrics" + ] + }, + { + "cell_type": "code", + "execution_count": 393, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m3/3\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1ms/step \n" + ] + }, + { + "data": { + "text/plain": [ + "['LogisticRegression: 0.7916666666666666',\n", + " 'AdaBoostClassifier: 0.7083333333333334',\n", + " 'RandomForestClassifier: 0.75',\n", + " 'Neural Network: 0.7708333333333334']" + ] + }, + "execution_count": 393, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn.metrics import accuracy_score\n", + "accuracies = []\n", + "\n", + "for m in models:\n", + " y_pred = m.predict(X_test)\n", + " accuracies.append(m.__class__.__name__ + \": \" + str(accuracy_score(y_true=y_test,y_pred=y_pred)))\n", + "\n", + "y_pred = np.round(model.predict(X_test))\n", + "\n", + "accuracies.append(\"Neural Network: \" + str(accuracy_score(y_true=y_test,y_pred=y_pred)))\n", + "accuracies" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.2" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}