Logo Studenta

Aprendizaje-Automatico

¡Este material tiene más páginas!

Vista previa del material en texto

Capacitación Data4Now
Septiembre, 2021
1
Temas
● Introducción Aprendizaje Automático (AA)
● Metodología
● Evaluación de modelos
2
Introducción AA
3
Aprendizaje Automático (Machine Learning)
Que es ML?
● Es una rama de la inteligencia artificial cuyo objetivo es desarrollar 
técnicas que permitan a las computadoras aprender.
● Los algoritmos generalizan comportamientos en base a ejemplos 
proporcionados.
Observación Variable 1 ... Variable m
1
...
n
Resultados
https://es.wikipedia.org/wiki/Inteligencia_artificial
Que es un algoritmo de Machine Learning?
● Los algoritmos de Machine Learning toman como input diferentes 
variables de los individuos y arrojan un output.
● La lógica puede ser una operación matemática, un conjunto de reglas o 
un mix de ambas.
Aprendizaje Automático (Machine Learning)
El ML se divide en dos grandes tipos de aprendizaje, supervisado y no 
supervisado:
• Los de tipo supervisado son aquellos que tienen una “clase” que se 
intenta predecir.
• Los de tipo no supervisado son aquellos que no tienen una “clase”, sino 
que intentan agrupar casos en base a similitud entre ellos.
Aprendizaje Automático (Machine Learning)
Los algoritmos de aprendizaje supervisado pueden ser:
• Clasificación: Se predice un evento con una cantidad de valores discretos
• Binarios (“Acepta” / “No acepta”)
• Multiclase (“Montevideo”, “Rocha”, “La Paloma”)
• Regresión: Se predice un valor continuo
Aprendizaje Supervisado
En síntesis, lo que vamos a intentar hacer es predecir:
• Un evento futuro en base a lo que conocemos del pasado
• Un evento en una población en base a lo que conocemos de otra población
Aprendizaje Supervisado
Ejemplos comunes de aprendizaje supervisado - Problemas de clasificación:
• Predicción de Churn/Attrition (baja según la industria): 
• Su cuenta bancaria / Línea telefónica / Su servicio de cable
• Predicción de upselling:
• Upgrade de servicios / ofrecimiento de productos plus / cambio de 
terminales
• Predicción de fraudes:
• bancos / e-commerce / seguros
• Estimar nivel socioeconómico
En el contexto de teledetección esto no se da frecuentemente, el enfoque es 
otro.
Aprendizaje Supervisado
El resultado de un modelo predictivo es una forma funcional que 
permite, utilizando los inputs, predecir un output.
Tomando el peso que se le da a cada variable, se puede observar los 
comportamientos que marcan una mayor tendencia.
Ejemplo: Si estoy estimando el salario de la población y el coeficiente 
correspondiente a la zona donde vive es alto, podría indicar cierta 
relación 
Poder explicativo de los modelos
Modelos de clasificación: imágenes satelitales
• Clasificación de coberturas de suelo.
• Mapeo de cultivos para agricultura.
• Conteo de techos, piscinas y objetos en general.
• Inventario remoto.
• Etc, etc, etc.
Metodología
18
Workflow
Todo proyecto de Data Mining comienza con un problema a resolver
• Quiero hacer una campaña de venta
• Tengo una fuerza de venta de cierto tamaño y quiero optimizar su trabajo
• Quiero identificar a los morosos
• Quiero actuar antes de que caigan en mora
• Quiero identificar quiénes se van a ir
• Les ofrecería una promoción
• Quiero predecir la tasación de un departamento
• Desarrollaría una app con esa predicción
Una vez identificado el problema a resolver, proceder a la extracción de 
datos de la fuente
Puede ser:
• Base de datos
• Archivos planos
• Otras fuentes (ejemplo, web)
Workflow - Extracción de datos
El siguiente paso es la transformación de datos que incluye
• Integrar: Unir las diferentes fuentes de datos
• Transformar: Modificar los datos para los fines que deseamos
• Limpiar: Eliminar casos o corregir registros erróneos
• Filtrar: Quedarnos con lo relevante
• Sumarizar: Resumir varios registros en uno nuevo en un nivel de 
observación más agregado
Workflow - Transformación de datos
Ya con el dataset con el que vamos a modelar armado, procedemos a 
realizar un análisis exploratorio para entender mejor los datos con los 
que estamos trabajando
Workflow - Exploración
Luego se procede a entrenar los modelos
Por entrenamiento se entiende a la ejecución del algoritmo que ajustará los datos a 
una representación
Esta representación puede ser por ejemplo una función matemática o un conjunto 
de reglas
Ejemplo: Ejecuto el algoritmo que crea un árbol de decisión
Workflow - Modelado
Ya habiendo entrenado los modelos, se procede a la aplicación del 
mismo sobre un dataset diferente al que usamos para modelar
Luego, evaluamos la performance del modelo de acuerdo a la o las 
métricas que hayamos elegido
Seleccionamos el o los modelos candidatos
Workflow - Validación
Habiendo elegido los modelos candidatos, procedemos a aplicar estos 
modelos en otro conjunto de datos para validar nuestra elección inicial
Workflow - Testing
Con el modelo definitivo procedemos a ponerlo en producción
Esto puede llegar a ser:
• Programación de la lógica en otro lenguaje
• Automatización
Workflow - Puesta en producción
Con el modelo productivo, después de cada período, se procede a 
evaluar la performance del modelo
Workflow - Seguimiento
Evaluación de modelos
29
Overfitting
Cuando hacemos un modelo, no tenemos que olvidarnos cuál es el objetivo 
final, predecir casos no vistos
Cuando un modelo se ajusta demasiado a los datos que usamos para entrenar 
pero no posee un buen desempeño prediciendo nuevos casos, se dice que 
estamos sobreajustando (overfiteando en spanglish)
Debido al overfitting, para modelar dividimos el dataset en una 
conjunto de training que vamos a usar para entrenar el modelo y un 
conjunto de validación para comprobar los resultados del modelo
Otra práctica que se realiza es dividir el dataset en un 3er conjunto de 
testing, el cual se utiliza una vez que ya se seleccionó el mejor modelo 
utilizando los otros 2
Training y validation
Para evaluar un modelo, existen diversas métricas, algunas dependen 
de establecer un umbral de probabilidad para clasificar los casos, 
mientras que otros se valen solamente del valor de la probabilidad
Para seleccionar la métrica a usar, no hay fórmulas universales, éstas 
van a depender de la industria, del problema y de qué es lo que se 
quiera privilegiar/evitar
Evaluación de modelos
VALOR PREDICHO
POSITIVO NEGATIVO
VALOR REAL POSITIVO VERDADERO POSITIVO FALSO NEGATIVO
NEGATIVO FALSO POSITIVO VERDADERO NEGATIVO
La matriz de confusión permite observar qué cantidad de los casos fueron 
clasificados correctamente y cuáles no, además qué tipo de error se 
cometió
Matriz de confusión
• Accuracy
• (VP+VN)/TOTAL
• Qué porcentaje de los casos fue clasificado correctamente
• Cuando las clases están muy desbalanceadas no sirve
• Precisión
• VP/(VP+FP)=VP/Marcados como positivos
• Qué porcentaje de los valores que considero positivos lo son
• Sensibilidad
• VP/(VP+FN)=VP/POSITIVOS
• Qué porcentaje de los positivos encontré
• Especificidad
• VN/(FP+VN)=VN/NEGATIVOS
• Qué porcentaje de los negativos marqué como negativo
Medidas basadas en la matriz de confusión
Estas medidas suelen ser complementarias entre sí, por eso para seleccionar alguna, 
tengo que pensar en el problema
Si quiero no dejar a ningún positivo afuera, cuál uso?
Sensibilidad (VP/POSITIVOS)
En este caso, algunos exámenes médicos privilegian un falso positivo a que alguien 
posea una enfermedad y no lo sepa. Ejemplo: el examen de VIH
Si quiero estar seguro de no dar por positivo algo falso?
Especificidad (VN/NEGATIVO)
Un ejemplo de esto es el Evatest, si dice que estás embarazada, es porque estás 
embarazada
Medidas basadas en la matriz de confusión
El resultado de un modelo, suele ser un valor de probabilidad de 
la clase a predecir.
Para poder dar un valor predicho, se debe establecer un umbral, 
el cual puede ser por:
• Umbral arbitrario de probabilidad
• Cantidad de casos a utilizar (i.e: por capacidad de contactos)
• Cantidad de casos positivos a encontrar
• Umbral deprobabilidad basado en el uso
Medidas basadas en la matriz de confusión
Modelado - coeficiente 𝜿 (Cohen 1960)
● Tiene en cuenta el acuerdo entre dos observadores en sus correspondientes 
clasificaciones.
● Penaliza que los dos observadores clasifiquen igual de manera azarosa.
● Si po es el acuerdo observado relativo entre los observadores y pe es la 
probabilidad hipotética de acuerdo al azar.
Optimización de Hiperparámetros
38
Cross Validation
Grid Search
Los árboles de decisión son algoritmos de la 
rama de computación.
Lo que genera es un conjunto de reglas que, al 
cumplirla la observación, se le otorgará una 
probabilidad en base a lo visto en el conjunto 
de entrenamiento
La ventaja de estos modelos es un fácil 
interpretación y que, dependiendo de la 
implementación, trabajan bien con valores 
nulos.
Árboles de Decisión
El árbol de decisión lo que busca es dividir el conjunto de datos 
sucesivamente con el fin de crear diferentes grupos lo más “puros” 
posible
Cada división que genera el árbol se llama “nodo” y, la división 
terminal, se llama “hoja”
Árboles de Decisión
El algoritmo comienza:
1. generando cortes de variables numéricas 
2. agrupando variables categóricas
Lo que busca con esto es encontrar el corte que genere la mejor 
división de los datos en base a un estadístico determinado
Luego compara todas las variables y utiliza la mejor, separando el 
dataset por esa variable
Luego repite el procedimiento para cada nodo que se genere
Árboles de Decisión
El algoritmo se va a detener cuando no pueda optimizar los cortes de 
variables o cuando se alcance una profundidad máxima del árbol
Luego de generar el árbol, algunas implementaciones poseen algo 
llamado “poda”, que es eliminar reglas que al eliminarlas mejoran la 
predicción.
Árboles de Decisión
Ventajas
• Fáciles de Interpretar y Explicar, pueden ser mostrados gráficamente
• Trabajan bien con variables categóricas
• Dependiendo la implementación, trabaja bien con valores nulos
• Trabaja naturalmente con problemas multiclase
• Se pueden usar para regresión y clasificación
Desventajas
• El desempeño con clases desbalanceadas no es muy bueno
• Un pequeño cambio en los datos puede modificar sustancialmente el árbol
• Tiende a priorizar variables categóricas con alta cardinalidad
Árboles de Decisión - Ventajas y Desventajas
Ensambles de árboles de decisión
46
Bootstrap
• Técnica estadística basada en tomar muestras con reposición para 
diversos fines.
• Se realiza la estimación de media, varianza, etc a partir de tomar 
muestras con reemplazo de los datos que tenemos.
• El tamaño de las muestras es el mismo que el de nuestro conjuntos 
de datos.
• Se realiza muestreo con reemplazo para agregar variabilidad a la 
muestra que tenemos. 
• La idea es calcular el estimador a partir de diferentes muestras que 
nos permitan acercarnos con mayor seguridad al valor de este en la 
población.
• Animación explicativa: link
Bootstrap
https://www.stat.auckland.ac.nz/~wild/BootAnim/movies/bootstrap1.mp4
Bootstrap
• Bootstrap aggregation.
• Ajustar varios árboles profundos a muestras del dataset original 
(tomadas con reemplazo).
• Clasificar por votación (en clasificación) o promedio (en regresión).
Bagging
• Recordemos que los árboles de decisión presentan un bajo sesgo 
(se ajustan bien a los datos) pero alta varianza (no generalizan 
bien).
• Al promediar esos árboles se reduce dicha varianza en el estimador 
final.
• Se pierde la simpleza y explicación de tener un solo árbol.
Bagging
Bagging
Random Forests
53
Random Forests
• Bagging produce diferentes muestras bootstrap que pueden ser 
similares.
• Random Forests tiene una filosofía similar pero intenta resolver 
este problema.
• Para cada árbol se selecciona de manera bootstrap un subconjunto de los 
datos de entrenamiento y se deja el resto de las instancias para evaluar el 
error. 
• Para cada nodo del árbol se selecciona una muestra aleatoria de los atributos 
del conjunto de datos para realizar la mejor partición posible.
• El error de evaluación converge asintóticamente a un límite a medida que el 
número de estimadores va creciendo.
Random Forests
• Ventajas: estabilidad de las predicciones y posibilidad de estimar la 
importancia de cada variable en la clasificación. 
• Desventajas: posibilidades de sobreajuste y dificultad de interpretación.
• Importancia de variables: cuánto desciende la medida de impureza (sea Gini o 
entropía) del árbol si se considera determinado atributo para un nodo. 
Random Forests
Random Forests - Parámetros
• Máxima profundidad de los árboles.
• Mínima cantidad de observaciones para dividir un nodo interno.
• Criterio de medición de calidad de una partición.
● Desde principios de la década del 70, se resolvían los problemas de 
clasificación en imágenes satelitales a partir de píxeles. 
● Para cada uno se estudiaban las propiedades espectrales sin tener en 
cuenta la información del contexto espacial.
● Puede ocurrir que dada la variabilidad asociada a considerar los píxeles de 
manera aislada, no sea uniforme la clasificación.
Clasificación por píxel

Continuar navegando