Está en la página 1de 42

Machine Learning

Introducción y Librerías básicas de ML y Data Science


Inteligencia Artificial
● 1950: Alan Turing en “Computing Machinery and Intelligence” planteaba la
Prueba de Turing. El test de turing es una prueba de la habilidad de una
máquina de exhibir un comportamiento inteligente similar, o indistinguible, del
de un ser humano”
Inteligencia Artificial
La Inteligencia Artificial involucra el desarrollo de programas o algoritmos que
emulan algunos procesos humanos como el razonamiento o el aprendizaje de
manera de permitirle a una máquina exhibir un comportamiento inteligente.
Inteligencia Artificial: presente en nuestra vida diaria
Inteligencia Artificial: presente en nuestra vida diaria
IA Conversacional
● ChatGPT es una Inteligencia Artificial (IA) Conversacional diseñada para
responder una pregunta o una indicación (prompt) y mantener una
conversación.
IA Conversacional
● ChatGPT es una Inteligencia Artificial (IA) Conversacional diseñada para
responder una pregunta o una indicación (prompt) y mantener una
conversación.
● Es la tecnología de adopción más rápida de la historia
IA Conversacional
● ChatGPT es una Inteligencia Artificial (IA) Conversacional diseñada para
responder una pregunta o una indicación (prompt) y mantener una
conversación.
● Es la tecnología de adopción más rápida de la historia
● IA generativa, produce nuevo contenido textual

(imágenes, sonidos, etc.)


IA: Machine Learning
● No sólo ChatGPT, la mayoría de las aplicaciones exitosas de la IA al mundo
real provienen de una de sus disciplinas conocida como Machine Learning.
IA: Machine Learning
● En los últimos años, la mayoría de las aplicaciones exitosas de la IA al
mundo real provienen de una de sus disciplinas conocida como Machine
Learning.
● El Machine Learning es un subdominio de la IA que proporciona a los
sistemas la capacidad de aprender y mejorar automáticamente a partir de la
experiencia sin estar explícitamente programados para ello. Se basa en la
hipótesis subyacente de crear el modelo y trata de mejorarlo ajustando más
datos en el modelo a lo largo del tiempo.
● No todos los problemas en IA pueden solucionarse con Machine Learning. El
problema debe poder solucionarse con datos.
Definición de Machine Learning
● Machine Learning (Aprendizaje de Máquina)
○ Un programa se dice que aprende de una experiencia pasada E con
respecto a alguna clase de tarea T y una medida de performance P,
si su performance para las tareas en T, medida por la métrica P,
mejora con la experiencia E (Mitchell, 1998)
Machine Learning
Entrenamiento
datos/ejemplos

Algoritmo de
Machine Learning

Nuevos
Modelo predictivo
datos/ejemplos

Predicción
Machine Learning
Entrenamiento
datos/ejemplos

Algoritmo de
Machine Learning

Feedback
Predicción

Nuevos
Modelo predictivo
datos/ejemplos

Predicción
¿Qué es el Machine Learning?
El aprendizaje automático es un subdominio de la IA que proporciona a los
sistemas la capacidad de aprender y mejorar automáticamente a partir de la
experiencia sin ser programados explícitamente. Se basa en la hipótesis
subyacente de crear el modelo y tratar de mejorarlo ajustando más datos en el
modelo a lo largo del tiempo.

Experiencia
-se corresponde
con datos. Modelo
¿Qué es el Machine Learning?
El aprendizaje automático es un subdominio de la IA que proporciona a los
sistemas la capacidad de aprender y mejorar automáticamente a partir de la
experiencia sin ser programados explícitamente. Se basa en la hipótesis
subyacente de crear el modelo y tratar de mejorarlo ajustando más datos en el
modelo a lo largo del tiempo.

Experiencia Predicciones
-se corresponde
con datos. Modelo
¿Qué es el Machine Learning?
El aprendizaje automático es un subdominio de la IA que proporciona a los
sistemas la capacidad de aprender y mejorar automáticamente a partir de la
experiencia sin ser programados explícitamente. Se basa en la hipótesis
subyacente de crear el modelo y tratar de mejorarlo ajustando más datos en el
modelo a lo largo del tiempo.

Experiencia Predicciones
-se corresponde
con datos. Modelo
Nuevos Datos
¿Qué es el Machine Learning?
El aprendizaje automático es un subdominio de la IA que proporciona a los
sistemas la capacidad de aprender y mejorar automáticamente a partir de la
experiencia sin ser programados explícitamente. Se basa en la hipótesis
subyacente de crear el modelo y tratar de mejorarlo ajustando más datos en el
modelo a lo largo del tiempo.

Experiencia Predicciones
-se corresponde
con datos. Modelo
Nuevos Datos Predicciones
Machine Learning
● Tenemos que tener en cuenta que cuando hablamos de Machine Learning
estamos hablando de datos pasados, la experiencia que le proporcionamos.

● Estamos hablando de un algoritmo matemático que recibe esos datos y


construye un Modelo.

● Estamos hablando de ajustar ese Modelo y realizar Predicciones.


Detección de correos electrónicos de SPAM.
Ejemplo
● Es uno de los primeros problemas que se resuelve aplicando técnicas de
Machine Learning

● Es común encontrar hoy en nuestra bandeja un filtro de SPAM

● En el 99% de las ocasiones, a no ser que sea una tecnología muy antigua, el
filtro de SPAM está utilizando técnicas de Machine Learning.
Filtro de correo de SPAM: enfoque tradicional
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Producción

correcta

Análisis del Creación De


Problema Evalua
Reglas ción

incorrecta
Análisis de
los Errores
Filtro de correo de SPAM: enfoque tradicional
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Producción

Analista correcta

Análisis del Creación De


Problema Evalua
Reglas ción

incorrecta
Análisis de
los Errores
Filtro de correo de SPAM: enfoque tradicional
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Producción

Analista correcta

Análisis del Creación De


Problema Evalua
Reglas ción

incorrecta
Análisis de
los Errores
Filtro de correo de SPAM: enfoque tradicional
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Producción

Analista correcta

Análisis del Creación De


Problema Evalua
Reglas ción

incorrecta
Análisis de
los Errores
Filtro de correo de SPAM: enfoque tradicional
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Producción

Analista correcta

Análisis del Creación De


Problema Evalua
Reglas ción

incorrecta
Análisis de
los Errores
Filtro de correo de SPAM: enfoque tradicional
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Producción

Analista correcta

Análisis del Creación De


Problema Evalua
Reglas ción

Análisis de incorrecta
los Errores

Enfoque tradicional altamente acoplado con el analista


Filtro de correo de SPAM: enfoque tradicional
● El enfoque tradicional que se utilizaría para construir una herramienta de
predicción, en este caso de correos electrónicos de spam, es un enfoque que
está altamente acoplado con el analista. Es decir, depende casi por completo
de los conocimientos del analista, que al final es el que construye este motor
de reglas.
● Tiene aquí una serie de reglas estáticas que hay que mantener a lo largo del
tiempo. Es decir, el motor de reglas probablemente sea válido en un
momento determinado, pero con el paso del tiempo quede obsoleto y tenga
que actualizarse. Por supuesto, necesito al analista que es quien me está
aportando el conocimiento.
Filtro de correo de SPAM: enfoque aplicando ML
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Datos Producción

Analista correcta

Análisis del Entrenamien


Problema Evalua
to del ción
algoritmo

Análisis de incorrecta
los Errores

¿Seguiríamos necesitando un analista?


Filtro de correo de SPAM: enfoque aplicando ML
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Datos Producción

Analista correcta

MODELO
Análisis del Entrenamien
Problema Evalua
to del ción
algoritmo

Análisis de incorrecta
los Errores
Filtro de correo de SPAM: enfoque aplicando ML
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Datos Producción

Analista correcta

MODELO
Análisis del Entrenamien
Problema Evalua
to del ción
algoritmo

Análisis de incorrecta
los Errores
Filtro de correo de SPAM: enfoque aplicando ML
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Datos Producción

Analista correcta

MODELO
Análisis del Entrenamien
Problema Evalua
to del ción
algoritmo

Análisis de incorrecta
los Errores
Filtro de correo de SPAM: enfoque aplicando ML
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Datos Producción

Analista correcta

MODELO
Análisis del Entrenamien
Problema Evalua
to del ción
algoritmo

Análisis de incorrecta
los Errores
Diferencias con el enfoque tradicional
● La diferencia fundamental entre esta casuística y la del enfoque tradicional,
es que el analista está completamente desacoplado de lo que es el motor de
reglas.
● En este caso no es un motor de reglas, es un modelo que realiza las
predicciones y que determina si un correo electrónico es legítimo o no lo es.
Diferencias con el enfoque tradicional
Esto en qué nos beneficia respecto a lo que veíamos anteriormente?

¿Qué sucede si el tipo de correos electrónicos considerados como spam cambia


a lo largo del tiempo?
Diferencias con el enfoque tradicional
¿Qué sucede si el tipo de correos considerados como SPAM cambia a lo largo del
tiempo? Puesta en
Producción

Analista correcta

Análisis del Actualización


Problema Evalua
de Reglas ción

incorrecta
Análisis de
los Errores
Beneficios del enfoque basado en ML
Se plantea la construcción de un filtro capaz de identificar y bloquear correos de
SPAM Puesta en
Analista Datos Producción

correcta

MODELO
Análisis del Entrenamien
Problema Evalua
to del ción
algoritmo

Análisis de incorrecta
los Errores
Beneficios del enfoque basado en ML
● Tareas a realizar: recopilar esos nuevos correos electrónicos de spam,
introducirlos y entrenar un poquito nuestro algoritmo, mientras que en el
enfoque tradicional será un proceso súper tedioso de mantenimiento de ese
motor de reglas.
● El filtro de correos de SPAM es uno de los ejemplos más claros y uno de los
procesos más claros de cómo al aplicar Machine Learning se resuelve el
problema de una manera muchísimo más eficiente, muchísimo más rápida y
sobre todo, más eficaz de lo que lo hace un enfoque tradicional.
● no siempre tenemos por qué aplicar Machine Learning, puede ser que haya
un problema que sea más fácil y más eficaz de mantenerlo en el tiempo
aplicando únicamente un enfoque tradicional basado en reglas heurísticas y
en umbrales.
¿Cuándo utilizar Machine Learning?
● En soluciones que funcionan mediante la aplicación de un conjunto extenso
de reglas o heurísticas.
● En problemas complejos en los que un analista no es capaz de determinar
una solución a partir de la información existente
● En entornos que fluctúan o varían con frecuencia
● Apoyo de la fase de análisis en enfoques tradicionales en los que se dispone
de conjuntos de datos muy grandes de difícil de interpretar.
¿Cuándo utilizar Machine Learning?
● En soluciones que funcionan mediante la aplicación de un conjunto extenso
de reglas o heurísticas (ej. filtro de correo de SPAM)
● En problemas complejos en los que un analista no es capaz de determinar
una solución a partir de la información existente
● En entornos que fluctúan o varían con frecuencia
● Apoyo de la fase de análisis en enfoques tradicionales en los que se dispone
de conjuntos de datos muy grandes de difícil de interpretar.
¿Cuándo utilizar Machine Learning?
● En soluciones que funcionan mediante la aplicación de un conjunto extenso
de reglas o heurísticas (ej. filtro de correo de SPAM)
● En problemas complejos en los que un analista no es capaz de determinar
una solución a partir de la información existente (ej. clasificación imágenes)
● En entornos que fluctúan o varían con frecuencia
● Apoyo de la fase de análisis en enfoques tradicionales en los que se dispone
de conjuntos de datos muy grandes de difícil de interpretar.
¿Cuándo utilizar Machine Learning?
● En soluciones que funcionan mediante la aplicación de un conjunto extenso
de reglas o heurísticas (ej. filtro de correo de SPAM)
● En problemas complejos en los que un analista no es capaz de determinar
una solución a partir de la información existente (ej. clasificación imágenes)
● En entornos que fluctúan o varían con frecuencia (ej. tráfico de red, detección
de amenazas en virtud del tráfico de red, etc.)
● Apoyo de la fase de análisis en enfoques tradicionales en los que se dispone
de conjuntos de datos muy grandes de difícil de interpretar.
Librerías Básicas de ML y
Data Science
Casos prácticos. Uso de Numpy, Pandas, Matplotlib
Librerías NumPy, Pandas, Matplotlib
● Caso Práctico NumPy
● Caso Práctico Pandas
● Caso Práctico Matplotlib

También podría gustarte