Está en la página 1de 23

Módulo 1. Proceso de aprendizaje.

▪ Proceso de aprendizaje a partir de datos.

▪ Perceptron multicapa (MLP). Aspectos de entrenamiento.

▪ Funciones de activación y funciones de costo.

24/08/21
Universidad de los Andes
MINE: Análisis con deep learning
Departamento de Ingeniería de Sistemas y Computación
2021-20 Maestría en Ingeniería de Sistemas y Computación
Proceso de aprendizaje a partir de datos.

¿Cuáles datos utilizar?


¿Cómo corregir problemas de calidad de datos?
¿Cómo determinar una buena representación de
los datos para el algoritmo?

¿Modelo de negocio?
¿Cuál es el problema?
¿Situación actual? ¿Cómo ¿Cuál algoritmo de aprendizaje utilizar?
el negocio resuelve el ¿Cómo funciona? ¿Qué requerimientos
problema? ¿Tarea de tiene? ¿Cómo ajustar sus parámetros? Y si
aprendizaje? ¿Cómo se aplican varios algoritmos ¿Cuál modelo
evaluar los resultados? seleccionar?
¿Rendimientos de ¿Cómo evaluar los modelos?
referencia? ¿Requisitos de ¿Qué métricas utilizar según la tarea y el
los datos? contexto de aprendizaje?

¿Cómo hacer un análisis de los


resultados? ¿Cómo interpretar el modelo
tomando en cuenta los objetivos planteados?
Ejemplo: el cambio climático se refiere tanto
al calentamiento global provocado por la No. De datos: 7368
emisión de gases de efecto invernadero por
parte del hombre, como al aumento de los No. de variables:
desastres ambientales inducidos por dicho 12 (incluida la
calentamiento. En particular, en el caso del
dióxido de carbono (CO2), aunque es variable target)
necesario para la vida en el planeta, su
exceso de concentración provoca el “efecto
invernadero”, que eleva la temperatura del
planeta y desequilibra el ciclo natural.
La emisión de CO2 es mayor en los motores
de gasolina, por lo que reducir las emisiones
de la industria automovilística es uno de los
grandes objetivos actuales. Conocer cómo
las emisiones de CO2 varían de acuerdo a las
características del vehículo puede aportar al
establecimiento de medidas que favorezcan
la producción de aquellos menos
contaminantes.
El conjunto de datos recoge los detalles de
cómo las emisiones de CO2 de un vehículo
pueden variar con las diferentes
características de este, como tamaño del
motor, número de cilindros, consumo de
combustible, entre otros. Ha sido tomado
del sitio web oficial de datos abiertos del
Gobierno de Canadá y contiene información
de un periodo de 7 años.
Propuesta: modelo de regresión para estimar las emisiones de CO2 con
base en las características del vehículo.
Algoritmo a utilizar: red neuronal para regresión.
Métrica de rendimiento: RMSE.

▪ Eliminación de
Antes de la preparación, separar
el conjunto de test
identificadores.
▪ Transformación de
variables categóricas a
numéricas.
▪ Normalización de
atributos numéricos.
Modelado
1. Especificar primero la arquitectura:

Engine Size(L)

Cylinders CO2

Fuel Consumption Comb


(mpg) Número de neuronas
en la capa de salida =
Número de columnas
Número de neuronas
utilizadas para
en la capa de entrada =
Número de capas ocultas y representar la salida
Número de variables
número de neuronas por capa = (target)
de entrada.
hiperparámetros

2. Definir las funciones de activación: Algoritmo de entrenamiento (BP)

▪ Capas ocultas: ReLU


▪ Capa de salida: Identidad (o ninguna)

¿Cómo terminar de definir la arquitectura?


Ejemplo: Los sistemas de teledetección han resultado una herramienta muy útil en el análisis espacial de la cobertura terrestre a partir de imágenes
adquiridas desde sensores remotos. Gran cantidad de aplicaciones potenciales de la teledetección en el sector agrícola, ha motivado el uso de técnicas
inteligentes para tratar la complejidad de los procesos relacionados con esta tecnología, con el fin de construir sistemas de apoyo a la toma de decisiones en
este sector.
¿Cómo utilizar las técnicas de machine learning para la adquisición automática de conocimiento a partir de imágenes multiespectrales, con el fin de facilitar la
generación de mapas de uso y de cobertura de la tierra, que puedan ser utilizados para la planificación y gestión de las áreas agrícolas, de una manera más
eficiente y oportuna?

Para la preparación de imágenes ¿Qué caminos podemos seguir?

▪ Construir o derivar atributos para caracterizar las imágenes.


▪ Representar cada imagen como un vector d-dimensional,
donde d = número de píxeles de cada canal (caso perceptrón
multicapa).
▪ Representar cada imagen como una matriz de píxeles por cada
canal (caso red neuronal convolucional).
Tomemos el primer camino…

Algoritmos para la
construcción del
conjunto de datos

Clases:
1: Cuerpos de agua
2: Vegetación baja
3: Vegetación alta
4: Suelos desnudos
5: Área urbana
Generación del conjunto de datos 6: Nubes
7: Sombra de nubes
Modelado
1. Especificar primero la arquitectura:

Banda 1 Cuerpos de agua

Banda 2 Vegetación baja

Banda 11 Sombras de nubes

Algoritmo de entrenamiento (BP)


2. Definir las funciones de activación:

▪ Capas ocultas: ReLU


▪ Capa de salida: ¿Cuál?

¿Cómo terminar de definir la arquitectura?


Funciones de activación:

▪ Capas ocultas: familia ReLU.

Leaky ReLU = 𝑓 ℎ = max(𝛼ℎ, ℎ) 𝛼 exp ℎ − 1 𝑠𝑖 ℎ < 0


Unidad Lineal Rectificada (ReLU) = 𝑓 ℎ = max(0, ℎ) Exponential Linear Unit = 𝑓 ℎ = ቊ
ℎ 𝑠𝑖 ℎ ≥ 0

▪ Capa de salida: depende de la tarea. Por ejemplo, para clasificación: Softmax


La función softmax, función exponencial normalizada, toma como entrada un vector de n números reales y lo normaliza en una
distribución de probabilidad. Se utiliza en redes neuronales, para mapear los resultados de la capa de salida a una distribución de
probabilidad sobre las clases de salida predichas (en regresión logística permite resolver un problema multiclase y se conoce como
regresión logística multinomial).

𝑒 𝑜𝑖
𝑠𝑜𝑓𝑡𝑚𝑎𝑥 𝑜𝑖 = 𝑁𝑐 𝑜 𝑑𝑜𝑛𝑑𝑒 𝑁𝑐 = 𝑛ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑐𝑙𝑎𝑠𝑒𝑠
σ𝑖=1 𝑒 𝑖

𝒐 = 𝑜1 , 𝑜2 , … , 𝑜𝑁𝑐 = 𝑣𝑒𝑐𝑡𝑜𝑟 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎 𝑑𝑒 𝑙𝑎 𝑐𝑎𝑝𝑎 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎 𝑑𝑒 𝑙𝑎 𝑟𝑒𝑑


𝑠𝑐𝑜𝑟𝑒𝑠 𝑑𝑒 𝑐𝑎𝑑𝑎 𝑐𝑙𝑎𝑠𝑒

Funciones de costo (loss function): Importante: dependiendo de la tarea y la función de


activación que se utilice en la capa de salida,
▪ Error cuadrático medio (MSE): para regresión seleccionar la función de costo.
▪ Entropía cruzada (cross entropy): para clasificación Por ejemplo, la función de costo cross entropy se
utiliza con frecuencia para medir qué tan bien la
▪ Otras… distribución de probabilidades de las clases estimadas
coinciden con las clases objetivo.
Aplicación del modelo (generación de los mapas):
Zona de estudio

Mapa generado con el modelo


En el proceso ¿Qué puede ir mal?

Algunos problemas en el aprendizaje a partir de datos

Con respecto al Con respecto a la Con respecto al


conjunto de datos calidad y formato de modelado
los datos

▪ Insuficientes datos ▪ Baja calidad de datos ▪ Sobreajuste (overfitting) a


los datos
▪ Datos no ▪ Formato no adecuado
representativos del para el algoritmo de ▪ Bajo ajuste (underfitting)
problema bajo estudio. aprendizaje. a los datos.
▪ Características
irrelevantes.
Bajoajuste Error de entrenamiento
Error Error de test
▪ A medida que aumenta la complejidad del modelo, el error
𝐸𝑡𝑒𝑠𝑡 de generalización desmejora.

Sobreajuste ▪ La mejor generalización se obtiene cuando el modelo


representa los aspectos fundamentales de los datos, en vez
𝐸𝑒𝑛𝑡 de capturar detalles específicos de un conjunto de
Complejidad del modelo entrenamiento particular.

𝐸𝑒𝑛𝑡 ≈ 𝐸𝑡𝑒𝑠𝑡

▪ En general, los algoritmos de aprendizaje tienen parámetros que se pueden ajustar para controlar la complejidad de los modelos
que generan. Estos parámetros se conocen como hiperparámetros.
▪ No confundir con los parámetros del modelo.
▪ Un aspecto esencial será entonces determinar los valores de los hiperparámetros que controlan la complejidad para obtener un
modelo que generalice bien para nuevos datos.
▪ Para hacerlo se utilizan técnicas de validación. Estás técnicas nos permitirán determinar la complejidad adecuada para nuestro
conjunto de datos.
¿Cómo ajustar hiperparámetros?

Técnicas de selección de modelos


(validación)
Alto
𝐸𝑒𝑛𝑡 𝑔𝑟𝑎𝑛𝑑𝑒
bias
𝐸𝑒𝑛𝑡 ≈ 𝐸𝑣𝑎𝑙
Zona de Zona de Error de entrenamiento
𝐸𝑒𝑛𝑡 𝑝𝑒𝑞𝑢𝑒ñ𝑜
bajoajuste sobreajuste Error de validación
Error 𝐸𝑣𝑎𝑙 ≫ 𝐸𝑒𝑛𝑡

Alta
𝑬𝒗𝒂𝒍 varianza
Diferencia entre
𝐸𝑒𝑛𝑡 𝑦 𝐸𝑣𝑎𝑙

𝑬𝒆𝒏𝒕

𝐸𝑒𝑛𝑡 ≈ 𝐸𝑣𝑎𝑙 Complejidad

¿Y qué hacer?

Bajo ajuste Sobre ajuste


Incluir más variables Más datos
Modelos más complejos, características polinomiales,… Modelos más simples, selección de variables,…
Regularización (cambiar el hiperparámetro de Regularización (cambiar el hiperparámetro de
regularización) regularización)
Con respecto al número de capas y número de neuronas por capa:

▪ Número de capas ocultas: hiperparámetro de control de la complejidad


▪ Número de neuronas por capa oculta: hiperparámetro de control de la complejidad

En el contexto bias-varianza
Otros aspectos relacionadas con el sobreajuste
▪ Aumentar gradualmente la cantidad de capas
ocultas y de neuronas, hasta que se comience a
ajustar el conjunto de entrenamiento (early
stopping).
▪ Comenzar con una red muy grande, pero utilizar
regularización.
▪ Para tareas muy complejas, como la clasificación de
imágenes o el reconocimiento de voz, se requiere
de redes con muchas capas, pero no
completamente conectadas.
Si: ¿Qué hacer? ▪ En muchos casos no habrá necesidad de
entrenarlas desde cero, ya que es posible reutilizar
Alto bias Red neuronal más grande partes de una red previamente entrenada para una
tarea similar (aprendizaje por transferencia).
Alta varianza Más datos
Regularización
Entrenamiento de redes neuronales.

¿Cuáles hiperparámetros hay que ajustar? Proceso empírico y altamente iterativo


a) Número de capas.
b) Número de neuronas por capa.
c) Tipo de función de activación en cada capa.
d) Regularización ¿Cuál usar?
e) ¿Cómo inicializar los pesos?
f) Constante de aprendizaje
g) Tamaño del mini-batch
h) Procedimiento de optimización ¿Cuál usar?
i) Término momento, …

¿Problemas?

▪ No hay suficientes datos etiquetados.


▪ Sobreajuste.
▪ Entrenamiento muy lento.
▪ Desvanecimiento de gradientes (vanishing gradients) o explosión de gradientes (exploding
gradients): capas inferiores muy difíciles de entrenar ¿Por qué?
Algunas recomendaciones: Funciones de activación

En clasificación:
Tipo de problema de Función de activación capa de
No. de entradas No. de neuronas de salida
clasificación salida
Sigmoide
Binario Una
Tangente hirpebólica
Multiclase
Sigmoide
(Un dato solo puede Una por cada dimensión Una por clase
Softmax
pertenecer a una clase) (variable de entrada)
Multietiqueta
(Un dato puede pertenecer a Una por etiqueta Sigmoide
más de una clase)

En regresión:
Tipo de problema de Función de activación capa de
No. de neuronas de entrada No. de neuronas de salida
regresión salida
Caso general Identidad
Si se requiere que la salida sea
ReLU
siempre positiva Una por cada dimensión de
Una por cada dimensión de
Si se requiere que la salida entrada
salida
esté limitada (variable de entrada)
Sigmoide
(hay que escalar los datos al
Tangente hipérbólica
rango de la función de
activación)
Ejemplos de proyectos.

▪ Detección del uso correcto del tapabocas*

El proyecto busca facilitar el cumplimiento de uno de los


protocolos más importantes para reducir el contagio de
virus como el Covid – 19, cuyos efectos han trascendido los
ámbitos personal, social, ambiental y económico de
prácticamente la totalidad del planeta. Para ello se
utilizaron técnicas de aprendizaje automático (machine
learning) aplicado a imágenes con el fin de crear un modelo
capaz de categorizar si una persona está usando correcta o
incorrectamente un tapabocas, o si no lo está usando.
Después del proceso de selección de modelos, se obtiene
una exactitud global de 0.95 (métrica extraída de un total
de 3197 imágenes del conjunto de prueba). El mejor
modelo obtenido se despliega en una página web donde se
realizan predicciones continuamente a través de la cámara
del usuario y que tiene un potencial de uso en procesos de
acceso a sitios o desarrollos pedagógicos sobre el uso
correcto del tapabocas.

*Julián Montoya.
▪ Aprendizaje no supervisado en el perfilamiento de clientes para profit scoring - Caso de estudio de una Fintech
Latinoamericana*
Modelo SOM coloreado con K-medias
El negocio del microcrédito se ha popularizado especialmente
con el auge de las empresas Fintech. Sin embargo, la evaluación
de riesgo de este tipo de créditos sigue siendo un desafío dada
la singularidad de sus clientes objetivo. Desde esta perspectiva,
para las Fintech prestamistas, no solo es importante conocer la
probabilidad de default sino también la potencial rentabilidad
del préstamo, para así tomar la decisión de si se otorga o no el
microcrédito. Este proyecto se centra en el desarrollo de un
modelo de caracterización y perfilamiento de clientes con el fin
de realizar un profit scoring para el caso de estudio de una
Fintech latinoamericana.
Para esto, se usaron técnicas de aprendizaje de máquina no
supervisado, específicamente se presenta un método híbrido de
agrupamiento basado en mapas autoorganizados de Kohonen
(SOM) y algoritmos de K-medias. A partir de los grupos
resultantes se etiqueta a los clientes como no deseables o
deseables. Para estos últimos, se hace un perfilamiento que
define sus características más relevantes. De esta forma el
modelo desarrollado prueba ser una herramienta clave tanto
para la toma de decisión de aprobación o negación del crédito
como para la agrupación y caracterización de clientes deseables
en el negocio.
*María Juliana Moya.
▪ Aplicación de las técnicas de aprendizaje automático para la detección temprana de antracnosis en hojas de guanábana.

La guanábana es un fruto que ha tomado fuerza en Colombia. Ha tenido


un gran crecimiento en el número de hectáreas que se cultivan en el país.
Sin embargo, la falta de tecnificación de los cultivos genera un gran
desafío, ya que las enfermedades y plagas tienen una gran incidencia en
los cultivos frutales. Debido a esto, ha crecido el número de sistemas
expertos y de sistemas de Machine Learning que detectan los posibles
problemas en el cultivo.
El objetivo del proyecto fue apoyar en la identificación temprana de la
incidencia de la enfermedad de la antracnosis en los cultivos de
guanábana a partir del reconocimiento de imágenes.

Se desarrolló una aplicación móvil que


permite alertar al agricultor sobre la
incidencia de la enfermedad en los cultivos
de guanábana.

*Julián Pardo, David Saavedra.


▪ Lectura de medidores de energía por medio de sistemas de reconocimiento de caracteres con machine learning - redes
neuronales (ocr)

Las empresas de servicios públicos en el contexto de


Latinoamérica hacen su lectura de consumos para
facturación a través de recolectores, luego con más personal
para verificar las imágenes tomadas en el trabajo de campo,
lo que hace demorada, ineficiente y costoso el proceso. La
presente investigación desarrolló una solución para lecturas
de contadores y así optimizar y automatizar estos procesos
por medio de herramientas tecnológicas de bajo costo con el
uso de la inteligencia artificial. En ese sentido, se desarrolló
una aplicación con capacidad de lectura rápida de
dispositivos de consumo de energía por medio de técnicas de
machine learnig. Para ello, en términos técnicos los tres
procesos –objetivos específicos- se prepararon los datos para
el entrenamiento del modelo de lectura, se incrementaron
los datos de entrenamiento para un mejor desempeño –data
augmentation- y se migraron los modelos a dispositivos
móviles con el fin de realizar pruebas en contextos reales.
Próxima sesión.

▪ Otros aspectos de entrenamiento de las redes profundas.

▪ Autocodificadores.

▪ Aspectos de diseño y entrenamiento.

También podría gustarte