Data de entrega 10/4 em aula
Use os dados Sonar, Mines vs Rocks dataset do UCI Machine Learning Repository. Use o arquivo sonar.all-data .
Voce vai verificar qual dentre os algoritmos abaixo é o melhor para classificar os dados.
divida os dados em k folds usando o fold i como teste e os outros como treino (-i) para todos os valores dos hiperparametros divida o treino (-i) em q folds usando o fold j para teste e os outros (-j) para treino treine o classificador com (-j) e com os valores dos hiperparametros calcule a acuracia do classificador em j calcule a acuracia media para esse conjunto de hiperparametros h_i e o conjunto de hiperparametros com maior acuracia media treine (-i) com h_i e meca a acuracia a_i reporte a acuracia media entre os a_iou em python
out=0 for TR,TE in kfold(DADOS,k): maxacc=0 for H in hipergrid(): accur=0 for TR2,TE2 in kfold(TR,q): classific=train(TR2,H) accur+=test(classific,TE2) if accur>maxacc: maxacc=accur maxhiper=H class2=train(TR,maxhiper) out+=test(class2,TE) print out/konde:
É tambem possivel trocar a ordem dos dois "for" de dentro
for TR2,TE2 in kfold(TR,q): for H in hipergrid():
ATENCAO. No SkitLearn, o kfold correto e o StratifiedKFold