Big Data es la nueva palabra de moda. Casi todos los días hay un artículo hablando sobre ese tema. Se dice que los datos son el nuevo petróleo, que son el futuro y que de ellos se puede sacar muchísima información y rentabilidad.
Por otra parte están las llamadas noticias falsas que se difunden de manera masiva en tuiter o el escándalo de Cambridge Analytica, una empresa consultora que utilizó de forma fraudulenta los datos de usuarios de féisbuk para la elección del presidente norteamericano Trump.
¿De qué estamos hablando cuando se habla de Big Data? ¿Es realmente algo nuevo?
Es importante aclarar que estamos hablando de una serie de tecnologías que según como se aplican pueden servir para nuestros intereses o para intereses oscuros, centros de poder etc. Lo expresaba bastante bien Christopher Wylie uno de los directores de Cambridge Analytica que destapó el uso fraudulente de datos de féisbuk y su implicación rusa:
¨Los datos son nuestra nueva electricidad. Son una herramienta. Si hay un cuchillo en la mesa, puedes hacer una comida de estrella Michelin o usarlo como arma para un asesinato. Pero es el mismo objeto. Los datos en sí no son un problema, hay un increíble potencial y cosas asombrosas que podemos hacer con ellos.¨
Los métodos del Big Data en realidad no son algo tan nuevo. Se trata de una combinación del campo de la estadística, el reconocimiento de patrones y del aprendizaje de máquinas.
Lo que sobre todo es nuevo es el aspecto de ¨big¨, es decir la cantidad. Y ya se sabe que de la cantidad sale la calidad. La cantidad de datos que circulan por la red. La cantidad de datos que se pueden almacenar junto con el aumento en la velocidad en la que los ordenadores pueden procesar la información. Lo que ha aumentado de forma enorme es en particular la cantidad de datos etiquetados.
Por ejemplo, por las redes sociales e internet en general hay un montón de fotos etiquetadas, es decir una foto, etiquetada con lo que se supone que está en la foto. Con el salto en la cantidad de datos, también ha habido un salto en la calidad de los modelos. Se han conseguido avances importantes en el reconocimiento facial de las personas y en el reconocimiento de imagenes en general.
También hay una enorme cantidad de datos etiquetados sobre las personas. En las redes sociales está asociado nuestro nombre o correo electrónico a toda la información que nosotros compartimos: género, edad, nuestros gustos musicales, opinion política etc.
Las 5 V
Cuando se habla de Big Data se habla de las 5 V’s: volumen, velocidad, variedad, veracidad y valor. Se trata de por ejemplo clasificar en poco tiempo una enorme cantidad de diferentes objetos (fotos, videos, texto etc.) y que la información sea verídica y con contenido interesante.
Esto tiene aplicaciones muy útiles como el simple filtro de spam de nuestro correo electrónico, que nos previene de recibir cientos de correos notificándonos que hemos ganado la lotería o haciéndonos llegar ofertas de viagra. También se utiliza para detectar fraudes en el uso de tarjetas bancarias, todo lo relacionado a ciberseguridad o el reconocimiento de imagenes. El fondo es el mismo que en las campañas fraudulentas en féisbuk o la cuestión de las noticias falsas en tuiter y es la cuestión de la clasificación de datos.
No vamos a entrar en los escándalos diversos, sino queremos responder a la pregunta:
¿cuál es la base de esa tecnología y cómo funciona a un nivel más profundo?
La tecnología básicamente lo que hace es establecer una regla (un algoritmo) en base a una gran cantidad de datos iniciales, que se suelen llamar los datos de entrenamiento. Esos datos iniciales estan etiquetados, es decir por ejemplo se tienen fotos junto con una descripción: coche, gato, lámpara etc. O un conjunto de correos electrónicos donde un humano ha clasificado los correos en deseados e indeseados.
Una vez se tiene una gran cantidad de datos clasificados por un humano o humanos hay algoritmos diversos que aprovechan las estructuras existentes por ejemplo en las fotos o en los textos para clasificar los datos de forma prácticamente automática.
A eso se le llama aprendizaje de máquinas. A veces se utiliza el término inteligencia artificial, aunque ese término está más ligado a la robótica que a la tecnología de datos. En la última década se han hecho avances muy importantes en el campo del aprendizaje de máquinas. Hace décadas lo que la máquina (el algoritmo) detectaba era de poco interés y no se desarrolló más en su momento.
Hay dos factores sobresalientes de esta tecnología. La primera es que en un principio la clasificación es puramente ¨empírica¨. En lo que se apoya la tecnología es sobre todo en la cantidad de datos.
Cuando el algoritmo decide en una foto determinada de que se trata, pongamos de un oso polar, no lo hace porque el algoritmo incluya un sofisticado código que haya detectado cosas relacionadas con la esencia o con las características del oso polar. Quizás lo haya hecho porque en la mayoría de los datos de entrenamiento siempre que aparecía un oso polar, había un fondo blanco y como consequencia detecta muy bien al oso polar, no por el oso, sino por el fondo blanco.
El segundo factor es que a pesar de eso, la tecnología es extraordinariamente exitosa a la hora de establecer predicciones. Lo que establece son correlaciones, lo que no implica causación. Sin embargo por la masa de los datos resulta muy exitosa.
Evidentemente una vez hecha la clasificación, se pueden utilizar también criterios inteligentes, refinar los algoritmos etc., pero la base del éxito, el modelo general del reconocimiento de patrones es puramente empírico.
Un ejemplo: la clasificación automática de números escritos a mano
Para entender mejor lo anterior, vayamos a un objeto más sencillo que un oso polar. Una cuestión en principio nada sencilla es que un ordenador, una máquina, reconozca un número escrito a mano. Cada uno tenemos nuestra forma particular de escribir los números y hay una gran variedad de formas de escribirlos.
¿Cuál debe ser la estrategia para establecer el algoritmo?
Una estrategia podría ser establecer una serie de reglas y subreglas de tipo: si hay una línea que va en diagonal, puede ser un uno o un siete. Si hay una línea horizontal, puede ser este número o el otro. Si tiene líneas curvas y así. Esta aproximación no es muy útil en la práctica, aunque uno sea muy ingenioso y trate de conceptualizar de forma muy precisa las diferentes formas de escribir los números.
Lo que sí da un resultado muy bueno en la práctica es si partes de un conjunto grande de datos de entrenamiento, es decir de números escritos a mano que han sido etiquetados por alguien, osea por un humano. Entonces se utiliza la estadística y un modelo adaptativo donde se van ajustando una serie de parámetros.
Una vez fijados esos parámetros, cuando te dan entonces un nuevo número escrito a mano que has de clasificar, los resultados son bastante buenos. Para un llamado simple clasificador lineal el error en la clasificación es del 12%, pero para una red neuronal artificial que es un algoritmo más moderno el error está muy debajo del 1%.
Esta cuestión estadística de establecer correlaciones es lo que se ha hecho también en campañas políticas o de ventas (marketing). En ese caso no se trata evidentemente de clasificar números escritos a mano, sino grupos de personas. Una vez hecha la clasificación en base a los criterios que sean: demográficos, capacidad adquisitiva, posición política etc. se pueden diseñar campañas específicas para cada segmento.
Dirigirte a un mercado específico o a potenciales votantes de manera ¨personalizada¨ evidentemente es una buena estrategia. En marketing es fundamental y se estima que el 30% de las ventas de Amazon son por las recomendaciones personalizadas que el algoritmo calcula en función de tus compras.
¿Cómo funcionan los modelos a un nivel más profundo?
En la última década se ha desarrollado mucho lo que se conoce como las redes neuronales profundas que han dado un salto cualitativo.
El perceptrón – modelo matemático de una neurona
Uno de los algoritmos más exitosos actualmente se conoce como red neuronal profunda. Su versión básica fue desarrollada en 1957 en EE.UU. por Fran Rosenblatt y es un algoritmo prácticamente análogo al funcionamiento de una neurona y fue llamado perceptrón.
Una neurona tiene muchos canales de entrada llamados dendritas. Operan como sensores que recogen información de la región en la que se encuentran y se la pasan a la neurona que tiene también un canal de salida llamado axón.
Que importancia tiene cada dendrita en una neurona puede ser algo muy complejo, pero esquemáticamente se le puede atribuir a cada dendrita un peso específico. En base a las señales de entrada, si se sobrepasa cierto umbral, la neurona da lugar a una señal de salida.
De forma completamente análoga se concibío el modelo matemático. Si la señal de entrada sobrepasa cierto umbral, hay señal de salida y en caso contrario no hay señal de salida. Eso se puede describir matemáticamente y se le dió el nombre de función de activación del modelo.
Sin embargo la neurona es sólo una unidad básica en nuestro cerebro que por supuesto es mucho más complejo que lo que acabamos de explicar. El modelo simple descrito tampoco resultó ser útil para el aprendizaje de máquinas. Las cosas que se pueden hacer con ese modelo simple son muy pocas y los científicos fueron perdiendo el interés.
Las redes neuronales artificiales
Sin embargo desde los 80 los científicos se dieron cuenta que si se cambiaba la función de activación a algo más complejo si podían describirse cosas más interesantes. Había que abandonar el modelo biológico, hacer una abstracción y concebir funciones de activación más sofisticadas. Por lo tanto se abandonó el modelo simple que consistía básicamente en considerar transmisión o no transmisión en base a la superación de cierto umbral y se elaboraron funciones de activación más complejas que ya no tenían que ver con el funcionamiento de la neurona básica.
A estos desarrollos se les llama redes neuronales artificiales y en la última década se han desarrollada muchísimo. No sólamente en cuanto a la invención de funciones de activación, sino en cuanto a todo el modelo. No era suficiente una función. Se han ido incluyendo varias capas con diferentes funciones de activación, donde la señal va atravesando cada capa con una función de activación diferente.
Lo que acabamos de exponer es una base conceptual importante del Big Data, pero hay muchas más y sólo hemos indagado en un aspecto importante. Es un campo en desarrollo y muy dinámico. Al igual que las predicciones son muy empíricas y nos hablan de correlaciones, no de causaciones, también a nivel teórico hay muchas cosas que no están bien entendidas. Por ejemplo el número de capas que se utilizan en las redes artificiales, se encuentran a modo de prueba y error.
La cuestión es que ahí donde se utilizan esa técnicas, se obtienen predicciones bastante buenas.
Es importante que la gente progresista, no nos dejemos despistar por los escándalos diversos. Que conozcamos bien en qué se basan las nuevas tecnologías, porque puestas a nuestro servicio pueden ser de enorme utilidad.