2015-08-06 23 views
5

Sto usando Apache Spark Mllib 1.4.1 (pyspark, l'implementazione python di Spark) per generare un albero decisionale basato sui dati LabeledPoint che ho. L'albero genera correttamente e posso stampare al terminale (estrarre le regole come questo utente chiama How to extract rules from decision tree spark MLlib) utilizzando:Come visualizzare/tracciare un albero decisionale in Apache Spark (pyspark 1.4.1)?

model = DecisionTree.trainClassifier(...) 
print(model.toDebugString() 

Ma quello che voglio fare è visualizzare o tracciare l'albero decisionale, piuttosto che la stampa a il terminale. C'è un modo per tracciare l'albero decisionale in pyspark o forse posso salvare i dati dell'albero decisionale e usare R per tracciarlo? Grazie!

+0

ho bisogno di fare la stessa cosa. Sei riuscito a tracciare il tuo DT? – diplomaticguru

risposta

3

C'è questo progetto Decision-Tree-Visualization-Spark per la visualizzazione di decisione Albero modello

Ha due passi

  • Parse decisione Spark uscita albero in un formato JSON.
  • Utilizzare il file JSON come input per una visualizzazione D3.js.

Per il controllo parser Dt.py

L'input per la funzione def tree_json(tree) è tuoi modelli toDebugString()

risposta da question

0

Anche se questo è un po 'vecchio post, giusto per fornire la mia risposta così che altri che verranno a questo post d'ora in poi potranno trarne beneficio.

In alternativa è possibile utilizzare "graphviz" Python Package per l'utilizzo in PySpark. Stamperà il modello dell'albero decisionale in una struttura ad albero ordinata piuttosto che nella solita struttura ad anello.

Maggiori dettagli si possono trovare in questo link: https://pypi.python.org/pypi/graphviz