Ciencia de datos, Big Data e Inteligencia Artificial. Todo lo que necesitas saber.

Tabla de contenidos

Empecemos por lo básico:

¿Qué es Ciencia de datos o Data Science?

La ciencia de datos o Data Science es un proceso en el cual se utilizan los datos para obtener información valiosa.

Los principales objetivos que la Ciencia de datos debe cumplir son los siguientes:

  • Tomar decisiones.
  • Crear estrategias de negocio.
  • Producir software basados en A.I.

Proceso de Ciencia de Datos o Data Science

Las distintas actividades que se llevan a cabo en el proceso de Ciencia de datos se pueden resumir de la siguiente manera:

  1. Obtener datos (mediciones directas, encuestas y fuentes de internet).
  2. Transformar o limpiar datos (dar formato correcto, eliminar o marcar errores y espacios en blanco).
  3. Explorar, analizar y visualizar datos (buscar, organizar y graficar información).
  4. Usar modelos de Machine Learning (predecir información).
  5. Escalar modelos de Machine Learning (poner los modelos a disposición de los usuarios).

El proceso de Ciencia de datos dependerá en gran medida del proyecto o empresa en la que se trabaje, pero algo general es que se basa en el método científico o metodología para descubrir por qué las cosas pasan como pasan. Por lo que se debe tener muy claro cuál es la pregunta y objetivo del caso de negocio. Ya que es un ciclo, es decir que se repetirá constantemente.

Áreas de conocimientos en Ciencia de Datos

Es una intersección de varios conocimientos en los que se encuentran:

  • Matemáticas y estadística.
  • Ciencias computacionales.
  • Conocimiento del dominio o sector del negocio.

El nivel de profundidad de cada una de estas áreas se va a determinar de acuerdo al rol que quieras aprender. Sin embargo, algunas habilidades básicas para todos los roles serían: programación, estadística descriptiva, probabilidad y mantenerse actualizado sobre lo que pasa alrededor de la industria en que se encuentra.

¿Qué es inteligencia artificial?

Inteligencia artificial (A.I. por sus siglas en inglés) se trata de enseñarles a las máquinas a emular o imitar la inteligencia natural de los seres humanos.

Esto lo hacen por medio de algoritmos que modelan cómo aprendemos, tomamos decisiones e identificamos patrones. Algunos ejemplos son: identificar gatitos de perritos o jugar videojuegos.

Una de las grandes hazañas que ha podido lograr la inteligencia artificial fue ganarle a campeones mundiales en Go, Ajedrez y League of Legends por nombrar algunos. Por supuesto, no fue la misma máquina.

Además, una aclaración importante es que la inteligencia artificial está limitada de cierto modo, porque no puede tener consciencia de sí misma y por ende no puede tomar sus propias decisiones.

Machine Learning

Es una rama de la inteligencia artificial, que tiene como objetivo hacer que las computadoras aprendan determinada habilidad.

Esto se hace por medio de pasarle muchos datos a un algoritmo, que posteriormente nos va a arrojar un modelo, el cual podrá resolver problemas por medio de predicciones que este haga o también implementarlo a un software para solucionar determinadas situaciones.

Datos de entrenamiento

Son los datos utilizados para entrenar un algoritmo y obtener un modelo que pueda hacer predicciones para resolver problemas e implementarse en un software para un mejor rendimiento en el negocio.

Datos de entrada

Son los datos que se le dan al modelo obtenido luego de ser entrenado, que son del mismo contexto que los de entrenamiento, pero con diferentes detalles. Para los cuales va a generar predicciones que serán evaluadas para garantizar la eficacia del modelo.

Utilidad del Machine Learning

Por ejemplo, si queremos saber cuándo tendremos una perdida masiva de clientes, podríamos hacer un modelo que haga dicha predicción. Además, saber cuándo y qué producto ofrecerles para no perder un cliente.

Por otra parte, si queremos saber si un paciente es propenso a una enfermedad específica en el futuro, podemos hacer un modelo que realice una predicción para detectar dicha enfermedad en las primeras etapas o prevenirla.

Proceso de integración de Machine Learning al producto

Hay equipos encargados de implementar modelos de Machine Learning al producto, como por ejemplo: el algoritmo de recomendaciones de Netflix o YouTube, quienes por medio de los datos que el usuario crea al interactuar con la plataforma, predice cuáles son los videos que más podrían interesarle.

Los pasos para la integración del Machine Learning al producto son:

  1. Ingesta de datos.
  2. Validación de los datos.
  3. Preparación de datos.
  4. Entrenamiento de modelo.
  5. Evaluación de modelo.
  6. Validación de modelo.
  7. Despliegue de modelo.
  8. Interfaz de usuario.

Diferencias entre Ciencia de datos e inteligencia artificial

Ciencia de datos es el proceso para analizar datos y generar predicciones valiosas para la toma de decisiones y creación de productos.

La inteligencia artificial se refiere a los algoritmos que sirven para predecir eventos en el futuro, imitando la inteligencia humana.

Relación entre Ciencia de datos e inteligencia artificial

En Ciencia de datos se utiliza como herramienta la inteligencia artificial para predecir el futuro, por medio de modelos evaluados que hacen pronósticos emulando cierta habilidad del ser humano, al analizar grandes cantidades de datos.

¿Qué es Big Data?

Big Data es cuando Excel se cuelga (broma) podemos definir Big Data como una enorme cantidad de datos que tiene una empresa u organización para trabajar, estos datos generalmente no se pueden manejar de manera tradicional, debido a su enorme tamaño.

Ciencia de datos

5 V’s del Big Data

Para que los datos sean considerados Big Data deben cumplir con las 5 V’s del Big Data. Que son las siguientes:

Volumen

Son toda la cantidad de datos que tiene la empresa, desde su funcionamiento hasta las interacciones de los usuarios.

Velocidad

Se refiere a que los datos de Big Data deben tener una velocidad en vivo, para poder procesar de manera adecuada, considerando su tamaño.

Variedad

Los datos que almacene o transaccione la empresa tienen distintos tipos de formatos.

Veracidad

Los datos que se tengan en Big Data deben ser confiables o verdaderos, porque en ellos se basarán importantes decisiones del negocio.

Valor

Estos datos que se almacenan deben brindar algún tipo de ventaja a la empresa para tomar decisiones o hacer productos para sus consumidores.

Procesamiento de Big Data

El almacenamiento, transformación, análisis e implementación de estos datos del negocio deben hacerse en distintas computadoras, debido a la gran cantidad y también a las diferentes estrategias que deben utilizarse para que funcione el Big Data.

Algunos servicios que se encargan de dividir este gran problema en partes más pequeñas son: Spark, Hadoop y servicios de cómputo en la nube.

Relación entre Ciencia de datos, inteligencia artificial y Big Data

En el procedimiento de búsqueda de información valiosa que es encargado a la Ciencia de datos, se usa Big Data para aumentar las posibilidades de tener información más profunda y detallada del negocio.

Además, se pueden emplear modelos entrenados de la rama de Machine Learning de inteligencia artificial para agilizar y encontrar patrones inesperados.

Por qué aprender Ciencia de datos

Pon especial atención a esta parte para aprender acerca de las actividades que más destacan en este mundo y que son tan vitales, como interesantes de aprender con maestría.

  • Te gusta tomar decisiones basadas en datos

Data-Driven, es la cultura que caracteriza a las empresas que basan sus decisiones en los datos.

En estas empresas podrás encontrar grandes oportunidades para buscar y encontrar información superinteresante acerca del sector de negocio, y deberás proporcionar posibles acciones a tomar para aprovechar dicha información.

  • Te gusta aplicar matemática y algoritmos

Los algoritmos y las matemáticas son una de las herramientas principales para analizar los datos y exprimirles toda la información valiosa que tengan, de tal modo que deberás aplicarlos.

  • Te gustaría trabajar en una empresa Data-Driven

A este tipo de empresas les encanta tener personas curiosas e interesadas en sacarle todo el valor posible a los datos para crear productos y tomar decisiones.

  • Te gustaría crear productos fuertemente basados en inteligencia artificial

Una de las grandes funciones de la Ciencia de datos para buscar información de valor para el negocio, es a través de la A.I.

Esto se logra mediante el entrenamiento de modelos para que las A.I. encuentren patrones inesperados dentro de los datos, que ayuden a mejorar los productos existentes, o crear nuevos que satisfagan las necesidades de los clientes.

Áreas de aplicación de la Ciencia de datos e inteligencia artificial

Dentro de la inteligencia artificial y la Ciencia de datos nos encontramos con muchas áreas y ramas en las cuales se puede profundizar, algunos ejemplos de estas áreas y ramas son:

Ramas de la inteligencia artificial

Los distintos campos en que se divide la inteligencia artificial se pueden apreciar de la siguiente manera, cada una con su propio encanto:

Áreas de Ciencia de datos o Data Science

En este punto es muy importante resaltar que los siguientes ejemplos sobre la aplicación de la Ciencia de datos son solamente algunos de los muchos que existen.

  • Salud.
  • Procesos de producción.
  • Procesos comerciales.
  • Redes sociales.

Pirámide de necesidades de la Ciencia de datos

La pirámide de necesidades de la Ciencia de datos nos explica cuál es el orden de las etapas que las empresas deben seguir para su desarrollo en la cultura Data-Driven.

https://cdn.document360.io/da52b302-22aa-4a71-9908-ba18e68ffee7/Images/Documentation/Piramide_Data_science.jpg

Esta nos define que dichas etapas tienen el siguiente orden:

  1. Recolección de datos.
    • Instrumentación.
    • Logging (creación de cuentas de los usuarios).
    • Sensores.
    • Datos externos.
    • Contenido generado por el usuario.
  2. Movimiento y Almacenamiento.
    • Datos confiables.
    • Flujo.
    • Infraestructura.
    • Pipelines.
    • ETL (Extract, Transform, Load).
    • Datos estructurados (es decir que ya están organizados o clasificados por alguna estructura estandar).
    • Datos no estructurados (quiere decir que los datos están sueltos por ahí).
  3. Exploración y transformación.
    1. Limpieza.
    2. Detección de anomalías.
    3. Preparación.
  4. Agregaciones y etiquetado.
    • Estadísticas.
    • Métricas (son como las medidas de una actividad en concreto).
    • Segmentación.
    • Agregaciones.
    • Características.
    • Entrenamiento de datos.
  5. Aprendizaje y optimización.

Roles en la industria de la Ciencia de datos o Data Science

A las etapas anteriores se les añaden los roles

que se van a encargar de hacer las tareas y actividades correspondientes para que los datos sigan su curso. Algunos de

estos roles suelen tener un enfoque, ya sea con el negocio o con la ingeniería

.

https://cdn.document360.io/da52b302-22aa-4a71-9908-ba18e68ffee7/Images/Documentation/Flujo_de_roles.jpg

Data Engineer

Es la persona encargada de construir y mantener todo el ambiente sobre el que habitarán los datos. Por lo que se encuentra en la base de la pirámide y está más enfocada en la ingeniería.

Data Scientist

Este rol se encarga de ejecutar los métodos necesarios e indicados para analizar la etapa actual, como también hacer predicciones del futuro por medio de modelos de Machine Learningcon el fin de encontrar información valiosa para crear estrategias y productos que beneficien al consumidor.

Data Analyst

Se encarga de estar en una constante búsqueda de necesidades de información que tengan las distintas áreas del negocio, para poder investigarlas y dar respuesta que sea útil para la resolución de problemas y mejoramiento de procesos.

A diferencia del rol de Data Scientist, este solamente analiza el presente.

Research Scientist

Es un rol reciente en la industria, que trata sobre servir de traductor de los diferentes hallazgos que se encuentren en el equipo de data, como también a la hora de traducir las necesidades del negocio para el equipo de data.

Machine Learning Engineer

Se ocupa de evaluar y dar seguimiento a los modelos de Machine Learning planteados el rol de Data Scientist, como también de comunicarse con el equipo de developers, para la correcta y eficiente implementación de los modelos y el producto.

Developer

El rol se encuentra dentro de un equipo de ingeniería dedicado a desarrollar el producto de la empresa.

Ya sea en el backend o en el frontend, debe hacer parte de la implementación de los modelos de Machine Learning con el producto.

¿Qué hace una Data Analyst?

El objetivo de la Data Analyst es analizar información de valor para ayudar a resolver las necesidades de cada una de las áreas de una organización. La diferencia con la Data Scientist es que nada más se ocupa de analizar el presente**.

Es uno de los roles ubicados en la mitad de la pirámide de necesidades de la Ciencia de daos, el cual aprenderemos a profundidad.

¿Cómo lo hace?

Este rol encuentra información de valor por medio de la extracción de datos de diversas fuentes y su respectivo análisis, para poder presentarlos de forma sencilla a las demás áreas de la empresa con tableros y gráficos.

El día a día de una Data Analyst

Veremos todas aquellas actividades que se deberán hacer en el día a día de una persona que se dedique profesionalmente a Data Analyst.

Identificar necesidades de información

La Data Analyst debe estar en la búsqueda de necesidades de información de las demás áreas de negocio para poder hacer una correcta formulación que se pueda responder con datos.

Extraer datos de fuentes

Para trabajar con los datos primero es necesario saber dónde están y obtenerlos. Estos por lo general se encontrarán en bases de datos, internet, redes sociales, etc.

Limpiar y organizar los datos

Los datos no van a venir organizados y listos para analizar. Antes se deben corregir, eliminar o editar los errores, espacios en blanco, columnas repetidas, cambiar de formato y demás características que ponga en peligro el buen análisis de los datos.

Analizar los datos

Por medio de la estadística descriptiva, herramientas matemáticas y tecnológicas para filtrar, organizar, recopilar los datos de tal forma que permita identificar patrones o estacionalidades que resulten valiosas para la toma de decisiones frente a el problema o pregunta formulada al principio.

Comunicar los hallazgos

Una vez encontrados los hallazgos, gracias a las exploraciones y análisis de datos, es indispensable comunicarlos de forma sencilla y con la menor carga cognitiva posible, para la inmediata toma de decisiones y creación de productos si es posible.

Ciclo de trabajo de un Data Anlayst

Muy de la mano con las actividades del día a día de una Data Analyst, existe una estructura que se debe mantener e iterar, es decir, repetir varias veces hasta obtener el resultado esperado. Las cuales son:

  1. Pregunta o problema.
  2. Exploración y contraste de hipótesis.
  3. Recopilar información de valor.
  4. Crear visualizaciones de la información.
  5. Comunicar los hallazgos.

Ejemplo

Eres la Data Analyst de un E-commerce de ropa y te piden la explicación de por qué e cayeron las ventas el mes pasado. Debes entonces formular una posible hipótesis.

  1. Pregunta o problema -> Pregunta: ¿Por qué se cayeron las ventas el mes pasado? Hipótesis: Probablemente, porque el tiempo de espera de la página web fue demasiado y los usuarios se cansaron de esperar y se fueron.
  2. Exploración y quieries -> Quieries: Extraer los datos del tiempo de espera de la página web. Analizar: Cómo fue la tendencia en el tiempo.
  3. Recopilar información de valor -> Insight: Resulta que encontramos que sí hubo una subida en el tiempo de espera.
  4. Crear visualizaciones de la información -> Mostrar un gráfico de tendencias donde se pueda apreciar las ventas, el tiempo de espera y cómo fue históricamente.
  5. Comunicar los hallazgos -> Reunirse con las personas que hicieron la consulta, para mostrarles y explicarles el gráfico que evidencia la posible razón de la caída de las ventas el mes pasado.

Roles relacionados

Además de los roles más conocidos dentro de la industria de la Data, existen algunos que se especializan aún más, siendo indispensables en estructuras mucho más grandes y desarrolladas de compañías Data-Driven.

Business Analyst

Es una persona que tiene un conocimiento más profundo del negocio y está para ayudar a la Data Analyst a identificar las preguntas o casos de negocio.

Data Visualization Specialist

Es la persona experta en como diseñar y construir tableros para presentar hallazgos a las demás personas, de manera fácil y sencilla.

¿Qué hace un Data Scientist?

Generalmente, este rol se encarga de tomar datos de diversas fuentes y analizarlos para encontrar información valiosa para el negocio, como también para diseñar modelos de Machine Learning, con el objetivo de tomar mejores decisiones dentro de la organización e incorporar los datos al producto.

Día a día de una Data Scientist

Dentro de la rutina diaria de una Data Scientist, nos encontramos con:

  • Extraer, limpiar y analizar los datos de diversas fuentes.
  • Diseñar y utilizar modelos de Machine Learning.
  • Monitorear la precisión de los datos, para una mejor calidad y confiabilidad.
  • Automatizar procesos de recolección y transformación de datos para hacer todo mucho más ágil.
  • Crear reportes de información en tableros.
  • Implementar modelos al de Machine Learning al producto.
  • Incorporar datos a los productos.

Diferencia entre Data Scientist y Data Analyst

Estos roles se parecen mucho, pero tienen ciertas diferencias, como por ejemplo Data Scientist se enfoca en analizar datos para producir distintos modelos para predecir el futuro con programación avanzada como P.O.O. (Programación Orientada a Objetos), mientras que la Data Analyst se enfoca en responder preguntas de negocio de las demás áreas por medio de análisis de datos del presente con una programación fundamental.

Herramientas y tecnologías para Data Scientists

Las herramientas más utilizadas para cumplir con el proceso diario de una Data Scientists son las siguientes:

  • Python, R y Paradigma de programación orientada a objetos.
  • Librerías de Python: NumPy, Pandas y Matplotlib.
  • Jupyter Notebooks.
  • SQL y No SQL.
  • Algoritmos y librerías de Machine Learning como: Scikit-learn y TensorFlow.
  • Álgebra.
  • Estadística descriptiva y estadística inferencial.
  • Probabilidad.
  • Álgebra lineal.
  • Cálculo.

¿Cómo comenzar el camino de Data Scientists?

Cuando empiezas un nuevo camino profesional, ubicarte y encontrar el mejor material para sacarle el máximo provecho a tu tiempo es complicado, por ello los siguientes pasos son tan importantes en etapas como esta.

  1. Entender cómo se utilizan los datos, aprender Business Intelligence y cómo es el proceso de datos en las organizaciones.
  2. Programar con Python.
  3. Saber las principales librerías de procesamiento, análisis y visualización de datos en Python.
  4. Conocer las Jupyter Notebooks.
  5. Aprender estadística y probabilidad aplicada a Ciencia de datos.
  6. Crear tus primeros proyectos.

Todos estos conocimientos y habilidades son los que debes tener para convertirte en una Data Scientists, recuerda que todas estas habilidades las puedes comenzar a aprender ahora mismo en la Escuela de Data Scientists.

¿Qué hace una Data Engineer?

La Data Engineer  es la encargada de tomar los datos crudos, pero de valor, para transformarlos , organizarlos y almacenarlos en las bases de datos, por medio de la producción de piplines  ETL, que tienen como objetivo abastecer de materia prima o datos a los demás roles, para que ejecuten su trabajo.

Día a día de una Data Engineer

Los procesos que más se repiten en el rol de una Data Engineer son los siguientes:

  • Desarrolla y mantiene pipelines de ETL y bases de datos, para transformar los datos crudos.
  • Extraer datos de diferentes fuentes, ya sea internas y externas. Lo importante es que sean de valor para el negocio.
  • Transformar los datos crudos para el análisis, ya que estos en su forma original no se pueden analizar.
  • Almacenar datos limpios en bases de datos especializadas para el análisis. Debido a que las bases de datos usadas en producción suelen ser OLTP (Online Transactional Processing) y si se hacen análisis en estas se pueden romper. Por lo tanto, los datos se deben transportar a bases de datos OLAP (Online Analytical Procesing).
  • Crear automatizaciones para que los datos estén constantemente actualizados.

Proceso ETL

Extract, Transorm and Load o Extraer, Transformar y Cargar, es uno de los procesos más utilizados para la transformación de los datos, es como el proceso de tomar un diamante en bruto y convertirlo en uno procesado y listo para vender.

Extract o extracción

Importar datos de diversas fuentes, ya sea internas como externas, mientras sean de valor para la organización. Estos puede venir con distintas estructuras y formatos.

Transform o transformación

Todos los datos ya recopilados deben de situarse en una estructura común y limpia que facilite su análisis.

Load o carga

Luego de que los datos se encuentren limpios, estos deben almacenarse en bases de datos OLAP que faciliten la consulta y análisis de los mismos.

Roles relacionados

Dentro del mundo de la Data hay ciertas variaciones en el rol de Data Engineer, que se enfocan o especializan en ciertas actividades clave para el flujo de datos, como por ejemplo:

Data Architect

Se encarga de plantear estrategias de datos dentro de la organización, mediante la revisión de estándares de calidad, tratamiento de flujo de los datos y seguridad de estos.

Big Data Architect

Trabaja con Big Data, las 5V’s de los datos.

Para triunfar como Data Engineer, debes conocer y saber utilizar las siguientes herramientas:

  • Python y R.
  • Linux.
  • Bases de ingeniería de software.
  • Bases de datos NoSQL y SQL.
  • Jupyter Notebooks y editores de código.
  • Automatización y scripting.
  • Librerías: Pandas, Dask y Apache Spark.
  • Airflow.
  • Tecnologías cloud.
  • Docker.
  • Orquestadores Kubernetes.
  • Matemática: estadística descriptiva.

¿Cómo empezar el camino como Data Engineer?

Si quieres empezar con pie derecho tu camino hacia Data Engineer, no dudes en seguir los siguientes pasos:

  1. Aprender a programar en Python y bases sólidas de ingeniería de software.
  2. Saber cómo automatizar procesos.
  3. Entender y aplicar librerías como: Pandas y Apache Spark.
  4. Conocer bases de datos SQL y NoSQL.

¿Qué hace una Machine Learning Engineer?

La persona con el rol de Machine Learning Engineer toma los modelos de Machine Learning formulados por la Ciencia de datos, para su posterior seguimiento y evaluación.

También se encarga de la implementación directamente con el producto, ya que este rol es responsable de mantener actualizados dichos modelos.

El día a día de una Machine Learning Engineer

Todos los días te tendrás que enfrentar a las siguientes actividades, si deseas convertirte en Machine Learning Engineer.

  • Genera extensivas evaluaciones de métricas de los modelos de Machine Learning.
  • Implementa el modelo de Machine Learning a producción.
  • Colabora con la Ciencia de datos y el equipo de desarrollo del producto.
  • Analiza el desempeño de los modelos de Machine Learning.
  • Mantiene actualizado el modelo Machine Learning.

Herramientas y tecnologías para Machine Learning Engineers

Las herramientas con las que crearás cosas increíbles para mejorar la experiencia del usuario y hacer del mundo un lugar mejor serán:

  • Lenguajes de programación: Python, Java y C++
  • Bases sólidas de ingeniería.
  • Jupyter Notebooks.
  • Principales librerías de Python: NumPy, Pandas, Matplotlib y seaborn.
  • Principales librerías de Machine Learning: Tensor Flow y keras.
  • Tecnologías para exportar tus proyectos a otras máquinas: Flask, FastAPI, tecnologías cloud, contenedores Doker y Kubernetes.
  • Matemáticas: estadística descriptiva e inferencia, probabilidad, álgebra lineal y cálculo.

Habilidades blandas para Ciencia de datos

Aunque muchas veces pasan desapercibidas, este tipo de habilidades son muy importantes para un correcto desempeño en el mundo de la Data. Algunas de estas son:

  • Storytelling.
  • English.
  • Pensamiento crítico.
  • Creatividad.
  • Hacer que las cosas pasen.
  • Asumir responsabilidad de los proyectos que se te encarguen.
  • Trabajo en equipo tanto con los miembros de Data, como con los demás miembros de las áreas del negocio.
  • Curiosidad.

Fuente: Estos son apuntes aprendidos en la Carrera de Data Scientist. Te recomiendo estudiar Ciencia de datos en esta plataforma, puedes obtener un mes gratis en este enlace: Estudiar un mes gratis en Platzi.