Tyle ile jest warte:
zarówno rpart
i ctree
rekurencyjnie wykonują jednoczynnikowe podziały zmiennej zależnej na podstawie wartości na zestawie zmiennych towarzyszących. rpart
i pokrewne algorytmy zwykle wykorzystują miary informacyjne (takie jak współczynnik Giniego ) do wybierania bieżącej współzmiennej.
ctree
, według jego autorów (patrz komentarze chl ) unika następującej tendencyjności wyboru zmiennych rpart
(i powiązanych metod): Zazwyczaj wybierają zmienne, które mają wiele możliwych podziałów lub wiele brakujących wartości. W przeciwieństwie do innych, ctree
stosuje procedurę testu istotności w celu wybrania zmiennych zamiast wybierania zmiennej, która maksymalizuje miarę informacyjną (np. Współczynnik Giniego).
Test istotności, lub lepiej: wielokrotne testy istotności obliczane na każdym początku algorytmu (wybierz zmienną towarzyszącą - wybierz podział - rekurencja) są testami permutacyjnymi , to znaczy „rozkład statystyki testu w ramach hipotezy zerowej uzyskuje się przez obliczenie wszystkie możliwe wartości statystyki testu przy przegrupowaniu etykiet na obserwowanych punktach danych. ” (z artykułu na Wikipedii).
Teraz statystyka testowa: jest obliczana z transformacji (w tym tożsamości, to znaczy bez transformacji) zmiennej zależnej i zmiennych towarzyszących. Możesz wybrać dowolną liczbę transformacji dla obu zmiennych. W przypadku DV (zmienna zależna) transformacja nazywana jest funkcją wpływu, o którą pytałeś.
Przykłady (zaczerpnięte z pracy ):
- jeśli zarówno DV, jak i zmienne towarzyszące są numeryczne, możesz wybrać transformacje tożsamości i obliczyć korelacje między zmienną towarzyszącą i wszystkimi możliwymi permutacjami wartości DV. Następnie obliczasz wartość p na podstawie tego testu permutacji i porównujesz ją z wartościami p dla innych zmiennych towarzyszących.
- jeśli zarówno DV, jak i zmienne towarzyszące są nominalne (nieuporządkowane kategorycznie), statystyka testu jest obliczana z tabeli nieprzewidzianych zdarzeń.
- z tego ogólnego schematu można łatwo tworzyć inne rodzaje statystyk testowych z dowolnego rodzaju transformacji (w tym transformacji tożsamości).
mały przykład testu permutacji w R
:
require(gtools)
dv <- c(1,3,4,5,5); covariate <- c(2,2,5,4,5)
# all possible permutations of dv, length(120):
perms <- permutations(5,5,dv,set=FALSE)
# now calculate correlations for all perms with covariate:
cors <- apply(perms, 1, function(perms_row) cor(perms_row,covariate))
cors <- cors[order(cors)]
# now p-value: compare cor(dv,covariate) with the
# sorted vector of all permutation correlations
length(cors[cors>=cor(dv,covariate)])/length(cors)
# result: [1] 0.1, i.e. a p-value of .1
# note that this is a one-sided test
Załóżmy teraz, że masz zestaw zmiennych towarzyszących, a nie tylko jeden jak wyżej. Następnie oblicz wartości p dla każdej z zmiennych towarzyszących, jak na powyższym schemacie, i wybierz tę o najmniejszej wartości p . Chcesz obliczyć wartości p zamiast korelacji bezpośrednio, ponieważ możesz mieć różne zmienne towarzyszące (np. Liczbowe i kategoryczne).
Po wybraniu współzmiennych, teraz eksploruj wszystkie możliwe podziały (lub często jakoś ograniczoną liczbę wszystkich możliwych podziałów, np. Wymagając minimalnej liczby elementów DV przed podziałem) ponownie oceniając test oparty na permutacji.
ctree
zawiera szereg możliwych transformacji zarówno dla DV, jak i dla zmiennych towarzyszących (patrz pomoc Transformations
w party
pakiecie).
więc generalnie główna różnica wydaje się polegać na tym, że ctree
stosuje schemat selekcji współzmiennej oparty na teorii statystycznej (tj. selekcji za pomocą testów istotności opartych na permutacji), a tym samym pozwala uniknąć potencjalnego błędu, w rpart
przeciwnym razie wydają się podobne; np. drzewa wnioskowania warunkowego mogą być używane jako podstawowe osoby uczące się w losowych lasach.
To jest tak daleko, jak tylko mogę. Aby uzyskać więcej informacji, naprawdę musisz przeczytać gazety. Pamiętaj, że zdecydowanie zalecamy, abyś naprawdę wiedział, co robisz, gdy chcesz zastosować jakąkolwiek analizę statystyczną.