Transcript

Machine Learning - introducción

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

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).

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...

Varios mundos: Predictive Modeling

Ejemplo variable continua

Output/TargetInput

Empresa que vende estufas, visitas a la página en función de la temperatura

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

Varios mundos: Time Series Forecasting

Ejemplo

A diferencia de los modelos anterioresen 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)

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 losaspectos de time series.

Resumen planetario

Estos 2 segmentos, abarcan la mayoría de modelos que son requeridos en ambientes laborales.

Predictive Modeling

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.

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”

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

Ordenando el caos con Decision Tree

Y voila! Se crea el resto del árbol.

Cada nodo es una regla IF-THEN >>>

Ordenando el caos con Decision Tree

Composición de una regla

Antecedente: If thal is not 3 and chest_pain is 1, 2 or 3Consecuente: 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)

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/thepiratesguidetor/

Construcción y validación del modelo

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/MeasuringError.html

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/scoring/scoring.html

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

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

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.

Preparación de Datos

Preparación de datos

90% del tiempo = limpieza y preparación de datos10% 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/introduction.html

La naturaleza de los datos

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.

Mas historias de datos…livebook.datascienceheroes.com (libro on-line y open source)blog.datascienceheroes.com


Top Related