Este documento presenta una introducción a varios conceptos y modelos de machine learning, incluyendo: (1) modelos populares como clustering, análisis predictivo y detección de anomalías; (2) árboles de decisión y Random Forest; (3) preparación de datos. Explica los diferentes tipos de problemas que pueden abordarse como predicción binaria, continua, clustering y series de tiempo. Resalta que la limpieza y preparación de datos es fundamental para el éxito de los modelos.
2. Contenido
❖ Modelos populares de Machine Learning
❖ Conceptos de Clustering y Análisis Predictivo
❖ Detección de anomalías
❖ Decision Trees / Random Forest
❖ Preparación de datos
❖ Selección de variables
….
❖ La naturaleza de los datos
3. Varios mundos: Predictive Modeling
El objetivo se conoce, y puede ser:
● Continuo - ‘N’ valores posibles, ej, cantidad de visitas a un sitio web, a concentración de
glóbulos rojos en la sangre después de cierta medicación.
● Binario - 2 valores posibles, ej, comprará el producto cierto cliente? Tendrá un paciente un
ataque al corazón dada la historia clínica?
> Dadas ciertas variables de entrada, se mapea a una salida (ó variable a predecir).
4. Varios mundos: Predictive Modeling
Ejemplo variable binaria
Input Output/Target/Outcome
¿Cómo se necesitan los datos para modelar?
1 registro = 1 caso de estudio para aprender.
Cada variable representa una característica.
Ejemplo:
1 registro = 1 paciente ó 1 cliente ó 1 auto...
5. Varios mundos: Predictive Modeling
Ejemplo variable continua
Output/TargetInput
Empresa que vende estufas,
visitas a la página en función de
la temperatura
6. Varios mundos: Clustering
“Se deja que los datos hablen” →no se tiene una
variable a predecir.
Los datos se agrupan por similitud.
Normalmente se define la cantidad máxima de clusters (ej: 3).
Fraude/Anomalías:
1. Se define un comportamiento “normal” (clusters)
2. Se encuentran los elementos más alejados de
esta “normalidad”
La esencia en clustering:
- Máxima similitud entre los casos
dentro de un cluster
- Maxima disimilitud entre los clusters
7. Varios mundos: Time Series Forecasting
Ejemplo
A diferencia de los modelos anteriores
en time series se puede predecir sólo con el
valor de la propia serie.
Como se leería un ejemplo de modelo?:
“Las visitas del próximo viernes,
sera el promedio del martes, miercoles y jueves pasados”.
Cada caso de estudio está relacionado
con los anteriores (a diferencia de las
otras predicciones donde cada caso es
independiente)
8. Varios mundos: Time Series Forecasting
Son los modelos que involucran tiempo y variable continua como
predicción.
Conceptualmente está relacionado con predicción de variable continua.
El gráfico muestra los page view
del término “FIFA” en la wikipedia.
Los círculos son anomalías.
Post explicativo del análisis (y usar otros términos):
https://goo.gl/KhriHb
Excelente libro on line: https://www.otexts.org/fpp cubre todos los
aspectos de time series.
9. Resumen planetario
Estos 2 segmentos, abarcan la mayoría de modelos que son requeridos en ambientes laborales.
11. Ordenando el caos con Decision Tree
Los árboles de decisión son buenos
para explicar un evento en reglas de
SI-ENTONCES.
Permiten análisis descriptivos y
predictivo.
La esencia: Encontrar las variables -
y sus valores- que más separen las
clases a predecir.
Conceptos: Teoría de la
información, reducción de entropía.
Information Gain.
12. Ordenando el caos con Decision Tree
PASO 1
No hay árbol.
La distribución de
has_heart_disease (variable a
predecir) es:
● 55% para “no”
● 45% para “yes”
13. Ordenando el caos con Decision Tree
PASO 2
● ¿Cuál es la variable, que
mayor separa las clases?
Ó bien...
● ¿Cual es la variable más
predictiva?
La segmentación está basada en
hechos. Se puede verificar haciendo un
filtro en SQL o excel.
Como se lee?
Rama de la izquierda: “Si thal=3 entonces la probabilidad de
tener un heart disease es de 22%”,
Rama de la derecha: “Si thal es distinto de 3, entonces la
probabilidad es del 76%”
thal=talasemia=tipo de anemia hereditaria
14. Ordenando el caos con Decision Tree
Y voila! Se crea
el resto del
árbol.
Cada nodo es una regla IF-THEN >>>
15. Ordenando el caos con Decision Tree
Composición de una regla
Antecedente:
If thal is not 3 and chest_pain is 1, 2 or 3
Consecuente:
Then the lilkelihod of having heart_disease is 92%
Métricas de calidad
Confianza/Precisión: Tasa de acierto, 92% en el caso anterior.
Soporte: Cuantos casos cubre el antecedente (independientemente de su resultado)
16. Ordenando el caos con Decision Tree
Excelente animacion explicando decision trees
interactivamente: http://www.r2d3.us/visual-intro-
to-machine-learning-part-1/?lang=en
Breve teoría de decision trees &
Information Gain:
https://goo.gl/snISWm
Libro para aprender R desde 0,
(entretenido):
http://nathanieldphillips.com/thepirates
guidetor/
18. Construcción y validación del modelo
"Bien! Contestaste casi todo
bien. Tenés un 4, podés
sentarte."
Lectura recomendada
Measuring Error:
http://scott.fortmann-
roe.com/docs/MeasuringErro
r.html
19. Construcción y validación del modelo
De acá se desprenden algunas
métricas de calidad, como la
matriz de confusión ó Accuracy.
>>>>>
El foco está en que el modelo devuelva
una probabilidad de que suceda un
evento, no una predicción “yes/no”. Mas
info:
http://livebook.datascienceheroes.com/scor
ing/scoring.html
20. Construcción y validación del modelo
Bueno pero … que es "un modelo"?
Ej. predicción variable binaria:
Ej. predicción variable continua (regresión lineal):
y=m*x+b (Si! más simple que el teorema de Green)
Visitas = 2 * inversion_en_publicidad + 4.51
21. Construcción y validación del modelo
Pero no todos los modelos pueden verse…
Redes neuronales artificiales:
- Cajas negras. Se tiene control sobre ellas en base a ver su
salida y comparar con lo esperado.
Random Forest
- Son un conjunto de árboles como los vistos
anteriormente
- Se modelan entre cientos y miles en un
mismo modelo
22. Random Forest
Modela la realidad como el
resultado de verdades parciales.
Si k1 dijo ‘yes’, k2 ‘no’ y k3 ‘yes’,
entonces el resultado final=‘yes’.
Es el algoritmo que mejor se desempeña en
escenarios reales; en términos generales, y casi
sin parametrización: Plug & Play.
… ¿Por qué?
Dos conceptos muy fuertes:
> Bootstrapping: Técnica de muestreo
> Bagging: Usar ‘N’ modelos predictivos, con
muestreo, para producir 1 resultado.
24. Preparación de datos
90% del tiempo = limpieza y preparación de datos
10% restante = modelado
- Ruido
- Valores extremos
- Valores nulos
- Casos imposibles
- Alta cardinalidad en variables categóricas
- otros..
La selección de variables es importantísima,
siempre.
Los modelos deben tener la menor cantidad de
variables, que expliquen la mayor información posible.
Mas info desde un enfoque visual:
livebook.datascienceheroes.com/selecting_best_variables/introdu
ction.html
26. La naturaleza de los datos
Los datos de entrada son puntos en un espacio de
múltiples dimensiones, (una por cada variable de entrada).
Los modelos son aproximaciones (superficie violeta) a la
“verdadera” forma de los datos, que permanece oculta.
Ningún modelo tiene la verdad absoluta, pero sí algunos
puede aproximarse mejor que otros.
La preparación de datos facilita la obtención de una
superficie. Modelos mas simples.
27. Mas historias de datos…
livebook.datascienceheroes.com (libro on-line y open source)
blog.datascienceheroes.com