SlideShare una empresa de Scribd logo
Machine Learning usando Weka en un
entorno de cómputo distribuido
por Alexandra Lemus
15 de marzo de 2018
#datadaymx
¿Quiénes somos?
VinkOS es una firma dedicada a la integración de tecnologías diversas y
desarrollo de soluciones dentro del ámbito de Big Data y Minería de Datos.
Trabajamos con tecnologías código abierto empresarial, en particular,
Pentaho y Cloudera.
2
Agenda
● Un caso de uso: MandiStore, una tienda departamental
● Machine learning y cómputo distribuido - Algunos conceptos
● Recordando el ciclo del científico de datos
● Weka y Spark MLlib - Herramientas para implementar soluciones
● Roadmap - Solución al caso de uso
● Demo: Un algoritmo de clasificación en Weka distribuido
● Conclusiones
3
Caso de uso: MandiStore
● MandiStore, es una tienda departamental, que cuenta con una tarjeta
departamental y un programa de lealtad.
● Cuenta con millones de registros que contienen la información
socioeconómica de sus clientes, así como sus productos contratados
y/o consumidos.
● Actualmente tiene un nuevo producto financiero que quiere ofrecer a
sus clientes y a otros clientes potenciales.
Su meta es lanzar una campaña de marketing efectiva, para ofrecer de
forma personalizada su producto a clientes existentes y potenciales.
La pregunta es: ¿Cuáles clientes van a estar interesados en el producto
y cuáles no?
4
Machine Learning
Toma de decisiones basadas en datos.
Actualiza modelos con nuevos datos.
Algoritmos de clasificación.
Aprendizaje automatizado.
Cómputo Distribuido
Conjunto de nodos organizados.
Procesamiento de grandes volúmenes
de datos.
Resistente a fallos y concurrencia de
datos
¿Me sirve utilizar machine learning en un entorno distribuido?
En este caso sí, para aprovechar todos los datos y utilizar algoritmos
distribuidos teniendo una visión hacia futuro.
Machine learning y cómputo distribuido
5
Para responder a esta pregunta, utilizamos el siguiente enfoque:
Una solución de ciencia de datos es compleja.
Preparación y análisis
exploratorio de datos.
Keywords: Limpieza, perfilado,
ingeniería de características,
estadísticas descriptivas.
Recordando el ciclo del científico de datos
Generación y
evaluación de
modelos.
Keywords: Clasificación,
regresión, clustering.
Implementación y
automatización de
modelos
6
¡Weka se puede utilizar en un entorno distribuido!
Distribuye los datos y/o las tareas en distintos nodos de forma local o remota.
Utiliza algoritmos de Spark MLlib y de Weka en este mismo entorno.
Weka
Minero de datos de
código abierto
desarrollado en la
Universidad de Waikato,
en Nueva Zelanda.
Weka y Spark MLlib
7
Spark MLlib
Biblioteca de algoritmos
de aprendizaje de
máquina para cómputo
distribuido.
Utilizamos las siguientes herramientas para encontrar una solución.
Weka hace transparente el uso de algunas funcionalidades de Spark
Bondades del cómputo distribuido en Weka
Distribución de datos Generación de modelos Resultado
Data Set
Data Set
Entrenar modelo
Entrenar modelo
1. Modelo
Incremental.
2. Ensemble de
modelos.
Score
Tareas MAP Tareas REDUCERDD
8
La interfaz gráfica
permite entender
el flujo de datos y
tareas.
Los objetos de
Weka encapsulan
las capacidades de
Spark.
Preparación y análisis exploratorio de los datos…
● Pentaho Data Integration (PDI): preparación de datos e ingeniería de
características.
● Weka y R-tidyverse: EDA.
● Weka: Tratamiento de valores nulos.
Roadmap: Preparación de datos y EDA
9
Generación y evaluación de modelos...
● Entrenamiento de diversos modelos con una muestra de los datos
(400,000).
● Entrenamiento de tres modelos con todos los datos disponibles
(9,000,000).
● Gradient Boosted Trees, Decision Tree, Random Forest.
● Evaluación de modelos (seleccionando el modelo con menor número de
falsos negativos).
Roadmap: Entrenamiento y evaluación
Modelo Precision Recall
F-
Meassure
AUC TP TN FP FN
MLlibGradientBoosted
Trees
0.985 0.985 0.985 0.943 0.074 0.910 0.006 0.009
MLlibRandomForest 0.982 0.982 0.982 0.925 0.071 0.911 0.0056 0.012
MLlibDecisionTree 0.983 0.983 0.983 0.926 0.071 0.912 0.005 0.012
10
Roadmap: Implementación en productivo
La implementación en productivo de un modelo de machine
learning no es trivial. Para fines de esta presentación no se
considera esa etapa del ciclo de solución.
11
Demo
● Ejemplo del análisis exploratorio de datos (correlaciones con datos
faltantes).
● Generación de modelos con Weka KnowledgeFlow.
● Evaluación de un modelo con Weka Explorer.
12
Conclusiones
● Weka es…
○ un sistema gráfico con objetos que,
○ permite usar algoritmos de aprendizaje de máquina sin escribir
código, además
○ el diseño de flujos es fácil de interpretar.
● Weka y Spark MLlib tienen diversos beneficios para manejar grandes
volúmenes de información, en particular, este ejercicio es escalable con
archivos en Hadoop (de local a un cluster).
13
¿Preguntas?
alexandra.lemus@vinkos.com
@nankyoku
14

Más contenido relacionado

La actualidad más candente

Primeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid MeetupPrimeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid Meetup
dhiguero
 
Stratio: Experiencia en el Spark Summit 2014
Stratio: Experiencia en el Spark Summit 2014Stratio: Experiencia en el Spark Summit 2014
Stratio: Experiencia en el Spark Summit 2014
Stratio
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Joseph Lopez
 
Big Data Architecture con Pentaho
Big Data Architecture con PentahoBig Data Architecture con Pentaho
Big Data Architecture con Pentaho
Datalytics
 
Mi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning StudioMi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning Studio
JOSE AHIAS LOPEZ PORTILLO
 
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Socialmetrix
 
Zophia - Arquitecturas de datos en Google Cloud
Zophia - Arquitecturas de datos en Google CloudZophia - Arquitecturas de datos en Google Cloud
Zophia - Arquitecturas de datos en Google Cloud
UrielMontao2
 
Herramientas para computación distribuida. De Hadoop a Spark
Herramientas para computación distribuida. De Hadoop a SparkHerramientas para computación distribuida. De Hadoop a Spark
Herramientas para computación distribuida. De Hadoop a Spark
Jose Manuel Ortega Candel
 
Introduction to Machine Learning with Azure
Introduction to Machine Learning with AzureIntroduction to Machine Learning with Azure
Introduction to Machine Learning with Azure
Alan Koo
 
Big Data Begins
Big Data BeginsBig Data Begins
Big Data Begins
Hector Martinez
 

La actualidad más candente (10)

Primeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid MeetupPrimeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid Meetup
 
Stratio: Experiencia en el Spark Summit 2014
Stratio: Experiencia en el Spark Summit 2014Stratio: Experiencia en el Spark Summit 2014
Stratio: Experiencia en el Spark Summit 2014
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
 
Big Data Architecture con Pentaho
Big Data Architecture con PentahoBig Data Architecture con Pentaho
Big Data Architecture con Pentaho
 
Mi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning StudioMi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning Studio
 
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
 
Zophia - Arquitecturas de datos en Google Cloud
Zophia - Arquitecturas de datos en Google CloudZophia - Arquitecturas de datos en Google Cloud
Zophia - Arquitecturas de datos en Google Cloud
 
Herramientas para computación distribuida. De Hadoop a Spark
Herramientas para computación distribuida. De Hadoop a SparkHerramientas para computación distribuida. De Hadoop a Spark
Herramientas para computación distribuida. De Hadoop a Spark
 
Introduction to Machine Learning with Azure
Introduction to Machine Learning with AzureIntroduction to Machine Learning with Azure
Introduction to Machine Learning with Azure
 
Big Data Begins
Big Data BeginsBig Data Begins
Big Data Begins
 

Similar a Machine learning usando Weka, en un entorno de cómputo distribuido

Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
JCarlos Gonzalez Joyé
 
2016 ULL Cabildo KEEDIO - Arquitecturas Big Data
2016 ULL Cabildo KEEDIO - Arquitecturas Big Data2016 ULL Cabildo KEEDIO - Arquitecturas Big Data
2016 ULL Cabildo KEEDIO - Arquitecturas Big Data
KEEDIO
 
Laboratorio práctico: La sazón del científico de datos
Laboratorio práctico: La sazón del científico de datosLaboratorio práctico: La sazón del científico de datos
Laboratorio práctico: La sazón del científico de datos
Software Guru
 
Introducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL ServerIntroducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL Server
Eduardo Castro
 
Machine Learning en Inversiones 20210414
Machine Learning en Inversiones 20210414Machine Learning en Inversiones 20210414
Machine Learning en Inversiones 20210414
Gerard Alba
 
Revista TicNews Marzo 2015
Revista TicNews Marzo 2015Revista TicNews Marzo 2015
Revista TicNews Marzo 2015
Edicion Ticnews
 
Que es Azure Machine Learning 2015
Que es Azure Machine Learning 2015Que es Azure Machine Learning 2015
Que es Azure Machine Learning 2015
Eduardo Castro
 
MINERIA DE DATOS
MINERIA DE DATOSMINERIA DE DATOS
MINERIA DE DATOS
LosMorales
 
eBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdf
eBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdfeBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdf
eBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdf
Nubiral
 
Minería datos con SQL Server 2012
Minería datos con SQL Server 2012Minería datos con SQL Server 2012
Minería datos con SQL Server 2012
Eduardo Castro
 
capacitación Data science.pptx
capacitación Data science.pptxcapacitación Data science.pptx
capacitación Data science.pptx
MichaelBelmarCabrera
 
informe de proyecto base de datos
informe de proyecto base de datosinforme de proyecto base de datos
informe de proyecto base de datos
Juan Polo Cosme
 
Programa Superior en Big Data
Programa Superior en Big DataPrograma Superior en Big Data
Programa Superior en Big Data
ICEMD
 
UNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptxUNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptx
Luis Beltran
 
Informe bd2 final 2
Informe  bd2 final 2Informe  bd2 final 2
Informe bd2 final 2
Juan Polo Cosme
 
Informe bd2 final
Informe  bd2 finalInforme  bd2 final
Informe bd2 final
Juan Polo Cosme
 
Informe bd2 final Venta Carros
Informe  bd2 final Venta CarrosInforme  bd2 final Venta Carros
Informe bd2 final Venta Carros
Juan Polo Cosme
 
Mineria de datos
Mineria de datosMineria de datos
Mineria de datos
Anyeni Garay
 
Analisis predictivo con microsoft azure
Analisis predictivo con microsoft azureAnalisis predictivo con microsoft azure
Analisis predictivo con microsoft azure
Eduardo Castro
 
Introduccion datawarehouse
Introduccion datawarehouseIntroduccion datawarehouse
Introduccion datawarehouse
Eduardo Castro
 

Similar a Machine learning usando Weka, en un entorno de cómputo distribuido (20)

Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
Modelos predictivos para el sector asegurador usando datos masivos (Big Data ...
 
2016 ULL Cabildo KEEDIO - Arquitecturas Big Data
2016 ULL Cabildo KEEDIO - Arquitecturas Big Data2016 ULL Cabildo KEEDIO - Arquitecturas Big Data
2016 ULL Cabildo KEEDIO - Arquitecturas Big Data
 
Laboratorio práctico: La sazón del científico de datos
Laboratorio práctico: La sazón del científico de datosLaboratorio práctico: La sazón del científico de datos
Laboratorio práctico: La sazón del científico de datos
 
Introducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL ServerIntroducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL Server
 
Machine Learning en Inversiones 20210414
Machine Learning en Inversiones 20210414Machine Learning en Inversiones 20210414
Machine Learning en Inversiones 20210414
 
Revista TicNews Marzo 2015
Revista TicNews Marzo 2015Revista TicNews Marzo 2015
Revista TicNews Marzo 2015
 
Que es Azure Machine Learning 2015
Que es Azure Machine Learning 2015Que es Azure Machine Learning 2015
Que es Azure Machine Learning 2015
 
MINERIA DE DATOS
MINERIA DE DATOSMINERIA DE DATOS
MINERIA DE DATOS
 
eBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdf
eBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdfeBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdf
eBook Nubiral _ DataOps_ cada cual atiende su juego (1).pdf
 
Minería datos con SQL Server 2012
Minería datos con SQL Server 2012Minería datos con SQL Server 2012
Minería datos con SQL Server 2012
 
capacitación Data science.pptx
capacitación Data science.pptxcapacitación Data science.pptx
capacitación Data science.pptx
 
informe de proyecto base de datos
informe de proyecto base de datosinforme de proyecto base de datos
informe de proyecto base de datos
 
Programa Superior en Big Data
Programa Superior en Big DataPrograma Superior en Big Data
Programa Superior en Big Data
 
UNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptxUNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptx
 
Informe bd2 final 2
Informe  bd2 final 2Informe  bd2 final 2
Informe bd2 final 2
 
Informe bd2 final
Informe  bd2 finalInforme  bd2 final
Informe bd2 final
 
Informe bd2 final Venta Carros
Informe  bd2 final Venta CarrosInforme  bd2 final Venta Carros
Informe bd2 final Venta Carros
 
Mineria de datos
Mineria de datosMineria de datos
Mineria de datos
 
Analisis predictivo con microsoft azure
Analisis predictivo con microsoft azureAnalisis predictivo con microsoft azure
Analisis predictivo con microsoft azure
 
Introduccion datawarehouse
Introduccion datawarehouseIntroduccion datawarehouse
Introduccion datawarehouse
 

Más de Software Guru

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las Cosas
Software Guru
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
Software Guru
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environments
Software Guru
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador Senior
Software Guru
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto ideal
Software Guru
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache Airflow
Software Guru
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:
Software Guru
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learning
Software Guru
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDi
Software Guru
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0
Software Guru
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJS
Software Guru
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
Software Guru
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?
Software Guru
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Software Guru
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
Software Guru
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Software Guru
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stress
Software Guru
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goals
Software Guru
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19
Software Guru
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseño
Software Guru
 

Más de Software Guru (20)

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las Cosas
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environments
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador Senior
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto ideal
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache Airflow
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learning
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDi
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJS
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stress
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goals
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseño
 

Último

Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
JuanaNT7
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdfPLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
70244530
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
Manuel Diaz
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
AbrahamCastillo42
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
cecypozos703
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Festibity
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
YashiraPaye
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
Informació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdfInformació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdf
Festibity
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
KukiiSanchez
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
cbtechchihuahua
 

Último (20)

Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdfPLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
Informació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdfInformació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdf
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
 

Machine learning usando Weka, en un entorno de cómputo distribuido

  • 1. Machine Learning usando Weka en un entorno de cómputo distribuido por Alexandra Lemus 15 de marzo de 2018 #datadaymx
  • 2. ¿Quiénes somos? VinkOS es una firma dedicada a la integración de tecnologías diversas y desarrollo de soluciones dentro del ámbito de Big Data y Minería de Datos. Trabajamos con tecnologías código abierto empresarial, en particular, Pentaho y Cloudera. 2
  • 3. Agenda ● Un caso de uso: MandiStore, una tienda departamental ● Machine learning y cómputo distribuido - Algunos conceptos ● Recordando el ciclo del científico de datos ● Weka y Spark MLlib - Herramientas para implementar soluciones ● Roadmap - Solución al caso de uso ● Demo: Un algoritmo de clasificación en Weka distribuido ● Conclusiones 3
  • 4. Caso de uso: MandiStore ● MandiStore, es una tienda departamental, que cuenta con una tarjeta departamental y un programa de lealtad. ● Cuenta con millones de registros que contienen la información socioeconómica de sus clientes, así como sus productos contratados y/o consumidos. ● Actualmente tiene un nuevo producto financiero que quiere ofrecer a sus clientes y a otros clientes potenciales. Su meta es lanzar una campaña de marketing efectiva, para ofrecer de forma personalizada su producto a clientes existentes y potenciales. La pregunta es: ¿Cuáles clientes van a estar interesados en el producto y cuáles no? 4
  • 5. Machine Learning Toma de decisiones basadas en datos. Actualiza modelos con nuevos datos. Algoritmos de clasificación. Aprendizaje automatizado. Cómputo Distribuido Conjunto de nodos organizados. Procesamiento de grandes volúmenes de datos. Resistente a fallos y concurrencia de datos ¿Me sirve utilizar machine learning en un entorno distribuido? En este caso sí, para aprovechar todos los datos y utilizar algoritmos distribuidos teniendo una visión hacia futuro. Machine learning y cómputo distribuido 5 Para responder a esta pregunta, utilizamos el siguiente enfoque:
  • 6. Una solución de ciencia de datos es compleja. Preparación y análisis exploratorio de datos. Keywords: Limpieza, perfilado, ingeniería de características, estadísticas descriptivas. Recordando el ciclo del científico de datos Generación y evaluación de modelos. Keywords: Clasificación, regresión, clustering. Implementación y automatización de modelos 6
  • 7. ¡Weka se puede utilizar en un entorno distribuido! Distribuye los datos y/o las tareas en distintos nodos de forma local o remota. Utiliza algoritmos de Spark MLlib y de Weka en este mismo entorno. Weka Minero de datos de código abierto desarrollado en la Universidad de Waikato, en Nueva Zelanda. Weka y Spark MLlib 7 Spark MLlib Biblioteca de algoritmos de aprendizaje de máquina para cómputo distribuido. Utilizamos las siguientes herramientas para encontrar una solución.
  • 8. Weka hace transparente el uso de algunas funcionalidades de Spark Bondades del cómputo distribuido en Weka Distribución de datos Generación de modelos Resultado Data Set Data Set Entrenar modelo Entrenar modelo 1. Modelo Incremental. 2. Ensemble de modelos. Score Tareas MAP Tareas REDUCERDD 8 La interfaz gráfica permite entender el flujo de datos y tareas. Los objetos de Weka encapsulan las capacidades de Spark.
  • 9. Preparación y análisis exploratorio de los datos… ● Pentaho Data Integration (PDI): preparación de datos e ingeniería de características. ● Weka y R-tidyverse: EDA. ● Weka: Tratamiento de valores nulos. Roadmap: Preparación de datos y EDA 9
  • 10. Generación y evaluación de modelos... ● Entrenamiento de diversos modelos con una muestra de los datos (400,000). ● Entrenamiento de tres modelos con todos los datos disponibles (9,000,000). ● Gradient Boosted Trees, Decision Tree, Random Forest. ● Evaluación de modelos (seleccionando el modelo con menor número de falsos negativos). Roadmap: Entrenamiento y evaluación Modelo Precision Recall F- Meassure AUC TP TN FP FN MLlibGradientBoosted Trees 0.985 0.985 0.985 0.943 0.074 0.910 0.006 0.009 MLlibRandomForest 0.982 0.982 0.982 0.925 0.071 0.911 0.0056 0.012 MLlibDecisionTree 0.983 0.983 0.983 0.926 0.071 0.912 0.005 0.012 10
  • 11. Roadmap: Implementación en productivo La implementación en productivo de un modelo de machine learning no es trivial. Para fines de esta presentación no se considera esa etapa del ciclo de solución. 11
  • 12. Demo ● Ejemplo del análisis exploratorio de datos (correlaciones con datos faltantes). ● Generación de modelos con Weka KnowledgeFlow. ● Evaluación de un modelo con Weka Explorer. 12
  • 13. Conclusiones ● Weka es… ○ un sistema gráfico con objetos que, ○ permite usar algoritmos de aprendizaje de máquina sin escribir código, además ○ el diseño de flujos es fácil de interpretar. ● Weka y Spark MLlib tienen diversos beneficios para manejar grandes volúmenes de información, en particular, este ejercicio es escalable con archivos en Hadoop (de local a un cluster). 13