630 lines
66 KiB
Plaintext
630 lines
66 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 2,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>0</th>\n",
|
||
" <th>1</th>\n",
|
||
" <th>2</th>\n",
|
||
" <th>3</th>\n",
|
||
" <th>4</th>\n",
|
||
" <th>0.1</th>\n",
|
||
" <th>1.1</th>\n",
|
||
" <th>2.1</th>\n",
|
||
" <th>3.1</th>\n",
|
||
" <th>4.1</th>\n",
|
||
" <th>0.2</th>\n",
|
||
" <th>1.2</th>\n",
|
||
" <th>2.2</th>\n",
|
||
" <th>3.2</th>\n",
|
||
" <th>4.2</th>\n",
|
||
" <th>label</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>0.715031</td>\n",
|
||
" <td>0.608764</td>\n",
|
||
" <td>0.631124</td>\n",
|
||
" <td>0.650236</td>\n",
|
||
" <td>0.512070</td>\n",
|
||
" <td>0.277071</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.125949</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.003074</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>hupu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>0.662252</td>\n",
|
||
" <td>0.541335</td>\n",
|
||
" <td>0.570617</td>\n",
|
||
" <td>0.584465</td>\n",
|
||
" <td>0.433609</td>\n",
|
||
" <td>0.451821</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.106180</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>hupu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>0.894304</td>\n",
|
||
" <td>0.861196</td>\n",
|
||
" <td>0.824562</td>\n",
|
||
" <td>0.870190</td>\n",
|
||
" <td>0.850370</td>\n",
|
||
" <td>0.414012</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.047087</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.033857</td>\n",
|
||
" <td>hupu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>0.743064</td>\n",
|
||
" <td>0.612346</td>\n",
|
||
" <td>0.575538</td>\n",
|
||
" <td>0.649530</td>\n",
|
||
" <td>0.692186</td>\n",
|
||
" <td>0.158237</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.032681</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.031898</td>\n",
|
||
" <td>hupu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>0.667459</td>\n",
|
||
" <td>0.508679</td>\n",
|
||
" <td>0.472092</td>\n",
|
||
" <td>0.547407</td>\n",
|
||
" <td>0.598427</td>\n",
|
||
" <td>0.375792</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.184405</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.112612</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.027564</td>\n",
|
||
" <td>hupu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>...</th>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1596</th>\n",
|
||
" <td>0.809034</td>\n",
|
||
" <td>0.709333</td>\n",
|
||
" <td>0.673414</td>\n",
|
||
" <td>0.743852</td>\n",
|
||
" <td>0.776838</td>\n",
|
||
" <td>0.046705</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.049131</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.027310</td>\n",
|
||
" <td>zhihu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1597</th>\n",
|
||
" <td>0.911794</td>\n",
|
||
" <td>0.816672</td>\n",
|
||
" <td>0.847797</td>\n",
|
||
" <td>0.946110</td>\n",
|
||
" <td>0.986384</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.057710</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.029776</td>\n",
|
||
" <td>zhihu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1598</th>\n",
|
||
" <td>0.965672</td>\n",
|
||
" <td>0.957016</td>\n",
|
||
" <td>0.934561</td>\n",
|
||
" <td>0.991138</td>\n",
|
||
" <td>0.995043</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.097930</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.045403</td>\n",
|
||
" <td>zhihu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1599</th>\n",
|
||
" <td>0.961447</td>\n",
|
||
" <td>0.945493</td>\n",
|
||
" <td>0.927631</td>\n",
|
||
" <td>0.987624</td>\n",
|
||
" <td>0.994379</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.084861</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.066429</td>\n",
|
||
" <td>zhihu</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1600</th>\n",
|
||
" <td>0.969485</td>\n",
|
||
" <td>0.967490</td>\n",
|
||
" <td>0.940832</td>\n",
|
||
" <td>0.994306</td>\n",
|
||
" <td>0.995641</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.117410</td>\n",
|
||
" <td>zhihu</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"<p>4670 rows × 16 columns</p>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" 0 1 2 3 4 0.1 1.1 2.1 3.1 4.1 0.2 1.2 2.2 3.2 4.2 label\n",
|
||
"0 0.715031 0.608764 0.631124 0.650236 0.512070 0.277071 0.0 0.0 0.000000 0.000000 0.125949 0.0 0.003074 0.0 0.000000 hupu\n",
|
||
"1 0.662252 0.541335 0.570617 0.584465 0.433609 0.451821 0.0 0.0 0.000000 0.000000 0.106180 0.0 0.000000 0.0 0.000000 hupu\n",
|
||
"2 0.894304 0.861196 0.824562 0.870190 0.850370 0.414012 0.0 0.0 0.000000 0.000000 0.047087 0.0 0.000000 0.0 0.033857 hupu\n",
|
||
"3 0.743064 0.612346 0.575538 0.649530 0.692186 0.158237 0.0 0.0 0.000000 0.000000 0.032681 0.0 0.000000 0.0 0.031898 hupu\n",
|
||
"4 0.667459 0.508679 0.472092 0.547407 0.598427 0.375792 0.0 0.0 0.184405 0.000000 0.112612 0.0 0.000000 0.0 0.027564 hupu\n",
|
||
"... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...\n",
|
||
"1596 0.809034 0.709333 0.673414 0.743852 0.776838 0.046705 0.0 0.0 0.000000 0.049131 0.000000 0.0 0.000000 0.0 0.027310 zhihu\n",
|
||
"1597 0.911794 0.816672 0.847797 0.946110 0.986384 0.000000 0.0 0.0 0.000000 0.057710 0.000000 0.0 0.000000 0.0 0.029776 zhihu\n",
|
||
"1598 0.965672 0.957016 0.934561 0.991138 0.995043 0.000000 0.0 0.0 0.000000 0.097930 0.000000 0.0 0.000000 0.0 0.045403 zhihu\n",
|
||
"1599 0.961447 0.945493 0.927631 0.987624 0.994379 0.000000 0.0 0.0 0.000000 0.084861 0.000000 0.0 0.000000 0.0 0.066429 zhihu\n",
|
||
"1600 0.969485 0.967490 0.940832 0.994306 0.995641 0.000000 0.0 0.0 0.000000 0.000000 0.000000 0.0 0.000000 0.0 0.117410 zhihu\n",
|
||
"\n",
|
||
"[4670 rows x 16 columns]"
|
||
]
|
||
},
|
||
"execution_count": 2,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"import numpy as np\n",
|
||
"train_path = '../datasets/2019-12-21/train.csv'\n",
|
||
"test_path = '../datasets/2019-12-21/test.csv'\n",
|
||
"train_df = pd.read_csv(train_path,index_col=0)\n",
|
||
"test_df = pd.read_csv(test_path,index_col=0)\n",
|
||
"test_df"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 3,
|
||
"metadata": {
|
||
"collapsed": true
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"from sklearn.linear_model import LogisticRegression\n",
|
||
"from sklearn.svm import SVC\n",
|
||
"from sklearn.naive_bayes import GaussianNB\n",
|
||
"from sklearn import tree\n",
|
||
"from sklearn.ensemble import RandomForestClassifier\n",
|
||
"from sklearn.metrics import f1_score,recall_score,precision_score"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 14,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:430: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n",
|
||
" warnings.warn(\"Default solver will be changed to 'lbfgs' in 0.22. \"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:467: FutureWarning: Default multi_class will be changed to 'auto' in 0.22. Specify the multi_class option to silence this warning.\n",
|
||
" warnings.warn(\"Default multi_class will be changed to 'auto' in\"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\svm\\base.py:189: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n",
|
||
" warnings.warn(\"The default value of gamma will change \"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\ensemble\\forest.py:244: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n",
|
||
" warn(\"The default value of n_estimators will change from \"\n"
|
||
]
|
||
},
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"precision 0.801927\n",
|
||
"recall 0.801927\n",
|
||
"f1 0.801927\n",
|
||
"Name: RandomForest, dtype: float64\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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6dKlHHnkkasF+mOPPcZRRx3FJptsAsCgQYN49NFHOeKII+jZs+fH7ffee29mz57dCj+95ZED3QqrfPhf/fYmG28EwIoVK9his05M/XMS9NPX4MGi/v3788gjj3Dvvffyta99jXPOOYehQ4d+fDyiwUc5ANhwww0/fl1TU+MuF6uYu1yssN58vY4nJj8LwC1/vJ/P9V31KnqzTpvSs9s23Hb3n4EkhF98/kUA9jlgH34/5vdAcvN04fsLV/mzc+bMYauttuKUU07hG9/4Bk8//fQqx/v3789dd93FBx98wKJFi7jzzjs54IADWuXntOLwFbplbvbF/69Fzzetwkf/t+u1Izfcdg/fHHkhvXp259QTvsqvxoxbpc3NV17Iqef/Dz+74loWLl/OYUcdxk677cTIC0fyk+/+hDvG3kG7du344aU/pHfJL4SJEydy6aWX0r59ezbddFNuvPHGVc6711578fWvf51+/foBcPLJJ7Pnnnu6e8XWiQPdCksSoy75/ir7Zj+16pj4nt27cN/NVwGrdrl03qozv7rpV6udc9KcSQCccMIJnHDCCasdLw3ss846i7POOmuV4z169OD555//ePvss8+u8Kcxc5eLmVluONCtkLp0684dDz6RdRlmLcqBbmaWEw50M7OccKCbmeWEA93MLCc8bNGy9+PNW/Z8J89p2fNV6PXXXmfEcSO469G7mDhxIj//+c+55557MqnFislX6FZ4EcGKFSuyLsNsnfkK3Qrp9bmvMWLof3Hof+zBE1OmcebJxzLqpj/w0ZKlbL9tV8b88sdsusnGTJo6nW//6FIWfbCYFR035Ld3/JZ33n6H8087n8UfJHOsfO/i77Fnvz0z/onMHOhWYLNfeZmhl32Pn54znEEnn81ffj+KTTbeiEuuup7LRv+OkSNO5JhTR/L7X19M39678tRHS9iw44Z8svMnueYP17Bhxw2Z88oczvnmOdz6l1uz/nHMKgt0SYcCV5AsQXdtRFxcdnwnYAywF/D9iPh5Sxdq1tK27tqNfffenXv+/Agz/vEq+w88EYAlS5ey396789Irs9l6q8707b0rAJt22hSAxR8s5sKRF/LS8y/Rrl075szKps/erFyzgS6pBrgKOBioAyZJGh8RM0qavQ2cARzZKlWatYKNNtoYSPrQD+6/D7dcfdEqx6fN+MdqU+wC3DjqRras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\n",
|
||
"text/plain": [
|
||
"<Figure size 432x288 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {
|
||
"needs_background": "light"
|
||
},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"#type markov\n",
|
||
"x_train = train_df.iloc[:,0:5].values.copy()\n",
|
||
"y_train = train_df['label'].values.copy()\n",
|
||
"x_test = test_df.iloc[:,0:5].values.copy()\n",
|
||
"y_test = test_df['label'].values.copy()\n",
|
||
"lr_classifer = LogisticRegression()\n",
|
||
"lr_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = lr_classifer.predict(x_test)\n",
|
||
"lr_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"lr_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"lr_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"svm_classifer = SVC()\n",
|
||
"svm_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = svm_classifer.predict(x_test)\n",
|
||
"svm_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"svm_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"svm_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"gn_classifer = GaussianNB()\n",
|
||
"gn_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = gn_classifer.predict(x_test)\n",
|
||
"gn_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"gn_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"gn_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"tr_classifer = tree.DecisionTreeClassifier()\n",
|
||
"tr_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = tr_classifer.predict(x_test)\n",
|
||
"tr_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"tr_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"tr_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"rf_classifer = RandomForestClassifier()\n",
|
||
"rf_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = rf_classifer.predict(x_test)\n",
|
||
"rf_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"rf_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"rf_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"score_df = pd.DataFrame(np.zeros((5,3)),index = ['LogisticRegression', 'SVM', 'GaussianNB', 'tree', 'RandomForest'], \\\n",
|
||
" columns = ['precision', 'recall', 'f1'])\n",
|
||
"score_df.loc['LogisticRegression'] = [lr_precision, lr_recall, lr_f1]\n",
|
||
"score_df.loc['SVM'] = [svm_precision, svm_recall, svm_f1]\n",
|
||
"score_df.loc['GaussianNB'] = [gn_precision, gn_recall, gn_f1]\n",
|
||
"score_df.loc['tree'] = [tr_precision, tr_recall, tr_f1]\n",
|
||
"score_df.loc['RandomForest'] = [rf_precision, rf_recall, rf_f1]\n",
|
||
"ax = score_df.plot.bar(title='type markov')\n",
|
||
"fig = ax.get_figure()\n",
|
||
"fig.savefig('../figure/type.svg')\n",
|
||
"print(score_df.loc['RandomForest'])"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 15,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:430: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n",
|
||
" warnings.warn(\"Default solver will be changed to 'lbfgs' in 0.22. \"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:467: FutureWarning: Default multi_class will be changed to 'auto' in 0.22. Specify the multi_class option to silence this warning.\n",
|
||
" warnings.warn(\"Default multi_class will be changed to 'auto' in\"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\svm\\base.py:189: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n",
|
||
" warnings.warn(\"The default value of gamma will change \"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\ensemble\\forest.py:244: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n",
|
||
" warn(\"The default value of n_estimators will change from \"\n"
|
||
]
|
||
},
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"precision 0.993148\n",
|
||
"recall 0.993148\n",
|
||
"f1 0.993148\n",
|
||
"Name: RandomForest, dtype: float64\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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\n",
|
||
"text/plain": [
|
||
"<Figure size 432x288 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {
|
||
"needs_background": "light"
|
||
},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"#type+length markov\n",
|
||
"x_train = train_df.iloc[:,0:10].values.copy()\n",
|
||
"y_train = train_df['label'].values.copy()\n",
|
||
"x_test = test_df.iloc[:,0:10].values.copy()\n",
|
||
"y_test = test_df['label'].values.copy()\n",
|
||
"lr_classifer = LogisticRegression()\n",
|
||
"lr_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = lr_classifer.predict(x_test)\n",
|
||
"lr_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"lr_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"lr_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"svm_classifer = SVC()\n",
|
||
"svm_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = svm_classifer.predict(x_test)\n",
|
||
"svm_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"svm_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"svm_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"gn_classifer = GaussianNB()\n",
|
||
"gn_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = gn_classifer.predict(x_test)\n",
|
||
"gn_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"gn_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"gn_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"tr_classifer = tree.DecisionTreeClassifier()\n",
|
||
"tr_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = tr_classifer.predict(x_test)\n",
|
||
"tr_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"tr_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"tr_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"rf_classifer = RandomForestClassifier()\n",
|
||
"rf_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = rf_classifer.predict(x_test)\n",
|
||
"rf_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"rf_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"rf_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"score_df = pd.DataFrame(np.zeros((5,3)),index = ['LogisticRegression', 'SVM', 'GaussianNB', 'tree', 'RandomForest'], \\\n",
|
||
" columns = ['precision', 'recall', 'f1'])\n",
|
||
"score_df.loc['LogisticRegression'] = [lr_precision, lr_recall, lr_f1]\n",
|
||
"score_df.loc['SVM'] = [svm_precision, svm_recall, svm_f1]\n",
|
||
"score_df.loc['GaussianNB'] = [gn_precision, gn_recall, gn_f1]\n",
|
||
"score_df.loc['tree'] = [tr_precision, tr_recall, tr_f1]\n",
|
||
"score_df.loc['RandomForest'] = [rf_precision, rf_recall, rf_f1]\n",
|
||
"ax = score_df.plot.bar(title='type+length markov')\n",
|
||
"fig = ax.get_figure()\n",
|
||
"fig.savefig('../figure/type_length.svg')\n",
|
||
"print(score_df.loc['RandomForest'])"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 17,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:430: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n",
|
||
" warnings.warn(\"Default solver will be changed to 'lbfgs' in 0.22. \"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:467: FutureWarning: Default multi_class will be changed to 'auto' in 0.22. Specify the multi_class option to silence this warning.\n",
|
||
" warnings.warn(\"Default multi_class will be changed to 'auto' in\"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\svm\\base.py:189: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n",
|
||
" warnings.warn(\"The default value of gamma will change \"\n",
|
||
"c:\\python38\\lib\\site-packages\\sklearn\\ensemble\\forest.py:244: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n",
|
||
" warn(\"The default value of n_estimators will change from \"\n"
|
||
]
|
||
},
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"precision 0.99743\n",
|
||
"recall 0.99743\n",
|
||
"f1 0.99743\n",
|
||
"Name: RandomForest, dtype: float64\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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\n",
|
||
"text/plain": [
|
||
"<Figure size 432x288 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {
|
||
"needs_background": "light"
|
||
},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"#type+length+burst markov\n",
|
||
"x_train = train_df.iloc[:,0:15].values.copy()\n",
|
||
"y_train = train_df['label'].values.copy()\n",
|
||
"x_test = test_df.iloc[:,0:15].values.copy()\n",
|
||
"y_test = test_df['label'].values.copy()\n",
|
||
"lr_classifer = LogisticRegression()\n",
|
||
"lr_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = lr_classifer.predict(x_test)\n",
|
||
"lr_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"lr_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"lr_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"svm_classifer = SVC()\n",
|
||
"svm_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = svm_classifer.predict(x_test)\n",
|
||
"svm_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"svm_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"svm_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"gn_classifer = GaussianNB()\n",
|
||
"gn_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = gn_classifer.predict(x_test)\n",
|
||
"gn_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"gn_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"gn_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"tr_classifer = tree.DecisionTreeClassifier()\n",
|
||
"tr_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = tr_classifer.predict(x_test)\n",
|
||
"tr_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"tr_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"tr_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"rf_classifer = RandomForestClassifier()\n",
|
||
"rf_classifer.fit(x_train, y_train)\n",
|
||
"y_pred = rf_classifer.predict(x_test)\n",
|
||
"rf_precision = precision_score(y_test, y_pred, average='micro')\n",
|
||
"rf_recall = recall_score(y_test, y_pred, average='micro')\n",
|
||
"rf_f1 = f1_score(y_test, y_pred, average='micro')\n",
|
||
"\n",
|
||
"score_df = pd.DataFrame(np.zeros((5,3)),index = ['LogisticRegression', 'SVM', 'GaussianNB', 'tree', 'RandomForest'], \\\n",
|
||
" columns = ['precision', 'recall', 'f1'])\n",
|
||
"score_df.loc['LogisticRegression'] = [lr_precision, lr_recall, lr_f1]\n",
|
||
"score_df.loc['SVM'] = [svm_precision, svm_recall, svm_f1]\n",
|
||
"score_df.loc['GaussianNB'] = [gn_precision, gn_recall, gn_f1]\n",
|
||
"score_df.loc['tree'] = [tr_precision, tr_recall, tr_f1]\n",
|
||
"score_df.loc['RandomForest'] = [rf_precision, rf_recall, rf_f1]\n",
|
||
"ax = score_df.plot.bar(title='type+length+burst markov')\n",
|
||
"fig = ax.get_figure()\n",
|
||
"fig.savefig('../figure/type_length_burst.svg')\n",
|
||
"print(score_df.loc['RandomForest'])"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {
|
||
"collapsed": true
|
||
},
|
||
"outputs": [],
|
||
"source": []
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3",
|
||
"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.6.2"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 2
|
||
}
|