0% encontró este documento útil (0 votos)
33 vistas207 páginas

Red Neuronal Artificial y Perceptrones

El documento describe las redes neuronales artificiales, incluyendo su arquitectura de perceptrones multicapas y bases radiales. Explica conceptos clave como las neuronas biológicas vs. artificiales, funciones de activación, algoritmos de aprendizaje profundo y gradiente descendente. También cubre temas como el sobreajuste, validación cruzada y el equilibrio entre sesgo y varianza.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
33 vistas207 páginas

Red Neuronal Artificial y Perceptrones

El documento describe las redes neuronales artificiales, incluyendo su arquitectura de perceptrones multicapas y bases radiales. Explica conceptos clave como las neuronas biológicas vs. artificiales, funciones de activación, algoritmos de aprendizaje profundo y gradiente descendente. También cubre temas como el sobreajuste, validación cruzada y el equilibrio entre sesgo y varianza.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Machine

Learning

Semana 09 : Red Neuronal Artificial (RNA)


© Profesores del Curso – Machine Learning
1
Contenido

• Red Neuronal Artificial


• Arquitectura de Perceptrón Multicapa
• Arquitectura Base Radial

© Profesores del Curso – Machine Learning


2
Red Neuronal Artificial

© Profesores del Curso – Machine Learning


3
Neurona Biológica vs Neurona Artificial

© Profesores del Curso – Machine Learning


4
Perceptrón

© Profesores del Curso – Machine Learning


5
Perceptrón - McCulloch y Pits (1943)

Función de Activación
Función de Activación Bias
No-Lineal

Salida
Ejemplo: Función Sigmoide

Entradas Peso Suma No-Lineal Salida

© Profesores del Curso – Machine Learning


6
Rosenblatt (1956) Algoritmo de Entrenamiento de
Perceptrón

© Profesores del Curso – Machine Learning


7
Perceptrón: Simplificado

Entradas Peso Suma No-Lineal Salida

© Profesores del Curso – Machine Learning


8
Perceptrón: Ejemplo

© Profesores del Curso – Machine Learning


9
Perceptrón: Ejemplo

© Profesores del Curso – Machine Learning


10
Otras funciones de activación del
Perceptrón

© Profesores del Curso – Machine Learning


11
Importancia de la Función de Activación

El propósito de la función de activación es para introducir No- Linealidad dentro del Red Neuronal

¿Qué pasa si queremos construir una red neuronal para distinguir


los puntos verdes de los rojos?

© Profesores del Curso – Machine Learning


12
Importancia de la Función de Activación

El propósito de la función de activación es para introducir No- Linealidad dentro del Red Neuronal

La función de activación produce decisiones La No-Linealidad nos permite ajustar


lineales no importando el tamaño de la Red. funciones complejas arbitrariamente.

© Profesores del Curso – Machine Learning


13
Construyendo Redes Neuronales con Perceptrones

© Profesores del Curso – Machine Learning


14
Red Neuronal de una Capa Oculta o Base Radial

© Profesores del Curso – Machine Learning


15
Redes Perceptron Multicapas

© Profesores del Curso – Machine Learning


16
Algoritmo de Aprendizaje Profundo

• La profundidad en la red incrementa su flexibilidad.


• Pueden usarse redes con millones de parámetros.
• La profundidad evita el overfitting

© Profesores del Curso – Machine Learning


17
Gradiente Descendente

© Profesores del Curso – Machine Learning


18
Optimización de Perdidas
Queremos encontrar los pesos de la Red Neuronal que alcance la perdida mas baja.

1. Se elige al azar un peso inicial (Wo, Wi)


2. Se calcula el gradiente Recordar: Las perdidas es una
3. Toma un pequeño paso en dirección opuesta al
función de los pesos de la Red
gradiente.
4. Se repite hasta que converge Neuronal.
+
++
++
+
+
+

© Profesores del Curso – Machine Learning


19
Gradiente Descendente

Algoritmos

1. Inicializar aleatoriamente los Pesos

2. Hacer un Loop hasta que converge

3. Calcular el gradiente

4. Actualizar los pesos

5. Retorna el peso y actualizar

© Profesores del Curso – Machine Learning


20
Algoritmos de Gradiente Descendente

Algoritmos Implementación TF Referencias

© Profesores del Curso – Machine Learning


21
Red Neuronal en la Practica.
Overfitting

© Profesores del Curso – Machine Learning


22
Entrenamiento de Redes Neuronales

• Elección del conjunto inicial de pesos


• Detención del proceso de aprendizaje (¿cuántas épocas entrenar?)
• Evitar sobreajuste (Overfitting): cross-validation
• Escalamiento de los inputs
• Topología: Número de unidades (neuronas) en la capa oculta
• Trade off entre precisión y capacidad de generalizar
• Mínimo múltiple

© Profesores del Curso – Machine Learning


23
Overfitting
• Modelos con demasiados parámetros consigue un perfecto ajuste intra-
muestral pero poca capacidad predictiva.

• Criterios de información en la bondad de ajuste


• Cross-validation: validar el modelo en un conjunto de datos diferente del que se
ha entrenado.
© Profesores del Curso – Machine Learning
24
No Seleccionar el mejor Modelo sobre los datos de
Entrenamiento

• Dividir la base de datos en tres subconjuntos


• Conjunto de entrenamiento:
• Ajustar todos los modelos

• Conjunto de validación:
• Seleccionar el mejor de modelo

• Conjunto test
• Error real cometido del modelo seleccionado
© Profesores del Curso – Machine Learning
25
Cross-Validation: Remedio Eficaz contra Overfitting

• El comportamiento de la verosimilitud en el conjunto de


entrenamiento no es un buen indicador.
• Usar conjunto de validación de datos independientes para valorar el
comportamiento de un modelo.
• Validación cruzada: dividir los datos en S grupos; usar S-1 para
entrenamiento.
• Aproximar la verosimilitud
1 S
(
CV ( ) =  i =1 L yi , fˆ − Si ( xi ,  )
S
)
1 S
 (yi − yˆ ( xi ,  ) )
− Si 2

i =1
S
© Profesores del Curso – Machine Learning
26
BIAS Variance Trade-off - Otra visión del Overfitting

• Los estimadores polinomiales de alto grado ajustan mejor los datos


pero fluctúan extramuestralmente

© Profesores del Curso – Machine Learning


27
BIAS Variance Trade-Off
• La curva verde representa la
función real, los polinomios de
estimación están en azul.
• Los estimadores polinomiales
con grado mayor ajustan mejor
y presentan menor sesgo, pero
fluctúan mucho de acuerdo a
los datos de entrada.
• Es decir a mayor complejidad
mayor varianza.

© Profesores del Curso – Machine Learning


28
BIAS Variance Trade-Off

© Profesores del Curso – Machine Learning


29
BIAS Variance Trade-Off
• Generación de datos con una función desconocida
y = f ( x ) +  , E (  ) = 0 , Var (  ) =  2
• Aproximación de f(x) con 𝑓መ 𝑥 minimizando el ECM
( )
n
yi − fˆ ( xi )
2

i =1
• Esperanza cuadrado del error=𝐬𝐞𝐬𝐠𝐨𝟐 +varianza

(
E  y − fˆ ( x ) ) ( )
 =  Sesgo fˆ x  2 + Var fˆ x +  2
( ) ( ) ( )
2

  

(
Sesgo fˆ ( x ) ) = E  f ( x ) − fˆ ( x ) 

( ) ( )
2
Var fˆ ( x ) = E  fˆ ( x ) − E fˆ ( x )  = E  fˆ ( x )  − E  fˆ ( x ) 
2 2

   
© Profesores del Curso – Machine Learning
Fernando Fernández 30Rodríguez (ULPGC) 30
La Maldición de la Dimensionalidad
• Cuando aumenta el número de variables se requiere un aumento exponencial del
número de observaciones para conseguir significatividad estadística.

© Profesores del Curso – Machine Learning


31
La Maldición de la Dimensionalidad

• Los datos disponibles se vuelven dispersos al aumentar el número de


variables (dimensión).
• Número medio de objetos en un hipercubo de lado 5
• Intervalo: 20/4, Cuadrado: D=20/4^2=1.25
• Cubo : 20/4^3=0.3125

© Profesores del Curso – Machine Learning


32
La Maldición de la Dimensionalidad
• Capturar fracción V% de volumen de un hipercubo
• Longitud del lado esperado en dimensión 10
L10 (V = 0.01) = 0.63 → 63%
V = Lado p  Lado = V 1/ p
L10 (V = 0.1) = 0.80 → 80%

© Profesores del Curso – Machine Learning


33
Multicolinealidad

• Con muchas observaciones aumenta la potencia de los contrastes de


significación de los parámetros.
• Demasiadas variables explicativas con información redundante conduce a
la multicolinealidad.
Y =  0 + 1 X 1 + ... +  p X p + 
 = ( X´X ) X´y , var (  ) =  2 ( X´X )
−1 −1

• Multicolinealidad se traduce en varianzas muy grandes de los parámetros.


• Pequeñas variaciones en los datos pueden conducir a grandes variaciones
de los coeficientes MCO.
© Profesores del Curso – Machine Learning
34
Evitar la Multicolinealidad

• Reducción del Número de Variables


• Componente Principal
• STEPWISE
• Regularización

© Profesores del Curso – Machine Learning


Fernando Fernández 35Rodríguez (ULPGC) 35
Regularización

• ¿Qué es esto?
• Son técnicas que restringen nuestro problema de optimización
para desalentar modelos complejos.

• ¿Por qué necesitamos de ello?.


• Mejora la generalización de nuestro modelo en datos no
visibles.

© Profesores del Curso – Machine Learning


36
Regularización 1: Dropout (Deserción)

Durante el entrenamiento, establezca aleatoriamente algunas activaciones en 0.


• Por lo general, cae el 50 % de las activaciones en la capa.
• Obliga a la red a no depender de ningún nodo I

© Profesores del Curso – Machine Learning


37
Regularización 2: Early Stopping

Dejar de entrenar antes de que tengamos la oportunidad de sobreajustar

Underfitting Overfitting

Para el
Leyenda:
entrenamiento
Perdidas aquí Testing

Entrenamiento

Iteraciones de Entrenamiento
© Profesores del Curso – Machine Learning
38
Calculo de Capas Ocultas para determinar Neuronios

1 CAPA OCULTA 𝐶𝑎𝑝𝑎 𝑂𝑐𝑢𝑙𝑡𝑎 = 𝑁𝑒𝑢𝑟𝑜𝑛𝑖𝑜𝑠 𝐶𝑎𝑝𝑎 𝑒𝑛𝑡𝑟𝑎𝑑𝑎 𝑥 𝑁𝑒𝑢𝑟𝑜𝑛𝑖𝑜𝑠 𝐶𝑎𝑝𝑎 𝑠𝑎𝑙𝑖𝑑𝑎

3 𝑁𝑒𝑢𝑟𝑜𝑛𝑖𝑜𝑠 𝐶𝑎𝑝𝑎 𝑒𝑛𝑡𝑟𝑎𝑑𝑎


2 CAPAS OCULTA 𝑟𝑎𝑧𝑜𝑛 = 𝑟 =
𝑁𝑒𝑢𝑟𝑜𝑛𝑖𝑜𝑠 𝐶𝑎𝑝𝑎 𝑠𝑎𝑙𝑖𝑑𝑎

𝐶𝑎𝑝𝑎 𝑂𝑐𝑢𝑙𝑡𝑎 1 = 𝑁𝑒𝑢𝑟𝑜𝑛𝑖𝑜𝑠 𝐶𝑎𝑝𝑎 𝑠𝑎𝑙𝑖𝑑𝑎 𝑥 𝑟 2


𝐶𝑎𝑝𝑎 𝑂𝑐𝑢𝑙𝑡𝑎 2 = 𝑁𝑒𝑢𝑟𝑜𝑛𝑖𝑜𝑠 𝐶𝑎𝑝𝑎 𝑠𝑎𝑙𝑖𝑑𝑎 𝑥 𝑟

© Profesores del Curso – Machine Learning


39
Aplicaciones

• Análisis y Procesado de señales


• Reconocimiento de Imágenes
• Control de Procesos
• Filtrado de ruido
• Robótica
• Procesado del Lenguaje
• Diagnósticos médicos
• Otros
© Profesores del Curso – Machine Learning
40
Revisión Final

Practicas de
El Perceptrón Red Neuronal
Entrenamiento
• Construye estructuralmente los • Agrupamiento de • Aprendizaje Adaptativo
Blocks. Perceptrones para formar una • Batches
• Funciones de Activación No red neuronal. • Regularización
Lineal. • Optimización a través de
Backpropagation.

© Profesores del Curso – Machine Learning


41
TALLER

© Profesores del Curso – Machine Learning


42
Machine
Learning

Semana 10 : Arboles de Decisión (Decision Tree)


© Profesores del Curso – Machine Learning
1
Contenido

• Árbol de Decisión
• Curva ROC

© Profesores del Curso – Machine Learning


2
Árbol de Decisión

© Profesores del Curso – Machine Learning


3
¿Qué es un árbol de decisión?
Temperatura
del Cuerpo
• Un árbol de decisión es un árbol Sangre Sangre
en el cual cada nodo representa Caliente Fría
una elección entre un número de
alternativas, y cada nodo de hoja No
Dan a Luz
representa una decisión. Mamíferos

• Es un tipo de algoritmo de
Sí No
aprendizaje supervisado.
No
4 Patas
Mamíferos

No
Mamíferos Mamíferos
© Profesores del Curso – Machine Learning
4
Problemas apropiados de Árbol de Decisión

• Instancias son representadas por pares


atributo-valor.
• La función objetivo tiene valores
atributos discretos.
• Los datos de entrenamiento pueden
contener errores.
• El entrenamiento de datos puede tener
valores de atributos ausentes.

© Profesores del Curso – Machine Learning


5
¿Cómo seleccionar el nodo de decisión?

¿Cuál es le mejor clasificador?

© Profesores del Curso – Machine Learning


6
Construyendo el Árbol de Decisión
Nodo Intermedio:
Atributo
Borde: Valor
Atributo
Valor Valor
Atributo Valor Atributo
Atributo

Valor
Salida
Valor Valor Valor Valor
Atributo Atributo Atributo Atributo

Valor Valor Valor Valor


Salida Salida Salida Salida

Nodo Salida:
Atributo Salida
© Profesores del Curso – Machine Learning
7
Representación del Árbol de Decisión
Conjunción
Disyunción

© Profesores del Curso – Machine Learning


8
Impureza en los Nodos

Podemos concluir:
• Nodos impuros requieren menos información para ser descritos.
• Nodos mas impuros requieren mas información.

La teoría de la información es una métrica para definir este grado de


desorganización en un sistema conocido como teoría de la ENTROPIA.
© Profesores del Curso – Machine Learning
9
Entropía – Es una métrica que homogeneidad de un conjunto de
aprendizaje.

• Entropía es una métrica de incertidumbre acerca de una fuente de


mensajes.
• Dada una colección S, que contiene ejemplos positivos y negativos de
algún concepto objetivo, la entropía de S relativa a esta clasificación
booleana (yes/no) es:

© Profesores del Curso – Machine Learning


10
Entropía
Ganancia de información = Entropía (nodo padre) – [Promedio Entropía(nodo hijo)]
La función entropía relativa para una
clasificación booleana como la proporción
p(+) de varios ejemplos positivos entre 0 y 1.

• Entropía es 0 si todos los miembros de S


pertenecen a la misma clase.

• Entropía es 1 si un igual de números de


ejemplos en la proporción de p(+) y p(-).

• Entropía es entre 0 y 1 si la colección


contiene un desigual de números de
ejemplos en la proporción de p(+) y p(-).
© Profesores del Curso – Machine Learning
11
Principios de División de Nodos

• El nodo raíz se divide para obtener la máxima ganancia de


información.
• El aumento de nodos en el árbol puede provocar un sobreajuste.
• La división continúa hasta que cada una de las hojas alcance la pureza
(en uno de los posibles resultados).
• También se puede realizar la poda, lo que significa la eliminación de
ramas que utilizan características de poca importancia.
• Índice de Gini = Entropía
• Si la distribución es uniforme, la entropía es 1.
© Profesores del Curso – Machine Learning
12
Ejemplo: Árbol de Decisión

• Se clasifican las instancias desde la raíz hacia las hojas, las cuales proveen la
clasificación.

• Cada nodo especifica el test de algún atributo.

• Ejemplo: Si

(Cielo = Soleado, Temperatura = Caliente, Humedad = Alta, Viento = Fuerte)

¿Puedo jugar al tenis?

© Profesores del Curso – Machine Learning


13
Juego Tenis

Cielo

Soleado Nublado Lluvioso

Si
Humedad Viento

Alto Normal Fuerte Débil

No Si No Si No Si No Si

© Profesores del Curso – Machine Learning


14
Juego Tenis

• Disyunción de conjunciones:

(Panorama = Soleado And Humedad = Normal)

Or (Panorama = Nublado)

Or (Panorama = Lluvioso And Viento = Fuerte)

© Profesores del Curso – Machine Learning


15
Juego Tenis
Dia Cielo Temperatura Humedad Viento Juego Tenis

D1 Soleado Caliente Alta Débil No


D2 Soleado Caliente Alta Fuerte No

D3 Nublado Caliente Alta Débil Si

D4 Lluvioso Templado Alta Débil Si

D5 Lluvioso Frio Normal Débil Si

D6 Lluvioso Frio Normal Fuerte No

D7 Nublado Frio Normal Fuerte Si

D8 Soleado Templado Alta Débil No

D9 Soleado Frio Normal Débil Si

D10 Lluvioso Templado Normal Débil Si

D11 Soleado Templado Normal Fuerte Si

D12 Nublado Templado Alta Fuerte Si

D13 Nublado Caliente Normal Débil Si

D14 Lluvioso Templado Alta Fuerte No

© Profesores del Curso – Machine Learning


16
Algoritmos: ID3 (Interactive Dichotomizer Vers. 3)
• Entropía
En general: Entropía(S) = -  i=1,c pi log2 pi

Entropía(S) - p log2 p - pQ log2 pQ

p = proporción de ejemplos positivos - (Si).


pQ = proporción de ejemplos negativos - (No).

S: conjunto de datos actual.

Por ejemplo, en el conjunto de datos Play Tennis: p = 9/14, pQ = 5/14

E(S) = -9/14*Log2(9/14) - 5/14*Log2(5/14) =

E(S) = -0.6429*(-0.6374) – 0.3571*(-1.4584) =

E(S) = 0.9403

© Profesores del Curso – Machine Learning


17
Algoritmos: ID3 (Interactive Dichotomizer Vers. 3)
• Humedad Alta (7)
• Humedad Normal (7)

Si : S1 es el subconjunto de S en el cual
Si : S1 es el subconjunto de S en el cual
Humedad = Alta Humedad = Normal

Entonces: Entonces:
• p = 3/7 (Hay 3 [Si] de 7 [Humedad Alta] ) • p = 6/7 (Hay 6 [Si] de 7 [Humedad Normal] )
• pQ = 4/7 (Hay 4 [No] de 7 [Humedad Alta]) • pQ = 1/7 (Hay 1[No] de 7 [Humedad Normal])

• Entropía(S1) = -3/7 log2 3/7 - 4/7 log2 4/7 = • Entropía(S1) = -6/7 log2 6/7 - 1/7 log2 2/7 =
• Entropía (S1) = 0.9852 • Entropía (S1) = 0.592

© Profesores del Curso – Machine Learning


18
Ganancia de Información
• Mide la reducción esperada de entropía sabiendo el valor del atributo A

Gain(S,A) 
Entropía(S) - vValores(A) (|Sv|/|S|)*Entropía(Sv)
Valores(A): Conjunto de posibles valores del atributo A
Sv: Subconjunto de S en el cual el atributo A tiene el valor v

Ej: Gain(S, Humedad) = 0.9403 - (7/14)*0.985 - (7/14)*0.592

Proporción de Proporción de
humedad alta humedad normal

© Profesores del Curso – Machine Learning


19
Ganancia de Información

S: [9+,5-] S: [9+,5-]
E= 0.9403 E= 0.9403
Humedad Alta Viento Débil
Humedad Normal Viento Fuerte

[3+,4-] [6+,1-] [6+,2-] [3+,3-]


E= 0.985 E= 0.592 E= 0.811 E= 1.0

Gain (S, Humedad) = Gain (S, Viento) =


= 0.9403 - (7/14)*0.985 - (7/14)*0.592 = 0.9403 - (8/14)*0.811 - (6/14)*1.0
= 1.51 = 0.048
© Profesores del Curso – Machine Learning
20
Ganancia de Información

➢ Gain(S, Cielo) = 0.246


➢ Gain(S, Humedad) = 0.151
➢ Gain(S, Viento) = 0.048
➢ Gain(S, Temperatura) = 0.029

 Panorama es el atributo del nodo raíz.

© Profesores del Curso – Machine Learning


21
Árbol Final de Decisión
Cielo

Soleado Nublado Lluvioso

[D3,D7,D12,D13]
[D1,D2,D8,D9,D11] [4+,0-] [D4,D5,D6,D10,D14]
[2+,3-] [3+,2-]

? Si ?

¿Cuál es el atributo que debería ser probado aquí?


Ssoleado =[D1,D2,D8,D9,D11]
Gain[Soleado, Humedad]= 0.970 – (3/5)*0.0 –(2/5) *0.0 =0.970
Gain[Soleado, Temperatura]= 0.970 – (2/5)*0.0 –(2/5) *1.0 –(1/5)*0.0=0.970
Gain[Soleado, Viento]= 0.970 – (2/5)*1.0 –(3/5) *0.918 =0.019
© Profesores del Curso – Machine Learning
22
Aplicaciones

• Administración de Empresas.
• Gestión de Relación con los Clientes.
• Detección de Fraudes.
• Ingeniería.
• Consumo de Energía.
• Diagnostico de Fallas.
• Gestión de Cuidado de la Salud.

© Profesores del Curso – Machine Learning


23
TALLER

© Profesores del Curso – Machine Learning


24
Machine
Learning

Semana 11 : Exploración y Análisis Grafico de Datos


© Profesores del Curso – Machine Learning
1
Contenido

• Análisis exploratorio de datos


• Visualización de Datos

© Profesores del Curso – Machine Learning


2
Análisis Exploratorio de Datos

© Profesores del Curso – Machine Learning


3
Introducción al Análisis Exploratorio de Datos (EDA)

• El análisis exploratorio de datos se refiere al


proceso crítico de realizar investigaciones
iniciales sobre los datos para descubrir,
detectar anomalías, probar hipótesis y
verificar suposiciones con la ayuda de
estadísticas y representaciones gráficas.
• Es una buena práctica comprender los datos
primero y tratar de recopilar la mayor
cantidad de información posible a partir de
ellos.

© Profesores del Curso – Machine Learning


4
Importancia del EDA
• Identificar la mas importantes variables / Atributos del dataset.
• Probar una hipótesis o verifica asunciones relacionadas al
dataset.
• Verificar la calidad de datos además del procesamiento y
limpieza.
• Ofrecer información basada en datos a las partes interesadas
del negocio.
• Verificar que las relaciones esperadas realmente existen en los
datos.
• Para encontrar estructuras inesperadas o conocimientos en los
datos.

© Profesores del Curso – Machine Learning


5
Flujo de Proyecto de Ciencia de Datos

© Profesores del Curso – Machine Learning


6
Proceso de la Ciencia de Datos

© Profesores del Curso – Machine Learning


7
Proceso de la Ciencia de Datos

Hace Obtener los Explorar los


interesante datos datos
Preguntas
¿Cuál es el objetivo científico? ¿Cómo fue la muestra de datos? Graficar datos
¿Qué debería hacer si tienes todos los datos? ¿Qué datos son los mas relevantes? ¿Hay anomalías que descubrir?
¿Qué es lo que deseas predecir o estimar? ¿Los datos son temas privados? ¿Hay patrones que entender?

Modelo de Comunicar y 5 1
datos Visualizar
Resultados
Construir un modelo Repetir el
¿Qué aprendimos de ellos? proceso
Ajustar un modelo
¿Los resultados tienen sentido?
Validar un modelo
¿Puedo decir una historia de ellos?
© Profesores del Curso – Machine Learning
8
Dos Categorías de Datos
• Tipo de data estructurada
• Ejemplo: archivos CSV, archivos Excel,
archivos base de datos (SAP, ORACLE,
etc).

• Tipo de data No estructurada


• Ejemplo: imágenes, video, audio

© Profesores del Curso – Machine Learning


9
Tipos de datos
Ordinaria: Aquellos para Discreto: Aquellos que
los cuales existe una pueden tomar un numero
relación de orden entre las limitado de estudiantes.
categorías.
Ejem: Bajo, Mediano, Ejem: # de estudiantes de
Grande una clase.
Categórica Variables Numérica

Continua: Aquellos que se


cumple que para cualquier
Nominal: Aquellos para los cuales par de valores se puede
existe una asignación puramente encontrar un numero
arbitraria de números o símbolos intermedio.
para cada una de las categorías.
Ejem: Peso de una persona.
Ejem: Color de una prenda de
ropa.

© Profesores del Curso – Machine Learning


10
Paquetes de Python para EDA

© Profesores del Curso – Machine Learning


11
Gráficos en Python

Grafico de Barras Grafico de Pie

© Profesores del Curso – Machine Learning


12
Gráficos en Python

Histograma Grafico de Dispersión

© Profesores del Curso – Machine Learning


13
Gráficos en Python

Mapa de Calor Box Plot

© Profesores del Curso – Machine Learning


14
Gráficos en Python

Grafico Lineal Grafico de Violín

© Profesores del Curso – Machine Learning


15
Gráficos en Python

Grafico de Burbujas Grafico de Dispersión 3D

© Profesores del Curso – Machine Learning


16
Visualización de Datos

[Link]

© Profesores del Curso – Machine Learning


17
Importancia de la Visualización
• Utilizar el sistema visual humano para
extraer la información a partir de los
datos.

• Proporcionar descripción de datos


complejos.

• Identificar las estructuras y los


patrones.

• Ejemplo: Mapa de Minard1861 de la


campaña rusa de Napoleón

© Profesores del Curso – Machine Learning


18
Mapa de Minard 1861-I

© Profesores del Curso – Machine Learning


19
Visión Moderna

© Profesores del Curso – Machine Learning


20
Comunicación en una empresa

Contenido Correcto
+ Momento Correcto
+ Lugar Correcto
+ Forma Correcta =
Decisión = Acción

© Profesores del Curso – Machine Learning


21
Visual Analytics
Información Analítica
Analítica Geoespacial
Interacción
Análisis Científico
Alcance del
Ciencia Perceptual y
Análisis Visual
Cognitiva
Análisis Estadístico

Presentación,
Descubrimiento del
Producción
Gestión Datos & Conocimiento
y Diseminación
Representación del
Conocimiento

Visual Analytics es la ciencia del razonamiento analítico soportado por interfaces visuales interactivas.

© Profesores del Curso – Machine Learning


22
Visual Analytics

Visualización

• Visualización de Información
• Recuperación de Información • Visualización Científica
• Recuperación Datos • Computación Grafica
• Minería de Datos

Data Análisis
Interacción
• Interacción Humano-Computadora
• Psicología Cognitiva
• Percepción

Visual Analytics puede verse como un enfoque integral que combina visualización,
factores humanos y análisis de datos.

© Profesores del Curso – Machine Learning


23
Visual Analytics
Exploración de Data Visual

Interacción a
Usuario
Visualización
Trazado de
Mapas
Transformación

Modelo
Data Construcción Conocimiento
Visualización
Modelo

Minería de
Datos Modelos
Parámetro de
Refinamiento
Análisis Datos Automatizado

Retroalimentación

El proceso de Visual Analytics combina métodos de análisis automáticos y visuales con un acoplamiento estricto a
través de la interacción humana para obtener conocimiento de los datos.
© Profesores del Curso – Machine Learning
24
Ejemplos de datos a integrar

© Profesores del Curso – Machine Learning


25
Business Intelligence e info Discovery

© Profesores del Curso – Machine Learning


26
Business Intelligence e info Discovery

“Probablemente
“Creciente relacionado con
Numero de los diferente datos
Reclamos registrados en un
Cliente…” hospital …”

© Profesores del Curso – Machine Learning


27
TALLER

© Profesores del Curso – Machine Learning


28
Machine
Learning

Semana 12 : Aprendizaje No Supervisado: Clustering


© Profesores del Curso – Machine Learning
1
Contenido

• Aprendizaje No supervisado
• Medidas de Similitud
• Métodos de Agrupamiento
• Clustering Jerárquico
• Taller

© Profesores del Curso – Machine Learning


2
Aprendizaje No Supervisado

© Profesores del Curso – Machine Learning


3
Introducción

• Objetivo
• Encontrar agrupamientos
de tal forma que los
objetos
• de un grupo sean
similares entre si y
diferentes de los
• objetos de otros grupos
[clusters].

© Profesores del Curso – Machine Learning


4
Introducción

• Aprendizaje no supervisado:
• No existen clases predefinidas.
• Los resultados obtenidos dependerán de:
• El algoritmo de agrupamiento seleccionado.
• El conjunto de datos disponible.
• La medida de similitud utilizada para comparar objetos
(usualmente, definida como medida de distancia).

© Profesores del Curso – Machine Learning


5
Clustering

© Profesores del Curso – Machine Learning


6
Medidas de Similitud

© Profesores del Curso – Machine Learning


7
Medidas de Similitud

© Profesores del Curso – Machine Learning


8
Medidas de Similitud

• A la hora de calcular la similitud entre 02 objetos:


• No tienen porque utilizarse todos los atributos disponibles en nuestro
conjunto de datos.
• Hay que tener cuidado con las magnitudes de cada variable.

© Profesores del Curso – Machine Learning


9
Medidas de Similitud

© Profesores del Curso – Machine Learning


10
Medidas de Similitud

© Profesores del Curso – Machine Learning


11
Medidas de Similitud

© Profesores del Curso – Machine Learning


12
Métodos de Agrupamiento

© Profesores del Curso – Machine Learning


13
Métodos de Agrupamiento

Tipos de algoritmos de clustering:


• Agrupamiento por particiones
• k-Means, CLARANS
• Metodos basados en densidad
• DBSCAN
• Clustering jerarquico
• BIRCH, ROCK, CHAMELEON

© Profesores del Curso – Machine Learning


14
Métodos de Agrupamiento

© Profesores del Curso – Machine Learning


15
K-means (Algoritmo de agrupamiento por
particiones)

• Numero de clusters conocido (k).


• Cada cluster tiene asociado un centroide (centro geométrico del
cluster).
• Los puntos se asignan al cluster cuyo centroide este mas cerca
(utilizando cualquier métrica de distancia).
• Iterativamente, se van actualizando los centroides en función de
las asignaciones de puntos a clusters, hasta que los centroides
dejen de cambiar.

© Profesores del Curso – Machine Learning


16
K-means

© Profesores del Curso – Machine Learning


17
K-means

A1, A4 y A7

© Profesores del Curso – Machine Learning


18
K-means

© Profesores del Curso – Machine Learning


19
K-means

© Profesores del Curso – Machine Learning


20
Evaluación de Resultados

© Profesores del Curso – Machine Learning


21
Evaluación de Resultados

© Profesores del Curso – Machine Learning


22
Evaluación de Resultados

Cuando la distancia utilizada es la distancia euclidea:

1. El uso de centroides no influye al medir la cohesion:

2. Minimizar cohesión y maximizar separación son equivalentes.

© Profesores del Curso – Machine Learning


23
Evaluación de Resultados

• Así pues, cuando se usa la distancia euclidea, SSE es una


buena medida del grado de ajuste (cohesión y separación) de
los centroides hallados.

• Por otro lado, ya sabíamos que, en cada iteracion del algoritmo


de las k-medias, se maximizaba SSE al calcular los centroides
usando la media aritmética.
• .Garantiza lo anterior que los centroides finales sean los que
minimicen SSE globalmente? NO
© Profesores del Curso – Machine Learning
24
Evaluación de Resultados

• Cuando usamos la distancia euclídea, el centroide determinado


en cada iteración por el vector de medias garantiza la mejor
solución con respecto a SSE, pero considerando:
• un valor de k fijo, y
• los centroides dados por la iteración anterior.
• La solución final no sera la optima:
• El algoritmo de las k medias no garantiza que los centroides
finales obtenidos sean los que minimizan globalmente la
función objetivo SSE.

© Profesores del Curso – Machine Learning


25
Evaluación de Resultados

Matriz de similitud
• Ordenamos los datos en la matriz de similitud con respecto a los
clusters en los que quedan los datos e inspeccionamos
visualmente…

© Profesores del Curso – Machine Learning


26
Evaluación de Resultados

Problema
Incluso en datos aleatorios, si nos
empenamos, encontramos clusters:
DBSCAN (arriba) y k-Means (abajo)

© Profesores del Curso – Machine Learning


27
Clustering Jerárquico

© Profesores del Curso – Machine Learning


28
Clustering Jerárquico

© Profesores del Curso – Machine Learning


29
Clustering Jerárquico

© Profesores del Curso – Machine Learning


30
Clustering Jerárquico

© Profesores del Curso – Machine Learning


31
Clustering Jerárquico

Dos tipos de técnicas de clustering jerárquico


• Técnicas aglomerativas
• Comenzar con cada caso como cluster individual.
• En cada paso, combinar el par de clusters mas cercano hasta que
solo quede uno (o k).
• Técnicas divisivas
• Comenzar con un único cluster que englobe todos los casos de
nuestro conjunto de datos.
• En cada paso, partir un cluster hasta que cada cluster contenga un
unico caso (o queden k clusters).

© Profesores del Curso – Machine Learning


32
Clustering Jerárquico

El dendograma nos puede ayudar a determinar el numero adecuado de agrupamientos (aunque


normalmente no será tan facil).
© Profesores del Curso – Machine Learning
33
Clustering Jerárquico

© Profesores del Curso – Machine Learning


34
Clustering Jerárquico

© Profesores del Curso – Machine Learning


35
Clustering Jerárquico

© Profesores del Curso – Machine Learning


36
Clustering Jerárquico

© Profesores del Curso – Machine Learning


37
Clustering Jerárquico

© Profesores del Curso – Machine Learning


38
Clustering Jerárquico

© Profesores del Curso – Machine Learning


39
Clustering Jerárquico

© Profesores del Curso – Machine Learning


40
Clustering Jerárquico

© Profesores del Curso – Machine Learning


41
Clustering Jerárquico

© Profesores del Curso – Machine Learning


42
Aplicaciones

• Aplicaciones • También se usa como paso previo a


• Reconocimiento de formas. otras técnicas de Minería de Datos:
• Mapas temáticos (GIS) • Exploración de datos
• Marketing: Segmentación de (segmentación & outliers)
clientes • Preprocesamiento ([Link].
• Clasificación de documentos reducción de datos)
• Análisis de web logs
(patrones de acceso
similares)
• …

© Profesores del Curso – Machine Learning


43
TALLER

© Profesores del Curso – Machine Learning


44
Machine
Learning

Semana 13 : Bosque Aleatorio (Random Forest)


© Profesores del Curso – Machine Learning
1
Contenido

• Árbol de Decisión
• Curva ROC

© Profesores del Curso – Machine Learning


2
Bosque Aleatorio (Random Forest)

© Profesores del Curso – Machine Learning


3
Definición

• El bosque aleatorio (o bosques aleatorios) es un clasificador de


conjunto que consta de muchos árboles de decisión y genera la clase
que es el modo de salida de la clase por árboles individuales.
• El término proviene de bosques de decisión aleatoria que fue
propuesto por primera vez por Tin Kam Ho de Bell Labs en 1995.
• El método combina la idea de “Bagging" de Breiman y la selección
aleatoria de características.

© Profesores del Curso – Machine Learning


4
Ventajas y Desventajas de RANDOM FOREST
Ventajas: Desventajas:
• Desempeño competitivo. • A través de la precisión muchas veces no puede
• Produce un clasificador de alta precisión para competir con algoritmos avanzandos de Boosting.
muchos conjunto de datos. • Puede llegar a ser lentos en grande conjunto de
• Puede manejar miles de variables de entrada sin datos.
eliminarlas.

• Da estimaciones de qué variables son importantes en


la clasificación.

• Genera una estimación interna no sesgada del error


de generalización a medida que avanza la
construcción del bosque.

© Profesores del Curso – Machine Learning


5
Partición binaria

Objetivo: Minimizar la disimilitud de los Nodos terminales


© Profesores del Curso – Machine Learning
6
Partición binaria
Atributo Numérico: División numérica para
minimizar la función de pérdida.

Atributo Categórico: División categórica para


minimizar la función de pérdida.

Atributo Multiclase: Ordena las entidades de clases según la


variable objetivo media (regresión) o la proporción de clase
(clasificación) y elije dividir para minimizar la función de
pérdida.
© Profesores del Curso – Machine Learning
7
Tree Depth = 1 (Decision Stump)

© Profesores del Curso – Machine Learning


8
Tree Depth = 3

© Profesores del Curso – Machine Learning


9
Tree Depth = 20 (Complex Tree)

© Profesores del Curso – Machine Learning


10
Efectos de cambiar profundidad del Árbol

© Profesores del Curso – Machine Learning


11
¿Como funciona el Random Forest?
• Un Random Forest es un conjunto (ensamble)
de arboles de decisión combinados con
bagging.
• Al usar bagging, lo que en realidad está
pasando, es que distintos árboles ven distintas
porciones de los datos.
• Ningún árbol ve todos los datos de
entrenamiento.
• Esto hace que cada árbol se entrene con
distintas muestras de datos para un mismo
problema.
• De esta forma, al combinar sus resultados,
unos errores se compensan con otros y
tenemos una predicción que generaliza mejor.

© Profesores del Curso – Machine Learning


12
Bagging : Bootstrap Aggregating

1. Registros de muestra con reemplazo


("bootstrap" data entrenamiento)
Muestreo es el proceso de seleccionar un subconjunto de
elementos de una amplia colección de elementos.
Bootstrap = Muestreo con reemplazo. Significa que un punto
de datos en una muestra extraída también puede reaparecer
en futuras muestras extraídas.

2. Fit un arbol mas grande es reemplazado


en el data set

3. Average predicciones

© Profesores del Curso – Machine Learning


13
Bagging : Bootstrap Aggregating
A medida que agregamos más árboles Nuestro error de predicción promedio se reduce

© Profesores del Curso – Machine Learning


14
Random Forest
• El bosque aleatorio se identifica como una
colección de árboles de decisión. Cada árbol
estima una clasificación, y esto se llama un “voto”.
Idealmente, consideramos cada voto de cada
árbol y elegimos la clasificación más votada
(Mayoría-Votación).
• Random Forest sigue el mismo proceso de bagging
que los árboles de decisión, pero cada vez que se
realiza una división, la búsqueda de la variable
dividida se limita a un subconjunto aleatorio de
“m” de los “p” atributos (variables o atributos),
también conocida como aleatorización de
atributos divididos:
• Classification trees: m = √p
• Regression trees: m = p/3
• m se conoce comúnmente como mtry
• Los bosques aleatorios producen muchos árboles
únicos.
© Profesores del Curso – Machine Learning
15
Bagging vs Random Forest

• El Bagging introduce aleatoriedad en las


filas de los datos.
• El bosque aleatorio introduce aleatoriedad
en las filas y columnas de los datos.
• Combinado, esto proporciona un conjunto
más diverso de árboles que casi siempre
reduce nuestro error de predicción.

Aleatorización de atributo dividido: error de


predicción.
© Profesores del Curso – Machine Learning
16
Random Forest : Observaciones Out-of-Bag (OOB
• Para un “N” lo suficientemente grande,
en promedio el 63,21% de los registros
originales terminan en cualquier
muestra de “arranque” (Bootstrap).
• Aproximadamente el 36,79% de las
observaciones no se utilizan en la
construcción de un árbol en particular.
• Estas observaciones se consideran out-
of-bag (OBB) y se pueden usar para una
evaluación eficiente del rendimiento
del modelo (validación cruzada no
estructurada, pero gratuita).

© Profesores del Curso – Machine Learning


17
Bagging
• Bagging o Bootstrap es una técnica usada para reducir la varianza de las predicciones a
través de la combinación de los resultados de varios clasificadores, cada uno de ellos
modelados con diferentes subconjuntos tomados de la misma población.

© Profesores del Curso – Machine Learning


18
Bias – Compensación Varianza

© Profesores del Curso – Machine Learning


19
Bagging
Crear la muestra de bootstrap
Desde la data de entrenamiento

M Atributos
N Ejemplos

....…

© Profesores del Curso – Machine Learning


20
Random Forest Clasificación
Construct a decision tree

M features
N examples

....…

© Profesores del Curso – Machine Learning


21
Random Forest Clasificación

M Atributos
N ejemplos

Toma la
Mayoria
de los

....…
....…
Votos

© Profesores del Curso – Machine Learning


22
Out of bag de la muestra y out of bag del error
• El proceso de muestreo de los datos con reemplazo se denomina bootstrap.
• Un tercio de los datos no se usan para el entrenamiento y pueden ser usados para test.
• Este conjunto se denomina out of bag (OOB )samples.

• El error estimado en estos out of bag samples se conoce como out of bag error (OOB error)
• Usar este conjunto de test (OOB) es tan preciso como si se usara un conjunto de test del mismo tamaño
que el de entrenamiento.
• Sería posible no usar un conjunto de test adicional.
© Profesores del Curso – Machine Learning
23
Entrena y Valida
Random Forest

© Profesores del Curso – Machine Learning


24
TALLER

© Profesores del Curso – Machine Learning


25
Machine
Learning

Semana 14 : Algoritmos Genéticos


© Profesores del Curso – Machine Learning
1
Contenido

• Introducción
• Problema

© Profesores del Curso – Machine Learning


2
Introducción

© Profesores del Curso – Machine Learning


3
Introducción

• Propuestos por Holland, mediados 70,


computación evolutiva.
• Popularizados por Goldberg, mediados
80, solución de problemas del mundo
real.
• Inspirados en el modelo de evolución
biológica sexual
• Aplicables a problemas de búsqueda y
optimización complejos

© Profesores del Curso – Machine Learning


4
Aproximación a la evolución biológica

• Método de búsqueda y
optimización inspirados en la
evolución biológica.
• Posibles soluciones: población.
• Selección de los individuos más
aptos.
• Generación de nuevos
candidatos: reproducción sexual.
• Recombinación (cruce)
• Mutación
© Profesores del Curso – Machine Learning
5
Esquema básico Estrategias Optimizadora
función ALGORITMO-GENÉTICO(poblaciónInicial) de la Naturaleza
returns una población
entrada: poblaciónInicial, una población o SELECCIÓN NATURAL: supervivencia de los fuertes (Darwin)
static: población(.), un array de población
begin o REPRODUCCIÓN SEXUAL: genética Mendeliana
t0
o DIVERSIDAD: recombinación al azar y mutación
población(t)  poblaciónInicial
EVALUAR(población(t))
➢ ALGORITMOS GENÉTICOS: Técnica de optimización basada en
while (not condiciónTerminación) do
la selección natural y la adaptación de los seres vivos al medio
t  t +1
ambiente
población1  SELECCIONAR(población(t-1))
• HOLLAND (1975) : “Adaptation in Natural and Artificial
población2  CRUZAR(población1) Systems”
población3  MUTAR(población2)
• KOZA (1992) : “Genetic Programing. On the programming
población(t)  REMPLAZAR(población3) of computers by means of Natural Selection”.
end
return(población(t))
end
© Profesores del Curso – Machine Learning
6
Codificación

• Individuo: cromosoma o Cromosomas : representan posibles soluciones

• Cromosoma: cadena de o Genes: representan las variables a optimizar


caracteres • Opt F(x,y,z)
• En principio, cualquier • 0≤x≤6 , 0≤y≤17 , 0≤z≤30
representación es válida
• Codificación óptima: alfabeto • Ejemplo de solución en código binario: ( 5 , 9 , 18)
binario (teorema de los • 5=1·(22) + 0 ·(21) + 1 ·(20)
esquemas) • 9=1·(23 ) + 0 ·(22 ) + 0 ·(21 ) + 1 ·(20 )
• 18=1·(24 ) + 0 ·(23 ) + 0 ·(22 ) + 1 ·(21 ) + 0 ·(20 )
• Codificación habitual: cadena • 1 0 1 || 1 0 0 1 || 1 0 0 1 0
de bits

© Profesores del Curso – Machine Learning


7
Selección Natural

• Partimos de una población inicial de cromosomas elegidos al azar.


• Eliminamos los peor dotados

© Profesores del Curso – Machine Learning


8
Diversidad Genética
1
1
1
0
0
0
1 0
1 0
1 0

1 0 0
1 0 0
1 0 0

1
1
1

RECOMBINACIÓN
• Intercambio de información que permite:
• Diversidad genética.
• Intercambio de información.
• Adaptación al medio ambiente.

© Profesores del Curso – Machine Learning


9
Mutación

o Introduce shocks aleatorios en los cromosomas


o Garantiza la diversidad de la Población.
• Explora cada zona del espacio de búsqueda
• Evita convergencia hacia óptimos locales

Gen 1 Gen 2 1010101 …. Gen k

• Mutación en el GEN3 : 1 0 1 0 1 0 1 1010001

• Puede dañar las buenas estructuras


• Considerar una probabilidad de mutación baja.
© Profesores del Curso – Machine Learning
10
Algoritmos Genéticos con Parámetros continuos

cromosoma =  p1 , p2 ,......, pN  pi , i = 1....N decimal

Recombinación:
padre =  p p1 , p p 2 ,..... p p ....., p pN  

madre =  pm1 , pm 2 ,..... pm ....., pmN 
pnew 1 =  p p + (1 −  ) pm 
 (    0,1)
pnew 2 = (1 −  ) p p +  pm 

descendiente1 =  p p1 , p p 2 ,..... pnew1 ....., p pN 


descendiente2 =  pm1 , pm 2 ,..... pnew2 ....., pmN 

© Profesores del Curso – Machine Learning


11
Definir
parámetros

Población inicial

Estructura
de cromosomas

Secuencial de Formar ranking cromosomas

un Algoritmo Seleccionar parejas de

Genético los mejores cromosomas

Recombinar

Mutaciones

Nueva población de los


mejores y sus
descendientes

Criterio convergencia

STOP

© Profesores del Curso – Machine Learning


12
Diferencias entre Algoritmos Genéticos y los
métodos tradicionales de búsqueda

1. Trabajan con la codificación del conjunto de parámetros, no con los


parámetros.

2. Buscan a partir de una población de puntos, no un punto único.

3. Usan información de una función objetivo (o más), no derivadas u


otro conocimiento adicional.

4. Usan reglas de transición probabilísticas, no reglas determinísticas.

© Profesores del Curso – Machine Learning


13
Problema

© Profesores del Curso – Machine Learning


14
Problema
Usar un algoritmo genético para maximizar la función f(x) = x2 en el
rango x ={0, ..., 31}. (Supongamos que x es entero). La función se
muestra a continuación:

© Profesores del Curso – Machine Learning


15
Generación de la población inicial
Para usar un algoritmo genético primero debemos
codificar las variables de decisión de nuestro CADENA
POBLACION
VALOR
INICIAL
NUMERO DE X
problema en un conjunto de cadenas de longitud (GENERADA
AL AZAR)

finita. Hacemos esto codificando la variable ‘x’ en


un conjunto de 5 bits. 01101
11000
01000
Ejemplo de solución en código binario: 10011
13=0·(24 ) + 1 ·(23 ) + 1 ·(22 ) + 0 ·(21 ) + 1 ·(20 )
24=1·(24 ) + 1 ·(23 ) + 0 ·(22 ) + 0 ·(21 ) + 0 ·(20 )
8=0·(24 ) + 1 ·(23 ) + 0 ·(22 ) + 0 ·(21 ) + 0 ·(20 )
19=1·(24 ) + 0 ·(23 ) + 0 ·(22 ) + 1 ·(21 ) + 1 ·(20 )
01101 || 11000 || 01000 || 10011
© Profesores del Curso – Machine Learning
16
Cálculo de f(x)

POBLACION
CADENA INICIAL VALOR f(x)=x2
NUMERO (GENERADA DE X
AL AZAR)
1 01101 13 169
2 11000 24 576
3 01000 8 64
4 10011 19 361
VALORES DE
APTITUD O
ADAPTACION

SUMA = 1170

© Profesores del Curso – Machine Learning


17
Cálculo del valor de ajuste

Luego debemos maximizar f(x).


Definimos: valor de aptitud = f(x) = x2
El valor de aptitud, también llamado función objetivo, en este caso es uno
solo. En la realidad, normalmente optimizamos una función multiobjetivo, o
un vector de funciones objetivo.
Para poder realizar la reproducción debemos calcular los valores de
probabilidad de selección.

Probabilidad selección =

© Profesores del Curso – Machine Learning


18
Cálculos resultantes

POBLACION VALORES CANTIDAD REAL


CADENA INICIAL VALOR DE PROBAB. CANTIDAD
(usando Roulette
SELECC. ESPERADA
NUMERO (GENERADA DE X APTITUD fi/f fi /fMEDIO Wheel)
AL AZAR) f(x)=x2

1 01101 13 169 0.14 0.58 1


2 11000 24 576 0.49 1.97 2
3 01000 8 64 0.06 0.22 0
4 10011 19 361 0.31 1.23 1
1170 1 4 4
Σf =
fMedio = 293 0.25 1 1
MAXIMO = 576 0.49 1.97 2

© Profesores del Curso – Machine Learning


19
Reproducción

La siguiente generación de cadenas se produce aplicando primeramente


el operador reproducción.
Seleccionamos las cadenas de la generación actual que habrán de ser
copiadas en el pool de la generación próxima, usando reproducción como
proceso de multiplicación. Esto producirá un pool de cadenas con altos
valores de aptitud.
Seleccionamos el pool de la próxima generación haciendo girar cuatro
veces la rueda de ruleta con zonas asignadas en proporción a la aptitud de
cada cadena.
© Profesores del Curso – Machine Learning
20
Entrecruzamiento
Las cadenas del pool de apareamiento se aparearán al aplicar este
operador.
Un procedimiento posible es:
▪ Las cadenas se aparean al azar.
▪ Las parejas de cadenas apareadas se entrecruzan produciendo
generalmente nuevas cadenas.
Usando un método al azar de selección de parejas seleccionamos: cadena
4 entrecruza con cadena 2 y cadena 2 entrecruza con cadena 4.
Ahora debemos seleccionar la posición de bit k donde tendrá lugar el
entrecruzamiento. k se obtiene al azar.
© Profesores del Curso – Machine Learning
21
Tabla de pares y entrecruzamiento

VALORES DE
POOL DE PAREJA POSICION DEL VALOR
NUEVA APTITUD
APAREAMIENTO SELECCIONADA ENTRECRUZAM. DE X
POBLACION
LUEGO DEL AL AZAR (ELEGIDO AL
ENTRECRUZAM. AZAR) f(x)=x2

0110Z1 2 4 01100 12 144


1100Z0 2 4 11001 25 625
11Z000 4 2 11011 27 729
10Z011 4 2 10000 16 256
Z = posición. Suma = 1754
de entrecruz.
Max = 729

© Profesores del Curso – Machine Learning


22
Nota

Ya podemos ver que luego de una iteración parcial o en medio del camino
en la producción de una generación hemos incrementado la suma de las
funciones objetivo de 1170 a 1754, y el valor máximo se ha incrementado
de 576 a 729.

Hemos seleccionado un mejor conjunto de valores x, que provee una


aptitud maximizada f(x) = x2 mayor que nuestras 4 selecciones iniciales.

© Profesores del Curso – Machine Learning


23
Mutación

El último operador, MUTACION, se aplica bit a bit. Asumamos que la


probabilidad de mutación en esta prueba es

P(mut) = 0.001.

Con 20 bits en las cuatro cadenas esperamos que muten:

20 * 0.001 = 0.02 bits

© Profesores del Curso – Machine Learning


24
Mutación

Durante una generación se espera entonces que 0.02 bits sufran


mutación.

La simulación de este proceso indica que ningún bit sufre mutación con
este valor de probabilidad, por lo menos en esta prueba. Normalmente,
esto se hubiera llevado a cabo en un programa que usa un generador de
números al azar, y puede haber una posibilidad.

Como resultado no habrá cambio de bits de 0 a 1 o vice versa durante


esta generación.
© Profesores del Curso – Machine Learning
25
Mutación

Nota: Una vez que todo el proceso:

• Reproducción
• Entrecruzamiento
• Mutación

se ha completado para producir una nueva generación, podemos


calcular nuestros nuevos valores objetivo como se mostró
previamente en la tabla de entrecruzamiento.

© Profesores del Curso – Machine Learning


26
Principales Ventajas de los Algoritmos Genéticos

• No requieren ni continuidad ni derivabilidad de la función objetivo.


• Optimizan tanto funciones de variable continuas o discretas.
• Es posible optimizar funciones de un gran número de variables.
• Al tratarse de un proceso de optimización aleatorio (recombinación y mutación). El
algoritmo puede salir de los óptimos locales.
• Pueden optimizar funciones muy complejas.
• Los algoritmos genéticos pueden trabajar con datos generados numéricamente,
datos experimentales o funciones analíticas.
• En el peor caso proporciona una colección de soluciones sub-óptimas.
• Permite el tratamiento multiobjetivo con facilidad.
© Profesores del Curso – Machine Learning
27
TALLER

© Profesores del Curso – Machine Learning


28
Machine
Learning

Semana 15 : Procesamiento de Lenguaje Natural


© Profesores del Curso – Machine Learning
1
Contenido

• Árbol de Decisión
• Curva ROC

© Profesores del Curso – Machine Learning


2
Métodos de Agrupamiento

© Profesores del Curso – Machine Learning


3
Introducción

• Disciplina de la inteligencia artificial que se ocupa de la formulación e


investigación de mecanismos computacionales para comunicación
entre personas y maquinas mediante el uso de lenguajes naturales.
• Los lenguajes naturales son utilizados en la comunicación humana, ya
sean escritos, hablados o signados.

© Profesores del Curso – Machine Learning


4
Aplicación del Procesamiento Lenguaje
Natural
• Comprensión del lenguaje
• Recuperación de la información
• Extracción de la información
• Búsqueda de respuestas
• Generación de discurso
• Traducción automática
• Reconstrucción del discurso

© Profesores del Curso – Machine Learning


5
Análisis del Lenguaje

Análisis de palabras para


Extracción del significado o Análisis extraer raíces, rasgos flexivos,
posibles significado de las Morfológico unidades léxicas compuestas y
frases.
otros fenómenos

Análisis Análisis
Pragmatico
LENGUAJE Sintatico

© Profesores del Curso – Machine Learning


6
Técnicas de Análisis de Lenguaje

• Las distintas frases del análisis del lenguaje se afrontan con las
siguientes técnicas:
• Técnicas Lingüísticas formales: Se basan en el desarrollo de reglas
estructurales que se aplican a la frase de análisis del lenguaje.
• Técnicas probabilísticas: Se basan en el estudio en base a un conjunto
de textos de referencia (CORPUS) de característica de tipo
probabilístico asociadas a distintas fases del análisis del lenguaje.

© Profesores del Curso – Machine Learning


7
Ejemplo: Gramática de Contexto

© Profesores del Curso – Machine Learning


8
TALLER

© Profesores del Curso – Machine Learning


9

También podría gustarte