Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Erro no ajuste do StackingCVClassifier

Olá! Estou recebendo o seguinte erro ao tentar executar o ajuste do StackingCVClassifier: TypeError: got an unexpected keyword argument 'fit_params' A seguir está meu código, seguindo os passos do instrutor:

from mlxtend.classifier import StackingCVClassifier
parametros_cat = gridsearch.best_params_
parametros_trees = extratrees_grid.best_params_
base_models = [
    CatBoostClassifier(**parametros_cat, verbose=0),
    ExtraTreesClassifier(**parametros_trees),
    pipelines[2]
]
mapeamento = {
    'neutral or dissatisfied':0,
    'satisfied':1
}

y_treino = y_treino.replace(mapeamento)
y_teste = y_teste.replace(mapeamento)

sclf = StackingCVClassifier(classifiers=base_models,
                            meta_classifier=modelo_meta)
                            
sclf.fit(X_treino, y_treino)

Alguém saberia identificar o motivo do erro? Desde já agradeço.

2 respostas
solução!

Olá Joedson, tudo bem?

O erro ocorre porque a biblioteca scikit-learn descontinuou o argumento fit_params a partir da versão 1.4, causando incompatibilidades ao usar o StackingCVClassifier da mlxtend em versões mais recentes do scikit-learn (como 1.6.0 ou superior).

Para resolver esse problema, basta fazer downgrade do scikit-learn para a versão 1.3.2, garantindo compatibilidade com o código original. No início do seu notebook, insira o seguinte comando:

!pip install scikit-learn==1.3.2

Após isso, será necessário reiniciar o Notebook, seguindo estes passos:

  1. No menu de ferramentas do Google Colaboratory, clicar em "Ambientes de execução";

  2. Selecionar a opção "Reiniciar sessão e executar tudo".

Para realizar essas etapas, você pode acompanhar a imagem abaixo:

Reiniciar sessão e executar tudo, no Google Colaboratory

Caso tenha dúvidas, fique à vontade para compartilhar no fórum.

Abraços!

Se este post foi útil para você, por favor, marque como solucionado.

Muito obrigado, Monalisa!!