Files
coco 85d885e008 a
2026-07-03 16:29:47 +08:00

2483 lines
120 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
" *早早孕试纸机器学习算法验证*"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**import moudle**"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd \n",
"import seaborn as sns\n",
"from IPython.display import display\n",
"import matplotlib.pyplot as plt\n",
"from mpl_toolkits.mplot3d import Axes3D\n",
"import sklearn\n",
"%matplotlib inline\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**load data**"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"load data successful !!!!!\n"
]
}
],
"source": [
"try :\n",
"# data_iphone6p_75_10 = pd.read_csv(\"20170912.pm.csv\")\n",
"# data_iphone6p_1234 = pd.read_csv(\"20170920.pm.csv\")\n",
"# data_iphone6p_5 = pd.read_csv(\"20170922.pm.csv\")\n",
"# data_iphone6p_0 = pd.read_csv(\"20170925.am.csv\")\n",
"# data_iphone6p_0_0 = pd.read_csv(\"20170925.pm.csv\")\n",
"# data_iphone6p_246 = pd.read_csv(\"20171011.pm.csv\")\n",
" data_all = pd.read_excel(\"ov_data_all.xlsx\")\n",
" #data1 = pd.read_csv(\"ovdata.csv\")\n",
" #data2 = pd.read_csv(\"ovdataMore.csv\")\n",
" #data1_0 = pd.read_csv(\"ovdata.csv\")\n",
" #data2_0 = pd.read_csv(\"ovdataMore.csv\") \n",
"# data_test1 = pd.read_csv(\"./newData/test.csv\")\n",
"# data_test2 = pd.read_csv(\"./newData/nubia_test.csv\")\n",
" \n",
" print (\"load data successful !!!!!\")\n",
"except :\n",
" print (\"load data error !!!!!!!!!!\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**分析数据**"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Unnamed: 0 left_block_R left_block_G left_block_B left_block_H \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 12630.082120 175.655973 147.635978 152.375456 149.687571 \n",
"std 7991.088747 20.336975 35.535239 28.676148 91.663798 \n",
"min 0.000000 71.000000 41.000000 40.000000 0.000000 \n",
"25% 5957.250000 159.000000 115.000000 127.000000 31.000000 \n",
"50% 11915.000000 171.000000 142.000000 150.000000 192.000000 \n",
"75% 17872.750000 194.000000 185.000000 182.000000 232.000000 \n",
"max 29668.000000 255.000000 255.000000 255.000000 250.000000 \n",
"\n",
" left_block_S left_block_V left_block_l left_block_a left_block_b \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 47.880366 175.855273 162.448177 139.151588 129.182871 \n",
"std 27.322459 20.509936 29.863885 7.928096 2.532656 \n",
"min 0.000000 71.000000 54.000000 120.000000 121.000000 \n",
"25% 24.000000 159.000000 135.000000 131.000000 128.000000 \n",
"50% 45.000000 171.000000 158.000000 140.000000 129.000000 \n",
"75% 72.000000 195.000000 194.000000 146.000000 131.000000 \n",
"max 148.000000 255.000000 255.000000 154.000000 144.000000 \n",
"\n",
" ... right_grayHist right_grayMax right_grayMin white_grayValue \\\n",
"count ... 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean ... 150.883534 195.114095 113.259494 198.754417 \n",
"std ... 22.038977 9.486027 13.231952 7.427376 \n",
"min ... 43.000000 90.000000 23.000000 101.000000 \n",
"25% ... 136.000000 190.000000 107.000000 196.000000 \n",
"50% ... 150.000000 196.000000 112.000000 199.000000 \n",
"75% ... 170.000000 201.000000 119.000000 203.000000 \n",
"max ... 253.000000 255.000000 241.000000 255.000000 \n",
"\n",
" white_grayStddevValue white_grayHist white_grayMax white_grayMin \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 0.440896 199.092338 201.126600 197.426608 \n",
"std 0.692059 8.054699 7.390833 7.635475 \n",
"min 0.000000 0.000000 102.000000 100.000000 \n",
"25% 0.000000 196.000000 198.000000 194.000000 \n",
"50% 0.000000 200.000000 202.000000 198.000000 \n",
"75% 1.000000 203.000000 205.000000 201.000000 \n",
"max 17.000000 254.000000 255.000000 255.000000 \n",
"\n",
" whiteBalance index \n",
"count 47662.000000 47662.000000 \n",
"mean 0.500021 4.415593 \n",
"std 0.500005 2.594731 \n",
"min 0.000000 0.000000 \n",
"25% 0.000000 2.000000 \n",
"50% 1.000000 6.000000 \n",
"75% 1.000000 7.000000 \n",
"max 1.000000 7.000000 \n",
"\n",
"[8 rows x 153 columns]\n"
]
}
],
"source": [
"# data4 = data_iphone6p_246[data_iphone6p_246[\"whiteBalance\"] == 0]\n",
"# data2= data_iphone6p_1234[data_iphone6p_1234[\"whiteBalance\"] == 0 ]\n",
"# data1 = data_iphone6p_75_10[data_iphone6p_75_10[\"whiteBalance\"] == 0 ]\n",
"# data3 = data_iphone6p_5[data_iphone6p_5[\"whiteBalance\"] == 0]\n",
"# data0 = data_iphone6p_0[data_iphone6p_0[\"whiteBalance\"] == 0]\n",
"# data0_0 = data_iphone6p_0_0[data_iphone6p_0_0[\"whiteBalance\"] == 0]\n",
"\n",
"\n",
"#data_all = data2.append(data1[data1[\"index\"] == 5 ]).append(data3).append(data1[data1[\"index\"] == 7 ]).append(data1[data1[\"index\"] == 8 ]).append(data0).append(data0_0).append(data4)\n",
"\n",
"#data1_0 = data1[data1[\"whiteBalance\"] == 0]\n",
"#data2_0 = data2[data2[\"whiteBalance\"] == 0]\n",
"#data_test_0 = data_test\n",
"\n",
"#data_all =data1_0.append(data2_0);\n",
"#data_all =data1.append(data2);\n",
"#data_all = data2\n",
"whiteBlock_R_one = data_all[data_all[\"index\"] == 0 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_one = data_all[data_all[\"index\"] == 0 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_one = data_all[data_all[\"index\"] == 0 ][\"left_block_B_stddev\"]\n",
"\n",
"whiteBlock_R_two = data_all[data_all[\"index\"] == 1 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_two = data_all[data_all[\"index\"] == 1 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_two = data_all[data_all[\"index\"] == 1 ][\"left_block_B_stddev\"]\n",
"\n",
"whiteBlock_R_three = data_all[data_all[\"index\"] == 2 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_three = data_all[data_all[\"index\"] == 2 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_three = data_all[data_all[\"index\"] == 2 ][\"left_block_B_stddev\"]\n",
"\n",
"whiteBlock_R_four = data_all[data_all[\"index\"] == 3 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_four = data_all[data_all[\"index\"] == 3 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_four = data_all[data_all[\"index\"] == 3 ][\"left_block_B_stddev\"]\n",
"\n",
"\n",
"whiteBlock_R_five = data_all[data_all[\"index\"] == 4 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_five = data_all[data_all[\"index\"] == 4 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_five = data_all[data_all[\"index\"] == 4 ][\"left_block_B_stddev\"]\n",
"\n",
"whiteBlock_R_six = data_all[data_all[\"index\"] == 5 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_six = data_all[data_all[\"index\"] == 5 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_six = data_all[data_all[\"index\"] == 5 ][\"left_block_B_stddev\"]\n",
"\n",
"whiteBlock_R_seven = data_all[data_all[\"index\"] == 6 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_seven = data_all[data_all[\"index\"] == 6 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_seven = data_all[data_all[\"index\"] == 6 ][\"left_block_B_stddev\"]\n",
"\n",
"whiteBlock_R_eghit = data_all[data_all[\"index\"] == 7 ][\"left_block_R_stddev\"]\n",
"whiteBlock_G_eghit = data_all[data_all[\"index\"] == 7 ][\"left_block_G_stddev\"]\n",
"whiteBlock_B_eghit = data_all[data_all[\"index\"] == 7 ][\"left_block_B_stddev\"]\n",
"\n",
"print(data_all.describe())\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Index(['Unnamed: 0', 'dateTime', 'left_block_R', 'left_block_G',\n",
" 'left_block_B', 'left_block_H', 'left_block_S', 'left_block_V',\n",
" 'left_block_l', 'left_block_a',\n",
" ...\n",
" 'right_grayHist', 'right_grayMax', 'right_grayMin', 'white_grayValue',\n",
" 'white_grayStddevValue', 'white_grayHist', 'white_grayMax',\n",
" 'white_grayMin', 'whiteBalance', 'index'],\n",
" dtype='object', length=154)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data_all.columns\n",
"#data1_0 = data1[data1[\"whiteBalance\"] == 0]\n",
"\n",
"#data_all[\"index\"][data_all[\"index\"]==4]=7\n",
"#data_all[\"index\"][data_all[\"index\"]==3]=6\n",
"#data_all[\"index\"][data_all[\"index\"]==2]=4\n",
"#data_all[\"index\"][data_all[\"index\"]==1]=2\n",
"#data_all.to_excel(\"ov_data_all.xlsx\")\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"hsv max min hist value h值要去掉"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"scrolled": true
},
"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>Unnamed: 0</th>\n",
" <th>left_block_R</th>\n",
" <th>left_block_G</th>\n",
" <th>left_block_B</th>\n",
" <th>left_block_H</th>\n",
" <th>left_block_S</th>\n",
" <th>left_block_V</th>\n",
" <th>left_block_l</th>\n",
" <th>left_block_a</th>\n",
" <th>left_block_b</th>\n",
" <th>...</th>\n",
" <th>right_grayValue</th>\n",
" <th>right_grayStddevValue</th>\n",
" <th>right_grayHist</th>\n",
" <th>right_grayMax</th>\n",
" <th>right_grayMin</th>\n",
" <th>white_grayValue</th>\n",
" <th>white_grayStddevValue</th>\n",
" <th>white_grayHist</th>\n",
" <th>white_grayMax</th>\n",
" <th>white_grayMin</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>...</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>12630.082120</td>\n",
" <td>175.655973</td>\n",
" <td>147.635978</td>\n",
" <td>152.375456</td>\n",
" <td>149.687571</td>\n",
" <td>47.880366</td>\n",
" <td>175.855273</td>\n",
" <td>162.448177</td>\n",
" <td>139.151588</td>\n",
" <td>129.182871</td>\n",
" <td>...</td>\n",
" <td>151.641224</td>\n",
" <td>21.378016</td>\n",
" <td>150.883534</td>\n",
" <td>195.114095</td>\n",
" <td>113.259494</td>\n",
" <td>198.754417</td>\n",
" <td>0.440896</td>\n",
" <td>199.092338</td>\n",
" <td>201.126600</td>\n",
" <td>197.426608</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>7991.088747</td>\n",
" <td>20.336975</td>\n",
" <td>35.535239</td>\n",
" <td>28.676148</td>\n",
" <td>91.663798</td>\n",
" <td>27.322459</td>\n",
" <td>20.509936</td>\n",
" <td>29.863885</td>\n",
" <td>7.928096</td>\n",
" <td>2.532656</td>\n",
" <td>...</td>\n",
" <td>8.466011</td>\n",
" <td>3.298207</td>\n",
" <td>22.038977</td>\n",
" <td>9.486027</td>\n",
" <td>13.231952</td>\n",
" <td>7.427376</td>\n",
" <td>0.692059</td>\n",
" <td>8.054699</td>\n",
" <td>7.390833</td>\n",
" <td>7.635475</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>0.000000</td>\n",
" <td>71.000000</td>\n",
" <td>41.000000</td>\n",
" <td>40.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>71.000000</td>\n",
" <td>54.000000</td>\n",
" <td>120.000000</td>\n",
" <td>121.000000</td>\n",
" <td>...</td>\n",
" <td>58.000000</td>\n",
" <td>3.000000</td>\n",
" <td>43.000000</td>\n",
" <td>90.000000</td>\n",
" <td>23.000000</td>\n",
" <td>101.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>102.000000</td>\n",
" <td>100.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>5957.250000</td>\n",
" <td>159.000000</td>\n",
" <td>115.000000</td>\n",
" <td>127.000000</td>\n",
" <td>31.000000</td>\n",
" <td>24.000000</td>\n",
" <td>159.000000</td>\n",
" <td>135.000000</td>\n",
" <td>131.000000</td>\n",
" <td>128.000000</td>\n",
" <td>...</td>\n",
" <td>147.000000</td>\n",
" <td>19.000000</td>\n",
" <td>136.000000</td>\n",
" <td>190.000000</td>\n",
" <td>107.000000</td>\n",
" <td>196.000000</td>\n",
" <td>0.000000</td>\n",
" <td>196.000000</td>\n",
" <td>198.000000</td>\n",
" <td>194.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>11915.000000</td>\n",
" <td>171.000000</td>\n",
" <td>142.000000</td>\n",
" <td>150.000000</td>\n",
" <td>192.000000</td>\n",
" <td>45.000000</td>\n",
" <td>171.000000</td>\n",
" <td>158.000000</td>\n",
" <td>140.000000</td>\n",
" <td>129.000000</td>\n",
" <td>...</td>\n",
" <td>152.000000</td>\n",
" <td>22.000000</td>\n",
" <td>150.000000</td>\n",
" <td>196.000000</td>\n",
" <td>112.000000</td>\n",
" <td>199.000000</td>\n",
" <td>0.000000</td>\n",
" <td>200.000000</td>\n",
" <td>202.000000</td>\n",
" <td>198.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>17872.750000</td>\n",
" <td>194.000000</td>\n",
" <td>185.000000</td>\n",
" <td>182.000000</td>\n",
" <td>232.000000</td>\n",
" <td>72.000000</td>\n",
" <td>195.000000</td>\n",
" <td>194.000000</td>\n",
" <td>146.000000</td>\n",
" <td>131.000000</td>\n",
" <td>...</td>\n",
" <td>157.000000</td>\n",
" <td>24.000000</td>\n",
" <td>170.000000</td>\n",
" <td>201.000000</td>\n",
" <td>119.000000</td>\n",
" <td>203.000000</td>\n",
" <td>1.000000</td>\n",
" <td>203.000000</td>\n",
" <td>205.000000</td>\n",
" <td>201.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>29668.000000</td>\n",
" <td>255.000000</td>\n",
" <td>255.000000</td>\n",
" <td>255.000000</td>\n",
" <td>250.000000</td>\n",
" <td>148.000000</td>\n",
" <td>255.000000</td>\n",
" <td>255.000000</td>\n",
" <td>154.000000</td>\n",
" <td>144.000000</td>\n",
" <td>...</td>\n",
" <td>248.000000</td>\n",
" <td>31.000000</td>\n",
" <td>253.000000</td>\n",
" <td>255.000000</td>\n",
" <td>241.000000</td>\n",
" <td>255.000000</td>\n",
" <td>17.000000</td>\n",
" <td>254.000000</td>\n",
" <td>255.000000</td>\n",
" <td>255.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>8 rows × 151 columns</p>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 left_block_R left_block_G left_block_B left_block_H \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 12630.082120 175.655973 147.635978 152.375456 149.687571 \n",
"std 7991.088747 20.336975 35.535239 28.676148 91.663798 \n",
"min 0.000000 71.000000 41.000000 40.000000 0.000000 \n",
"25% 5957.250000 159.000000 115.000000 127.000000 31.000000 \n",
"50% 11915.000000 171.000000 142.000000 150.000000 192.000000 \n",
"75% 17872.750000 194.000000 185.000000 182.000000 232.000000 \n",
"max 29668.000000 255.000000 255.000000 255.000000 250.000000 \n",
"\n",
" left_block_S left_block_V left_block_l left_block_a left_block_b \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 47.880366 175.855273 162.448177 139.151588 129.182871 \n",
"std 27.322459 20.509936 29.863885 7.928096 2.532656 \n",
"min 0.000000 71.000000 54.000000 120.000000 121.000000 \n",
"25% 24.000000 159.000000 135.000000 131.000000 128.000000 \n",
"50% 45.000000 171.000000 158.000000 140.000000 129.000000 \n",
"75% 72.000000 195.000000 194.000000 146.000000 131.000000 \n",
"max 148.000000 255.000000 255.000000 154.000000 144.000000 \n",
"\n",
" ... right_grayValue right_grayStddevValue right_grayHist \\\n",
"count ... 47662.000000 47662.000000 47662.000000 \n",
"mean ... 151.641224 21.378016 150.883534 \n",
"std ... 8.466011 3.298207 22.038977 \n",
"min ... 58.000000 3.000000 43.000000 \n",
"25% ... 147.000000 19.000000 136.000000 \n",
"50% ... 152.000000 22.000000 150.000000 \n",
"75% ... 157.000000 24.000000 170.000000 \n",
"max ... 248.000000 31.000000 253.000000 \n",
"\n",
" right_grayMax right_grayMin white_grayValue white_grayStddevValue \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 195.114095 113.259494 198.754417 0.440896 \n",
"std 9.486027 13.231952 7.427376 0.692059 \n",
"min 90.000000 23.000000 101.000000 0.000000 \n",
"25% 190.000000 107.000000 196.000000 0.000000 \n",
"50% 196.000000 112.000000 199.000000 0.000000 \n",
"75% 201.000000 119.000000 203.000000 1.000000 \n",
"max 255.000000 241.000000 255.000000 17.000000 \n",
"\n",
" white_grayHist white_grayMax white_grayMin \n",
"count 47662.000000 47662.000000 47662.000000 \n",
"mean 199.092338 201.126600 197.426608 \n",
"std 8.054699 7.390833 7.635475 \n",
"min 0.000000 102.000000 100.000000 \n",
"25% 196.000000 198.000000 194.000000 \n",
"50% 200.000000 202.000000 198.000000 \n",
"75% 203.000000 205.000000 201.000000 \n",
"max 254.000000 255.000000 255.000000 \n",
"\n",
"[8 rows x 151 columns]"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\n",
"\n",
"train_labels = data_all[\"index\"]\n",
"train_features = data_all.drop(\"dateTime\",axis=1)\n",
"train_features = train_features.drop(\"index\",axis=1)\n",
"train_features = train_features.drop(\"whiteBalance\",axis=1)\n",
"\n",
"\n",
"\n",
"train_features.describe()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"train_features = train_features.drop(\"left_block_H\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V\",axis=1)\n",
"\n",
"\n",
"train_features = train_features.drop(\"left_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_hist\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_hist\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_hist\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_hist\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_min\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_min\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_min\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_min\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_min\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_min\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_min\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_min\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_min\",axis=1)\n",
"\n",
"\n",
"\n",
"train_features['lelf_right_R'] = train_features['left_block_R'] - train_features['right_block_R']\n",
"train_features['lelf_right_G'] = train_features['left_block_G'] - train_features['right_block_G']\n",
"train_features['lelf_right_B'] = train_features['left_block_B'] - train_features['right_block_B']\n",
"\n",
"# train_features['lelf_right_H'] = train_features['left_block_H'] - train_features['right_block_H']\n",
"# train_features['lelf_right_S'] = train_features['left_block_S'] - train_features['right_block_S']\n",
"# train_features['lelf_right_V'] = train_features['left_block_V'] - train_features['right_block_V']\n",
"\n",
"train_features['lelf_right_l'] = train_features['left_block_l'] - train_features['right_block_l']\n",
"train_features['lelf_right_a'] = train_features['left_block_a'] - train_features['right_block_a']\n",
"train_features['lelf_right_b'] = train_features['left_block_b'] - train_features['right_block_b']\n",
"\n",
"train_features['lelf_right_R_stddev'] = train_features['left_block_R_stddev'] - train_features['right_block_R_stddev']\n",
"train_features['lelf_right_G_stddev'] = train_features['left_block_G_stddev'] - train_features['right_block_G_stddev']\n",
"train_features['lelf_right_B_stddev'] = train_features['left_block_B_stddev'] - train_features['right_block_B_stddev']\n",
"\n",
"# train_features['lelf_right_H_stddev'] = train_features['left_block_H_stddev'] - train_features['right_block_H_stddev']\n",
"# train_features['lelf_right_S_stddev'] = train_features['left_block_S_stddev'] - train_features['right_block_S_stddev']\n",
"# train_features['lelf_right_V_stddev'] = train_features['left_block_V_stddev'] - train_features['right_block_V_stddev']\n",
"\n",
"train_features['lelf_right_l_stddev'] = train_features['left_block_l_stddev'] - train_features['right_block_l_stddev']\n",
"train_features['lelf_right_a_stddev'] = train_features['left_block_a_stddev'] - train_features['right_block_a_stddev']\n",
"train_features['lelf_right_b_stddev'] = train_features['left_block_b_stddev'] - train_features['right_block_b_stddev']\n",
"\n",
"train_features['lelf_right_R_hist'] = train_features['left_block_R_hist'] - train_features['right_block_R_hist']\n",
"train_features['lelf_right_G_hist'] = train_features['left_block_G_hist'] - train_features['right_block_G_hist']\n",
"train_features['lelf_right_B_hist'] = train_features['left_block_B_hist'] - train_features['right_block_B_hist']\n",
"\n",
"# train_features['lelf_right_H_hist'] = train_features['left_block_H_hist'] - train_features['right_block_H_hist']\n",
"# train_features['lelf_right_S_hist'] = train_features['left_block_S_hist'] - train_features['right_block_S_hist']\n",
"# train_features['lelf_right_V_hist'] = train_features['left_block_V_hist'] - train_features['right_block_V_hist']\n",
"\n",
"train_features['lelf_right_l_hist'] = train_features['left_block_l_hist'] - train_features['right_block_l_hist']\n",
"train_features['lelf_right_a_hist'] = train_features['left_block_a_hist'] - train_features['right_block_a_hist']\n",
"train_features['lelf_right_b_hist'] = train_features['left_block_b_hist'] - train_features['right_block_b_hist']\n",
"\n",
"train_features['lelf_right_R_max'] = train_features['left_block_R_max'] - train_features['right_block_R_max']\n",
"train_features['lelf_right_G_max'] = train_features['left_block_G_max'] - train_features['right_block_G_max']\n",
"train_features['lelf_right_B_max'] = train_features['left_block_B_max'] - train_features['right_block_B_max']\n",
"\n",
"# train_features['lelf_right_H_max'] = train_features['left_block_H_max'] - train_features['right_block_H_max']\n",
"# train_features['lelf_right_S_max'] = train_features['left_block_S_max'] - train_features['right_block_S_max']\n",
"# train_features['lelf_right_V_max'] = train_features['left_block_V_max'] - train_features['right_block_V_max']\n",
"\n",
"train_features['lelf_right_l_max'] = train_features['left_block_l_max'] - train_features['right_block_l_max']\n",
"train_features['lelf_right_a_max'] = train_features['left_block_a_max'] - train_features['right_block_a_max']\n",
"train_features['lelf_right_b_max'] = train_features['left_block_b_max'] - train_features['right_block_b_max']\n",
"\n",
"\n",
"\n",
"train_features['lelf_right_R_min'] = train_features['left_block_R_min'] - train_features['right_block_R_min']\n",
"train_features['lelf_right_G_min'] = train_features['left_block_G_min'] - train_features['right_block_G_min']\n",
"train_features['lelf_right_B_min'] = train_features['left_block_B_min'] - train_features['right_block_B_min']\n",
"\n",
"# train_features['lelf_right_H_min'] = train_features['left_block_H_min'] - train_features['right_block_H_min']\n",
"# train_features['lelf_right_S_min'] = train_features['left_block_S_min'] - train_features['right_block_S_min']\n",
"# train_features['lelf_right_V_min'] = train_features['left_block_V_min'] - train_features['right_block_V_min']\n",
"\n",
"train_features['lelf_right_l_min'] = train_features['left_block_l_min'] - train_features['right_block_l_min']\n",
"train_features['lelf_right_a_min'] = train_features['left_block_a_min'] - train_features['right_block_a_min']\n",
"train_features['lelf_right_b_min'] = train_features['left_block_b_min'] - train_features['right_block_b_min']\n",
"\n",
"train_features['lelf_right_gray_value'] = train_features['left_grayValue'] - train_features['right_grayValue']\n",
"train_features['lelf_right_gray_stddev'] = train_features['left_grayStddevValue'] - train_features['right_grayStddevValue']\n",
"train_features['lelf_right_gray_hist'] = train_features['left_grayHist'] - train_features['right_grayHist']\n",
"train_features['lelf_right_gray_max'] = train_features['left_grayMax'] - train_features['right_grayMax']\n",
"train_features['lelf_right_gray_min'] = train_features['left_grayMin'] - train_features['right_grayMin']\n",
"train_features.describe()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"scrolled": true
},
"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>lelf_right_R</th>\n",
" <th>lelf_right_G</th>\n",
" <th>lelf_right_B</th>\n",
" <th>lelf_right_H</th>\n",
" <th>lelf_right_S</th>\n",
" <th>lelf_right_V</th>\n",
" <th>lelf_right_l</th>\n",
" <th>lelf_right_a</th>\n",
" <th>lelf_right_b</th>\n",
" <th>lelf_right_R_stddev</th>\n",
" <th>...</th>\n",
" <th>lelf_right_S_min</th>\n",
" <th>lelf_right_V_min</th>\n",
" <th>lelf_right_l_min</th>\n",
" <th>lelf_right_a_min</th>\n",
" <th>lelf_right_b_min</th>\n",
" <th>lelf_right_gray_value</th>\n",
" <th>lelf_right_gray_stddev</th>\n",
" <th>lelf_right_gray_hist</th>\n",
" <th>lelf_right_gray_max</th>\n",
" <th>lelf_right_gray_min</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>...</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" <td>47662.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>1.621355</td>\n",
" <td>6.680815</td>\n",
" <td>4.458436</td>\n",
" <td>-47.472179</td>\n",
" <td>-2.396941</td>\n",
" <td>1.809030</td>\n",
" <td>4.853993</td>\n",
" <td>-2.124963</td>\n",
" <td>0.539633</td>\n",
" <td>-2.441232</td>\n",
" <td>...</td>\n",
" <td>-8.098821</td>\n",
" <td>-0.429965</td>\n",
" <td>13.873673</td>\n",
" <td>-0.931791</td>\n",
" <td>0.679850</td>\n",
" <td>4.913369</td>\n",
" <td>-3.246486</td>\n",
" <td>-9.639084</td>\n",
" <td>1.115312</td>\n",
" <td>14.039654</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>20.823232</td>\n",
" <td>33.415098</td>\n",
" <td>26.642987</td>\n",
" <td>80.783737</td>\n",
" <td>23.119320</td>\n",
" <td>21.043251</td>\n",
" <td>28.605350</td>\n",
" <td>6.609363</td>\n",
" <td>1.625657</td>\n",
" <td>8.844913</td>\n",
" <td>...</td>\n",
" <td>42.016868</td>\n",
" <td>7.183852</td>\n",
" <td>45.120638</td>\n",
" <td>2.250687</td>\n",
" <td>2.352445</td>\n",
" <td>28.823638</td>\n",
" <td>11.274663</td>\n",
" <td>49.489006</td>\n",
" <td>10.001763</td>\n",
" <td>44.882554</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>-37.000000</td>\n",
" <td>-47.000000</td>\n",
" <td>-40.000000</td>\n",
" <td>-239.000000</td>\n",
" <td>-79.000000</td>\n",
" <td>-37.000000</td>\n",
" <td>-41.000000</td>\n",
" <td>-18.000000</td>\n",
" <td>-3.000000</td>\n",
" <td>-22.000000</td>\n",
" <td>...</td>\n",
" <td>-151.000000</td>\n",
" <td>-25.000000</td>\n",
" <td>-61.000000</td>\n",
" <td>-9.000000</td>\n",
" <td>-5.000000</td>\n",
" <td>-41.000000</td>\n",
" <td>-27.000000</td>\n",
" <td>-251.000000</td>\n",
" <td>-29.000000</td>\n",
" <td>-58.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>-17.000000</td>\n",
" <td>-24.000000</td>\n",
" <td>-21.000000</td>\n",
" <td>-114.000000</td>\n",
" <td>-23.000000</td>\n",
" <td>-17.000000</td>\n",
" <td>-22.000000</td>\n",
" <td>-8.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-11.000000</td>\n",
" <td>...</td>\n",
" <td>-45.000000</td>\n",
" <td>-5.000000</td>\n",
" <td>-25.000000</td>\n",
" <td>-3.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-22.000000</td>\n",
" <td>-13.000000</td>\n",
" <td>-53.000000</td>\n",
" <td>-5.000000</td>\n",
" <td>-25.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>-2.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-6.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-2.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>...</td>\n",
" <td>-5.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>3.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-1.000000</td>\n",
" <td>-3.000000</td>\n",
" <td>1.000000</td>\n",
" <td>2.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>24.000000</td>\n",
" <td>45.000000</td>\n",
" <td>34.000000</td>\n",
" <td>10.000000</td>\n",
" <td>19.000000</td>\n",
" <td>25.000000</td>\n",
" <td>38.000000</td>\n",
" <td>4.000000</td>\n",
" <td>2.000000</td>\n",
" <td>5.000000</td>\n",
" <td>...</td>\n",
" <td>28.000000</td>\n",
" <td>4.000000</td>\n",
" <td>58.000000</td>\n",
" <td>1.000000</td>\n",
" <td>2.000000</td>\n",
" <td>38.000000</td>\n",
" <td>6.000000</td>\n",
" <td>34.000000</td>\n",
" <td>9.000000</td>\n",
" <td>58.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>44.000000</td>\n",
" <td>66.000000</td>\n",
" <td>50.000000</td>\n",
" <td>94.000000</td>\n",
" <td>44.000000</td>\n",
" <td>48.000000</td>\n",
" <td>56.000000</td>\n",
" <td>9.000000</td>\n",
" <td>7.000000</td>\n",
" <td>17.000000</td>\n",
" <td>...</td>\n",
" <td>76.000000</td>\n",
" <td>29.000000</td>\n",
" <td>102.000000</td>\n",
" <td>6.000000</td>\n",
" <td>10.000000</td>\n",
" <td>56.000000</td>\n",
" <td>20.000000</td>\n",
" <td>101.000000</td>\n",
" <td>39.000000</td>\n",
" <td>101.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>8 rows × 50 columns</p>\n",
"</div>"
],
"text/plain": [
" lelf_right_R lelf_right_G lelf_right_B lelf_right_H lelf_right_S \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 1.621355 6.680815 4.458436 -47.472179 -2.396941 \n",
"std 20.823232 33.415098 26.642987 80.783737 23.119320 \n",
"min -37.000000 -47.000000 -40.000000 -239.000000 -79.000000 \n",
"25% -17.000000 -24.000000 -21.000000 -114.000000 -23.000000 \n",
"50% -2.000000 -1.000000 -1.000000 -6.000000 -1.000000 \n",
"75% 24.000000 45.000000 34.000000 10.000000 19.000000 \n",
"max 44.000000 66.000000 50.000000 94.000000 44.000000 \n",
"\n",
" lelf_right_V lelf_right_l lelf_right_a lelf_right_b \\\n",
"count 47662.000000 47662.000000 47662.000000 47662.000000 \n",
"mean 1.809030 4.853993 -2.124963 0.539633 \n",
"std 21.043251 28.605350 6.609363 1.625657 \n",
"min -37.000000 -41.000000 -18.000000 -3.000000 \n",
"25% -17.000000 -22.000000 -8.000000 -1.000000 \n",
"50% -2.000000 -1.000000 -1.000000 0.000000 \n",
"75% 25.000000 38.000000 4.000000 2.000000 \n",
"max 48.000000 56.000000 9.000000 7.000000 \n",
"\n",
" lelf_right_R_stddev ... lelf_right_S_min lelf_right_V_min \\\n",
"count 47662.000000 ... 47662.000000 47662.000000 \n",
"mean -2.441232 ... -8.098821 -0.429965 \n",
"std 8.844913 ... 42.016868 7.183852 \n",
"min -22.000000 ... -151.000000 -25.000000 \n",
"25% -11.000000 ... -45.000000 -5.000000 \n",
"50% -1.000000 ... -5.000000 -1.000000 \n",
"75% 5.000000 ... 28.000000 4.000000 \n",
"max 17.000000 ... 76.000000 29.000000 \n",
"\n",
" lelf_right_l_min lelf_right_a_min lelf_right_b_min \\\n",
"count 47662.000000 47662.000000 47662.000000 \n",
"mean 13.873673 -0.931791 0.679850 \n",
"std 45.120638 2.250687 2.352445 \n",
"min -61.000000 -9.000000 -5.000000 \n",
"25% -25.000000 -3.000000 -1.000000 \n",
"50% 3.000000 -1.000000 0.000000 \n",
"75% 58.000000 1.000000 2.000000 \n",
"max 102.000000 6.000000 10.000000 \n",
"\n",
" lelf_right_gray_value lelf_right_gray_stddev lelf_right_gray_hist \\\n",
"count 47662.000000 47662.000000 47662.000000 \n",
"mean 4.913369 -3.246486 -9.639084 \n",
"std 28.823638 11.274663 49.489006 \n",
"min -41.000000 -27.000000 -251.000000 \n",
"25% -22.000000 -13.000000 -53.000000 \n",
"50% -1.000000 -1.000000 -3.000000 \n",
"75% 38.000000 6.000000 34.000000 \n",
"max 56.000000 20.000000 101.000000 \n",
"\n",
" lelf_right_gray_max lelf_right_gray_min \n",
"count 47662.000000 47662.000000 \n",
"mean 1.115312 14.039654 \n",
"std 10.001763 44.882554 \n",
"min -29.000000 -58.000000 \n",
"25% -5.000000 -25.000000 \n",
"50% 1.000000 2.000000 \n",
"75% 9.000000 58.000000 \n",
"max 39.000000 101.000000 \n",
"\n",
"[8 rows x 50 columns]"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train_features_9 = pd.DataFrame()\n",
"train_features_9['lelf_right_R'] = train_features['left_block_R'] - train_features['right_block_R']\n",
"train_features_9['lelf_right_G'] = train_features['left_block_G'] - train_features['right_block_G']\n",
"train_features_9['lelf_right_B'] = train_features['left_block_B'] - train_features['right_block_B']\n",
"\n",
"train_features_9['lelf_right_H'] = train_features['left_block_H'] - train_features['right_block_H']\n",
"train_features_9['lelf_right_S'] = train_features['left_block_S'] - train_features['right_block_S']\n",
"train_features_9['lelf_right_V'] = train_features['left_block_V'] - train_features['right_block_V']\n",
"\n",
"train_features_9['lelf_right_l'] = train_features['left_block_l'] - train_features['right_block_l']\n",
"train_features_9['lelf_right_a'] = train_features['left_block_a'] - train_features['right_block_a']\n",
"train_features_9['lelf_right_b'] = train_features['left_block_b'] - train_features['right_block_b']\n",
"\n",
"train_features_9['lelf_right_R_stddev'] = train_features['left_block_R_stddev'] - train_features['right_block_R_stddev']\n",
"train_features_9['lelf_right_G_stddev'] = train_features['left_block_G_stddev'] - train_features['right_block_G_stddev']\n",
"train_features_9['lelf_right_B_stddev'] = train_features['left_block_B_stddev'] - train_features['right_block_B_stddev']\n",
"\n",
"train_features_9['lelf_right_H_stddev'] = train_features['left_block_H_stddev'] - train_features['right_block_H_stddev']\n",
"train_features_9['lelf_right_S_stddev'] = train_features['left_block_S_stddev'] - train_features['right_block_S_stddev']\n",
"train_features_9['lelf_right_V_stddev'] = train_features['left_block_V_stddev'] - train_features['right_block_V_stddev']\n",
"\n",
"train_features_9['lelf_right_l_stddev'] = train_features['left_block_l_stddev'] - train_features['right_block_l_stddev']\n",
"train_features_9['lelf_right_a_stddev'] = train_features['left_block_a_stddev'] - train_features['right_block_a_stddev']\n",
"train_features_9['lelf_right_b_stddev'] = train_features['left_block_b_stddev'] - train_features['right_block_b_stddev']\n",
"\n",
"train_features_9['lelf_right_R_hist'] = train_features['left_block_R_hist'] - train_features['right_block_R_hist']\n",
"train_features_9['lelf_right_G_hist'] = train_features['left_block_G_hist'] - train_features['right_block_G_hist']\n",
"train_features_9['lelf_right_B_hist'] = train_features['left_block_B_hist'] - train_features['right_block_B_hist']\n",
"\n",
"train_features_9['lelf_right_H_hist'] = train_features['left_block_H_hist'] - train_features['right_block_H_hist']\n",
"train_features_9['lelf_right_S_hist'] = train_features['left_block_S_hist'] - train_features['right_block_S_hist']\n",
"train_features_9['lelf_right_V_hist'] = train_features['left_block_V_hist'] - train_features['right_block_V_hist']\n",
"\n",
"train_features_9['lelf_right_l_hist'] = train_features['left_block_l_hist'] - train_features['right_block_l_hist']\n",
"train_features_9['lelf_right_a_hist'] = train_features['left_block_a_hist'] - train_features['right_block_a_hist']\n",
"train_features_9['lelf_right_b_hist'] = train_features['left_block_b_hist'] - train_features['right_block_b_hist']\n",
"\n",
"train_features_9['lelf_right_R_max'] = train_features['left_block_R_max'] - train_features['right_block_R_max']\n",
"train_features_9['lelf_right_G_max'] = train_features['left_block_G_max'] - train_features['right_block_G_max']\n",
"train_features_9['lelf_right_B_max'] = train_features['left_block_B_max'] - train_features['right_block_B_max']\n",
"\n",
"train_features_9['lelf_right_H_max'] = train_features['left_block_H_max'] - train_features['right_block_H_max']\n",
"train_features_9['lelf_right_S_max'] = train_features['left_block_S_max'] - train_features['right_block_S_max']\n",
"train_features_9['lelf_right_V_max'] = train_features['left_block_V_max'] - train_features['right_block_V_max']\n",
"\n",
"train_features_9['lelf_right_l_max'] = train_features['left_block_l_max'] - train_features['right_block_l_max']\n",
"train_features_9['lelf_right_a_max'] = train_features['left_block_a_max'] - train_features['right_block_a_max']\n",
"train_features_9['lelf_right_b_max'] = train_features['left_block_b_max'] - train_features['right_block_b_max']\n",
"\n",
"train_features_9['lelf_right_R_min'] = train_features['left_block_R_min'] - train_features['right_block_R_min']\n",
"train_features_9['lelf_right_G_min'] = train_features['left_block_G_min'] - train_features['right_block_G_min']\n",
"train_features_9['lelf_right_B_min'] = train_features['left_block_B_min'] - train_features['right_block_B_min']\n",
"\n",
"train_features_9['lelf_right_H_min'] = train_features['left_block_H_min'] - train_features['right_block_H_min']\n",
"train_features_9['lelf_right_S_min'] = train_features['left_block_S_min'] - train_features['right_block_S_min']\n",
"train_features_9['lelf_right_V_min'] = train_features['left_block_V_min'] - train_features['right_block_V_min']\n",
"\n",
"train_features_9['lelf_right_l_min'] = train_features['left_block_l_min'] - train_features['right_block_l_min']\n",
"train_features_9['lelf_right_a_min'] = train_features['left_block_a_min'] - train_features['right_block_a_min']\n",
"train_features_9['lelf_right_b_min'] = train_features['left_block_b_min'] - train_features['right_block_b_min']\n",
"\n",
"# train_features_9['left_grayValue']= train_features['left_grayValue'];\n",
"# train_features_9['left_grayStddevValue']= train_features['left_grayStddevValue'];\n",
"# train_features_9['left_grayHist']= train_features['left_grayHist'];\n",
"# train_features_9['left_grayMax']= train_features['left_grayMax'];\n",
"# train_features_9['left_grayMin']= train_features['left_grayMin'];\n",
"\n",
"# train_features_9['right_grayValue']= train_features['right_grayValue'];\n",
"# train_features_9['right_grayStddevValue']= train_features['right_grayStddevValue'];\n",
"# train_features_9['right_grayHist']= train_features['right_grayHist'];\n",
"# train_features_9['right_grayMax']= train_features['right_grayMax'];\n",
"# train_features_9['right_grayMin']= train_features['right_grayMin'];\n",
"\n",
"# train_features_9['lelf_R_stddev'] = train_features['left_block_R_stddev'] \n",
"# train_features_9['lelf_G_stddev'] = train_features['left_block_G_stddev'] \n",
"# train_features_9['lelf_B_stddev'] = train_features['left_block_B_stddev'] \n",
"\n",
"# train_features_9['left_block_R_min'] = train_features['left_block_R_min'] \n",
"# train_features_9['left_block_G_min'] = train_features['left_block_G_min'] \n",
"# train_features_9['left_block_B_min'] = train_features['left_block_B_min'] \n",
"\n",
"\n",
"train_features_9['lelf_right_gray_value'] = train_features['left_grayValue'] - train_features['right_grayValue']\n",
"train_features_9['lelf_right_gray_stddev'] = train_features['left_grayStddevValue'] - train_features['right_grayStddevValue']\n",
"train_features_9['lelf_right_gray_hist'] = train_features['left_grayHist'] - train_features['right_grayHist']\n",
"train_features_9['lelf_right_gray_max'] = train_features['left_grayMax'] - train_features['right_grayMax']\n",
"train_features_9['lelf_right_gray_min'] = train_features['left_grayMin'] - train_features['right_grayMin']\n",
"#train_features_9['index'] = train_labels\n",
"train_features_9.describe()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"train_features_9.to_excel(\"train_features_9.xlsx\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**去掉左边块的方差和白块和右边块的特征**"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": false
},
"outputs": [],
"source": [
"# train_features = train_features.drop(\"left_block_R\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_G\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_B\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_R_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_G_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_B_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_B_stddev\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_R_max\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_G_max\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_B_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_hist\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_hist\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l_hist\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a_hist\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b_max\",axis=1)\n",
"##################################################################\n",
"\n",
"# train_features = train_features.drop(\"right_block_R\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_G\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_B\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_B_stddev\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_R_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_G_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_B_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_R_max\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_G_max\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_B_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_hist\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_hist\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l_hist\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a_hist\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b_max\",axis=1)\n",
"\n",
"####################################################################\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B_max\",axis=1)\n",
"\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_max\",axis=1)\n",
"\n",
"\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a_hist\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b_max\",axis=1)\n",
"\n",
"##################################################################\n",
"\n",
"\n",
"\n",
"train_features.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**去掉所有块的方差特征**"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"\n",
"train_features = train_features.drop(\"left_block_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b_stddev\",axis=1)\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# train_features = train_features.drop(\"left_block_R\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_G\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_B\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_H\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_S\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_V\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_l\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_a\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_b\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_R\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_G\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_B\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_H\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_S\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_V\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_l\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_a\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_b\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"whiteBlock_R\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_G\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_B\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"whiteBlock_H\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_S\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_V\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"whiteBlock_l\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_a\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_b\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_R_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_G_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_B_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_H_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_S_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_V_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"left_block_l_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_a_hist\",axis=1)\n",
"# train_features = train_features.drop(\"left_block_b_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_R_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_G_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_B_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_H_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_S_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_V_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"right_block_l_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_a_hist\",axis=1)\n",
"# train_features = train_features.drop(\"right_block_b_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"whiteBlock_R_hist\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_G_hist\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_B_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"whiteBlock_H_hist\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_S_hist\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_V_hist\",axis=1)\n",
"\n",
"# train_features = train_features.drop(\"whiteBlock_l_hist\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_a_hist\",axis=1)\n",
"# train_features = train_features.drop(\"whiteBlock_b_hist\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a_stddev\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b_stddev\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_R_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_G_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_B_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_H_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_S_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"left_block_l_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_a_max\",axis=1)\n",
"train_features = train_features.drop(\"left_block_b_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_R_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_G_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_B_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_H_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_S_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"right_block_l_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_a_max\",axis=1)\n",
"train_features = train_features.drop(\"right_block_b_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_R_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_G_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_B_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_H_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_S_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_V_max\",axis=1)\n",
"\n",
"train_features = train_features.drop(\"whiteBlock_l_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_a_max\",axis=1)\n",
"train_features = train_features.drop(\"whiteBlock_b_max\",axis=1)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"train_features.describe()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"#from sklearn.model_selection import KFold\n",
"from sklearn.ensemble import RandomForestClassifier\n",
"from sklearn.metrics import accuracy_score\n",
"from sklearn.svm import SVC\n",
"from sklearn.metrics import f1_score\n",
"from sklearn.metrics import precision_score\n",
"from sklearn.metrics import recall_score\n",
"\n",
"\"\"\"\n",
"ImportError: No module named 'sklearn.cross_validation'\n",
"通常我们会使用方法(1)的方式进行导入sklearn.cross_validation\n",
"在大多数的版本里都会出现ImportError: No module named 'sklearn.cross_validation'问题,\n",
"我试过windows7的python2下的环境和ubuntu下的python3.5环境下,都出现过这样的情况。\n",
"所有当我们使用方法(1)出现问题的时候,我们不妨使用方法(2)代替一下。基本问题就解决了。\n",
"1from sklearn.cross_validation import train_test_split\n",
"2from sklearn.model_selection import cross_val_score\n",
" from sklearn.model_selection import train_test_split\n",
"\"\"\"\n",
"from sklearn.ensemble import ExtraTreesClassifier\n",
"from sklearn.ensemble import AdaBoostClassifier\n",
"from sklearn.model_selection import train_test_split\n",
"#from sklearn.cross_validation import train_test_split\n",
"#X_train ,X_test,y_train,y_test = train_test_split(train_features_9,train_labels,test_size = 0.5, random_state = 0)\n",
"X_train ,X_test,y_train,y_test = train_test_split(train_features_9,train_labels,test_size = 0.2, random_state = 20)\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-----------classification_report----------------------\n",
"\n",
" precision recall f1-score support\n",
"\n",
" 0 0.99 0.99 0.99 1503\n",
" 2 0.99 0.99 0.99 1337\n",
" 4 1.00 1.00 1.00 1889\n",
" 6 0.99 0.99 0.99 1512\n",
" 7 0.99 1.00 1.00 3292\n",
"\n",
" micro avg 0.99 0.99 0.99 9533\n",
" macro avg 0.99 0.99 0.99 9533\n",
"weighted avg 0.99 0.99 0.99 9533\n",
"\n",
"-----------cm----------------------\n",
"\n",
"[[1495 8 0 0 0]\n",
" [ 16 1321 0 0 0]\n",
" [ 0 0 1889 0 0]\n",
" [ 0 0 0 1494 18]\n",
" [ 0 0 0 14 3278]]\n",
"---------------------------------\n",
"\n",
"Accuracy of prediction: 0.295\n",
"---------------------------------\n",
"\n",
"DecisionTree accuracy score: 0.9941256687296759\n",
"f1 score: 0.9941256687296759\n",
"precision_score: 0.9941256687296759\n",
"recall_score: 0.9941256687296759\n"
]
}
],
"source": [
"from sklearn.tree import DecisionTreeClassifier\n",
"from sklearn.metrics import classification_report,confusion_matrix\n",
"\n",
"dtree = DecisionTreeClassifier(criterion='gini',max_depth=None)\n",
"dtree.fit(X_train,y_train)\n",
"predictions = dtree.predict(X_test)\n",
"\n",
"print(\"-----------classification_report----------------------\\n\")\n",
"print(classification_report(y_test,predictions))\n",
"print(\"-----------cm----------------------\\n\")\n",
"cm=confusion_matrix(y_test,predictions)\n",
"print(cm)\n",
"print(\"---------------------------------\\n\")\n",
"print (\"Accuracy of prediction:\",round((cm[0,0]+cm[1,1])/cm.sum(),3))\n",
"print(\"---------------------------------\\n\")\n",
"print (\"DecisionTree accuracy score:\" , accuracy_score(y_test,predictions))\n",
"print (\"f1 score:\" , f1_score(y_test,predictions,average='micro'))\n",
"print (\"precision_score:\" , precision_score(y_test,predictions,average='micro'))\n",
"print (\"recall_score:\" , recall_score(y_test,predictions,average='micro'))"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" precision recall f1-score support\n",
"\n",
" 0 0.99 0.99 0.99 1503\n",
" 2 0.99 0.99 0.99 1337\n",
" 4 1.00 1.00 1.00 1889\n",
" 6 0.99 0.99 0.99 1512\n",
" 7 0.99 1.00 1.00 3292\n",
"\n",
" micro avg 0.99 0.99 0.99 9533\n",
" macro avg 0.99 0.99 0.99 9533\n",
"weighted avg 0.99 0.99 0.99 9533\n",
"\n",
"[[1500 3 0 0 0]\n",
" [ 2 1334 1 0 0]\n",
" [ 0 0 1889 0 0]\n",
" [ 0 0 0 1510 2]\n",
" [ 0 0 0 2 3290]]\n",
"---------------------------------\n",
"\n",
"Accuracy of prediction: 0.297\n",
"RandomForest accuracy score: 0.9989510122731564\n",
"---------------------------------\n",
"\n",
"f1 score: 0.9989510122731564\n",
"precision_score: 0.9989510122731564\n",
"recall_score: 0.9989510122731564\n"
]
}
],
"source": [
"from sklearn.ensemble import RandomForestClassifier\n",
"from sklearn.metrics import classification_report\n",
"\n",
"rfc = RandomForestClassifier(n_estimators=20)\n",
"rfc.fit(X_train, y_train)\n",
"rfc_pred = rfc.predict(X_test)\n",
"cr = classification_report(y_test,predictions)\n",
"print(cr)\n",
"cm = confusion_matrix(y_test,rfc_pred)\n",
"print(cm)\n",
"\n",
"print(\"---------------------------------\\n\")\n",
"print (\"Accuracy of prediction:\",round((cm[0,0]+cm[1,1])/cm.sum(),3))\n",
"print (\"RandomForest accuracy score:\" , accuracy_score(y_test,rfc_pred))\n",
"print(\"---------------------------------\\n\")\n",
"print (\"f1 score:\" , f1_score(y_test,rfc_pred,average='micro'))\n",
"print (\"precision_score:\" , precision_score(y_test,rfc_pred,average='micro'))\n",
"print (\"recall_score:\" , recall_score(y_test,rfc_pred,average='micro'))"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" precision recall f1-score support\n",
"\n",
" 0 0.99 0.99 0.99 1503\n",
" 2 0.99 0.99 0.99 1337\n",
" 4 1.00 1.00 1.00 1889\n",
" 6 0.99 0.99 0.99 1512\n",
" 7 0.99 1.00 1.00 3292\n",
"\n",
" micro avg 0.99 0.99 0.99 9533\n",
" macro avg 0.99 0.99 0.99 9533\n",
"weighted avg 0.99 0.99 0.99 9533\n",
"\n",
"[[1501 2 0 0 0]\n",
" [ 3 1333 1 0 0]\n",
" [ 0 0 1889 0 0]\n",
" [ 0 0 0 1510 2]\n",
" [ 0 0 0 2 3290]]\n",
"---------------------------------\n",
"\n",
"Accuracy of prediction: 0.297\n",
"RandomForest accuracy score: 0.9989510122731564\n",
"---------------------------------\n",
"\n",
"f1 score: 0.9989510122731564\n",
"precision_score: 0.9989510122731564\n",
"recall_score: 0.9989510122731564\n"
]
}
],
"source": [
"from sklearn.ensemble import RandomForestClassifier\n",
"from sklearn.metrics import classification_report\n",
"#https://www.cnblogs.com/pinard/p/6160412.html\n",
"rfcNew = RandomForestClassifier(n_estimators= 60)#, max_depth=20, min_samples_split=110,min_samples_leaf=20,max_features='sqrt' ,oob_score=True, random_state=10)\n",
"rfcNew.fit(X_train, y_train)\n",
"rfcNew_pred = rfcNew.predict(X_test)\n",
"cr = classification_report(y_test,predictions)\n",
"print(cr)\n",
"cm = confusion_matrix(y_test,rfcNew_pred)\n",
"print(cm)\n",
"\n",
"print(\"---------------------------------\\n\")\n",
"print (\"Accuracy of prediction:\",round((cm[0,0]+cm[1,1])/cm.sum(),3))\n",
"print (\"RandomForest accuracy score:\" , accuracy_score(y_test,rfcNew_pred))\n",
"print(\"---------------------------------\\n\")\n",
"print (\"f1 score:\" , f1_score(y_test,rfcNew_pred,average='micro'))\n",
"print (\"precision_score:\" , precision_score(y_test,rfcNew_pred,average='micro'))\n",
"print (\"recall_score:\" , recall_score(y_test,rfcNew_pred,average='micro'))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# following lines is NOT used\n",
"from sklearn.ensemble import RandomForestRegressor\n",
"rfr = RandomForestRegressor(n_estimators=20)\n",
"rfr.fit(X_train, y_train)\n",
"rfr_pred = rfr.predict(X_test)\n",
"print(\"Traing Score:%f\"%rfr.score(X_train,y_train))\n",
"print(\"Tesing Score:%f\"%rfr.score(X_test,y_test))\n",
" \n",
"cm = confusion_matrix(y_test,rfr_pred)\n",
"print(cm)\n",
"\n",
"print(\"---------------------------------\\n\")\n",
"print (\"Accuracy of prediction:\",round((cm[0,0]+cm[1,1])/cm.sum(),3))\n",
"print (\"RandomForest accuracy score:\" , accuracy_score(y_test,rfr_pred))\n",
"print(\"---------------------------------\\n\")\n",
"print (\"f1 score:\" , f1_score(y_test,rfr_pred,average='micro'))\n",
"print (\"precision_score:\" , precision_score(y_test,rfr_pred,average='micro'))\n",
"print (\"recall_score:\" , recall_score(y_test,rfr_pred,average='micro'))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.model_selection import KFold\n",
"\n",
"X = train_features_9.values\n",
"y = train_labels.values\n",
"\n",
"kf = KFold(n_splits=5)\n",
"kf.get_n_splits(X)\n",
"\n",
"print(kf) \n",
"\n",
"for train_index, test_index in kf.split(X):\n",
" print(\"TRAIN:\", train_index, \"TEST:\", test_index)\n",
" X_train, X_test = X[train_index], X[test_index]\n",
" y_train, y_test = y[train_index], y[test_index]\n",
" \n",
" \n",
" from datetime import datetime\n",
" trarining_start_time = datetime.now()\n",
"\n",
" rfc = RandomForestClassifier(n_estimators=600)\n",
" rfc.fit(X_train, y_train)\n",
" rfc_pred = rfc.predict(X_test) \n",
" print (\"svm linear accuracy score:\" , accuracy_score(y_test,rfc_pred))\n",
" print (\"f1 score:\" , f1_score(y_test,rfc_pred,average='micro'))\n",
" print (\"precision_score:\" , precision_score(y_test,rfc_pred,average='micro'))\n",
" print (\"recall_score:\" , recall_score(y_test,rfc_pred,average='micro'))\n",
"\n",
" training_stop_time = datetime.now()\n",
"\n",
" print (\"runing time:\",(training_stop_time - trarining_start_time))\n",
" print(\"\\n\\n\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"\n",
"nsimu = 21\n",
"accuracy=[0]*nsimu\n",
"ntree = [0]*nsimu\n",
"for i in range(1,nsimu):\n",
" rfc = RandomForestClassifier(n_estimators=i*5,min_samples_split=10,max_depth=None,criterion='gini')\n",
" rfc.fit(X_train, y_train)\n",
" rfc_pred = rfc.predict(X_test)\n",
" cm = confusion_matrix(y_test,rfc_pred)\n",
" accuracy[i] = (cm[0,0]+cm[1,1])/cm.sum()\n",
" ntree[i]=i*5\n",
"\n",
" print (\"RandomForest accuracy score:\" , accuracy_score(y_test,rfc_pred))\n",
" print (\"f1 score:\" , f1_score(y_test,rfc_pred,average='micro')) \n",
" print (\"Accuracy of prediction:\",round((cm[0,0]+cm[1,1])/cm.sum(),3))\n",
"\n",
" \n",
"plt.figure(figsize=(10,6))\n",
"plt.scatter(x=ntree[1:nsimu],y=accuracy[1:nsimu],s=60,c='red')\n",
"plt.title(\"Number of trees in the Random Forest vs. prediction accuracy (criterion: 'gini')\", fontsize=18)\n",
"plt.xlabel(\"Number of trees\", fontsize=15)\n",
"plt.ylabel(\"Prediction accuracy from confusion matrix\", fontsize=15)\n",
"\n",
"\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"from sklearn.model_selection import KFold\n",
"\n",
"X = train_features_9.values\n",
"y = train_labels.values\n",
"\n",
"kf = KFold(n_splits=5)\n",
"kf.get_n_splits(X)\n",
"\n",
"print(kf) \n",
"\n",
"for train_index, test_index in kf.split(X):\n",
" print(\"TRAIN:\", train_index, \"TEST:\", test_index)\n",
" X_train, X_test = X[train_index], X[test_index]\n",
" y_train, y_test = y[train_index], y[test_index]\n",
" \n",
" \n",
" from datetime import datetime\n",
" trarining_start_time = datetime.now()\n",
"\n",
" clf_svm_linear = SVC(kernel='linear', gamma=0.02, C=1)\n",
" clf_svm_linear = clf_svm_linear.fit(X_train, y_train)\n",
" #print(clf_svm_linear.predict(X_test))\n",
" pred = clf_svm_linear.predict(X_test)\n",
" print (\"svm linear accuracy score:\" , accuracy_score(y_test,pred))\n",
" print (\"f1 score:\" , f1_score(y_test,pred,average='micro'))\n",
" print (\"precision_score:\" , precision_score(y_test,pred,average='micro'))\n",
" print (\"recall_score:\" , recall_score(y_test,pred,average='micro'))\n",
"\n",
" training_stop_time = datetime.now()\n",
"\n",
" print (\"runing time:\",(training_stop_time - trarining_start_time))\n",
" print(\"\\n\\n\")\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"\"\"\"\n",
" CC-SVC的惩罚参数C?默认值是1.0\n",
"C越大,相当于惩罚松弛变量,希望松弛变量接近0,即对误分类的惩罚增大,趋向于对训练集全分对的情况,\n",
"这样对训练集测试时准确率很高,但泛化能力弱。C值小,对误分类的惩罚减小,允许容错,将他们当成噪声点,\n",
"泛化能力较强。\n",
"kernel :核函数,默认是rbf,可以是‘linear, poly, rbf, sigmoid, precomputed \n",
"   0 线性:u'v\n",
"    1 多项式:(gamma*u'*v + coef0)^degree\n",
"   2 RBF函数:exp(-gamma|u-v|^2)\n",
"   3 sigmoidtanh(gamma*u'*v + coef0)\n",
"degree :多项式poly函数的维度,默认是3,选择其他核函数时会被忽略。\n",
"gamma rbf,poly 和‘sigmoid’的核函数参数。默认是’auto’,则会选择1/n_features\n",
"coef0 :核函数的常数项。对于‘poly’和 ‘sigmoid’有用。\n",
"probability :是否采用概率估计?.默认为False\n",
"shrinking :是否采用shrinking heuristic方法,默认为true\n",
"tol :停止训练的误差值大小,默认为1e-3\n",
"cache_size :核函数cache缓存大小,默认为200\n",
"class_weight :类别的权重,字典形式传递。设置第几类的参数C为weight*C(C-SVC中的C)\n",
"verbose :允许冗余输出?\n",
"max_iter :最大迭代次数。-1为无限制。\n",
"decision_function_shape :‘ovo, ovr or None, default=None3\n",
"random_state :数据洗牌时的种子值,int值\n",
"主要调节的参数有:C、kernel、degree、gamma、coef0\n",
"\"\"\""
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"#X_train = train_features_9\n",
"#y_train = train_labels\n",
"\n",
"# X_test = test_features\n",
"# y_test = test_labels\n",
"\n",
"from datetime import datetime\n",
"trarining_start_time = datetime.now()\n",
" \n",
"#clf_svm_linear = SVC(kernel = 'linear',gamma=0.00001,C=0.01)\n",
"clf_svm_linear = SVC(kernel = 'linear',gamma=0.02,C=1)\n",
"clf_svm_linear = clf_svm_linear.fit(X_train, y_train)\n",
"pred = clf_svm_linear.predict(X_test)\n",
"#print (\"svm linear accuracy score:\" , accuracy_score(y_test,pred))\n",
"#print (\"f1 score:\" , f1_score(y_test,pred,average='micro'))\n",
"#print (\"precision_score:\" , precision_score(y_test,pred,average=None))\n",
"#print (\"recall_score :\" , recall_score(y_test,pred,average=None))\n",
"print (\"svm linear accuracy score:\" , accuracy_score(y_test,pred))\n",
"print (\"f1 score:\" , f1_score(y_test,pred,average='micro'))\n",
"print (\"precision_score:\" , precision_score(y_test,pred,average='micro'))\n",
"print (\"recall_score:\" , recall_score(y_test,pred,average='micro'))\n",
"\n",
"training_stop_time = datetime.now()\n",
"print (\"runing clf_svm_linear time:\",(training_stop_time - trarining_start_time))\n"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'\\nporter_dtree_java = Porter(dtree, language=\\'java\\').export()\\nporter_dtree_c = Porter(dtree, language=\\'c\\').export()\\n\\nf = open(\"ov_dtree_c.txt\",\\'wb\\')\\nf.write(porter_dtree_c.encode())\\nf.close()\\n\\nf = open(\"ov_dtree_java.txt\",\\'wb\\')\\nf.write(porter_dtree_java.encode())\\nf.close()\\n'"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sklearn_porter import Porter\n",
"\"\"\"\n",
"No module named 'sklearn_porter'\n",
"\n",
"2、下载软件\n",
">git clone -b stable https://github.com/nok/sklearn-porter.git\n",
">cd sklearn-porter\n",
"3、修改setup.py\n",
"将 readme = open(readme_path, r).read().strip()\n",
"改为 readme = open(readme_path, r, encoding=utf-8).read().strip()\n",
"4、使用setup.py安装\n",
">python setup.py install\n",
"\"\"\"\n",
"\"\"\"\n",
"porter_svc_java = Porter(clf_svm_linear, language='java').export()\n",
"porter_svc_c = Porter(clf_svm_linear, language='c').export()\n",
"\n",
"f = open(\"ov_svc_c.txt\",'wb')\n",
"f.write(porter_svc_c.encode())\n",
"f.close()\n",
"f = open(\"ov_svc_java.txt\",'wb')\n",
"f.write(porter_svc_java.encode())\n",
"f.close()\n",
"\"\"\"\n",
"\n",
"#------------------------\n",
"porter_rfc_java = Porter(rfcNew, language='java').export()\n",
"porter_rfc_c = Porter(rfcNew, language='c').export()\n",
"\n",
"f = open(\"ov_rfc60_c.txt\",'wb')\n",
"f.write(porter_rfc_c.encode())\n",
"f.close()\n",
"\n",
"f = open(\"ov_rfc60_java.txt\",'wb')\n",
"f.write(porter_rfc_java.encode())\n",
"f.close()\n",
"#------------------------\n",
"\"\"\"\n",
"porter_dtree_java = Porter(dtree, language='java').export()\n",
"porter_dtree_c = Porter(dtree, language='c').export()\n",
"\n",
"f = open(\"ov_dtree_c.txt\",'wb')\n",
"f.write(porter_dtree_c.encode())\n",
"f.close()\n",
"\n",
"f = open(\"ov_dtree_java.txt\",'wb')\n",
"f.write(porter_dtree_java.encode())\n",
"f.close()\n",
"\"\"\"\n",
"\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from sklearn_porter import Porter\n",
"\n",
"porter_clf_svm_liner = Porter(clf_svm_linear, language='c').export()\n",
"#porter_clf_svm_poly = Porter(clf_svm_poly, language='c').export()\n",
"# porter_clf_forest = Porter(clf_randomForest, language='c').export()\n",
"#porter_clf_extra_forest = Porter(clf_extra_forest, language='c').export()\n",
"\n",
"#print(porter_clf_svm_linear)\n",
"f = open(\"clf/clf_svm_linear_50features_20181220.txt\",'wb')\n",
"#f = open(\"clf_svm_linear_125100_low_feature_data.txt\",'wb')\n",
"f.write(porter_clf_svm_liner.encode())\n",
"f.close()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from sklearn_porter import Porter\n",
"\n",
"porter_clf_svm_liner = Porter(clf_svm_linear, language='js').export()\n",
"#porter_clf_svm_poly = Porter(clf_svm_poly, language='c').export()\n",
"# porter_clf_forest = Porter(clf_randomForest, language='c').export()\n",
"#porter_clf_extra_forest = Porter(clf_extra_forest, language='c').export()\n",
"\n",
"#print(porter_clf_svm_linear)\n",
"f = open(\"clf/clf_svm_linear_50features_js_20181221.txt\",'wb')\n",
"#f = open(\"clf_svm_linear_125100_low_feature_data.txt\",'wb')\n",
"f.write(porter_clf_svm_liner.encode())\n",
"f.close()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": false
},
"outputs": [],
"source": [
"pred = clf_svm_linear.predict(X_test)\n",
"print \"svm linear accuracy score:\" , accuracy_score(y_test,pred)\n",
"print \"f1 score :\" , f1_score(y_test,pred,average=None)\n",
"print \"precision_score:\" , precision_score(y_test,pred,average=None)\n",
"print \"recall_score :\" , recall_score(y_test,pred,average=None)\n",
"\n",
"print(\"preds:\",pred[:10])\n",
"print('trues:\\n',y_test[:10])\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from sklearn_porter import Porter\n",
"\n",
"porter_clf_svm_linear = Porter(clf_svm_linear, language='c').export()\n",
"#porter_clf_svm_poly = Porter(clf_svm_poly, language='c').export()\n",
"# porter_clf_forest = Porter(clf_randomForest, language='c').export()\n",
"#porter_clf_extra_forest = Porter(clf_extra_forest, language='c').export()\n",
"\n",
"#print(porter_clf_svm_linear)\n",
"f = open(\"clf/clf_svm_linear_50features_20181207.txt\",'wb')\n",
"#f = open(\"clf_svm_linear_125100_low_feature_data.txt\",'wb')\n",
"f.write(porter_clf_svm_linear.encode())\n",
"f.close()\n",
"#f = open(\"clf_svm_poly_2457100_data.txt\",'wb')\n",
"#f.write(porter_clf_svm_poly)\n",
"#f.close()\n",
"# f = open(\"clf/clf_randomForest_27features_stddev_c_0_01.txt\",'wb')\n",
"# f.write(porter_clf_forest)\n",
"# f.close()\n",
"# f = open(\"oclf_extra_forest_2457100_data_0824.txt\",'wb')\n",
"# f.write(porter_clf_extra_forest)\n",
"# f.close()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"from sklearn.utils import shuffle\n",
"\n",
"\n",
"# data_shuffle1 = shuffle(data1)\n",
"# #data_shuffle = data_all;\n",
"# test_labels = data_shuffle1[\"index\"]\n",
"# test_features = data_shuffle1.drop(\"dateTime\",axis=1)\n",
"# test_features = test_features.drop(\"index\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBalance\",axis=1)\n",
"\n",
"\n",
"# test_features = test_features.drop(\"left_block_R_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"left_block_G_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"left_block_B_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"left_block_H_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"left_block_S_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"left_block_V_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"left_block_l_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"left_block_a_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"left_block_b_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"right_block_R_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"right_block_G_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"right_block_B_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"right_block_H_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"right_block_S_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"right_block_V_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"right_block_l_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"right_block_a_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"right_block_b_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"whiteBlock_R_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBlock_G_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBlock_B_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"whiteBlock_H_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBlock_S_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBlock_V_stddev\",axis=1)\n",
"\n",
"# test_features = test_features.drop(\"whiteBlock_l_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBlock_a_stddev\",axis=1)\n",
"# test_features = test_features.drop(\"whiteBlock_b_stddev\",axis=1)\n",
"\n",
"train_features_10 = pd.DataFrame()\n",
"train_features_10['lelf_right_R'] = test_features['left_block_R'] - test_features['right_block_R']\n",
"train_features_10['lelf_right_G'] = test_features['left_block_G'] - test_features['right_block_G']\n",
"train_features_10['lelf_right_B'] = test_features['left_block_B'] - test_features['right_block_B']\n",
"\n",
"train_features_10['lelf_right_H'] = test_features['left_block_H'] - test_features['right_block_H']\n",
"# train_features_10['lelf_right_S'] = test_features['left_block_S'] - test_features['right_block_S']\n",
"train_features_10['lelf_right_V'] = test_features['left_block_V'] - test_features['right_block_V']\n",
"\n",
"train_features_10['lelf_right_l'] = test_features['left_block_l'] - test_features['right_block_l']\n",
"train_features_10['lelf_right_a'] = test_features['left_block_a'] - test_features['right_block_a']\n",
"train_features_10['lelf_right_b'] = test_features['left_block_b'] - test_features['right_block_b']\n",
"\n",
"train_features_10['lelf_right_R_stddev'] = test_features['left_block_R_stddev'] - test_features['right_block_R_stddev']\n",
"train_features_10['lelf_right_G_stddev'] = test_features['left_block_G_stddev'] - test_features['right_block_G_stddev']\n",
"train_features_10['lelf_right_B_stddev'] = test_features['left_block_B_stddev'] - test_features['right_block_B_stddev']\n",
"\n",
"train_features_10['lelf_right_H_stddev'] = test_features['left_block_H_stddev'] - test_features['right_block_H_stddev']\n",
"# train_features_10['lelf_right_S_stddev'] = test_features['left_block_S_stddev'] - test_features['right_block_S_stddev']\n",
"train_features_10['lelf_right_V_stddev'] = test_features['left_block_V_stddev'] - test_features['right_block_V_stddev']\n",
"\n",
"train_features_10['lelf_right_l_stddev'] = test_features['left_block_l_stddev'] - test_features['right_block_l_stddev']\n",
"train_features_10['lelf_right_a_stddev'] = test_features['left_block_a_stddev'] - test_features['right_block_a_stddev']\n",
"train_features_10['lelf_right_b_stddev'] = test_features['left_block_b_stddev'] - test_features['right_block_b_stddev']\n",
"\n",
"train_features_10['lelf_right_R_hist'] = test_features['left_block_R_hist'] - test_features['right_block_R_hist']\n",
"train_features_10['lelf_right_G_hist'] = test_features['left_block_G_hist'] - test_features['right_block_G_hist']\n",
"train_features_10['lelf_right_B_hist'] = test_features['left_block_B_hist'] - test_features['right_block_B_hist']\n",
"\n",
"train_features_10['lelf_right_H_hist'] = test_features['left_block_H_hist'] - test_features['right_block_H_hist']\n",
"# train_features_10['lelf_right_S_hist'] = test_features['left_block_S_hist'] - test_features['right_block_S_hist']\n",
"train_features_10['lelf_right_V_hist'] = test_features['left_block_V_hist'] - test_features['right_block_V_hist']\n",
"\n",
"train_features_10['lelf_right_l_hist'] = test_features['left_block_l_hist'] - test_features['right_block_l_hist']\n",
"train_features_10['lelf_right_a_hist'] = test_features['left_block_a_hist'] - test_features['right_block_a_hist']\n",
"train_features_10['lelf_right_b_hist'] = test_features['left_block_b_hist'] - test_features['right_block_b_hist']\n",
"\n",
"train_features_10['lelf_right_R_max'] = test_features['left_block_R_max'] - test_features['right_block_R_max']\n",
"train_features_10['lelf_right_G_max'] = test_features['left_block_G_max'] - test_features['right_block_G_max']\n",
"train_features_10['lelf_right_B_max'] = test_features['left_block_B_max'] - test_features['right_block_B_max']\n",
"\n",
"train_features_10['lelf_right_H_max'] = test_features['left_block_H_max'] - test_features['right_block_H_max']\n",
"# train_features_10['lelf_right_S_max'] = test_features['left_block_S_max'] - test_features['right_block_S_max']\n",
"train_features_10['lelf_right_V_max'] = test_features['left_block_V_max'] - test_features['right_block_V_max']\n",
"\n",
"train_features_10['lelf_right_l_max'] = test_features['left_block_l_max'] - test_features['right_block_l_max']\n",
"train_features_10['lelf_right_a_max'] = test_features['left_block_a_max'] - test_features['right_block_a_max']\n",
"train_features_10['lelf_right_b_max'] = test_features['left_block_b_max'] - test_features['right_block_b_max']\n",
"\n",
"\n",
"train_features_10['lelf_right_R_min'] = test_features['left_block_R_min'] - test_features['right_block_R_min']\n",
"train_features_10['lelf_right_G_min'] = test_features['left_block_G_min'] - test_features['right_block_G_min']\n",
"train_features_10['lelf_right_B_min'] = test_features['left_block_B_min'] - test_features['right_block_B_min']\n",
"\n",
"train_features_10['lelf_right_H_min'] = test_features['left_block_H_min'] - test_features['right_block_H_min']\n",
"# train_features_10['lelf_right_S_min'] = test_features['left_block_S_min'] - test_features['right_block_S_min']\n",
"train_features_10['lelf_right_V_min'] = test_features['left_block_V_min'] - test_features['right_block_V_min']\n",
"\n",
"train_features_10['lelf_right_l_min'] = test_features['left_block_l_min'] - test_features['right_block_l_min']\n",
"train_features_10['lelf_right_a_min'] = test_features['left_block_a_min'] - test_features['right_block_a_min']\n",
"train_features_10['lelf_right_b_min'] = test_features['left_block_b_min'] - test_features['right_block_b_min']\n",
"\n",
"# train_features_10['left_grayValue']= test_features['left_grayValue'];\n",
"# train_features_10['left_grayStddevValue']= test_features['left_grayStddevValue'];\n",
"# train_features_10['left_grayHist']= test_features['left_grayHist'];\n",
"# train_features_10['left_grayMax']= test_features['left_grayMax'];\n",
"# train_features_10['left_grayMin']= test_features['left_grayMin'];\n",
"\n",
"# train_features_10['right_grayValue']= test_features['right_grayValue'];\n",
"# train_features_10['right_grayStddevValue']= test_features['right_grayStddevValue'];\n",
"# train_features_10['right_grayHist']= test_features['right_grayHist'];\n",
"# train_features_10['right_grayMax']= test_features['right_grayMax'];\n",
"# train_features_10['right_grayMin']= test_features['right_grayMin'];\n",
"\n",
"# train_features_10['lelf_R_stddev'] = test_features['left_block_R_stddev'] \n",
"# train_features_10['lelf_G_stddev'] = test_features['left_block_G_stddev'] \n",
"# train_features_10['lelf_B_stddev'] = test_features['left_block_B_stddev'] \n",
"\n",
"# train_features_10['left_block_R_min'] = test_features['left_block_R_min'] \n",
"# train_features_10['left_block_G_min'] = test_features['left_block_G_min'] \n",
"# train_features_10['left_block_B_min'] = test_features['left_block_B_min'] \n",
"\n",
"\n",
"\n",
"train_features_10['lelf_right_gray_value'] = test_features['left_grayValue'] - test_features['right_grayValue']\n",
"train_features_10['lelf_right_gray_stddev'] = test_features['left_grayStddevValue'] - test_features['right_grayStddevValue']\n",
"train_features_10['lelf_right_gray_hist'] = test_features['left_grayHist'] - test_features['right_grayHist']\n",
"train_features_10['lelf_right_gray_max'] = test_features['left_grayMax'] - test_features['right_grayMax']\n",
"train_features_10['lelf_right_gray_min'] = test_features['left_grayMin'] - test_features['right_grayMin']\n",
"\n",
"train_features_10.describe()\n",
"\n",
"\n",
"# feature = feature.drop(\"left_block_H_hist\",axis=1)\n",
"# feature = feature.drop(\"right_block_H_hist\",axis=1)\n",
"# feature = feature.drop(\"whiteBlock_H_hist\",axis=1)\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
" \n",
"test_features = test_features.drop(\"left_block_H\",axis=1)\n",
"test_features = test_features.drop(\"left_block_S\",axis=1)\n",
"test_features = test_features.drop(\"left_block_V\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"right_block_H\",axis=1)\n",
"test_features = test_features.drop(\"right_block_S\",axis=1)\n",
"test_features = test_features.drop(\"right_block_V\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"whiteBlock_H\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_S\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_V\",axis=1)\n",
"\n",
"\n",
"test_features = test_features.drop(\"left_block_H_stddev\",axis=1)\n",
"test_features = test_features.drop(\"left_block_S_stddev\",axis=1)\n",
"test_features = test_features.drop(\"left_block_V_stddev\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"right_block_H_stddev\",axis=1)\n",
"test_features = test_features.drop(\"right_block_S_stddev\",axis=1)\n",
"test_features = test_features.drop(\"right_block_V_stddev\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"whiteBlock_H_stddev\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_S_stddev\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_V_stddev\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"left_block_H_hist\",axis=1)\n",
"test_features = test_features.drop(\"left_block_S_hist\",axis=1)\n",
"test_features = test_features.drop(\"left_block_V_hist\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"right_block_H_hist\",axis=1)\n",
"test_features = test_features.drop(\"right_block_S_hist\",axis=1)\n",
"test_features = test_features.drop(\"right_block_V_hist\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"whiteBlock_H_hist\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_S_hist\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_V_hist\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"left_block_H_max\",axis=1)\n",
"test_features = test_features.drop(\"left_block_S_max\",axis=1)\n",
"test_features = test_features.drop(\"left_block_V_max\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"right_block_H_max\",axis=1)\n",
"test_features = test_features.drop(\"right_block_S_max\",axis=1)\n",
"test_features = test_features.drop(\"right_block_V_max\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"whiteBlock_H_max\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_S_max\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_V_max\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"left_block_H_min\",axis=1)\n",
"test_features = test_features.drop(\"left_block_S_min\",axis=1)\n",
"test_features = test_features.drop(\"left_block_V_min\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"right_block_H_min\",axis=1)\n",
"test_features = test_features.drop(\"right_block_S_min\",axis=1)\n",
"test_features = test_features.drop(\"right_block_V_min\",axis=1)\n",
"\n",
"test_features = test_features.drop(\"whiteBlock_H_min\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_S_min\",axis=1)\n",
"test_features = test_features.drop(\"whiteBlock_V_min\",axis=1)\n",
" \n",
" \n",
"test_features['lelf_right_R'] = test_features['left_block_R'] - test_features['right_block_R']\n",
"test_features['lelf_right_G'] = test_features['left_block_G'] - test_features['right_block_G']\n",
"test_features['lelf_right_B'] = test_features['left_block_B'] - test_features['right_block_B']\n",
"\n",
"# test_features['lelf_right_H'] = test_features['left_block_H'] - test_features['right_block_H']\n",
"# test_features['lelf_right_S'] = test_features['left_block_S'] - test_features['right_block_S']\n",
"# test_features['lelf_right_V'] = test_features['left_block_V'] - test_features['right_block_V']\n",
"\n",
"# test_features['lelf_right_l'] = test_features['left_block_l'] - test_features['right_block_l']\n",
"# test_features['lelf_right_a'] = test_features['left_block_a'] - test_features['right_block_a']\n",
"# test_features['lelf_right_b'] = test_features['left_block_b'] - test_features['right_block_b']\n",
"\n",
"# test_features['lelf_right_R_stddev'] = test_features['left_block_R_stddev'] - test_features['right_block_R_stddev']\n",
"# test_features['lelf_right_G_stddev'] = test_features['left_block_G_stddev'] - test_features['right_block_G_stddev']\n",
"# test_features['lelf_right_B_stddev'] = test_features['left_block_B_stddev'] - test_features['right_block_B_stddev']\n",
"\n",
"# test_features['lelf_right_H_stddev'] = test_features['left_block_H_stddev'] - test_features['right_block_H_stddev']\n",
"# test_features['lelf_right_S_stddev'] = test_features['left_block_S_stddev'] - test_features['right_block_S_stddev']\n",
"# test_features['lelf_right_V_stddev'] = test_features['left_block_V_stddev'] - test_features['right_block_V_stddev']\n",
"\n",
"# test_features['lelf_right_l_stddev'] = test_features['left_block_l_stddev'] - test_features['right_block_l_stddev']\n",
"# test_features['lelf_right_a_stddev'] = test_features['left_block_a_stddev'] - test_features['right_block_a_stddev']\n",
"# test_features['lelf_right_b_stddev'] = test_features['left_block_b_stddev'] - test_features['right_block_b_stddev']\n",
"\n",
"# test_features['lelf_right_R_hist'] = test_features['left_block_R_hist'] - test_features['right_block_R_hist']\n",
"# test_features['lelf_right_G_hist'] = test_features['left_block_G_hist'] - test_features['right_block_G_hist']\n",
"# test_features['lelf_right_B_hist'] = test_features['left_block_B_hist'] - test_features['right_block_B_hist']\n",
"\n",
"# test_features['lelf_right_H_hist'] = test_features['left_block_H_hist'] - test_features['right_block_H_hist']\n",
"# test_features['lelf_right_S_hist'] = test_features['left_block_S_hist'] - test_features['right_block_S_hist']\n",
"# test_features['lelf_right_V_hist'] = test_features['left_block_V_hist'] - test_features['right_block_V_hist']\n",
"\n",
"# test_features['lelf_right_l_hist'] = test_features['left_block_l_hist'] - test_features['right_block_l_hist']\n",
"# test_features['lelf_right_a_hist'] = test_features['left_block_a_hist'] - test_features['right_block_a_hist']\n",
"# test_features['lelf_right_b_hist'] = test_features['left_block_b_hist'] - test_features['right_block_b_hist']\n",
"\n",
"# test_features['lelf_right_R_max'] = test_features['left_block_R_max'] - test_features['right_block_R_max']\n",
"# test_features['lelf_right_G_max'] = test_features['left_block_G_max'] - test_features['right_block_G_max']\n",
"# test_features['lelf_right_B_max'] = test_features['left_block_B_max'] - test_features['right_block_B_max']\n",
"\n",
"# test_features['lelf_right_H_max'] = test_features['left_block_H_max'] - test_features['right_block_H_max']\n",
"# test_features['lelf_right_S_max'] = test_features['left_block_S_max'] - test_features['right_block_S_max']\n",
"# test_features['lelf_right_V_max'] = test_features['left_block_V_max'] - test_features['right_block_V_max']\n",
"\n",
"# test_features['lelf_right_l_max'] = test_features['left_block_l_max'] - test_features['right_block_l_max']\n",
"# test_features['lelf_right_a_max'] = test_features['left_block_a_max'] - test_features['right_block_a_max']\n",
"# test_features['lelf_right_b_max'] = test_features['left_block_b_max'] - test_features['right_block_b_max']\n",
"\n",
"\n",
"\n",
"# test_features['lelf_right_R_min'] = test_features['left_block_R_min'] - test_features['right_block_R_min']\n",
"# test_features['lelf_right_G_min'] = test_features['left_block_G_min'] - test_features['right_block_G_min']\n",
"# test_features['lelf_right_B_min'] = test_features['left_block_B_min'] - test_features['right_block_B_min']\n",
"\n",
"# test_features['lelf_right_H_min'] = test_features['left_block_H_min'] - test_features['right_block_H_min']\n",
"# test_features['lelf_right_S_min'] = test_features['left_block_S_min'] - test_features['right_block_S_min']\n",
"# test_features['lelf_right_V_min'] = test_features['left_block_V_min'] - test_features['right_block_V_min']\n",
"\n",
"# test_features['lelf_right_l_min'] = test_features['left_block_l_min'] - test_features['right_block_l_min']\n",
"# test_features['lelf_right_a_min'] = test_features['left_block_a_min'] - test_features['right_block_a_min']\n",
"# test_features['lelf_right_b_min'] = test_features['left_block_b_min'] - test_features['right_block_b_min']\n",
"\n",
"test_features['lelf_right_gray_value'] = test_features['left_grayValue'] - test_features['right_grayValue']\n",
"test_features['lelf_right_gray_stddev'] = test_features['left_grayStddevValue'] - test_features['right_grayStddevValue']\n",
"test_features['lelf_right_gray_hist'] = test_features['left_grayHist'] - test_features['right_grayHist']\n",
"test_features['lelf_right_gray_max'] = test_features['left_grayMax'] - test_features['right_grayMax']\n",
"test_features['lelf_right_gray_min'] = test_features['left_grayMin'] - test_features['right_grayMin']\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"pred = clf_svm_linear.predict(train_features_10)\n",
"test_features_gray_stddev = test_features['left_grayStddevValue']\n",
"test_features_np = np.ndarray(test_features_gray_stddev.shape,dtype = np.float32)\n",
"\n",
"test_features_np = test_features_gray_stddev.values\n",
"print \"svm linear accuracy score:\" , accuracy_score(test_labels,pred)\n",
"print \"f1 score:\" , f1_score(test_labels,pred,average='micro')\n",
"print \"recall_score :\" , recall_score(test_labels,pred,average='micro')\n",
"print \"precision_score :\" , precision_score(test_labels,pred,average='micro')\n",
"\n",
"for i in range(0, len(test_features_np)):\n",
" if test_features_np[i] < 3:\n",
" pred[i] =0\n",
"print \"svm linear accuracy score:\" , accuracy_score(test_labels,pred)\n",
"print \"f1 score:\" , f1_score(test_labels,pred,average='micro')\n",
"print \"recall_score :\" , recall_score(test_labels,pred,average='micro')\n",
"print \"precision_score :\" , precision_score(test_labels,pred,average='micro')\n",
"\n",
"\n",
"print(\"preds:\",pred[120:130])\n",
"print('trues:\\n',test_labels[120:130])\n",
"test_labels_np = np.ndarray(test_labels.shape,dtype= np.int32)\n",
"test_labels_np = test_labels.values\n",
"print(test_labels_np[0])\n",
"all_counter = 0\n",
"counter = 0\n",
"for i in range(0 ,len(pred) ):\n",
" if (pred[i] == 4 or (pred[i] == 4 and test_labels_np[i] ==4 )or test_labels_np[i] ==4 ) :\n",
" all_counter = all_counter + 1\n",
" if pred[i] != test_labels_np[i] :\n",
" counter = counter+1\n",
" print(pred[i] , test_labels_np[i])\n",
"print(len(pred),all_counter, counter) \n",
"all_counter = 0\n",
"counter = 0\n",
"for i in range(0 ,len(pred) ):\n",
" if pred[i] != test_labels_np[i] :\n",
" counter = counter+1\n",
" print(pred[i] , test_labels_np[i])\n",
"print(len(pred),all_counter, counter) \n",
"\n",
"# print \"svm linear accuracy score:\" , accuracy_score(test_labels,pred)\n",
"# print \"f1 score:\" , f1_score(test_labels,pred,average='micro')\n",
"# print \"recall_score :\" , recall_score(test_labels,pred,average='micro')\n",
"# print \"precision_score :\" , precision_score(test_labels,pred,average='micro')\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## from sklearn.metrics import recall_score\n",
"from sklearn.metrics import precision_score\n",
"print \"accuracy score:\" , accuracy_score(y_test,pred)\n",
"print \"recall_score :\" , recall_score(y_test,pred,average='macro')\n",
"print \"precision_score :\" , precision_score(y_test,pred,average='macro')\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from sklearn_porter import Porter\n",
"\n",
"porter_java = Porter(clf_svm, language='java').export()\n",
"porter_c = Porter(clf_svm, language='c').export()\n",
"\n",
"f = open(\"ov_svm_c.txt\",'wb')\n",
"f.write(porter_c)\n",
"f.close()\n",
"\n",
"f = open(\"ov_svm_java.txt\",'wb')\n",
"f.write(porter_java)\n",
"f.close()"
]
}
],
"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.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}