PACKAGES

caret | rpart | rpart.plot | partykit | ggparty

Decision Tree: CART

Package rpart

r.cart utilizza l’algoritmo CART (Classification and Regression Trees [1]) per determinare un modello predittivo di classificazione e regressione e generare un albero decisionale binario:

  • classification tree (class) se la variabile obiettivo è una variabile categoriale
  • regression tree (anova) se la variabile obiettivo è una variabile continua

Gli alberi vengono fatti crescere fino al massimo consentito. Per evitare l’overfitting del modello è necessario potare l’albero attraverso il parametro :cp (Cost complexity pruning).

Argomenti: [2]

  • varname => varlist: un hash con la variabile dipendente e l’elenco delle variabili indipendenti
  • :scale => varlist: specifica le variabili singole che devono essere considerate come ordinali
  • :weight => varname: il nome di una variabile di ponderazione
  • :tree => :simple|:rpart|:party|:ggparty: metodo utilizzato per la generazione del grafico (default: :rpart)
  • :method => :anova|:poisson|:class|:exp: se non specificato viene dedotto dal tipo di variabile obiettivo
  • :cp => value|:auto: Complexity parameter ; penalità per avere troppi nodi (default: 0.01)
  • :minsplit: minimum number of observations that must exist in a node in order for a split to be attempted
  • :minbucket: minimum number of observations in any terminal <leaf> node
  • :maxcompete: number of competitor splits retained in the output
  • :maxsurrogate: number of surrogate splits retained in the output
  • :usesurrogate: how to use surrogates in the splitting process
  • :xval: number of cross-validations
  • :surrogatestyle: controls the selection of a best surrogate
  • :maxdepth: maximum depth of any node of the final tree

Tabelle disponibili:

  • :analysis: riepilogo dei parametri dell’analisi
  • :nodes: tabella dei nodi generati
  • :varimp: importanza relativa delle variabili

Grafici disponibili:

  • :cp: accuratezza del modello rispetto a differenti valori di complexity parameter e dmensione dell’albero
  • :crossval: 1) r-square e numero di nodi; 2) errore relativo e numero di nodi
  • :tree: il grafico ad albero
  • :varimp: importanza relativa delle variabili
1
2
3
4
r.cart :d5 => [:sesso, :etaq, :area, :titolo, :user],
       :scale => [:d5, :titolo, :user],
       :weight => :peso,
       :cp => :auto, :abbr => [3, 10]
_images/cart_1.png
_images/cart_cp.png
_images/cart_cross.png
_images/cart_tree.png
_images/cart_2.png
_images/cart_imp.png
_images/cart_3.png


Note

[1]Leo Breiman, Jerome Friedman, Charles J. Stone, R.A. Olshen (1984) Classification and Regression Trees, Chapman and Hall/CRC
[2]Consultare Analisi per l’elenco dei parametri generali.