From 9da32bb31779f518bafab9be2b3c1776f66a23ee Mon Sep 17 00:00:00 2001 From: arushikumar Date: Sun, 12 Nov 2017 17:24:26 +0000 Subject: [PATCH 1/3] Done --- __init__.pyc | Bin 157 -> 147 bytes q01_myXGBoost/__init__.pyc | Bin 171 -> 161 bytes q01_myXGBoost/build.py | 12 ++++++++---- q01_myXGBoost/build.pyc | Bin 1930 -> 1509 bytes q01_myXGBoost/tests/__init__.pyc | Bin 177 -> 167 bytes q01_myXGBoost/tests/test_q01_myXGBoost.pyc | Bin 2530 -> 2517 bytes 6 files changed, 8 insertions(+), 4 deletions(-) diff --git a/__init__.pyc b/__init__.pyc index 800b98fc1211bdd53dcefbfbba98671d8a62d668..5d22c4dd65205d4cd76776a4e45a17a3692612a0 100644 GIT binary patch delta 72 zcmbQsIGK^1`7}CmW3=9m;RxzQ)sYS&xiAfom#TlvDF)pda*(Lb}G3iCA zm5C+!xiJMr`B|ySB{31{N%{H3CGjwRe0*kJW=VX!UO{CE2hb>+-29Z%oK!nTAiEfd F833pkC1U^p diff --git a/q01_myXGBoost/__init__.pyc b/q01_myXGBoost/__init__.pyc index dcfccf77730cd8d473ebdac1587e4e826458fef7..eea1dcd950ac43a820a0fafd2a564a18d6458d92 100644 GIT binary patch delta 86 zcmZ3@xR8;Z`7}I|p3=9m;RxzQ)sYS&xiAfom#TlvDF)pda*(Lb}G3iCA rm5C+!xiJMr`B|ySB{31{N%{H3CGjwRp@Ct1Ze@hK6G${>VuK<8XA~oj diff --git a/q01_myXGBoost/build.py b/q01_myXGBoost/build.py index f000406..1d093c1 100644 --- a/q01_myXGBoost/build.py +++ b/q01_myXGBoost/build.py @@ -19,7 +19,11 @@ # Write your solution here : - - - - +def myXGBoost(X_train, X_test, y_train, y_test, model, param_grid, Kfold=3, **kwargs): + gridsearch=GridSearchCV(estimator=model, param_grid=param_grid, cv=Kfold, return_train_score=True) + gridsearch.fit(X_train,y_train) + best_params = gridsearch.best_params_ + score = accuracy_score(y_test, gridsearch.predict(X_test)) + model.set_params(**best_params) + return score, best_params + diff --git a/q01_myXGBoost/build.pyc b/q01_myXGBoost/build.pyc index 2b98a8abb7197284a857905ac59673fc9bb9b868..adea2ea59d4c12a34fdaf5443aeee27292ff28a1 100644 GIT binary patch delta 658 zcma)2O;6iE5S{f$5{E`bK%%O^flHNMFdTYET#!KO!HrbJ#oE}L#7WGC-7yuCBOh|B z)RQIt1IMbrslT9qpfheOda7#ezV(}VGxK&ozx=+n@BZj@mz&N_0>8h2&NJHf`0M_$ z@CAGr9)7zKm!fJ@bc;4Cu2_)~AV4ah^dNPh^dWVjY(eS)3fO?R?m*drIi&zf2R04} z<}R!QKo3e%6ZN4aH7y6$UG6n+K^edoAT{v-CJwo%d>Z#2dAhQgB|mjcuZh8uA4qme6Q`ktr0q^fSp2U(h+GwsF(U#t|ow3sy#@ zS%TQ@5wYrzqJDDURxJuW#7K3>=5n2?WyDX^(5s1FrpTJbCuyd(G0Qfsk|voU3;&wg z)ci6^2^cci3xaT_a}`Qc*jctHa%sYk+AQo!zDZP=(9H09I@X%a8$DMEhIc2YasF_9 zan8}OuDn5iz}@(kAdbYg2*fMV6ZN~+W3@}MXpf=Kz{1Ab^Ru2thZJlKJ;T4P{hzaO RkuB>{dmvudi}r!=e*$3X4UeD|d z-EAj})~AqT9sr(%hkzqbfP{qLf_MO^s#i1me3`=e zTEYKM@Ntg?fWn`E93U1f2apF)gb;@y$QDB0fT9U;v)(s&--5VR@0*afq3A%|0igxV zRzS7jwSc$_x(l;aijKcG0SiFFQ2>Lu_a8IVhBeSl&}d!*)dtl8g(17}Ita!Mh}R+R zL%ad;CYS~&4BrEVp6j6cpf<=;Z9;}`ZNVcl)Y@&x(EAFiu7cVDbq&;YPy@)Cpl-ZV zdlMeTTO9ose1q57X8D5)S-`(0MvNHYmc76zuD?PuSl@7YGqO%krSo>uwZHox%?FJ zFk!;54P|_v-$OUz5$2BVD3#75N|U$GJ}Yy@{>Lw+%^WK;mtfKq^&csmA4oZPD)$A| zhA0Drdx6saV_#O|%<6^oWihU7In${hA7+!Xq${59zk2X6 zDHb>hq#aLAkTZMLqUP0w`WhbLh*lt4VngiWvm*MUAN=pAz%`Djh!Ks{W#1#3ckXsX zBOCPz=t|tzXcHywXtYJTZGtNVR|%+b(GCGsBBBA01_U<9dBzUvMF3+vCUXD) diff --git a/q01_myXGBoost/tests/test_q01_myXGBoost.pyc b/q01_myXGBoost/tests/test_q01_myXGBoost.pyc index 54780c7a0849f5388ca7211031c025d7b7abae97..21447967030a82d2b6043d47eefc9c68fd41437c 100644 GIT binary patch delta 550 zcmb_XyG{Z@6g|tnSRR6a8)Ij*pc^Ql(1OH5V?!bq5`!Vgth|B?yF)?T#e&*u3ZtK3 zNBj^gOA9SbD6H&_vjh`AfScUMoOACvnUC~qT9?1$k(bQROjl*evkS>Bs;9)|vS#%X!+ntNFONYG&F?8!o zM29{}#~|txM5k`eib7w&f#2`_=Dm6IX5Oq%OP7DlRQdY*SyyGr;-*}e3Y^G0cR>Oy z392B{KoSULgbD&+XdsZmQlLq&bUa5AijfRyE-GLdP-7+v_gr)oP~l0V8bd~a37Qp< z16@HiR6$n}YO@3rfpUOAPNP7fjuH;wm)L-g!Dao+GXyT zOgwjJUoq0|_gvR!oyGp9yx$p5+qILJCCv7jPx!r2 Date: Sun, 12 Nov 2017 17:30:07 +0000 Subject: [PATCH 2/3] Done --- q02_param2/__init__.pyc | Bin 168 -> 158 bytes q02_param2/build.py | 16 ++++++++++++++++ q02_param2/build.pyc | Bin 1318 -> 1711 bytes q02_param2/tests/__init__.pyc | Bin 174 -> 164 bytes q02_param2/tests/test_q02_param2.pyc | Bin 2462 -> 2431 bytes 5 files changed, 16 insertions(+) diff --git a/q02_param2/__init__.pyc b/q02_param2/__init__.pyc index fae1a21213b073a08d0544b24569cad9776893f0..c593879117fbd98dbafccfa0fbdb359564f03eb2 100644 GIT binary patch delta 83 zcmZ3%IFFH?`785kJ!GxBp&^%ILqi!(B_OLG&8^uzOuvWp86lT-DR n^HWmwBhr)d^NUO33ySiyQj<&c3k{6o3lfVGbB**TwkrYvro|m) delta 93 zcmbQoxPp}Fnp3=9m;RxzQ)sYS&xiAfom#TlvDF)pda*(Lb}G3iCA qm5C+!xiJMr`B|ySB{31{N%{H3CGjwRp@C6+L1Iy2u2IayT15c)vLZJC diff --git a/q02_param2/build.py b/q02_param2/build.py index 156fe17..72469d9 100644 --- a/q02_param2/build.py +++ b/q02_param2/build.py @@ -1,7 +1,10 @@ +# %load q02_param2/build.py # Default imports from sklearn.model_selection import train_test_split from xgboost import XGBClassifier +from sklearn.model_selection import GridSearchCV import pandas as pd +from sklearn.metrics import accuracy_score from greyatomlib.Xgboost_project.q01_myXGBoost.build import myXGBoost # load data @@ -19,3 +22,16 @@ # Write your solution here : + +def param2(X_train, X_test, y_train, y_test,model,param_grid): + + param_grid1 = {"max_depth": [2, 3, 4, 5, 6, 7, 9, 11], + "min_child_weight": [4, 6, 7, 8], + "subsample": [0.6, .7, .8, .9, 1], + "colsample_bytree": [0.6, .7, .8, .9, 1] + } + ac,bst=myXGBoost(X_train, X_test, y_train, y_test,model,param_grid1,KFold=3) + m1=model.set_params(**bst) + h,j=myXGBoost(X_train, X_test, y_train, y_test,m1,param_grid,KFold=3) + #print model + return h,j diff --git a/q02_param2/build.pyc b/q02_param2/build.pyc index 1db061f35e6b828eb3f3bc02020a1744270c8966..6f40c7bfae6780e590a63ade1732528f77a04c23 100644 GIT binary patch literal 1711 zcmb_c&2Jk;6#wno@n;g}i?k_-N=T?a*-emgLKqQ54u}dI38Gb{)p%#Jo@CeS?u?-> z_9^L+KLGxNUO2;re*n0ExPy?85F9{Uk>I^qw~bPcjCY^k$IScsz1h-VD~+!%YC(j> zs?q=J^qQAFK+@wO0a6cv2ajbRiI22|pj5~uXD=ft7jhZN5`v05yM&~Qw1%Ko*eXcs zNE-+m@Kgn-O~@+F$@enUGEP?@%ltg_9Rp@geC!0P&zMmdT2LMonOl%G$U0;LvWauw zze^ddAy`MSfnXE51i1`J5mq5-^BUwjSaLI&{$!W=6#x8#Gif2>rrpPeA$a%aqIhD zeB#zGz4+U2c>UhfuG}R)Cel>Ie?R*3yLSff_TrDXK0o~Ffql$e^jspjibIi%ha%=k zz>mEJ^GDA%NM?H?(t#9Fg+xx0^E#l{d`(1C`#qjNNmvrU1W6bXel^4n`+YVP+J*zG zSpa(p^q9=+|Eb-;{=5PU%;@nj^D!%7R>q8CY;x4|ig(w?yoz~^^{2F_hEITb{h3pB z%qY&~Qw_|Um^CnK^4uP^x2T>w+UKfDMQOxwCpDL@t4tgyP2yblQgJ_&YHWv^Z>Srx zltwHX>O_VgDIE{(0;-=cK~=!{>s8FywV4czNXLnCzM?ECq;N2`xl)#sdHby_k!{Yh zU*@2Ul2JAsi(I6p%?Mde^*D6%ZaH`2Y3iMNdPz+@tJ!OsNtHNX&QBQA=v%Jyskm!7 zsE8~#XF%szOm{60+|bd}HnDKTyh&Vln5C*K@`)Mhvq>uQ?gv?ZX2v2?-G~BqkK+N~ zmvEeCrz*1Dd$;$BI`+DQ3H7iup1S;95_>nurQwSV|0QqJ+xB++TVBh%<+rybP=3qZ0C}vr(T9x$^H95&N8Up9@&{A4y?cL1SrKq<-Q^*<44a&o$dFkvLaV zVY4*RgU*%oJNItyhEF~M9alkt5l=_1gbexqGdTP)AkZu$sFN&m?K^gK+UFAc>r6J7 vY!bNw#a^F3Z%@1ZKewFIeU(}`Nz`jxxZ%#PdHh>uT59<>y&Y;i)9vcN){%|b literal 1318 zcmcIkJ8u&~5S}}~@^a#kHw7ti<%EDzAe2J{DHRc1gcMGePHXSxyvd&La=U>zq)YN6 z;2)%+hW`K!h#ndmD2Qm0U}nz-1U0MM+1YvR%r|2fzEwxodKZt{&|gD%-o~v<4gkl` z0R<2{5IEq_-38@BT!5gE-wU9M5R|NK5mXuC3Ir8!LfS2F|eTP8|!|n+10)1z$ zWq_C+7Z!rif7FmG#y~hAP(22`47>syLk`1<>o)PxDg@&YOh8ZriGeZvC~&l_0v`uH z0lWqgx=g|<=`I1E0zTb0iZI*^Dsqom;BycafzQKgFbRACP5}b+D8N?zGQuH$;Ho1e zU}{7%CcB{#+Jrh)(&U;dYPL7-tShFq+>s*N%;m!?Cf8oaa-rj57_oAoMFE&0NnE`X^*+eoCg-oR#7ST%pAG|*E z)iWb_C%s~Ei?cSxq)p(g`=QS6%U^X8Fh>-lZJrP z2dzA?#l!ZNiS;pcp$|PT@;}tB?o5-!- zY(CT?(@oauNZk>8&AUSHnIvsSndmW-#LYBIc17DXx1$zKM>x3eFRz3)@Jh3FfJHRY zp3Nqg&0=s}q{o~Yr#^+JnIq92PE*!x*xW)b6h@Xw*C#_;z+wK1Z|8uDOL3@}HdKAe z%@Q7i%#>_3{z|H`zkDtHHOLK{mj%wyzeXk)4{3%8KpJQ*jG-K*O4^2A+_tpm(=_|^ zWAVq4*s>5=1lgy)`IAU~1Nq<3q?~UdQU^+`QT>`gtvNMk%&8S7+(l=>xoYWb`6pjL BM%4fS diff --git a/q02_param2/tests/__init__.pyc b/q02_param2/tests/__init__.pyc index 058448ae2818a81e9f21309e6d78402a4c1b04a8..b9024e40e7feeffef9d4863a04a1f5547aab4aa4 100644 GIT binary patch delta 89 zcmZ3-xP+0N`7yX`71``%aAR6iX1dF%7Rd{sz8yesJuw~#B~HcA6i1%--2 zLk`UA$W`zLSPk5%`jTL~R6%~08h8`Tl1p)??wk-X2m6H%)i8gvO()?GiE6Z%Icy=@Z+K?#kss#zozDJ3f~qoyAc=y>yw) z!o@Q3QaXv#MV5GeK>e5n^y2y|jx+8iX*>^nPH*;xZsMh0G^7yI=BARS*5Nn&R(#0- delta 493 zcmew_G*6hF`7riNa0{8;Q_Im85zWynHdeui2$unBw& zH9(_)A_5FBef%JUYSt;3ej!8_)$SlrC&5m(NEzT~YnUien~QvYRr>P0nXGO;G?E ltpUVHL^0K^`^SEZw}cI7No7390YO5O?{i2{-&eMrP5=@HlQ#eW From 43bcf6993e57e4ed6c1435a6afba5a6b5a007e2c Mon Sep 17 00:00:00 2001 From: arushikumar Date: Sun, 12 Nov 2017 17:31:56 +0000 Subject: [PATCH 3/3] Done --- q03_xgboost/__init__.pyc | Bin 169 -> 159 bytes q03_xgboost/build.py | 16 +++++++++++++--- q03_xgboost/build.pyc | Bin 1068 -> 1071 bytes q03_xgboost/tests/__init__.pyc | Bin 175 -> 165 bytes q03_xgboost/tests/test_q03_xgboost.pyc | Bin 2035 -> 2007 bytes 5 files changed, 13 insertions(+), 3 deletions(-) diff --git a/q03_xgboost/__init__.pyc b/q03_xgboost/__init__.pyc index 4fb1998dc3d2d50ff37e3ee669c3f2f126125ccc..f10e8bd035e77e0d2daec556875bdd8151cf4bb2 100644 GIT binary patch delta 84 zcmZ3T7`7}K9U3=9m;RxzQ)sYS&xiAfom#TlvDF)pda*(Lb}G3iCA nm5C+!xiJMr`B|ySB{31{N%{H3CGjwRp@DIH1w<@nVx1xYARi+D diff --git a/q03_xgboost/build.py b/q03_xgboost/build.py index fc75b96..5c56f94 100644 --- a/q03_xgboost/build.py +++ b/q03_xgboost/build.py @@ -1,6 +1,8 @@ +# %load q03_xgboost/build.py # Default imports from sklearn.model_selection import train_test_split from xgboost import XGBClassifier +from sklearn.model_selection import GridSearchCV import pandas as pd from sklearn.metrics import accuracy_score @@ -10,7 +12,15 @@ X = dataset.iloc[:, :-1] y = dataset.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=9) - - # Write your solution here : - +def xgboost(X_train, X_test, y_train, y_test,**kwargs): + model=XGBClassifier(seed=9) + model.set_params(**kwargs) + #ac,bst=myXGBoost(X_train, X_test, y_train, y_test,model,param_grid1,KFold=3) + #h,j=param2(X_train, X_test, y_train, y_test,model,param_grid2) + #return h,j + #print model + model.fit(X_train,y_train) + d=model.predict(X_test) + a=accuracy_score(y_test,d) + return a diff --git a/q03_xgboost/build.pyc b/q03_xgboost/build.pyc index fab0e81b5cf21cee7460897e50911351debb52bc..edd72eb204ee8b775a605211a7912e8a0836a263 100644 GIT binary patch literal 1071 zcmb_a&2H2%5dNI(U$@=v!UcMvNA}bpaYcZrP!C9zNF`WBNRey1ZFZAQu)V;d?Wy$0 z`|t)l0Z+k^2Y?x;0wk^^@nq&3dpz^a#6LzucRk1yZk|5gvM-*preuyPh* zFWdRYjn*-O5isN)LHD5t&=hirt0;Oy8SEk(Bby+*1-*?=Ko$a@On0c3;wL>*L7Jbi zu(DX@-Z-DTrYwBx8Ifmp^z5*d&J|~cu`SH!k8Gh&jI`?F@YQh(?-DGPT3M;qxl^?@ z?k+)EdYP29T;{4YB-uVt?w#KvXM1Du(VXvJe}DPq-nS>7qg%Pub(K3Wy(xH~>W~=F zifO%|<&H`C&=Bgu6~tv1n=a-8n+`q$f{h3pU_U#u`PTU4~ z{TEC+!@OhhUfOf#`M#>wru2NN4pL4@MG)>eX~{)hnMB%^yC@c`O4{UgZ5OVQ$|Q=; zCbRR?x~5h(ww@d1leZ5Z<{w%tIb9W{K4{hu{f=O~EtCsHc_zvlsdF9%rjaMZ z86P@Ol(h=Q&w^a1Onw*$v%3X?(o-on zo(CR)SKui)Aszr`Hmx{t##)c(e`dcKhrhP^-#-0(o#W!^()SU)_6re3N1y~MfkZ&C z9H0zPg-F7+9HML?X?x!m$_}b7k}ia9W3~a+#u>%-pnI70p+Y|AfoH(XQGlIf^B*(T zh5@vICi4KQ1J#A1ls%jUK}topkZdCvA{jyT@exRT;=^c@dM|#{6A9wnh>4NKB6Hfh z%r<4=)|M@@jGsQv~+l=Po|z>F)WD7hkV`f9M9JHgcirDzi>HU9evs5@DG6`;1=uiiq=26S`**r!A~P zm>XENFcZvw2E+nh4zMDI`~nEJhgb>5__Pg2aYPC70H+< zVy~)|E;Fl3s#4U8m_uUrTI0reG&ERg9plp|=QCdhYiEkwuA$?L8ZA}Ed&1!H(pc?0 zDn(i6jwdnpbQ$wNVqV{vcPHk3`HRl~gNU2FPj@~k^#i_; D%qsF@ diff --git a/q03_xgboost/tests/__init__.pyc b/q03_xgboost/tests/__init__.pyc index c17cec459d51c331a15e5ab5803f59769a09f558..1e6b3f939558a9d8721af2f3d1d2b41ddeb6c5fa 100644 GIT binary patch delta 90 zcmZ3_xRjBd`7}G)x3=9m;RxzQ)sYS&xiAfom#TlvDF)pda*(Lb}G3iCA tm5C+!xiJMr`B|ySB{31{N%{H3CGjwRp@DIH1w<^SB(=DtIA&stA^-(bC9nVh diff --git a/q03_xgboost/tests/test_q03_xgboost.pyc b/q03_xgboost/tests/test_q03_xgboost.pyc index 921bfbfcc335bbf67f8c0926d15af52c24e63024..5a35f5346843f3fdf9094faaa4330641829b33b0 100644 GIT binary patch delta 625 zcmb_X%St0b6g}0|otT&ypJ^Wpab?6sD}$>U$U;PLAs9giU4%-i>Ac!*yDQ*8;w!XNNbb-DMP`#ASKcb`kr_iXxZy8k=*K+-mV zP4(kP`Iqc0n3&@Lx6q>?f-IQ zg)5(pd8KwwI#(Mi=D?U0xHKk6f?JT49YTEyJwE{0e8D z%9Ono)ro+|e4oi{YRgwz9eKGp*RLp#%ng#2zsyoPp^AQ#g&Pa`WcIcXRO-|M-*s5j zj%)R1+h>t;7(~rDWL4Lx2HbVNdzB!FMLCRuhEngGu6-$=4KYVgiXHjKTA9-Kf@a7% tvCUbMA(LcA{wiP8s3HIW delta 621 zcmcIhJ!@1!6g~6iy?x0h>zc29NyK0(S8SA!#%2T2CWR1#U@@?H>m4>Pae14a5jL

ziWLBhe9R|zA(n0gm?D5e^d*E9un}wlHU>p*IY@R&plhHq=sIWwBtWB}G0-?@f@cP| z1N4CP0rUdcK~M#@=<~in#jm6U+wxb-ke7QBGzpqQKja#)Qk`Zmk23~j(%YJ4c+_p{ z=T_6L)O`;USCBQQgu6L%zU z4jk|$N|M1OwbM@|TO<8TMQEsy^=H5k>@;GmX92WOQ q65bZG?niW2&#+YW`d=`sO#iim_e1=lz*gORatraqe|qOhT>S|R(zgr%