Análisis de una macroencuesta sin morir en el intento

German Marin
Saturdays.AI
Published in
22 min readFeb 2, 2024

Contexto

Presentamos un trabajo de fin de curso organizado por Saturdays AI-Zaragoza, primera edición, 2021/2022. El trabajo consiste en realizar un análisis de una encuesta realizada a casi 22.000 empresas europeas, con 76 preguntas sobre su organización, valores, contratación, formación, motivación, etc., relacionadas con las políticas de recursos humanos, aplicando técnicas de Machine Learning, para extraer conclusiones útiles para las personas y las empresas, y en particular para las empresas españolas.

Participantes

El trabajo lo hemos realizado Pilar Ribera y Germán Marín, y hemos contado con la ayuda inestimable de Rocío Aznar, nuestra mentora.

Pilar Ribera es Doctora en Ciencias Económicas y Empresariales, y es desde el año 1991 profesora e investigadora en la Universidad de Zaragoza.

Germán Marín es Ingeniero industrial, trabaja en un laboratorio eléctrico y de iluminación en el la empresa HMY.

Introducción

El reto consiste en analizar una encuesta de 76 preguntas, respondida por 21.869 empresas a nivel europeo, lo que nos proporciona un total de 1.552.699 datos tras la depuración de los mismos.

Para entender todo el conjunto de la encuesta tenemos que relacionar todas las respuestas de cada pregunta con los resultados de las demás, y los resultados volverlos a relacionar con otros datos cruzados. Por ejemplo “cómo es la distribución de trabajos a tiempo parcial; de las empresas del sur de Europa; del sector comercio; de tamaño medio; que tienen un alto porcentaje de empleos cualificados…” y verificar posibles relaciones con “empresas con alta motivación de sus empleados; que contratan valorando especialmente la capacidad de trabajo en equipo; que…”. El número de combinaciones de datos a cruzar es enormemente grande (10^2158–1). Tal vez los datos pudieran encerrar un patrón sencillo y claro pero no lo podemos encontrar porque estamos utilizando una lupa 🔎 para intentar averiguar la forma de un bosque🌲.

Cuando te ves abrumado por una tarea de tamaña envergadura, es normal buscar todo tipo de excusas para quitarle valor: que las respuestas no son determinísticas; que no son todas objetivas; que hay imprecisiones en las preguntas; a saber, con qué ánimo han contestado los encuestados a las 76 preguntas; que hay muchas respuestas vacías; y un largo etcétera. Nos sentimos como “pollos sin cabeza”🤯. Pero es algo natural, ya que el ser humano se siente perdido y frustrado cuando no encontramos patrones fácilmente. Hace 600 millones de años un animal que se arrastraba por el fondo marino desarrolló un órgano fotosensible. Si le llegaba luz realizaba sus funciones metabólicas de forma normal, y si había un cambio brusco de intensidad de luz se enterraba en el fango. Un patrón sencillo que le permitió sobrevivir, ya que le permitía detectar si le sobrevolaba un depredador. Y la especie humana lo hemos desarrollado a límites extraordinarios, a niveles de abstracción como el habla, la música o las matemáticas.

Los ordenadores son máquinas capaces de tratar millones de datos por segundo, pero necesitan de nuestras instrucciones para que puedan hacerlo. Y es aquí donde ponemos todas nuestras esperanzas en la Inteligencia Artificial, y en los modelos de Machine Learning. Si usando estas técnicas logramos que la I.A. nos enseñe un patrón, que nos diga que el bosque visto desde el aire tiene forma de un delfín 🐬, o algo así, nos sonará a música celestial.

Con lo que nos han enseñado nos ponemos manos a la obra. Y nos enteramos de que a la I.A. le gusta jugar al “teléfono roto”, es decir, enlaza patrones con datos cogidos del conjunto a través de los modelos que no acabas de entender de donde salen. Te das cuenta que no has normalizado los datos, que los nulos los has tratado erróneamente, que no estás utilizando el modelo más apropiado,… Y ahí es donde entra la metodología iterativa CRISP-DM, que de forma resumida nos dice que el problema no te va a salir bien a la primera, que debes hacer cambios y volver a empezar de nuevo otro ciclo, para refinar la solución. No estamos seguros de si el bosque tiene forma de delfín o de caracol. Pero ya estamos empezado a oír la música celestial. 🎶🎶

El CRISP-DM tiene unas fases bien definidas:

  • Business Understanding: Objetivos buscados, que están relacionados con la comprensión del negocio.
  • Data Understanding: Comprensión de los datos, para lo que requeriremos disponer de los datos, hacer un análisis exploratorio de los datos verificando que tienen sentido y que las encuestas son de buena calidad.
  • Data Preparation: Los datos hay que limpiarlos, decidir cómo tratar las preguntas no contestadas, normalizarlos para la aplicación de los distintos modelos,..
  • Modelling: aplicaremos distintos modelos para la obtención de clusters o grupos de encuestas, que en nuestro caso identificamos con las empresas. También buscaremos modelos predictivos con aprendizaje. Emplearemos distintos modelos y analizaremos cuáles se comportan mejor y son más adecuados.
  • Evaluation: Evaluaremos los resultados y verificaremos si se han cumplido los objetivos que nos habíamos planteado en la primera fase. Si no fuera así, volveremos a revisar y ejecutar todas las fases anteriores, incluyendo la del establecimiento de objetivos.
  • Deployment: Elaboraremos una herramienta que nos permita elaborar otras predicciones y clusters.

Objetivos (Business Understanding)

Nos planteamos tres tipos de objetivos:

  • Realizar un análisis descriptivo de los datos con técnicas estadísticas a fin de conocer los datos.
  • Obtener modelos de comportamiento de la empresas, empleando técnicas de agrupamiento (clustering), para entender patrones. Interpretaremos qué patrones siguen y valoraremos si realmente representan a los datos.
  • Realizar predicciones con aprendizaje automática y evaluar relaciones entre grupos de variables y la fiabilidad de los modelos para realizar su función: aprender y predecir.

Los resultados deben tener un valor social y estar alineados con algunos de los pilares del desarrollo sostenible.

Todo ello según el método iterativo CRISP-DM. Inicialmente hemos hecho una declaración general de los objetivos, son objetivos muy genéricos, no demasiado concretos. Finalmente, y tras varios ciclos hechos al método, consideramos que hay tres preguntas en la encuesta de especial interés:

  • P60 : “¿en qué medida cree que están motivados los empleados de la empresa?”. Opciones: 0: Mucho; 1: Bastante; 2: Poco; 3: Nada-
  • P69: “¿Tuvo beneficios la empresa en 2018?”. Opciones: 0: Tuvo beneficios; 1: Tuvo pérdidas; 2: Se cubrieron gastos.
  • P71: “En los próximos tres años, ¿en qué medida cree que va a cambiar el número de empleados de la empresa?”. Opciones: 0: Aumentará; 1: No cambiará; 2: Disminuirá.

El objetivo es poderlas predecir sin considerar las respuestas de otras preguntas similares que están muy correlacionadas. Además queremos determinar políticas concretas más relacionadas con estas preguntas.

Hacemos especial hincapié en la P60, ya que entendemos que está más relacionada con los datos de la encuesta, mientras que las otras dos van a depender en mayor medida con otros factores que no aparecen en la encuesta.

Comprensión de los datos (Data understanding)

Los datos son el resultado de Encuesta Europea de Empresas (ECS 2019), promotores: Eurofound y el Cedefop. Fue realizada por la empresa Ipsos Group S.A., y se puede encontrar en varios idiomas en este enlace.

A continuación se muestra un resumen por bloques de preguntas:

Resumen descriptivo de las preguntas de la encuesta

El cuestionario consta de 74 preguntas organizadas en diferentes bloques:

  • Variables de contexto: país, sector de actividad, tamaño, edad, posición y genero del encuestado.
  • Políticas de contratación: contratos indefinido/temporal, jornada completa/jornada parcial.
  • Políticas de remuneración: individuales; desempeño de equipo; resultados de la empresa.
  • Características de los puestos de trabajo: digitalización, complejidad, autonomía, …
  • Competencias y formación: adecuación de competencias y necesidades de formación.
  • Clima laboral/Cultura organizativa
  • Valores organizativos: compañerismo, realización de horas extras, participación, …
  • Valores contratación: personalidad, formación, experiencia, …
  • Estrategias de motivación: remuneración, formación, comunicación, …
  • Participación de los empleados: despidos, formación, remuneración, …
  • Resultados de la gestión de recursos humanos: motivación, relaciones con la gerencia, …
  • Resultados de la empresa: crecimiento y beneficios.

La encuesta se ha realizado con unos objetivos diferentes a los nuestros.

Tipos de Datos

  • La contestación a cada pregunta consiste en seleccionar una opción entre un conjunto de opciones presentado.
  • Unas pocas preguntas son categóricas puras, como el “país de la empresa encuestada”, la mayoría de las opciones se refieren a rangos de valores numéricos o que pueden ordenarse (“de 20% a 40%,..” o “nada/poco/mucho/todos”).
  • Unas preguntas son objetivas (“¿La empresa tuvo beneficios?”) y otras son más subjetivas (“Valorar la motivación de los empleados”).

Por otra parte tenemos dos bloques de variables claramente diferenciados:

  • Variables de contexto, que nos dan información general de la empresa y del encuestado. Representando algunas de estas variables según distribución, obtenemos:
Distribución de variables generales de contexto

Podemos analizar algunas relaciones. La encuesta la han contestado más mujeres que hombres. Pero podemos relacionar esta variable con los cargos en la empresa,

Vemos que la posición de CEO es mayor para hombres que para mujeres, esta relación cambia en la posición de dirección de recursos humanos, y otros.

  • Encuesta con las respuestas a las preguntas sobre las políticas de recursos humanos. Hemos analizado distintas áreas de la encuesta en relación a los sectores, ya que es un factor que puede variar mucho con el tipo de actividad:
La digitalización es muy superior en los servicios financieros.

El resultado es coherente con lo esperado.

  • Otro aspecto tratado responde a las competencias de los empleados necesarias para el puesto que desarrollan. Se realizaba en tres preguntas, qué proporción de empleados tienen más competencias, tienen las competencias y cuántos tienen menos competencias que los requeridos. A continuación se presentan estos resultados, para cada sector:

Empleados que requieren formación continua:

…..

Preparación de los datos (Data Preparation)

Los datos para la máquina

Las relaciones laborales, las organizaciones, y en general las empresas, son una actividad humana, que ha ido evolucionando con la historia, y de la que tenemos muchos conocimientos. Sabemos a grandes rasgos cómo funcionan, y todos los análisis realizados en la fase anterior, se han hecho en base a estos conocimientos. A veces los conocimientos pueden pervertirse y considerarse como prejuicios.

La máquina no tiene ningún conocimiento. Le presentamos un conjunto de datos, con un número de posibles valores en cada columna. El siguiente gráfico pretende mostrar las preguntas de nuestra encusta y el número de sus posibles respuestas:

Una encuesta la podemos representar como una línea poligonal que pasase por todas las preguntas, representadas con círculos, uniendo una de las opciones disponibles para cada círculo. El número de formas distintas de poder contestar el cuestionario es de 3,7E53, esto es el número de átomos contenidos en 500 planetas Tierra. A priori, para la máquina cualquier combinación es equiprobable. Le presentamos 21.869 encuestas, más de 1.500.000 de datos. Esperamos que la máquina lea todos estos datos, los analice, los relacione, y que nos diga qué patrones existen y que nos prediga los datos de una forma más exacta que lo haríamos nosotros. Y esto no solo lo hace, sino que le cuesta fracciones de segundo.

Un primer análisis que podemos realizar es de correlaciones. En el siguiente gráfico se muestran relaciones de correlaciones mayores a 0.3 (30%) entre pares de variables:

Este análisis nos sirve para entender relaciones entre pares de variables. Si las relaciones son muy altas (casi 1 ó -1), deduciremos que con la información de una pregunta tenemos la otra, y por tanto podremos eliminar una y lograr una reducción dimensional. En nuestro caso eliminamos dos preguntas por tener una correlación de 1 y -1.

También nos sugieren, como se ve en el gráfico, relaciones de grupos de variables. Pero en nuestros análisis hemos podido constatar que no siempre es así. En cualquier caso, nos puede dar pistas.

Procesamiento de los datos

Hemos realizado las siguientes acciones:

  • Tratamiento de los NaN o repuestas vacías. La mayoría de los modelos no admiten datos de este tipo, así que hay que eliminarlos o cambiarlos. Hemos realizado test cambiando estas respuestas por la media o la moda, o por valores distintos a las de las opciones presentados (-1). Pero los modelos no nos daban buenos resultados porque falseamos las distribuciones y la encusta. Los modelos de predicción con aprendizaje obtenían una mala precisión. Finalmente optamos por eliminar todas las filas que tuvieran NaN, nos deja 11440 encuestas que consideramos que son suficientes datos. Los resultados de los modelos mejoran mucho.
  • Normalización de los datos. La posibles respuestas están ordenadas y distanciadas en una unidad. Las hemos dejado en el mismo orden equiespaciadas, en el rango [0, 1]. Antes de hacer esto también teníamos señales que nos indicaban que algo estábamos haciendo mal. Por ejemplo, la curva empleada con el método Elbow para determinar el número de clusters, no era la esperada, era muy irregular
  • Reducción dimensional. Como se ha comentado antes, por análisis de correlaciones, eliminamos dos preguntas por tratarse de de la misma cuestión a otra tercera pregunta.
  • Datos anómalos: En nuestro caso no hemos encontrado datos anómalos. Queda pendiente par una siguiente revisión la localización y tratamiento de estos datos. ¿Podemos detectar encuestas que probablemente hayan sido mal rellenadas?.

Modelado y evaluación (Modelling & evaluation): Clustering

El objetivo es clasificar las encuestas en unos pocos modelos, de forma que los clasifique las encuestas en unos pocos grupos. Después hay que interpretar el resultado, saber explicar los criterios para que una encuesta se clasifique en un grupo y no en otro. También debemos validar los grupos creados.

Tenemos que resolver antes tres cuestiones:

  • Debemos hacer la clasificación con las variables de contexto o sin ellas. Hemos probado de ambas maneras y esto tiene consecuencias en el modelo a utilizar, porque las variables de contexto son categóricas puras, mientras que las de la encuesta, son asimilables a numéricas.
  • Tenemos que elegir el modelo, y ésta depende del punto anterior, como vemos a continuación.
  • La tercera cuestión es seleccionar el número de clusters.

Variables de contexto y modelos

Si no incluimos las variables de contexto, todas las variables pueden asimilarse como numéricas. Podremos utilizar los modelos:

  • K-Means: Se basa en considerar cada pregunta o columna como una dimensión. Así cada encuesta es un punto en un espacio de 66 dimensiones. La clasificación la hacer por la distancia entre estos puntos. Genera unos puntos “modelo” llamados centroides.
  • DB Scan. Es similar al K-Means en cuanto a la métrica, pero el agrupamiento lo hace por consideraciones de densidad. Tiene de positivo que no hay que indicar el número de grupos, y que nos da datos anómalos.

El primero nos da soluciones rápidas, estables y equilibradas. Rápidas porque el cálculo lo realiza en menos de 3 segundos. Estable porque nos da siempre los mismos resultados. Equilibrado porque los grupos que genera tienen un número de encuestas asociadas similar.

El DB Scan, sin embargo, las soluciones no son tan estables, y sobre todo es poco equilibrado. Es decir, asigna más del 95% de los cuestionarios a un mismo grupo, y el resto de encuestas lo clasifica en una docena de grupos con pocos cuestionarios. Así que se descarta.

Si consideramos las variables de contexto, podemos usar los siguientes modelos:

  • K-Modes: Se utiliza cuando todos los datos son etiquetados. En nuestro caso, todas las preguntas están etiquetadas.
  • K-Prototypes: Permite tener una mezcla de datos etiquetados y numéricos, según indican sus desarrolladores, utiliza lo mejor de K-Modes y de K-Means, resolviendo los posibles conflictos.

Hemos probado ambos y las conclusiones son las siguientes:

El modelo K-Modes nos ha dado muy malos resultados. Sobre todo hemos encontrado un problema de inestabilidad. Cada vez que lo ejecutábamos nos daba resultados diferentes. Por otro lado, no considera que los datos están ordenados, que el dato “entre 0% y 20%” está más cerca del dato “entre el 20% y el 40%” que de otro que indiquen “entre 40% y 60%”, por lo que se pierde coherencia en los resultados.

El modelo K-Prototypes nos ha dado muy buenos resultados en los cluster elegidos. Es muy estable. Tiene dos problemas, uno que es muy lento, en nuestros ordenadores alrededor de 10 minutos. Y otro que consume muchos recursos, y si queremos obtener un modelo de 40 clusters, el programa se cuelga por falta de resursos (memoria).

Finalmente hemos seleccionado no considerar las variables de conexto, y hemos elegido el modelo K-Means.

Número de clusters. Método Elbow

Hemos ejecutado el K-Means para 2 a 10 clusters, y hemos representado la gráfica silhouette average. Esta muestra un valor proporcional a la suma de los cuadrados de la distancia de los datos al centroide asociado. Los centroides representarán mejor a las encuestas asociadas cuanto menor sea esta distancia. A más centroides, menor es esta distancia. Pero a más centroides más difícil se hace interpretarlos y diferenciarlos. Por ello, sobre la gráfica se elige un punto que incrementando el número de centroides, no se produzca una mejora sustancial de las distancias. La curva obtenida es:

Gráfica silhouette average

La curva nos sugiere 3 centroides, o como mucho 5.

Solución con 3 centroides

Representamos gráficamente los centroides para cada variable obtenida:

Posición de los centroides, modelo de 3 clusters, para cada pregunta del cuestionario

Se observa que la sexta variable (P23) obtiene valores muy diferentes para cada centroide.

La distribución de las encuestas en los tres clusters está bastante equilibrada:

Número de encuestas clasificadas en cada grupo

Se genera una nueva columna con el cluster a la que pertenece cada encuesta.

Solución con 5 clusters

Representamos gráficamente los centroides para cada variable:

Distribución de centroides, modelo de 5 clusters, para cada pregunta del cuestionario

Y la distribución también es equilibrada:

Nº de encuestas clasificadas en cada grupo, modelo de 5 clusters

Tal como se ha indicado, nos quedamos con el modelo de 3 clusters.

Validación del modelo clustering k-Means de 3 clusters

Ejecutamos varios modelos de predicción con aprendizaje para predecir a qué cluster pertenece cada encuesta, y calculamos precisiones. Lo hacemos con cuatro modelos diferentes:

Precisiones para que cada encuesta prediga al cluster al que pertenece

Este test no salía tan bien con el modelo de agrupamiento K-Modes. Y con DB Scan se asignaban todas las encuestas al cluster con más elementos, por lo que nos daba una precisión alta, pero de un solo cluster, lo que carece de sentido.

Interpretación del modelo clustering k-Means de 3 clusters

Para ello realizamos un modelo decision tree de predicción del cluster con 7 nodos. Obtenemos:

Predicción decision tree de las encuestas a lcluster al que pertenecen, nos da una precisión >75%

Obtenemos por las contestaciones a las preguntas P23 y P57_3 podemos averiguar a qué cluster pertenece cada encuesta con una precisión de aciertos de más del 75%.

Las pregunta P23 dice: “¿Utiliza la empresa análisis de datos para controlar el desempeño de los empleados?”, y las opciones son: 0: YES; 1: NO.

La pregunta P57_3 indica: “¿En qué medida han influido directamente los empleados en las decisiones de la gerencia SOBRE Formación y desarrollo de competencias?” y las opciones son: 0 Great, 1: Moderate; 2: small; 3: Not.

De esta forma podemos interpretar los resultados:

  • Cluster 0 (Políticas analítico-participativas) Usa análisis de datos para controlar el desempeño; Los empleados participan en las decisiones de formación y desarrollo de competencias.
  • Cluster 1 (Políticas intuitivo-unilaterales) No usa el análisis de datos; y los empleados influyen poco en las decisiones de formación y desarrollo de competencias.
  • Cluster 2 (Políticas intuitivo-participativas) No usa el análisis de datos y los empleados influyen notablemente en las decisiones de formación y desarrollo de competencias.

Aplicación de análisis de datos por cluster

Realizamos el análisis de datos de las custiones objetivo, sobre motivación de los trabajadores (P60), beneficios (P69) y evolución de la plantilla (P71) para cada cluster.

Variables objetivos frente a clusters

En la última gráfica podemos ver las tres variables y las relaciones con los clusters. Es importante indicar que los valores se han puesto de forma inversa, es decir, son mejores cuanto más cerca se encuentren del centro de la circunferencia.

El cluster 1 (políticas intuitivas y unilaterales) obtiene peores resultados en los tres aspectos. Los cluster 0 (políticas analítico-participativas) y 2 (políticas intuitivo-participativas) tienen resultados muy similares, siendo algo mejor el cluster 2 en cuanto a la motivación.

Estudios futuros sobre el clustering

Si quisiéramos realizar un modelo de forma que un algoritmo de clustering emplee una variable que es de nuestro interés, se nos ocurre que podríamos duplicar la columna de esa variable, o bien incrementar el rango de normalización. Nos queda pendiente ver qué efectos tienen este tipo de cambios y si se consiguen los objetivos buscados.

Modelos de predicción con aprendizaje

En lo que sigue vamos a aplicar procedimientos de predicción con aprendizaje, y evaluaremos su eficacia. Los compararemos con un modelo sencillo, que llamaremos modelo vago, que nos predecirá para cualquier encuesta, la opción que más se repite, o moda. Un modelo lo consideraremos mejor cuanto más puntos porcentuales de precisión saquemos sobre la precisión del modelo vago.

Predicción de P60 motivación

Queremos predecir las respuestas a la pregunta P60: “¿En qué medida cree que están motivados los empleados de la empresa?” La opciones para contestar la pregunta y sus distribuciones son:

Distribución de las respuestas a la pregunta P60

La opción 4 es muy residual por lo que estas respuestas las pasamos a la opción 3, que renombramos como “Poca o Nada”. Queremos buscar factores relacionados con la pregunta. La pregunta P63 “¿Cómo describiría la relación entre los empleados y la empresa?”, es muy similar, de hecho tiene una correlación del 47%. Decidimos eliminar del análisis la pregunta P63, sabiendo que empeoraremos los resultados.

El modelo Vago pronostica para cualquier encuesta, que la respuesta a P60 es la 2 “bastante”, con lo que la tasa de aciertos será de 66.8%. Probamos con el resto de modelos, y los resultados son:

Cualquiera con pocos conocimientos en estadística predeciría el resultado del modelo Vago, pero con los datos estadísticos de la tabla, y utilizando estas técnicas de Machine Learning, con el modelo XGBoost mejoraríamos las predicciones en un 4%, lo cual, en determinadas circunstancias, esta ganancia de aciertos puede ser una gran ventaja.

Analizamos los resultados del XGBoost:

El modelo nos da la matriz de confusión que en este caso nos sale:

Matriz de confusión obtenida con el modelo XGBoost

Por filas podemos interpretar los casos reales, y por columnas los casos predichos. Por ejemplo, la primera fila nos indica que de 539 casos testeados con opción 1 (mucha motivación), 183 se ha predicho bien; 350 como opción 2 (bastante) y 6 como opción 3. La matriz de confusión es especialmente útil porque nos indica cómo acierta y cómo se equivoca. En determinados casos, puede necesitarse que no haya falsos negativos para una determinada opción, y que esto sea más importante que la precisión global.

Y también nos da la “importancia” o peso que da a las variables de entrada para hacer sus predicciones:

Peso de variables para predecir las contestaciones a la P60 con el modelo XGBoost

La lista es muy larga y con pesos muy pequeños, salvo la P28_3, con un peso de 10.30%. La pregunta P28_3 dice “Motivación de los empleados haciendo el trabajo interesante y estimulante”, que influye más que otras como la P28_1"motivar y conservar a los empleados: Ofrecer compensaciones económicas”, que es la variable 13º con un peso de 1.40%.

Motivación en España

Hacemos el mismo estudio, pero aplicado a España.

Distribución respuestas sobre P60 motivación en España

Se puede ver que los resultados con sensiblemente peores que para el conjunto de encuestas europeas. Aplicamos distintos modelos y obtenemos:

Precisión de distintos modelos aplicados a P60 (motivación) para España

El mejor resultado lo hemos obtenido para el modelo decision tree para el que obtenemos el siguiente árbol y resultados:

Resultados de aplicar modelo Decision Tree para predicción de P60 (motivación) y para España.

Las variables de mayor peso que sirvan al modelo decision tree para las encuestas de empresas españolas son P28_3 y P28_2, que son:

P28_3: “Motivación de los empleados haciendo el trabajo interesante y estimulante”.

P28_2: “Motivar y conservar a los empleados: Comunicar una misión y visión sólidas que den sentido a nuestro trabajo”.

Predicción de P69 (Beneficios) y P71 (Evolución futura de la plantilla).

Queremos averiguar qué factores relacionados con las decisiones en materia de recursos humanos está más relacionados con los beneficios de la empresa y la evolución futura del número de empleados. Por ello, no consideramos las variables de contexto ni las correspondientes a variables de resultados (P12 sobre la evolución pasada de la plantilla, P69 sobre beneficios, P70 sobre las expectativas de tener beneficios futuros, P71 sobre la evolución del número de empleados en el futuro). Al quitar estas variables, que están muy relacionadas, bajamos la precisión de las predicciones, pero los modelos nos indicarán tanto la precisión como con qué variables se logra las predicciones.

Primero presentamos los resultados para el conjunto de encuestas en Europa:

Análisis y predicción para las preguntas P69 y P70 en Europa

Y a continuación mostramos los datos para España:

Análisis y predicción para las preguntas P69 y P70 en España

Como se puede ver las predicciones son peores, aunque muy cercanas al modelo Vago. Además se ha buscado un modelo decision tree con un número de nodos para que maximizara la predicción y minimizara el número de nodos, y con este ajuste se ha logrado mejorar al resto de los modelos. El modelo Decision Tree ha determinado que calcula con un 71,9% de precisión las respuestas a la pregunta P69 sobre si la empresa había tenido beneficios, pérdidas o más o menos cubrían gastos. Y nos dice que lo logra con un análisis sencillo de tres variables, la P62, la P15 y la P23. Estas preguntas son:

P62: “¿En qué medida le resulta difícil a la empresa conservar a los empleados?

P15 “¿Cuántos empleados del centro de trabajo trabajan a jornada parcial?

P23 “¿Utiliza la empresa análisis de datos para control de desempeño?

Es una relación sorprendente. Hemos buscado algo así cuando hemos quitado las variables P12, P69, P70 y P71. Este resultado poco esperado podría parecer casual, pero hay que saber que la muestra es de 842 encuestas de empresas españolas, y que el modelo obtiene un 71,9% de precisión.

En cuanto a la P71, sobre si se espera que la plantilla crezca, disminuya o se mantenga, el modelo predice con un 50,6% de precisión observando tres variables, la P28_3 (Hacer un trabajo interesante y estimulante para motivar y conservar los empleados); la P31 (Proporción de empleados que tieenn marcado el ritmo de trabajo por máquinas u ordenadores); y la P28_4 (Proporcionar oportunidades de formación y desarrollo como medio para motivar y conservar a los trabajadores).

Otras predicciones

A continuación se muestran otras predicciones realizadas con regresión logística, para entender las ganancias de precisión que podemos alcanzar fácilmente con Machine Learning

Ejemplos de predicciones con regresión logística

Conclusiones

Hemos tomado una encuesta con muchas preguntas y registros, encuesta que tenía una finalidad muy distinta a la del Análisis ML.

La primera dificultad era que no teníamos unos objetivos claros, no sabíamos qué información podíamos sacar de todos esos datos.

  • Hemos seguido el método Crisp-DM, y dejando aparcado en un primer ciclo el “Business Understanding”, pasando a la fase Data Understanding, que entrañaba más dificultad de la esperada. A lo largo de varios ciclos hemos ido aprendiendo a utilizar los modelos de clustering y de predicción con aprendizaje, hemos ido entendiendo los datos, los modelos y los objetivos que podíamos alcanzar.
  • Estadísticamente hemos analizado y comprobado sesgos relacionados con las variables de contexto.
  • Las agrupaciones de datos en torno a los clústers nos permiten abstraer información útil, como el ejemplo expuesto de los beneficios, motivaciones y crecimiento de las empresas. De los modelos de predicción hemos sido capaces de relacionar la motivación de los trabajadores con otros factores. Los resultados son estadísticos, porque las encuestas tienen preguntas subjetivas, sesgos, y la encuesta no contiene todos los factores que expliquen las causas y efectos de los aspectos con los que hemos trabajado.
  • Pero aun cuando la información no sea completa, contenga subjetividades, logramos mejorar en varios puntos porcentuales las mejores predicciones que podríamos hacer con un estudio estadístico sencillo, y esto parece magia. Y en muchos campos, esas diferencias de ganancia de información y del entendimiento de relación entre variables puede ser decisivos para lograr unos objetivos determinados.

Despliegue (Deployment)

Hemos realizado un programa Python que utiliza las librerías más comunes de Pandas y Machine Learning para este lenguaje, y que tiene por finalidad el manejo de datos, realización de modelos de Machine learning tanto para clustering como para predicciones con aprendizaje automático. Funciona a modo terminal, con una prompt donde se introducen comandos sencillos. Es sencillo y rápido adaptarlo a otras encuestas y datos. Se puede descargar el programa y las instrucciones en este enlace.

Trabajo futuro

El área de las encuestas y su tratamiento con técnicas de inteligencia artificial es un campo que puede aportar grandes ventajas. Es posible mejorar y sistematizar las técnicas para este tipo de fuente de datos. Hacer una encuesta es caro, por lo que parece lógico querer extraer de ellas toda la información posible. Se puede pensar el pautas para diseñar una encuesta con este fin.

  • Este trabajo lo hemos realizado sobre una encuesta real, pero sin duda existen muchos otros tipos de datos que aquí no se daban, como numéricos. O preguntas que sean diferentes en función de las opciones seleccionadas previamente. Podemos tener muchos casos particulares aplicados a cada encuesta. Afortunadamente hoy en día es fácil acceder a multitud de encuestas públicas para seguir esta línea de trabajo.
  • Nos hemos quedado con ganas de analizar los datos que más se alejan de los centroides, o datos anómalos, analizarlos y saber si son perfectamente válidos, e incluso más interesantes, o por el contrario se pueden eliminar de los datos.
  • Si queremos que un clustering emplee una variable de interés, podríamos o bien duplicar la columna de esa variable, o bien incrementar el rango de normalización. Queremos ver cómo influyen estos cambios y si se consiguen los objetivos buscados.
  • También queremos ampliar las capacidades del programa, que consideramos que es verdaderamente una herramienta útil que abstrae a los usuarios de detalles informáticos, y agiliza la realización de muchas pruebas. Se puede ampliar para incluir más modelos a los ya implementados, para aplicaciones de series temporales, correlaciones lineales y no lineales, o ejecutar iteraciones para optimizar los parámetros de los modelos, o la ejecución de varios modelos para realizar una comparativa entre todos, realizar un análisis de influencias de variables desordenando éstas, y un largo etcétera.

Agradecimientos

Agradecemos al grupo de docentes de Saturday IA Zaragoza: Mª Carmen Rodríguez, a Rafael del Hoyo, a Rosa Montañés, a Gorka Labata, a Ricardo Salillas, a Rocío Aznar, a David Abadía, y a Adán Alquegui, por su labor docente, por el esfuerzo para prepararnos una magnífica documentación, por su disposición para resolver cualquier duda, por ejercer de animadores, por transmitirnos también una pequeña parte de su experiencia. Y sobre todo por habernos transmitido interés y las ganas de aprender mucho más.

Y especialmente a Rocío Aznar, nuestra mentora, por su paciencia, ánimo, y porque realmente ha sido para nosotros como un hada madrina que nos ha aportado luz donde sólo veíamos penumbra.

--

--

German Marin
Saturdays.AI
0 Followers
Writer for

Soy Ingeniero Industrial. Mi primer ordenador fue un Commodore 64 en 1987 y desde entonces la programación y resolución de problemas me apasionan.