15
Linguagens de Programação
UFGD
4
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
1
Linguagens de Programação
UFGD
1
Linguagens de Programação
UFGD
1
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
7
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
Texto de pré-visualização
O GridSearchCV é uma ferramenta usada para automatizar o processo de ajuste dos parâmetros de um algoritmo pois ele fará de maneira sistemática diversas combinações dos parâmetros e depois de avaliálos os armazenará num único objeto No Trabalho você deverá realizar uma avaliação de uma base de dados usando o modelo de ajustes de parâmetros GridSearchCV com StratifiedKFolds A escolha da base de dados técnica de classificação parâmetros testados números de folds deverá ser uma decisão tomada e justificada A entrega será dois arquivos a serem submetidos O primeiro arquivo será na extensão ipynb contendo as fontes do código testado e o segundo arquivo formato pdf será um relatório contendo no máximo duas páginas apresentando a descrição do que foi realizado base de dados classificador parâmetros testados análise e conclusão Abaixo segue um exemplo com detalhes do uso do GridSearchCV bem como exemplos didáticos from sklearn import datasets import pandas as pd Dados de Câncer de mama cancer datasetsloadbreastcancer Criação do dataset features e vetor labels features cancerdata labels cancertarget Importação do AdaBoost from sklearnensemble import AdaBoostClassifier Uso do constructor do AdaBoost para criar um classifier clf AdaBoostClassifier Sem nada dentro pois vamos variar os parâmetros Exemplo dos parâmetros que quero testar parametros nestimators1 5 10 learningrate01 1 2 Criação do objeto do GridSearchCV grid GridSearchCVestimator clf paramgrid parametros scoring accuracy cv 20 Treinando o grid gridfitfeatures labels Imprimindo os resultados pdDataFramegridcvresults Após a criação do objeto do GridSearchCV podese treinar e imprimir os resultados Há muitas colunas nesse resultado então vamos fazer um subset escolhendo as colunas de interesse pdDataFramegridcvresultsparamsranktestscoremeantestscore Conforme a tabela acima o melhor resultado de accuracy é produzido pelos parâmetros learningrate 1 nestimators 10 O atributo bestparams pode ser usado também para obter os melhores parâmetros Imprime os parâmetros que produziram o bestscore gridbestparams Imprimindo o score gridbestscore Note que o objeto grid foi definido com cv 20 e quando cv é um número inteiro o GridSearchCV executa um StratifiedKFolds isso quer dizer que o dataset foi divido em 20 partes ou folds e cada parte foi usada como test em uma simulação Exemplo para o uso do StratifiedKFolds com 5 folds grid2 GridSearchCVestimator clf paramgrid parametros cv 5 scoring accuracy Imprime o f1 grid2fitfeatureslabelsbestscore O cv também aceita a atribuição de um objeto do StratifiedShuffleSplit neste caso é necessário a definição da quantidade de nsplits e o tamanho do dataset de testes Exemplo para o uso do StratifiedShuffleSplit Importação do módulo do StratifiedShuffleSplit from sklearnmodelselection import StratifiedShuffleSplit Usando o constructor para criar o objeto sss sss StratifiedShuffleSplitnsplits 20 20 simulações testsize 02 20 do dataset será de testes randomstate 42 Permitir a reprodutibilidade Criando um objeto do GridSearchCV grid3 GridSearchCVestimator clf paramgrid parametros cv sss scoring accuracy Imprime o f1 grid3fitfeatureslabelsbestscore Por fim há a opção de não usar o cv do GridSearchCV isto seria feito omitindoo Exemplo do GridSearchCV sem cv Demanda um cv manual Criando um objeto do GridSearchCV sem cv grid4 GridSearchCVestimator clf paramgrid parametros scoring accuracy Imprime o f1 grid4fitfeatureslabelsbestscore
15
Linguagens de Programação
UFGD
4
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
1
Linguagens de Programação
UFGD
1
Linguagens de Programação
UFGD
1
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
7
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
2
Linguagens de Programação
UFGD
Texto de pré-visualização
O GridSearchCV é uma ferramenta usada para automatizar o processo de ajuste dos parâmetros de um algoritmo pois ele fará de maneira sistemática diversas combinações dos parâmetros e depois de avaliálos os armazenará num único objeto No Trabalho você deverá realizar uma avaliação de uma base de dados usando o modelo de ajustes de parâmetros GridSearchCV com StratifiedKFolds A escolha da base de dados técnica de classificação parâmetros testados números de folds deverá ser uma decisão tomada e justificada A entrega será dois arquivos a serem submetidos O primeiro arquivo será na extensão ipynb contendo as fontes do código testado e o segundo arquivo formato pdf será um relatório contendo no máximo duas páginas apresentando a descrição do que foi realizado base de dados classificador parâmetros testados análise e conclusão Abaixo segue um exemplo com detalhes do uso do GridSearchCV bem como exemplos didáticos from sklearn import datasets import pandas as pd Dados de Câncer de mama cancer datasetsloadbreastcancer Criação do dataset features e vetor labels features cancerdata labels cancertarget Importação do AdaBoost from sklearnensemble import AdaBoostClassifier Uso do constructor do AdaBoost para criar um classifier clf AdaBoostClassifier Sem nada dentro pois vamos variar os parâmetros Exemplo dos parâmetros que quero testar parametros nestimators1 5 10 learningrate01 1 2 Criação do objeto do GridSearchCV grid GridSearchCVestimator clf paramgrid parametros scoring accuracy cv 20 Treinando o grid gridfitfeatures labels Imprimindo os resultados pdDataFramegridcvresults Após a criação do objeto do GridSearchCV podese treinar e imprimir os resultados Há muitas colunas nesse resultado então vamos fazer um subset escolhendo as colunas de interesse pdDataFramegridcvresultsparamsranktestscoremeantestscore Conforme a tabela acima o melhor resultado de accuracy é produzido pelos parâmetros learningrate 1 nestimators 10 O atributo bestparams pode ser usado também para obter os melhores parâmetros Imprime os parâmetros que produziram o bestscore gridbestparams Imprimindo o score gridbestscore Note que o objeto grid foi definido com cv 20 e quando cv é um número inteiro o GridSearchCV executa um StratifiedKFolds isso quer dizer que o dataset foi divido em 20 partes ou folds e cada parte foi usada como test em uma simulação Exemplo para o uso do StratifiedKFolds com 5 folds grid2 GridSearchCVestimator clf paramgrid parametros cv 5 scoring accuracy Imprime o f1 grid2fitfeatureslabelsbestscore O cv também aceita a atribuição de um objeto do StratifiedShuffleSplit neste caso é necessário a definição da quantidade de nsplits e o tamanho do dataset de testes Exemplo para o uso do StratifiedShuffleSplit Importação do módulo do StratifiedShuffleSplit from sklearnmodelselection import StratifiedShuffleSplit Usando o constructor para criar o objeto sss sss StratifiedShuffleSplitnsplits 20 20 simulações testsize 02 20 do dataset será de testes randomstate 42 Permitir a reprodutibilidade Criando um objeto do GridSearchCV grid3 GridSearchCVestimator clf paramgrid parametros cv sss scoring accuracy Imprime o f1 grid3fitfeatureslabelsbestscore Por fim há a opção de não usar o cv do GridSearchCV isto seria feito omitindoo Exemplo do GridSearchCV sem cv Demanda um cv manual Criando um objeto do GridSearchCV sem cv grid4 GridSearchCVestimator clf paramgrid parametros scoring accuracy Imprime o f1 grid4fitfeatureslabelsbestscore