rm(list = ls())
###############################input data_1 
###############################input data_1 
dir_path <- "C:\\Users\\liyix\\OneDrive\\Desktop\\data_for_model\\"
dir_path_name <- dir(dir_path,pattern = ".*.csv",full.names = T)
#dir_path_name
###############################merge data 
data_train <- read.csv(grep("training_data.csv",dir_path_name,value = T),header = T,stringsAsFactors = F)
dim(data_train) #[1] 2357  148
## [1] 2357  148
#View(data_train)
data_test <- read.csv(grep("test_data.csv",dir_path_name,value = T),header = T,stringsAsFactors = F)
#dim(data_test) #[1] 1009  150
#table(data_train$Freq) #    0    1 2057  300 
#table(data_test$Freq) #   0   1 894 115 
#View(head(data_test))
#setdiff(colnames(data_test),colnames(data_train)) #[1] "Drug"  "Virus"
#setdiff(colnames(data_train),colnames(data_test)) #character(0) 
#colnames(data_train)[ncol(data_train)] #[1] "Freq"
################################
#data_new <- data_test
#data_train <- unique(data_train)
###model
###################################model
library(xgboost)
library(ROCR)
library(pROC)
## Type 'citation("pROC")' for a citation.
## 
## 载入程辑包:'pROC'
## The following objects are masked from 'package:stats':
## 
##     cov, smooth, var
library(Matrix)
library(ROSE)
## Loaded ROSE 0.0-4
library(DMwR)
## 载入需要的程辑包:lattice
## 载入需要的程辑包:grid
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
#colnames(data_train)[ncol(data_train)] #[1] "Freq"
colnames(data_train)[ncol(data_train)] <- "num"
data_train <- data.frame(sapply(data_train, as.numeric))
#str(data_train$num)
############################################################################test_cross_validation
#dim(data_train) #[1] 2357  148
#View(head(data_train))
#colnames(data_train)
#table(data_train$num) # 0    1 2057  300 
#table(data_train[ncol(data_train)]) ## 0    1 2057  300
testdata_ori <- data_train[sample(nrow(data_train),size = floor(nrow(data_train)*0.3),replace = F),]
traindata_ori <- data_train[-match(row.names(testdata_ori),row.names(data_train)),]
#intersect(row.names(testdata_ori),row.names(traindata_ori)) #character(0)
traindata_ori <- ovun.sample(num ~ ., data = traindata_ori, method = "over")$data
#dim(testdata_ori);dim(traindata_ori) #[1] 707 148 [1] 1650  148
n_col_newdata <- ncol(data_train)
train_label_ori = traindata_ori[,n_col_newdata]
train_matrix_ori =  as(as.matrix(traindata_ori[,-n_col_newdata]), "dgCMatrix")
class(train_matrix_ori);dim(train_matrix_ori) #[1][1] "dgCMatrix" attr(,"package") [1] "Matrix" #[1] 3487   50
## [1] "dgCMatrix"
## attr(,"package")
## [1] "Matrix"
## [1] 2873  147
val_label_ori = testdata_ori[,n_col_newdata] 
val_matrix_ori = as(as.matrix(testdata_ori[,-n_col_newdata]), "dgCMatrix")
#parameters
xgb_params = list(objective   = "binary:logistic",
                  eval_metric = "error",
                  max_depth   = 3,
                  eta         = 0.01,
                  gammma      = 1,
                  colsample_bytree = 0.5,
                  min_child_weight = 1)
#model
#class(train_matrix_ori)
#class(train_label_ori)
bst_model_ori = xgboost(params = xgb_params, data = train_matrix_ori, label = train_label_ori,nrounds = 1000)
## [15:46:22] WARNING: amalgamation/../src/learner.cc:573: 
## Parameters: { "gammma" } might not be used.
## 
##   This may not be accurate due to some parameters are only used in language bindings but
##   passed down to XGBoost core.  Or some parameters are not used but slip through this
##   verification. Please open an issue if you find above cases.
## 
## 
## [1]  train-error:0.336930 
## [2]  train-error:0.311869 
## [3]  train-error:0.285416 
## [4]  train-error:0.258267 
## [5]  train-error:0.265924 
## [6]  train-error:0.250957 
## [7]  train-error:0.249565 
## [8]  train-error:0.245388 
## [9]  train-error:0.250609 
## [10] train-error:0.246084 
## [11] train-error:0.247825 
## [12] train-error:0.229029 
## [13] train-error:0.222416 
## [14] train-error:0.220327 
## [15] train-error:0.202576 
## [16] train-error:0.215454 
## [17] train-error:0.206056 
## [18] train-error:0.211277 
## [19] train-error:0.206753 
## [20] train-error:0.222068 
## [21] train-error:0.221719 
## [22] train-error:0.183084 
## [23] train-error:0.185868 
## [24] train-error:0.184128 
## [25] train-error:0.191438 
## [26] train-error:0.190741 
## [27] train-error:0.215802 
## [28] train-error:0.189697 
## [29] train-error:0.210581 
## [30] train-error:0.212670 
## [31] train-error:0.209189 
## [32] train-error:0.205012 
## [33] train-error:0.208841 
## [34] train-error:0.210233 
## [35] train-error:0.214410 
## [36] train-error:0.214062 
## [37] train-error:0.214758 
## [38] train-error:0.215454 
## [39] train-error:0.217891 
## [40] train-error:0.219631 
## [41] train-error:0.221023 
## [42] train-error:0.225200 
## [43] train-error:0.221371 
## [44] train-error:0.221023 
## [45] train-error:0.223112 
## [46] train-error:0.228333 
## [47] train-error:0.225896 
## [48] train-error:0.225896 
## [49] train-error:0.222764 
## [50] train-error:0.222764 
## [51] train-error:0.223808 
## [52] train-error:0.224156 
## [53] train-error:0.226592 
## [54] train-error:0.223460 
## [55] train-error:0.226244 
## [56] train-error:0.227985 
## [57] train-error:0.227637 
## [58] train-error:0.225548 
## [59] train-error:0.224852 
## [60] train-error:0.224156 
## [61] train-error:0.225548 
## [62] train-error:0.221371 
## [63] train-error:0.221371 
## [64] train-error:0.220675 
## [65] train-error:0.221719 
## [66] train-error:0.223112 
## [67] train-error:0.222416 
## [68] train-error:0.223112 
## [69] train-error:0.223112 
## [70] train-error:0.221371 
## [71] train-error:0.219979 
## [72] train-error:0.216846 
## [73] train-error:0.221719 
## [74] train-error:0.221371 
## [75] train-error:0.215802 
## [76] train-error:0.220327 
## [77] train-error:0.215802 
## [78] train-error:0.218587 
## [79] train-error:0.216150 
## [80] train-error:0.216846 
## [81] train-error:0.217543 
## [82] train-error:0.217543 
## [83] train-error:0.219283 
## [84] train-error:0.218587 
## [85] train-error:0.217891 
## [86] train-error:0.219283 
## [87] train-error:0.220675 
## [88] train-error:0.218587 
## [89] train-error:0.214410 
## [90] train-error:0.215454 
## [91] train-error:0.215106 
## [92] train-error:0.215106 
## [93] train-error:0.214062 
## [94] train-error:0.214062 
## [95] train-error:0.211974 
## [96] train-error:0.213366 
## [97] train-error:0.212322 
## [98] train-error:0.207797 
## [99] train-error:0.208145 
## [100]    train-error:0.208145 
## [101]    train-error:0.208493 
## [102]    train-error:0.209189 
## [103]    train-error:0.209189 
## [104]    train-error:0.210233 
## [105]    train-error:0.210929 
## [106]    train-error:0.210929 
## [107]    train-error:0.210581 
## [108]    train-error:0.209537 
## [109]    train-error:0.210581 
## [110]    train-error:0.210581 
## [111]    train-error:0.211277 
## [112]    train-error:0.211625 
## [113]    train-error:0.211974 
## [114]    train-error:0.211625 
## [115]    train-error:0.209885 
## [116]    train-error:0.209885 
## [117]    train-error:0.209885 
## [118]    train-error:0.209537 
## [119]    train-error:0.209885 
## [120]    train-error:0.209537 
## [121]    train-error:0.208493 
## [122]    train-error:0.205360 
## [123]    train-error:0.206404 
## [124]    train-error:0.199095 
## [125]    train-error:0.199095 
## [126]    train-error:0.199095 
## [127]    train-error:0.199095 
## [128]    train-error:0.195614 
## [129]    train-error:0.195614 
## [130]    train-error:0.195266 
## [131]    train-error:0.195614 
## [132]    train-error:0.197007 
## [133]    train-error:0.199791 
## [134]    train-error:0.196659 
## [135]    train-error:0.194918 
## [136]    train-error:0.190393 
## [137]    train-error:0.189697 
## [138]    train-error:0.192134 
## [139]    train-error:0.189001 
## [140]    train-error:0.190045 
## [141]    train-error:0.190741 
## [142]    train-error:0.190045 
## [143]    train-error:0.190045 
## [144]    train-error:0.190045 
## [145]    train-error:0.190045 
## [146]    train-error:0.189349 
## [147]    train-error:0.188653 
## [148]    train-error:0.187957 
## [149]    train-error:0.189001 
## [150]    train-error:0.188653 
## [151]    train-error:0.188653 
## [152]    train-error:0.187957 
## [153]    train-error:0.187957 
## [154]    train-error:0.187957 
## [155]    train-error:0.187609 
## [156]    train-error:0.187609 
## [157]    train-error:0.185520 
## [158]    train-error:0.185172 
## [159]    train-error:0.185520 
## [160]    train-error:0.186565 
## [161]    train-error:0.186913 
## [162]    train-error:0.186565 
## [163]    train-error:0.187957 
## [164]    train-error:0.188305 
## [165]    train-error:0.187609 
## [166]    train-error:0.186913 
## [167]    train-error:0.187261 
## [168]    train-error:0.187261 
## [169]    train-error:0.187261 
## [170]    train-error:0.186913 
## [171]    train-error:0.186913 
## [172]    train-error:0.183780 
## [173]    train-error:0.184128 
## [174]    train-error:0.184476 
## [175]    train-error:0.184476 
## [176]    train-error:0.184476 
## [177]    train-error:0.184476 
## [178]    train-error:0.183780 
## [179]    train-error:0.183780 
## [180]    train-error:0.184824 
## [181]    train-error:0.183432 
## [182]    train-error:0.183084 
## [183]    train-error:0.184476 
## [184]    train-error:0.185520 
## [185]    train-error:0.185520 
## [186]    train-error:0.184824 
## [187]    train-error:0.185172 
## [188]    train-error:0.183780 
## [189]    train-error:0.185868 
## [190]    train-error:0.184128 
## [191]    train-error:0.183780 
## [192]    train-error:0.183780 
## [193]    train-error:0.183084 
## [194]    train-error:0.183432 
## [195]    train-error:0.183084 
## [196]    train-error:0.183084 
## [197]    train-error:0.182040 
## [198]    train-error:0.182040 
## [199]    train-error:0.180995 
## [200]    train-error:0.180647 
## [201]    train-error:0.180995 
## [202]    train-error:0.180299 
## [203]    train-error:0.179951 
## [204]    train-error:0.179603 
## [205]    train-error:0.179951 
## [206]    train-error:0.179255 
## [207]    train-error:0.179255 
## [208]    train-error:0.179603 
## [209]    train-error:0.179951 
## [210]    train-error:0.180647 
## [211]    train-error:0.180995 
## [212]    train-error:0.179951 
## [213]    train-error:0.180299 
## [214]    train-error:0.179951 
## [215]    train-error:0.180647 
## [216]    train-error:0.180995 
## [217]    train-error:0.180995 
## [218]    train-error:0.180995 
## [219]    train-error:0.180995 
## [220]    train-error:0.180647 
## [221]    train-error:0.181344 
## [222]    train-error:0.181344 
## [223]    train-error:0.181344 
## [224]    train-error:0.179951 
## [225]    train-error:0.179951 
## [226]    train-error:0.180299 
## [227]    train-error:0.180299 
## [228]    train-error:0.180647 
## [229]    train-error:0.180647 
## [230]    train-error:0.180995 
## [231]    train-error:0.181344 
## [232]    train-error:0.181344 
## [233]    train-error:0.181692 
## [234]    train-error:0.181344 
## [235]    train-error:0.179951 
## [236]    train-error:0.180647 
## [237]    train-error:0.180995 
## [238]    train-error:0.181344 
## [239]    train-error:0.181692 
## [240]    train-error:0.180995 
## [241]    train-error:0.183084 
## [242]    train-error:0.183084 
## [243]    train-error:0.183084 
## [244]    train-error:0.180995 
## [245]    train-error:0.183084 
## [246]    train-error:0.183432 
## [247]    train-error:0.183084 
## [248]    train-error:0.183432 
## [249]    train-error:0.183432 
## [250]    train-error:0.184476 
## [251]    train-error:0.184128 
## [252]    train-error:0.184476 
## [253]    train-error:0.184824 
## [254]    train-error:0.184824 
## [255]    train-error:0.182388 
## [256]    train-error:0.184824 
## [257]    train-error:0.185172 
## [258]    train-error:0.186217 
## [259]    train-error:0.183780 
## [260]    train-error:0.182736 
## [261]    train-error:0.183084 
## [262]    train-error:0.182736 
## [263]    train-error:0.182040 
## [264]    train-error:0.182736 
## [265]    train-error:0.182736 
## [266]    train-error:0.183084 
## [267]    train-error:0.183084 
## [268]    train-error:0.183780 
## [269]    train-error:0.183084 
## [270]    train-error:0.182736 
## [271]    train-error:0.183780 
## [272]    train-error:0.183084 
## [273]    train-error:0.183084 
## [274]    train-error:0.182736 
## [275]    train-error:0.182736 
## [276]    train-error:0.182736 
## [277]    train-error:0.182736 
## [278]    train-error:0.182736 
## [279]    train-error:0.182040 
## [280]    train-error:0.181692 
## [281]    train-error:0.182040 
## [282]    train-error:0.182388 
## [283]    train-error:0.180995 
## [284]    train-error:0.181692 
## [285]    train-error:0.182040 
## [286]    train-error:0.179603 
## [287]    train-error:0.179951 
## [288]    train-error:0.180995 
## [289]    train-error:0.181344 
## [290]    train-error:0.180647 
## [291]    train-error:0.180647 
## [292]    train-error:0.180647 
## [293]    train-error:0.180647 
## [294]    train-error:0.181692 
## [295]    train-error:0.181692 
## [296]    train-error:0.181692 
## [297]    train-error:0.182040 
## [298]    train-error:0.182040 
## [299]    train-error:0.180299 
## [300]    train-error:0.180299 
## [301]    train-error:0.180647 
## [302]    train-error:0.180647 
## [303]    train-error:0.180647 
## [304]    train-error:0.180647 
## [305]    train-error:0.180647 
## [306]    train-error:0.180647 
## [307]    train-error:0.180995 
## [308]    train-error:0.180299 
## [309]    train-error:0.177863 
## [310]    train-error:0.177863 
## [311]    train-error:0.177515 
## [312]    train-error:0.178211 
## [313]    train-error:0.176819 
## [314]    train-error:0.176819 
## [315]    train-error:0.176819 
## [316]    train-error:0.177167 
## [317]    train-error:0.177167 
## [318]    train-error:0.177167 
## [319]    train-error:0.177167 
## [320]    train-error:0.177167 
## [321]    train-error:0.176819 
## [322]    train-error:0.175774 
## [323]    train-error:0.176819 
## [324]    train-error:0.176471 
## [325]    train-error:0.176819 
## [326]    train-error:0.175426 
## [327]    train-error:0.176123 
## [328]    train-error:0.176819 
## [329]    train-error:0.175426 
## [330]    train-error:0.175078 
## [331]    train-error:0.174730 
## [332]    train-error:0.176123 
## [333]    train-error:0.175774 
## [334]    train-error:0.175774 
## [335]    train-error:0.174034 
## [336]    train-error:0.175426 
## [337]    train-error:0.174034 
## [338]    train-error:0.175426 
## [339]    train-error:0.175426 
## [340]    train-error:0.175426 
## [341]    train-error:0.174730 
## [342]    train-error:0.174730 
## [343]    train-error:0.174034 
## [344]    train-error:0.174034 
## [345]    train-error:0.174034 
## [346]    train-error:0.174034 
## [347]    train-error:0.173686 
## [348]    train-error:0.174730 
## [349]    train-error:0.174730 
## [350]    train-error:0.174382 
## [351]    train-error:0.174382 
## [352]    train-error:0.173686 
## [353]    train-error:0.174034 
## [354]    train-error:0.173338 
## [355]    train-error:0.172990 
## [356]    train-error:0.172990 
## [357]    train-error:0.172990 
## [358]    train-error:0.172990 
## [359]    train-error:0.172990 
## [360]    train-error:0.172990 
## [361]    train-error:0.170901 
## [362]    train-error:0.170553 
## [363]    train-error:0.170205 
## [364]    train-error:0.168813 
## [365]    train-error:0.169509 
## [366]    train-error:0.169509 
## [367]    train-error:0.168465 
## [368]    train-error:0.167421 
## [369]    train-error:0.168117 
## [370]    train-error:0.167421 
## [371]    train-error:0.167073 
## [372]    train-error:0.167421 
## [373]    train-error:0.167073 
## [374]    train-error:0.166725 
## [375]    train-error:0.166725 
## [376]    train-error:0.163940 
## [377]    train-error:0.167073 
## [378]    train-error:0.167073 
## [379]    train-error:0.167073 
## [380]    train-error:0.167421 
## [381]    train-error:0.167073 
## [382]    train-error:0.167073 
## [383]    train-error:0.163940 
## [384]    train-error:0.164636 
## [385]    train-error:0.164288 
## [386]    train-error:0.164984 
## [387]    train-error:0.163940 
## [388]    train-error:0.163940 
## [389]    train-error:0.163940 
## [390]    train-error:0.163940 
## [391]    train-error:0.162896 
## [392]    train-error:0.163244 
## [393]    train-error:0.162548 
## [394]    train-error:0.161504 
## [395]    train-error:0.160111 
## [396]    train-error:0.159415 
## [397]    train-error:0.159763 
## [398]    train-error:0.159067 
## [399]    train-error:0.159415 
## [400]    train-error:0.159415 
## [401]    train-error:0.157675 
## [402]    train-error:0.156283 
## [403]    train-error:0.156283 
## [404]    train-error:0.152106 
## [405]    train-error:0.151758 
## [406]    train-error:0.153498 
## [407]    train-error:0.150714 
## [408]    train-error:0.151062 
## [409]    train-error:0.151758 
## [410]    train-error:0.151062 
## [411]    train-error:0.149321 
## [412]    train-error:0.149321 
## [413]    train-error:0.149669 
## [414]    train-error:0.149669 
## [415]    train-error:0.150017 
## [416]    train-error:0.149669 
## [417]    train-error:0.150017 
## [418]    train-error:0.148973 
## [419]    train-error:0.149321 
## [420]    train-error:0.149669 
## [421]    train-error:0.149321 
## [422]    train-error:0.149321 
## [423]    train-error:0.148625 
## [424]    train-error:0.148277 
## [425]    train-error:0.148625 
## [426]    train-error:0.148625 
## [427]    train-error:0.148625 
## [428]    train-error:0.148625 
## [429]    train-error:0.148973 
## [430]    train-error:0.148625 
## [431]    train-error:0.148625 
## [432]    train-error:0.148973 
## [433]    train-error:0.148973 
## [434]    train-error:0.148973 
## [435]    train-error:0.147581 
## [436]    train-error:0.147929 
## [437]    train-error:0.147581 
## [438]    train-error:0.147233 
## [439]    train-error:0.147581 
## [440]    train-error:0.147929 
## [441]    train-error:0.146189 
## [442]    train-error:0.146885 
## [443]    train-error:0.146885 
## [444]    train-error:0.146189 
## [445]    train-error:0.146537 
## [446]    train-error:0.146537 
## [447]    train-error:0.145493 
## [448]    train-error:0.146189 
## [449]    train-error:0.147581 
## [450]    train-error:0.147929 
## [451]    train-error:0.146885 
## [452]    train-error:0.147233 
## [453]    train-error:0.146885 
## [454]    train-error:0.146189 
## [455]    train-error:0.146189 
## [456]    train-error:0.145841 
## [457]    train-error:0.145841 
## [458]    train-error:0.145841 
## [459]    train-error:0.143404 
## [460]    train-error:0.143404 
## [461]    train-error:0.143752 
## [462]    train-error:0.142708 
## [463]    train-error:0.143056 
## [464]    train-error:0.143056 
## [465]    train-error:0.142360 
## [466]    train-error:0.142012 
## [467]    train-error:0.142360 
## [468]    train-error:0.143056 
## [469]    train-error:0.143056 
## [470]    train-error:0.142708 
## [471]    train-error:0.143752 
## [472]    train-error:0.142012 
## [473]    train-error:0.142360 
## [474]    train-error:0.142360 
## [475]    train-error:0.141316 
## [476]    train-error:0.141316 
## [477]    train-error:0.140271 
## [478]    train-error:0.140271 
## [479]    train-error:0.140271 
## [480]    train-error:0.139923 
## [481]    train-error:0.140271 
## [482]    train-error:0.139575 
## [483]    train-error:0.139575 
## [484]    train-error:0.139227 
## [485]    train-error:0.139227 
## [486]    train-error:0.139227 
## [487]    train-error:0.139575 
## [488]    train-error:0.139227 
## [489]    train-error:0.139227 
## [490]    train-error:0.139575 
## [491]    train-error:0.139575 
## [492]    train-error:0.139575 
## [493]    train-error:0.139575 
## [494]    train-error:0.139575 
## [495]    train-error:0.139227 
## [496]    train-error:0.139227 
## [497]    train-error:0.138879 
## [498]    train-error:0.138531 
## [499]    train-error:0.138183 
## [500]    train-error:0.138183 
## [501]    train-error:0.138531 
## [502]    train-error:0.137835 
## [503]    train-error:0.138183 
## [504]    train-error:0.138183 
## [505]    train-error:0.137835 
## [506]    train-error:0.137487 
## [507]    train-error:0.137835 
## [508]    train-error:0.137487 
## [509]    train-error:0.136443 
## [510]    train-error:0.136791 
## [511]    train-error:0.136443 
## [512]    train-error:0.136443 
## [513]    train-error:0.136095 
## [514]    train-error:0.135747 
## [515]    train-error:0.136095 
## [516]    train-error:0.135747 
## [517]    train-error:0.135399 
## [518]    train-error:0.135399 
## [519]    train-error:0.135747 
## [520]    train-error:0.134354 
## [521]    train-error:0.134006 
## [522]    train-error:0.133658 
## [523]    train-error:0.133310 
## [524]    train-error:0.132266 
## [525]    train-error:0.132266 
## [526]    train-error:0.132266 
## [527]    train-error:0.132266 
## [528]    train-error:0.132266 
## [529]    train-error:0.129829 
## [530]    train-error:0.131570 
## [531]    train-error:0.132614 
## [532]    train-error:0.130178 
## [533]    train-error:0.129481 
## [534]    train-error:0.129133 
## [535]    train-error:0.129133 
## [536]    train-error:0.129133 
## [537]    train-error:0.129133 
## [538]    train-error:0.128785 
## [539]    train-error:0.129133 
## [540]    train-error:0.129133 
## [541]    train-error:0.129133 
## [542]    train-error:0.129133 
## [543]    train-error:0.129133 
## [544]    train-error:0.129133 
## [545]    train-error:0.129133 
## [546]    train-error:0.129133 
## [547]    train-error:0.128785 
## [548]    train-error:0.128785 
## [549]    train-error:0.128785 
## [550]    train-error:0.128437 
## [551]    train-error:0.128089 
## [552]    train-error:0.128089 
## [553]    train-error:0.128437 
## [554]    train-error:0.128437 
## [555]    train-error:0.128089 
## [556]    train-error:0.127741 
## [557]    train-error:0.127741 
## [558]    train-error:0.127741 
## [559]    train-error:0.127741 
## [560]    train-error:0.127741 
## [561]    train-error:0.128089 
## [562]    train-error:0.128785 
## [563]    train-error:0.128437 
## [564]    train-error:0.128089 
## [565]    train-error:0.127741 
## [566]    train-error:0.127741 
## [567]    train-error:0.127045 
## [568]    train-error:0.128089 
## [569]    train-error:0.128089 
## [570]    train-error:0.128089 
## [571]    train-error:0.128089 
## [572]    train-error:0.127393 
## [573]    train-error:0.127741 
## [574]    train-error:0.128089 
## [575]    train-error:0.128437 
## [576]    train-error:0.128437 
## [577]    train-error:0.128437 
## [578]    train-error:0.128437 
## [579]    train-error:0.128089 
## [580]    train-error:0.122868 
## [581]    train-error:0.122868 
## [582]    train-error:0.122868 
## [583]    train-error:0.122520 
## [584]    train-error:0.122868 
## [585]    train-error:0.123564 
## [586]    train-error:0.123564 
## [587]    train-error:0.124260 
## [588]    train-error:0.124260 
## [589]    train-error:0.123912 
## [590]    train-error:0.122172 
## [591]    train-error:0.122172 
## [592]    train-error:0.122172 
## [593]    train-error:0.121476 
## [594]    train-error:0.121824 
## [595]    train-error:0.121476 
## [596]    train-error:0.120432 
## [597]    train-error:0.120432 
## [598]    train-error:0.119735 
## [599]    train-error:0.119735 
## [600]    train-error:0.119735 
## [601]    train-error:0.120780 
## [602]    train-error:0.120780 
## [603]    train-error:0.120780 
## [604]    train-error:0.120780 
## [605]    train-error:0.120780 
## [606]    train-error:0.118343 
## [607]    train-error:0.117995 
## [608]    train-error:0.117647 
## [609]    train-error:0.117647 
## [610]    train-error:0.118343 
## [611]    train-error:0.114514 
## [612]    train-error:0.114514 
## [613]    train-error:0.113818 
## [614]    train-error:0.109641 
## [615]    train-error:0.109293 
## [616]    train-error:0.108945 
## [617]    train-error:0.108249 
## [618]    train-error:0.108249 
## [619]    train-error:0.108249 
## [620]    train-error:0.108945 
## [621]    train-error:0.108249 
## [622]    train-error:0.108249 
## [623]    train-error:0.108249 
## [624]    train-error:0.107901 
## [625]    train-error:0.107901 
## [626]    train-error:0.108249 
## [627]    train-error:0.108597 
## [628]    train-error:0.108597 
## [629]    train-error:0.108945 
## [630]    train-error:0.108597 
## [631]    train-error:0.108249 
## [632]    train-error:0.106857 
## [633]    train-error:0.103724 
## [634]    train-error:0.103376 
## [635]    train-error:0.103376 
## [636]    train-error:0.103376 
## [637]    train-error:0.103376 
## [638]    train-error:0.102680 
## [639]    train-error:0.102332 
## [640]    train-error:0.102680 
## [641]    train-error:0.102332 
## [642]    train-error:0.102680 
## [643]    train-error:0.101984 
## [644]    train-error:0.100940 
## [645]    train-error:0.100940 
## [646]    train-error:0.100940 
## [647]    train-error:0.100592 
## [648]    train-error:0.101288 
## [649]    train-error:0.101288 
## [650]    train-error:0.100592 
## [651]    train-error:0.100940 
## [652]    train-error:0.100592 
## [653]    train-error:0.100940 
## [654]    train-error:0.103724 
## [655]    train-error:0.103376 
## [656]    train-error:0.103376 
## [657]    train-error:0.103724 
## [658]    train-error:0.103724 
## [659]    train-error:0.100244 
## [660]    train-error:0.100592 
## [661]    train-error:0.101288 
## [662]    train-error:0.100940 
## [663]    train-error:0.100940 
## [664]    train-error:0.101288 
## [665]    train-error:0.100940 
## [666]    train-error:0.100244 
## [667]    train-error:0.100592 
## [668]    train-error:0.100940 
## [669]    train-error:0.100940 
## [670]    train-error:0.101288 
## [671]    train-error:0.101288 
## [672]    train-error:0.101636 
## [673]    train-error:0.101636 
## [674]    train-error:0.100592 
## [675]    train-error:0.100244 
## [676]    train-error:0.100940 
## [677]    train-error:0.100940 
## [678]    train-error:0.100940 
## [679]    train-error:0.100940 
## [680]    train-error:0.101288 
## [681]    train-error:0.100940 
## [682]    train-error:0.100592 
## [683]    train-error:0.099896 
## [684]    train-error:0.099199 
## [685]    train-error:0.098851 
## [686]    train-error:0.099199 
## [687]    train-error:0.098851 
## [688]    train-error:0.099199 
## [689]    train-error:0.098851 
## [690]    train-error:0.098851 
## [691]    train-error:0.099199 
## [692]    train-error:0.099199 
## [693]    train-error:0.099199 
## [694]    train-error:0.099548 
## [695]    train-error:0.099548 
## [696]    train-error:0.099548 
## [697]    train-error:0.098851 
## [698]    train-error:0.099896 
## [699]    train-error:0.099896 
## [700]    train-error:0.099896 
## [701]    train-error:0.099548 
## [702]    train-error:0.099896 
## [703]    train-error:0.099896 
## [704]    train-error:0.099896 
## [705]    train-error:0.099896 
## [706]    train-error:0.099548 
## [707]    train-error:0.099199 
## [708]    train-error:0.099896 
## [709]    train-error:0.099548 
## [710]    train-error:0.099548 
## [711]    train-error:0.099548 
## [712]    train-error:0.099548 
## [713]    train-error:0.099548 
## [714]    train-error:0.099199 
## [715]    train-error:0.099199 
## [716]    train-error:0.099199 
## [717]    train-error:0.098851 
## [718]    train-error:0.098851 
## [719]    train-error:0.098503 
## [720]    train-error:0.098503 
## [721]    train-error:0.098503 
## [722]    train-error:0.098503 
## [723]    train-error:0.098851 
## [724]    train-error:0.098851 
## [725]    train-error:0.098503 
## [726]    train-error:0.098851 
## [727]    train-error:0.098851 
## [728]    train-error:0.098503 
## [729]    train-error:0.098503 
## [730]    train-error:0.098503 
## [731]    train-error:0.098155 
## [732]    train-error:0.098503 
## [733]    train-error:0.098503 
## [734]    train-error:0.098503 
## [735]    train-error:0.098503 
## [736]    train-error:0.098155 
## [737]    train-error:0.098155 
## [738]    train-error:0.098155 
## [739]    train-error:0.098155 
## [740]    train-error:0.098155 
## [741]    train-error:0.098155 
## [742]    train-error:0.097807 
## [743]    train-error:0.095023 
## [744]    train-error:0.094675 
## [745]    train-error:0.094675 
## [746]    train-error:0.094675 
## [747]    train-error:0.094675 
## [748]    train-error:0.095023 
## [749]    train-error:0.094675 
## [750]    train-error:0.095371 
## [751]    train-error:0.095023 
## [752]    train-error:0.094675 
## [753]    train-error:0.095023 
## [754]    train-error:0.092238 
## [755]    train-error:0.092586 
## [756]    train-error:0.092586 
## [757]    train-error:0.092238 
## [758]    train-error:0.092238 
## [759]    train-error:0.092238 
## [760]    train-error:0.092238 
## [761]    train-error:0.091890 
## [762]    train-error:0.092238 
## [763]    train-error:0.092238 
## [764]    train-error:0.092586 
## [765]    train-error:0.092586 
## [766]    train-error:0.092934 
## [767]    train-error:0.090150 
## [768]    train-error:0.090498 
## [769]    train-error:0.090846 
## [770]    train-error:0.090498 
## [771]    train-error:0.090150 
## [772]    train-error:0.090150 
## [773]    train-error:0.090150 
## [774]    train-error:0.089105 
## [775]    train-error:0.089105 
## [776]    train-error:0.089802 
## [777]    train-error:0.088757 
## [778]    train-error:0.088757 
## [779]    train-error:0.088409 
## [780]    train-error:0.088409 
## [781]    train-error:0.088409 
## [782]    train-error:0.088061 
## [783]    train-error:0.089105 
## [784]    train-error:0.089105 
## [785]    train-error:0.089105 
## [786]    train-error:0.089105 
## [787]    train-error:0.088061 
## [788]    train-error:0.089105 
## [789]    train-error:0.089105 
## [790]    train-error:0.088061 
## [791]    train-error:0.087713 
## [792]    train-error:0.087713 
## [793]    train-error:0.087713 
## [794]    train-error:0.087713 
## [795]    train-error:0.087365 
## [796]    train-error:0.087713 
## [797]    train-error:0.087713 
## [798]    train-error:0.087713 
## [799]    train-error:0.087713 
## [800]    train-error:0.087017 
## [801]    train-error:0.087017 
## [802]    train-error:0.087017 
## [803]    train-error:0.087017 
## [804]    train-error:0.087017 
## [805]    train-error:0.087017 
## [806]    train-error:0.086669 
## [807]    train-error:0.086321 
## [808]    train-error:0.086321 
## [809]    train-error:0.086669 
## [810]    train-error:0.086669 
## [811]    train-error:0.086669 
## [812]    train-error:0.086669 
## [813]    train-error:0.086669 
## [814]    train-error:0.086321 
## [815]    train-error:0.086321 
## [816]    train-error:0.086321 
## [817]    train-error:0.086321 
## [818]    train-error:0.086669 
## [819]    train-error:0.086669 
## [820]    train-error:0.086669 
## [821]    train-error:0.087017 
## [822]    train-error:0.087017 
## [823]    train-error:0.085277 
## [824]    train-error:0.085973 
## [825]    train-error:0.085625 
## [826]    train-error:0.084929 
## [827]    train-error:0.085625 
## [828]    train-error:0.085973 
## [829]    train-error:0.085625 
## [830]    train-error:0.085625 
## [831]    train-error:0.085973 
## [832]    train-error:0.085973 
## [833]    train-error:0.085625 
## [834]    train-error:0.085625 
## [835]    train-error:0.085277 
## [836]    train-error:0.084929 
## [837]    train-error:0.084929 
## [838]    train-error:0.083188 
## [839]    train-error:0.083188 
## [840]    train-error:0.083188 
## [841]    train-error:0.084233 
## [842]    train-error:0.084233 
## [843]    train-error:0.084233 
## [844]    train-error:0.082840 
## [845]    train-error:0.082492 
## [846]    train-error:0.083188 
## [847]    train-error:0.082144 
## [848]    train-error:0.082144 
## [849]    train-error:0.082492 
## [850]    train-error:0.082144 
## [851]    train-error:0.082492 
## [852]    train-error:0.082144 
## [853]    train-error:0.083536 
## [854]    train-error:0.082840 
## [855]    train-error:0.083188 
## [856]    train-error:0.083536 
## [857]    train-error:0.083536 
## [858]    train-error:0.083536 
## [859]    train-error:0.082840 
## [860]    train-error:0.082840 
## [861]    train-error:0.082492 
## [862]    train-error:0.082492 
## [863]    train-error:0.082492 
## [864]    train-error:0.081796 
## [865]    train-error:0.081796 
## [866]    train-error:0.081796 
## [867]    train-error:0.081796 
## [868]    train-error:0.081796 
## [869]    train-error:0.081796 
## [870]    train-error:0.081448 
## [871]    train-error:0.081100 
## [872]    train-error:0.081448 
## [873]    train-error:0.081100 
## [874]    train-error:0.081100 
## [875]    train-error:0.081100 
## [876]    train-error:0.081100 
## [877]    train-error:0.081100 
## [878]    train-error:0.081100 
## [879]    train-error:0.081100 
## [880]    train-error:0.081100 
## [881]    train-error:0.081100 
## [882]    train-error:0.081100 
## [883]    train-error:0.081100 
## [884]    train-error:0.081448 
## [885]    train-error:0.081448 
## [886]    train-error:0.081448 
## [887]    train-error:0.081100 
## [888]    train-error:0.080752 
## [889]    train-error:0.078315 
## [890]    train-error:0.078315 
## [891]    train-error:0.078315 
## [892]    train-error:0.077619 
## [893]    train-error:0.077619 
## [894]    train-error:0.077619 
## [895]    train-error:0.077619 
## [896]    train-error:0.077619 
## [897]    train-error:0.076575 
## [898]    train-error:0.076575 
## [899]    train-error:0.076575 
## [900]    train-error:0.076575 
## [901]    train-error:0.076575 
## [902]    train-error:0.076227 
## [903]    train-error:0.076227 
## [904]    train-error:0.076227 
## [905]    train-error:0.076227 
## [906]    train-error:0.076227 
## [907]    train-error:0.076227 
## [908]    train-error:0.075879 
## [909]    train-error:0.075531 
## [910]    train-error:0.075531 
## [911]    train-error:0.075879 
## [912]    train-error:0.075879 
## [913]    train-error:0.075531 
## [914]    train-error:0.075879 
## [915]    train-error:0.076227 
## [916]    train-error:0.075879 
## [917]    train-error:0.075879 
## [918]    train-error:0.075879 
## [919]    train-error:0.075879 
## [920]    train-error:0.075531 
## [921]    train-error:0.076227 
## [922]    train-error:0.076227 
## [923]    train-error:0.075879 
## [924]    train-error:0.076575 
## [925]    train-error:0.075879 
## [926]    train-error:0.074835 
## [927]    train-error:0.074835 
## [928]    train-error:0.074835 
## [929]    train-error:0.075531 
## [930]    train-error:0.075531 
## [931]    train-error:0.075531 
## [932]    train-error:0.075531 
## [933]    train-error:0.075183 
## [934]    train-error:0.075531 
## [935]    train-error:0.075531 
## [936]    train-error:0.075531 
## [937]    train-error:0.075531 
## [938]    train-error:0.075531 
## [939]    train-error:0.074487 
## [940]    train-error:0.074487 
## [941]    train-error:0.074835 
## [942]    train-error:0.074487 
## [943]    train-error:0.074487 
## [944]    train-error:0.073790 
## [945]    train-error:0.073790 
## [946]    train-error:0.074139 
## [947]    train-error:0.072746 
## [948]    train-error:0.073094 
## [949]    train-error:0.069614 
## [950]    train-error:0.069614 
## [951]    train-error:0.069266 
## [952]    train-error:0.068918 
## [953]    train-error:0.068221 
## [954]    train-error:0.068221 
## [955]    train-error:0.068221 
## [956]    train-error:0.067873 
## [957]    train-error:0.067525 
## [958]    train-error:0.067525 
## [959]    train-error:0.067525 
## [960]    train-error:0.067873 
## [961]    train-error:0.067873 
## [962]    train-error:0.067873 
## [963]    train-error:0.067525 
## [964]    train-error:0.067525 
## [965]    train-error:0.067525 
## [966]    train-error:0.067525 
## [967]    train-error:0.067525 
## [968]    train-error:0.067525 
## [969]    train-error:0.067525 
## [970]    train-error:0.067525 
## [971]    train-error:0.067525 
## [972]    train-error:0.067525 
## [973]    train-error:0.067177 
## [974]    train-error:0.067525 
## [975]    train-error:0.067525 
## [976]    train-error:0.067525 
## [977]    train-error:0.067177 
## [978]    train-error:0.067177 
## [979]    train-error:0.067177 
## [980]    train-error:0.067177 
## [981]    train-error:0.067177 
## [982]    train-error:0.068221 
## [983]    train-error:0.068221 
## [984]    train-error:0.068221 
## [985]    train-error:0.067873 
## [986]    train-error:0.067873 
## [987]    train-error:0.067873 
## [988]    train-error:0.067873 
## [989]    train-error:0.067177 
## [990]    train-error:0.067177 
## [991]    train-error:0.067177 
## [992]    train-error:0.066829 
## [993]    train-error:0.066829 
## [994]    train-error:0.066829 
## [995]    train-error:0.066829 
## [996]    train-error:0.066829 
## [997]    train-error:0.066133 
## [998]    train-error:0.066133 
## [999]    train-error:0.066133 
## [1000]   train-error:0.066481
pre_auc_xgboost_ori <- predict(bst_model_ori, newdata = val_matrix_ori, type = 'raw')
pred_auc_xgboost_ori <- prediction(pre_auc_xgboost_ori,testdata_ori[,n_col_newdata])
auc_xgboost_mean_ori <- performance(pred_auc_xgboost_ori,"auc")@y.values[[1]]
auc_xgboost_mean_ori #[1] 0.8821492
## [1] 0.9058855
modelroc_xgboost_ori <- pROC::roc(testdata_ori[,n_col_newdata],as.numeric(pre_auc_xgboost_ori))
## Setting levels: control = 0, case = 1
## Setting direction: controls < cases
cutoff_xgboost_ori <- pROC::coords(modelroc_xgboost_ori, "best", ret = "threshold") #[1] 0.07717859
predict.results <- ifelse(pre_auc_xgboost_ori > as.numeric(cutoff_xgboost_ori[1]),"1","0")
freq_default_xgboost_ori <- table(predict.results, testdata_ori[,n_col_newdata])
Sensitivity_xgboost_ori <- freq_default_xgboost_ori[1,1]/sum(freq_default_xgboost_ori[,1])
Specificity_xgboost_ori <- freq_default_xgboost_ori[2,2]/sum(freq_default_xgboost_ori[,2])
accuracy_xgboost_mean_ori <- mean(testdata_ori[,n_col_newdata] == predict.results)
Balanced_accuracy_xgboost_mean_ori <- (Sensitivity_xgboost_ori+Specificity_xgboost_ori)/2
Balanced_accuracy_xgboost_mean_ori #[1] 0.7862057
## [1] 0.8397844
library(caret)
## 载入需要的程辑包:ggplot2
#confusionMatrix(factor(predict.results),factor(testdata_ori[,n_col_newdata]))
#################################################################################################test
data_train <- ovun.sample(num ~ ., data = data_train,  method = "over")$data
train_matrix = as(as.matrix(data_train[,-n_col_newdata]), "dgCMatrix")
class(train_matrix);dim(train_matrix) #[1] "dgCMatrix" attr(,"package") [1] "Matrix" #[1] 4103  147
## [1] "dgCMatrix"
## attr(,"package")
## [1] "Matrix"
## [1] 4072  147
n_col_newdata <- ncol(data_train) #[1] 148
#dim(data_train)
train_label = data_train[,n_col_newdata]
#length(train_label)
################################################probability
#parameters
xgb_params = list(objective   = "binary:logistic",
                  eval_metric = "error",
                  max_depth   = 3,
                  eta         = 0.01,
                  gammma      = 1,
                  colsample_bytree = 0.5,
                  min_child_weight = 1)
#model
bst_model = xgboost(params = xgb_params, data = train_matrix, label = train_label,
                      nrounds = 2000)
## [15:46:25] WARNING: amalgamation/../src/learner.cc:573: 
## Parameters: { "gammma" } might not be used.
## 
##   This may not be accurate due to some parameters are only used in language bindings but
##   passed down to XGBoost core.  Or some parameters are not used but slip through this
##   verification. Please open an issue if you find above cases.
## 
## 
## [1]  train-error:0.342092 
## [2]  train-error:0.320727 
## [3]  train-error:0.318026 
## [4]  train-error:0.314587 
## [5]  train-error:0.300589 
## [6]  train-error:0.299607 
## [7]  train-error:0.295923 
## [8]  train-error:0.288556 
## [9]  train-error:0.286100 
## [10] train-error:0.288310 
## [11] train-error:0.289538 
## [12] train-error:0.288065 
## [13] train-error:0.284136 
## [14] train-error:0.287819 
## [15] train-error:0.288556 
## [16] train-error:0.285609 
## [17] train-error:0.280943 
## [18] train-error:0.281434 
## [19] train-error:0.279715 
## [20] train-error:0.278978 
## [21] train-error:0.279715 
## [22] train-error:0.278978 
## [23] train-error:0.279224 
## [24] train-error:0.271120 
## [25] train-error:0.272102 
## [26] train-error:0.273821 
## [27] train-error:0.275540 
## [28] train-error:0.273330 
## [29] train-error:0.274312 
## [30] train-error:0.271120 
## [31] train-error:0.270383 
## [32] train-error:0.264489 
## [33] train-error:0.271365 
## [34] train-error:0.270629 
## [35] train-error:0.270629 
## [36] train-error:0.269892 
## [37] train-error:0.269646 
## [38] train-error:0.271365 
## [39] train-error:0.270629 
## [40] train-error:0.273084 
## [41] train-error:0.273330 
## [42] train-error:0.272348 
## [43] train-error:0.272593 
## [44] train-error:0.269155 
## [45] train-error:0.270629 
## [46] train-error:0.270383 
## [47] train-error:0.269401 
## [48] train-error:0.269646 
## [49] train-error:0.265963 
## [50] train-error:0.264244 
## [51] train-error:0.262033 
## [52] train-error:0.255648 
## [53] train-error:0.255894 
## [54] train-error:0.254175 
## [55] train-error:0.253684 
## [56] train-error:0.251228 
## [57] train-error:0.250491 
## [58] train-error:0.251228 
## [59] train-error:0.248527 
## [60] train-error:0.248281 
## [61] train-error:0.249263 
## [62] train-error:0.247053 
## [63] train-error:0.247790 
## [64] train-error:0.247544 
## [65] train-error:0.245334 
## [66] train-error:0.246316 
## [67] train-error:0.245580 
## [68] train-error:0.247299 
## [69] train-error:0.246316 
## [70] train-error:0.245825 
## [71] train-error:0.244597 
## [72] train-error:0.245088 
## [73] train-error:0.245088 
## [74] train-error:0.245825 
## [75] train-error:0.245580 
## [76] train-error:0.245088 
## [77] train-error:0.246562 
## [78] train-error:0.246562 
## [79] train-error:0.247544 
## [80] train-error:0.248035 
## [81] train-error:0.247544 
## [82] train-error:0.245334 
## [83] train-error:0.247299 
## [84] train-error:0.247790 
## [85] train-error:0.248035 
## [86] train-error:0.248772 
## [87] train-error:0.247299 
## [88] train-error:0.247053 
## [89] train-error:0.245580 
## [90] train-error:0.245334 
## [91] train-error:0.245825 
## [92] train-error:0.242878 
## [93] train-error:0.242878 
## [94] train-error:0.241650 
## [95] train-error:0.240914 
## [96] train-error:0.238458 
## [97] train-error:0.238703 
## [98] train-error:0.237721 
## [99] train-error:0.236984 
## [100]    train-error:0.236248 
## [101]    train-error:0.235511 
## [102]    train-error:0.234037 
## [103]    train-error:0.232809 
## [104]    train-error:0.232073 
## [105]    train-error:0.231582 
## [106]    train-error:0.229862 
## [107]    train-error:0.230108 
## [108]    train-error:0.228880 
## [109]    train-error:0.227652 
## [110]    train-error:0.227652 
## [111]    train-error:0.225442 
## [112]    train-error:0.226179 
## [113]    train-error:0.225442 
## [114]    train-error:0.225442 
## [115]    train-error:0.225442 
## [116]    train-error:0.226179 
## [117]    train-error:0.224951 
## [118]    train-error:0.225196 
## [119]    train-error:0.225442 
## [120]    train-error:0.225688 
## [121]    train-error:0.224460 
## [122]    train-error:0.224460 
## [123]    train-error:0.224460 
## [124]    train-error:0.223477 
## [125]    train-error:0.223232 
## [126]    train-error:0.222741 
## [127]    train-error:0.222741 
## [128]    train-error:0.222741 
## [129]    train-error:0.222741 
## [130]    train-error:0.220776 
## [131]    train-error:0.220776 
## [132]    train-error:0.220039 
## [133]    train-error:0.219794 
## [134]    train-error:0.219303 
## [135]    train-error:0.219794 
## [136]    train-error:0.218811 
## [137]    train-error:0.219794 
## [138]    train-error:0.220530 
## [139]    train-error:0.220530 
## [140]    train-error:0.220530 
## [141]    train-error:0.220530 
## [142]    train-error:0.220776 
## [143]    train-error:0.220039 
## [144]    train-error:0.219794 
## [145]    train-error:0.219794 
## [146]    train-error:0.219548 
## [147]    train-error:0.220285 
## [148]    train-error:0.220285 
## [149]    train-error:0.218566 
## [150]    train-error:0.218811 
## [151]    train-error:0.218075 
## [152]    train-error:0.217338 
## [153]    train-error:0.217338 
## [154]    train-error:0.216847 
## [155]    train-error:0.216847 
## [156]    train-error:0.216356 
## [157]    train-error:0.215864 
## [158]    train-error:0.215864 
## [159]    train-error:0.215864 
## [160]    train-error:0.216356 
## [161]    train-error:0.215619 
## [162]    train-error:0.215864 
## [163]    train-error:0.216110 
## [164]    train-error:0.216110 
## [165]    train-error:0.216356 
## [166]    train-error:0.216356 
## [167]    train-error:0.215864 
## [168]    train-error:0.215373 
## [169]    train-error:0.214882 
## [170]    train-error:0.215373 
## [171]    train-error:0.215373 
## [172]    train-error:0.214637 
## [173]    train-error:0.214391 
## [174]    train-error:0.214145 
## [175]    train-error:0.214145 
## [176]    train-error:0.214391 
## [177]    train-error:0.214391 
## [178]    train-error:0.214391 
## [179]    train-error:0.214145 
## [180]    train-error:0.214145 
## [181]    train-error:0.212181 
## [182]    train-error:0.211690 
## [183]    train-error:0.211690 
## [184]    train-error:0.211690 
## [185]    train-error:0.211444 
## [186]    train-error:0.211690 
## [187]    train-error:0.211690 
## [188]    train-error:0.211690 
## [189]    train-error:0.210953 
## [190]    train-error:0.211444 
## [191]    train-error:0.210953 
## [192]    train-error:0.211198 
## [193]    train-error:0.211198 
## [194]    train-error:0.210953 
## [195]    train-error:0.210707 
## [196]    train-error:0.209725 
## [197]    train-error:0.210216 
## [198]    train-error:0.209971 
## [199]    train-error:0.208988 
## [200]    train-error:0.209479 
## [201]    train-error:0.208988 
## [202]    train-error:0.209725 
## [203]    train-error:0.209725 
## [204]    train-error:0.207515 
## [205]    train-error:0.209234 
## [206]    train-error:0.208251 
## [207]    train-error:0.208743 
## [208]    train-error:0.208743 
## [209]    train-error:0.208743 
## [210]    train-error:0.205550 
## [211]    train-error:0.205059 
## [212]    train-error:0.204813 
## [213]    train-error:0.205305 
## [214]    train-error:0.205305 
## [215]    train-error:0.205305 
## [216]    train-error:0.205059 
## [217]    train-error:0.204568 
## [218]    train-error:0.200884 
## [219]    train-error:0.200639 
## [220]    train-error:0.201130 
## [221]    train-error:0.200884 
## [222]    train-error:0.200884 
## [223]    train-error:0.201375 
## [224]    train-error:0.199902 
## [225]    train-error:0.199902 
## [226]    train-error:0.197692 
## [227]    train-error:0.197692 
## [228]    train-error:0.197692 
## [229]    train-error:0.196218 
## [230]    train-error:0.194745 
## [231]    train-error:0.194253 
## [232]    train-error:0.194499 
## [233]    train-error:0.194499 
## [234]    train-error:0.194253 
## [235]    train-error:0.197692 
## [236]    train-error:0.194253 
## [237]    train-error:0.200147 
## [238]    train-error:0.197692 
## [239]    train-error:0.200639 
## [240]    train-error:0.203585 
## [241]    train-error:0.203340 
## [242]    train-error:0.198183 
## [243]    train-error:0.198428 
## [244]    train-error:0.198183 
## [245]    train-error:0.202358 
## [246]    train-error:0.202358 
## [247]    train-error:0.198428 
## [248]    train-error:0.199411 
## [249]    train-error:0.199411 
## [250]    train-error:0.199411 
## [251]    train-error:0.198674 
## [252]    train-error:0.198919 
## [253]    train-error:0.198674 
## [254]    train-error:0.198428 
## [255]    train-error:0.198428 
## [256]    train-error:0.198674 
## [257]    train-error:0.198428 
## [258]    train-error:0.198428 
## [259]    train-error:0.198674 
## [260]    train-error:0.198674 
## [261]    train-error:0.198428 
## [262]    train-error:0.197937 
## [263]    train-error:0.196955 
## [264]    train-error:0.197446 
## [265]    train-error:0.196709 
## [266]    train-error:0.196709 
## [267]    train-error:0.196464 
## [268]    train-error:0.196709 
## [269]    train-error:0.196709 
## [270]    train-error:0.196464 
## [271]    train-error:0.196464 
## [272]    train-error:0.195973 
## [273]    train-error:0.194499 
## [274]    train-error:0.194745 
## [275]    train-error:0.194745 
## [276]    train-error:0.194745 
## [277]    train-error:0.194499 
## [278]    train-error:0.194499 
## [279]    train-error:0.194499 
## [280]    train-error:0.194499 
## [281]    train-error:0.194499 
## [282]    train-error:0.194499 
## [283]    train-error:0.194745 
## [284]    train-error:0.194253 
## [285]    train-error:0.193762 
## [286]    train-error:0.194499 
## [287]    train-error:0.193762 
## [288]    train-error:0.194008 
## [289]    train-error:0.193026 
## [290]    train-error:0.191798 
## [291]    train-error:0.191061 
## [292]    train-error:0.191061 
## [293]    train-error:0.191061 
## [294]    train-error:0.190815 
## [295]    train-error:0.191061 
## [296]    train-error:0.191552 
## [297]    train-error:0.191798 
## [298]    train-error:0.191552 
## [299]    train-error:0.191306 
## [300]    train-error:0.191306 
## [301]    train-error:0.191306 
## [302]    train-error:0.191306 
## [303]    train-error:0.189833 
## [304]    train-error:0.189096 
## [305]    train-error:0.189096 
## [306]    train-error:0.189096 
## [307]    train-error:0.188851 
## [308]    train-error:0.188851 
## [309]    train-error:0.188851 
## [310]    train-error:0.189096 
## [311]    train-error:0.189096 
## [312]    train-error:0.188851 
## [313]    train-error:0.188114 
## [314]    train-error:0.187132 
## [315]    train-error:0.187623 
## [316]    train-error:0.187132 
## [317]    train-error:0.186886 
## [318]    train-error:0.186395 
## [319]    train-error:0.186149 
## [320]    train-error:0.186395 
## [321]    train-error:0.186149 
## [322]    train-error:0.185413 
## [323]    train-error:0.184185 
## [324]    train-error:0.184185 
## [325]    train-error:0.184430 
## [326]    train-error:0.183939 
## [327]    train-error:0.184430 
## [328]    train-error:0.184430 
## [329]    train-error:0.183448 
## [330]    train-error:0.183202 
## [331]    train-error:0.183448 
## [332]    train-error:0.183448 
## [333]    train-error:0.185413 
## [334]    train-error:0.185413 
## [335]    train-error:0.185167 
## [336]    train-error:0.184430 
## [337]    train-error:0.184185 
## [338]    train-error:0.184676 
## [339]    train-error:0.184185 
## [340]    train-error:0.183694 
## [341]    train-error:0.183694 
## [342]    train-error:0.183448 
## [343]    train-error:0.183448 
## [344]    train-error:0.183448 
## [345]    train-error:0.182957 
## [346]    train-error:0.182957 
## [347]    train-error:0.182466 
## [348]    train-error:0.182466 
## [349]    train-error:0.181974 
## [350]    train-error:0.181729 
## [351]    train-error:0.181974 
## [352]    train-error:0.180501 
## [353]    train-error:0.180747 
## [354]    train-error:0.179519 
## [355]    train-error:0.179519 
## [356]    train-error:0.177554 
## [357]    train-error:0.177800 
## [358]    train-error:0.178045 
## [359]    train-error:0.178045 
## [360]    train-error:0.180255 
## [361]    train-error:0.180010 
## [362]    train-error:0.180010 
## [363]    train-error:0.179764 
## [364]    train-error:0.180010 
## [365]    train-error:0.180255 
## [366]    train-error:0.179764 
## [367]    train-error:0.179519 
## [368]    train-error:0.179764 
## [369]    train-error:0.179273 
## [370]    train-error:0.179273 
## [371]    train-error:0.178782 
## [372]    train-error:0.178045 
## [373]    train-error:0.178045 
## [374]    train-error:0.178045 
## [375]    train-error:0.178536 
## [376]    train-error:0.177800 
## [377]    train-error:0.177800 
## [378]    train-error:0.177554 
## [379]    train-error:0.175344 
## [380]    train-error:0.177308 
## [381]    train-error:0.176572 
## [382]    train-error:0.177308 
## [383]    train-error:0.175835 
## [384]    train-error:0.175589 
## [385]    train-error:0.174607 
## [386]    train-error:0.175098 
## [387]    train-error:0.174853 
## [388]    train-error:0.174116 
## [389]    train-error:0.174607 
## [390]    train-error:0.174116 
## [391]    train-error:0.171906 
## [392]    train-error:0.173134 
## [393]    train-error:0.173379 
## [394]    train-error:0.172397 
## [395]    train-error:0.172397 
## [396]    train-error:0.170187 
## [397]    train-error:0.169941 
## [398]    train-error:0.169941 
## [399]    train-error:0.170187 
## [400]    train-error:0.171660 
## [401]    train-error:0.169695 
## [402]    train-error:0.169450 
## [403]    train-error:0.169450 
## [404]    train-error:0.169941 
## [405]    train-error:0.169941 
## [406]    train-error:0.169941 
## [407]    train-error:0.170187 
## [408]    train-error:0.169941 
## [409]    train-error:0.169450 
## [410]    train-error:0.168468 
## [411]    train-error:0.168468 
## [412]    train-error:0.168468 
## [413]    train-error:0.168222 
## [414]    train-error:0.168222 
## [415]    train-error:0.168222 
## [416]    train-error:0.166994 
## [417]    train-error:0.166503 
## [418]    train-error:0.167976 
## [419]    train-error:0.166257 
## [420]    train-error:0.166257 
## [421]    train-error:0.166012 
## [422]    train-error:0.166012 
## [423]    train-error:0.166012 
## [424]    train-error:0.166257 
## [425]    train-error:0.166994 
## [426]    train-error:0.165521 
## [427]    train-error:0.166012 
## [428]    train-error:0.165521 
## [429]    train-error:0.165521 
## [430]    train-error:0.165521 
## [431]    train-error:0.165521 
## [432]    train-error:0.163310 
## [433]    train-error:0.163310 
## [434]    train-error:0.167240 
## [435]    train-error:0.163310 
## [436]    train-error:0.163310 
## [437]    train-error:0.162819 
## [438]    train-error:0.162083 
## [439]    train-error:0.162083 
## [440]    train-error:0.162328 
## [441]    train-error:0.162083 
## [442]    train-error:0.161591 
## [443]    train-error:0.161591 
## [444]    train-error:0.161591 
## [445]    train-error:0.161346 
## [446]    train-error:0.160855 
## [447]    train-error:0.161346 
## [448]    train-error:0.160855 
## [449]    train-error:0.161591 
## [450]    train-error:0.161591 
## [451]    train-error:0.160855 
## [452]    train-error:0.161591 
## [453]    train-error:0.161591 
## [454]    train-error:0.161100 
## [455]    train-error:0.160855 
## [456]    train-error:0.161100 
## [457]    train-error:0.160855 
## [458]    train-error:0.160118 
## [459]    train-error:0.160363 
## [460]    train-error:0.160363 
## [461]    train-error:0.160609 
## [462]    train-error:0.160609 
## [463]    train-error:0.160609 
## [464]    train-error:0.163802 
## [465]    train-error:0.163802 
## [466]    train-error:0.163802 
## [467]    train-error:0.163802 
## [468]    train-error:0.162819 
## [469]    train-error:0.161837 
## [470]    train-error:0.161591 
## [471]    train-error:0.161346 
## [472]    train-error:0.161100 
## [473]    train-error:0.161346 
## [474]    train-error:0.160118 
## [475]    train-error:0.159627 
## [476]    train-error:0.160855 
## [477]    train-error:0.161100 
## [478]    train-error:0.159872 
## [479]    train-error:0.159136 
## [480]    train-error:0.158399 
## [481]    train-error:0.158890 
## [482]    train-error:0.158890 
## [483]    train-error:0.158644 
## [484]    train-error:0.158399 
## [485]    train-error:0.157171 
## [486]    train-error:0.157908 
## [487]    train-error:0.157171 
## [488]    train-error:0.157417 
## [489]    train-error:0.157417 
## [490]    train-error:0.157171 
## [491]    train-error:0.157171 
## [492]    train-error:0.157417 
## [493]    train-error:0.157171 
## [494]    train-error:0.157417 
## [495]    train-error:0.157417 
## [496]    train-error:0.156189 
## [497]    train-error:0.155206 
## [498]    train-error:0.155206 
## [499]    train-error:0.155452 
## [500]    train-error:0.155452 
## [501]    train-error:0.155943 
## [502]    train-error:0.155943 
## [503]    train-error:0.155943 
## [504]    train-error:0.155943 
## [505]    train-error:0.155943 
## [506]    train-error:0.155943 
## [507]    train-error:0.155452 
## [508]    train-error:0.155452 
## [509]    train-error:0.155697 
## [510]    train-error:0.156189 
## [511]    train-error:0.155697 
## [512]    train-error:0.156189 
## [513]    train-error:0.155452 
## [514]    train-error:0.154470 
## [515]    train-error:0.154715 
## [516]    train-error:0.154224 
## [517]    train-error:0.153978 
## [518]    train-error:0.153978 
## [519]    train-error:0.153978 
## [520]    train-error:0.153978 
## [521]    train-error:0.153733 
## [522]    train-error:0.153242 
## [523]    train-error:0.153487 
## [524]    train-error:0.153242 
## [525]    train-error:0.153242 
## [526]    train-error:0.153242 
## [527]    train-error:0.153978 
## [528]    train-error:0.152750 
## [529]    train-error:0.151768 
## [530]    train-error:0.152014 
## [531]    train-error:0.152014 
## [532]    train-error:0.152014 
## [533]    train-error:0.152259 
## [534]    train-error:0.151768 
## [535]    train-error:0.152014 
## [536]    train-error:0.152750 
## [537]    train-error:0.152996 
## [538]    train-error:0.152996 
## [539]    train-error:0.152750 
## [540]    train-error:0.152750 
## [541]    train-error:0.151768 
## [542]    train-error:0.151768 
## [543]    train-error:0.151277 
## [544]    train-error:0.152505 
## [545]    train-error:0.152014 
## [546]    train-error:0.152505 
## [547]    train-error:0.151768 
## [548]    train-error:0.152996 
## [549]    train-error:0.151523 
## [550]    train-error:0.151523 
## [551]    train-error:0.151277 
## [552]    train-error:0.151277 
## [553]    train-error:0.151768 
## [554]    train-error:0.151031 
## [555]    train-error:0.151031 
## [556]    train-error:0.150786 
## [557]    train-error:0.150540 
## [558]    train-error:0.150295 
## [559]    train-error:0.150295 
## [560]    train-error:0.148821 
## [561]    train-error:0.150786 
## [562]    train-error:0.150786 
## [563]    train-error:0.150786 
## [564]    train-error:0.150786 
## [565]    train-error:0.148821 
## [566]    train-error:0.148576 
## [567]    train-error:0.148330 
## [568]    train-error:0.148084 
## [569]    train-error:0.148084 
## [570]    train-error:0.148084 
## [571]    train-error:0.148084 
## [572]    train-error:0.149804 
## [573]    train-error:0.149804 
## [574]    train-error:0.146857 
## [575]    train-error:0.146611 
## [576]    train-error:0.147348 
## [577]    train-error:0.147593 
## [578]    train-error:0.147348 
## [579]    train-error:0.147348 
## [580]    train-error:0.147593 
## [581]    train-error:0.147839 
## [582]    train-error:0.147593 
## [583]    train-error:0.147839 
## [584]    train-error:0.148084 
## [585]    train-error:0.148576 
## [586]    train-error:0.146611 
## [587]    train-error:0.146611 
## [588]    train-error:0.142682 
## [589]    train-error:0.141699 
## [590]    train-error:0.141699 
## [591]    train-error:0.141208 
## [592]    train-error:0.141208 
## [593]    train-error:0.141208 
## [594]    train-error:0.141208 
## [595]    train-error:0.140472 
## [596]    train-error:0.140717 
## [597]    train-error:0.140717 
## [598]    train-error:0.140963 
## [599]    train-error:0.140963 
## [600]    train-error:0.139489 
## [601]    train-error:0.139244 
## [602]    train-error:0.139489 
## [603]    train-error:0.137525 
## [604]    train-error:0.138998 
## [605]    train-error:0.137033 
## [606]    train-error:0.137033 
## [607]    train-error:0.137033 
## [608]    train-error:0.137033 
## [609]    train-error:0.137033 
## [610]    train-error:0.137033 
## [611]    train-error:0.137033 
## [612]    train-error:0.136297 
## [613]    train-error:0.133350 
## [614]    train-error:0.133104 
## [615]    train-error:0.133350 
## [616]    train-error:0.133350 
## [617]    train-error:0.133595 
## [618]    train-error:0.133350 
## [619]    train-error:0.133350 
## [620]    train-error:0.134086 
## [621]    train-error:0.133595 
## [622]    train-error:0.133104 
## [623]    train-error:0.132367 
## [624]    train-error:0.131876 
## [625]    train-error:0.131631 
## [626]    train-error:0.131876 
## [627]    train-error:0.129666 
## [628]    train-error:0.129420 
## [629]    train-error:0.129420 
## [630]    train-error:0.129420 
## [631]    train-error:0.129175 
## [632]    train-error:0.129420 
## [633]    train-error:0.129175 
## [634]    train-error:0.129420 
## [635]    train-error:0.128929 
## [636]    train-error:0.127456 
## [637]    train-error:0.126965 
## [638]    train-error:0.126965 
## [639]    train-error:0.127210 
## [640]    train-error:0.127210 
## [641]    train-error:0.125246 
## [642]    train-error:0.125000 
## [643]    train-error:0.125246 
## [644]    train-error:0.125000 
## [645]    train-error:0.124509 
## [646]    train-error:0.124754 
## [647]    train-error:0.122299 
## [648]    train-error:0.124754 
## [649]    train-error:0.122299 
## [650]    train-error:0.122299 
## [651]    train-error:0.122299 
## [652]    train-error:0.122299 
## [653]    train-error:0.122299 
## [654]    train-error:0.122299 
## [655]    train-error:0.122053 
## [656]    train-error:0.122299 
## [657]    train-error:0.122544 
## [658]    train-error:0.122790 
## [659]    train-error:0.122544 
## [660]    train-error:0.122053 
## [661]    train-error:0.122053 
## [662]    train-error:0.122053 
## [663]    train-error:0.121807 
## [664]    train-error:0.120825 
## [665]    train-error:0.121316 
## [666]    train-error:0.119843 
## [667]    train-error:0.119843 
## [668]    train-error:0.119843 
## [669]    train-error:0.119843 
## [670]    train-error:0.119597 
## [671]    train-error:0.119597 
## [672]    train-error:0.119597 
## [673]    train-error:0.118861 
## [674]    train-error:0.119106 
## [675]    train-error:0.119106 
## [676]    train-error:0.118615 
## [677]    train-error:0.118124 
## [678]    train-error:0.119352 
## [679]    train-error:0.119106 
## [680]    train-error:0.118861 
## [681]    train-error:0.118861 
## [682]    train-error:0.118861 
## [683]    train-error:0.118861 
## [684]    train-error:0.118615 
## [685]    train-error:0.116650 
## [686]    train-error:0.116650 
## [687]    train-error:0.113703 
## [688]    train-error:0.113949 
## [689]    train-error:0.114194 
## [690]    train-error:0.113949 
## [691]    train-error:0.113949 
## [692]    train-error:0.113949 
## [693]    train-error:0.113949 
## [694]    train-error:0.113949 
## [695]    train-error:0.113458 
## [696]    train-error:0.113703 
## [697]    train-error:0.113212 
## [698]    train-error:0.113458 
## [699]    train-error:0.112475 
## [700]    train-error:0.112475 
## [701]    train-error:0.112230 
## [702]    train-error:0.108546 
## [703]    train-error:0.110511 
## [704]    train-error:0.111002 
## [705]    train-error:0.111248 
## [706]    train-error:0.111248 
## [707]    train-error:0.110756 
## [708]    train-error:0.111002 
## [709]    train-error:0.110511 
## [710]    train-error:0.110756 
## [711]    train-error:0.110265 
## [712]    train-error:0.110265 
## [713]    train-error:0.110511 
## [714]    train-error:0.110511 
## [715]    train-error:0.109528 
## [716]    train-error:0.109528 
## [717]    train-error:0.109528 
## [718]    train-error:0.108792 
## [719]    train-error:0.108546 
## [720]    train-error:0.108792 
## [721]    train-error:0.108792 
## [722]    train-error:0.108301 
## [723]    train-error:0.108301 
## [724]    train-error:0.108546 
## [725]    train-error:0.108301 
## [726]    train-error:0.108301 
## [727]    train-error:0.108055 
## [728]    train-error:0.108055 
## [729]    train-error:0.108055 
## [730]    train-error:0.108055 
## [731]    train-error:0.107809 
## [732]    train-error:0.107564 
## [733]    train-error:0.107564 
## [734]    train-error:0.107564 
## [735]    train-error:0.107073 
## [736]    train-error:0.107073 
## [737]    train-error:0.104617 
## [738]    train-error:0.103880 
## [739]    train-error:0.103880 
## [740]    train-error:0.106582 
## [741]    train-error:0.106090 
## [742]    train-error:0.106090 
## [743]    train-error:0.105845 
## [744]    train-error:0.105845 
## [745]    train-error:0.104862 
## [746]    train-error:0.104371 
## [747]    train-error:0.104617 
## [748]    train-error:0.105108 
## [749]    train-error:0.105108 
## [750]    train-error:0.105108 
## [751]    train-error:0.102407 
## [752]    train-error:0.102407 
## [753]    train-error:0.101670 
## [754]    train-error:0.101179 
## [755]    train-error:0.101179 
## [756]    train-error:0.101179 
## [757]    train-error:0.101424 
## [758]    train-error:0.101179 
## [759]    train-error:0.100933 
## [760]    train-error:0.100933 
## [761]    train-error:0.101179 
## [762]    train-error:0.099705 
## [763]    train-error:0.099705 
## [764]    train-error:0.099951 
## [765]    train-error:0.099705 
## [766]    train-error:0.099705 
## [767]    train-error:0.099705 
## [768]    train-error:0.099705 
## [769]    train-error:0.098969 
## [770]    train-error:0.098969 
## [771]    train-error:0.098723 
## [772]    train-error:0.098969 
## [773]    train-error:0.098969 
## [774]    train-error:0.098969 
## [775]    train-error:0.098723 
## [776]    train-error:0.098969 
## [777]    train-error:0.098969 
## [778]    train-error:0.098969 
## [779]    train-error:0.098969 
## [780]    train-error:0.099214 
## [781]    train-error:0.098969 
## [782]    train-error:0.098969 
## [783]    train-error:0.098969 
## [784]    train-error:0.098969 
## [785]    train-error:0.098969 
## [786]    train-error:0.098969 
## [787]    train-error:0.098969 
## [788]    train-error:0.098969 
## [789]    train-error:0.098232 
## [790]    train-error:0.098477 
## [791]    train-error:0.098477 
## [792]    train-error:0.097986 
## [793]    train-error:0.097986 
## [794]    train-error:0.097741 
## [795]    train-error:0.097495 
## [796]    train-error:0.097495 
## [797]    train-error:0.097741 
## [798]    train-error:0.097250 
## [799]    train-error:0.093811 
## [800]    train-error:0.097004 
## [801]    train-error:0.096758 
## [802]    train-error:0.093566 
## [803]    train-error:0.093811 
## [804]    train-error:0.096022 
## [805]    train-error:0.096022 
## [806]    train-error:0.095285 
## [807]    train-error:0.095285 
## [808]    train-error:0.095285 
## [809]    train-error:0.095039 
## [810]    train-error:0.095039 
## [811]    train-error:0.094794 
## [812]    train-error:0.095039 
## [813]    train-error:0.094057 
## [814]    train-error:0.094303 
## [815]    train-error:0.093566 
## [816]    train-error:0.093566 
## [817]    train-error:0.093075 
## [818]    train-error:0.092829 
## [819]    train-error:0.090128 
## [820]    train-error:0.090128 
## [821]    train-error:0.090128 
## [822]    train-error:0.089637 
## [823]    train-error:0.089145 
## [824]    train-error:0.088900 
## [825]    train-error:0.088900 
## [826]    train-error:0.089391 
## [827]    train-error:0.089882 
## [828]    train-error:0.089637 
## [829]    train-error:0.089391 
## [830]    train-error:0.088900 
## [831]    train-error:0.091847 
## [832]    train-error:0.091847 
## [833]    train-error:0.091847 
## [834]    train-error:0.091847 
## [835]    train-error:0.091601 
## [836]    train-error:0.091601 
## [837]    train-error:0.091356 
## [838]    train-error:0.091110 
## [839]    train-error:0.091110 
## [840]    train-error:0.091110 
## [841]    train-error:0.091110 
## [842]    train-error:0.088163 
## [843]    train-error:0.088163 
## [844]    train-error:0.087426 
## [845]    train-error:0.087181 
## [846]    train-error:0.086935 
## [847]    train-error:0.086935 
## [848]    train-error:0.087181 
## [849]    train-error:0.087181 
## [850]    train-error:0.087181 
## [851]    train-error:0.087181 
## [852]    train-error:0.087181 
## [853]    train-error:0.086690 
## [854]    train-error:0.086444 
## [855]    train-error:0.087181 
## [856]    train-error:0.086935 
## [857]    train-error:0.086935 
## [858]    train-error:0.086690 
## [859]    train-error:0.086935 
## [860]    train-error:0.086444 
## [861]    train-error:0.086690 
## [862]    train-error:0.088654 
## [863]    train-error:0.088654 
## [864]    train-error:0.085953 
## [865]    train-error:0.085953 
## [866]    train-error:0.085953 
## [867]    train-error:0.085462 
## [868]    train-error:0.085462 
## [869]    train-error:0.085462 
## [870]    train-error:0.085462 
## [871]    train-error:0.088163 
## [872]    train-error:0.087917 
## [873]    train-error:0.087917 
## [874]    train-error:0.084725 
## [875]    train-error:0.084971 
## [876]    train-error:0.084971 
## [877]    train-error:0.084234 
## [878]    train-error:0.083988 
## [879]    train-error:0.083743 
## [880]    train-error:0.083988 
## [881]    train-error:0.083743 
## [882]    train-error:0.083988 
## [883]    train-error:0.083988 
## [884]    train-error:0.083743 
## [885]    train-error:0.083988 
## [886]    train-error:0.083988 
## [887]    train-error:0.083497 
## [888]    train-error:0.083497 
## [889]    train-error:0.083497 
## [890]    train-error:0.085953 
## [891]    train-error:0.083251 
## [892]    train-error:0.083251 
## [893]    train-error:0.083251 
## [894]    train-error:0.083251 
## [895]    train-error:0.083251 
## [896]    train-error:0.083251 
## [897]    train-error:0.083251 
## [898]    train-error:0.083006 
## [899]    train-error:0.083006 
## [900]    train-error:0.082515 
## [901]    train-error:0.082515 
## [902]    train-error:0.082515 
## [903]    train-error:0.083006 
## [904]    train-error:0.083006 
## [905]    train-error:0.082760 
## [906]    train-error:0.083251 
## [907]    train-error:0.083251 
## [908]    train-error:0.083251 
## [909]    train-error:0.083251 
## [910]    train-error:0.083006 
## [911]    train-error:0.083006 
## [912]    train-error:0.083497 
## [913]    train-error:0.083497 
## [914]    train-error:0.085953 
## [915]    train-error:0.085953 
## [916]    train-error:0.085953 
## [917]    train-error:0.085953 
## [918]    train-error:0.085953 
## [919]    train-error:0.085462 
## [920]    train-error:0.085462 
## [921]    train-error:0.085462 
## [922]    train-error:0.085462 
## [923]    train-error:0.085462 
## [924]    train-error:0.085462 
## [925]    train-error:0.085462 
## [926]    train-error:0.085462 
## [927]    train-error:0.085707 
## [928]    train-error:0.085707 
## [929]    train-error:0.085707 
## [930]    train-error:0.085707 
## [931]    train-error:0.085707 
## [932]    train-error:0.085707 
## [933]    train-error:0.085707 
## [934]    train-error:0.085707 
## [935]    train-error:0.085707 
## [936]    train-error:0.085953 
## [937]    train-error:0.085953 
## [938]    train-error:0.085953 
## [939]    train-error:0.085953 
## [940]    train-error:0.085953 
## [941]    train-error:0.086444 
## [942]    train-error:0.085707 
## [943]    train-error:0.086198 
## [944]    train-error:0.086198 
## [945]    train-error:0.086198 
## [946]    train-error:0.085707 
## [947]    train-error:0.085707 
## [948]    train-error:0.086198 
## [949]    train-error:0.086198 
## [950]    train-error:0.085707 
## [951]    train-error:0.083006 
## [952]    train-error:0.083006 
## [953]    train-error:0.083006 
## [954]    train-error:0.083006 
## [955]    train-error:0.082760 
## [956]    train-error:0.082515 
## [957]    train-error:0.082515 
## [958]    train-error:0.082760 
## [959]    train-error:0.082760 
## [960]    train-error:0.082515 
## [961]    train-error:0.082515 
## [962]    train-error:0.082515 
## [963]    train-error:0.082515 
## [964]    train-error:0.082515 
## [965]    train-error:0.082515 
## [966]    train-error:0.082515 
## [967]    train-error:0.083006 
## [968]    train-error:0.083006 
## [969]    train-error:0.083006 
## [970]    train-error:0.083006 
## [971]    train-error:0.083006 
## [972]    train-error:0.082269 
## [973]    train-error:0.082024 
## [974]    train-error:0.081778 
## [975]    train-error:0.081778 
## [976]    train-error:0.082269 
## [977]    train-error:0.082024 
## [978]    train-error:0.082024 
## [979]    train-error:0.081778 
## [980]    train-error:0.081778 
## [981]    train-error:0.081778 
## [982]    train-error:0.081041 
## [983]    train-error:0.081041 
## [984]    train-error:0.081041 
## [985]    train-error:0.081041 
## [986]    train-error:0.081041 
## [987]    train-error:0.081041 
## [988]    train-error:0.081041 
## [989]    train-error:0.081041 
## [990]    train-error:0.080796 
## [991]    train-error:0.081041 
## [992]    train-error:0.080796 
## [993]    train-error:0.080796 
## [994]    train-error:0.080796 
## [995]    train-error:0.081041 
## [996]    train-error:0.080796 
## [997]    train-error:0.081041 
## [998]    train-error:0.080796 
## [999]    train-error:0.080796 
## [1000]   train-error:0.080550 
## [1001]   train-error:0.080550 
## [1002]   train-error:0.080550 
## [1003]   train-error:0.080550 
## [1004]   train-error:0.080550 
## [1005]   train-error:0.080550 
## [1006]   train-error:0.080550 
## [1007]   train-error:0.080550 
## [1008]   train-error:0.080550 
## [1009]   train-error:0.080550 
## [1010]   train-error:0.080550 
## [1011]   train-error:0.080550 
## [1012]   train-error:0.080796 
## [1013]   train-error:0.080796 
## [1014]   train-error:0.080796 
## [1015]   train-error:0.080796 
## [1016]   train-error:0.080550 
## [1017]   train-error:0.080550 
## [1018]   train-error:0.080550 
## [1019]   train-error:0.080550 
## [1020]   train-error:0.080550 
## [1021]   train-error:0.080550 
## [1022]   train-error:0.080796 
## [1023]   train-error:0.080305 
## [1024]   train-error:0.080305 
## [1025]   train-error:0.080305 
## [1026]   train-error:0.080305 
## [1027]   train-error:0.080305 
## [1028]   train-error:0.080796 
## [1029]   train-error:0.080796 
## [1030]   train-error:0.080305 
## [1031]   train-error:0.080305 
## [1032]   train-error:0.080305 
## [1033]   train-error:0.080305 
## [1034]   train-error:0.080305 
## [1035]   train-error:0.080550 
## [1036]   train-error:0.080550 
## [1037]   train-error:0.080550 
## [1038]   train-error:0.080550 
## [1039]   train-error:0.080550 
## [1040]   train-error:0.080550 
## [1041]   train-error:0.080550 
## [1042]   train-error:0.080305 
## [1043]   train-error:0.080305 
## [1044]   train-error:0.080059 
## [1045]   train-error:0.080059 
## [1046]   train-error:0.080305 
## [1047]   train-error:0.080305 
## [1048]   train-error:0.080305 
## [1049]   train-error:0.080305 
## [1050]   train-error:0.080059 
## [1051]   train-error:0.080059 
## [1052]   train-error:0.080059 
## [1053]   train-error:0.080059 
## [1054]   train-error:0.079813 
## [1055]   train-error:0.079813 
## [1056]   train-error:0.079813 
## [1057]   train-error:0.080059 
## [1058]   train-error:0.079568 
## [1059]   train-error:0.079568 
## [1060]   train-error:0.079813 
## [1061]   train-error:0.079813 
## [1062]   train-error:0.079322 
## [1063]   train-error:0.079568 
## [1064]   train-error:0.079568 
## [1065]   train-error:0.079568 
## [1066]   train-error:0.079568 
## [1067]   train-error:0.079568 
## [1068]   train-error:0.079568 
## [1069]   train-error:0.079568 
## [1070]   train-error:0.079813 
## [1071]   train-error:0.079813 
## [1072]   train-error:0.079568 
## [1073]   train-error:0.079568 
## [1074]   train-error:0.079568 
## [1075]   train-error:0.079568 
## [1076]   train-error:0.079322 
## [1077]   train-error:0.079568 
## [1078]   train-error:0.079568 
## [1079]   train-error:0.079568 
## [1080]   train-error:0.079077 
## [1081]   train-error:0.079077 
## [1082]   train-error:0.079322 
## [1083]   train-error:0.079322 
## [1084]   train-error:0.079077 
## [1085]   train-error:0.079077 
## [1086]   train-error:0.078831 
## [1087]   train-error:0.078831 
## [1088]   train-error:0.078585 
## [1089]   train-error:0.078585 
## [1090]   train-error:0.078585 
## [1091]   train-error:0.078585 
## [1092]   train-error:0.078585 
## [1093]   train-error:0.078585 
## [1094]   train-error:0.078585 
## [1095]   train-error:0.078585 
## [1096]   train-error:0.078585 
## [1097]   train-error:0.078831 
## [1098]   train-error:0.078831 
## [1099]   train-error:0.078831 
## [1100]   train-error:0.078831 
## [1101]   train-error:0.078831 
## [1102]   train-error:0.078831 
## [1103]   train-error:0.078831 
## [1104]   train-error:0.079077 
## [1105]   train-error:0.078831 
## [1106]   train-error:0.078831 
## [1107]   train-error:0.078831 
## [1108]   train-error:0.078831 
## [1109]   train-error:0.078585 
## [1110]   train-error:0.078831 
## [1111]   train-error:0.079077 
## [1112]   train-error:0.079077 
## [1113]   train-error:0.079077 
## [1114]   train-error:0.079077 
## [1115]   train-error:0.079077 
## [1116]   train-error:0.079077 
## [1117]   train-error:0.079077 
## [1118]   train-error:0.079077 
## [1119]   train-error:0.079077 
## [1120]   train-error:0.079077 
## [1121]   train-error:0.079077 
## [1122]   train-error:0.079077 
## [1123]   train-error:0.078831 
## [1124]   train-error:0.079077 
## [1125]   train-error:0.078585 
## [1126]   train-error:0.078585 
## [1127]   train-error:0.078585 
## [1128]   train-error:0.078585 
## [1129]   train-error:0.078585 
## [1130]   train-error:0.078585 
## [1131]   train-error:0.078340 
## [1132]   train-error:0.077112 
## [1133]   train-error:0.076866 
## [1134]   train-error:0.078340 
## [1135]   train-error:0.078340 
## [1136]   train-error:0.078585 
## [1137]   train-error:0.076621 
## [1138]   train-error:0.075884 
## [1139]   train-error:0.075884 
## [1140]   train-error:0.075884 
## [1141]   train-error:0.075639 
## [1142]   train-error:0.075393 
## [1143]   train-error:0.075147 
## [1144]   train-error:0.075393 
## [1145]   train-error:0.075639 
## [1146]   train-error:0.075639 
## [1147]   train-error:0.075639 
## [1148]   train-error:0.075393 
## [1149]   train-error:0.075393 
## [1150]   train-error:0.075393 
## [1151]   train-error:0.075393 
## [1152]   train-error:0.074902 
## [1153]   train-error:0.074656 
## [1154]   train-error:0.074656 
## [1155]   train-error:0.074656 
## [1156]   train-error:0.074165 
## [1157]   train-error:0.073919 
## [1158]   train-error:0.073674 
## [1159]   train-error:0.073919 
## [1160]   train-error:0.073919 
## [1161]   train-error:0.073919 
## [1162]   train-error:0.073919 
## [1163]   train-error:0.073919 
## [1164]   train-error:0.073919 
## [1165]   train-error:0.073919 
## [1166]   train-error:0.073919 
## [1167]   train-error:0.073674 
## [1168]   train-error:0.073674 
## [1169]   train-error:0.073674 
## [1170]   train-error:0.073428 
## [1171]   train-error:0.073674 
## [1172]   train-error:0.073428 
## [1173]   train-error:0.073428 
## [1174]   train-error:0.073183 
## [1175]   train-error:0.073183 
## [1176]   train-error:0.072937 
## [1177]   train-error:0.072692 
## [1178]   train-error:0.072937 
## [1179]   train-error:0.072692 
## [1180]   train-error:0.072200 
## [1181]   train-error:0.071464 
## [1182]   train-error:0.071464 
## [1183]   train-error:0.071464 
## [1184]   train-error:0.071464 
## [1185]   train-error:0.071464 
## [1186]   train-error:0.071464 
## [1187]   train-error:0.071464 
## [1188]   train-error:0.071464 
## [1189]   train-error:0.071464 
## [1190]   train-error:0.071464 
## [1191]   train-error:0.071464 
## [1192]   train-error:0.071464 
## [1193]   train-error:0.071464 
## [1194]   train-error:0.071464 
## [1195]   train-error:0.071464 
## [1196]   train-error:0.071464 
## [1197]   train-error:0.071464 
## [1198]   train-error:0.071464 
## [1199]   train-error:0.071709 
## [1200]   train-error:0.071709 
## [1201]   train-error:0.071709 
## [1202]   train-error:0.071709 
## [1203]   train-error:0.071709 
## [1204]   train-error:0.071709 
## [1205]   train-error:0.071709 
## [1206]   train-error:0.071709 
## [1207]   train-error:0.071709 
## [1208]   train-error:0.071709 
## [1209]   train-error:0.071464 
## [1210]   train-error:0.071464 
## [1211]   train-error:0.071218 
## [1212]   train-error:0.071218 
## [1213]   train-error:0.071218 
## [1214]   train-error:0.071218 
## [1215]   train-error:0.071218 
## [1216]   train-error:0.071218 
## [1217]   train-error:0.070972 
## [1218]   train-error:0.071218 
## [1219]   train-error:0.070972 
## [1220]   train-error:0.071218 
## [1221]   train-error:0.070972 
## [1222]   train-error:0.070972 
## [1223]   train-error:0.070972 
## [1224]   train-error:0.070972 
## [1225]   train-error:0.070972 
## [1226]   train-error:0.070972 
## [1227]   train-error:0.070972 
## [1228]   train-error:0.070972 
## [1229]   train-error:0.070972 
## [1230]   train-error:0.071218 
## [1231]   train-error:0.071218 
## [1232]   train-error:0.070972 
## [1233]   train-error:0.071218 
## [1234]   train-error:0.070972 
## [1235]   train-error:0.071218 
## [1236]   train-error:0.070972 
## [1237]   train-error:0.070972 
## [1238]   train-error:0.070972 
## [1239]   train-error:0.070972 
## [1240]   train-error:0.070727 
## [1241]   train-error:0.070481 
## [1242]   train-error:0.070481 
## [1243]   train-error:0.070727 
## [1244]   train-error:0.070481 
## [1245]   train-error:0.070481 
## [1246]   train-error:0.070481 
## [1247]   train-error:0.070236 
## [1248]   train-error:0.070236 
## [1249]   train-error:0.070236 
## [1250]   train-error:0.070236 
## [1251]   train-error:0.070236 
## [1252]   train-error:0.070236 
## [1253]   train-error:0.070236 
## [1254]   train-error:0.070236 
## [1255]   train-error:0.070236 
## [1256]   train-error:0.070236 
## [1257]   train-error:0.069990 
## [1258]   train-error:0.070236 
## [1259]   train-error:0.069990 
## [1260]   train-error:0.070236 
## [1261]   train-error:0.069990 
## [1262]   train-error:0.070236 
## [1263]   train-error:0.069745 
## [1264]   train-error:0.069990 
## [1265]   train-error:0.070236 
## [1266]   train-error:0.070236 
## [1267]   train-error:0.069990 
## [1268]   train-error:0.069745 
## [1269]   train-error:0.069745 
## [1270]   train-error:0.069499 
## [1271]   train-error:0.069745 
## [1272]   train-error:0.069499 
## [1273]   train-error:0.069499 
## [1274]   train-error:0.069499 
## [1275]   train-error:0.069253 
## [1276]   train-error:0.069253 
## [1277]   train-error:0.069499 
## [1278]   train-error:0.069499 
## [1279]   train-error:0.069499 
## [1280]   train-error:0.069499 
## [1281]   train-error:0.069499 
## [1282]   train-error:0.069499 
## [1283]   train-error:0.069499 
## [1284]   train-error:0.069253 
## [1285]   train-error:0.069253 
## [1286]   train-error:0.069253 
## [1287]   train-error:0.068026 
## [1288]   train-error:0.067780 
## [1289]   train-error:0.067780 
## [1290]   train-error:0.067780 
## [1291]   train-error:0.067780 
## [1292]   train-error:0.067780 
## [1293]   train-error:0.067780 
## [1294]   train-error:0.067534 
## [1295]   train-error:0.067534 
## [1296]   train-error:0.067534 
## [1297]   train-error:0.067534 
## [1298]   train-error:0.067534 
## [1299]   train-error:0.067289 
## [1300]   train-error:0.067289 
## [1301]   train-error:0.067289 
## [1302]   train-error:0.067289 
## [1303]   train-error:0.067043 
## [1304]   train-error:0.067043 
## [1305]   train-error:0.067043 
## [1306]   train-error:0.067289 
## [1307]   train-error:0.067289 
## [1308]   train-error:0.066798 
## [1309]   train-error:0.066552 
## [1310]   train-error:0.066798 
## [1311]   train-error:0.066798 
## [1312]   train-error:0.066798 
## [1313]   train-error:0.066798 
## [1314]   train-error:0.066798 
## [1315]   train-error:0.066798 
## [1316]   train-error:0.066798 
## [1317]   train-error:0.066798 
## [1318]   train-error:0.066798 
## [1319]   train-error:0.067043 
## [1320]   train-error:0.067289 
## [1321]   train-error:0.066798 
## [1322]   train-error:0.067043 
## [1323]   train-error:0.067043 
## [1324]   train-error:0.067289 
## [1325]   train-error:0.067289 
## [1326]   train-error:0.067043 
## [1327]   train-error:0.067043 
## [1328]   train-error:0.067043 
## [1329]   train-error:0.067043 
## [1330]   train-error:0.067043 
## [1331]   train-error:0.067043 
## [1332]   train-error:0.067043 
## [1333]   train-error:0.067043 
## [1334]   train-error:0.067043 
## [1335]   train-error:0.067043 
## [1336]   train-error:0.067043 
## [1337]   train-error:0.067043 
## [1338]   train-error:0.067043 
## [1339]   train-error:0.067043 
## [1340]   train-error:0.067043 
## [1341]   train-error:0.066798 
## [1342]   train-error:0.066798 
## [1343]   train-error:0.066798 
## [1344]   train-error:0.067043 
## [1345]   train-error:0.067043 
## [1346]   train-error:0.066798 
## [1347]   train-error:0.067043 
## [1348]   train-error:0.067043 
## [1349]   train-error:0.067043 
## [1350]   train-error:0.067043 
## [1351]   train-error:0.066798 
## [1352]   train-error:0.066552 
## [1353]   train-error:0.066552 
## [1354]   train-error:0.066552 
## [1355]   train-error:0.066552 
## [1356]   train-error:0.066552 
## [1357]   train-error:0.066552 
## [1358]   train-error:0.066552 
## [1359]   train-error:0.066798 
## [1360]   train-error:0.066798 
## [1361]   train-error:0.066798 
## [1362]   train-error:0.066798 
## [1363]   train-error:0.066798 
## [1364]   train-error:0.066552 
## [1365]   train-error:0.066552 
## [1366]   train-error:0.066798 
## [1367]   train-error:0.066798 
## [1368]   train-error:0.067043 
## [1369]   train-error:0.067043 
## [1370]   train-error:0.066798 
## [1371]   train-error:0.066798 
## [1372]   train-error:0.066798 
## [1373]   train-error:0.066798 
## [1374]   train-error:0.066798 
## [1375]   train-error:0.066798 
## [1376]   train-error:0.066552 
## [1377]   train-error:0.066552 
## [1378]   train-error:0.066552 
## [1379]   train-error:0.066306 
## [1380]   train-error:0.066306 
## [1381]   train-error:0.066306 
## [1382]   train-error:0.066306 
## [1383]   train-error:0.066306 
## [1384]   train-error:0.066306 
## [1385]   train-error:0.066061 
## [1386]   train-error:0.066061 
## [1387]   train-error:0.066061 
## [1388]   train-error:0.066061 
## [1389]   train-error:0.066061 
## [1390]   train-error:0.066061 
## [1391]   train-error:0.066061 
## [1392]   train-error:0.066061 
## [1393]   train-error:0.066061 
## [1394]   train-error:0.066061 
## [1395]   train-error:0.066061 
## [1396]   train-error:0.066061 
## [1397]   train-error:0.066061 
## [1398]   train-error:0.066306 
## [1399]   train-error:0.066061 
## [1400]   train-error:0.066061 
## [1401]   train-error:0.066061 
## [1402]   train-error:0.066061 
## [1403]   train-error:0.066061 
## [1404]   train-error:0.065815 
## [1405]   train-error:0.065815 
## [1406]   train-error:0.065815 
## [1407]   train-error:0.065815 
## [1408]   train-error:0.065815 
## [1409]   train-error:0.065570 
## [1410]   train-error:0.065570 
## [1411]   train-error:0.065570 
## [1412]   train-error:0.065570 
## [1413]   train-error:0.065570 
## [1414]   train-error:0.065570 
## [1415]   train-error:0.065570 
## [1416]   train-error:0.065570 
## [1417]   train-error:0.065570 
## [1418]   train-error:0.065570 
## [1419]   train-error:0.065815 
## [1420]   train-error:0.065815 
## [1421]   train-error:0.065815 
## [1422]   train-error:0.065570 
## [1423]   train-error:0.065815 
## [1424]   train-error:0.065570 
## [1425]   train-error:0.065815 
## [1426]   train-error:0.066061 
## [1427]   train-error:0.066061 
## [1428]   train-error:0.066061 
## [1429]   train-error:0.066061 
## [1430]   train-error:0.066061 
## [1431]   train-error:0.066061 
## [1432]   train-error:0.066061 
## [1433]   train-error:0.066061 
## [1434]   train-error:0.066061 
## [1435]   train-error:0.066061 
## [1436]   train-error:0.066061 
## [1437]   train-error:0.066061 
## [1438]   train-error:0.066061 
## [1439]   train-error:0.065815 
## [1440]   train-error:0.065815 
## [1441]   train-error:0.065815 
## [1442]   train-error:0.065815 
## [1443]   train-error:0.065815 
## [1444]   train-error:0.065815 
## [1445]   train-error:0.065815 
## [1446]   train-error:0.065815 
## [1447]   train-error:0.065815 
## [1448]   train-error:0.065815 
## [1449]   train-error:0.065079 
## [1450]   train-error:0.065079 
## [1451]   train-error:0.065079 
## [1452]   train-error:0.065079 
## [1453]   train-error:0.065079 
## [1454]   train-error:0.065079 
## [1455]   train-error:0.065815 
## [1456]   train-error:0.066061 
## [1457]   train-error:0.066061 
## [1458]   train-error:0.064833 
## [1459]   train-error:0.064833 
## [1460]   train-error:0.065570 
## [1461]   train-error:0.064587 
## [1462]   train-error:0.064587 
## [1463]   train-error:0.064587 
## [1464]   train-error:0.064587 
## [1465]   train-error:0.064587 
## [1466]   train-error:0.064587 
## [1467]   train-error:0.064587 
## [1468]   train-error:0.064587 
## [1469]   train-error:0.064587 
## [1470]   train-error:0.064587 
## [1471]   train-error:0.064833 
## [1472]   train-error:0.064587 
## [1473]   train-error:0.064587 
## [1474]   train-error:0.064833 
## [1475]   train-error:0.064833 
## [1476]   train-error:0.064587 
## [1477]   train-error:0.064587 
## [1478]   train-error:0.064587 
## [1479]   train-error:0.064587 
## [1480]   train-error:0.064587 
## [1481]   train-error:0.064587 
## [1482]   train-error:0.064587 
## [1483]   train-error:0.064587 
## [1484]   train-error:0.064587 
## [1485]   train-error:0.064587 
## [1486]   train-error:0.064587 
## [1487]   train-error:0.064587 
## [1488]   train-error:0.064587 
## [1489]   train-error:0.064587 
## [1490]   train-error:0.064587 
## [1491]   train-error:0.064587 
## [1492]   train-error:0.064587 
## [1493]   train-error:0.064587 
## [1494]   train-error:0.064587 
## [1495]   train-error:0.064342 
## [1496]   train-error:0.064342 
## [1497]   train-error:0.064342 
## [1498]   train-error:0.064342 
## [1499]   train-error:0.064342 
## [1500]   train-error:0.064587 
## [1501]   train-error:0.064342 
## [1502]   train-error:0.064587 
## [1503]   train-error:0.064342 
## [1504]   train-error:0.064342 
## [1505]   train-error:0.064342 
## [1506]   train-error:0.064342 
## [1507]   train-error:0.062623 
## [1508]   train-error:0.062623 
## [1509]   train-error:0.062868 
## [1510]   train-error:0.062377 
## [1511]   train-error:0.062377 
## [1512]   train-error:0.062868 
## [1513]   train-error:0.062868 
## [1514]   train-error:0.062868 
## [1515]   train-error:0.062868 
## [1516]   train-error:0.062868 
## [1517]   train-error:0.062868 
## [1518]   train-error:0.062868 
## [1519]   train-error:0.062868 
## [1520]   train-error:0.062868 
## [1521]   train-error:0.062868 
## [1522]   train-error:0.062868 
## [1523]   train-error:0.062868 
## [1524]   train-error:0.063114 
## [1525]   train-error:0.063114 
## [1526]   train-error:0.063114 
## [1527]   train-error:0.062868 
## [1528]   train-error:0.062868 
## [1529]   train-error:0.062868 
## [1530]   train-error:0.062868 
## [1531]   train-error:0.062868 
## [1532]   train-error:0.062868 
## [1533]   train-error:0.062377 
## [1534]   train-error:0.062132 
## [1535]   train-error:0.062132 
## [1536]   train-error:0.062132 
## [1537]   train-error:0.062132 
## [1538]   train-error:0.062132 
## [1539]   train-error:0.062868 
## [1540]   train-error:0.062868 
## [1541]   train-error:0.063360 
## [1542]   train-error:0.063360 
## [1543]   train-error:0.063360 
## [1544]   train-error:0.063360 
## [1545]   train-error:0.063360 
## [1546]   train-error:0.063360 
## [1547]   train-error:0.063360 
## [1548]   train-error:0.063360 
## [1549]   train-error:0.063360 
## [1550]   train-error:0.063360 
## [1551]   train-error:0.063360 
## [1552]   train-error:0.063360 
## [1553]   train-error:0.063360 
## [1554]   train-error:0.063360 
## [1555]   train-error:0.063360 
## [1556]   train-error:0.062623 
## [1557]   train-error:0.062377 
## [1558]   train-error:0.062377 
## [1559]   train-error:0.062377 
## [1560]   train-error:0.061886 
## [1561]   train-error:0.061886 
## [1562]   train-error:0.061886 
## [1563]   train-error:0.061886 
## [1564]   train-error:0.061886 
## [1565]   train-error:0.061886 
## [1566]   train-error:0.062377 
## [1567]   train-error:0.061886 
## [1568]   train-error:0.061886 
## [1569]   train-error:0.061886 
## [1570]   train-error:0.061886 
## [1571]   train-error:0.062623 
## [1572]   train-error:0.062623 
## [1573]   train-error:0.062623 
## [1574]   train-error:0.061886 
## [1575]   train-error:0.061886 
## [1576]   train-error:0.061886 
## [1577]   train-error:0.061886 
## [1578]   train-error:0.062132 
## [1579]   train-error:0.062132 
## [1580]   train-error:0.062132 
## [1581]   train-error:0.062132 
## [1582]   train-error:0.062132 
## [1583]   train-error:0.062132 
## [1584]   train-error:0.062132 
## [1585]   train-error:0.062132 
## [1586]   train-error:0.062132 
## [1587]   train-error:0.062132 
## [1588]   train-error:0.062132 
## [1589]   train-error:0.061886 
## [1590]   train-error:0.061886 
## [1591]   train-error:0.061886 
## [1592]   train-error:0.061886 
## [1593]   train-error:0.061886 
## [1594]   train-error:0.061395 
## [1595]   train-error:0.061395 
## [1596]   train-error:0.061395 
## [1597]   train-error:0.061640 
## [1598]   train-error:0.061640 
## [1599]   train-error:0.061640 
## [1600]   train-error:0.061640 
## [1601]   train-error:0.061395 
## [1602]   train-error:0.061395 
## [1603]   train-error:0.061395 
## [1604]   train-error:0.061640 
## [1605]   train-error:0.061640 
## [1606]   train-error:0.061640 
## [1607]   train-error:0.061640 
## [1608]   train-error:0.061640 
## [1609]   train-error:0.061640 
## [1610]   train-error:0.061640 
## [1611]   train-error:0.061640 
## [1612]   train-error:0.058939 
## [1613]   train-error:0.059185 
## [1614]   train-error:0.059185 
## [1615]   train-error:0.059185 
## [1616]   train-error:0.058939 
## [1617]   train-error:0.058939 
## [1618]   train-error:0.056974 
## [1619]   train-error:0.058939 
## [1620]   train-error:0.058939 
## [1621]   train-error:0.056974 
## [1622]   train-error:0.056974 
## [1623]   train-error:0.056974 
## [1624]   train-error:0.057220 
## [1625]   train-error:0.057220 
## [1626]   train-error:0.057220 
## [1627]   train-error:0.057220 
## [1628]   train-error:0.057220 
## [1629]   train-error:0.057220 
## [1630]   train-error:0.057466 
## [1631]   train-error:0.057466 
## [1632]   train-error:0.057466 
## [1633]   train-error:0.057466 
## [1634]   train-error:0.057711 
## [1635]   train-error:0.057711 
## [1636]   train-error:0.057711 
## [1637]   train-error:0.057711 
## [1638]   train-error:0.057711 
## [1639]   train-error:0.057711 
## [1640]   train-error:0.057711 
## [1641]   train-error:0.057711 
## [1642]   train-error:0.057711 
## [1643]   train-error:0.059676 
## [1644]   train-error:0.059676 
## [1645]   train-error:0.059430 
## [1646]   train-error:0.059430 
## [1647]   train-error:0.057466 
## [1648]   train-error:0.057466 
## [1649]   train-error:0.057466 
## [1650]   train-error:0.057466 
## [1651]   train-error:0.057466 
## [1652]   train-error:0.057466 
## [1653]   train-error:0.057466 
## [1654]   train-error:0.057466 
## [1655]   train-error:0.057466 
## [1656]   train-error:0.057711 
## [1657]   train-error:0.057711 
## [1658]   train-error:0.057711 
## [1659]   train-error:0.057466 
## [1660]   train-error:0.057466 
## [1661]   train-error:0.057466 
## [1662]   train-error:0.057466 
## [1663]   train-error:0.057466 
## [1664]   train-error:0.057466 
## [1665]   train-error:0.057466 
## [1666]   train-error:0.057466 
## [1667]   train-error:0.057466 
## [1668]   train-error:0.057220 
## [1669]   train-error:0.057220 
## [1670]   train-error:0.057220 
## [1671]   train-error:0.057220 
## [1672]   train-error:0.057220 
## [1673]   train-error:0.057220 
## [1674]   train-error:0.057220 
## [1675]   train-error:0.057220 
## [1676]   train-error:0.057220 
## [1677]   train-error:0.057220 
## [1678]   train-error:0.057220 
## [1679]   train-error:0.057220 
## [1680]   train-error:0.057220 
## [1681]   train-error:0.057220 
## [1682]   train-error:0.057220 
## [1683]   train-error:0.056974 
## [1684]   train-error:0.056974 
## [1685]   train-error:0.056974 
## [1686]   train-error:0.056974 
## [1687]   train-error:0.056974 
## [1688]   train-error:0.056729 
## [1689]   train-error:0.056729 
## [1690]   train-error:0.056729 
## [1691]   train-error:0.056729 
## [1692]   train-error:0.056974 
## [1693]   train-error:0.056729 
## [1694]   train-error:0.056974 
## [1695]   train-error:0.056974 
## [1696]   train-error:0.056974 
## [1697]   train-error:0.056974 
## [1698]   train-error:0.056974 
## [1699]   train-error:0.056974 
## [1700]   train-error:0.056974 
## [1701]   train-error:0.056974 
## [1702]   train-error:0.056974 
## [1703]   train-error:0.056974 
## [1704]   train-error:0.056974 
## [1705]   train-error:0.056974 
## [1706]   train-error:0.057220 
## [1707]   train-error:0.057220 
## [1708]   train-error:0.057220 
## [1709]   train-error:0.057220 
## [1710]   train-error:0.056729 
## [1711]   train-error:0.056729 
## [1712]   train-error:0.056729 
## [1713]   train-error:0.056483 
## [1714]   train-error:0.056729 
## [1715]   train-error:0.056729 
## [1716]   train-error:0.056729 
## [1717]   train-error:0.056483 
## [1718]   train-error:0.056483 
## [1719]   train-error:0.056483 
## [1720]   train-error:0.056483 
## [1721]   train-error:0.056238 
## [1722]   train-error:0.055992 
## [1723]   train-error:0.055992 
## [1724]   train-error:0.055992 
## [1725]   train-error:0.055992 
## [1726]   train-error:0.055747 
## [1727]   train-error:0.055501 
## [1728]   train-error:0.055501 
## [1729]   train-error:0.055501 
## [1730]   train-error:0.055255 
## [1731]   train-error:0.055255 
## [1732]   train-error:0.055010 
## [1733]   train-error:0.055255 
## [1734]   train-error:0.055255 
## [1735]   train-error:0.055255 
## [1736]   train-error:0.055255 
## [1737]   train-error:0.055255 
## [1738]   train-error:0.053782 
## [1739]   train-error:0.053782 
## [1740]   train-error:0.053536 
## [1741]   train-error:0.053536 
## [1742]   train-error:0.053782 
## [1743]   train-error:0.053536 
## [1744]   train-error:0.053536 
## [1745]   train-error:0.053536 
## [1746]   train-error:0.053536 
## [1747]   train-error:0.053536 
## [1748]   train-error:0.053536 
## [1749]   train-error:0.053536 
## [1750]   train-error:0.053782 
## [1751]   train-error:0.053782 
## [1752]   train-error:0.053782 
## [1753]   train-error:0.053782 
## [1754]   train-error:0.053782 
## [1755]   train-error:0.053045 
## [1756]   train-error:0.053045 
## [1757]   train-error:0.053045 
## [1758]   train-error:0.053045 
## [1759]   train-error:0.053782 
## [1760]   train-error:0.053782 
## [1761]   train-error:0.053782 
## [1762]   train-error:0.053782 
## [1763]   train-error:0.053782 
## [1764]   train-error:0.053782 
## [1765]   train-error:0.053782 
## [1766]   train-error:0.053782 
## [1767]   train-error:0.053782 
## [1768]   train-error:0.053782 
## [1769]   train-error:0.053536 
## [1770]   train-error:0.053536 
## [1771]   train-error:0.053536 
## [1772]   train-error:0.053536 
## [1773]   train-error:0.053536 
## [1774]   train-error:0.053536 
## [1775]   train-error:0.053536 
## [1776]   train-error:0.053536 
## [1777]   train-error:0.052800 
## [1778]   train-error:0.052800 
## [1779]   train-error:0.053045 
## [1780]   train-error:0.053045 
## [1781]   train-error:0.053045 
## [1782]   train-error:0.052800 
## [1783]   train-error:0.052554 
## [1784]   train-error:0.052800 
## [1785]   train-error:0.052800 
## [1786]   train-error:0.052800 
## [1787]   train-error:0.052800 
## [1788]   train-error:0.052800 
## [1789]   train-error:0.053536 
## [1790]   train-error:0.053536 
## [1791]   train-error:0.053536 
## [1792]   train-error:0.053536 
## [1793]   train-error:0.053536 
## [1794]   train-error:0.053536 
## [1795]   train-error:0.053291 
## [1796]   train-error:0.053291 
## [1797]   train-error:0.053291 
## [1798]   train-error:0.052800 
## [1799]   train-error:0.052800 
## [1800]   train-error:0.053536 
## [1801]   train-error:0.053536 
## [1802]   train-error:0.053536 
## [1803]   train-error:0.053536 
## [1804]   train-error:0.053536 
## [1805]   train-error:0.053536 
## [1806]   train-error:0.053536 
## [1807]   train-error:0.053536 
## [1808]   train-error:0.053536 
## [1809]   train-error:0.053536 
## [1810]   train-error:0.053536 
## [1811]   train-error:0.053536 
## [1812]   train-error:0.053536 
## [1813]   train-error:0.053536 
## [1814]   train-error:0.053536 
## [1815]   train-error:0.053536 
## [1816]   train-error:0.053536 
## [1817]   train-error:0.053291 
## [1818]   train-error:0.053291 
## [1819]   train-error:0.053536 
## [1820]   train-error:0.053536 
## [1821]   train-error:0.053536 
## [1822]   train-error:0.053536 
## [1823]   train-error:0.053291 
## [1824]   train-error:0.053291 
## [1825]   train-error:0.053291 
## [1826]   train-error:0.053291 
## [1827]   train-error:0.053291 
## [1828]   train-error:0.052800 
## [1829]   train-error:0.053045 
## [1830]   train-error:0.052800 
## [1831]   train-error:0.052800 
## [1832]   train-error:0.052800 
## [1833]   train-error:0.052800 
## [1834]   train-error:0.052800 
## [1835]   train-error:0.052800 
## [1836]   train-error:0.052800 
## [1837]   train-error:0.052800 
## [1838]   train-error:0.052554 
## [1839]   train-error:0.052554 
## [1840]   train-error:0.052554 
## [1841]   train-error:0.052554 
## [1842]   train-error:0.052554 
## [1843]   train-error:0.052554 
## [1844]   train-error:0.052554 
## [1845]   train-error:0.052554 
## [1846]   train-error:0.052554 
## [1847]   train-error:0.052554 
## [1848]   train-error:0.052554 
## [1849]   train-error:0.052554 
## [1850]   train-error:0.052554 
## [1851]   train-error:0.052554 
## [1852]   train-error:0.052554 
## [1853]   train-error:0.052554 
## [1854]   train-error:0.052554 
## [1855]   train-error:0.052554 
## [1856]   train-error:0.052554 
## [1857]   train-error:0.052554 
## [1858]   train-error:0.052554 
## [1859]   train-error:0.052554 
## [1860]   train-error:0.052554 
## [1861]   train-error:0.052554 
## [1862]   train-error:0.052554 
## [1863]   train-error:0.052554 
## [1864]   train-error:0.052554 
## [1865]   train-error:0.052554 
## [1866]   train-error:0.052554 
## [1867]   train-error:0.052554 
## [1868]   train-error:0.052554 
## [1869]   train-error:0.052554 
## [1870]   train-error:0.052554 
## [1871]   train-error:0.052554 
## [1872]   train-error:0.052554 
## [1873]   train-error:0.052554 
## [1874]   train-error:0.052554 
## [1875]   train-error:0.052554 
## [1876]   train-error:0.052554 
## [1877]   train-error:0.052554 
## [1878]   train-error:0.052554 
## [1879]   train-error:0.053045 
## [1880]   train-error:0.053045 
## [1881]   train-error:0.053045 
## [1882]   train-error:0.052554 
## [1883]   train-error:0.052554 
## [1884]   train-error:0.052554 
## [1885]   train-error:0.052554 
## [1886]   train-error:0.052554 
## [1887]   train-error:0.052800 
## [1888]   train-error:0.052800 
## [1889]   train-error:0.052800 
## [1890]   train-error:0.052800 
## [1891]   train-error:0.052800 
## [1892]   train-error:0.052800 
## [1893]   train-error:0.052800 
## [1894]   train-error:0.052554 
## [1895]   train-error:0.052554 
## [1896]   train-error:0.052554 
## [1897]   train-error:0.052800 
## [1898]   train-error:0.052800 
## [1899]   train-error:0.052554 
## [1900]   train-error:0.052554 
## [1901]   train-error:0.052554 
## [1902]   train-error:0.052554 
## [1903]   train-error:0.052554 
## [1904]   train-error:0.052554 
## [1905]   train-error:0.052554 
## [1906]   train-error:0.052554 
## [1907]   train-error:0.052554 
## [1908]   train-error:0.052554 
## [1909]   train-error:0.052554 
## [1910]   train-error:0.052554 
## [1911]   train-error:0.052554 
## [1912]   train-error:0.052554 
## [1913]   train-error:0.052554 
## [1914]   train-error:0.052554 
## [1915]   train-error:0.052554 
## [1916]   train-error:0.052554 
## [1917]   train-error:0.052554 
## [1918]   train-error:0.052308 
## [1919]   train-error:0.052308 
## [1920]   train-error:0.052308 
## [1921]   train-error:0.052308 
## [1922]   train-error:0.052063 
## [1923]   train-error:0.052063 
## [1924]   train-error:0.052308 
## [1925]   train-error:0.052308 
## [1926]   train-error:0.052063 
## [1927]   train-error:0.052063 
## [1928]   train-error:0.052063 
## [1929]   train-error:0.052308 
## [1930]   train-error:0.052554 
## [1931]   train-error:0.052554 
## [1932]   train-error:0.052308 
## [1933]   train-error:0.052308 
## [1934]   train-error:0.052308 
## [1935]   train-error:0.052308 
## [1936]   train-error:0.052063 
## [1937]   train-error:0.052063 
## [1938]   train-error:0.052063 
## [1939]   train-error:0.052063 
## [1940]   train-error:0.052063 
## [1941]   train-error:0.052063 
## [1942]   train-error:0.052063 
## [1943]   train-error:0.052063 
## [1944]   train-error:0.052063 
## [1945]   train-error:0.052063 
## [1946]   train-error:0.052063 
## [1947]   train-error:0.052063 
## [1948]   train-error:0.052063 
## [1949]   train-error:0.052063 
## [1950]   train-error:0.052063 
## [1951]   train-error:0.052063 
## [1952]   train-error:0.052063 
## [1953]   train-error:0.052063 
## [1954]   train-error:0.052063 
## [1955]   train-error:0.052063 
## [1956]   train-error:0.052063 
## [1957]   train-error:0.052063 
## [1958]   train-error:0.052063 
## [1959]   train-error:0.052308 
## [1960]   train-error:0.052308 
## [1961]   train-error:0.052308 
## [1962]   train-error:0.052308 
## [1963]   train-error:0.052308 
## [1964]   train-error:0.052308 
## [1965]   train-error:0.052308 
## [1966]   train-error:0.052308 
## [1967]   train-error:0.052308 
## [1968]   train-error:0.052308 
## [1969]   train-error:0.051817 
## [1970]   train-error:0.051817 
## [1971]   train-error:0.051817 
## [1972]   train-error:0.051817 
## [1973]   train-error:0.051817 
## [1974]   train-error:0.051817 
## [1975]   train-error:0.051817 
## [1976]   train-error:0.051817 
## [1977]   train-error:0.051817 
## [1978]   train-error:0.051817 
## [1979]   train-error:0.051817 
## [1980]   train-error:0.051817 
## [1981]   train-error:0.051817 
## [1982]   train-error:0.051817 
## [1983]   train-error:0.051817 
## [1984]   train-error:0.051817 
## [1985]   train-error:0.051817 
## [1986]   train-error:0.051817 
## [1987]   train-error:0.051817 
## [1988]   train-error:0.051817 
## [1989]   train-error:0.051817 
## [1990]   train-error:0.051817 
## [1991]   train-error:0.051817 
## [1992]   train-error:0.051817 
## [1993]   train-error:0.051817 
## [1994]   train-error:0.051817 
## [1995]   train-error:0.051817 
## [1996]   train-error:0.051817 
## [1997]   train-error:0.051817 
## [1998]   train-error:0.051817 
## [1999]   train-error:0.051817 
## [2000]   train-error:0.051817
##################################################################################
val_matrix <- as(as.matrix(data_test[,-c(ncol(data_test),ncol(data_test)-1, ncol(data_test)-2)]), "dgCMatrix")
#dim(val_matrix) #[1] 2409   50
#class(val_matrix)
#View(head(as.matrix(data_test[,-n_col_newdata])))
#setdiff(colnames(as.matrix(data_train[,-n_col_newdata])),colnames(as.matrix(data_test[,-n_col_newdata])))
#setdiff(colnames(as.matrix(data_test[,-n_col_newdata])),colnames(as.matrix(data_train[,-n_col_newdata])))

#### auc_xgboost
pre_auc_xgboost <- predict(bst_model,  newdata = val_matrix)
#class(pre_auc_xgboost)
data_pro <- data.frame(pre_auc_xgboost)
pre_probability <- data_pro
#head(pre_probability)
########################################
colnames(pre_probability) <- c("probability_1")
#dim(pre_probability) #[1] 1009    2
#colnames(data_test)
data_1 <- cbind(pre_probability, data_test[,c(ncol(data_test),ncol(data_test)-1, ncol(data_test)-2)])
#head(data_1)
#table(cut(pre_probability$probability_1,breaks = c(-0.1,.5,1)))
#head(pre_probability)
#write.table(pre_probability,paste0(dir_path,Sys.Date(),"-ecfp4_auc_rf_original.txt"),row.names = F,sep = "\t")
#write.csv(pre_probability,paste0(dir_path,Sys.Date(),"-ecfp4_auc_RF_original_0_52.csv"),row.names = F)
pred_auc <- prediction(data_1$probability_1,data_1$Freq)
auc_roc <- performance(pred_auc,"auc")@y.values[[1]]
auc_roc #[1] 0.967474
## [1] 0.9711555
write.csv(data_1,paste0(dir_path,Sys.Date(),"-xgboost_upsample_probability.csv"),row.names = F)
#######################plot
#View(data_1)
head(data_1)
##   probability_1 Freq         Virus                  Drug
## 1   0.376196653    0         HIV-2               arbidol
## 2   0.273858935    0 hCoV-19-Alpha        propagermanium
## 3   0.009781853    0 hCoV-19-Delta            telaprevir
## 4   0.040998276    0        HPV-11 tenofovir-alafenamide
## 5   0.067581207    0           HBV            cobicistat
## 6   0.190207511    0         HCV-7           chloroquine
library(ggplot2)
data_1$Freq <- factor(data_1$Freq)
ggplot(data_1) +
  stat_density(aes(x = probability_1, color = Freq),size = 1,
               alpha=0.5, bw = 0.01,  geom="line",position="identity") +
  scale_y_discrete(expand = c(0.01, 0)) +
  scale_x_continuous(expand = c(0, 0),limits = c(-0.05, 1.05),
                     breaks = seq(0,1,.2)) +
  labs(colour="Antiviral drug",x = "Probability", y = "Density",title = "XGboost")+
  geom_vline(aes(xintercept=0.5),
             color="gray80", linetype="dashed", size=0.5)+
  theme(panel.spacing = unit(0.1, "cm"),
        legend.position= "top",
        legend.key = element_rect(colour = NA, fill = NA),
        legend.text=element_text(size=14),
        legend.title = element_text(size=14),
        axis.ticks = element_line(colour = "black", 
                                  size = 0.5, linetype = "solid"),
        axis.line = element_line(colour = "black", 
                                 size = 0.5, linetype = "solid"),
        axis.text =element_text(face="plain", color="black", family = "sans",
                                size=14,angle = 0),
        panel.background = element_rect(fill = "white",
                                        colour = "white",
                                        size = 0.5, linetype = "solid"),
        panel.grid.major = element_line(size = 1, linetype = 'dashed',
                                        colour = "white"),
        axis.title = element_text(color="black", size=14, face="plain",family="sans")) +
  scale_color_manual(name = "Antiviral drug",values=c("#3b58a7","#90278e"))

##########################output
ggsave(filename = paste0(Sys.Date(),"-probability_plot_SVM.tif"), plot = last_plot(), 
       device = "tiff", path = dir_path,
       scale = 1, width = 16, height = 12, units = "cm",
       dpi = 300, limitsize = TRUE, compression = "lzw")
#View(data_1)
data_11 <- data_1[data_1$Freq == 1, ]
data_22 <- data_1[data_1$Freq != 1, ]
#dim(data_1) #[1] 115   5
table(cut(data_11$probability_1, breaks = c(0,0.5,1), include.lowest = T))
## 
## [0,0.5] (0.5,1] 
##       9     106
table(cut(data_22$probability_1, breaks = c(0,0.5,1), include.lowest = T))
## 
## [0,0.5] (0.5,1] 
##     841      53