Está en la página 1de 40

Introducción a

Machine Learning Pedro Ferrari

Juan Martín
Pampliega

Title of
class/project

By Juan Martín Pampliega


01 Introducción
Presentación de los Instructores

Pedro Ferrari - pedro@muttdata.ai


Economía en UTDT, Actuario UBA, Maestría en Economía UTDT
Data Scientist de profesión, fan de Vim por elección
Profesor Master en Management y Analytics - UTDT

Juan Martín Pampliega - juan@muttdata.ai - @juanpampliega


Ingeniería en Informática en ITBA
Data Engineer & Data Architect
Profesor de la Especialización en Ciencia de Datos - ITBA

3
Metodología - Applied Machine Learning

● Durante el curso abordaremos las temáticas con un enfoque eminentemente


práctico.
● Nuestra experiencia laboral nos demuestra que si bien tener una sólida base
teórica es una gran ventaja no es un requisito necesario para comenzar a aplicar
Machine Learning.
● No se preocupen por entender el 100% de los conceptos presentados o las
técnicas aplicadas ya que en muchos casos no tendremos el tiempo disponible
para explicarlos en profundidad.
● Enfoquense en entender para qué sirve cada cosa y no cómo funciona.

4
Herramientas

5
Libros de Referencia

The Mechanics of Machine Learning


https://mlbook.explained.ai/

Dive Into Deep Learning


http://d2l.ai/chapter_introduction/index.html

6
Cursos de Referencia

Introduction to Machine Learning for Coders


Jeremy Howard - University of San Francisco
http://course18.fast.ai/ml

Applied Machine Learning


Andreas C. Müller - Columbia University
https://www.cs.columbia.edu/~amueller/comsw4995s20/

7
Kaggle + Blog Posts + Papers

Google Machine Learning Glossary


https://developers.google.com/machine-learning/glossary

8
02 Machine
Learning
Qué es Machine Learning?

Machine learning (ML) consiste en aplicar algoritmos y modelos estadísticos que se


utilizan para realizar tareas sin un set de instrucciones específicas si no que
basándose en encontrar patrones y utilizar inferencia.

Estos algoritmos construyen un modelo matemático basado en datos de ejemplo


(conocidos como “training”) para poder realizar predicciones sin haber sido
programados explícitamente para esto.

10
Qué es Machine Learning?

11
Aplicaciones

12
Tipos de Aprendizaje

13
Aprendizaje Supervisado

14
Aprendizaje Supervisado

15
Aprendizaje Supervisado: Clasificación de Spam

16
Relación entre Estadística y Machine Learning
Estadística
● Generalmente involucra inferencia a partir de una muestra de una población
en el contexto de un test de hipótesis.
● Se realizan asunciones sobre cómo se relaciona la muestra a la población y del
proceso sobre el cual queremos realizar la inferencia.
● Ejemplo: “La gente en cuarentena no es más propensa a hacer un curso un viernes a
la noche.”
● Dos papers interesantes: Breiman (2001) y Shmueli (2010)

17
Relación entre Estadística y Machine Learning
Machine Learning
● Trata sobre predicción y generalización.
Queremos utilizar datos ya existentes para predecir
comportamiento sobre observaciones futuras o que
no hayamos visto.
● Se trata de realizar predicciones sobre
observaciones puntuales y no sobre una población
general.
● No necesita tener un modelo del proceso de
generación de observaciones pero si necesita que
las nuevas observaciones sean generadas por el
mismo proceso que las originales.

18
Data Science
Combina conocimiento de negocio,
informática, matemática y estadística
para extraer información valiosa a partir
de los datos.
Los Data Scientists aplican Machine
Learning sobre todo tipos de datos para
analizarlos y construir sistemas
predictivos que puedan realizar tareas
que anteriormente solamente podían
ser realizados por la inteligencia de un
ser humano
Estos sistemas generan insights y
accionables que los analistas y usuarios
de negocio aplican para generar valor
para el negocio.

19
Consideraciones relevantes para el “mundo real”
1. Definir el objetivo y definir una forma de medir ese objetivo (KPI).
2. Aplicar Machine Learning no debería ser la primera forma de solucionar un
problema.
3. Dependerá de nosotros determinar si necesitamos utilizar aprendizaje
supervisado o no supervisado, o si es un problema de clasificación o regresión.
4. Además de definir ese KPI es importante establecer un baseline de la situación
actual y poder medir las mejoras.
5. Debemos poder comunicar los resultados o predicciones, el por qué ocurren,
el grado de confianza y el impacto que las mismas pueden tener.

20
Reglas de proyectos de Machine Learning de Google

https://developers.google.com/machine-learning/guides/rules-of-ml

1. Don’t be afraid to launch a product without machine learning.


2. First, design and implement metrics.
3. Choose machine learning over a complex heuristic.
4. Keep the first model simple and get the infrastructure right.
5. Test the infrastructure independently from the machine learning.
Turn heuristics into features, or handle them externally.
6. Choose a simple, observable and attributable metric for your first objective

Y muchas más

21
Machine Learning Workflow

22
Machine Learning Workflow:
Extracción de Features

23
Machine Learning Workflow:
Entrenamiento del Modelo

24
Cómo sabemos que tan bueno es nuestro modelo?

25
Machine Learning Workflow

26
Machine Learning Workflow

27
Ejemplo de regresión: Precios de Casas

28
Ejemplo de regresión: Métrica de Error

29
Overfitting y Underfitting

30
Interpretabilidad del modelo

31
Deep Learning

32
Deep Learning

33
Aprendizaje No Supervisado
Reinforcement Learning

Se trata de un agente (jugador) aprendiendo a interactuar con un entorno (grilla).

No se trabaja con un set de datos si no con un ambiente completo donde las acciones del agente
influencian qué partes ve y las situaciones que se generan.

Tenemos un entorno (la grilla), los estados y acciones (posición en la grilla y movimiento en la
misma) y los pagos (puntaje).

El objetivo es derivar una “regla de política” (un conjunto de acciones para cada estado) con el
objetivo de obtener el máximo retorno esperado de pagos

Muy usado en disciplinas diversa como economía, teoría de juegos, robotica, etc

35
División del tiempo en la vida de un Data Scientist

36
Por qué Python?

1. Lenguaje dinámico moderno con sintaxis amigable de fácil


comprensión.
2. Amplio uso para desarrollo de aplicaciones, Data Engineering y
Data Science.
3. Amplio uso en las principales empresas de tecnología (Google,
Microsoft, Amazon, etc.) y las comunidades Open Source.
4. Excelentes librerías de Big Data, Data Science, Machine
Learning y Deep Learning.
5. Gran soporte de herramientas de desarrollo a nivel industrial
IDEs, tests, logging, profiling, etc.
6. Interfaz de bajo nivel con C con gran eficiencia.

https://gitlab.com/mutt_data/muttlib

37
ML en Python

38
Referencias
The Cycle of Experimentation
https://towardsdatascience.com/ai-ml-practicalities-the-cycle-of-experimentation-fd4
6fc1f3835

How To Develop a Machine Learning Model From Scratch


https://towardsdatascience.com/machine-learning-general-process-8f1b510bd8af

A simple introduction to Machine Learning


https://towardsdatascience.com/introduction-to-machine-learning-f41aabc55264

Dive into Deep Learning


http://d2l.ai/index.html

39
Title of Muchas Gracias!
class/project

By Juan Martín Pampliega

También podría gustarte