var.importance: Extract percent contribution and permutation importance from...

Description Usage Arguments Details Value Note Author(s) References Examples

View source: R/var.importance.R

Description

Extract the percent contribution and permutation importance metrics generated by a Maxent model.

Usage

1

Arguments

mod

A Maxent model object.

Details

Maxent provides two metrics to determine the importance of input variables in the final model: percent contribution and permutation importance. This function extracts both metrics from the results slot of a maxent model object and places them into a data.frame.

According to Phillips (2006), the percent contribution of each variable is calculated as follows:

"While the Maxent model is being trained, it keeps track of which environmental variables are contributing to fitting the model. Each step of the Maxent algorithm increases the gain of the model by modifying the coefficient for a single feature; the program assigns the increase in the gain to the environmental variable(s) that the feature depends on. Converting to percentages at the end of the training process, we get the percent contribution."

"The percent contribution values are only heuristically defined: they depend on the particular path that the Maxent code uses to get to the optimal solution, and a different algorithm could get to the same solution via a different path, resulting in different percent contribution values. In addition, when there are highly correlated environmental variables, the percent contributions should be interpreted with caution."

Also according to Phillips (2006), the permutation importance of each variable is calculated as follows:

"...for each environmental variable in turn, the values of that variable on training presence and background data are randomly permuted. The model is reevaluated on the permuted data, and the resulting drop in training AUC is shown in the table, normalized to percentages."

"The permutation importance measure depends only on the final Maxent model, not the path used to obtain it. The contribution for each variable is determined by randomly permuting the values of that variable among the training points (both presence and background) and measuring the resulting decrease in training AUC. A large decrease indicates that the model depends heavily on that variable. Values are normalized to give percentages."

Value

A data.frame with the percent contribution and permutation importance for each variable included in a Maxent model.

Note

Both metrics should be interpreted with caution when the predictor variables are correlated (Phillips 2006).

Author(s)

Jamie M. Kass <jkass@gc.cuny.edu> and Robert Muscarella <bob.muscarella@gmail.com>

References

Phillips, S. (2006) A brief tutorial on Maxent. AT&T Research. Available at: https://www.cs.princeton.edu/~schapire/maxent/tutorial/tutorial.doc

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
data(enmeval_results)

# Select model with lowest AICc

aic.mod <- enmeval_results@models[[which(enmeval_results@results$delta.AICc==0)]]
var.importance(aic.mod)

# See the variable importance metrics for the first 3 models

lapply(enmeval_results@models, var.importance)[1:3]

Example output

Loading required package: dismo
Loading required package: raster
Loading required package: sp
Loading required package: rJava
Loading required package: parallel
  variable percent.contribution permutation.importance
1  layer.1               1.8403                 9.2158
2  layer.2               0.0000                 0.0000
3  layer.3              98.1597                90.7842
4  layer.4               0.0000                 0.0000
[[1]]
  variable percent.contribution permutation.importance
1  layer.1               8.7099                17.6412
2  layer.2               1.6923                 2.5253
3  layer.3              88.7052                79.8335
4  layer.4               0.8925                 0.0000

[[2]]
  variable percent.contribution permutation.importance
1  layer.1               4.5246                16.5900
2  layer.2               2.8386                 8.4239
3  layer.3              92.3908                74.9861
4  layer.4               0.2460                 0.0000

[[3]]
  variable percent.contribution permutation.importance
1  layer.1              44.4519                23.7820
2  layer.2               3.1247                 6.3034
3  layer.3              52.4234                69.9146
4  layer.4               0.0000                 0.0000

ENMeval documentation built on Jan. 13, 2021, 8:08 p.m.