0% encontró este documento útil (0 votos)
333 vistas29 páginas

Tutorial MaxEnt: Modelado de Especies

Este documento presenta un tutorial básico sobre el uso de MaxEnt, un programa de modelización de distribución de especies basado en máxima entropía. Explica cómo descargar e instalar el software MaxEnt, cargar datos de presencia de especies y variables ambientales, ejecutar un modelo y analizar los resultados, incluyendo mapas de predicción de hábitat adecuado. El ejemplo utiliza datos de presencia del perezoso tridáctilo cuellipardo en Sudamérica y variables climáticas y de vegetación.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
333 vistas29 páginas

Tutorial MaxEnt: Modelado de Especies

Este documento presenta un tutorial básico sobre el uso de MaxEnt, un programa de modelización de distribución de especies basado en máxima entropía. Explica cómo descargar e instalar el software MaxEnt, cargar datos de presencia de especies y variables ambientales, ejecutar un modelo y analizar los resultados, incluyendo mapas de predicción de hábitat adecuado. El ejemplo utiliza datos de presencia del perezoso tridáctilo cuellipardo en Sudamérica y variables climáticas y de vegetación.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd

A brief tutorial on MaxEnt by Steven Phillips, AT&T Research

Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Manual de MaxEnt
By Steven Phillips, AT&T Research

~ (traducido por Elisa Liras (eliras@[Link]) ~

Este manual presenta una introducción básica al uso de MaxEnt, un programa basado en una
distribución de Máxima Entropía para la modelización de la distribución geográfica de las
especies. Ha sido escrito originalmente por Steven Phillips, Miro Dudik y Rob Schapire, con el
respaldo de AT&T Labs-Research, Princeton University, y e Centro para la Biodiversidad y
Conservación, Museo de Historia Natural de América. Para más detalles sobre la teoría de
modelización con máxima entropía, la descripción de los datos utilizados y los principales tipos
de análisis estadísticos, se refiere al lector a:

Steven J. Phillips, Robert P. Anderson and Robert E. Schapire, Maximum entropy modeling of species
geographic distributions. Ecological Modelling, Vol 190/3-4 pp 231-259, 2006.

Un segundo artículo con los últimos avances sobre el software MaxEnt:

Steven J. Phillips and Miroslav Dudik, Modeling of species distributions with MaxEnt: new extensions and
a comprehensive evaluation. Ecography, to appear.

Los datos ambientales utilizados en los ejemplos son variables climáticas y de elevación para
Sudamérica, además de una cobertura de vegetación potencial. La especie muestreada será
Bradypus variegates (Perezoso tridáctilo cuellipardo). Este manual asume que todos los
archivos de datos están situados en el mismo directorio que el programa MaxEnt; en caso de
que no sea así, se necesitará introducir una ruta (ej., c:\data\MaxEnt\tutorial) antes del nombre
de los archivos.

Primeros pasos
Descarga del software

El software consiste en un archivo jar, [Link], que puede ser utilizado en cualquier
ordenador que tenga instalada una versión Java 1.4 o superior. MaxEnt, y la literatura asociada,
se pueden descargar de [Link]/~schapire/MaxEnt; el entorno Java puede
obtenerse de [Link]/javase/downloads. Si usted está utilizando Microsoft Windows
(asumido en este manual), también puede descargar el archivo [Link], y guardarlo en el
mismo directorio que [Link]. En la página se encuentra también un archivo llamado
“[Link]”, que contiene las instrucciones para instalar el programa en su ordenador.

Empezando

Pág. 1
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Si usted está utilizando Microsoft Windows, haga click sobre el archivo [Link]. En otro caso,
introduzca “java -mx512m -jar [Link]” en la línea de comandos (donde “512” puede
reemplazarse por los megabytes de memoria que quiera que el programa tenga disponibles).
Aparecerá la siguiente ventana:

Para ejecutar el programa necesitará proporcionar un archivo con los lugares de presencia de la
especies (“muestras”), un directorio (carpeta) que contenga las variables ambientales y un
directorio (carpeta) de salida.

En nuestro caso, los datos de presencia están en el archivo “samples\[Link]”, las


coberturas ambientales en el directorio “layers”, y los resultados del modelo se guardarán en el
directorio “outputs”. Usted puede introducir las localidades de presencia a mano, o tomarlas
directamente de un archivo. Cuando vaya a cargar las variables ambientales, recuerde que debe
indicar solamente el directorio donde se encuentran (no es necesario cargar los archivos de las
coberturas uno a uno). Una vez que haya introducido los archivos para Bradypus, la ventana del
programa debe de mostrarse así:

Pág. 2
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

El archivo “samples\[Link]” contiene las localidades de presencia en formato csv, y sus


primeras líneas son:

species,longitude,latitude
bradypus_variegatus,-65.4,-10.3833
bradypus_variegatus,-65.3833,-10.3833
bradypus_variegatus,-65.1333,-16.8
bradypus_variegatus,-63.6667,-17.45
bradypus_variegatus,-63.85,-17.4

También puede haber distintas especies en el mismo archivo de “muestras”. En ese caso los
nombres de las especies aparecerán en el panel izquierdo, junto con Bradypus.
Se pueden utilizar distintos sistemas de coordenadas en lugar de latitud y longitud, pero siempre
las muestras y las coberturas ambientales deben estar en el mismo sistema de coordenadas. La
coordenada “x” (en nuestro caso, longitud), debe ir antes que la coordenada “y” (latitud) en el
archivo de “muestras”.
Si el archivo de “muestras” tiene datos duplicados (muestreos múltiples para la misma especie
en la misma celda), se pueden eliminar desde el menú “Settings → Delete duplicates”.

El directorio “layers” contiene las coberturas ambientales en formato raster, como ASCII grid de
ESRI (en formato .asc de ESRI), y cada una de ellas corresponde a una variable diferente.

Pág. 3
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Todas las grids deben tener la misma extensión geográfica y tamaño de píxel (el encabezado de
todos los archivos ASCII debe ser igual).
Una de nuestras variables, “ecoreg”, es una variable categórica que describe las clases de
vegetación potencial. Dichas categorías deben estar indicadas preferiblemente por números
(mejor que por letras o palabras). Usted debe indicar al programa qué variables son categóricas,
como muestra la siguiente figura:

Hacer una prueba de modelización:

Simplemente haga clic sobre el botón “Run”. Una barra de progreso le indicará los pasos que
están teniendo lugar. Una vez que todas las coberturas ambientales (grids) hayan sido cargadas
y el proceso de inicialización ha comenzado, la barra de progreso para la obtención del resultado
se mostrará como:

El “gain” está relacionado con la desviación, una medida de la bondad de ajuste utilizada en
modelos generalizados aditivos (GAM) y modelos lineales generalizados (GLM). Esta medida
empieza en el valor 0 y va aumentando asintóticamente durante el proceso de modelización.
Durante este proceso, MaxEnt está generando una distribución de probabilidad sobre los píxeles
de la grid, empezando por una distribución uniforme y, de forma iterativa, mejorando el ajuste de
la distribución a los datos de muestreo. El gain se define como el logaritmo medio de la
probabilidad de las muestras de presencia, menos una constante que hace la distribución
uniforme cuando el gain toma valor de 0. Al final del proceso, el valor del gain indica cómo de
ajustado está el modelo a las muestras de presencia; por ejemplo, si el gain toma valor de 2, ello
significa que el valor medio de los píxeles que contienen un punto de presencia es exp(2) ≈ 7.4
veces mayor que una distribución al azar sobre dicho píxel. Nótese que MaxEnt no está
calculando directamente la “probabilidad de ocurrencia”. La probabilidad asignada por el modelo
a cada píxel es, generalmente, muy pequeña, dado que la suma de los valores totales del grid
debe de ser 1 (volveremos a este punto cuando comparemos los distintos formatos de salida del
modelo).

Una “vuelta” del modelo produce múltiples archivos de salida, de los cuales el más importante
para analizar nuestro resultado es el archivo html llamado “[Link]”. Parte de este archivo
nos vincula a otros archivos de salida, como muestra la imagen:

Pág. 4
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Mirando la predicción

Para ver qué otros resultados (más interesantes) contiene [Link], cambiaremos un par de
opciones en el modelo y lo ejecutaremos de nuevo. Haga click sobre el botón “Make pictures of
predictions”, presione sobre “Settings” y escriba “25” en la casilla de “Radmtest percentage”.
Finalmente, haga click sobre el botón “Run” otra vez. Una vez el proceso haya finalizado, el
archivo [Link] mostrará una imagen así:

Pág. 5
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

La imagen utiliza colores para indicar la probabilidad predicha de condiciones favorables, dónde
el color rojo señala las áreas con alta probabilidad de condiciones favorables para las especies
consideradas, el verde indica condiciones típicas de lugares donde la especie ha sido
muestreada y los tonos claros de azul indican una baja probabilidad de condiciones ambientales
favorables para la especie.

Para la especies Bradypus, observamos que la mayoría de zonas con alta probabilidad de
condiciones favorables aparecen en zonas bajas de Centro América, zonas húmedas en el área
Noroeste de Sudamérica, la cuenca del Amazonas, las islas del Caribe y gran parte de los
bosques atlánticos en el Sureste de Brasil.

Pág. 6
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

El archivo al que nos referimos tiene formato de imagen (.png), por lo que se puede hacer click
sobre ella (en Windows) y abrirla en la mayoría de los softwares de procesado de imágenes. Si
se desea copiar la imagen, o abrirla con otro software, se encontrará el archivo .png en un
directorio (carpeta) llamado “plots” que ha sido creado como parte de los resultados durante el
proceso de modelización.

Los puntos de muestreo para realizar el test del modelo son una muestra tomada al azar de las
localidades de presencia de la especie. MaxEnt utiliza el mismo conjunto de datos tomados al
azar en cada vuelta del modelo, mientras que la opción “random seed” (en el panel de “settings”)
no esté seleccionada. De forma alternativa, se puede suministrar al modelo un archivo con las
localidades de “testeo” en un archivo separado, indicando su nombre en la casilla de “Test
sample file” dentro del panel de “Settings”.

Pág. 7
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Resultados del modelos (diferentes formatos)

MaxEnt soporta 3 formatos de resultados para los valores del modelo: datos brutos, cumulativos
y logísticos. El primero, datos brutos, el simplemente el modelo exponencial de MaxEnt. El
segundo, cumulativo, corresponde al valor bruto r, que es el porcentaje de la distribución de
MaxEnt con valor máximo r. El resultado cumulativo es más fácil de interpretar en términos de
tasa de predicción de omisión: si fijamos un valor límite cumulativo c, el resultado binario de la
predicción tendrá una tasa de omisión de c% sobre las muestras empleadas para estimar la
propia distribución de MaxEnt, y podremos predecir tasas similares de omisión para las
presencias estimadas por el modelo. En tercer lugar, si c es el exponente de la entropía de la
distribución de MaxEnt, entonces el valor logístico correspondiente al valor bruto de r es
c·r/(1+c·r). Esta es una función logística porque los valores brutos son función exponencial de las
variables ambientales. Los tres formatos de salida están relacionados de forma monótona, pero
están escalados de forma diferente y nos dan distintas interpretaciones. El resultado por defecto
es logístico, ya que es el más fácil de conceptualizar: da una estimación entre 0 y 1 de la
probabilidad de presencia. Nótese que la probabilidad de presencia depende del diseño de
muestreo, con factores tales como el tamaño del plot (para organismos que se mueven con
facilidad) y el tiempo de observación. El resultado logístico estima la probabilidad de presencia
asumiendo que el diseño de muestres es tal que las localidades de presencia tienen una
probabilidad de más o menos 0,5. La figura del modelo para Bradypus de arriba muestra el
resultado en formato logístico. En comparación, el resultado de datos brutos nos da la siguiente
figura:

Pág. 8
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Fíjese que hemos utilizado una escala logarítmica de colores. Una escala lineal mostraría la
mayor parte del área en tonos azules, con pocos píxeles rojos (esto se puede verificar de-
seleccionando la opción “Logscale pictures” en el panel de “Settings”), dado que el resultado en
datos brutos normalmente da un número muy pequeño de localidades con valores relativamente
altos (esto se puede interpretar como un pequeño artefacto sobre el resultado bruto dado por la
distribución exponencial).

El formato de resultados cumulativo nos da la siguiente figura:

Al igual que en el formato de datos brutos, hemos utilizado una escala logarítmica para colorear
la imagen para poner de manifiesto las diferencias entre valores pequeños. El resultado
cumulativo se puede interpretar como la predicción de áreas con condiciones favorables para la
especie por encima de un límite en el rango aproximado de 1-20 (o amarillo – naranja, en esta
figura), dependiendo del nivel de omisión predicha que es aceptable para la aplicación.

Pág. 9
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Análisis estadístico

El “25” que hemos introducido antes en la casilla “random test porcentaje” indica al programa que
guarde un 25% de los puntos de muestreo, elegidos al azar, para realizar el test final sobre el
modelo. Esto permite al programa hacer algunos análisis estadísticos simples. La mayoría del
análisis se hace para definir un valor límite a la hora de hacer la predicción binaria, a partir del
cual las condiciones ambientales predichas para la especie se consideran favorables.
El primer gráfico muestra cómo las omisiones calculadas a partir de los puntos de entrenamiento
y los de test, y el área predicha como favorable varían según el valor límite cumulativo:

En el gráfico vemos como la omisión en los puntos de test coincide muy bien con la tasa de
omisión predicha, que se corresponde con la tasa de omisión para el test de la propia
distribución de MaxEnt.
Por definición del propio formato de resultados cumulativos la tasa de omisión predicha es una
línea recta. En algunas situaciones la línea del test de omisión cae por debajo de la línea de
omisión predicha: una razón común para ello es que las muestras utilizadas para el test y las de
entrenamiento no son independientes cuando, por ejemplo, han sido seleccionadas de puntos de
muestreo de presencias auto-correlacionados espacialmente.

El gráfico siguiente muestra al usuario la curva operacional (curva ROC),del inglés Receiver
Operating Characteristic) para los 2 grupos de datos, el de test y el de entrenamiento, así como
el área por debajo de la curva ROC (AUC, del inglés Area Under the Curve).; si se ha
proporcionado un conjunto de datos para realizar el test, el error estandarizado de la AUC para
dichos datos se muestra más abajo en la página web.

Pág. 10
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Si utilizamos el mismo set de datos para entrenar y testar el modelo las líneas roja y azul serán
idénticas. Si se divide el set de datos total en 2 subconjuntos, uno para entrenar (datos de
entrenamiento) y el otro para testar el modelo (datos para el test), lo normal es que la curva roja
(AUC entrenamiento) aparezca por encima de la curva azul (AUC test). La curva roja
(entrenamiento) representa el ajuste del modelo a los datos de muestreo. La curva azul (test)
indica el grado de ajuste del modelo a los datos de test, y supone el test real del poder predictivo
del modelo. La línea turquesa representa la línea esperada si el modelo no fuese mejor que “por
azar”. Si la curva azul (test) cae por debajo de la línea turquesa, indica que el modelo es peor
que si se hubiese hecho al azar. Por el contrario, cuanto más se aproxime la curva azul a la
esquina superior izquierda, mejor es el modelo para predecir las presencias de los datos de test.
Para una descripción más detallada sobre la estadística de AUC, una buena referencia con la
que empezar es:

Fielding, A.H. & Bell, J.F. (2007) A review of methods for the assessment of prediction errors in conservation
presence/ absence models. Environmental Conservation 24(1): 38-49.

Dado que sólo consideramos datos de presencia para ejecutar el modelo, y no contamos con
datos de ausencia, el “fractional predicted área” (la fracción del área de estudio predicha como
presencia) se utiliza para el cálculo de la tasa de omisión de manera estándar (fracción de
ausencia predichas como presencias). El artículo de la revista Ecological Modelling mencionada
en la página 1 de este manual ofrece una discusión más amplia sobre este aspecto.
Es importante tener en cuenta que los valores de la AUC tienden a ser altos en especies con
amplia distribución geográfica, en relación con el área de estudio descrita por los datos
ambientales. Ésto no necesariamente significa que los modelos son mejores, sino que su
comportamiento es un artefacto de las estadísticas de la AUC.
Si hay disponible un subconjunto de datos para el test, el programa calcula automáticamente la
significancia estadística de la predicción utilizando un test binomial de omisión. Para Bradypus:

Pág. 11
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Para una descripción más amplia de la estadística binomial, se refiere al lector al artículo de
Ecological Modelling mencionado anteriormente.

Pág. 12
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

¿Qué variables importan más?

Una aplicación natural de los modelos de la distribución de especies es la de tratar de contestar


a la pregunta: ¿qué variables ambientales condicionan más la distribución geográfica de la
especie objeto de estudio? Hay más de una manera de contestar a esta pregunta; aquí nosotros
describimos algunas formas en las que MaxEnt puede utilizarse para contestar esta cuestión.

Mientras que el modelo MaxEnt está siendo entrenado (con los datos de entrenamiento),
podemos guardar un registro de cuáles son las variables ambientales que están contribuyendo
más al modelo final. En cada paso el algoritmo de MaxEnt aumenta el gain del modelo
modificando el coeficiente para una sola variable. El programa asigna el incremento en el gain a
las variables ambientales de las que depende la especie. Convirtiendo dichos valores a
porcentajes, al final del proceso de modelado obtenemos la siguiente tabla:

Estos porcentajes de contribución son sólo valores definidos heurísticamente: dependen de la


forma particular en que el código de MaxEnt se aproxima a la solución óptima, y distintos
algoritmos podrían haber alcanzado el mismo resultado por caminos diferentes, dando lugar a
otros valores de contribución. Además, cuando las variables ambientales están muy
correlacionadas entre si, el porcentaje de contribución ha de interpretarse con mucho cuidado.
En nuestro ejemplo para Bradypus, la precipitación anual está muy correlacionada con la
precipitación de Octubre y de Julio. Aunque la tabla anterior muestra que MaxEnt utilizó la
variable de precipitación de Octubre más que ninguna otra, esto no implica necesariamente que
la precipitación de Octubre sea mucho más importante para la especie que la precipitación anual.

Pág. 13
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Para obtener estimaciones alternativas de qué variables contribuyen más al modelo, podemos
realizar un test de “jacknife” seleccionando la opción: “Do jacknife to measure variable important”.
Cuando ejecutamos el modelo de nuevo, se crean múltiples modelos. En cada vuelta del modelo
se excluye una variable y se crea el modelo con las variables remanentes. Después, se crea un
modelo con cada una de las variables por separado. De forma adicional, se crea un modelo
utilizando todas las variables, como en el caso “normal” de ejecutar MaxEnt. Los resultados del
jacknife se muestran en el archivo “[Link]” en 3 diagramas de barras. El primero de
ellos:

Vemos cómo, si MaxEnt usa solo la variable pre6190_l1 (precipitación media de Enero), casi no
consigue aumentar el gain, por lo que esta variable por sí sola no es muy útil para estimar la
distribución de Bradypus. Por otro lado, la precipitación de Octubre (pre6190_l10) permite un
ajuste mayor del modelo a los datos de muestreo. Si observamos las barras de color azul claro
se deduce que ninguna variable contiene una cantidad de información considerable que no esté
contenida en otras variables, por lo que omitir dicha variables no supuso una disminución del
gain considerable.

El archivo [Link] tiene 2 gráficos de jacknife, que muestran el test de gain o la AUC
frente a al subconjunto de datos de entrenamiento:

Pág. 14
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Comparar los 3 plots de jacknife puede ser muy informativo. El gráfico de AUC muestra cómo la
precipitación anual (pre6190_ann) es la variable más efectiva por si sola para predecir la
distribución de presencia de la especie del subconjunto de datos de test, cuando el poder de la
predicción se estima con la AUC, aún cuando fue mínimamente empleada en el modelo de
predicción que consideró todas las variables. La importancia relativa de la precipitación anual
también se incrementa en el gráfico de gain para el subconjunto de datos de test, cuando se

Pág. 15
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

compara frente al gráfico del subconjunto de entrenamiento. Además, en los gráficos de gain y la
AUC para el subconjunto test, algunas de las barras azul claro (especialmente para las variables
de precipitación mensual), son más largas que la barra roja, indicando que el poder de predicción
aumenta cuando las variables correspondientes no son empleadas en el modelo.

Esto nos indica que las variables de precipitación mensual ayudan a MaxEnt a ajustar el modelo
al set de datos de entrenamiento, pero la variable de precipitación anual generaliza mejor, dado
que comparativamente, los resultados obtenidos son mejores al utilizar otro set de datos (el
subconjunto test). Dicho de otro modo, los modelos construidos con las variables de precipitación
mensual son menos generales (se ajustarían demasiado a los datos de muestreo con los que
hemos entrenado el modelo). Esto es muy importante tenerlo en cuenta si el objeto de nuestro
estudio es transferir el modelo, por ejemplo, proyectándolo a variables climáticas futuras para
estimar la distribución de la especie bajo escenarios de cambio climático. Además, tiene sentido
que el valor de precipitación mensual sea menos general: dado que las condiciones óptimas para
Bradypus no dependerán de la precipitación concreta de ciertos meses, sino de la precipitación
media anual, y quizás de la constancia de precipitación y la ausencia de largos periodos de
sequía. Cuando estamos modelizando a escala continental, probablemente habrá
desplazamientos temporales en los patrones de estacionalidad de la precipitación, afectando a
los valores de precipitación mensual pero no a las condiciones favorables para Bradypus.

En general, sería mejor utilizar aquellas variables que son muestran ser más relevantes para la
especie que estamos modelando. Por ejemplo, en la página web de Worldclim
([Link]) se proporciona las variables “BIOCLIM”, que incluye variables derivadas
como “precipitación en el cuadrante más húmedo”, preferible a las variables mensuales.

Una última observación sobre los resultados del jacknife: el gráfico de gain para el subconjunto
de datos test muestra que el modelo realizado únicamente con la precipitación de Enero
(pre6190_ l1) supone un gain negativo. Esto significa que el modelo es ligeramente peor que el
modelo nulo (una distribución uniforme) para predecir la distribución de ocurrencias del
subconjunto test. Esto puede interpretarse como una evidencia más de que los valores de
precipitación mensual no son la mejor elección a la hora de elegir las variables predictoras.

Pág. 16
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

¿Cómo depende la predicción de las variables?

Ahora presione el botón “Create response curves”, de-seleccione la opción de jacknife, y ejecute
el modelo de nuevo. En el nuevo resultado se añadirá al archivo “[Link]”:

Cada una de éstas imágenes se pueden seleccionar (haciendo click sobre ellas) para obtener un
gráfico más detallado, y si desea copiar o abrir los gráficos con otro software los archivos .png se
encuentran en el directorio “plots”. Si no fijamos en el gráfico de vap6190_ann, vemos que la
respuesta es baja para valores de vap6190_ann en el rango 1-200, y es mayor para los valores
en el rango 200-300. El valor que muestra el eje “y” es la probabilidad predicha de condiciones
favorables, en formato de resultado logístico, considerando el resto de variables con su valor
medio (en las localidades de presencia).

Nótese que si las variables ambientales están correlacionadas, como ocurre en este caso, las
curvas de respuesta marginales pueden inducir a confusión. Por ejemplo, si 2 variables muy
correlacionadas entre sí tienen curvas de respuesta prácticamente contrarias, esto ocurre en la

Pág. 17
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

mayoría de los píxeles y la contribución de las 2 variables combinadas puede ser muy pequeña.
Mostrando otro ejemplo, vemos que la contribución de la precipitación anual (pre6190_ann) está
negativamente correlacionada con las condiciones favorables predichas, cuando el resto de las
variables se mantienen fijas en su valor medio. En otras palabras, una vez que la contribución de
las otras variables se ha tenido en cuenta, el efecto marginal de la precipitación anual supone
una disminución del poder predictivo del modelo. No obstante, la precipitación anual está
fuertemente correlacionada con las variables de precipitación mensual, por lo que en realidad no
tiene sentido mantener los valores de precipitación mensual fijos mientras variamos la
precipitación anual. Entonces el programa produce un segundo grupo de curvas de respuesta,
en los que cada curva se construye generando un modelo únicamente con la variable respuesta,
obviando el resto de variables (en vez de fijarlas en su valor medio, como en el caso anterior):

En contraste con la respuesta marginal de la precipitación anual en las primeras curvas de


respuesta, ahora vemos que la contribución a las condiciones favorables predicha aumenta
conforme incrementa la precipitación anual.

Pág. 18
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Tipos de variables predoctoras y curvas de respuesta

Las curvas de respuesta nos permiten ver las diferencias entre las distintas variable. De-
seleccione “auto features”, seleccione “Thereshold features” y presione el botón “Run” de nuevo.
Observe los perfiles resultantes, donde nos fijamos en que se muestran todos los pasos de la
función, como en el caso de pre6190_ l10:

Pág. 19
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Si la misma vuelta del modelo se hace utilizando solo “hinge features”, el perfil de respuesta será
del modo:

En general, los 2 perfiles son similares, pero al utilizar distintos tipos de variables permiten
distintas curvas de respuesta. El exponente en el modelo MaxEnt es la suma de variables, y una
suma de valores límite es siempre un paso de la función, por lo que el resultado logístico es
también una función por pasos (como lo son los resultados brutos y cumulativos). En
comparación, una suma de variables “hinge” es siempre una función linear escalonada. Esto
explica la secuencia de conexión de segmentos lineales en la segunda curva de respuesta
(gráficos anteriores). Nótese que las líneas son ligeramente curvas, especialmente hacia los
valores extremos de la variable (esto es así porque el resultado logístico aplica una función
sigmoidal al exponente de MaxEnt). El hecho de utilizar todas las clases juntas (por defecto,
dado un suficiente número de muestras) permite la modelización de respuestas más complejas.
Una explicación más profunda de los distintos tipos de features se puede encontrar pulsando el
botón de ayuda (“help”).

Pág. 20
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Formato SWD

SWD es otro formato de entrada de los datos que puede ser muy útil, especialmente cuando las
grids ambientales son muy grandes. Por no encontrar un nombre más apropiados, se llama
“samples with data”, o simplemente “SWD”. La versión SWD de nuestro archivo Bradypus,
llamado “Bradypus_swd.csv” empieza así:

species,longitude,latitude,cld6190_ann,dtr6190_ann,ecoreg,frs6190_ann,h_dem,pre6190_ann,pre6190_l10,pre6190_l1,
pre6190_l4,pre6190_l7,tmn6190_ann,tmp6190_ann,tmx6190_ann,vap6190_ann
bradypus_variegatus,-65.4,-10.3833,76.0,104.0,10.0,2.0,121.0,46.0,41.0,84.0,54.0,3.0,192.0,266.0,337.0,279.0
bradypus_variegatus,-65.3833,-10.3833,76.0,104.0,10.0,2.0,121.0,46.0,40.0,84.0,54.0,3.0,192.0,266.0,337.0,279.0
bradypus_variegatus,-65.1333,-16.8,57.0,114.0,10.0,1.0,211.0,65.0,56.0,129.0,58.0,34.0,140.0,244.0,321.0,221.0
bradypus_variegatus,-63.6667,-17.45,57.0,112.0,10.0,3.0,363.0,36.0,33.0,71.0,27.0,13.0,135.0,229.0,307.0,202.0
bradypus_variegatus,-63.85,-17.4,57.0,113.0,10.0,3.0,303.0,39.0,35.0,77.0,29.0,15.0,134.0,229.0,306.0,202.0

Este archivo puede utilizarse en lugar de un archivo normal de muestras. La única diferencia es
que el programa no necesita mirar las variables ambientales (los archivos ASCII) para obtener
los valores de las ambientales en los puntos de muestreo, sino que lee directamente dichos
valores de la tabla. Las coberturas ambientales se usan, por tanto, para leer los datos
ambientales en los píxeles donde la especie no ha sido muestreada como presente. De hecho,
los datos ambientales de píxeles sin presencia detectada o no muestreados también pueden ser
especificados en un archivo en formato SWD. El archivo “[Link]” contiene 10.000
puntos de no-presencia. Las primeras líneas muestran los siguientes datos:

background,-61.775,6.175,60.0,100.0,10.0,0.0,747.0,55.0,24.0,57.0,45.0,81.0,182.0,239.0,300.0,232.0
background,-66.075,5.325,67.0,116.0,10.0,3.0,1038.0,75.0,16.0,68.0,64.0,145.0,181.0,246.0,331.0,234.0
background,-59.875,-26.325,47.0,129.0,9.0,1.0,73.0,31.0,43.0,32.0,43.0,10.0,97.0,218.0,339.0,189.0
background,-68.375,-15.375,58.0,112.0,10.0,44.0,2039.0,33.0,67.0,31.0,30.0,6.0,101.0,181.0,251.0,133.0
background,-68.525,4.775,72.0,95.0,10.0,0.0,65.0,72.0,16.0,65.0,69.0,133.0,218.0,271.0,346.0,289.0

Podemos ejecutar el modelo MaxEnt con “bradypus_swd.csv” como archivo de muestreo


(presencias de la especie) y “[Link]” (situado en el directorio (carpeta) “swd”) como
archivo de coberturas ambientales. Pruebe a ejecutar el modelo (notará que el proceso es
mucho más rápido, porque no tiene que cargar las coberturas ambientales). Otra ventaja es que
se pueden asociar diferentes puntos de muestreo con condiciones ambientales de distintos
periodos temporales. Por ejemplo, 2 presencias detectadas con 100 años de diferencia en la
misma localidad reflejarán probablemente una variación considerable en las condiciones
ambientales, pero a menos que use el formato SWD, las 2 presencias corresponderán con el
mismo valor de variables ambientales. La desventaja es que no se obtienen gráficos o mapas
del resultado, porque no dispone de toda la información ambiental. La forma de obtener el mapa
del modelado es utilizar una proyección (“projection”), descrita más adelante.

Pág. 21
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Batch running

A veces se necesita generar múltiple modelos, con pequeñas diferencias en los parámetros o
datos de entrada. La modelización puede automatizarse con comandos de línea, obviando la
necesidad de hacer click y escribir repetitivamente sobre la interfaz del programa. La línea de
comandos puede venir dada por una ventana de comandos (a.k.a. shell), o puede definirse en un
archivo batch. Observe el archivo “[Link]” (por ejemplo, haga click con el botón
derecho sobre el archivo .bat en el explorador de Windows un ábralo utilizando Notepad). El
archivo contiene la siguiente línea:

java -mx512m -jar [Link] environmentallayers=layers


togglelayertype=ecoreg samplesfile=samples\[Link]
outputdirectory=outputs redoifexists autorun

Lo que hace este archivo es decirle al programa dónde encontrar los archivos para las variables
ambientales y los datos de muestreo, y dónde guardar los resultados, indicando que la variable
“ecoreg” es categórica. El comando “autorun” le dice al programa que empiece la modelización
directamente, sin esperar a que se pulse el botón “Run”. Ahora haga una prueba haciendo doble
clic sobre el archivo para ver qué hace.

Muchos de los aspectos del programa MaxEnt se pueden controlar mediante comandos
(presione el botón de ayuda “Help” para ver todas las posibilidades). Modelizaciones múltiples
pueden aparecer en el mismo archivo, ejecutando el programa consecutivamente. Se pueden
cambiar los valores de la mayoría de los parámetros establecidos por defecto añadiendo líneas
de comando al archivo “[Link]”. Muchas de las líneas de comandos tienen abreviaturas, por
lo que el modelado descrito en [Link] podría ser iniciado utilizando este comando:

java -mx512m -jar [Link] –e layers –t eco –s samples\[Link] –o


outputs –r -a

Pág. 22
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Regularización:
El parámetro de “regularization multiplier” en el panel de “Settings” afecta a cómo de ajustada
está la distribución final: un valor menor al 1.0 establecido por defecto resultaría en una
distribución modelizada más ajustada a los puntos de muestreo, pero puede suponer un sobre-
ajuste del modelo (modelo tan ajustado a los datos de entrada que no funciona bien con los
datos independientes que utilizamos para testar el modelo). Un valor mayor de “regularization
multiplier” dará una distribución menos ajustada, o menos localizada. Pruebe a cambiar el
“multiplier”, y examine los cambios que se producen en las figuras (mapas) resultantes y en la
AUC. Como ejemplo, cambiando el valor del “multiplier” a 3 resulta en la siguiente figura, que
muestra una distribución más difusa que la anterior:

El potencial de que se produzca un sobre-ajuste aumenta conforme aumenta la complejidad del


modelo. Primero, pruebe a poner un valor de “multiplier” muy pequeño (ej. 1,01) con el resto de
características en el valor establecido por defecto, para ver como este cambio produce un gran
sobre-ajuste del modelo. Después pruebe el mismo valor de “multiplier” con sólo las
características “linear” y “quadratic”.

Pág. 23
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Proyecciones

Un modelo entrenado sobre un grupo de coberturas ambientales (o archivo SWD) puede


“proyectarse” sobre otro conjunto de coberturas ambientales. Es el caso de aplicaciones en las
que se desea modelizar la distribución de la especie ante situaciones de cambio climático,
aplicar el modelo de la distribución nativa de una especie sobre un área geográfica diferente
(donde la especie puede comportarse como invasiva), o simplemente evaluar el modelo sobre un
grupo de localidades de test para aplicar luego otros análisis estadísticos. Aquí vamos a utilizar
la proyección para una tarea muy sencilla: obtener un resultado en formato grid ASCII y la figura
asociada cuando todos los datos de entrada están en formato SWD.

Escriba, o busque desde el botón “Browse”, el archivo de muestreo “swd\bradypus_swd.csv” y el


archivo de coberturas ambientales “swd\[Link]”. Después introduzca del directorio
“layers” en la casilla “Projection Layers Directory”, como se muestra en la figura:

El directorio de coberturas de proyección (o archivo SWD) debe contener variables con los
mismos nombres que las variables empleadas para entrenar el modelo, pero que describan
distintas condiciones ambientales (por ejemplo, una región geográfica diferente o un modelo
climático distinto). Para ambos subconjuntos de datos, el de entrenamiento y el de proyección, el
nombre de las variables es, o bien el título de la columna (si estamos utilizando archivos SWD),
o bien el nombre del archivo sin el sufijo .asc (si estamos usando un directorio para las grids).

Pág. 24
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Al presionar el botón “Run”, se entrena un modelo sobre los datos SWD, y dicho modelo se
proyecta sobre todas las grids ASCII del directorio “layers”. La grid resultante en formato ASCII
se llama “bradypus_variegatus_layers.asc” y, en general, el nombre directorio de proyección se
añade al nombre de la especie, con el fin de distinguir los resultados de la proyección de los
resultados del propio modelo (no proyectado). Si la opción “make pictures of predictions” está
seleccionada, aparecerá un gráfico del modelo proyectado en el archivo “[Link]”.

Pág. 25
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Análisis de los resultados de MaxEnt en R

MaxEnt produce varios archivos de salida en cada vuelta del modelo. Algunos de estos archivos
se pueden importar en otros programas, en el caso de usted quiera hacer sus propios análisis
estadísticos. Aquí demostramos cómo utilizar el paquete estadístico libre R sobre los resultados
de MaxEnt (esta sección está dirigida a los usuarios con experiencia en el manejo de R).
Utilizaremos los 2 archivos producidos por MaxEnt:

bradypus_variegatus.csv
bradypus_variegatus_samplePredictions.csv

El primer archivo se produce cuando los datos ambientales se dan en formato SWD, y el
segundo se produce siempre. Asegúrese de que tiene los datos para test (por ejemplo,
definiendo el “random test porcentaje” en 25); evaluaremos el resultado de MaxEnt utilizando el
mismo conjunto de datos para test que ha utilizado el programa. Primero iniciamos R, e
instalamos algunos paquetes (asumiendo que es la primera vez que los estamos usando), y los
cargamos, escribiendo o pegando:

[Link]("ROCR", dependencies=TRUE)
[Link]("vcd", dependencies=TRUE)
library(ROCR)
library(vcd)
library(boot)

En esta sección utilizaremos el texto en azul para el código de R y os comandos, y el verde para
mostrar los resultados de R.
Ahora cambiamos el directorio al que contiene los resultados de MaxEnt, por ejemplo:

setwd(“c:/MaxEnt/tutorial/outputs”)

y después leemos las predicciones de MaxEnt en los puntos de no-presencia y no muestreados,


y extraemos las columnas que necesitamos:

presence <- [Link](“bradypus_variegatus_samplePredictions.csv")


background <- [Link](“bradypus_variegatus.csv")
pp <- presence$[Link] # get the column of predictions
testpp <- pp[presence$[Link]=="test"] # select only test points
trainpp <- pp[presence$[Link]=="train"] # select only test points
bb <- background$[Link]

Ahora podemos poner los valores predichos en el formato requerido por ROCR, el paquete que
utilizaremos para hacer algunos análisis ROC, y generar la curva ROC:

combined <- c(testpp, bb) # combine into a single vector


label <- c(rep(1,length(testpp)),rep(0,length(bb))) # labels: 1=present,
0=random
pred <- prediction(combined, label) # labeled predictions
perf <- performance(pred, "tpr", "fpr") # True / false positives, for ROC
curve
plot(perf, colorize=TRUE) # Show the ROC curve
performance(pred, "auc")@[Link][[1]] # Calculate the AUC

El comando “plot” da el siguiente resultado:

Pág. 26
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

y el comando “performance” da un valor para AUC de 0.8677759, consistente con el valor AUC
calculado por MaxEnt. Después, como un ejemplo de los test disponibles en R pero no en
MaxEnt, hacemos una estimación bootstrap de la desviación estándar de la AUC.

AUC <- function(p,ind) {


pres <- p[ind]
combined <- c(pres, bb)
label <- c(rep(1,length(pres)),rep(0,length(bb)))
predic <- prediction(combined, label)
return(performance(predic, "auc")@[Link][[1]])
}

b1 <- boot(testpp, AUC, 100) # do 100 bootstrap AUC calculations


b1 # gives estimates of standard error and bias

Esto da el siguiente resultado:

ORDINARY NONPARAMETRIC BOOTSTRAP

Call:
boot(data = testpp, statistic = AUC, R = 100)

Bootstrap Statistics :
original bias std. error
t1* 0.8677759 -0.0003724138 0.02972513

Pág. 27
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

y vemos como la estimación bootstrap del error estándar (0.02972513) es cercano al error
estándar calculado por MaxEnt (0.028). El resultado del bootstrap se puede utilizar también para
determinar los intervalos de confianza de la AUC:

[Link](b1)

se obtiene las 4 estimaciones siguientes (mire la sección de recursos al final de este tutorial para
referencias que definen y comparan estas estimaciones):

Intervals :
Level Normal Basic
95% ( 0.8099, 0.9264 ) ( 0.8104, 0.9291 )

Level Percentile BCa


95% ( 0.8064, 0.9252 ) ( 0.7786, 0.9191 )

Aquellos usuarios familiarizados con el uso de bootstrap notarán que nosotros estamos haciendo
un bootstrap sólo con los datos de presencia. También podríamos hacer un bootstrap con los
datos ambientales del resto de localidades (píxeles), pero los resultados no cambiarán mucho,
dado el alto valor de puntos no muestreados (10.000).

Como ejemplo final, investigaremos el cálculo de la estadística binomial el coeficiente Kappa de


Cohen para algunos valores límite. Primero, los siguientes códigos de R calculan el valor de
Kappa para un valor límite dado por la mínima presencia predicha:

confusion <- function(thresh) {


return(cbind(c(length(testpp[testpp>=thresh]), length(testpp[testpp<thresh])),
c(length(bb[bb>=thresh]), length(bb[bb<thresh]))))
}
mykappa <- function(thresh) {
return(Kappa(confusion(thresh)))
}
mykappa(min(trainpp))

lo que da un valor de 0.0072. Si queremos utilizar un valor límite que minimice la suma de
sensibilidad y especificidad de los datos de test, podemos hacer lo siguiente, usando valores de
ratio positivo real y un ratio negativo real del objeto “performance” utilizado anteriormente para
dibujar la curva ROC:

fpr = perf@[Link][[1]]
tpr = perf@[Link][[1]]
maxsum = 0
for (i in 1:length(perf@[Link][[1]])) {
sum = tpr[[i]] + (1-fpr[[i]])
if (sum > maxsum) {
maxsum = sum
cutoff = perf@[Link][[1]][[i]]
index = i
}
}
mykappa(cutoff)

Esto da un valor de kappa de 0.0144.

Pág. 28
A brief tutorial on MaxEnt by Steven Phillips, AT&T Research
Traducido al español por: Elisa Liras, Universidad de Almería (eliras@[Link])

Para determinar las probabilidades binomiales para estos dos valores límite, podemos hacer:

mybinomial <- function(thresh) {


conf <- confusion(thresh)
trials <- length(testpp)
return([Link](conf[[1]][[1]], trials, conf[[1,2]] / length(bb), "greater"))
}
mybinomial(min(trainpp))
mybinomial(cutoff)

Esto da p-valores de 5.979e-09 y 2.397e-11 respectivamente, siendo los dos ligeramente


superiores que los p-valores dados por MaxEnt. La razón de esta diferencia es que el número de
datos de test es mayor que 25, valor límite por encima del cual MaxEnt utiliza una aproximación
normal para calcular los p-valores binomiales.

Recursos de R

Material introductorio sobre cómo utilizar R:

[Link] y otras páginas en el


mismo sitio.

[Link]

Pág. 29

También podría gustarte