Introducción

Los materiales proporcionados exploran la aplicación práctica de las tecnologías Big Data, comenzando con una evaluación tipo examen que abarca conceptos fundamentales como Data Lakes, Datawarehouses, industrialización de datos y Data Governance. A continuación, se presenta un caso práctico de una empresa de telecomunicaciones que busca implementar una plataforma Big Data para mejorar su análisis y reducir la rotación de clientes, considerando arquitecturas como Data Lake y Data Mesh. El texto describe la evolución de la adopción de Big Data en España, las fases de implementación de Hadoop, los modelos de despliegue como Data Lake y Data Mesh, y la importancia del Gobierno de Datos para asegurar su uso eficiente. Finalmente, se examinan las soluciones Hadoop como servicio en la nube, específicamente Amazon EMR y Microsoft Azure HDInsight, y se ofrece una guía práctica para el análisis exploratorio y aprendizaje automático con Spark.

Audio

Informe de Revisión de Fuentes sobre Tecnologías Big Data y Hadoop

Este documento presenta un resumen detallado de los temas principales, ideas clave y hechos relevantes extraídos de las fuentes proporcionadas. Se incluyen citas directas de los textos originales para ilustrar los puntos más importantes.

Fuente Principal: «BDA05_Aplicación práctica de tecnologías Big Data.pdf»

Este documento se estructura en varios apartados que abordan la aplicación práctica de las tecnologías Big Data, utilizando un caso práctico de una empresa de telecomunicaciones virtual llamada Telco Max Spain.

1. Caso Práctico: Telco Max Spain y la Necesidad de Big Data

2. Arquitecturas y Modelos de Despliegue

  1. Hadoop en la Práctica (Pasos en la Adopción):Identificación de necesidades de almacenamiento y procesamiento.
  2. Plan de capacidad y selección de hardware.
  3. Compra del hardware (puede llevar semanas o meses).
  4. Instalación física (rackeo, cableado, red).
  5. Instalación del software base (sistema operativo).
  6. Instalación de Hadoop (con herramientas de administración como Cloudera Manager o Ambari).
  7. Pruebas de la plataforma.
  8. Tuning (optimización del rendimiento).
  9. Preparación del entorno de trabajo (usuarios, permisos, colas YARN, directorios).
  1. Soluciones Hadoop-as-a-Service
  1. Guía Práctica de Análisis Exploratorio y de Aprendizaje Automático con Spark

Este conjunto de fuentes proporciona una visión completa de la aplicación práctica de las tecnologías Big Data, desde la identificación de la necesidad en una empresa como Telco Max Spain, pasando por los modelos arquitectónicos (Data Lake, Data Mesh), la importancia del Gobierno de Datos, hasta las soluciones de Hadoop como servicio ofrecidas por los principales proveedores cloud (Amazon EMR y Azure HDInsight), culminando con una guía práctica para el análisis de datos con Spark.

 

 

 

Final del formulario

 

 

Guía de Estudio: Aplicación Práctica de Tecnologías Big Data

Quiz de Comprensión (Respuestas Cortas)

  1. Describe brevemente el problema que Telco Max Spain busca resolver implementando una plataforma Big Data.

Telco Max Spain busca utilizar toda la información disponible de sus diferentes sistemas (no solo CRM y facturación) para realizar análisis más profundos y mejorar la toma de decisiones, especialmente para reducir la tasa de rotación de clientes.

  1. ¿Cuáles son las dos principales limitaciones de los sistemas Datawarehouse tradicionales mencionadas en el texto?

Las dos principales limitaciones de los Datawarehouse son su alto costo, que aumenta con el volumen de datos, y su capacidad de gestionar únicamente datos estructurados, provenientes de bases de datos operacionales.

  1. Explica la diferencia fundamental entre cómo se gestiona el esquema de los datos en un Data Lake en comparación con un Datawarehouse.

En un Data Lake, el esquema de los datos se define en el momento de la lectura, lo que permite almacenar datos sin una estructura predefinida. En cambio, un Datawarehouse requiere que la estructura de los datos sea conocida y definida antes de ser almacenados.

  1. Define el concepto de «Data Swamp» y qué lo puede causar en una implementación de Data Lake.

El «Data Swamp» es un problema que ocurre cuando un Data Lake se convierte en un repositorio de datos desorganizado y sin control, donde no se sabe qué datos existen, su validez, cómo se procesan o quién los utiliza, dificultando su aprovechamiento.

  1. Menciona dos de los cuatro principios básicos que definen una arquitectura Data Mesh.

Dos principios básicos de Data Mesh son: la propiedad y arquitectura descentralizada de datos orientada al dominio, donde cada dominio es responsable de sus datos; y datos como producto, donde los datos se ofrecen al resto de la organización de forma sencilla y con documentación.

  1. ¿Cuál es el rol principal de un equipo de Gobierno de Datos (Data Governance) en una organización?

El rol principal de un equipo de Gobierno de Datos es garantizar el uso eficiente y efectivo de los datos de la organización, alineado con sus objetivos, mediante la definición de procesos, roles, políticas, estándares y métricas relacionadas con la seguridad, calidad, accesibilidad y usabilidad de los datos.

  1. Nombra dos ventajas principales que ofrecen las soluciones Hadoop-as-a-Service en la nube.

Dos ventajas principales de Hadoop-as-a-Service en la nube son la modalidad de pago por uso, donde solo se paga por los recursos utilizados, y la elasticidad, que permite escalar el número de nodos del clúster según la demanda, optimizando costos y rendimiento.

  1. ¿Qué servicio de Hadoop en la nube ofrece Amazon Web Services (AWS) y qué distribución Hadoop utiliza Microsoft Azure HDInsight?

Amazon Web Services (AWS) ofrece el servicio Amazon EMR. Microsoft Azure HDInsight utiliza la distribución HDP de Hortonworks.

  1. Describe brevemente el concepto de «multitenancy» en el contexto de un entorno Hadoop.

Multitenancy» en Hadoop significa que la plataforma está diseñada para ser utilizada por múltiples usuarios de diferentes tipos (analistas de negocio, data scientists, ingenieros de datos, aplicaciones) para diversos propósitos, requiriendo mecanismos de control y límites de uso para evitar interferencias entre ellos.

  1. Explica la diferencia entre los datos «Raw Data» y los datos procesados en el modelo de capas de un Data Lake.

Los datos «Raw Data» son los datos ingestados en el Data Lake tal como se reciben de las fuentes originales, sin ninguna transformación. Los datos procesados son el resultado de aplicar validaciones, normalizaciones, limpiezas, enriquecimientos y transformaciones a los «Raw Data» para hacerlos explotables con fines analíticos.

Preguntas de Ensayo

  1. Describe detalladamente las diferentes etapas en la adopción e incorporación de una plataforma Hadoop on-premise, según lo presentado en el texto. ¿Cuáles son los principales desafíos en cada etapa?
  2. Analiza la evolución en la adopción de tecnologías Big Data en las empresas españolas desde 2014 hasta la actualidad, identificando las tres etapas principales y los factores clave que caracterizaron cada una de ellas.
  3. Explica el concepto de Data Mesh como una alternativa a las arquitecturas centralizadas como el Data Lake. ¿Cuáles son los principios fundamentales de Data Mesh y qué implicaciones tiene su adopción para la organización y la tecnología?
  4. Evalúa la importancia del Gobierno de Datos (Data Governance) en el contexto de la implementación de una plataforma Big Data, especialmente en modelos como el Data Lake. ¿Qué objetivos persigue un equipo de Gobierno de Datos y cómo contribuyen al éxito de la estrategia de datos de una empresa?

Glosario de Términos Clave

 

 

 

 

Mapa Conceptual

 

Preguntas Frecuentes sobre Big Data y Hadoop

 

 

 

Evaluación

1.¿Cuál es la principal motivación de Telco Max Spain para invertir en una plataforma Big Data?
a) Reemplazar sus sistemas CRM y de facturación existentes.
b) Utilizar toda la información disponible para mejorar la toma de decisiones, especialmente la tasa de rotación de clientes.
c) Implementar un sistema ERP completamente nuevo.
d) Migrar toda su infraestructura a la nube.

2.¿Qué limitación principal tenían los sistemas Datawarehouse tradicionales en relación con los datos?
a) Eran demasiado rápidos para procesar grandes volúmenes de datos.
b) Principalmente gestionaban datos estructurados.
c) No permitían la creación de informes de negocio.
d) Su coste era muy bajo para grandes volúmenes de datos.

3.¿Cuál fue la tecnología Big Data más utilizada en sus inicios, según el texto?
a) Spark.
b) Hadoop.
c) Data Lake.
d) Data Mesh.

4.¿Qué concepto surgió como un repositorio centralizado para almacenar todos los datos de una empresa sin necesidad de estructurarlos previamente?
a) Datawarehouse.
b) Datamart.
c) Data Lake
d) Data Mesh.

5.En un Data Lake, ¿cuándo se define el esquema o la estructura de los datos?
a) En el momento de la ingesta (escritura).
b) En el momento del análisis o consulta (lectura).
c) Durante los procesos ETL.
d) No se define ningún esquema.

6.¿Cuál de los siguientes NO es un principio básico del modelo Data Mesh?
a) Propiedad y arquitectura descentralizada de datos orientada al dominio.
b) Datos como producto.
c) Infraestructura de datos de autoservicio como plataforma.
d) Gobierno de datos centralizado.

7.¿Qué problema puede surgir cuando se implementa un Data Lake sin el control adecuado?
a) Un aumento incontrolado del rendimiento de las consultas.
b) Una reducción drástica de los costes de almacenamiento.
c) El Data Swamp (ciénaga de datos).
d) Una mejora automática en la calidad de los datos.

8.¿Quién suele liderar el equipo de Data Governance?
a) El Chief Technology Officer (CTO).
b) El Chief Information Officer (CIO).
c) El Chief Data Officer (CDO).
d) El Chief Executive Officer (CEO).

9.¿Qué ofrece Amazon EMR como servicio?
a) La posibilidad de crear Datawarehouses en la nube.
b) La capacidad de crear clústers Hadoop a demanda en AWS.
c) Un sistema ERP basado en Hadoop.
d) Una distribución propia de Hadoop para infraestructura on-premise.

10.¿Qué distribución de Hadoop utiliza Microsoft Azure HDInsight?
a) Una distribución propia de Microsoft.
b) La distribución de Cloudera.
c) La distribución HDP de Hortonworks.
d) La distribución de Amazon.

11.Según la «Guía Práctica BDA05.MP4», ¿cuál es la variable objetivo que se busca predecir con el dataset del Titanic?
a) La clase del billete (pclass).
b) El sexo del pasajero (sex).
c) Si el pasajero sobrevivió o no (survived).
d) La edad del pasajero (age).

12.En la «Guía Práctica BDA05.MP4», ¿qué herramienta se utiliza para leer el archivo CSV del dataset del Titanic en Spark?
a) pandas.read_csv().
b) spark.sql().
c) spark.read.csv().
d) hadoop fs -get.

13.¿Para qué se utiliza el método cache() en el contexto de Spark y el DataFrame del Titanic?
a) Para guardar el DataFrame en un archivo permanente.
b) Para almacenar el DataFrame en memoria y acelerar el procesamiento posterior. [ver conversación anterior]
c) Para eliminar filas con valores nulos.
d) Para cambiar el esquema del DataFrame.

14.Según la «Guía Práctica BDA05.MP4», ¿qué transformaciones de Spark MLlib se aplican a las variables categóricas antes de entrenar el modelo de regresión logística?
a) Escalado y normalización.
b) Imputación de valores nulos y discretización.
c) StringIndexer y OneHotEncoder. [ver conversación anterior]
d) Selección de características y reducción de dimensionalidad.

15.¿Cuál es la función del VectorAssembler en el pipeline de aprendizaje automático de Spark utilizado en la guía práctica?
a) Dividir el dataset en conjuntos de entrenamiento y prueba.
b) Evaluar el rendimiento del modelo.
c) Combinar las variables predictoras transformadas en una única columna de características. [ver conversación anterior]
d) Entrenar el modelo de regresión logística.

16.¿Qué algoritmo de aprendizaje automático se utiliza como ejemplo en la «Guía Práctica BDA05.MP4»?
a) Random Forest.
b) K-Means Clustering.
c) Regresión Logística.
d) Principal Component Analysis (PCA).

17.¿Cuál es el propósito de dividir el dataset del Titanic en conjuntos de entrenamiento y prueba?
a) Para aumentar el tamaño total del dataset.
b) Para visualizar los datos de manera más efectiva.
c) Para evaluar el rendimiento del modelo en datos no vistos y evitar el sobreajuste. [ver conversación anterior]
d) Para realizar una exploración inicial de los datos.

18.¿Qué métrica principal se utiliza en la «Guía Práctica BDA05.MP4» para evaluar el rendimiento del modelo de clasificación?
a) Precisión (Precision).
b) Recall.
c) F1-Score.
d) Exactitud (Accuracy). [ver conversación anterior]

19.Según la guía práctica, ¿qué información proporciona la matriz de confusión?
a) Un resumen estadístico de las variables predictoras.
b) La importancia relativa de cada característica en el modelo.
c) El número de verdaderos positivos, verdaderos negativos, falsos positivos y falsos negativos. [ver conversación anterior]
d) La probabilidad de supervivencia predicha para cada pasajero.

20.¿Qué concepto representa un Data Lake que ha degenerado debido a la falta de control y gobierno? a) Data Mart. b) Data Mesh. c) Data Swamp.9 d) Data Fabric.

 

Tabla de Respuestas y Explicaciones:

 

Pregunta Respuesta Correcta Explicación
1 b) Utilizar toda la información disponible para mejorar la toma de decisiones, especialmente la tasa de rotación de clientes. Telco Max Spain quiere invertir en Big Data para almacenar toda la información de diferentes sistemas y mejorar la toma de decisiones, particularmente para reducir la tasa de rotación de clientes1….
2 b) Principalmente gestionaban datos estructurados. Los Datawarehouses tradicionales tenían la limitación de que solo permitían gestionar datos estructurados3….
3 b) Hadoop. Hadoop fue la plataforma más utilizada dentro del espectro de tecnologías Big Data5.
4 c) Data Lake. Un Data Lake es un repositorio centralizado que permite almacenar todos los datos de una empresa a cualquier escala, sin modificarlos y sin tener que estructurarlos primero6.
5 b) En el momento del análisis o consulta (lectura). En un Data Lake, el esquema de los datos se fija en la lectura, no en la escritura, lo que permite almacenar datos sin importar su estructura inicial7.
6 d) Gobierno de datos centralizado. Data Mesh se basa en un enfoque descentralizado, donde el gobierno de datos es federado y compartido por todos los dominios, en lugar de centralizado8.
7 c) El Data Swamp (ciénaga de datos). Si los principios de un Data Lake se siguen sin control, puede generarse un problema conocido como Data Swamp, donde no se sabe qué datos hay, cuáles son válidos, etc.9.
8 c) El Chief Data Officer (CDO). Un equipo de Data Governance está liderado por la figura del CDO (Chief Data Officer)10.
9 b) La capacidad de crear clústers Hadoop a demanda en AWS. Amazon EMR es un servicio de Amazon Web Services que permite crear clústers Hadoop a demanda11.
10 c) La distribución HDP de Hortonworks. HDInsight, la solución de Microsoft Azure de Hadoop como servicio, utiliza la distribución HDP de Hortonworks12.
11 c) Si el pasajero sobrevivió o no (survived). Según la «Guía Práctica BDA05.MP4» (mencionada en la descripción de la guía13… y en nuestra conversación anterior), la variable objetivo del dataset del Titanic es si el pasajero sobrevivió o no.
12 c) spark.read.csv(). En nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», se mencionó que spark.read.csv() es el método utilizado en Spark para leer archivos CSV.
13 b) Para almacenar el DataFrame en memoria y acelerar el procesamiento posterior. En nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», explicamos que el método cache() se utiliza en Spark para almacenar el DataFrame en memoria, lo que acelera las operaciones posteriores.
14 c) StringIndexer y OneHotEncoder. Según nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», las transformaciones StringIndexer y OneHotEncoder de Spark MLlib se aplican a las variables categóricas antes de entrenar el modelo de regresión logística.
15 c) Combinar las variables predictoras transformadas en una única columna de características. En nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», indicamos que el VectorAssembler tiene la función de combinar las variables predictoras transformadas en una única columna de características para alimentar el modelo de aprendizaje automático.
16 c) Regresión Logística. La «Guía Práctica BDA05.MP4» (descrita en las fuentes13… y en nuestra conversación) utiliza la Regresión Logística como ejemplo de algoritmo de aprendizaje automático.
17 c) Para evaluar el rendimiento del modelo en datos no vistos y evitar el sobreajuste. En nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», explicamos que la división del dataset en conjuntos de entrenamiento y prueba es crucial para evaluar el rendimiento del modelo en datos no vistos y prevenir el sobreajuste.
18 d) Exactitud (Accuracy). Según nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», la exactitud (accuracy) es una de las métricas principales utilizadas para evaluar el rendimiento del modelo de clasificación.
19 c) El número de verdaderos positivos, verdaderos negativos, falsos positivos y falsos negativos. En nuestra conversación anterior sobre la «Guía Práctica BDA05.MP4», definimos que la matriz de confusión proporciona información sobre el número de verdaderos positivos, verdaderos negativos, falsos positivos y falsos negativos, lo que ayuda a entender el rendimiento del clasificador.
20 c) Data Swamp. Un Data Swamp representa un Data Lake que ha degenerado debido a la falta de control y gobierno9.

 

Recursos

 

 

Guía de Estudio de la «Guía Práctica BDA05.mp4»

Esta guía se centra en la aplicación práctica de aprendizaje automático utilizando Apache Spark, tal como se presenta en el vídeo «Guía Práctica BDA05.mp4». El objetivo principal es entrenar un modelo de regresión logística para predecir la supervivencia de los pasajeros del Titanic.

Fases Clave Cubiertas:

◦Creación de una base de datos personalizada en Databricks basada en el nombre de usuario1.

◦Descarga del dataset del Titanic en formato CSV al clúster utilizando wg1.

◦Copia del dataset descargado al sistema de ficheros distribuido de Databricks (DBFS) mediante el comando CP2.

◦Lectura del archivo CSV desde DBFS utilizando spark.read.csv, especificando que contiene una cabecera (header=True) e infiriendo el esquema de datos (inferSchema=True)2.

◦Almacenamiento del DataFrame en memoria utilizando cache() para acelerar el procesamiento durante el entrenamiento2.

◦Visualización de las primeras filas del DataFrame con display() para entender la estructura y los datos2.

◦Descripción de las columnas importantes: survived (variable objetivo), pclass (clase del billete), sex, age, sibsp (hermanos/cónyuges a bordo), parch (padres/hijos a bordo), etc.2….

◦Escritura del DataFrame en una tabla Delta Lake para su posterior uso y exploración3.

◦Visualización del esquema inferido del DataFrame (printSchema()) para verificar los tipos de datos3.

◦Obtención de un resumen estadístico de las variables numéricas utilizando el método describe() (conteo, media, desviación estándar, mínimo, máximo)4. Se destaca que estas estadísticas tienen sentido principalmente para variables numéricas.

◦Identificación de valores nulos (faltantes) en las columnas, como en la columna age4. Se menciona la posibilidad de eliminar o imputar estos valores.

◦Análisis de la distribución de la variable objetivo (survived) para ver cuántos pasajeros sobrevivieron y cuántos no5.

◦Visualización gráfica de la supervivencia utilizando las capacidades de Databricks6. Se enfatiza la importancia de elegir el tipo de gráfico adecuado y personalizarlo (por ejemplo, colores consistentes para supervivencia y fallecimiento).

◦Comparación de la supervivencia con la variable sex, mostrando una clara diferencia en las tasas de supervivencia entre hombres y mujeres6….

◦Análisis de la relación entre la supervivencia y la pclass, revelando que la clase del billete influyó en la probabilidad de supervivencia7.

◦Análisis de la relación entre la supervivencia y la age mediante un box plot, sugiriendo que la edad por sí sola no parece ser un predictor fuerte7….

◦Creación de una nueva variable llamada relatives combinando sibsp y parch para analizar el impacto del número total de parientes a bordo en la supervivencia8…. Se observa una tendencia donde viajar solo se asocia con una menor probabilidad de supervivencia, al igual que viajar con muchos parientes.

◦Selección de las variables predictoras a utilizar: sex, relatives, y pclass (renombrada a Pclass). La variable objetivo es survived9….

◦Manejo de variables categóricas (sex y Pclass) utilizando transformaciones de Spark MLlib:

StringIndexer: Convierte las etiquetas de cadena a índices numéricos10…. Se crea una columna sex_index.

OneHotEncoder: Codifica las variables indexadas en vectores binarios (one-hot encoding) para evitar que el modelo interprete una relación ordinal entre las categorías11. Se crean columnas sex_vector y Pclass_vector.

◦Utilización de VectorAssembler para combinar las variables predictoras transformadas (sex_vector, Pclass_vector, y relatives) en una única columna de vector llamada features, que es el formato requerido por los algoritmos de aprendizaje automático de Spark MLlib12.

◦Importación y creación de una instancia del algoritmo de LogisticRegression, especificando la columna features como las características de entrada y la columna survived como la etiqueta12….

◦Creación de un Pipeline para secuenciar las transformaciones (StringIndexer, OneHotEncoder, VectorAssembler) y el estimador (LogisticRegression). Esto simplifica el flujo de trabajo y garantiza que las mismas transformaciones se apliquen a los datos de entrenamiento y prueba13.

◦División del dataset en conjuntos de entrenamiento (70%) y prueba (30%) utilizando randomSplit para evaluar el rendimiento del modelo en datos no vistos13….

◦Entrenamiento del modelo utilizando el método fit() del pipeline y los datos de entrenamiento14….

◦Realización de predicciones en el conjunto de prueba utilizando el método transform() del modelo entrenado15.

◦Inspección de las columnas añadidas por el modelo (rawPrediction, probability, prediction) en el DataFrame de predicciones15.

◦Visualización comparativa de la columna real (survived) y la columna de predicción (prediction) para algunos ejemplos15.

◦Cálculo de la exactitud del modelo utilizando MulticlassClassificationEvaluator. La exactitud representa el porcentaje de predicciones correctas16. Se compara la exactitud del modelo entrenado con la de un modelo trivial que predice que todos mueren (aproximadamente 62%) y con otro modelo trivial que predice la supervivencia basada únicamente en el sexo (aproximadamente 79%)16….

◦Introducción al concepto de matriz de confusión, que muestra el número de verdaderos positivos, verdaderos negativos, falsos positivos y falsos negativos, proporcionando una visión más detallada del rendimiento del clasificador18…. Se muestra cómo calcular la matriz de confusión utilizando tanto Spark como Pandas (con la advertencia sobre el posible desbordamiento de memoria al convertir a Pandas con grandes datasets)19….

◦Mención de la posibilidad de publicar el notebook de Databricks para compartir los resultados públicamente a través de una URL18.

Preguntas Frecuentes (FAQ) basadas en la «Guía Práctica BDA05.MP4»

◦Se utiliza como un ejemplo clásico en ciencia de datos para entrenar un modelo de aprendizaje automático que pueda predecir si un pasajero sobrevivió o no al hundimiento del Titanic, basándose en diversas características como la clase del billete, el sexo y la edad1….

◦El dataset se descarga primero al clúster utilizando el comando wg1. Luego, se copia al sistema de ficheros distribuido de Databricks (DBFS) con el comando cp2. Finalmente, se lee desde DBFS con spark.read.csv() y se almacena en memoria utilizando cache() para optimizar el acceso durante el entrenamiento2. También se guarda el DataFrame en una tabla Delta Lake3.

◦Leer el dataset, visualizar las primeras filas para entender su estructura2, imprimir el esquema para verificar los tipos de datos3, obtener un resumen estadístico de las variables numéricas4, identificar y considerar el manejo de valores nulos4, y analizar la distribución de la variable objetivo5 mediante tablas y visualizaciones gráficas6.

StringIndexer se utiliza para convertir las variables categóricas (como ‘male’ y ‘female’ en la columna ‘sex’) a índices numéricos que los algoritmos de aprendizaje automático puedan procesar10…. OneHotEncoder se aplica a continuación para crear variables binarias separadas para cada categoría (por ejemplo, una columna para ‘male’ y otra para ‘female’ con valores 0 o 1). Esto evita que el modelo interprete una relación de orden entre las categorías (por ejemplo, que ‘female’ sea mayor que ‘male’)11.

◦El VectorAssembler toma todas las columnas de características predictoras que queremos usar en nuestro modelo (después de cualquier transformación, como la codificación one-hot) y las combina en una única columna de vector llamada típicamente features. Este es el formato de entrada requerido por muchos algoritmos de aprendizaje automático en Spark MLlib12.

◦Dividir el dataset permite evaluar el rendimiento del modelo en datos que no se utilizaron durante el entrenamiento. Esto ayuda a prevenir el sobreajuste (overfitting), donde el modelo aprende demasiado bien los datos de entrenamiento y no generaliza bien a datos nuevos. La evaluación en el conjunto de prueba proporciona una estimación más realista de cómo se comportará el modelo en el mundo real13….

◦Primero, se crea una instancia de la clase LogisticRegression. Luego, se especifica qué columna contiene las características (features) y cuál contiene la etiqueta a predecir (survived)12…. Finalmente, se utiliza el método fit() del pipeline (que incluye todas las transformaciones y el algoritmo) con los datos de entrenamiento para aprender los patrones en los datos y construir el modelo14….

◦El rendimiento del modelo se evalúa principalmente utilizando la métrica de exactitud, que es el porcentaje de predicciones correctas16. También se introduce el concepto de la matriz de confusión, que proporciona una visión más detallada de los tipos de errores que comete el modelo (falsos positivos y falsos negativos) además de los aciertos (verdaderos positivos y verdaderos negativos)18….

◦La matriz de confusión muestra una tabla donde las filas representan las clases reales (por ejemplo, sobrevivió o no sobrevivió) y las columnas representan las clases predichas por el modelo. Las celdas de la matriz indican el número de instancias que fueron clasificadas correctamente (verdaderos positivos y verdaderos negativos) y las que fueron clasificadas incorrectamente (falsos positivos y falsos negativos)18…. Esto permite entender mejor dónde está fallando el modelo.

◦El vídeo menciona la opción de publicar el notebook como accesible públicamente, generando una URL que se puede compartir con otros para que vean los resultados, aunque no puedan ejecutar el notebook directamente sin una cuenta de Databricks18.