0% encontró este documento útil (0 votos)
62 vistas68 páginas

Aprendizaje Supervisado y No Supervisado

Cargado por

Luis fiat lux
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)
62 vistas68 páginas

Aprendizaje Supervisado y No Supervisado

Cargado por

Luis fiat lux
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

CURSOS PIT

Fundamentos
de Inteligencia
Artificial
CURSOS PIT

PhD Wester Edison Zela Moraya


PhD en Computer Science – Inteligencia Artificial por la Universidad
Politécnica de Madrid. Master en Ingeniería de Software por la
Universidad de Oxford. Master en Análisis Financiero y Económico por
la Universidad Complutense de Madrid. Ingeniero de Sistemas de la
UNI.
Amplia experiencia profesional en Transformación Digital, Machine
Learning, RPAs, Data Science, Metodologías Ágiles, Microservices,
gestión económica de proyectos. Docente de Inteligencia Artificial en la
Universidad Nacional de Ingeniería.
Director de TI en empresas en Peru y Europa
Consultor de IA y Datos en la SGTD en la PCM
Miembro del AI Connect Program (US Department y Atlantic Council)
Creador de [Link]

2
Temas – Sesion 2
• Tipos de Aprendizaje
–Aprendizaje Supervisado
–Aprendizaje No Supervisado
• CRISP-DM para proyectos de Analítica
Machine Learning
• Un campo de estudio que brinda a las computadoras la
capacidad de aprender sin ser programadas explícitamente.
• Se dice que un programa de computadora aprende de la
experiencia E con respecto a alguna clase de tareas T y
medida de desempeño P, si su desempeño en las tareas de
T, medido por P, mejora con la experiencia E (Tom M.
Mitchell).
• El aprendizaje automático se encuentra en la intersección de
la informática, la ingeniería y la estadística y, a menudo,
aparece en otras disciplinas.
• Se puede aplicar a muchos campos, desde la política hasta la
Medicina.
Aprendizaje en Machine Learning

• Aprendizaje Supervisado
Los agentes tienen acceso a ejemplos que necesitan aprender. Los agentes pueden
aprender de los errores entre sus decisiones y las decisiones correctas.
• Aprendizaje No Supervisado
– En el aprendizaje no supervisado, no hay una etiqueta ni un valor objetivo para los datos.
– El problema del aprendizaje no supervisado es intentar encontrar una estructura oculta
en datos sin etiquetar
Aprendizaje Supervisado

• Es la tarea de aprendizaje automático de inferir una función a partir de datos de


entrenamiento etiquetados. Le decimos al algoritmo qué predecir.
• Datos de entrenamiento:
– El conjunto de entrenamiento es un conjunto de ejemplos de entrenamiento para
entrenar algoritmos de aprendizaje automático.
– Se conocen las variables objetivo
– Aprende encontrando alguna relación entre las características y la variable objetivo.
• Datos de prueba
– Datos utilizados para validar el algoritmo
Aprendizaje Supervisado
Algunas tareas del aprendizaje supervisado:
• Clasificación: predice a qué clase debe pertenecer una instancia de datos.
• Regresión: es la predicción de un valor numérico.
Aprendizaje Supervisado

Clasificación de especies de aves basada en cuatro características


Algoritmos de Aprendizaje Supervisado
Algunos algoritmos en el aprendizaje supervisado:
–Arboles de Decisión
–Random Forest
–Máquinas de vectores de soporte (SVM)
–Redes bayesianas
–Red neuronal artificial (Simple Perceptron, Multilayer Perceptron)
–Aprendizaje profundo (Deep Learning)
Aprendizaje No Supervisado
• En el aprendizaje no supervisado, no hay una etiqueta ni un valor objetivo para los
datos.
• El problema del aprendizaje no supervisado es intentar encontrar una estructura
oculta en datos sin etiquetar.
• No hay señal de error o de recompensa para evaluar una posible solución.
• Algunas tareas:
– Agrupación: una tarea en la que agrupamos elementos similares o dividimos un gran
conjunto de datos en conjuntos de datos más pequeños de cierta similitud
Aprendizaje No Supervisado - Agrupamiento

Algoritmos:
• K-Means Clustering
Supervisado o No Supervisado?
• La cantidad de contaminación en ciertos lugares, bajo diferentes condiciones climáticas,
diferentes momentos de los días y diferentes días de la semana.
• Predecir la concentración de contaminación del aire en una nueva ubicación con clima
conocido y fecha y hora conocidas
Supervisado o No Supervisado?

Detección de comunidades en redes sociales


Tuvimos que idear un algoritmo que pudiera dividir la
red social en grupos
Este algoritmo debería ampliarse para gráficos que
contienen millones de nodos
La medida de calidad debe ser tal que ayude al
análisis de la propagación de enfermedades en la red.
Vector de Características

- Un vector de observaciones(medidas).
- Es un punto en el espacio
 x1 
x 
 2 = x

 
 xn 
¿Que es una característica?

- Característica
- Una característica es cualquier aspecto distintivo, calidad o característica
- Las características pueden ser simbólicas (color) o numéricas (altura)
- Definiciones
- La combinación de características es representada como un vector de columna de d dimensiones
llamada vector de características
- El espacio d dimensional definida por el vector es llamado espacio de características
- Los objetos son representados como puntos en el espacio de características. El grafico es llamado
gráfico de dispersión.
Espacio de Características
“Buena” caracteristica
• La calidad de un vector de características está
relacionada con su capacidad para discriminar
ejemplos de diferentes clases.
• Los ejemplos de la misma clase deben tener
valores de características similares
• Los ejemplos de diferentes clases tienen
diferentes valores de característica
Paradigma de Reconocimiento de
Patrones
Un Ejemplo
• “Clasificación de pescado entrante en una
cinta transportadora según la especie
mediante detección óptica”

Lubina
Especie
Salmon

19
Analisis del Problema

– Configure una cámara y tome algunas imágenes de muestra para extraer características

• Longitud
• Ligereza
• Ancho
• Número y forma de las aletas.
• Posición de la boca, etc…

– ¡Este es el conjunto de todas las características sugeridas para explorar y usar en nuestro
clasificador!

20
Pre- procesamiento
Use una operación de segmentación para aislar peces entre sí y del fondo
La información de un solo pez se envía a un extractor de características cuyo propósito
es reducir los datos midiendo ciertas características.
Las características se pasan a un clasificador (targeting)

21
Clasificación

– Seleccione la longitud del pez como posible


característica para la discriminación
24
¡La longitud es una característica pobre sola!

Selecciona la luminosidad como posible característica.

25
26
• Límite de decisión de umbral y relación de costo
• Mueva nuestro límite de decisión hacia valores más pequeños de ligereza para
minimizar el costo (¡reduzca la cantidad de lubinas que se clasifican como
salmón!)

Teoria de decisión

27
• Adopta la luminicidad y añade el ancho del pez.

Fish xT = [x1, x2]

luminucidad Ancho

28
29
• Podríamos agregar otras características que no están correlacionadas con las
que ya tenemos. Se debe tomar la precaución de no reducir el rendimiento
agregando tales "características ruidosas"

• Idealmente, el mejor límite de decisión debería ser aquel que proporcione un


rendimiento óptimo, como en la siguiente figura:

30
31
• Sin embargo, nuestra satisfacción es prematura porque el objetivo
central de diseñar un clasificador es clasificar correctamente la entrada
nueva.

Problema de generalización

32
33
CRISP-DM for Machine Learning Projects

[Link] understanding: Que necesita el negocio?


[Link] understanding: Que datos necesitamos/Tenemos?
Estan limpios?
[Link] preparation: Como organizamos la Data para el
modelamiento?
[Link]: Que técnicas de modelado deberiamos de
aplicar?
[Link]: Que modelos alcanzan los objetivos del
negocio?
[Link]: Como los stakeholders acceden a los
resultados?
[Link] Management: Validar el desempeño del modelo,
monitorear datos de entrada, interpretar resultados
CRISP-DM para Proyectos de Machine Learning
Tareas Generales Para el Modelo Mejorado en CRISP-DM
Proceso en Proyectos de Datos/ML

1. Comprensión del negocio: asegurarse de que todas las partes interesadas entiendan el qué,
cómo y por qué del proyecto.
2. Comprensión de datos: el objetivo es obtener una comprensión profunda de los datos.
3. Preparación de datos: incluye la transformación de los datos de un formulario sin procesar en
datos que se pueden usar directamente en sus modelos
4. Modelado de datos: es ahora cuando intenta obtener los conocimientos o hacer las predicciones
establecidas en el estatuto de su proyecto.
5. Evaluación: presentación de sus resultados y automatización del análisis.
6. Despliegue: Plan de Despliegue, Monitoreo y Mantenimiento.
Paso 1: Comprensión del Negocio
• Un proyecto comienza por comprender el qué, el por qué y el cómo de su proyecto.
• ¿Qué espera la empresa que usted haga? ¿Y por qué la gerencia le da tanto valor a su
investigación?. ¿Es parte de un panorama estratégico mayor o un proyecto que surge
de una oportunidad que alguien detectó?
• El resultado: un objetivo de investigación claro, una buena comprensión del
contexto, entregables bien definidos y un plan de acción con un cronograma.
Paso 1: Comprensión del Negocio

• Dedique tiempo a comprender los objetivos y el contexto de su investigación:


– El resultado es el objetivo de la investigación que establece el propósito de su tarea de
manera clara y enfocada. Comprender los objetivos comerciales y el contexto es fundamental
para el éxito del proyecto.
• Crear una carta de proyecto:
– Un claro objetivo de investigación.
– La misión y el contexto del proyecto
– Cómo vas a realizar tu análisis
– Qué recursos espera utilizar
– Prueba de que es un proyecto realizable, o prueba de conceptos
– Entregables y una medida del éxito
– Una línea de tiempo
Paso 2: Comprensión del Dato

• El siguiente paso en la ciencia de datos es recuperar los datos requeridos.


• A veces necesita ir al campo y diseñar un proceso de recopilación de datos usted
mismo, pero la mayoría de las veces no estará involucrado en este paso. Muchas
empresas ya habrán recopilado y almacenado los datos por usted, y lo que no tienen
a menudo se puede comprar a terceros.
• Los datos se pueden almacenar de muchas formas, desde simples archivos de texto
hasta tablas en una base de datos.
• Realice verificaciones de calidad de datos ahora para evitar problemas más adelante
Step 2: Compresión del Dato

A Data Lake Architecture

Database, Data Marts, Data Warehouses, Data Lakes.


Análisis Exploratorio de Datos

• Durante el análisis exploratorio de datos, se sumerge profundamente en los datos.


La información se vuelve mucho más fácil de captar cuando se muestra en una
imagen, por lo tanto, utiliza principalmente técnicas gráficas para comprender sus
datos y las interacciones entre las variables.
• Las técnicas de visualización que utiliza en esta fase van desde simples gráficos de
líneas o histogramas hasta diagramas más complejos como Sankey y gráficos de
red.
Análisis Exploratorio de Datos
• Estructura de los datos sobre otras • Un diagrama de Pareto es una
variables combinación de los valores y una
distribución acumulativa.
Análisis Exploratorio de Datos
• Diagrama de caja. Los diagramas de caja son una forma estandarizada de mostrar la distribución
de datos basada en un resumen de cinco números ("mínimo", primer cuartil (Q1), mediana,
tercer cuartil (Q3) y "máximo").
• [Link]
boxplot-demo-pyplot-py
Paso 3: Preparation de Datos
• Limpieza de datos: la limpieza de datos se centra en eliminar errores en sus
datos para que estos se conviertan en una representación fiel y coherente de los
procesos de los que se originan.
– Error de interpretación: la edad de esa persona es >= 300 años
– Inconsistencias entre fuentes de datos: “Mujer” en una tabla y “F” en otra.
Limpieza de datos
Limpieza de datos
• Errores de entrada de datos: la recopilación y la entrada de datos son procesos propensos a
errores.
• Con una tabla de frecuencias se pueden detectar outliters.
Limpieza de Datos
• Los espacios en blanco redundantes tienden a ser difíciles de detectar pero
causan errores como lo harían otros caracteres redundantes. Desajuste de
claves como “Lima” con “Lima”. En python, elimine espacios con strip().
• La corrección de los desajustes de letras mayúsculas es común. En python
puedes comparar: “Lima”.lower() == “lima”.lower()
• Valores imposibles y comprobaciones de cordura: aquí se comprueba el valor
frente a valores física o teóricamente imposibles, como personas que midan
más de 3 metros o alguien con una edad de 299 años.
Limpieza de Datos

• Outliters: Un valor atípico es una observación que parece estar distante de otras
observaciones o, más específicamente, una observación que sigue una lógica diferente o un
proceso generativo que las otras observaciones. La forma más fácil de encontrar valores
atípicos es usar una gráfica o una tabla con los valores mínimos y máximos.
Limpieza de Datos
• Tratar con valores faltantes podría ser un indicador de que algo salió mal en su recopilación
de datos o que ocurrió un error en el proceso ETL.
Limpieza de Datos
• Desviaciones de un libro de códigos: la detección de errores en conjuntos de datos más
grandes en comparación con un libro de códigos o con valores estandarizados se puede
realizar con la ayuda de operaciones de conjunto.
• Diferentes unidades de medida: al integrar dos conjuntos de datos, debe prestar atención a
sus respectivas unidades de medida.
• Diferentes niveles de agregación: tener diferentes niveles de agregación es similar a tener
diferentes tipos de medición. Ejemplo: Datos por semana vs Datos por mes.
Integración de Datos

• Sus datos provienen de varios lugares diferentes, y en este subpaso nos enfocamos en integrar
estas diferentes fuentes. Los datos varían en tamaño, tipo y estructura, desde bases de datos y
archivos de Excel hasta documentos de texto.
• Dos operaciones para combinar datos: unir y agregar (o apilar).
Integracion de Datos
• Unión de tablas: enriquecer una observación de una tabla con información de otra tabla:
– SELECT table1.field2, table2.field3…. FROM table1 INNER JOIN table 2 ON table1.field1 = table2.
field1;
Integración de Datos
• Agregar tablas: Agregar o apilar tablas es efectivamente agregar observaciones de una tabla
a otra tabla.
– SELECT * FROM table1 UNION SELECT * FROM table2;

• Use Views to append tables.


Integración de Datos

• Enriquecimiento de medidas agregadas: el enriquecimiento de datos también se


puede realizar agregando información calculada a la tabla, como el número total de
ventas o qué porcentaje del stock total se ha vendido en una determinada región.
Transformación de Datos

• Transformación de datos: Ciertos modelos requieren que sus datos tengan una
determinada forma. Transformar sus datos para que adopten una forma adecuada
para el modelado de datos.
• Y = a ebx
Transformación de Datos

• Reducción del número de variables: a veces tiene demasiadas variables y necesita


reducir el número porque no agregan información nueva al modelo. Utilizando el
modelo PCA.

• Convertir variables en ficticias: las variables se


pueden convertir en variables ficticias. Las
variables ficticias solo pueden tomar dos valores:
verdadero (1) o falso (0)..
Paso 5: Construcción de Modelos
• Con datos limpios en su lugar y una buena comprensión del contenido,
está listo para crear modelos con el objetivo de hacer mejores
predicciones, clasificar objetos o comprender el sistema que está
modelando.
Estrategia para Entrenar Modelos
• Entrenamiento y Prueba el algoritmo (Supervisado)
– Entrene los modelos con el 80% de los datos
– Pruebe los modelos con el 20% de los datos
– Seleccione el algoritmo con mejores resultados (es decir,% de instancias clasificadas correctamente, matriz
de confusión y otros)
• En caso de Aprendizaje No Supervisado, utilice otras métricas para evaluar el éxito (Error
Cuadrático Medio).
– Refina el algoritmo
– Refine el algoritmo (es decir, cambie algunos parámetros, cambie algunas variables de entrada, otras)
– Pase a producción y controle los resultados.
– Vuelva a entrenar en caso de ser necesario.
Ejecución del Modelo
• Ejecutar un modelo de predicción lineal en datos semialeatorios
Ejecución del MOdelo
Algoritmos de los K-Vecinos mas Cercanos
• Los k-vecinos más cercanos miran los puntos etiquetados cercanos a un punto no
etiquetado y, en base a esto, hacen una predicción de cuál debería ser la etiqueta.
Algoritmos de los K-Vecinos mas
Cercanos
• en código Python usando la biblioteca de
aprendizaje de Scikit
DATASETS
• Troomes: [Link]
• [Link]
• Kaggle: [Link]
• Machine Learning Repository – UCI: [Link]
• [Link]
• [Link]
• [Link]
• [Link]
Ecosistema de herramientas
Algunos Pasos Para Desarrollar Aplicaciones usando Machine
Learning
Herramientas:
• Jupyter
– Install Python:
• Download python 3.7.* from
[Link]

– Install Jupiter:
• [Link]
• in DOS cmd: pip3 install Jupyterlab

• [Link]
Algunos Pasos Para Desarrollar Aplicaciones usando Machine
Learning

Herramientas:
• Weka:
• [Link]
Lectures of this week

• AlphaGo Zero: Learning from scratch


[Link]
• Distinguishing between Narrow AI, General AI and Super AI,
[Link]
ai-a4bc44172e22
• The Jobs That Artificial Intelligence Will Create,
[Link]
Algunos trabajos de ML para Revisar

• Aplicacion de Machine Learning para la prediccion de sismos en Lima e Ica – Troomes

• IA para predecir si un titular de una tarjeta de crédito pagará o no el saldo en mora del “pago
mínimo facturado". – Troomes

• Implementación Sistema Predicción de Reclamos mediante el uso de machine Learning en una


empresa de telecomunicaciones – Troomes

• Prediccion del Indice General de la Bolsa de Valores de Lima - Troomes

También podría gustarte