Sto facendo i compiti sugli alberi decisionali e una delle domande a cui devo rispondere è "Perché gli stimatori sono costruiti su alberi distorti e in che modo l'insacco aiuta a ridurne la varianza?".
Ora, so che i modelli troppo equipaggiati tendono ad avere una propensione molto bassa, perché cercano di adattarsi a tutti i punti dati. E, in Python, avevo una sceneggiatura che inseriva un albero in un set di dati (con una singola funzione. Era solo una sinusoide, con alcuni punti off, foto sotto). Quindi, mi chiedevo "bene, se riesco a sovrautilizzare i dati, posso portare a zero la distorsione?". E si è scoperto che, anche con una profondità di 10000, ci sono ancora alcuni punti attraverso i quali la curva non passa.
Ho provato a cercare il perché, ma non sono riuscito a trovare una spiegazione. Immagino che potrebbero esserci degli alberi che attraverserebbero perfettamente tutti i punti e che quelli che ho ottenuto sono stati solo "sfortuna". O che forse un set di dati diverso avrebbe potuto darmi un risultato imparziale (forse una sinusoide perfetta?). O anche quello, forse i tagli effettuati all'inizio hanno reso impossibile per ulteriori tagli separare completamente tutti i punti.
Quindi, prendendo in considerazione questo set di dati (dal momento che potrebbe essere diverso per gli altri), la mia domanda è: è possibile adattare un albero al punto in cui il bias va a zero, o ci sarà sempre qualche bias, anche se davvero piccolo? E se c'è sempre almeno qualche pregiudizio, perché succede?
PS Non so se potrebbe essere rilevante, ma ho usato il DecisionTreeRegressorda sklearnper adattare il modello ai dati.
