Todo lo que tu abuela quería saber sobre el mundo de los datos y nunca se atrevió a preguntar

Jaime Durán
MetaDatos
Published in
11 min readApr 12, 2019

Data Science, Big Data, Data Lakes, Inteligencia Artificial, Data Mining, Machine Learning, Deep Learning, Business Intelligence, Business Analytics… se escribe y se habla mucho sobre todo ello. Y como siempre que algo se pone de moda, los conceptos, las definiciones y los límites se van difuminando poco a poco.

En este artículo voy a intentar poner un poco de orden, tratando de explicar quién es quién de forma sencilla. Si no lo tienes claro… ¡sigue conmigo!

Available in English too!

A ver que me entere yo… [Danh Vo on Unsplash]

Si tienes cuenta en Linkedin y lo usas de forma asidua, habrás podido observar que cada vez es más complicado saber a qué demonios se dedica una persona con sólo leer su titular. Sin darnos cuenta lo hemos llenado todo de palabras técnicas (a poder ser en inglés, que queda más chachi), y de siglas que quizá estamos hartos de ver, pero seguramente no nos hemos molestado en buscar.

Ajá…

“Pero tú… ¿a qué te dedicas exactamente?”

Y con esta pregunta es cuando llegan las risas….

  • Si la pregunta te la hace alguien que trabaja en lo mismo que tú, podrás explicárselo con bastante detalle (o deberías poder hacerlo).
  • Si te la hace alguien de tu mismo sector, es posible que le des una explicación pensando que esa persona conoce todas las tecnologías con las que trabajas, y te equivocarás.
  • Si la pregunta viene de alguien que se dedica a otra cosa distinta que tú, es cuando realmente te estarán poniendo a prueba. Sobre todo si la otra persona te empieza a hacer preguntas…
  • ¿Y si se lo tuvieras que explicar a tu abuela?

Pues precisamente al último punto es donde quería llegar. Hay una frase “célebre” (atribuida erróneamente a Albert Einstein) que dice así:

“No entiendes algo realmente hasta que no eres capaz de explicárselo a tu abuela”

Otra variante usa un niño de 6 años en lugar de la abuela, pero si estamos hablando de tecnología me vais a permitir que me quede con la primera.

Hace ya un par de años a mi compañero Antonio Calderone se le ocurrió la idea de aplicar esto mismo, para explicarle a los managers comerciales de nuestra empresa todas las cosas a las que nos dedicábamos en la división de Transformación Digital. Y que ellos a su vez pudieran volverlo a contar (el teléfono escacharrado de toda la vida). A mí me tocó hablarles de Big Data, Business Analytics y algo de Machine Learning. La verdad es que no me resultó sencillo… aunque quiero pensar que más o menos se quedaron con las ideas básicas.

Pues voy a repetir el mismo ejercicio aquí, aclarando los conceptos más amplios relacionados con el mundo de los datos, y tratando que sea apto para todos los públicos :)

Ciencia de Datos (Data Science, DS)

Una definición simple: la Ciencia de Datos es el conjunto de habilidades y técnicas aplicadas para extraer conocimiento útil a partir de los datos.

Dicho conjunto de habilidades se representan frecuentemente con un diagrama de Venn, creado por Drew Conway (o alguna de sus variantes):

Tenemos tres círculos que representan tres campos diferenciados. Por un lado, tenemos el campo de la programación (conocimiento de un lenguaje, sus librerías, los patrones de diseño, la arquitectura, etc). Por otro lado, están las matemáticas (álgebra, cálculo, …) y la estadística. Por último, y no menos importante, el dominio de los datos (conocimiento del sector donde se trata de aplicar; salud, finanzas, industria, etc).

Estos campos se unen, dando lugar a las habilidades y técnicas de las que hablaba la definición. Aquí estarían la obtención de los datos, su limpieza, su análisis, la creación de hipótesis, el aprendizaje automático, el modelado de algoritmos, las visualizaciones para presentar resultados, y un largo etcétera.

La ciencia de datos aglutina estos campos y habilidades, posibilitando y mejorando los procesos para la extracción de descubrimientos y conocimiento a partir de los datos en bruto.

[https://twitter.com/gapingvoid]

¿Y qué es eso de conocimiento útil? pues aquél que aporta algún tipo de valor; el que sirve para responder alguna pregunta o para resolver algún problema del mundo real.

La Ciencia de Datos también se podría definir como el campo que estudia y aplica avances en el tratamiento y análisis de los datos con el fin de ofrecer soluciones y respuestas.

Big Data

Esta va a ser la definición más fácil: Big Data es sencillamente una gran cantidad de datos; y nada más :)

¡Multiplica los datos y obtendrás más ponis!

Para definir Big Data es frecuente recurrir a las 3 V’s, que son las que explicarían su origen:

  • Volumen: La cantidad de datos recogida aumenta de forma absurda a cada minuto que pasa, y tenemos la necesidad de adecuar nuestras herramientas de almacenamiento y procesado a dicho volumen, recurriendo a soluciones distribuidas (uso de múltiples máquinas, en lugar de un supercomputador o mainframe sólo al alcance de unos pocos).
  • Velocidad: La urgencia con la que se requiere que sean procesados los datos va ligada a la frecuencia con que se obtienen, y a la necesidad de poder usarlos en la toma de decisiones con la mayor inmediatez posible; incluso en tiempo real (o casi).
  • Variedad: Los datos ya no son únicamente estructurados, como los que podíamos guardar tranquilamente en una base de datos tradicional. Debemos estar preparados para añadir nuevas fuentes de datos, con formatos de todo tipo; desde texto en crudo hasta contenido multimedia.

Con el tiempo se fueron añadiendo más V’s: veracidad (los datos han de ser de auténticos, creíbles, y estar disponibles), valor (los datos han de tener valor para el negocio o para la sociedad) y vulnerabilidad (los datos deben cumplir con la legalidad, respetar la privacidad, y ser custodiados y accedidos de forma segura).

Big Data sería el conjunto de soluciones que intentan dar respuesta a todos estos problemas. Para que no haya confusión con el primer concepto explicado en este artículo: Big Data es todo aquello que posibilita o facilita la aplicación de los avances en el campo de la ciencia de datos cuando la naturaleza de los mismos así lo exige. Ejemplo: nosotros, como científicos de datos, estamos intentando obtener respuestas de un dataset, que no sólo supera el tamaño de nuestra memoria RAM, sino que también supera el de nuestro disco duro. Big Data nos proporciona tecnologías de almacenamiento distribuido para alojar esos datos a lo largo de varias máquinas, y también tecnologías de procesamiento distribuido para poder tratarlos en paralelo.

Data Lake

Un Data Lake es un repositorio de almacenamiento centralizado, que sirve para guardar datos de todo tipo: estructurados (aquellos que solíamos meter en tablas, perfectamente definidos), semi-estructurados (los que siguen un formato donde cabe casi todo; CSV, logs, JSON, XML, etc), o no estructurados (documentos, e-mails, PDFs, imágenes, video, audio, etc). Da igual que los datos sean generados internamente o provenientes de otras fuentes.

Que el repositorio sea centralizado implica que todo se va a guardar en un mismo sitio, y que todos van a acceder ahí para obtener datos. Esto no implica que los datos estén en una misma máquina dentro de una empresa; se usará casi por norma el almacenamiento distribuido, y además podrían estar en la nube.

[https://www.ontotext.com/]

No hay que pasar por alto un detalle crucial, y es que los datos se guardan en crudo; es decir, en su formato original, sin modificar. Esto posibilita que no se pierda nada de información para futuros análisis; los datos sólo se procesarán y transformarán cuando vayan a ser utilizados. Además… ¿qué sentido tendría cocinar los peces antes de guardarlos en un lago? :)

Inteligencia Artificial (Artificial Intelligence, IA, AI)

“¿Pueden pensar las máquinas?”

En 1950, Alan Turing formuló esta pregunta, e incluso creó un famoso test para poder evaluar si las respuestas dadas por una máquina eran similares a las que podría dar un humano. Desde entonces se empezó a hablar de la inteligencia artificial, con la cabeza puesta en la imitación del comportamiento humano por parte de las máquinas.

¿Te has hecho el test a ti mismo alguna vez?

¡Un momento! mi intención no era contar la Historia de la Inteligencia Artificial….

Volvemos al concepto en sí. La Inteligencia Artificial no son los replicantes de Blade Runner, o los Cylon de Battlestar Galactica. Podemos definir una inteligencia artificial como cualquier máquina o software con algún tipo de comportamiento inteligente.

¿Y qué se considera comportamiento inteligente?

Buena pregunta! aquí es donde no nos ponemos de acuerdo…. A medida que las máquinas van desarrollando nuevas capacidades, hay tareas anteriormente consideradas como inteligentes que dejan de serlo. Por ejemplo, cuando la asombrosa Deep Blue ganó a Gary Kasparov jugando al ajedrez, y sus creadores explicaron cómo funcionaba, la pobre pasó de ser la más lista, a ser calificada incluso como “tonta” (pero con mucha fuerza bruta, eso sí).

Y para colmo, fea

Definamos una inteligencia artificial como aquella máquina o pieza de software capaz de interpretar correctamente datos de su entorno, aprender de ellos, y emplear los conocimientos adquiridos para llevar a cabo una tarea concreta, dentro de un contexto cambiante.

Ejemplos: Un coche que aparca de forma autónoma no se considera inteligente; simplemente mide distancias y se mueve mediante una rutina. Un coche que conduce de forma autónoma sí se considera inteligente, ya que es capaz de tomar decisiones en base a lo que ocurre a su alrededor (un entorno totalmente incierto).

El campo de la Inteligencia Artificial abarca multitud de ramas, que precisamente se encuentran en pleno apogeo actualmente. Resulta conveniente visualizarlas para saber exactamente de qué se ocupa y de qué no:

Imagen relacionada
[https://www.neotalogic.com/]

Minería de Datos (Data Mining)

La Minería de Datos es el proceso que intenta extraer patrones interesantes (y no evidentes) a partir de la exploración de datos.

¿A qué patrones nos referimos? Pues nos estamos refiriendo a cosas como: la forma en que se pueden agrupar los datos en base a ciertas características, la detección de anomalías (valores infrecuentes), la dependencia entre unas observaciones y otras, la sucesión de ciertos eventos, la identificación de comportamientos, etc.

La Minería de Datos usa, entre otras cosas, métodos de Aprendizaje Automático.

Aprendizaje Automático (Machine Learning, ML)

El Aprendizaje Automático es la rama más importante de la inteligencia artificial. Su objetivo es el estudio y desarrollo de técnicas para que las máquinas puedan aprender por sí mismas a ejecutar una tarea específica, sin instrucciones explícitas por parte de los humanos.

La máquina aprenderá gracias a un conjunto de datos de entrada (conocidos como datos de muestra o entrenamiento), a partir de los que construirá un modelo matemático basado en los patrones detectados por un algoritmo. El fin último de este modelo es lograr hacer predicciones o decisiones (acertadas) sobre los datos que lleguen a posteriori desde las mismas fuentes.

Dentro del Aprendizaje Automático clásico, se diferencia entre dos grandes tipos:

  • Aprendizaje supervisado: cuando los datos de entrenamiento están “etiquetados”. Eso significa que para cada muestra contaremos con los valores correspondientes a las variables observadas (las entradas) y la variable que queremos aprender a predecir o clasificar (la salida, o variable dependiente). Aquí estarían los algoritmos de regresión (aquellos que predicen un valor numérico) y los de clasificación (cuando la salida está limitada a ciertos valores categóricos).
  • Aprendizaje no supervisado: cuando los datos de entrenamiento no están etiquetados (no contamos por tanto con la variable dependiente). Lo que se busca aquí es encontrar algún tipo de estructura o patrón, para por ejemplo poder agrupar las muestras de entrenamiento, pudiendo así clasificar las muestras futuras.

El Aprendizaje Automático clásico ha dado paso a otras vertientes más sofisticadas o modernas:

  • Métodos de ensamble: básicamente es el uso conjunto de varios algoritmos para obtener mejores resultados mediante la combinación de sus resultados. El ejemplo más común es Random Forests, aunque se ha hecho muy famoso XGBoost por sus victorias en Kaggle.
  • Aprendizaje por refuerzo: la máquina aprende mediante ensayo y error, gracias a la retroalimentación que obtiene como respuesta a sus iteraciones con el entorno que le rodea. Posiblemente hayas oído hablar de AlphaGo (el mejor jugador del mundo de Go), o de AlphaStar (capaz de darnos una paliza jugando al Starcraft II).
  • Aprendizaje profundo: la joya de la corona…

Aprendizaje profundo (Deep Learning, DL)

Como acabamos de ver, el Aprendizaje Profundo es un tipo de Aprendizaje Automático.

Otra vez gatos… [https://blogs.nvidia.com/]

Se fundamenta en el uso de redes neuronales artificiales. Una red neuronal artificial es un modelo computacional, con una estructura en capas, formada por nodos interconectados que trabajan conjuntamente. Se llaman así porque están inspiradas en (o tratan de simular) las redes neuronales biológicas, que son las que encontramos en nuestros cerebros.

Resultado de imagen de artificial intelligence diagram subfields
Imagen: https://becominghuman.ai

A pesar de que las redes neuronales se han estudiado y utilizado a lo largo de bastantes años, los avances dentro del campo han sido muy lentos hasta hace relativamente poco; limitados principalmente por la falta de potencia computacional. El Aprendizaje Profundo no arrancó hasta la pasada década, aunque ha vivido un boom en los últimos años, gracias en parte a la adopción de las GPUs para el entrenamiento de las redes neuronales.

Existe la creencia de que cualquier problema de aprendizaje automático, por complicado que sea, puede ser resuelto por una red neuronal, simplemente con aumentar su tamaño lo suficiente. En la actualidad se están consiguiendo muchísimos avances en los demás campos de la Inteligencia Artificial gracias al Aprendizaje Profundo; tanto en los más tradicionales (mejorando los resultados obtenidos), como en los más punteros: procesamiento del lenguaje natural, visión artificial, reconocimiento del habla, generación de contenido multimedia realista, y un largo etcétera.

Inteligencia de negocio (Business Intelligence, BI)

Este término se refiere a la utilización de los datos dentro de una empresa para ayudar en la toma de decisiones.

Las herramientas de BI (informes, cuadros de mando) informan de lo que ha sucedido, y las decisiones basadas en ello serán por tanto reactivas.

Analítica de negocio (Business Analytics, BA)

Es la evolución de la inteligencia de negocio tradicional. Aprovecha los avances en Big Data para poder explorar e interactuar con una mayor cantidad de datos, de más tipos y más fuentes; todo ello (casi) en tiempo real. También se vale de las mejoras en el campo de la ciencia de datos, de forma que los descubrimientos obtenidos a partir de los datos serán mucho más valiosos.

Las herramientas de BA informan de lo que ha pasado y de lo que está pasando; pero además predicen lo que pasará, e incluso simulan lo que podría pasar, dependiendo de las acciones que emprendamos. Las decisiones tomadas podrán ser por tanto proactivas, en lugar de reactivas.

[https://www.nelito.com/]

La idea con BA es que toda la empresa se pueda beneficiar de estos descubrimientos, y las decisiones tomadas sean mejores (y más rápidas) en todos los ámbitos.

¡Y eso es todo! Espero que ahora haya quedado más o menos claro qué es y qué no es cada cosa :)

Se acabó lo de usar “Big Data” para todo

--

--

Jaime Durán
MetaDatos

Yet another data scientist with a blog. In fact I write two (uno en español)