{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Example: Imbalanced datasets\n",
"------------------------------\n",
"\n",
"This example shows how ATOM can help you handle imbalanced datasets. We will evaluate the performance of three different Random Forest models: one trained directly on the imbalanced dataset, one trained on an oversampled dataset and the last one trained on an undersampled dataset."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Load the data"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"UserWarning: The pandas version installed (1.5.3) does not match the supported pandas version in Modin (1.5.2). This may cause undesired side effects!\n"
]
}
],
"source": [
"# Import packages\n",
"from atom import ATOMClassifier\n",
"from sklearn.datasets import make_classification"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"# Create a mock imbalanced dataset\n",
"X, y = make_classification(\n",
" n_samples=5000,\n",
" n_features=30,\n",
" n_informative=20,\n",
" weights=(0.95,),\n",
" random_state=1,\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Run the pipeline"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<< ================== ATOM ================== >>\n",
"Algorithm task: binary classification.\n",
"\n",
"Dataset stats ==================== >>\n",
"Shape: (5000, 31)\n",
"Train set size: 4000\n",
"Test set size: 1000\n",
"-------------------------------------\n",
"Memory: 1.24 MB\n",
"Scaled: False\n",
"Outlier values: 570 (0.5%)\n",
"\n"
]
}
],
"source": [
"# Initialize atom\n",
"atom = ATOMClassifier(X, y, test_size=0.2, verbose=2, random_state=1)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" x0 | \n",
" x1 | \n",
" x2 | \n",
" x3 | \n",
" x4 | \n",
" x5 | \n",
" x6 | \n",
" x7 | \n",
" x8 | \n",
" x9 | \n",
" ... | \n",
" x21 | \n",
" x22 | \n",
" x23 | \n",
" x24 | \n",
" x25 | \n",
" x26 | \n",
" x27 | \n",
" x28 | \n",
" x29 | \n",
" target | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" -0.535760 | \n",
" -2.426045 | \n",
" 1.256836 | \n",
" 0.374501 | \n",
" -3.241958 | \n",
" -1.239468 | \n",
" -0.208750 | \n",
" -6.015995 | \n",
" 3.698669 | \n",
" 0.112512 | \n",
" ... | \n",
" 0.044302 | \n",
" -1.935727 | \n",
" 10.870353 | \n",
" 0.286755 | \n",
" -2.416507 | \n",
" 0.556990 | \n",
" -1.522635 | \n",
" 3.719201 | \n",
" 1.449135 | \n",
" 0 | \n",
"
\n",
" \n",
" 1 | \n",
" -3.311935 | \n",
" -3.149920 | \n",
" -0.801252 | \n",
" -2.644414 | \n",
" -0.704889 | \n",
" -3.312256 | \n",
" 0.714515 | \n",
" 2.992345 | \n",
" 5.056910 | \n",
" 3.036775 | \n",
" ... | \n",
" 2.224359 | \n",
" 0.451273 | \n",
" -1.822108 | \n",
" -1.435801 | \n",
" 0.036132 | \n",
" -1.364583 | \n",
" 1.215663 | \n",
" 5.232161 | \n",
" 1.408798 | \n",
" 0 | \n",
"
\n",
" \n",
" 2 | \n",
" 3.821199 | \n",
" 1.328129 | \n",
" -1.000720 | \n",
" -13.151697 | \n",
" 0.254253 | \n",
" 1.263636 | \n",
" -1.088451 | \n",
" 4.924264 | \n",
" -1.225646 | \n",
" -6.974824 | \n",
" ... | \n",
" 3.541222 | \n",
" 1.686667 | \n",
" -13.763703 | \n",
" -1.321256 | \n",
" 1.677687 | \n",
" 0.774966 | \n",
" -5.067689 | \n",
" 4.663386 | \n",
" -1.714186 | \n",
" 0 | \n",
"
\n",
" \n",
" 3 | \n",
" 5.931126 | \n",
" 3.338830 | \n",
" 0.545906 | \n",
" 2.296355 | \n",
" -3.941088 | \n",
" 3.527252 | \n",
" -0.158770 | \n",
" 3.138381 | \n",
" -0.927460 | \n",
" -1.642079 | \n",
" ... | \n",
" -3.634442 | \n",
" 7.853176 | \n",
" -8.457598 | \n",
" 0.000490 | \n",
" -2.612756 | \n",
" -1.138206 | \n",
" 0.497150 | \n",
" 4.351289 | \n",
" -0.321748 | \n",
" 0 | \n",
"
\n",
" \n",
" 4 | \n",
" -2.829472 | \n",
" -1.227185 | \n",
" -0.751892 | \n",
" 3.056106 | \n",
" -1.988920 | \n",
" -2.219184 | \n",
" -0.075882 | \n",
" 5.790102 | \n",
" -2.786671 | \n",
" 2.023458 | \n",
" ... | \n",
" 4.057954 | \n",
" 1.178564 | \n",
" -15.028187 | \n",
" 1.627140 | \n",
" -1.093587 | \n",
" -0.422655 | \n",
" 1.777011 | \n",
" 6.660638 | \n",
" -2.553723 | \n",
" 0 | \n",
"
\n",
" \n",
"
\n",
"
5 rows × 31 columns
\n",
"
"
],
"text/plain": [
" x0 x1 x2 x3 x4 x5 x6 \\\n",
"0 -0.535760 -2.426045 1.256836 0.374501 -3.241958 -1.239468 -0.208750 \n",
"1 -3.311935 -3.149920 -0.801252 -2.644414 -0.704889 -3.312256 0.714515 \n",
"2 3.821199 1.328129 -1.000720 -13.151697 0.254253 1.263636 -1.088451 \n",
"3 5.931126 3.338830 0.545906 2.296355 -3.941088 3.527252 -0.158770 \n",
"4 -2.829472 -1.227185 -0.751892 3.056106 -1.988920 -2.219184 -0.075882 \n",
"\n",
" x7 x8 x9 ... x21 x22 x23 x24 \\\n",
"0 -6.015995 3.698669 0.112512 ... 0.044302 -1.935727 10.870353 0.286755 \n",
"1 2.992345 5.056910 3.036775 ... 2.224359 0.451273 -1.822108 -1.435801 \n",
"2 4.924264 -1.225646 -6.974824 ... 3.541222 1.686667 -13.763703 -1.321256 \n",
"3 3.138381 -0.927460 -1.642079 ... -3.634442 7.853176 -8.457598 0.000490 \n",
"4 5.790102 -2.786671 2.023458 ... 4.057954 1.178564 -15.028187 1.627140 \n",
"\n",
" x25 x26 x27 x28 x29 target \n",
"0 -2.416507 0.556990 -1.522635 3.719201 1.449135 0 \n",
"1 0.036132 -1.364583 1.215663 5.232161 1.408798 0 \n",
"2 1.677687 0.774966 -5.067689 4.663386 -1.714186 0 \n",
"3 -2.612756 -1.138206 0.497150 4.351289 -0.321748 0 \n",
"4 -1.093587 -0.422655 1.777011 6.660638 -2.553723 0 \n",
"\n",
"[5 rows x 31 columns]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Let's have a look at the data. Note that, since the input wasn't\n",
"# a dataframe, atom has given default names to the columns.\n",
"atom.head()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fitting FeatureSelector...\n",
"Performing feature selection ...\n",
" --> rfe selected 12 features from the dataset.\n",
" --> Dropping feature x1 (rank 8).\n",
" --> Dropping feature x2 (rank 11).\n",
" --> Dropping feature x4 (rank 3).\n",
" --> Dropping feature x6 (rank 16).\n",
" --> Dropping feature x7 (rank 14).\n",
" --> Dropping feature x10 (rank 19).\n",
" --> Dropping feature x12 (rank 13).\n",
" --> Dropping feature x13 (rank 12).\n",
" --> Dropping feature x14 (rank 9).\n",
" --> Dropping feature x16 (rank 10).\n",
" --> Dropping feature x18 (rank 17).\n",
" --> Dropping feature x19 (rank 2).\n",
" --> Dropping feature x20 (rank 4).\n",
" --> Dropping feature x22 (rank 7).\n",
" --> Dropping feature x23 (rank 5).\n",
" --> Dropping feature x24 (rank 18).\n",
" --> Dropping feature x25 (rank 6).\n",
" --> Dropping feature x26 (rank 15).\n"
]
}
],
"source": [
"# Let's start reducing the number of features\n",
"atom.feature_selection(\"RFE\", solver=\"RF\", n_features=12)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Training ========================= >>\n",
"Models: RF\n",
"Metric: balanced_accuracy\n",
"\n",
"\n",
"Results for RandomForest:\n",
"Fit ---------------------------------------------\n",
"Train evaluation --> balanced_accuracy: 1.0\n",
"Test evaluation --> balanced_accuracy: 0.5556\n",
"Time elapsed: 1.266s\n",
"-------------------------------------------------\n",
"Total time: 1.266s\n",
"\n",
"\n",
"Final results ==================== >>\n",
"Total time: 1.268s\n",
"-------------------------------------\n",
"RandomForest --> balanced_accuracy: 0.5556 ~\n"
]
}
],
"source": [
"# Fit a model directly on the imbalanced data\n",
"atom.run(\"RF\", metric=\"ba\")"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Branch(master)"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# The transformer and the models have been added to the branch\n",
"atom.branch"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Oversampling"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"New branch oversample successfully created.\n"
]
}
],
"source": [
"# Create a new branch for oversampling\n",
"atom.branch = \"oversample\""
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Oversampling with SMOTE...\n",
" --> Adding 3570 samples to class 1.\n"
]
}
],
"source": [
"# Perform oversampling of the minority class\n",
"atom.balance(strategy=\"smote\")"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" dataset | \n",
" train | \n",
" test | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 4731 | \n",
" 3785 | \n",
" 946 | \n",
"
\n",
" \n",
" 1 | \n",
" 3839 | \n",
" 3785 | \n",
" 54 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" dataset train test\n",
"0 4731 3785 946\n",
"1 3839 3785 54"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"atom.classes # Check the balanced training set!"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Training ========================= >>\n",
"Models: RF_os\n",
"Metric: balanced_accuracy\n",
"\n",
"\n",
"Results for RandomForest:\n",
"Fit ---------------------------------------------\n",
"Train evaluation --> balanced_accuracy: 1.0\n",
"Test evaluation --> balanced_accuracy: 0.7672\n",
"Time elapsed: 2.286s\n",
"-------------------------------------------------\n",
"Total time: 2.286s\n",
"\n",
"\n",
"Final results ==================== >>\n",
"Total time: 2.288s\n",
"-------------------------------------\n",
"RandomForest --> balanced_accuracy: 0.7672 ~\n"
]
}
],
"source": [
"# Train another model on the new branch. Add a tag after \n",
"# the model's acronym to distinguish it from the first model\n",
"atom.run(\"rf_os\") # os for oversample"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Undersampling"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"New branch undersample successfully created.\n"
]
}
],
"source": [
"# Create the undersampling branch\n",
"# Split from master to not adopt the oversmapling transformer\n",
"atom.branch = \"undersample_from_master\""
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" dataset | \n",
" train | \n",
" test | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 4731 | \n",
" 3785 | \n",
" 946 | \n",
"
\n",
" \n",
" 1 | \n",
" 269 | \n",
" 215 | \n",
" 54 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" dataset train test\n",
"0 4731 3785 946\n",
"1 269 215 54"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"atom.classes # In this branch, the data is still imbalanced"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Undersampling with NearMiss...\n",
" --> Removing 3570 samples from class 0.\n"
]
}
],
"source": [
"# Perform undersampling of the majority class\n",
"atom.balance(strategy=\"NearMiss\")"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Training ========================= >>\n",
"Models: RF_us\n",
"Metric: balanced_accuracy\n",
"\n",
"\n",
"Results for RandomForest:\n",
"Fit ---------------------------------------------\n",
"Train evaluation --> balanced_accuracy: 1.0\n",
"Test evaluation --> balanced_accuracy: 0.6706\n",
"Time elapsed: 0.211s\n",
"-------------------------------------------------\n",
"Total time: 0.211s\n",
"\n",
"\n",
"Final results ==================== >>\n",
"Total time: 0.212s\n",
"-------------------------------------\n",
"RandomForest --> balanced_accuracy: 0.6706 ~\n"
]
}
],
"source": [
"atom.run(\"rf_us\")"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Branch(undersample)"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Check that the branch only contains the desired transformers \n",
"atom.branch"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Visualize the complete pipeline\n",
"atom.plot_pipeline()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Analyze the results"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" accuracy | \n",
" average_precision | \n",
" balanced_accuracy | \n",
" f1 | \n",
" jaccard | \n",
" matthews_corrcoef | \n",
" precision | \n",
" recall | \n",
" roc_auc | \n",
"
\n",
" \n",
" \n",
" \n",
" RF | \n",
" 0.952 | \n",
" 0.6562 | \n",
" 0.5556 | \n",
" 0.2000 | \n",
" 0.1111 | \n",
" 0.3252 | \n",
" 1.000 | \n",
" 0.1111 | \n",
" 0.9107 | \n",
"
\n",
" \n",
" RF_os | \n",
" 0.956 | \n",
" 0.6215 | \n",
" 0.7672 | \n",
" 0.5769 | \n",
" 0.4054 | \n",
" 0.5542 | \n",
" 0.600 | \n",
" 0.5556 | \n",
" 0.9251 | \n",
"
\n",
" \n",
" RF_us | \n",
" 0.509 | \n",
" 0.3687 | \n",
" 0.6706 | \n",
" 0.1578 | \n",
" 0.0857 | \n",
" 0.1545 | \n",
" 0.087 | \n",
" 0.8519 | \n",
" 0.8258 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" accuracy average_precision balanced_accuracy f1 jaccard \\\n",
"RF 0.952 0.6562 0.5556 0.2000 0.1111 \n",
"RF_os 0.956 0.6215 0.7672 0.5769 0.4054 \n",
"RF_us 0.509 0.3687 0.6706 0.1578 0.0857 \n",
"\n",
" matthews_corrcoef precision recall roc_auc \n",
"RF 0.3252 1.000 0.1111 0.9107 \n",
"RF_os 0.5542 0.600 0.5556 0.9251 \n",
"RF_us 0.1545 0.087 0.8519 0.8258 "
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"atom.evaluate()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "(%{x}, %{y})RF - test",
"legendgroup": "RF",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF"
},
"line": {
"color": "rgb(0, 98, 98)",
"width": 2
},
"marker": {
"color": "rgb(0, 98, 98)",
"line": {
"color": "rgba(255, 255, 255, 0.9)",
"width": 1
},
"size": 8,
"symbol": "circle"
},
"mode": "lines",
"name": "test",
"showlegend": true,
"type": "scatter",
"x": [
1,
0.9814814814814815,
0.9629629629629629,
0.9259259259259259,
0.9074074074074074,
0.8518518518518519,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8148148148148148,
0.8148148148148148,
0.7777777777777778,
0.7777777777777778,
0.7407407407407407,
0.7407407407407407,
0.7222222222222222,
0.7037037037037037,
0.6851851851851852,
0.6481481481481481,
0.5925925925925926,
0.5555555555555556,
0.5370370370370371,
0.5370370370370371,
0.5,
0.46296296296296297,
0.46296296296296297,
0.4444444444444444,
0.4074074074074074,
0.3888888888888889,
0.37037037037037035,
0.35185185185185186,
0.35185185185185186,
0.3148148148148148,
0.2962962962962963,
0.2777777777777778,
0.25925925925925924,
0.2222222222222222,
0.16666666666666666,
0.12962962962962962,
0.1111111111111111,
0.07407407407407407,
0.05555555555555555,
0.037037037037037035,
0.018518518518518517,
0
],
"xaxis": "x",
"y": [
0.054,
0.07076101468624833,
0.09252669039145907,
0.10989010989010989,
0.1320754716981132,
0.1503267973856209,
0.1717557251908397,
0.1939655172413793,
0.21951219512195122,
0.24725274725274726,
0.26785714285714285,
0.3103448275862069,
0.3308270676691729,
0.36666666666666664,
0.38181818181818183,
0.40384615384615385,
0.43010752688172044,
0.4878048780487805,
0.4936708860759494,
0.5,
0.5285714285714286,
0.5303030303030303,
0.5423728813559322,
0.625,
0.6590909090909091,
0.7435897435897436,
0.75,
0.7352941176470589,
0.7575757575757576,
0.8,
0.7857142857142857,
0.84,
0.9090909090909091,
0.9047619047619048,
0.95,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1
],
"yaxis": "y"
},
{
"hovertemplate": "(%{x}, %{y})RF_os - test",
"legendgroup": "RF_os",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF_os"
},
"line": {
"color": "rgb(56, 166, 165)",
"width": 2
},
"marker": {
"color": "rgb(56, 166, 165)",
"line": {
"color": "rgba(255, 255, 255, 0.9)",
"width": 1
},
"size": 8,
"symbol": "circle"
},
"mode": "lines",
"name": "test",
"showlegend": true,
"type": "scatter",
"x": [
1,
1,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9444444444444444,
0.9259259259259259,
0.9074074074074074,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8518518518518519,
0.8148148148148148,
0.8148148148148148,
0.7962962962962963,
0.7777777777777778,
0.7777777777777778,
0.7777777777777778,
0.7407407407407407,
0.7407407407407407,
0.7222222222222222,
0.6851851851851852,
0.6851851851851852,
0.6851851851851852,
0.6851851851851852,
0.6666666666666666,
0.6481481481481481,
0.6481481481481481,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6111111111111112,
0.5925925925925926,
0.5740740740740741,
0.5555555555555556,
0.5555555555555556,
0.5185185185185185,
0.5,
0.48148148148148145,
0.48148148148148145,
0.46296296296296297,
0.4444444444444444,
0.4444444444444444,
0.4444444444444444,
0.4074074074074074,
0.4074074074074074,
0.3888888888888889,
0.37037037037037035,
0.35185185185185186,
0.3333333333333333,
0.3333333333333333,
0.3148148148148148,
0.2962962962962963,
0.2777777777777778,
0.2777777777777778,
0.25925925925925924,
0.24074074074074073,
0.2037037037037037,
0.18518518518518517,
0.14814814814814814,
0.1111111111111111,
0.09259259259259259,
0.037037037037037035,
0
],
"xaxis": "x",
"y": [
0.054,
0.05856832971800434,
0.06370192307692307,
0.07123655913978495,
0.07737226277372262,
0.08660130718954248,
0.09532374100719425,
0.10379241516966067,
0.11279826464208242,
0.12560386473429952,
0.13829787234042554,
0.15028901734104047,
0.1625,
0.16887417218543047,
0.18050541516245489,
0.1891891891891892,
0.2,
0.21076233183856502,
0.22705314009661837,
0.23979591836734693,
0.2554347826086957,
0.26136363636363635,
0.2634730538922156,
0.275,
0.2792207792207792,
0.2857142857142857,
0.3,
0.32061068702290074,
0.3252032520325203,
0.3305785123966942,
0.33620689655172414,
0.3425925925925926,
0.3523809523809524,
0.3627450980392157,
0.37,
0.3673469387755102,
0.3684210526315789,
0.3977272727272727,
0.4,
0.40476190476190477,
0.43037974683544306,
0.4594594594594595,
0.4722222222222222,
0.4857142857142857,
0.5,
0.5074626865671642,
0.5483870967741935,
0.5689655172413793,
0.5614035087719298,
0.5740740740740741,
0.6,
0.6122448979591837,
0.6222222222222222,
0.6585365853658537,
0.65,
0.6666666666666666,
0.6578947368421053,
0.6486486486486487,
0.7058823529411765,
0.7272727272727273,
0.7333333333333333,
0.7586206896551724,
0.75,
0.8,
0.8260869565217391,
0.8181818181818182,
0.9,
0.8947368421052632,
0.9411764705882353,
0.9375,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1
],
"yaxis": "y"
},
{
"hovertemplate": "(%{x}, %{y})RF_us - test",
"legendgroup": "RF_us",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF_us"
},
"line": {
"color": "rgb(115, 175, 72)",
"width": 2
},
"marker": {
"color": "rgb(115, 175, 72)",
"line": {
"color": "rgba(255, 255, 255, 0.9)",
"width": 1
},
"size": 8,
"symbol": "circle"
},
"mode": "lines",
"name": "test",
"showlegend": true,
"type": "scatter",
"x": [
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9444444444444444,
0.9444444444444444,
0.9444444444444444,
0.9444444444444444,
0.9259259259259259,
0.9074074074074074,
0.8888888888888888,
0.8888888888888888,
0.8888888888888888,
0.8888888888888888,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8333333333333334,
0.8333333333333334,
0.8148148148148148,
0.7962962962962963,
0.7777777777777778,
0.7407407407407407,
0.7407407407407407,
0.7407407407407407,
0.7407407407407407,
0.7037037037037037,
0.6851851851851852,
0.6851851851851852,
0.6666666666666666,
0.6481481481481481,
0.6111111111111112,
0.5740740740740741,
0.5370370370370371,
0.5185185185185185,
0.5,
0.48148148148148145,
0.4444444444444444,
0.3888888888888889,
0.3888888888888889,
0.37037037037037035,
0.37037037037037035,
0.37037037037037035,
0.2962962962962963,
0.2037037037037037,
0.16666666666666666,
0.12962962962962962,
0.12962962962962962,
0.1111111111111111,
0.1111111111111111,
0.1111111111111111,
0.09259259259259259,
0.07407407407407407,
0.05555555555555555,
0.018518518518518517,
0
],
"xaxis": "x",
"y": [
0.054,
0.05421686746987952,
0.05454545454545454,
0.054933875890132246,
0.055441478439425054,
0.05572755417956656,
0.056016597510373446,
0.05619146722164412,
0.05672268907563025,
0.057203389830508475,
0.057692307692307696,
0.05806451612903226,
0.058315334773218146,
0.05888767720828789,
0.05934065934065934,
0.05947136563876652,
0.060066740823136816,
0.06002265005662514,
0.06077981651376147,
0.06113033448673587,
0.06177156177156177,
0.0624263839811543,
0.06302021403091558,
0.06257521058965103,
0.06295399515738499,
0.06349206349206349,
0.0647571606475716,
0.06540880503144654,
0.06649616368286446,
0.06718346253229975,
0.06842105263157895,
0.06914893617021277,
0.07017543859649122,
0.07133058984910837,
0.07112970711297072,
0.07172995780590717,
0.07275320970042796,
0.07380607814761216,
0.07396449704142012,
0.07324364723467862,
0.07261724659606657,
0.07465007776049767,
0.07643312101910828,
0.07766990291262135,
0.07755775577557755,
0.07859531772575251,
0.07993197278911565,
0.08145580589254767,
0.08274647887323944,
0.0852994555353902,
0.08687615526802218,
0.08695652173913043,
0.08984375,
0.09236947791164658,
0.0968421052631579,
0.10065645514223195,
0.10430839002267574,
0.10747663551401869,
0.11057692307692307,
0.116751269035533,
0.12073490813648294,
0.1232876712328767,
0.1278409090909091,
0.13538461538461538,
0.14052287581699346,
0.14334470989761092,
0.14336917562724014,
0.1520912547528517,
0.1646090534979424,
0.17391304347826086,
0.18181818181818182,
0.19072164948453607,
0.20218579234972678,
0.20930232558139536,
0.22151898734177214,
0.23404255319148937,
0.2421875,
0.26126126126126126,
0.2828282828282828,
0.2967032967032967,
0.3333333333333333,
0.35294117647058826,
0.3387096774193548,
0.3684210526315789,
0.4166666666666667,
0.47619047619047616,
0.5128205128205128,
0.5,
0.5,
0.5294117647058824,
0.5384615384615384,
0.6363636363636364,
0.75,
0.8571428571428571,
1,
1,
1,
1,
1,
1
],
"yaxis": "y"
}
],
"layout": {
"font": {
"size": 12
},
"height": 600,
"hoverlabel": {
"font": {
"size": 16
}
},
"legend": {
"bgcolor": "rgba(255, 255, 255, 0.5)",
"font": {
"size": 16
},
"groupclick": "toggleitem",
"traceorder": "grouped",
"x": 0.01,
"xanchor": "left",
"y": 0.01,
"yanchor": "bottom"
},
"margin": {
"b": 50,
"l": 50,
"pad": 0,
"r": 0,
"t": 35
},
"shapes": [
{
"layer": "below",
"line": {
"color": "black",
"dash": "dash",
"width": 1
},
"opacity": 0.6,
"type": "line",
"x0": 0,
"x1": 1,
"xref": "x domain",
"y0": 0.054,
"y1": 0.054,
"yref": "y"
}
],
"showlegend": true,
"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
}
}
},
"title": {
"font": {
"size": 24
},
"pad": {
"b": 15,
"t": 15
},
"x": 0.5,
"xanchor": "center",
"xref": "paper",
"y": 1,
"yanchor": "top"
},
"width": 900,
"xaxis": {
"anchor": "y",
"automargin": true,
"autorange": true,
"domain": [
0,
1
],
"range": [
0,
1
],
"title": {
"font": {
"size": 16
},
"text": "Recall"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"automargin": true,
"autorange": true,
"domain": [
0,
1
],
"range": [
0.0014444444444444426,
1.0525555555555555
],
"title": {
"font": {
"size": 16
},
"text": "Precision"
},
"type": "linear"
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"atom.plot_prc()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "(%{x}, %{y})RF - test",
"legendgroup": "RF",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF"
},
"line": {
"color": "rgb(0, 98, 98)",
"width": 2
},
"marker": {
"color": "rgb(0, 98, 98)",
"line": {
"color": "rgba(255, 255, 255, 0.9)",
"width": 1
},
"size": 8,
"symbol": "circle"
},
"mode": "lines",
"name": "test",
"showlegend": true,
"type": "scatter",
"x": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0.0010570824524312897,
0.0021141649048625794,
0.0021141649048625794,
0.006342494714587738,
0.006342494714587738,
0.008456659619450317,
0.009513742071881607,
0.009513742071881607,
0.010570824524312896,
0.015856236786469344,
0.019027484143763214,
0.02854122621564482,
0.03276955602536998,
0.03488372093023256,
0.040169133192389,
0.04439746300211417,
0.056025369978858354,
0.06553911205073996,
0.07188160676532769,
0.080338266384778,
0.09408033826638477,
0.10570824524312897,
0.13002114164904863,
0.14482029598308668,
0.16913319238900634,
0.19767441860465115,
0.22938689217758984,
0.2748414376321353,
0.3403805496828753,
0.4281183932346723,
0.5391120507399577,
0.7357293868921776,
1
],
"xaxis": "x",
"y": [
0,
0.018518518518518517,
0.07407407407407407,
0.1111111111111111,
0.12962962962962962,
0.16666666666666666,
0.2222222222222222,
0.25925925925925924,
0.3148148148148148,
0.35185185185185186,
0.35185185185185186,
0.37037037037037035,
0.4074074074074074,
0.4444444444444444,
0.46296296296296297,
0.46296296296296297,
0.5,
0.5370370370370371,
0.5370370370370371,
0.5555555555555556,
0.5925925925925926,
0.6481481481481481,
0.6851851851851852,
0.7037037037037037,
0.7407407407407407,
0.7407407407407407,
0.7777777777777778,
0.7777777777777778,
0.8148148148148148,
0.8148148148148148,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8333333333333334,
0.8518518518518519,
0.9074074074074074,
0.9259259259259259,
0.9629629629629629,
0.9814814814814815,
1
],
"yaxis": "y"
},
{
"hovertemplate": "(%{x}, %{y})RF_os - test",
"legendgroup": "RF_os",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF_os"
},
"line": {
"color": "rgb(56, 166, 165)",
"width": 2
},
"marker": {
"color": "rgb(56, 166, 165)",
"line": {
"color": "rgba(255, 255, 255, 0.9)",
"width": 1
},
"size": 8,
"symbol": "circle"
},
"mode": "lines",
"name": "test",
"showlegend": true,
"type": "scatter",
"x": [
0,
0,
0,
0,
0,
0,
0,
0,
0.0010570824524312897,
0.0010570824524312897,
0.0021141649048625794,
0.0021141649048625794,
0.004228329809725159,
0.004228329809725159,
0.005285412262156448,
0.007399577167019027,
0.007399577167019027,
0.008456659619450317,
0.009513742071881607,
0.010570824524312896,
0.013742071881606765,
0.013742071881606765,
0.014799154334038054,
0.014799154334038054,
0.017970401691331923,
0.0200845665961945,
0.021141649048625793,
0.024312896405919663,
0.026427061310782242,
0.026427061310782242,
0.02959830866807611,
0.03488372093023256,
0.035940803382663845,
0.042283298097251586,
0.052854122621564484,
0.05391120507399577,
0.056025369978858354,
0.06342494714587738,
0.06553911205073996,
0.06659619450317125,
0.06871035940803383,
0.07505285412262157,
0.08139534883720931,
0.08562367864693446,
0.08773784355179703,
0.09408033826638477,
0.10359408033826638,
0.1109936575052854,
0.11733615221987315,
0.1226215644820296,
0.13002114164904863,
0.13742071881606766,
0.14482029598308668,
0.15750528541226216,
0.16913319238900634,
0.18604651162790697,
0.19873150105708245,
0.2219873150105708,
0.23995771670190275,
0.2653276955602537,
0.2832980972515856,
0.3107822410147992,
0.34249471458773784,
0.38266384778012685,
0.4323467230443975,
0.47463002114164904,
0.5317124735729387,
0.5909090909090909,
0.6680761099365751,
0.7304439746300211,
0.8234672304439746,
0.9175475687103594,
1
],
"xaxis": "x",
"y": [
0,
0.037037037037037035,
0.09259259259259259,
0.1111111111111111,
0.18518518518518517,
0.2037037037037037,
0.24074074074074073,
0.2777777777777778,
0.2777777777777778,
0.2962962962962963,
0.3148148148148148,
0.3333333333333333,
0.3333333333333333,
0.35185185185185186,
0.37037037037037035,
0.3888888888888889,
0.4074074074074074,
0.4074074074074074,
0.4444444444444444,
0.4444444444444444,
0.4444444444444444,
0.48148148148148145,
0.48148148148148145,
0.5,
0.5185185185185185,
0.5555555555555556,
0.5555555555555556,
0.5740740740740741,
0.5925925925925926,
0.6111111111111112,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6296296296296297,
0.6481481481481481,
0.6481481481481481,
0.6666666666666666,
0.6851851851851852,
0.6851851851851852,
0.6851851851851852,
0.7222222222222222,
0.7407407407407407,
0.7407407407407407,
0.7777777777777778,
0.7777777777777778,
0.7777777777777778,
0.7962962962962963,
0.8148148148148148,
0.8148148148148148,
0.8518518518518519,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.9074074074074074,
0.9259259259259259,
0.9444444444444444,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
1,
1
],
"yaxis": "y"
},
{
"hovertemplate": "(%{x}, %{y})RF_us - test",
"legendgroup": "RF_us",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF_us"
},
"line": {
"color": "rgb(115, 175, 72)",
"width": 2
},
"marker": {
"color": "rgb(115, 175, 72)",
"line": {
"color": "rgba(255, 255, 255, 0.9)",
"width": 1
},
"size": 8,
"symbol": "circle"
},
"mode": "lines",
"name": "test",
"showlegend": true,
"type": "scatter",
"x": [
0,
0,
0,
0,
0.0021141649048625794,
0.004228329809725159,
0.006342494714587738,
0.008456659619450317,
0.011627906976744186,
0.016913319238900635,
0.0200845665961945,
0.023255813953488372,
0.02959830866807611,
0.03805496828752643,
0.04334038054968287,
0.046511627906976744,
0.05496828752642706,
0.06765327695560254,
0.07505285412262157,
0.08668076109936575,
0.10253699788583509,
0.11416490486257928,
0.13002114164904863,
0.14376321353065538,
0.1543340380549683,
0.16596194503171247,
0.18076109936575052,
0.20084566596194503,
0.21458773784355178,
0.2357293868921776,
0.2526427061310782,
0.2653276955602537,
0.27801268498942916,
0.29704016913319237,
0.32452431289640593,
0.3382663847780127,
0.35412262156448204,
0.3678646934460888,
0.39112050739957716,
0.40380549682875266,
0.4175475687103594,
0.43446088794926,
0.45348837209302323,
0.47780126849894294,
0.492600422832981,
0.5105708245243129,
0.5221987315010571,
0.53276955602537,
0.5507399577167019,
0.5602536997885835,
0.5718816067653277,
0.5824524312896406,
0.5909090909090909,
0.6025369978858351,
0.6131078224101479,
0.6289640591966174,
0.6479915433403806,
0.6553911205073996,
0.6617336152219874,
0.6765327695560254,
0.6976744186046512,
0.7040169133192389,
0.7156448202959831,
0.7283298097251586,
0.7399577167019028,
0.7484143763213531,
0.7632135306553911,
0.7716701902748414,
0.7854122621564482,
0.7938689217758985,
0.8107822410147991,
0.8181818181818182,
0.8234672304439746,
0.8329809725158562,
0.8414376321353065,
0.8604651162790697,
0.8657505285412262,
0.8773784355179705,
0.8932346723044398,
0.9027484143763214,
0.904862579281184,
0.912262156448203,
0.9217758985200846,
0.9260042283298098,
0.9323467230443975,
0.9492600422832981,
0.9587737843551797,
0.9619450317124736,
0.9725158562367865,
0.9820295983086681,
0.9894291754756871,
0.9957716701902748,
1
],
"xaxis": "x",
"y": [
0,
0.018518518518518517,
0.05555555555555555,
0.1111111111111111,
0.1111111111111111,
0.12962962962962962,
0.12962962962962962,
0.16666666666666666,
0.2037037037037037,
0.2962962962962963,
0.37037037037037035,
0.37037037037037035,
0.37037037037037035,
0.3888888888888889,
0.3888888888888889,
0.4444444444444444,
0.48148148148148145,
0.5,
0.5185185185185185,
0.5370370370370371,
0.5740740740740741,
0.6111111111111112,
0.6481481481481481,
0.6666666666666666,
0.6851851851851852,
0.6851851851851852,
0.7037037037037037,
0.7407407407407407,
0.7407407407407407,
0.7407407407407407,
0.7407407407407407,
0.7777777777777778,
0.7962962962962963,
0.8148148148148148,
0.8333333333333334,
0.8333333333333334,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8518518518518519,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8703703703703703,
0.8888888888888888,
0.8888888888888888,
0.8888888888888888,
0.8888888888888888,
0.9074074074074074,
0.9259259259259259,
0.9444444444444444,
0.9444444444444444,
0.9444444444444444,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9629629629629629,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
0.9814814814814815,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1
],
"yaxis": "y"
}
],
"layout": {
"font": {
"size": 12
},
"height": 600,
"hoverlabel": {
"font": {
"size": 16
}
},
"legend": {
"bgcolor": "rgba(255, 255, 255, 0.5)",
"font": {
"size": 16
},
"groupclick": "toggleitem",
"traceorder": "grouped",
"x": 0.99,
"xanchor": "right",
"y": 0.01,
"yanchor": "bottom"
},
"margin": {
"b": 50,
"l": 50,
"pad": 0,
"r": 0,
"t": 35
},
"shapes": [
{
"layer": "below",
"line": {
"color": "black",
"dash": "dash",
"width": 1
},
"opacity": 0.6,
"type": "line",
"x0": 0,
"x1": 1,
"xref": "x domain",
"y0": 0,
"y1": 1,
"yref": "y domain"
}
],
"showlegend": true,
"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
}
}
},
"title": {
"font": {
"size": 24
},
"pad": {
"b": 15,
"t": 15
},
"x": 0.5,
"xanchor": "center",
"xref": "paper",
"y": 1,
"yanchor": "top"
},
"width": 900,
"xaxis": {
"anchor": "y",
"automargin": true,
"domain": [
0,
1
],
"range": [
-0.03,
1.03
],
"title": {
"font": {
"size": 16
},
"text": "FPR"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"automargin": true,
"domain": [
0,
1
],
"range": [
-0.03,
1.03
],
"title": {
"font": {
"size": 16
},
"text": "TPR"
},
"type": "linear"
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"atom.plot_roc()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.10.2"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 4
}