Ho un set di dati composto da 5 funzioni: A, B, C, D, E. Sono tutti valori numerici. Invece di fare un clustering basato sulla densità, quello che voglio fare è raggruppare i dati in modo simile ad un albero decisionale.
L'approccio intendo è qualcosa del genere:
L'algoritmo può dividere i dati in cluster iniziali X in base alla caratteristica C, ovvero i cluster X possono avere valori C piccoli, medi C, grandi C e molto grandi ecc. Successivamente, sotto ciascuno dei nodi del cluster X, l'algoritmo si divide ulteriormente i dati in cluster Y in base alla funzione A. L'algoritmo continua fino a quando non vengono utilizzate tutte le funzionalità.
L'algoritmo che ho descritto sopra è come un algoritmo dell'albero delle decisioni. Ma ne ho bisogno per il clustering senza supervisione, anziché per la classificazione supervisionata.
Le mie domande sono le seguenti:
- Tali algoritmi esistono già? Qual è il nome corretto per tale algoritmo
- Esiste un pacchetto / libreria R / python che ha un'implementazione di questo tipo di algoritmi?
CHAIDalbero, per esempio. Devi scegliere la variabile dipendente. Lascia che sia A. L'algoritmo seleziona tra B, C, D, E la variabile più correlata con A e raggruppa quella variabile (diciamo, il predittore, sia D) in due o più categorie "in modo ottimale" - in modo che la correlazione (tra la variabile categorizzata D e la variabile A è massimizzata. Diciamo, ha lasciato 3 gruppi, D1, D2, D3. Successivamente, la stessa procedura viene ripetuta all'interno di ciascuna categoria (gruppo) di D separatamente e il miglior predittore tra B, C , E è cercato sotto il binning. Ecc. Che cosa non ti soddisfa esattamente qui?
But I need it for unsupervised clustering, instead of supervised classificationQuesta frase chiave da sola è troppo breve e non espone chiaramente ciò che vuoi. Sopra di esso hai descritto quello che mi sembra un albero decisionale. Puoi ora dare un passaggio simile sull'algo che vuoi?