Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] erro em arore de decisão

No desafio quando chega na parte de dar arvore.fit(x_treino,y_treino) da esse erro: ValueError: Unknown label type: 'continuous-multioutput' diz que não é binario o y_treino, então transformei em binario mas mesmo assim continua dando erro.

ValueError: Multioutput target data is not supported with label binarization nem com OneHotEncoder e nem LabelBinarizer resolve o problema

1 resposta
solução!

Oii, Cícero, tudo bem?

O erro acontece porque o algoritmo de Árvore de Decisão não suporta múltiplas saídas contínuas. Já que ele continuou após a transformação para binariedade, uma coisa que pode funcionar é você ajustar seu modelo para cada coluna de saída separadamente. Isso significa que você terá que criar um modelo de Árvore de Decisão para cada coluna de saída.

Por exemplo, você pod fazer deste modo:

from sklearn.tree import DecisionTreeClassifier

# Se o y_treino for um DataFrame com múltiplas colunas
for coluna in y_treino.columns:
    arvore = DecisionTreeClassifier(max_depth=4)
    arvore.fit(x_treino, y_treino[coluna])

Se o y_treino é uma única coluna com múltiplos rótulos (por exemplo, uma coluna com valores que são listas), então você precisará transformar seus rótulos em uma forma que o algoritmo de Árvore de Decisão possa entender. Uma maneira de fazer isso é usar a técnica de one-vs-rest, onde você treina um modelo para cada rótulo.

Se outra dúvida surgir, estamos aqui.

Abraços! :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software