n esta sesión, veremos el desarrollo de un proceso de AI con Azure Databricks que nos ayudará a trabajar con datos estructurados y no estructurados, a obtener una visión profunda del algoritmo a implementar e incluso crear un ciclo aprendizaje en tiempo real. El objetivo será adentrarnos en un proyecto de AI para preparar los datos, realizar el análisis que nos permita elegir un algoritmo, entrenar un modelo y ejecutar una predicción de dicho modelo. Todo esto con mucho Big Data y Power BI como herramienta de Reporting.
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BI
1. una consultora tecnológica
que piensa en colores
para organizaciones vivas
una consultora tecnológica
que piensa en colores
para organizaciones vivas
Big Data Analytics con Hadoop, Spark y Power BI
2. Adrián del Rincón López
arincon@encamina.com - @adderin
Soy Ingeniero Superior de Telecomunicaciones en la especialidad de Telemática por la
Universidad de Valencia.
Me apasiona la programación, y todo lo relacionado con los ordenadores y la movilidad, y lo
último en tecnología en general.
Analista / programador especializado en .Net y SharePoint. Experiencia desarrollando
aplicaciones ASP.NET y JavaScript (usando el Framework Ext JS), integradas con Sharepoint
durante varios años.
Actualmente trabajo en ENCAMINA con el rol de Arquitecto de software en los distintos
proyectos en los que participo.
Especialidades: .NET, Sharepoint, JavaScript, telemática, programación, informática, redes
3. Alberto Diaz Martin
alberto.diaz@encamina.com - @adiazcan
Alberto Diaz cuenta con más de 15 años de experiencia en la Industria IT, todos ellos trabajando
con tecnologías Microsoft. Actualmente, es Chief Technology Innovation Officer en ENCAMINA,
liderando el desarrollo de software con tecnología Microsoft, y miembro del equipo de
Dirección.
Para la comunidad, trabaja como organizador y speaker de las conferencias más relevantes del
mundo Microsoft en España, en las cuales es uno de los referentes en SharePoint, Office 365 y
Azure. Autor de diversos libros y artículos en revistas profesionales y blogs, en 2013 empezó a
formar parte del equipo de Dirección de CompartiMOSS, una revista digital sobre tecnologías
Microsoft.
Desde 2011 ha sido nombrado Microsoft MVP, reconocimiento que ha renovado por séptimo
año consecutivo. Se define como un geek, amante de los smartphones y desarrollador.
Fundador de TenerifeDev (www.tenerifedev.com), un grupo de usuarios de .NET en Tenerife, y
coordinador de SUGES (Grupo de Usuarios de SharePoint de España, www.suges.es)
4. EDURME es la plataforma sobre la que evolucionar como
entidad educativa hacia la verdadera Transformación Digital
5. (Educational Relationship Management Engine)
• EDURME es un motor de relaciones con
el alumno durante todo su ciclo de
vida:
˗ Solicitud de información
˗ Solicitud de admisión
˗ Alumno
˗ Alumni
• EDURME facilita la interacción entre el
alumno y el colegio, universidad,
academia o escuela de negocio.
Sus cualidades…
6. Funnel del alumno
Interacción Multicanal
Bots en Facebook, Twitter, Landing Pages, Canales Sociales, E-mail, Teléfono,
Chat online, Skype
Inteligencia de Acompañamiento
BigData de producto + Conversación automatizada, Asesoramiento remoto
humano (Chat online, Skype, teléfono)
Ingesta de Datos
Contacto (nuevo o modificado) o Cliente Potencial, Listas de Marketing
asociadas a campaña o producto
Lead Nurturing
Maduración del Lead, Actualización y Cualificación del lead
Atención y Recualificación de Leads
Gestión de colas de trabajo, Actividades de CRM (llamadas, e-mails, etc),
Cualificación manual del lead
BackOffice
Cualificación del alumno
7. Motor de Scoring para Educación
RETO:
Dar respuesta de una forma eficiente y adecuada a
estas preguntas:
¿Cómo distingo que leads de mi sistema CRM
Educación son de calidad?
¿Puede iniciar el equipo comercial con un
seguimiento personalizado del contacto?
SOLUCION:
Diseño de los procesos que permiten determinar el
nivel de interés de los leads en función a su
comportamiento, características propias y tipología
de productos en los que muestra interés. Datos
que, muchas veces, es posible obtener de los
propios sistemas de información con los que se
trabaja.
8. Dimensiones
¿Colegio o universidad?
Nivel educativo ¿Se trata un grado o es un
postgrado?
Titulación: ¿Grado en Ingeniería o Medicina?
Idioma ¿Cuál es el idioma de la titulación?
¿Se trata de una titulación oficial o es una
titulación propia?
Producto complementarios ¿trimestre en el
extranjero?
9. Model & ServePrep & Train
Databricks
HDInsight
Data Lake Analytics
Custom
apps
Sensors
and devices
Store
Blobs
Data Lake
Ingest
Data Factory
(Data movement, pipelines & orchestration)
Machine
Learning
Cosmos DB
SQL Data
Warehouse
Analysis Services
Event Hub
IoT Hub
SQL Database
Analytical dashboards
Predictive apps
Operational reports
Intelligence
B I G D ATA & A D VA N C E D A N A LY T I C S AT A G L A N C E
Business
apps
10
01
SQLKafka
10. What is Azure Databricks ?
A fast, easy and collaborative Apache® Spark™ based analytics platform optimized for Azure
Best of Databricks Best of Microsoft
Designed in collaboration with the founders of Apache Spark
One-click set up; streamlined workflows
Interactive workspace that enables collaboration between data scientists, data engineers, and business analysts.
Native integration with Azure services (Power BI, SQL DW, Cosmos DB, Blob Storage, ADF, SQL DB, AAD)
Enterprise-grade Azure security (Active Directory integration, compliance, enterprise -grade SLAs – 99.95%)
12. ¿Qué les importa a los científicos de datos?
EXPERIMENTACIÓN
RÁPIDA
VISUALIZACIÓN
DE
DATOS
COLABORACIÓN
ENTRE
EQUIPOS
INTERCAMBIO
FÁCIL DE IDEAS
13. Desafíos para los científicos
de datos
• Gestión de infraestructuras
• Exploración y visualización de datos a
escala
• Tiempo de valor-desde iteraciones de
modelo a inteligencia
• Integrando con varias herramientas de
ML para implementar una solución
conjunta
• Operacionalización de modelos de ML
para integrarlos en aplicaciones
14. Motor de Databricks optimizado
DATABRICKS I/O SERVERLESS
Espacio de trabajo colaborativo
Cloud storage
Data warehouses
Hadoop storage
IoT / streaming data
Rest APIs
Machine learning models
BI tools
Data exports
Data warehouses
Azure Databricks
Mejorar la productividad
Implementar trabajos de producción y flujos de trabajo
APACHE SPARK
MULTI-STAGE PIPELINES
DATA ENGINEER
JOB SCHEDULER NOTIFICATION & LOGS
DATA SCIENTIST BUSINESS ANALYST
Construir en cloud segura y de confianza Escala sin límites
A Z U R E D A T A B R I C K S
15. ¿Por qué Azure Databricks
para Data Science?
• Fácil de crear y administrar clústeres
computacionales que escalan
automáticamente
• Desarrollo rápido utilizando el espacio de
trabajo integrado que facilita la
colaboración entre equipos
• Exploración interactiva con cuadernos
• Integración sin fisuras con las
herramientas y bibliotecas de ML
• Soporte de deeplearning con GPU
16. Introducción a Spark
Un marco de procesamiento de datos unificado, de código abierto y paralelo para grandes análisis de datos
Spark Core Engine
Spark SQL
Interactive
Queries
Spark Structured
Streaming
Stream processing
Spark MLlib
Machine
Learning
Yarn Mesos
Standalone
Scheduler
MLlib
Machine
Learning
Streaming
Stream processing
GraphX
Graph
Computation
17. INGEST STORE PREP & TRAIN MODEL & SERVE
Advanced analytics
Azure Blob Storage
Logs, files and media
(unstructured)
Azure SQL Data
Warehouse
Azure Data Factory
Azure Analysis
Services
Polybase
Business/custom apps
(Structured)
Power BI
Azure Databricks
(Python, Scala, Spark SQL)
Azure Databricks
(Spark ML, Spark R, SparklyR)
Intelligent Apps
Cosmos DB
19. Complexities in processing
DATOS
COMPLEJOS
Diversos formatos de
datos(json, avro, binary, …)
Los datos pueden estar
sucios,
tarde, fuera de orden
SISTEMAS
COMPLEJOS
Diversos sistemas de
almacenamiento(Kafka,
Azure Storage,Event Hubs,
SQL DW, …)
Fallos del sistema
CARGAS DE
TRABAJO
COMPLEJAS
Combinar con consultas
interactivas
Machine Learning
20. Transformar datos
Cast binary value to string
Name it column json
Parse json string and expand into nested columns, name it data
val parsedData = rawData
.selectExpr("cast (value as string) as json")
.select(from_json("json", schema).as("data"))
.select("data.*")
json
{ "timestamp": 1486087873, "device":
"devA", …}
{ "timestamp": 1486082418, "device":
"devX", …}
data (nested)
timestamp device …
1486087873 devA …
1486086721 devX …
from_json("json")
as "data"
23. Scenarios
• E-mails – Clasificar correos electrónicos
como spam o no spam (Clasificación)
• Análisis de la rotación de clientes
(Clasificación)
• Predecir las ventas utilizando datos de
ventas históricos (Regresión)
• Recomendación de película
• Detección de anomalías (aprendizaje no
supervisado)
24. Spark MLlib
Introduced in Spark 0.8
Now (Spark 2.0)
• Contributions from 75+ orgs, ~250
individuals
• Growing coverage of distributed
algorithms
Spark
SparkSQL Streaming MLlib GraphX
25. ¿Por qué usar Azure Databricks
para Machine learning?
• Plataforma completa en una
(recopilación de datos, exploración,
transformación, featurización,
construcción de modelos, afinación
de modelos e incluso servicio de
modelos).
• No hay necesidad de copiar los
datos en nuestro sistema para hacer
ml en él.
• A los DataScientists les gusta su
facilidad de uso.
• Productionization Features built in.
31. ML Export
• ML Model Export allows you to export models and full ML
pipelines
• Exported models and pipelines can be imported in (Spark
and non-Spark) platforms to do scoring and make
predictions
• Targeted at low-latency, lightweight ML-powered
applications
33. Los beneficios de
Azure Databricks
• El major de la clase, Spark - Administrado, Simple,
Rápido
• Se conecta a todos sus datos y servicios existentes –
SQL, Cosmos, Azure Storage, Event Hubs, IOT Hubs,
ADF, Power BI
• Mejoras en el rendimiento – Delta, DBIO Caching
• Escalado automático y optimización de costes
• Construido en tolerancia a fallos
34.
35. Para estar al loro de nuestros próximos eventos…¡síguenos!
ENCAMINA @ENCAMINA+Encamina Piensa en Colores ENCAMINA
MyENCAMINA
ENCAMINA.TV encamina_piensa_en_colores
Encamina Piensa en Colores
Notes de l'éditeur
EDURME es un producto que estamos desarrollando internamente en ENCAMINA.
Nuestro CEO se le ocurrió
Sobre CRM
Contributions estimated from github commit logs, with some effort to de-duplicate entities.
Model training / tuning
Regularization: parameter that controls how the linear model does on unseen data
There is no single good value for the regularization parameter.
One common method to find on is to try out different values.
This technique is called CV: you split your training data into 2 sets: one set used to learn some parameters with a given regularization parameter, and another set to evaluate how well we are doing with the given parameter.