Tutorial de análisis envolvente de datos PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Tutorial de análisis de envoltura de datos

El análisis de envoltura de datos, también conocido como DEA, es un método no paramétrico para realizar análisis fronterizos. Utiliza programación lineal para estimar la eficiencia de múltiples unidades de toma de decisiones y se usa comúnmente en producción, administración y economía. La técnica fue propuesta por primera vez por Charnes, Cooper y Rhodes en 1978 y desde entonces se convirtió en una herramienta valiosa para estimar las fronteras de producción.

Actualización: el marco de aprendizaje automático de Datumbox ahora es de código abierto y gratuito para descargar. Consulte el paquete com.datumbox.framework.algorithms.dea para ver la implementación del análisis de envoltura de datos en Java.

Cuando encontré el método por primera vez hace 5-6 años, me sorprendió la originalidad del algoritmo, su simplicidad y la inteligencia de las ideas que utilizaba. Me sorprendió aún más ver que la técnica funcionaba bien fuera de sus aplicaciones habituales (financiera, investigación operativa, etc.), ya que podría aplicarse con éxito en el marketing en línea, el ranking de motores de búsqueda y para crear métricas compuestas. A pesar de esto, hoy la DEA se discute casi exclusivamente en el contexto de los negocios. Es por eso que, en este artículo, cubriré las ideas básicas y el marco matemático detrás de DEA y en la próxima publicación le mostraré algunas aplicaciones novedosas del algoritmo en aplicaciones web.

¿Por qué el análisis de envoltura de datos es interesante?

Data Envelopment Analysis es un método que nos permite comparar y clasificar registros (tiendas, empleados, fábricas, páginas web, campañas de marketing, etc.) en función de sus características (peso, tamaño, costo, ingresos y otras métricas o KPI) sin hacer ninguna suposición previa sobre La importancia o el peso de las características. La parte más interesante de esta técnica es que nos permite comparar registros compuestos de múltiples características que tienen unidades de medida totalmente diferentes. Esto significa que podemos tener registros con características medidas en kilómetros, kilogramos o unidades monetarias y aún así poder compararlos, clasificarlos y encontrar los registros de mejor / peor y rendimiento promedio. ¿Suena interesante? Sigue leyendo.

La descripción y los supuestos del análisis de envoltura de datos

Gráfico de análisis de envoltura de datos
Como discutimos anteriormente, DEA es un método que se inventó para medir la productividad en los negocios. Por lo tanto, varias de sus ideas provienen de la forma en que se mide la productividad en este contexto. Una de las características principales del método es la separación de las características de registro en dos categorías: entrada y salida. Por ejemplo, si medimos la eficiencia de un automóvil, podríamos decir que la entrada son los litros de gasolina y la salida es la cantidad de kilómetros que recorre.

En DEA, todas las características deben ser positivas y se supone que cuanto mayor sea su valor, mayor será su entrada / salida. Además, el Análisis de envoltura de datos supone que las características se pueden combinar linealmente como una suma ponderada de pesos no negativos y formar una relación entre entrada y salida que medirá la eficiencia de cada registro. Para que un registro sea eficiente, debe darnos una salida "buena" en relación con la entrada proporcionada. La eficiencia se mide por la relación entre salida y entrada y luego se compara con la relación de los otros registros.

La ingeniosa idea detrás de la DEA

Lo que hemos cubierto hasta ahora es un sentido común / práctica. Utilizamos entradas y salidas, sumas ponderadas y proporciones para clasificar nuestros registros. La idea inteligente de DEA es la forma en que se calculan los pesos de las características. En lugar de tener que establecer los pesos de las características y decidir su importancia antes de ejecutar el análisis, el Análisis de envolvente de datos los calcula a partir de los datos. Además, ¡los pesos NO son los mismos para cada registro!

Así es como DEA selecciona los pesos: Intentamos maximizar la relación de cada registro seleccionando los pesos de las características apropiadas; Al mismo tiempo, debemos asegurarnos de que si usamos los mismos pesos para calcular las proporciones de todos los demás registros, ninguno de ellos será mayor que 1.

La idea suena un poco extraña al principio. ¿Esto no conducirá al cálculo de relaciones ponderadas de manera diferente? La respuesta es sí. ¿No significa esto que en realidad calculamos de manera diferente las proporciones para cada registro? La respuesta es nuevamente sí. Entonces, ¿cómo funciona esto? La respuesta es simple: para cada registro, dadas sus características, tratamos de encontrar la "situación ideal" (pesos) en la que su relación sea lo más alta posible y, por lo tanto, sea lo más eficaz posible. PERO al mismo tiempo, dada esta "situación ideal", ¡ninguna de las relaciones de salida / entrada de los otros registros debe ser mayor que 1, lo que significa que no pueden ser más efectivos que el 100%! Una vez que calculamos las proporciones de todos los registros en cada "situación ideal", usamos sus proporciones para clasificarlos.

Entonces, la idea principal de DEA se puede resumir en lo siguiente: “Encuentre la situación ideal en la que podamos lograr el mejor puntaje de razón basado en las características de cada registro. Luego calcule esta proporción ideal de cada registro y úsela para comparar su efectividad ”.

Veamos un ejemplo

Veamos un ejemplo donde podríamos usar DEA.

Supongamos que estamos interesados ​​en evaluar la eficiencia de las tiendas de supermercados de una cadena en particular en función de una serie de características: la cantidad total de empleados, el tamaño de la tienda en metros cuadrados, la cantidad de ventas que generan y la cantidad de clientes que sirven cada mes en promedio. Es obvio que encontrar las tiendas más eficientes requiere que comparemos los registros con múltiples funciones.

Para aplicar DEA debemos definir cuál es nuestra entrada y salida. En este caso, el resultado es obviamente la cantidad de ventas y el número de clientes a los que sirven. La entrada es el número de empleados y el tamaño de la tienda. Si ejecutamos DEA, calcularemos la relación de salida a entrada para cada tienda bajo los pesos ideales (como se discutió anteriormente). Una vez que tengamos sus proporciones, las clasificaremos según su eficiencia.

¡Es hora de las matemáticas!

Ahora que tenemos una intuición de cómo funciona la DEA, es hora de profundizar en las matemáticas.

La relación de eficiencia de un registro particular i con entrada xy salida y (ambos vectores de características con valores positivos) se estima mediante la siguiente fórmula:

dea2

Donde u y v son los pesos de cada salida y entrada del registro, s es el número de características de salida ym es el número de características de entrada.

El problema de encontrar los pesos mejores / ideales para un registro particular se puede formular de la siguiente manera:

dea4
dea6
dea8

Nuevamente, lo anterior es solo la forma matemática de encontrar los pesos u y v que maximizan la eficiencia del registro i, siempre que esos pesos no hagan que ninguno de los otros registros sea más eficiente que el 100%.

Para resolver este problema debemos usar programación lineal. Desafortunadamente, la programación lineal no nos permite usar fracciones y, por lo tanto, necesitamos transformar la formulación del problema de la siguiente manera:

dea10
dea12
dea14
dea8

Debemos enfatizar que el problema de programación lineal anterior nos dará los mejores pesos para el registro i y calculará su eficiencia bajo esos pesos óptimos. Lo mismo debe repetirse para cada registro en nuestro conjunto de datos. Entonces, si tenemos n registros, tenemos que resolver n problemas lineales separados. Aquí está el pseudocódigo de cómo funciona DEA:

ratio_scores = [];
for every record i {
    i_ratio = get_maximum_effectiveness();
    ratio_scores[i] = i_ratio;
}

Limitaciones del análisis de envoltura de datos

La DEA es una gran técnica pero tiene sus limitaciones. Debes entender que DEA es como una caja negra. Dado que los pesos que se usan en la relación de efectividad de cada registro son diferentes, intentar explicar cómo y por qué se calculó cada puntaje no tiene sentido. Por lo general, nos centramos en la clasificación de los registros en lugar de en los valores reales de los puntajes de efectividad. También tenga en cuenta que la existencia de extremos puede hacer que las puntuaciones tengan valores muy bajos.

Tenga en cuenta que DEA usa combinaciones lineales de las características para estimar las proporciones. Por lo tanto, si combinarlos linealmente no es apropiado en nuestra aplicación, debemos aplicar transformaciones en las características y hacer que puedan combinarse linealmente. Otro inconveniente de esta técnica es que tenemos que resolver tantos problemas de programación lineal como el número de registros, algo que requiere muchos recursos computacionales.

Otro problema al que se enfrenta la DEA es que no funciona bien con datos de alta dimensión. Para utilizar DEA, el número de dimensiones d = m + s debe ser significativamente menor que el número de observaciones. Ejecutar DEA cuando d es muy cercano o mayor que n no proporciona resultados útiles, ya que lo más probable es que todos los registros sean óptimos. Tenga en cuenta que a medida que agrega una nueva variable de salida (dimensión), todos los registros con valor máximo en esta dimensión se encontrarán óptimos.

Finalmente, debemos tener en cuenta que, en la forma general del algoritmo, los pesos de las características en DEA se estiman a partir de los datos y, por lo tanto, no utilizan ninguna información previa sobre la importancia de las características que podríamos tener en nuestro problema (por supuesto es posible incorporar esta información como restricciones en nuestro problema lineal). Además, los puntajes de eficiencia que se calculan son en realidad los índices de eficiencia del límite superior de cada registro, ya que se calculan en "situaciones ideales". Esto significa que la DEA puede ser una buena solución cuando no es posible hacer suposiciones sobre la importancia de las características, pero si tenemos alguna información previa o podemos cuantificar su importancia, se recomienda utilizar técnicas alternativas.

En el próximo artículo, le mostraré cómo desarrollar una implementación de Análisis de envoltura de datos en JAVA y utilizaremos el método para estimar la popularidad de páginas web y artículos en redes sociales.

Si te gusta el artículo, tómate un momento para compartirlo en Twitter o Facebook. 🙂

Sello de tiempo:

Mas de Caja de datos