{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/angela/anaconda3/envs/vcog_paper_py35/lib/python3.5/site-packages/sklearn/ensemble/weight_boosting.py:29: DeprecationWarning: numpy.core.umath_tests is an internal NumPy module and should not be imported. It will be removed in a future NumPy release.\n", " from numpy.core.umath_tests import inner1d\n", "/home/angela/anaconda3/envs/vcog_paper_py35/lib/python3.5/site-packages/statsmodels/compat/pandas.py:56: FutureWarning: The pandas.core.datetools module is deprecated and will be removed in a future version. Please use the pandas.tseries module instead.\n", " from pandas.core import datetools\n" ] } ], "source": [ "import pandas as pd\n", "import scipy.io\n", "from os import listdir\n", "from sklearn.utils import shuffle\n", "from sklearn import preprocessing\n", "#from nilearn import plotting\n", "#from proteus.io import util\n", "from proteus.visu import sbp_visu\n", "\n", "import glob,os\n", "#import nibabel as nib\n", "\n", "\n", "import pickle\n", "from proteus.predic import high_confidence_at\n", "import numpy as np\n", "import pandas as pd\n", "from proteus.predic import prediction\n", "from sklearn import preprocessing\n", "from sklearn.model_selection import StratifiedKFold\n", "\n", "from sklearn.svm import SVC\n", "from sklearn.neighbors import KNeighborsClassifier\n", "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.naive_bayes import GaussianNB\n", "from sklearn.model_selection import GridSearchCV\n", "from sklearn.model_selection import StratifiedShuffleSplit\n", "\n", "from sklearn import metrics\n", "\n", "import matplotlib.pyplot as plt\n", "from matplotlib import cm\n", "import seaborn as sns\n", "\n", "import statsmodels.formula.api as smf\n", "import statsmodels.api as sm\n", "from statsmodels.stats.multicomp import pairwise_tukeyhsd\n", "\n", "from copy import deepcopy\n", "\n", "from itertools import cycle\n", "from sklearn.metrics import roc_curve, auc\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import label_binarize\n", "from sklearn.multiclass import OneVsRestClassifier\n", "from scipy import interp\n", "\n", "from sklearn.metrics import average_precision_score\n", "from sklearn.metrics import precision_recall_curve" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def stats_mask(y_true, y_pred, mask_selected=None):\n", " if mask_selected is None:\n", " mask_selected = np.ones(y_pred.shape).astype(bool)\n", " print('------------------------')\n", " print('Ratio:', y_true[mask_selected].sum()/y_true.sum()) \n", " print('# : ', y_true[mask_selected].sum()) \n", " print('# true values: ',mask_selected.sum())\n", " print('ACC : ', np.mean((y_true == y_pred)[mask_selected])) " ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def predic_stats(y_, y_pred, lr_decision):\n", " # number of AD subjects\n", " n_ad = sum(y_)\n", " print('Total number of TARGET subjects: ', n_ad)\n", "\n", " # number of CN subjects\n", " n_cn = len(y_) - sum(y_)\n", " print('Total number of NON-TARGET subjects: ', n_cn)\n", " \n", " # number of subjects predicted as AD at stage 1\n", " n_pos = sum(y_pred)\n", " print('Stage 1 number of hits (true and false positives): ', n_pos)\n", " \n", " # true positives at stage 1\n", " n_pos_ad = sum(y_pred[y_.astype(bool)])\n", " print('Stage 1 TRUE positives: ', n_pos_ad)\n", " \n", " # false positives at stage 1\n", " n_pos_cn = n_pos - n_pos_ad\n", " print('Stage 1 FALSE positives: ', n_pos_cn)\n", " \n", " # number of CN subjects not identified as positive (true negatives)\n", " n_neg1_cn = n_cn - n_pos_cn\n", " print('Stage 1 TRUE negatives: ', n_neg1_cn)\n", "\n", " # number of all flagged HPC-AD subjects\n", " n_flag = sum(y_pred[lr_decision>0])\n", " print('Total number of flagged HPC-AD subjects: ', n_flag)\n", "\n", " # number of flagged HPC-AD subjects who are actually AD (true positives)\n", " y_pred_true = y_ + y_pred\n", " y_pred_true = y_pred_true==2\n", " n_flag_ad = sum(y_pred_true[lr_decision>0])\n", " print('Number of flagged HPC-AD subjects that are TRUE positives: ', n_flag_ad)\n", "\n", " # number of flagged HPC-AD subjects that are actually CN (false positives)\n", " n_flag_cn = n_flag - n_flag_ad\n", " print('Number of flagged HPC-AD subjects that are FALSE positives: ', n_flag_cn)\n", "\n", " # number of CN subjects that were not flagged (true negatives)\n", " n_neg_cn = n_cn - n_flag_cn\n", " print('Number of true negatives: ', n_neg_cn)\n", " \n", " print('#############################')\n", " print('Stage 1 stats for TARGET vs NON-TARGET')\n", " print('Precision for AD: ', n_pos_ad/(n_pos_ad + n_pos_cn))\n", " prec = n_pos_ad/(n_pos_ad + n_pos_cn)\n", " print('Recall (or sensitivity) for AD: ', n_pos_ad/n_ad)\n", " sens = n_pos_ad/n_ad\n", " print('Specificity: ', n_neg1_cn/n_cn)\n", " spec = n_neg1_cn/n_cn\n", " fp = (1-spec)*664\n", " tp = sens*336\n", " adj_prec = tp/(tp+fp)\n", " print('Adjusted precision for 33.6% baseline rate: ', adj_prec)\n", " print('Accuracy: ', (n_pos_ad + n_neg1_cn)/(n_ad + n_cn))\n", " acc = (n_pos_ad + n_neg1_cn)/(n_ad + n_cn)\n", "\n", " print('#############################')\n", " print('Stage 2 stats for TARGET vs NON-TARGET')\n", " print('Precision for HPC-AD: ', n_flag_ad/n_flag)\n", " prec_2 = n_flag_ad/n_flag\n", " print('Recall (or sensitivity) for HPC-AD: ', n_flag_ad/n_ad)\n", " sens_2 = n_flag_ad/n_ad\n", " print('Specificity: ', n_neg_cn/n_cn)\n", " spec_2 = n_neg_cn/n_cn\n", " fp_2 = (1-spec_2)*664\n", " tp_2 = sens_2*336\n", " adj_prec_2 = tp_2/(tp_2 + fp_2)\n", " print('Adjusted precision for 33.6% baseline rate: ', adj_prec_2)\n", " print('Accuracy: ', (n_flag_ad + n_neg_cn)/(n_ad + n_cn))\n", " acc_2 = (n_flag_ad + n_neg_cn)/(n_ad + n_cn)\n", " \n", " return sens, spec, prec, acc, sens_2, spec_2, prec_2, acc_2" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "sns.set(font_scale=2)\n", "sns.set_style(\"white\")\n", "#sns.set_context(\"paper\")\n", "#sns.set_palette(\"colorblind\")\n", "#sns.set_palette(\"GnBu_d\")\n", "\n", "#sns.set_palette(sns.cubehelix_palette(n_colors=8))\n", "#sns.set_palette(sns.color_palette(\"BrBG\", 6))\n", "\n", "cpal = [\"#F0DFB2\", \"#CFA255\", \"#995D12\", \"#B3E2DB\", \"#58B0A6\", \"#0D7068\"]\n", "sns.set_palette(cpal)\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "path_results = '/home/angela/Desktop/vcog_paper/gigascience/third_submission/roc/cog/'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Load longitudinal data " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "np.random.seed(1)\n", "#np.random.RandomState(1)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/angela/anaconda3/envs/vcog_paper_py35/lib/python3.5/site-packages/IPython/core/interactiveshell.py:2785: DtypeWarning: Columns (101) have mixed types. Specify dtype option on import or set low_memory=False.\n", " interactivity=interactivity, compiler=compiler, result=result)\n" ] } ], "source": [ "long_data = pd.read_csv('/home/angela/Documents/adni_csv/adnimerge_upenn_unw_av45_neurobat.csv')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Load data for the training set (ADNI1)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "data = pd.read_csv('/home/angela/Desktop/vcog_paper/adni1_vbm_adcn_subtypes_20171209/7clus/adni1_model_weights.csv')" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "data.dropna(subset=['sub1','age_scan','gender','mean_gm','tiv', 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR'],\n", " inplace=True)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "data = data[['RID','age_scan','gender','mean_gm','tiv',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR',\n", " 'sub1','sub2','sub3','sub4','sub5','sub6','sub7',\n", " 'ABETA','TAU','conv_2_ad','AD','MCI','CN','APOE4_bin','DX']]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Organize the AD & CN data for classification task" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "scrolled": true }, "outputs": [], "source": [ "# Mask of the CN and AD subjects only\n", "mask_cnad = data.loc[:,['CN','AD']].values.sum(1).astype(bool)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "((370, 9), (370,), (370, 4))" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#reload(high_confidence)\n", "scalerX = preprocessing.StandardScaler()\n", "scaler = preprocessing.StandardScaler()\n", "\n", "x_ = data.iloc[mask_cnad,data.columns.get_loc(\"ADAS13\"):data.columns.get_loc(\"CLOCKSCOR\")+1].values\n", "#x_ = scalerX.fit_transform(x_)\n", "y_ = data[['AD']].values.ravel()[mask_cnad]\n", "\n", "confounds = data[['gender','age_scan','mean_gm','tiv']].values[mask_cnad,:]\n", "#confounds = data[['sex','age_r']].values[mask_cnad,:]\n", "#confounds[:, 1:] = scaler.fit_transform(confounds[:, 1:])\n", "#confounds[:, 0] = preprocessing.binarize(confounds[:, 0].reshape(-1, 1), threshold=1)[:, 0]\n", "\n", "#crm = prediction.ConfoundsRm(confounds, x_)\n", "#x_ = crm.transform(confounds, x_)\n", "\n", "x_ = scaler.fit_transform(np.hstack((x_,confounds)))\n", "#x_ = np.hstack((x_,confounds))\n", "\n", "\n", "x_.shape, y_.shape, confounds.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Cross-validation HPC in ADNI1 AD & CN" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stage 1\n", "Proba:\n", "[1. 1. 1. 1. 1. 0.98755187\n", " 1. 1. 1. 1. 0.87649402 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.99595142 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 0.9958159 1.\n", " 0.98387097 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 0.84063745\n", " 1. 1. 0.06995885 1. 1. 1.\n", " 1. 1. 0.99242424 0.26848249 1. 1.\n", " 1. 0.93562232 0.93951613 1. 0.06934307 1.\n", " 0.61666667 0.30379747 1. 1. 1. 1.\n", " 1. 1. 0.8458498 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.91304348 1. 1. 1.\n", " 1. 1. 0. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.95801527 1. 1.\n", " 0.50420168 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.98418972 1. 1. 1. 0.67916667 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.98275862 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.99615385 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1. ]\n", "Average hm score 0.9065040650406504\n", "Stage 2\n", "Adjusted gamma: 1.0\n", "Adjusted gamma: 1.0\n", "Classifying AD vs CN...\n", "[0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0.\n", " 0. 0. 0. 1. 1. 0. 1. 1. 0. 1. 0. 0. 1. 1. 1. 0. 0. 0. 0. 1. 1. 0. 0. 0.\n", " 0. 1. 0. 1. 1. 1. 0. 1. 0. 0. 0. 0. 0. 0. 1. 0. 0. 1. 1. 0. 0. 1. 1. 0.\n", " 1. 0. 0. 0. 0. 0. 0. 1. 0. 0. 1. 0. 0. 1. 1. 0. 0. 1. 0. 0. 0. 0. 1. 0.\n", " 1. 0. 1. 1. 1. 1. 0. 1. 0. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.\n", " 1. 0. 1. 1.]\n", "Total number of TARGET subjects: 55.0\n", "Total number of NON-TARGET subjects: 69.0\n", "Stage 1 number of hits (true and false positives): 53.0\n", "Stage 1 TRUE positives: 52.0\n", "Stage 1 FALSE positives: 1.0\n", "Stage 1 TRUE negatives: 68.0\n", "Total number of flagged HPC-AD subjects: 48.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 48\n", "Number of flagged HPC-AD subjects that are FALSE positives: 0.0\n", "Number of true negatives: 69.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 0.9811320754716981\n", "Recall (or sensitivity) for AD: 0.9454545454545454\n", "Specificity: 0.9855072463768116\n", "Adjusted precision for 33.6% baseline rate: 0.9705978964453406\n", "Accuracy: 0.967741935483871\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 1.0\n", "Recall (or sensitivity) for HPC-AD: 0.8727272727272727\n", "Specificity: 1.0\n", "Adjusted precision for 33.6% baseline rate: 1.0\n", "Accuracy: 0.9435483870967742\n", "Stage 1\n", "Proba:\n", "[0.47808765 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.99173554 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.99595142 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.07630522 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 0.9922179 1.\n", " 1. 1. 1. 0.66666667 1. 1.\n", " 1. 0.98015873 1. 1. 1. 1.\n", " 1. 1. 0.27667984 1. 1. 0.76226415\n", " 0. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 0.8\n", " 1. 0.02521008 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0. 1. 1. 1. 1.\n", " 1. 0.34008097 1. 1. 0.22510823 1.\n", " 1. 0.1902834 0.83921569 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.70881226 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.99588477 1. 1. 1. 0.66945607\n", " 1. 1. 1. 1. 1. 0.9916318\n", " 1. 0.99570815 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.90041494 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.9561753 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 0.80237154 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. ]\n", "Average hm score 0.8987854251012146\n", "Stage 2\n", "Adjusted gamma: 1.0\n", "Adjusted gamma: 1.0\n", "Classifying AD vs CN...\n", "[0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n", " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 1. 0. 1. 0.\n", " 0. 0. 1. 0. 1. 0. 1. 1. 0. 0. 1. 0. 0. 1. 0. 0. 0. 0. 0. 1. 0. 0. 0. 1.\n", " 1. 0. 1. 0. 1. 0. 1. 1. 0. 1. 0. 1. 0. 1. 0. 0. 1. 1. 1. 1. 1. 1. 0. 1.\n", " 1. 1. 1. 1. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1.]\n", "Total number of TARGET subjects: 55.0\n", "Total number of NON-TARGET subjects: 68.0\n", "Stage 1 number of hits (true and false positives): 52.0\n", "Stage 1 TRUE positives: 52.0\n", "Stage 1 FALSE positives: 0.0\n", "Stage 1 TRUE negatives: 68.0\n", "Total number of flagged HPC-AD subjects: 45.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 45\n", "Number of flagged HPC-AD subjects that are FALSE positives: 0.0\n", "Number of true negatives: 68.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 1.0\n", "Recall (or sensitivity) for AD: 0.9454545454545454\n", "Specificity: 1.0\n", "Adjusted precision for 33.6% baseline rate: 1.0\n", "Accuracy: 0.975609756097561\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 1.0\n", "Recall (or sensitivity) for HPC-AD: 0.8181818181818182\n", "Specificity: 1.0\n", "Adjusted precision for 33.6% baseline rate: 1.0\n", "Accuracy: 0.9186991869918699\n", "Stage 1\n", "Proba:\n", "[0.54581673 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.91696751 0.97107438 0.99578059 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.99190283 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.76893939 1. 0.65863454 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 0.99610895 1.\n", " 1. 1. 1. 0.61382114 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.24505929 1. 1. 0.23018868\n", " 0.044 0.97142857 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.9245283 1. 0.81512605 1. 1.\n", " 1. 1. 1. 1. 0.99264706 1.\n", " 1. 1. 1. 1. 1. 0.10196078\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.99579832 1. 1. 1.\n", " 1. 0.99095023 0. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.99137931 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 0.99601594 1.\n", " 1. 1. 0.99166667 1. 0.98367347 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.48790323 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.675 1. 1. 1. 1. 1.\n", " 0.98076923 1. 1. 0. 1. 1.\n", " 1. 1. 0.925 1. 1. 1.\n", " 1. ]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Average hm score 0.8825910931174089\n", "Stage 2\n", "Adjusted gamma: 1.0\n", "Adjusted gamma: 1.0\n", "Classifying AD vs CN...\n", "[0. 0. 0. 1. 0. 0. 1. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n", " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 1. 1. 0. 1.\n", " 1. 1. 0. 1. 0. 1. 0. 0. 1. 1. 1. 1. 0. 0. 1. 1. 1. 1. 1. 1. 0. 1. 1. 1.\n", " 0. 0. 0. 0. 1. 0. 0. 1. 1. 1. 0. 0. 1. 0. 0. 0. 1. 1. 0. 1. 0. 1. 1. 0.\n", " 0. 0. 1. 1. 0. 1. 1. 0. 1. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1.]\n", "Total number of TARGET subjects: 55.0\n", "Total number of NON-TARGET subjects: 68.0\n", "Stage 1 number of hits (true and false positives): 58.0\n", "Stage 1 TRUE positives: 55.0\n", "Stage 1 FALSE positives: 3.0\n", "Stage 1 TRUE negatives: 65.0\n", "Total number of flagged HPC-AD subjects: 51.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 51\n", "Number of flagged HPC-AD subjects that are FALSE positives: 0.0\n", "Number of true negatives: 68.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 0.9482758620689655\n", "Recall (or sensitivity) for AD: 1.0\n", "Specificity: 0.9558823529411765\n", "Adjusted precision for 33.6% baseline rate: 0.9198067632850243\n", "Accuracy: 0.975609756097561\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 1.0\n", "Recall (or sensitivity) for HPC-AD: 0.9272727272727272\n", "Specificity: 1.0\n", "Adjusted precision for 33.6% baseline rate: 1.0\n", "Accuracy: 0.967479674796748\n" ] } ], "source": [ "scores_ad_cn=[]\n", "scores_s2 = []\n", "ad_precision = []\n", "cn_precision = []\n", "ad_recall = []\n", "cn_recall = []\n", "ad_f1_score = []\n", "cn_f1_score = []\n", "\n", "s1_spec = []\n", "s1_sens = []\n", "s1_prec = []\n", "s1_acc = []\n", "\n", "s2_spec = []\n", "s2_sens = []\n", "s2_prec = []\n", "s2_acc = []\n", "\n", "\n", "skf = StratifiedKFold(n_splits=3)\n", "for train_index, val_index in skf.split(x_,y_):\n", " X_training, X_val = x_[train_index], x_[val_index]\n", " y_training, y_val = y_[train_index], y_[val_index]\n", " \n", " hpc = high_confidence_at.TwoStagesPrediction(\n", " n_iter=500,\n", " shuffle_test_split=0.5,\n", " min_gamma=.99,\n", " thresh_ratio=0.1)\n", " \n", " hpc.fit(X_training, X_training, y_training)\n", " \n", " _, dic_results = hpc.predict(X_val, X_val)\n", " \n", " # test in validation sample\n", " acc = metrics.accuracy_score(y_val, (dic_results['s1df'][:,0]>0).astype(float))\n", " tmp_mask = (dic_results['s2df'][:,1]>0)\n", " acc_s2 = metrics.accuracy_score(y_val[tmp_mask], (dic_results['s1df'][:,0]>0).astype(float)[tmp_mask])\n", " scores_ad_cn.append(acc)\n", " scores_s2.append(acc_s2)\n", " print('Classifying AD vs CN...')\n", " print((dic_results['s1df'][:,0]>0).astype(float))\n", " \n", " y_pred = (dic_results['s1df'][:,0]>0).astype(float)\n", " lr_decision = dic_results['s2df'][:,1]\n", " \n", " # BASE SVM PERFORMANCE\n", " ad_p = metrics.precision_score(y_val, y_pred)\n", " ad_precision.append(ad_p)\n", " cn_p = metrics.precision_score(y_val, y_pred, pos_label=0)\n", " cn_precision.append(cn_p)\n", " ad_r = metrics.recall_score(y_val, y_pred)\n", " ad_recall.append(ad_r)\n", " cn_r = metrics.recall_score(y_val, y_pred, pos_label=0)\n", " cn_recall.append(cn_r)\n", " ad_f1 = metrics.f1_score(y_val, y_pred)\n", " ad_f1_score.append(ad_f1)\n", " cn_f1 = metrics.f1_score(y_val, y_pred, pos_label=0)\n", " cn_f1_score.append(cn_f1)\n", " \n", " \n", " sens, spec, prec, acc, sens_2, spec_2, prec_2, acc_2 = predic_stats(y_val, y_pred, lr_decision)\n", " s1_spec.append(spec)\n", " s1_sens.append(sens)\n", " s1_prec.append(prec)\n", " s1_acc.append(acc)\n", " s2_spec.append(spec_2)\n", " s2_sens.append(sens_2)\n", " s2_prec.append(prec_2)\n", " s2_acc.append(acc_2)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stage 1\n", "Mean sensitivity: 0.9636363636363635\n", "Mean specificity: 0.9804631997726627\n", "Mean precision: 0.9764693125135545\n", "Mean accuracy: 0.972987149226331\n", "##########\n", "Stage 2\n", "Mean sensitivity: 0.8727272727272727\n", "Mean specificity: 1.0\n", "Mean precision: 1.0\n", "Mean accuracy: 0.9432424162951308\n" ] } ], "source": [ "print('Stage 1')\n", "print('Mean sensitivity: ', np.mean(s1_sens))\n", "print('Mean specificity: ', np.mean(s1_spec))\n", "print('Mean precision: ', np.mean(s1_prec))\n", "print('Mean accuracy: ', np.mean(s1_acc))\n", "print('#'*10)\n", "print('Stage 2')\n", "print('Mean sensitivity: ', np.mean(s2_sens))\n", "print('Mean specificity: ', np.mean(s2_spec))\n", "print('Mean precision: ', np.mean(s2_prec))\n", "print('Mean accuracy: ', np.mean(s2_acc))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Train HPC (on whole training set of ADNI1 AD & CN)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stage 1\n", "Proba:\n", "[0.70416667 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.9766537 0.95454545 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.97165992 1. 0.36 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.47983871 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.63052209 1. 1. 0.12840467\n", " 0. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.97233202 1. 0.68379447 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 0.58364312\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.99578059 1. 1.\n", " 1. 1. 0. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 0.97647059 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 0.49367089 1. 1.\n", " 0.29365079 1. 1. 1. 1. 1.\n", " 1. 0.1042471 1. 1. 1. 1.\n", " 1. 1. 0.01626016 1. 0.82170543 0.61316872\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 0.95256917 1. 1. 1. 1. 1.\n", " 0. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.96124031 1. 1. 0.92765957 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 0.94488189 1. 1. 1.\n", " 1. 1. 0.99111111 1. 0.99601594 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 0.99607843\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 0.99606299 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. ]\n", "Average hm score 0.918918918918919\n", "Stage 2\n", "Adjusted gamma: 1.0\n", "Adjusted gamma: 1.0\n" ] } ], "source": [ "#reload(high_confidence)\n", "hpc = high_confidence_at.TwoStagesPrediction(\n", " n_iter=500,\n", " shuffle_test_split=0.5,\n", " min_gamma=.99,\n", " thresh_ratio=0.1)\n", "\n", "hpc.fit(x_, x_, y_)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Level 1\n", "------------------------\n", "Ratio: 1.0\n", "# : 165.0\n", "# true values: 370\n", "ACC : 0.9756756756756757\n", "Level 2\n", "------------------------\n", "Ratio: 0.9090909090909091\n", "# : 150.0\n", "# true values: 150\n", "ACC : 1.0\n" ] } ], "source": [ "array_results, dic_results = hpc.predict(x_, x_)\n", "\n", "# Level 1\n", "print('Level 1')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float))\n", "\n", "print('Level 2')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float), dic_results['s2df'][:,1]>0)\n", "#stats_mask(dic_results['s2df'][:,2]>0)\n", "#stats_mask(dic_results['s2df'][:,3]>0)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "y_pred = (dic_results['s1df'][:,0]>0).astype(float)\n", "lr_decision = dic_results['s2df'][:,1]" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stage 1 stats for AD vs CN\n", " precision recall f1-score support\n", "\n", " 0.0 0.98 0.98 0.98 205\n", " 1.0 0.98 0.97 0.97 165\n", "\n", "avg / total 0.98 0.98 0.98 370\n", "\n" ] } ], "source": [ "print('Stage 1 stats for AD vs CN')\n", "print(metrics.classification_report(y_, y_pred))" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of TARGET subjects: 165.0\n", "Total number of NON-TARGET subjects: 205.0\n", "Stage 1 number of hits (true and false positives): 164.0\n", "Stage 1 TRUE positives: 160.0\n", "Stage 1 FALSE positives: 4.0\n", "Stage 1 TRUE negatives: 201.0\n", "Total number of flagged HPC-AD subjects: 150.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 150\n", "Number of flagged HPC-AD subjects that are FALSE positives: 0.0\n", "Number of true negatives: 205.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 0.975609756097561\n", "Recall (or sensitivity) for AD: 0.9696969696969697\n", "Specificity: 0.9804878048780488\n", "Adjusted precision for 33.6% baseline rate: 0.9617559586143343\n", "Accuracy: 0.9756756756756757\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 1.0\n", "Recall (or sensitivity) for HPC-AD: 0.9090909090909091\n", "Specificity: 1.0\n", "Adjusted precision for 33.6% baseline rate: 1.0\n", "Accuracy: 0.9594594594594594\n" ] }, { "data": { "text/plain": [ "(0.9696969696969697,\n", " 0.9804878048780488,\n", " 0.975609756097561,\n", " 0.9756756756756757,\n", " 0.9090909090909091,\n", " 1.0,\n", " 1.0,\n", " 0.9594594594594594)" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "predic_stats(y_, y_pred, lr_decision)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# compare with other methods " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ROC curve" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### base" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(370,)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "base = high_confidence_at.BaseSvc()\n", "base.fit(x_, y_)\n", "y_predicted = base.predict(x_)\n", "y_score = base.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_b = dict()\n", "tpr_b = dict()\n", "roc_auc_b = dict()\n", "for i in range(n_classes):\n", " fpr_b[i], tpr_b[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_b[i] = auc(fpr_b[i], tpr_b[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_b[\"micro\"], tpr_b[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_b[\"micro\"] = auc(fpr_b[\"micro\"], tpr_b[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 1.00\n" ] } ], "source": [ "average_precision_b = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_b))\n", "\n", "precision_b, recall_b, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### HPS" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(lr_decision, (y_score.shape[0],1))" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "# Compute ROC curve and ROC area for each class\n", "fpr_h = dict()\n", "tpr_h = dict()\n", "roc_auc_h = dict()\n", "for i in range(n_classes):\n", " fpr_h[i], tpr_h[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_h[i] = auc(fpr_h[i], tpr_h[i])\n", "\n", "# Compute micro-average ROC curve and ROC area\n", "fpr_h[\"micro\"], tpr_h[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_h[\"micro\"] = auc(fpr_h[\"micro\"], tpr_h[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 1.00\n" ] } ], "source": [ "average_precision_h = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_h))\n", "\n", "precision_h, recall_h, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### rbf kernel svm" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(370,)" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "svm_param_grid=dict(C=(np.logspace(-2, 1, 15)))\n", "\n", "clf_svm = SVC(kernel='rbf', class_weight='balanced', decision_function_shape='ovr', random_state=1)\n", "grclf_svm = GridSearchCV(clf_svm, param_grid=svm_param_grid, \n", " cv=StratifiedShuffleSplit(n_splits=50, test_size=.2, random_state=1)) \n", "\n", "grclf_svm.fit(x_, y_)\n", "y_predicted = grclf_svm.predict(x_)\n", "y_score = grclf_svm.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_svcrbf = dict()\n", "tpr_svcrbf = dict()\n", "roc_auc_svcrbf = dict()\n", "for i in range(n_classes):\n", " fpr_svcrbf[i], tpr_svcrbf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_svcrbf[i] = auc(fpr_svcrbf[i], tpr_svcrbf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_svcrbf[\"micro\"] = auc(fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### k nearest neighbours" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(370,)" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "k_range = list(range(3,7))\n", "weight_opt = [\"uniform\", \"distance\"]\n", "knn_param_grid = dict(n_neighbors = k_range, weights = weight_opt)\n", "\n", "clf_knn = KNeighborsClassifier(algorithm='auto')\n", "grclf_knn = GridSearchCV(clf_knn, param_grid=knn_param_grid, \n", " cv=StratifiedShuffleSplit(n_splits=50, test_size=.2, random_state=1))\n", "grclf_knn.fit(x_, y_)\n", "y_predicted = grclf_knn.predict(x_)\n", "#y_score = clf.decision_function(x_)\n", "y_score = grclf_knn.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_knn = dict()\n", "tpr_knn = dict()\n", "roc_auc_knn = dict()\n", "for i in range(n_classes):\n", " fpr_knn[i], tpr_knn[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_knn[i] = auc(fpr_knn[i], tpr_knn[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_knn[\"micro\"], tpr_knn[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_knn[\"micro\"] = auc(fpr_knn[\"micro\"], tpr_knn[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### random forest" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "n_features = x_.shape[1]" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(370,)" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rf_param_grid = [\n", "{'n_estimators': [10, 25], 'max_features': [5, n_features], \n", " 'max_depth': [10, 50, None], 'bootstrap': [True, False]}\n", "]\n", "\n", "clf_rf = RandomForestClassifier(random_state=1)\n", "grclf_rf = GridSearchCV(clf_rf, param_grid=rf_param_grid, \n", " cv=StratifiedShuffleSplit(n_splits=50, test_size=.2, random_state=1))\n", "grclf_rf.fit(x_, y_)\n", "y_predicted = grclf_rf.predict(x_)\n", "#y_score = clf.decision_function(x_)\n", "y_score = grclf_rf.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_rf = dict()\n", "tpr_rf = dict()\n", "roc_auc_rf = dict()\n", "for i in range(n_classes):\n", " fpr_rf[i], tpr_rf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_rf[i] = auc(fpr_rf[i], tpr_rf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_rf[\"micro\"], tpr_rf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_rf[\"micro\"] = auc(fpr_rf[\"micro\"], tpr_rf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### gaussian naive bayes" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(370,)" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf_gnb = GaussianNB()\n", "clf_gnb.fit(x_, y_)\n", "y_predicted = clf_gnb.predict(x_)\n", "#y_score = clf.decision_function(x_)\n", "y_score = clf_gnb.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_nb = dict()\n", "tpr_nb = dict()\n", "roc_auc_nb = dict()\n", "for i in range(n_classes):\n", " fpr_nb[i], tpr_nb[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_nb[i] = auc(fpr_nb[i], tpr_nb[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_nb[\"micro\"], tpr_nb[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_nb[\"micro\"] = auc(fpr_nb[\"micro\"], tpr_nb[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#plt.figure()\n", "fig, ax = plt.subplots()\n", "fig.set_size_inches(10,8)\n", "lw = 4\n", "plt.rc('xtick', labelsize=40)\n", "plt.rc('ytick', labelsize=40)\n", "plt.plot(fpr_svcrbf[0], tpr_svcrbf[0], color='green',\n", " lw=lw, label='RBF SVM (AUC=%0.3f)' % roc_auc_svcrbf[0])\n", "plt.plot(fpr_knn[0], tpr_knn[0], color='pink',\n", " lw=lw, label='KNN (AUC=%0.3f)' % roc_auc_knn[0])\n", "plt.plot(fpr_rf[0], tpr_rf[0], color='brown',\n", " lw=lw, label='RF (AUC=%0.3f)' % roc_auc_rf[0])\n", "plt.plot(fpr_nb[0], tpr_nb[0], color='orange',\n", " lw=lw, label='GNB (AUC=%0.3f)' % roc_auc_nb[0])\n", "plt.plot(fpr_b[0], tpr_b[0], color='blue',\n", " lw=lw, label='Base (AUC=%0.3f)' % roc_auc_b[0])\n", "plt.plot(fpr_h[0], tpr_h[0], color='red',\n", " lw=lw, label='HPS (AUC=%0.3f)' % roc_auc_h[0])\n", "plt.plot([0, 1], [0, 1], color='grey', lw=lw, linestyle='--')\n", "plt.xlim([-0.05, 1.00])\n", "plt.ylim([0.0, 1.05])\n", "plt.xlabel('FPR', fontdict={'size': 40})\n", "plt.ylabel('TPR', fontdict={'size': 40})\n", "plt.title('ADNI1 AD vs CN', fontdict={'size': 40})\n", "plt.legend(loc=\"lower right\", prop={'size': 25})\n", "plt.show()\n", "fig.savefig(path_results + 'adni1_ad_roc_multi.pdf', bbox_inches='tight')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Test on ADNI1 MCI" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "# load the data\n", "adni1_mci = pd.read_csv('/home/angela/Desktop/vcog_paper/adni1_vbm_adcn_subtypes_20171209/7clus/adni1_mci_bl_demog_weights.csv')" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "mask_mci = adni1_mci.loc[:,'MCI'].values.astype(bool)\n", "adni1_mci = adni1_mci.iloc[mask_mci]" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "adni1_mci.dropna(subset=['sub1','age_scan','gender','mean_gm','tiv',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR'],inplace=True)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "adni1_mci = adni1_mci[['RID','age_scan','gender','mean_gm','tiv',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR',\n", " 'sub1','sub2','sub3','sub4','sub5','sub6','sub7',\n", " 'ABETA','TAU','conv_2_ad','AD','MCI','CN','APOE4_bin','DX','Month_conv']]" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "235" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(adni1_mci)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "((235, 9), (235,), (235, 4))" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x_ = adni1_mci.iloc[:,adni1_mci.columns.get_loc(\"ADAS13\"):adni1_mci.columns.get_loc(\"CLOCKSCOR\")+1].values\n", "#x_ = scalerX.transform(x_)\n", "y_ = adni1_mci['conv_2_ad'].values.ravel()\n", "\n", "\n", "confounds = adni1_mci[['gender','age_scan','mean_gm','tiv']].values\n", "#confounds = data[['sex','age_r']].values[mask_mci,:]\n", "#confounds[:, 1:] = scaler.transform(confounds[:, 1:])\n", "#confounds[:, 0] = preprocessing.binarize(confounds[:, 0].reshape(-1, 1), threshold=1)[:, 0]\n", "#confounds = scaler.transform(confounds)\n", "#x_ = crm.transform(confounds, x_)\n", "\n", "x_ = scaler.transform(np.hstack((x_,confounds)))\n", "\n", "x_.shape, y_.shape, confounds.shape" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Level 1\n", "------------------------\n", "Ratio: 1.0\n", "# : 147.0\n", "# true values: 235\n", "ACC : 0.7617021276595745\n", "Level 2\n", "------------------------\n", "Ratio: 0.6462585034013606\n", "# : 95.0\n", "# true values: 106\n", "ACC : 0.8962264150943396\n" ] } ], "source": [ "array_results, dic_results = hpc.predict(x_, x_)\n", "\n", "# Level 1\n", "print('Level 1')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float))\n", "\n", "print('Level 2')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float), dic_results['s2df'][:,1]>0)\n", "#stats_mask(dic_results['s2df'][:,2]>0)\n", "#stats_mask(dic_results['s2df'][:,3]>0)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [], "source": [ "y_pred = (dic_results['s1df'][:,0]>0).astype(float)\n", "lr_decision = dic_results['s2df'][:,1]" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of TARGET subjects: 147.0\n", "Total number of NON-TARGET subjects: 88.0\n", "Stage 1 number of hits (true and false positives): 143.0\n", "Stage 1 TRUE positives: 117.0\n", "Stage 1 FALSE positives: 26.0\n", "Stage 1 TRUE negatives: 62.0\n", "Total number of flagged HPC-AD subjects: 106.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 95\n", "Number of flagged HPC-AD subjects that are FALSE positives: 11.0\n", "Number of true negatives: 77.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 0.8181818181818182\n", "Recall (or sensitivity) for AD: 0.7959183673469388\n", "Specificity: 0.7045454545454546\n", "Adjusted precision for 33.6% baseline rate: 0.5768390386016025\n", "Accuracy: 0.7617021276595745\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 0.8962264150943396\n", "Recall (or sensitivity) for HPC-AD: 0.6462585034013606\n", "Specificity: 0.875\n", "Adjusted precision for 33.6% baseline rate: 0.723465016658734\n", "Accuracy: 0.7319148936170212\n" ] }, { "data": { "text/plain": [ "(0.7959183673469388,\n", " 0.7045454545454546,\n", " 0.8181818181818182,\n", " 0.7617021276595745,\n", " 0.6462585034013606,\n", " 0.875,\n", " 0.8962264150943396,\n", " 0.7319148936170212)" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "predic_stats(y_, y_pred, lr_decision)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ROC curve " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### base" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#base = high_confidence_at.BaseSvc()\n", "#base.fit(x_, y_)\n", "y_predicted = base.predict(x_)\n", "y_score = base.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_b = dict()\n", "tpr_b = dict()\n", "roc_auc_b = dict()\n", "for i in range(n_classes):\n", " fpr_b[i], tpr_b[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_b[i] = auc(fpr_b[i], tpr_b[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_b[\"micro\"], tpr_b[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_b[\"micro\"] = auc(fpr_b[\"micro\"], tpr_b[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 0.89\n" ] } ], "source": [ "average_precision_b = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_b))\n", "\n", "precision_b, recall_b, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### HPS " ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(lr_decision, (y_score.shape[0],1))" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [], "source": [ "# Compute ROC curve and ROC area for each class\n", "fpr_h = dict()\n", "tpr_h = dict()\n", "roc_auc_h = dict()\n", "for i in range(n_classes):\n", " fpr_h[i], tpr_h[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_h[i] = auc(fpr_h[i], tpr_h[i])\n", "\n", "# Compute micro-average ROC curve and ROC area\n", "fpr_h[\"micro\"], tpr_h[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_h[\"micro\"] = auc(fpr_h[\"micro\"], tpr_h[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### rbf kernel svm" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_svm.predict(x_)\n", "y_score = grclf_svm.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_svcrbf = dict()\n", "tpr_svcrbf = dict()\n", "roc_auc_svcrbf = dict()\n", "for i in range(n_classes):\n", " fpr_svcrbf[i], tpr_svcrbf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_svcrbf[i] = auc(fpr_svcrbf[i], tpr_svcrbf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_svcrbf[\"micro\"] = auc(fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### k nearest neighbours" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_knn.predict(x_)\n", "y_score = grclf_knn.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_knn = dict()\n", "tpr_knn = dict()\n", "roc_auc_knn = dict()\n", "for i in range(n_classes):\n", " fpr_knn[i], tpr_knn[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_knn[i] = auc(fpr_knn[i], tpr_knn[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_knn[\"micro\"], tpr_knn[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_knn[\"micro\"] = auc(fpr_knn[\"micro\"], tpr_knn[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### random forest" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_rf.predict(x_)\n", "y_score = grclf_rf.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_rf = dict()\n", "tpr_rf = dict()\n", "roc_auc_rf = dict()\n", "for i in range(n_classes):\n", " fpr_rf[i], tpr_rf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_rf[i] = auc(fpr_rf[i], tpr_rf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_rf[\"micro\"], tpr_rf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_rf[\"micro\"] = auc(fpr_rf[\"micro\"], tpr_rf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### gaussian naive bayes" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = clf_gnb.predict(x_)\n", "y_score = clf_gnb.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_nb = dict()\n", "tpr_nb = dict()\n", "roc_auc_nb = dict()\n", "for i in range(n_classes):\n", " fpr_nb[i], tpr_nb[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_nb[i] = auc(fpr_nb[i], tpr_nb[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_nb[\"micro\"], tpr_nb[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_nb[\"micro\"] = auc(fpr_nb[\"micro\"], tpr_nb[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#plt.figure()\n", "fig, ax = plt.subplots()\n", "fig.set_size_inches(10,8)\n", "lw = 4\n", "plt.rc('xtick', labelsize=40)\n", "plt.rc('ytick', labelsize=40)\n", "plt.plot(fpr_svcrbf[0], tpr_svcrbf[0], color='green',\n", " lw=lw, label='RBF SVM (AUC=%0.3f)' % roc_auc_svcrbf[0])\n", "plt.plot(fpr_knn[0], tpr_knn[0], color='pink',\n", " lw=lw, label='KNN (AUC=%0.3f)' % roc_auc_knn[0])\n", "plt.plot(fpr_rf[0], tpr_rf[0], color='brown',\n", " lw=lw, label='RF (AUC=%0.3f)' % roc_auc_rf[0])\n", "plt.plot(fpr_nb[0], tpr_nb[0], color='orange',\n", " lw=lw, label='GNB (AUC=%0.3f)' % roc_auc_nb[0])\n", "plt.plot(fpr_b[0], tpr_b[0], color='blue',\n", " lw=lw, label='Base (AUC=%0.3f)' % roc_auc_b[0])\n", "plt.plot(fpr_h[0], tpr_h[0], color='red',\n", " lw=lw, label='HPS (AUC=%0.3f)' % roc_auc_h[0])\n", "plt.plot([0, 1], [0, 1], color='grey', lw=lw, linestyle='--')\n", "plt.xlim([-0.05, 1.00])\n", "plt.ylim([0.0, 1.05])\n", "plt.xlabel('FPR', fontdict={'size': 40})\n", "plt.ylabel('TPR', fontdict={'size': 40})\n", "plt.title('ADNI1 pMCI vs sMCI', fontdict={'size': 40})\n", "plt.legend(loc=\"lower right\", prop={'size': 25})\n", "#ax.legend(loc='center left', bbox_to_anchor=(1,0.5), prop={'size': 30})\n", "plt.show()\n", "fig.savefig(path_results + 'adni1_mci_roc_multi.pdf', bbox_inches='tight')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# REPLICATION IN ADNI2 " ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [], "source": [ "adni2_df = pd.read_csv('/home/angela/Desktop/vcog_paper/adni1_vbm_adcn_subtypes_20171209/7clus/adni2_model_weights.csv')" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [], "source": [ "adni2_df.drop(adni2_df[adni2_df.RID < 2000].index,inplace=True)" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [], "source": [ "# get rid of NaNs\n", "adni2_df.dropna(axis=0,how='any',subset=['sub1','gender','age_scan','mean_gm','tiv','conv_2_ad',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR'],inplace=True)" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [], "source": [ "adni2_df = adni2_df[['RID','age_scan','gender','mean_gm','tiv',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR',\n", " 'sub1','sub2','sub3','sub4','sub5','sub6','sub7',\n", " 'ABETA','TAU','conv_2_ad','AD','MCI','CN','APOE4_bin','DX']]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## AD vs CN " ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "((276, 9), (276,), (276, 4))" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Mask of the AD and CN subjects only\n", "mask_cnad = adni2_df.loc[:,['CN','AD']].values.sum(1).astype(bool)\n", "\n", "x_ = adni2_df.iloc[mask_cnad,adni2_df.columns.get_loc(\"ADAS13\"):adni2_df.columns.get_loc(\"CLOCKSCOR\")+1].values\n", "#x_ = scalerX.transform(x_)\n", "y_ = adni2_df[['AD']].values.ravel()[mask_cnad]\n", "\n", "\n", "confounds = adni2_df[['gender','age_scan','mean_gm','tiv']].values[mask_cnad,:]\n", "#confounds = data[['sex','age_r']].values[mask_mci,:]\n", "#confounds[:, 1:] = scaler.transform(confounds[:, 1:])\n", "#confounds[:, 0] = preprocessing.binarize(confounds[:, 0].reshape(-1, 1), threshold=1)[:, 0]\n", "#confounds = scaler.transform(confounds)\n", "#x_ = crm.transform(confounds, x_)\n", "\n", "x_ = scaler.transform(np.hstack((x_,confounds)))\n", "\n", "x_.shape, y_.shape, confounds.shape" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Level 1\n", "------------------------\n", "Ratio: 1.0\n", "# : 88.0\n", "# true values: 276\n", "ACC : 0.9565217391304348\n", "Level 2\n", "------------------------\n", "Ratio: 0.8863636363636364\n", "# : 78.0\n", "# true values: 79\n", "ACC : 0.9873417721518988\n" ] } ], "source": [ "array_results, dic_results = hpc.predict(x_, x_)\n", "\n", "# Level 1\n", "print('Level 1')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float))\n", "\n", "print('Level 2')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float), dic_results['s2df'][:,1]>0)\n", "#stats_mask(dic_results['s2df'][:,2]>0)\n", "#stats_mask(dic_results['s2df'][:,3]>0)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [], "source": [ "y_pred = (dic_results['s1df'][:,0]>0).astype(float)\n", "lr_decision = dic_results['s2df'][:,1]" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of TARGET subjects: 88.0\n", "Total number of NON-TARGET subjects: 188.0\n", "Stage 1 number of hits (true and false positives): 90.0\n", "Stage 1 TRUE positives: 83.0\n", "Stage 1 FALSE positives: 7.0\n", "Stage 1 TRUE negatives: 181.0\n", "Total number of flagged HPC-AD subjects: 79.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 78\n", "Number of flagged HPC-AD subjects that are FALSE positives: 1.0\n", "Number of true negatives: 187.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 0.9222222222222223\n", "Recall (or sensitivity) for AD: 0.9431818181818182\n", "Specificity: 0.9627659574468085\n", "Adjusted precision for 33.6% baseline rate: 0.9276315789473684\n", "Accuracy: 0.9565217391304348\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 0.9873417721518988\n", "Recall (or sensitivity) for HPC-AD: 0.8863636363636364\n", "Specificity: 0.9946808510638298\n", "Adjusted precision for 33.6% baseline rate: 0.9882796955031514\n", "Accuracy: 0.9601449275362319\n" ] }, { "data": { "text/plain": [ "(0.9431818181818182,\n", " 0.9627659574468085,\n", " 0.9222222222222223,\n", " 0.9565217391304348,\n", " 0.8863636363636364,\n", " 0.9946808510638298,\n", " 0.9873417721518988,\n", " 0.9601449275362319)" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "predic_stats(y_, y_pred, lr_decision)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ROC curve" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### base" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(276,)" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = base.predict(x_)\n", "y_score = base.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_b = dict()\n", "tpr_b = dict()\n", "roc_auc_b = dict()\n", "for i in range(n_classes):\n", " fpr_b[i], tpr_b[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_b[i] = auc(fpr_b[i], tpr_b[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_b[\"micro\"], tpr_b[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_b[\"micro\"] = auc(fpr_b[\"micro\"], tpr_b[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 0.99\n" ] } ], "source": [ "average_precision_b = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_b))\n", "\n", "precision_b, recall_b, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### HPS " ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(lr_decision, (y_score.shape[0],1))" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [], "source": [ "# Compute ROC curve and ROC area for each class\n", "fpr_h = dict()\n", "tpr_h = dict()\n", "roc_auc_h = dict()\n", "for i in range(n_classes):\n", " fpr_h[i], tpr_h[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_h[i] = auc(fpr_h[i], tpr_h[i])\n", "\n", "# Compute micro-average ROC curve and ROC area\n", "fpr_h[\"micro\"], tpr_h[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_h[\"micro\"] = auc(fpr_h[\"micro\"], tpr_h[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 0.99\n" ] } ], "source": [ "average_precision_h = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_h))\n", "\n", "precision_h, recall_h, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### rbf kernel svm" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(276,)" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_svm.predict(x_)\n", "y_score = grclf_svm.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_svcrbf = dict()\n", "tpr_svcrbf = dict()\n", "roc_auc_svcrbf = dict()\n", "for i in range(n_classes):\n", " fpr_svcrbf[i], tpr_svcrbf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_svcrbf[i] = auc(fpr_svcrbf[i], tpr_svcrbf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_svcrbf[\"micro\"] = auc(fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### k nearest neighbours" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(276,)" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_knn.predict(x_)\n", "y_score = grclf_knn.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_knn = dict()\n", "tpr_knn = dict()\n", "roc_auc_knn = dict()\n", "for i in range(n_classes):\n", " fpr_knn[i], tpr_knn[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_knn[i] = auc(fpr_knn[i], tpr_knn[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_knn[\"micro\"], tpr_knn[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_knn[\"micro\"] = auc(fpr_knn[\"micro\"], tpr_knn[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### random forest" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(276,)" ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_rf.predict(x_)\n", "y_score = grclf_rf.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_rf = dict()\n", "tpr_rf = dict()\n", "roc_auc_rf = dict()\n", "for i in range(n_classes):\n", " fpr_rf[i], tpr_rf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_rf[i] = auc(fpr_rf[i], tpr_rf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_rf[\"micro\"], tpr_rf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_rf[\"micro\"] = auc(fpr_rf[\"micro\"], tpr_rf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### gaussian naive bayes" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(276,)" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = clf_gnb.predict(x_)\n", "y_score = clf_gnb.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_nb = dict()\n", "tpr_nb = dict()\n", "roc_auc_nb = dict()\n", "for i in range(n_classes):\n", " fpr_nb[i], tpr_nb[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_nb[i] = auc(fpr_nb[i], tpr_nb[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_nb[\"micro\"], tpr_nb[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_nb[\"micro\"] = auc(fpr_nb[\"micro\"], tpr_nb[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [ { "data": { "image/png": "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PDw8GrzG2toaw4YNQ0JCAl566aVWj8nb2xvx8fFYvHgxfH19G7xGJpNh0KBB2LVrV6sswyGiP5jKPDFjxgyMHTsWnppa9cEAAAbISURBVJ6eOl3fpUsXLFmyBEePHmWSTtTOuLi44PPPP8eKFSua3BO9T58+2LhxIz744ANYW1u3aCyZWq1WtzRQIl2pVCpcvnwZubm5uH//PhwdHeHl5aW13VFbUqvVuHr1KrKzs1FQUAA7Ozt4enoiJCQE3t7eRomJqD0zlXmisLAQN27cwL1791BUVITKykpYWVnB1dUVTzzxBEJCQtCxY8c2i4eITNv169dx8+ZN5Ofnw9LSEp6enggODhadjN5STNSJiIiIiEwQl74QEREREZkgJupERERERCaIiToRERERkQliok5EREREZIKYqBMRERERmSAm6kREREREJoiJOhERERGRCWKiTkRERERkgpioExERERGZICbqREREREQmiIk6EREREZEJYqJORERERGSCmKgTEREREZkgK2MHQEREpi83NxfDhw83qI9JkyZh9erVLerXwcEBLi4u8Pf3R2hoKCIiIhAWFtZsO336d3Jygq+vL3r16oUhQ4ZgyJAhsLS0bLYtEVFrYaJOREQmT6FQQKFQIC8vDxcvXsQXX3yBkJAQfPDBBwgODpas/4KCAiQnJyMuLg4+Pj7429/+hmHDhknwDoiI9MelL0RE9FhKTU1FZGQkTpw40Sr93717F3PmzMHWrVtbpX8ioubwjjoREenN09MTu3fv1quNg4NDi/stKyvD7du38cMPP+DIkSOoqakBADx69AiLFy9GQkICnnrqqRb3r1AocOfOHZw5cwaJiYlQKBTCax9//DGCgoIQHh7ebP9ERFJiok5ERHqzsrKCn59fm/YbHByMUaNGITIyEvPnzxeSaYVCgfXr1+Ozzz4zqP/AwEAMGzYMUVFReOWVV5CTkwMAUKvVWLduHYYOHQqZTNbCd0ZEpD8ufSEiosfK4MGD8e6774rqjh07hoKCAkn6f/LJJ/Hxxx+L6tLT05GRkSFJ/0REumKiTkREj51JkybB09NTVPfzzz9L1n+fPn0QEhIiqrt48aJk/RMR6YKJOhERPXYsLS3Rv39/UV1WVpakY2gm6vfu3ZO0fyKi5jBRJyKix5KXl5eoXFRUJGn/Li4uonJpaamk/RMRNYeJOhERmQWpH/QsLy8XlW1tbSXtn4ioOUzUiYjosZSfny8qu7m5Sdr/9evXRWVfX19J+yciag4TdSIieuxUV1drPdzZpUsXyfq/desWLl++LKp75plnJOufiEgX3EediIj0dufOHQQFBel8/apVqzB58mTJxj948CDy8vJEdYMGDZKk7+LiYixZskQ4VAkAevToofVwKRFRa2OiTkREj5Xz58/jH//4h6hu2LBhWts16qPuZNIff/wR//znP0XLaqytrbF8+fIW901E1FJM1ImIyGSoVCrk5uZq1SsUCmRlZSEpKQmHDx9GdXW18JqdnR0WLVqkU//6fhNgb2+PNWvWoF+/fjq3ISKSChN1IiLSm6enJ3bv3q3z9R06dNDpuvz8fAwfPlznfq2trbFmzRoEBwfr3EYXDg4OGDduHObMmcOHSInIaJioExGR3qysrODn52fUGIKDg7Fy5Ur07t1b8r6VSiXUajU8PDwk75uISFdM1ImIyOTZ29vDyckJ/v7+CA0NxfDhw7VOJtVFQ98EVFRU4O7du7h8+TJ2796N0tJSVFdXIyEhAbdv38b27du5hzoRGQUTdSIiMhm+vr44ceJEq/Xf2DcB3bt3R3h4OF599VXMnTtX2Prx4sWLWLlypdbDq0REbYH7qBMREf0/Z2dnbNy4ET4+PkLdN998g3PnzhkxKiJqr5ioExER1ePm5oZ3331XVLdy5UrRvupERG2BiToREZGGiIgIhIWFCeXMzEwcOnTIiBERUXvERJ2IiKgB8+bNE5U3b97Mu+pE1KaYqBMRETVg6NCh6Nmzp1DOysrC4cOHjRgREbU3TNSJiIgaMXv2bFF5y5YtUKvVRoqGiNobJupERESNGDlyJLp06SKUMzIycOzYMeMFRETtChN1IiKiRlhYWCA6OlpUt3nzZiNFQ0TtDRN1IiKiJkycOBHe3t5C+ddff8W///1v4wVERO0GE3UiIqImWFtbY+bMmaK6TZs2GSkaImpPmKgTERE1Y8qUKXB3dxfKV69exU8//WTEiIioPZCp+fg6EREREZHJ4R11IiIiIiITxESdiIiIiMgEMVEnIiIiIjJBTNSJiIiIiEwQE3UiIiIiIhPERJ2IiIiIyAQxUSciIiIiMkFM1ImIiIiITBATdSIiIiIiE8REnYiIiIjIBDFRJyIiIiIyQUzUiYiIiIhMEBN1IiIiIiITxESdiIiIiMgE/R92mTdN3tk2NgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#plt.figure()\n", "fig, ax = plt.subplots()\n", "fig.set_size_inches(10,8)\n", "lw = 4\n", "plt.rc('xtick', labelsize=40)\n", "plt.rc('ytick', labelsize=40)\n", "plt.plot(fpr_svcrbf[0], tpr_svcrbf[0], color='green',\n", " lw=lw, label='RBF SVM (AUC=%0.3f)' % roc_auc_svcrbf[0])\n", "plt.plot(fpr_knn[0], tpr_knn[0], color='pink',\n", " lw=lw, label='KNN (AUC=%0.3f)' % roc_auc_knn[0])\n", "plt.plot(fpr_rf[0], tpr_rf[0], color='brown',\n", " lw=lw, label='RF (AUC=%0.3f)' % roc_auc_rf[0])\n", "plt.plot(fpr_nb[0], tpr_nb[0], color='orange',\n", " lw=lw, label='GNB (AUC=%0.3f)' % roc_auc_nb[0])\n", "plt.plot(fpr_b[0], tpr_b[0], color='blue',\n", " lw=lw, label='Base (AUC=%0.3f)' % roc_auc_b[0])\n", "plt.plot(fpr_h[0], tpr_h[0], color='red',\n", " lw=lw, label='HPS (AUC=%0.3f)' % roc_auc_h[0])\n", "plt.plot([0, 1], [0, 1], color='grey', lw=lw, linestyle='--')\n", "plt.xlim([-0.05, 1.00])\n", "plt.ylim([0.0, 1.05])\n", "plt.xlabel('FPR', fontdict={'size': 40})\n", "plt.ylabel('TPR', fontdict={'size': 40})\n", "plt.title('ADNI2 AD vs CN', fontdict={'size': 40})\n", "plt.legend(loc=\"lower right\", prop={'size': 25})\n", "#ax.legend(loc='center left', bbox_to_anchor=(1,0.5), prop={'size': 30})\n", "plt.show()\n", "fig.savefig(path_results + 'adni2_ad_roc_multi.pdf', bbox_inches='tight')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## MCI stable vs converters" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [], "source": [ "adni2_mci = pd.read_csv('/home/angela/Desktop/vcog_paper/adni1_vbm_adcn_subtypes_20171209/7clus/adni2_mci_bl_demog_weights.csv')" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [], "source": [ "mask_mci = adni2_mci.loc[:,'MCI'].values.astype(bool)\n", "adni2_mci = adni2_mci.iloc[mask_mci]" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [], "source": [ "adni2_mci.dropna(subset=['sub1','age_scan','gender','mean_gm','tiv',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR'],inplace=True)" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [], "source": [ "adni2_mci = adni2_mci[['RID','age_scan','gender','mean_gm','tiv',\n", " 'ADAS13','ADNI_MEM','ADNI_EF','BNTTOTAL','CLOCKSCOR',\n", " 'sub1','sub2','sub3','sub4','sub5','sub6','sub7',\n", " 'ABETA','TAU','conv_2_ad','AD','MCI','CN','APOE4_bin','DX','SUMMARYSUVR_WHOLECEREBNORM_1.11CUTOFF',\n", " 'Month_conv']]" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "((235, 9), (235,), (235, 4))" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x_ = adni2_mci.iloc[:, adni2_mci.columns.get_loc(\"ADAS13\"):adni2_mci.columns.get_loc(\"CLOCKSCOR\")+1].values\n", "#x_ = scalerX.transform(x_)\n", "y_ = adni2_mci[['conv_2_ad']].values.ravel()\n", "\n", "\n", "confounds = adni2_mci[['gender','age_scan','mean_gm','tiv']].values\n", "#confounds = data[['sex','age_r']].values[mask_mci,:]\n", "#confounds[:, 1:] = scaler.transform(confounds[:, 1:])\n", "#confounds[:, 0] = preprocessing.binarize(confounds[:, 0].reshape(-1, 1), threshold=1)[:, 0]\n", "#confounds = scaler.transform(confounds)\n", "#x_ = crm.transform(confounds, x_)\n", "\n", "x_ = scaler.transform(np.hstack((x_,confounds)))\n", "\n", "x_.shape, y_.shape, confounds.shape" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Level 1\n", "------------------------\n", "Ratio: 1.0\n", "# : 55.0\n", "# true values: 235\n", "ACC : 0.8425531914893617\n", "Level 2\n", "------------------------\n", "Ratio: 0.5636363636363636\n", "# : 31.0\n", "# true values: 40\n", "ACC : 0.775\n" ] } ], "source": [ "array_results, dic_results = hpc.predict(x_, x_)\n", "\n", "# Level 1\n", "print('Level 1')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float))\n", "\n", "print('Level 2')\n", "stats_mask(y_, (dic_results['s1df'][:,0]>0).astype(float), dic_results['s2df'][:,1]>0)\n", "#stats_mask(dic_results['s2df'][:,2]>0)\n", "#stats_mask(dic_results['s2df'][:,3]>0)" ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [], "source": [ "y_pred = (dic_results['s1df'][:,0]>0).astype(float)\n", "lr_decision = dic_results['s2df'][:,1]" ] }, { "cell_type": "code", "execution_count": 89, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of TARGET subjects: 55.0\n", "Total number of NON-TARGET subjects: 180.0\n", "Stage 1 number of hits (true and false positives): 60.0\n", "Stage 1 TRUE positives: 39.0\n", "Stage 1 FALSE positives: 21.0\n", "Stage 1 TRUE negatives: 159.0\n", "Total number of flagged HPC-AD subjects: 40.0\n", "Number of flagged HPC-AD subjects that are TRUE positives: 31\n", "Number of flagged HPC-AD subjects that are FALSE positives: 9.0\n", "Number of true negatives: 171.0\n", "#############################\n", "Stage 1 stats for TARGET vs NON-TARGET\n", "Precision for AD: 0.65\n", "Recall (or sensitivity) for AD: 0.7090909090909091\n", "Specificity: 0.8833333333333333\n", "Adjusted precision for 33.6% baseline rate: 0.7546358505778016\n", "Accuracy: 0.8425531914893617\n", "#############################\n", "Stage 2 stats for TARGET vs NON-TARGET\n", "Precision for HPC-AD: 0.775\n", "Recall (or sensitivity) for HPC-AD: 0.5636363636363636\n", "Specificity: 0.95\n", "Adjusted precision for 33.6% baseline rate: 0.8508413657899034\n", "Accuracy: 0.8595744680851064\n" ] }, { "data": { "text/plain": [ "(0.7090909090909091,\n", " 0.8833333333333333,\n", " 0.65,\n", " 0.8425531914893617,\n", " 0.5636363636363636,\n", " 0.95,\n", " 0.775,\n", " 0.8595744680851064)" ] }, "execution_count": 89, "metadata": {}, "output_type": "execute_result" } ], "source": [ "predic_stats(y_, y_pred, lr_decision)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ROC curve" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### base" ] }, { "cell_type": "code", "execution_count": 90, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 90, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = base.predict(x_)\n", "y_score = base.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 91, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_b = dict()\n", "tpr_b = dict()\n", "roc_auc_b = dict()\n", "for i in range(n_classes):\n", " fpr_b[i], tpr_b[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_b[i] = auc(fpr_b[i], tpr_b[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_b[\"micro\"], tpr_b[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_b[\"micro\"] = auc(fpr_b[\"micro\"], tpr_b[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 92, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 0.76\n" ] } ], "source": [ "average_precision_b = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_b))\n", "\n", "precision_b, recall_b, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### HPS " ] }, { "cell_type": "code", "execution_count": 93, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(lr_decision, (y_score.shape[0],1))" ] }, { "cell_type": "code", "execution_count": 94, "metadata": {}, "outputs": [], "source": [ "# Compute ROC curve and ROC area for each class\n", "fpr_h = dict()\n", "tpr_h = dict()\n", "roc_auc_h = dict()\n", "for i in range(n_classes):\n", " fpr_h[i], tpr_h[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_h[i] = auc(fpr_h[i], tpr_h[i])\n", "\n", "# Compute micro-average ROC curve and ROC area\n", "fpr_h[\"micro\"], tpr_h[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_h[\"micro\"] = auc(fpr_h[\"micro\"], tpr_h[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 95, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Average precision-recall score: 0.71\n" ] } ], "source": [ "average_precision_h = average_precision_score(y_true, y_score)\n", "\n", "print('Average precision-recall score: {0:0.2f}'.format(\n", " average_precision_h))\n", "\n", "precision_h, recall_h, _ = precision_recall_curve(y_true, y_score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### rbf kernel svm" ] }, { "cell_type": "code", "execution_count": 96, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 96, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_svm.predict(x_)\n", "y_score = grclf_svm.decision_function(x_)\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_svcrbf = dict()\n", "tpr_svcrbf = dict()\n", "roc_auc_svcrbf = dict()\n", "for i in range(n_classes):\n", " fpr_svcrbf[i], tpr_svcrbf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_svcrbf[i] = auc(fpr_svcrbf[i], tpr_svcrbf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_svcrbf[\"micro\"] = auc(fpr_svcrbf[\"micro\"], tpr_svcrbf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### k nearest neighbours" ] }, { "cell_type": "code", "execution_count": 98, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_knn.predict(x_)\n", "y_score = grclf_knn.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_knn = dict()\n", "tpr_knn = dict()\n", "roc_auc_knn = dict()\n", "for i in range(n_classes):\n", " fpr_knn[i], tpr_knn[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_knn[i] = auc(fpr_knn[i], tpr_knn[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_knn[\"micro\"], tpr_knn[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_knn[\"micro\"] = auc(fpr_knn[\"micro\"], tpr_knn[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### random forest" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = grclf_rf.predict(x_)\n", "y_score = grclf_rf.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_rf = dict()\n", "tpr_rf = dict()\n", "roc_auc_rf = dict()\n", "for i in range(n_classes):\n", " fpr_rf[i], tpr_rf[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_rf[i] = auc(fpr_rf[i], tpr_rf[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_rf[\"micro\"], tpr_rf[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_rf[\"micro\"] = auc(fpr_rf[\"micro\"], tpr_rf[\"micro\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### gaussian naive bayes" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(235,)" ] }, "execution_count": 102, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_predicted = clf_gnb.predict(x_)\n", "y_score = clf_gnb.predict_proba(x_)\n", "y_score = y_score[:,1] # take positive class\n", "y_score.shape" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [], "source": [ "y_true = y_.astype(int)\n", "y_true = label_binarize(y_true, classes=[0, 1])\n", "n_classes = y_true.shape[1]\n", "y_score = np.reshape(y_score, (y_score.shape[0],1))\n", "\n", "# Compute ROC curve and ROC area for each class\n", "fpr_nb = dict()\n", "tpr_nb = dict()\n", "roc_auc_nb = dict()\n", "for i in range(n_classes):\n", " fpr_nb[i], tpr_nb[i], _ = roc_curve(y_true[:, i], y_score[:, i])\n", " roc_auc_nb[i] = auc(fpr_nb[i], tpr_nb[i])\n", " \n", "# Compute micro-average ROC curve and ROC area\n", "fpr_nb[\"micro\"], tpr_nb[\"micro\"], _ = roc_curve(y_true.ravel(), y_score.ravel())\n", "roc_auc_nb[\"micro\"] = auc(fpr_nb[\"micro\"], tpr_nb[\"micro\"])" ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#plt.figure()\n", "fig, ax = plt.subplots()\n", "fig.set_size_inches(10,8)\n", "lw = 4\n", "plt.rc('xtick', labelsize=40)\n", "plt.rc('ytick', labelsize=40)\n", "plt.plot(fpr_svcrbf[0], tpr_svcrbf[0], color='green',\n", " lw=lw, label='RBF SVM (AUC=%0.3f)' % roc_auc_svcrbf[0])\n", "plt.plot(fpr_knn[0], tpr_knn[0], color='pink',\n", " lw=lw, label='KNN (AUC=%0.3f)' % roc_auc_knn[0])\n", "plt.plot(fpr_rf[0], tpr_rf[0], color='brown',\n", " lw=lw, label='RF (AUC=%0.3f)' % roc_auc_rf[0])\n", "plt.plot(fpr_nb[0], tpr_nb[0], color='orange',\n", " lw=lw, label='GNB (AUC=%0.3f)' % roc_auc_nb[0])\n", "plt.plot(fpr_b[0], tpr_b[0], color='blue',\n", " lw=lw, label='Base (AUC=%0.3f)' % roc_auc_b[0])\n", "plt.plot(fpr_h[0], tpr_h[0], color='red',\n", " lw=lw, label='HPS (AUC=%0.3f)' % roc_auc_h[0])\n", "plt.plot([0, 1], [0, 1], color='grey', lw=lw, linestyle='--')\n", "plt.xlim([-0.05, 1.00])\n", "plt.ylim([0.0, 1.05])\n", "plt.xlabel('FPR', fontdict={'size': 40})\n", "plt.ylabel('TPR', fontdict={'size': 40})\n", "plt.title('ADNI2 pMCI vs sMCI', fontdict={'size': 40})\n", "plt.legend(loc=\"lower right\", prop={'size': 25})\n", "#ax.legend(loc='center left', bbox_to_anchor=(1,0.5), prop={'size': 30})\n", "plt.show()\n", "fig.savefig(path_results + 'adni2_mci_roc_multi.pdf', bbox_inches='tight')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [default]", "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.5.6" } }, "nbformat": 4, "nbformat_minor": 2 }