data y la integración de datos de múltiples fuentes. Un aspecto de una infraestructura de datos típica que puede ser desafiante es que los datos en las bases de datos y los almacenes de datos a menudo residen en servidores diferentes de los servidores utilizados para su análisis. Como consecuencia, cuando se manejan grandes conjuntos de datos, se puede pasar una gran cantidad de tiempo moviendo datos entre los servidores en los que está la base de datos o el almacén de datos y los servidores utilizados para el análisis de datos y el aprendizaje automático. El capítulo 3 comienza describiendo una infraestructura de ciencia de datos típica para una organización y algunas de las soluciones emergentes para el desafío de mover grandes conjuntos de datos dentro de una infraestructura de datos, que incluyen el uso del aprendizaje automático en la base de datos, el uso de Hadoop para el almacenamiento y procesamiento de datos, y el desarrollo de sistemas de bases de datos híbridas que combinan a la perfección el software de base de datos tradicional y las soluciones tipo Hadoop. El capítulo concluye destacando algunos de los desafíos para integrar datos de toda una organización en una representación unificada que sea adecuada para el aprendizaje automático. El capítulo 4 presenta el campo del aprendizaje automático y explica algunos de los algoritmos y modelos de aprendizaje automático más populares, incluidas las redes neuronales, el aprendizaje profundo y los modelos de árbol de decisión. El capítulo 5 se enfoca en vincular la experiencia de aprendizaje automático con problemas del mundo real al revisar una variedad de problemas comerciales estándar y describir cómo pueden resolverse mediante soluciones de aprendizaje automático. El capítulo 6 revisa las implicaciones éticas de la ciencia de datos, los desarrollos recientes en la regulación de datos y algunos de los nuevos enfoques computacionales para preservar la privacidad de las personas dentro del proceso de ciencia de datos. Finalmente, el capítulo 7 describe algunas de las áreas donde la ciencia de datos tendrá un impacto significativo en el futuro cercano y establece algunos de los principios que son importantes para determinar si un proyecto de ciencia de datos tendrá éxito.
AGRADECIMIENTOS
John y Brendan le agradecen a Paul McElroy y Brian Leahy por leer y comentar los primeros borradores. También le dan las gracias a los dos revisores anónimos que proporcionaron comentarios detallados y útiles sobre el manuscrito y al personal de MIT Press por su apoyo y orientación.
John agradece a su familia y amigos por su apoyo y aliento durante la preparación de este libro y lo dedica a su padre, John Bernard Kelleher, en reconocimiento por su amor y amistad.
Brendan agradece a Grace, Daniel y Eleanor por su constante apoyo mientras escribía nuevamente otro libro (el cuarto) y hacía malabares con los trabajos y viajes.
CAPÍTULO 1
¿Qué es la ciencia de datos?
La ciencia de datos abarca un conjunto de principios, definiciones de problemas, algoritmos y procesos para extraer patrones no obvios y útiles de grandes conjuntos de datos. Muchos de los elementos de la ciencia de datos se han desarrollado en campos relacionados, como el aprendizaje automático y la minería de datos. De hecho, los términos ciencia de datos, aprendizaje automático y minería de datos a menudo se usan indistintamente. Lo que comparten estas disciplinas es el enfoque de mejorar la toma de decisiones a través del análisis de datos. Sin embargo, aunque la ciencia de datos toma prestado de estos otros campos, tiene un alcance más amplio. El aprendizaje automático se centra en el diseño y la evaluación de algoritmos para extraer patrones de los datos. La minería de datos generalmente se ocupa del análisis de datos estructurados y a menudo implica un énfasis en las aplicaciones comerciales. La ciencia de datos tiene en cuenta todas estas consideraciones, pero también aborda otros desafíos, como la captura, limpieza y transformación de redes sociales y datos web no estructurados; el uso de tecnologías del big data para almacenar y procesar grandes conjuntos de datos no estructurados; y preguntas relacionadas con la ética y la regulación de datos.
Mediante la ciencia de datos podemos extraer diferentes tipos de patrones. Por ejemplo, podríamos querer extraer patrones que nos ayuden a identificar grupos de clientes que exhiben comportamientos y gustos similares. En la jerga empresarial, esta tarea se conoce como segmentación de clientes, y en la terminología de la ciencia de datos se llama agrupamiento. Alternativamente, podríamos querer extraer un patrón que identifique los productos que se compran frecuentemente juntos, un proceso llamado minería de reglas de asociación. O podríamos querer extraer patrones que identifiquen eventos extraños o anormales, como reclamos de seguro fraudulentos, un proceso conocido como anomalía o detección de valores atípicos. Finalmente, podríamos querer identificar patrones que nos ayuden a clasificar las cosas. Por ejemplo, la siguiente regla ilustra cómo se vería un patrón de clasificación extraído de un conjunto de datos de correo electrónico: Si un correo electrónico contiene la frase “Hacer dinero fácilmente”, es probable que sea correo no deseado. Identificar estos tipos de reglas de clasificación se conoce como predicción. La palabra predicción puede parecer una elección extraña porque la regla no predice lo que sucederá en el futuro: el correo electrónico ya es o no es un correo no deseado. Por lo tanto, es mejor pensar que los patrones de predicción predicen el valor faltante de un atributo en lugar de predecir el futuro. En este ejemplo, estamos prediciendo si el atributo de clasificación de correo electrónico debe tener el valor “correo no deseado” o no.
Si un experto humano puede crear fácilmente un patrón en su propia mente, entonces no vale la pena el tiempo y el esfuerzo que requiere la ciencia de datos para “descubrirlo”. |
Aunque podemos usar la ciencia de datos para extraer diferentes tipos de patrones, siempre queremos que los patrones sean no obvios y útiles. El ejemplo de la regla de clasificación de correo electrónico del párrafo anterior es tan simple y obvia que si fuera la única regla extraída por un proceso de ciencia de datos, quedaríamos decepcionados. Por ejemplo, esta regla de clasificación de correo electrónico verifica solo un atributo: ¿contiene la frase “ganar dinero fácilmente”? Si un experto humano puede crear fácilmente un patrón en su propia mente, entonces no vale la pena el tiempo y el esfuerzo que requiere la ciencia de datos para “descubrirlo”. En general, la ciencia de datos se vuelve útil cuando tenemos una gran cantidad de ejemplos de datos y cuando los patrones son demasiado complejos para que los humanos los descubran y extraigan manualmente. Como límite inferior, podemos tomar una gran cantidad de ejemplos de datos para definir que supere lo que un experto humano puede verificar fácilmente. Con respecto a la complejidad de los patrones, podemos definirla en relación con las habilidades humanas. Los humanos somos razonablemente buenos para definir reglas que marcan un, dos, cientos, miles y, en casos extremos, millones de atributos.
Los patrones que extraemos mediante la ciencia de datos son útiles solo si nos dan una idea del problema que nos permite hacer algo para ayudar a resolverlo. La frase conocimiento procesable a veces se usa en este contexto para describir lo que queremos que nos den los patrones extraídos. El término conocimiento destaca que el patrón debería proporcionarnos información relevante sobre el problema que no sea obvia. El término procesable destaca que la información que obtenemos también debe ser algo que tengamos la capacidad de usar de alguna manera. Por ejemplo, imagina que estamos trabajando para una compañía de teléfonos celulares que está tratando de resolver un problema de abandono de clientes, es decir, demasiados clientes se están cambiando a otras compañías. Una forma en que se podría utilizar la ciencia de datos para abordar este problema es extraer patrones de los datos sobre clientes anteriores que nos permitan identificar a los clientes actuales que tienen riesgos de abandono y luego contactar a estos clientes e intentar convencerlos de que se queden con nosotros. Un patrón que nos permite identificar a los posibles clientes que abandonarían es útil para nosotros solo si (a) los patrones identifican a los clientes con suficiente anticipación para que podamos contactarlos antes de que abandonen y (b) nuestra empresa pueda formar un equipo para contactarlos. Ambas cosas son necesarias para que la empresa pueda actuar según el conocimiento que nos brindan los patrones.
Una breve historia de la ciencia de datos
El término ciencia de datos tiene una historia específica que se remonta a la década de 1990. Sin embargo, los campos en los que se basa tienen una historia