Co to jest ważność permutacyjna?
Ważność permutacyjna zmiennych (ang. permutation variable importance) mówi, o ile pogarsza się trafność przewidywań modelu, gdy losowo przemieszasz wartości jednej zmiennej. Permutacja zrywa związek predyktora z wynikiem, ale zachowuje jego rozkład. Pomysł przypomina test permutacyjny, ale służy do opisu modelu, a nie do testowania hipotezy. Breiman (2001) liczył tę miarę w lasach losowych na obserwacjach spoza próby bootstrapowej danego drzewa (OOB). Ocena odbywa się więc na danych, których drzewo nie widziało, co ogranicza wpływ przeuczenia.
Jak ją liczyć?
Dla każdego drzewa liczysz błąd na obserwacjach OOB. Potem permutujesz jedną zmienną, liczysz błąd jeszcze raz i uśredniasz różnicę po drzewach. W regresji to wzrost błędu średniokwadratowego, w klasyfikacji – wzrost odsetka błędnych klasyfikacji. W pakiecie ranger ustawiasz importance = "permutation". Wynik bliski zera lub ujemny oznacza, że zmienna nie poprawia przewidywań.
Przykład
W symulowanych danych 500 osób wypalenie zależało w tym samym stopniu od stresu i snu. Ruminacje korelowały ze stresem na poziomie r = .88, ale nie miały własnego efektu. Las losowy (1000 drzew, R² OOB = .33) dał ważność: sen 0.578, stres 0.478, ruminacje 0.203, wiek 0.016. W regresji liniowej ruminacje były nieistotne (b = 0.067, p = .509). Las przypisał im jednak część ważności stresu, a stres wypadł słabiej niż równie silny sen.
Jak opisać w pracy
Na co uważać
- Skorelowane predyktory. Zwykła permutacja zrywa też związek zmiennej z innymi predyktorami. Dlatego miara faworyzuje zmienne skorelowane. Strobl i in. (2008) zaproponowali warunkową ważność permutacyjną, która lepiej oddaje wpływ zmiennej. Przy silnej współliniowości interpretuj ważność skorelowanych zmiennych łącznie.
- Typ predyktora. Strobl i in. (2007) pokazali, że ważność bywa obciążona, gdy predyktory różnią się skalą pomiaru lub liczbą kategorii.
- Ważność to nie efekt przyczynowy. Nie mówi o kierunku ani sile związku.
Budowę lasu, dobór parametrów i wykresy zależności cząstkowej pokazuje wpis Drzewa decyzyjne i lasy losowe w badaniach naukowych. Ocenę trafności na nowych danych opisuje poradnik Modele predykcyjne: walidacja i kalibracja.
Ważność permutacyjna w R
Kod tworzy dane ze skorelowanymi predyktorami, dopasowuje las losowy w pakiecie ranger z ważnością permutacyjną i porównuje wynik z regresją liniową.
Ważność permutacyjna przy skorelowanych predyktorach
R
library(ranger)
set.seed(3361)
n <- 500
stres <- rnorm(n)
ruminacje <- 0.9 * stres + rnorm(n, sd = sqrt(1 - 0.81)) # r ≈ .90 ze stresem, bez własnego efektu
sen <- rnorm(n)
wiek <- rnorm(n) # szum
wypalenie <- 0.6 * stres + 0.6 * sen + rnorm(n)
d <- data.frame(wypalenie, stres, ruminacje, sen, wiek)
las <- ranger(wypalenie ~ ., data = d, num.trees = 1000,
importance = "permutation", seed = 3361)
round(sort(las$variable.importance, decreasing = TRUE), 3) # wzrost MSE po permutacji (OOB)
round(c(r_stres_rumin = cor(stres, ruminacje), R2_OOB = las$r.squared), 3)
round(coef(summary(lm(wypalenie ~ ., data = d)))[, c(1, 4)], 3)Wynik w R
sen stres ruminacje wiek
0.578 0.478 0.203 0.016
r_stres_rumin R2_OOB
0.884 0.334
Estimate Pr(>|t|)
(Intercept) 0.036 0.425
stres 0.584 0.000
ruminacje 0.067 0.509
sen 0.572 0.000
wiek 0.042 0.355Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (pakiet ranger). W pracy podaj wersje faktycznie użytych pakietów (sessionInfo()).
- R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
- ranger (wersja 0.18.0): Wright, M. N., & Ziegler, A. (2017). ranger: A fast implementation of random forests for high dimensional data in C++ and R. Journal of Statistical Software, 77(1), 1–17. https://doi.org/10.18637/jss.v077.i01
Najczęstsze pytania
Czym ważność permutacyjna różni się od ważności opartej na nieczystości węzłów?
Ważność permutacyjna mierzy spadek trafności na obserwacjach OOB. Ważność oparta na nieczystości (importance = "impurity") sumuje poprawę dopasowania w podziałach na danych uczących i bywa obciążona na korzyść zmiennych z wieloma wartościami.
Co oznacza ujemna ważność permutacyjna zmiennej?
Po przemieszaniu zmiennej błąd był przypadkowo nieco mniejszy. Traktuj to jak ważność równą zeru: zmienna nie poprawia przewidywań.
Czy ważność permutacyjna zastąpi współczynniki regresji?
Nie. Ważność mówi, jak bardzo model korzysta ze zmiennej przy przewidywaniu, a nie o kierunku i wielkości związku. Kierunek pokażą wykresy zależności cząstkowej albo model regresji.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Drzewa decyzyjne i lasy losowe
CART i przycinanie w rpart, las losowy w ranger, ważność permutacyjna, zależność cząstkowa, walidacja na nowych danych i wzór opisu.
Czytaj →PoradnikModele predykcyjne: walidacja i kalibracja
Liczebność, przeuczenie, walidacja krzyżowa i bootstrap, LASSO i ridge, kalibracja, wynik Briera i TRIPOD+AI – na danych do pobrania, z kodem R.
Czytaj →Potrzebujesz wsparcia w analizie danych?
Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.
Wyceń analizęOferta dla studentówBibliografia i dalsza literatura naukowa (APA 7)
- Breiman, L. (2001). Random forests. Machine Learning, 45(1), 5–32. https://doi.org/10.1023/a:1010933404324 ● Otwarty dostęp: pełny tekst
- Strobl, C., Boulesteix, A.-L., Kneib, T., Augustin, T., & Zeileis, A. (2008). Conditional variable importance for random forests. BMC Bioinformatics, 9(1), Article 307. https://doi.org/10.1186/1471-2105-9-307 ● Otwarty dostęp
- Strobl, C., Boulesteix, A.-L., Zeileis, A., & Hothorn, T. (2007). Bias in random forest variable importance measures: Illustrations, sources and a solution. BMC Bioinformatics, 8(1), Article 25. https://doi.org/10.1186/1471-2105-8-25 ● Otwarty dostęp
Cytowania BibTeX
@article{breiman2001random, author={Breiman, Leo}, title={{Random forests}}, journal={Machine Learning}, year={2001}, volume={45}, number={1}, pages={5--32}, doi={10.1023/a:1010933404324}}@article{strobl2008conditional, author={Strobl, Carolin and Boulesteix, Anne-Laure and Kneib, Thomas and Augustin, Thomas and Zeileis, Achim}, title={{Conditional variable importance for random forests}}, journal={BMC Bioinformatics}, year={2008}, volume={9}, number={1}, eid={307}, doi={10.1186/1471-2105-9-307}}@article{strobl2007bias, author={Strobl, Carolin and Boulesteix, Anne-Laure and Zeileis, Achim and Hothorn, Torsten}, title={{Bias in random forest variable importance measures: Illustrations, sources and a solution}}, journal={BMC Bioinformatics}, year={2007}, volume={8}, number={1}, eid={25}, doi={10.1186/1471-2105-8-25}}