El análisis predictivo es uno de los usos más frecuentes del machine learning, dado que es de los más útiles para las necesidades de las empresas y organizaciones. Pero, ¿qué tipo de algoritmos se utilizan para hacer estos análisis y cómo funcionan? Aquí se muestran algunos de los algoritmos más utilizados en los modelos de predicción.

Regresión lineal

Consiste básicamente en una línea recta que muestra el “mejor encaje” de todos los puntos de los valores numéricos. También se llama el método de los mínimos cuadrados porque calcula la suma de las distancias al cuadrado entre los puntos que representan los datos y los puntos de la línea que genera el modelo. Así, la mejor estimación será la que minimice estas distancias.

Lo bueno es que es fácil de entender y se ve claramente el porqué de esa línea. No obstante, tiende al overfitting, siendo peligrosos los valores extremos. Aparte, es demasiado simple para capturar relaciones complejas entre variables.

Regresión logística

Es una adaptación de la regresión lineal a problemas de clasificación (booleanos, grupos…),  utilizando el método de máxima verosimilitud para saber cuál es la probabilidad de que ocurra algo en cada punto determinado.

También es fácil de entender, pero, igualmente, tiene las desventajas de ser demasiado simple y de tender al overfitting.

El árbol de decisión

Es un gráfico que usa un método de ramificación basado en construcciones lógicas. Los árboles de decisión comienzan con el conjunto de datos completo y se van descomponiendo en distintas ramas en función de una serie de condiciones que se van seleccionando hasta llegar a la resolución del problema

Es muy fácil de entender e implementar, aunque resultan demasiado simples y poco poderosos para datos complejos.

Bosques aleatorios (Random forest)

Toma la media de muchos árboles de decisión hechos con muestras de los datos. Como se basa en muestras, cada árbol por separado es más débil que uno completo, pero la suma de todos logra unos resultados mejores.

Tiende a dar modelos de alta calidad, pero es difícil entender el porqué de las predicciones.

Potenciación del gradiente (Gradient Boosting)

Hace como el modelo anterior, pero usando árboles de decisión incluso más débiles. Luego, optimiza la muestra de datos utilizados en cada paso.

Tiene un alto desempeño, pero cualquier pequeño cambio en el conjunto de datos puede generar cambios radicales en el modelo, por no hablar de que es muy difícil comprender las predicciones.

Redes neuronales

Imitando el comportamiento del cerebro, son unidades (“neuronas”) interconectadas en varias capas que pasan mensajes de unas a otras.  Se utilizan cuando no se conoce la naturaleza exacta de la relación entre los valores de entrada y de salida.

Pueden resolver tareas extremadamente complejas como reconocimiento de imágenes, pero son muy lentas, requieren mucha potencia y sus resultados son predicciones casi imposibles de comprender.

K-vecinos más cercanos (k-NN o Nearest Neighbor)

Es un algoritmo de agrupamiento (clutering) no jerárquico, de los más utilizados, aunque no el único. Mediante métodos estadísticos de reconocimiento de patrones, se calcula la distancia de un dato a los vecinos más cercanos del conjunto de entrenamiento. El resultado está basado en la probabilidad de que un elemento pertenezca a la clase.

El mayor problema que tiene es que funciona mal con muestras pequeñas.

Clasificador bayesiano ingenuo (Naïve Bayes)

Este algoritmo asume que la presencia o ausencia de una característica no está relacionada con la presencia o ausencia de cualquier otra.  De este modo, cada una de las características del conjunto contribuye de forma independiente a la probabilidad de que el conjunto sea un objeto concreto.

Lo bueno es que solo requieren una pequeña cantidad de datos, aunque  a menudo falla a la hora de producir una buena estimación de las probabilidades de clase correctas.

Algoritmos de reducción de dimensionalidad

Estos algoritmos no son predictivos como tal. Se utilizan para reducir el número de variables a analizar encontrando las que realmente son relevantes para el análisis. Por ello, muchas veces se utilizan junto a los algoritmos anteriores, especialmente en conjuntos de datos muy grandes.


Déborah Fernández, responsable de marketing y comunicación de datahack

A veces busco la ficha de un libro para hacer la publicación y hacer la reseña en mi blog. Luego, Google, o Amazon, o la plataforma que sea, me sugieren libros similares al que he buscado. Lo que no saben es que a veces odié ese libro y que lo que me sugieren lo descarto en el acto. 

También, a veces, busco algo para hacer un regalo a un conocido, o para mi padre, que el hombre no sabe ni abrir Google, y de repente me empiezan a bombardear con publicidad relacionada. O me empiezan a llegar anuncios para que me forme en Big Data, sin tener en cuenta que ya trabajo en la escuela con el mejor Master de Big Data & Analytics, solo porque he buscado un artículo ¡que he escrito yo! 

¿No has vivido alguna vez situaciones similares?

¿Por qué pasa esto?

La mayor parte de los motores de recomendación se basan en algoritmos de inteligencia artificial. Estos algoritmos se basan en el pensamiento convergente, de modo que sugieren contenidos afines según el etiquetado o hábitos de consumo de otros usuarios "similares a ti".

¿Qué significa esto? Que básicamente siguen esta lógica:

Por lo tanto, no tendrán en cuenta variables como la posibilidad de que busques o compres en nombre de otra persona, o tu contexto personal.

Al final, todo depende de cómo el algoritmo está diseñado y de cómo el modelo de machine learning ha aprendido. Por ejemplo, los algoritmos de spotify se basan en el mapa de gustos y las listas de reproducción. Los de youtube, por su parte, se fijan en los vídeos que ves, los que no, cuánto tiempo pasas viendo cada vídeo, tus "me gusta" o "no me gusta" y en el "No me interesa", a lo que suman las etiquetas de cada contenido y la relevancia del mismo.

Está claro que algunos algoritmos son más complejos que otros y se basan en más variables, pero todos pueden dar lugar a sesgos que les hagan fallar. Estrepitosamente.

Los sesgos en los algoritmos, o por qué a veces fallan

No debemos olvidar que un algoritmo no deja de ser un serie de instrucciones a ejecutar para solucionar un problema. Todo muy lógico. Muy matemático. Pero no olvidemos que están diseñados por personas. Y los pasos que seguimos las personas para solucionar ciertos problemas no son siempre los más adecuados, nuestras prioridades tienen sesgos. Por ello, los algoritmos heredarán los sesgos de sus creadores.

Además, por supuesto, los algoritmos solo pueden basarse en los datos que tienen a su disposición. El resto de variables las asumen. Es decir, que asumen que busco un libro porque me gusta, que compro algo para mí y no para mi padre…

Aparte de eso, hay que tener en cuenta una cosa. Las personas somos más que matemáticas y pensamiento convergente. Las personas tenemos imaginación y curiosidad; seguimos caminos que la lógica no puede predecir. Esto es lo que se llama pensamiento divegente, lo que les falta a los algoritmos y lo que no son capaces de comprender.

Cuando el sesgo de la máquina se junta con el sesgo de los humanos

Al margen de los sesgos que lleven “de fábrica” los algoritmos, heredados de sus creadores, también hay un peligro: que acierten demasiado. Por ejemplo, la mayoría de los algoritmos de redes sociales están destinados a mostrar contenidos similares a los buscados, sin entrar en valoraciones éticas.

Por lo tanto, si el usuario tiene un sesgo machista, racista, antiecologista… el algoritmo tenderá a mostrarle más contenido con ese sesgo. Con esto, el algoritmo reforzará dicho sesgo e incluso lo radicalizará. Y apartará al usuario de  la información no alineada con su ideología y los aísla en burbujas ideológicas y culturales. Esto es lo que se llama el filtro burbuja.

El entorno en el que el modelo de machine leaning se ha entrenado también es relevante. Por ejemplo, una inteligenia artificial que aprende en según qué redes sociales puede convertirse fácilmente en un troll. O (y esto es más sensible) algoritmos de selección de personal o para encontrar pareja pueden acabar con sesgos machistas porque en el conjunto de entrenamiento los seleccionados eran hombres (en el primer caso) o mujeres jóvenes y atractivas (en el segundo). Esto es porque aprende de lo que “lee”, sin hacer valoraciones éticas. Pensamiento convergente puro y duro.

Cómo evitar los sesgos en los algoritmos

Por todo eso, los buenos profesionales del Big Data tienen que tener mucho cuidado tanto a la hora de diseñar los algoritmos como a la hora de elegir los conjuntos de entrenamiento para sus modelos de machine learning.

Además, ya se están tomando medidas para añadir elementos más humanos que incluyan el pensamiento divergente en ciertos aspectos. Por ejemplo, algunas plataformas están probando recomendaciones basadas en listas hechas por humanos.

Pero, sobre todo, hay que estar bien informado de que se pueden producir esos sesgos y combatirlos con un poco de pensamiento divergente… o volviendo loco al algoritmo buscando una cosa y la contraria, para que no sepa a qué atenerse y no genere el sesgo. ^^

MÁSTER EXPERTO EN BIG DATA & ANALYTICS

Gracias al Master en Big Data Analytics 100% Online tendrás amplios conocimientos sobre las herramientas y técnicas analíticas necesarias para la modelización de los principales retos de negocio, con el fin de mejorar la toma de decisiones a través de los datos y el conocimiento.

chevron-down