SlideShare una empresa de Scribd logo
1 de 73
Aprendizaje automático. Aplicación a las predicciones
en el baloncesto
Daniel Florén Lario
Universidad de Zaragoza
Grado de Matemáticas
Tutor del TFG:
Ricardo López Ruiz
Defensa TFG
Julio, 19, 2023
Índice
1 Introducción al aprendizaje automático
2 Árboles de decisión
3 Métodos boosting
4 Aplicación del algoritmo XGBoost
Introducción al aprendizaje automático
• ¿Qué es el aprendizaje automático?
"La estadística es la ciencia del aprendizaje a partir de datos. El
aprendizaje automático es la ciencia del aprendizaje a partir de datos.
Estos campos son idénticos en su intención aunque difieren en su historia,
convenciones, énfasis y cultura".
Larry A. Wasserman, estadístico
Defensa del TFG 18 de julio de 2023 3
Introducción al aprendizaje automático
Tipos de aprendizaje automático:
• Aprendizaje supervisado
• Aprendizaje no supervisado
• Aprendizaje por refuerzo
Defensa del TFG 18 de julio de 2023 4
Introducción al aprendizaje automático
Aprendizaje supervisado
Defensa del TFG 18 de julio de 2023 5
Introducción al aprendizaje automático
Aprendizaje supervisado, formalización
Queremos predecir una variable Y basándonos en p variables predictoras:
X = (X1, ..., Xp). Asumimos una relación Y = f(X) + ϵ, donde ϵ es una
v.a representando el error, independiente de X y con esperanza nula.
El aprendizaje supervisado estudia los métodos para estimar o aprender f.
Para ello, necesitamos un conjunto de datos etiquetados. En general,
tenemos un conjunto τ = {(x1, y1), (x2, y2), . . . , (xn, yn)} de datos de
entrenamiento que nos ayudará a estimar la función f.
El proceso de estimación de la función f es distinto según el problema
específico al que nos enfrentamos. En general, hay dos tipos de problemas:
problemas de regresión y problemas de clasificación
Defensa del TFG 18 de julio de 2023 6
Introducción al aprendizaje automático
Aprendizaje supervisado, formalización
Queremos predecir una variable Y basándonos en p variables predictoras:
X = (X1, ..., Xp). Asumimos una relación Y = f(X) + ϵ, donde ϵ es una
v.a representando el error, independiente de X y con esperanza nula.
El aprendizaje supervisado estudia los métodos para estimar o aprender f.
Para ello, necesitamos un conjunto de datos etiquetados. En general,
tenemos un conjunto τ = {(x1, y1), (x2, y2), . . . , (xn, yn)} de datos de
entrenamiento que nos ayudará a estimar la función f.
El proceso de estimación de la función f es distinto según el problema
específico al que nos enfrentamos. En general, hay dos tipos de problemas:
problemas de regresión y problemas de clasificación
Defensa del TFG 18 de julio de 2023 6
Introducción al aprendizaje automático
Aprendizaje supervisado, formalización
Queremos predecir una variable Y basándonos en p variables predictoras:
X = (X1, ..., Xp). Asumimos una relación Y = f(X) + ϵ, donde ϵ es una
v.a representando el error, independiente de X y con esperanza nula.
El aprendizaje supervisado estudia los métodos para estimar o aprender f.
Para ello, necesitamos un conjunto de datos etiquetados. En general,
tenemos un conjunto τ = {(x1, y1), (x2, y2), . . . , (xn, yn)} de datos de
entrenamiento que nos ayudará a estimar la función f.
El proceso de estimación de la función f es distinto según el problema
específico al que nos enfrentamos. En general, hay dos tipos de problemas:
problemas de regresión y problemas de clasificación
Defensa del TFG 18 de julio de 2023 6
Introducción al aprendizaje automático
En un problema de regresión, la variable Y es cuantitativa (precio,
presión arterial, altura, ...). Algunos de los métodos más usados son:
• Regresión lineal
• Árboles de regresión
• Vectores de soporte para regresión
• Redes neuronales
Defensa del TFG 18 de julio de 2023 7
Introducción al aprendizaje automático
Regresión lineal
Se asume que la dependencia de Y en X es lineal, es decir,
Y = β0 + β1X1 + ...βpXp. El estimador de la función f es el hiperplano de
mínimos cuadrados ˆ
f(X) = Xβ̂, β̂ = (XtX)−1XtY
Defensa del TFG 18 de julio de 2023 8
Introducción al aprendizaje automático
Árboles de regresión
Se explicarán a fondo en el siguiente capítulo.
Defensa del TFG 18 de julio de 2023 9
Introducción al aprendizaje automático
Vectores de soporte para regresión
Funciona igual que la regresión lineal (en el sentido que asume una
dependencia lineal de Y y X) , pero en este caso queremos que minimizar
la norma ∥β∥. Para obtener el estimador de f se resuelven una serie de
problemas de optimización lineal ligados al problema:
mı́n
β
J(β) =
1
2
βt
β
s.t. ∥Y − Xβ∥ ≤ ϵ ⇐⇒ |Yi − (β0 +
p
X
j=1
Xijβj)| ≤ ϵi ∀i = 1, ..., n
ϵ ≥ 0n
Finalmente se obtiene: ˆ
f(X) = Xβ̂ = XXt(α + α∗) , donde α, α∗ ∈ Rn
son los multiplicadores de Lagrange introducidos para resolver cierto
problema dual.
Defensa del TFG 18 de julio de 2023 10
Introducción al aprendizaje automático
Redes neuronales
Se trata de modelos altamente parametrizados inspirados en la arquitectura
del cerebro humano. Para predecir la variable Y en función de X, creamos
dos capas representando la entrada y salida del problema y añadimos
alguna capa oculta de neuronas artificiales simulando las del cerebro.
Una red neuronal es una función no lineal f(X; w) + ϵ parametrizada por
pesos w
Defensa del TFG 18 de julio de 2023 11
Introducción al aprendizaje automático
Defensa del TFG 18 de julio de 2023 12
Introducción al aprendizaje automático
En un problema de clasificación, la variable Y es cualitativa (un correo
puede ser spam o no, un dígito se encuentra en el conjunto {0, ..., 9}, ...).
Algunos de los métodos más usados son:
• Regresión logística
• Árboles de clasificación
• Clasificador bayesiano ingenuo
• Redes neuronales
Defensa del TFG 18 de julio de 2023 13
Introducción al aprendizaje automático
Regresión logística
Es un modelo estadístico que estima la probabilidad de un resultado
binario Y ∈ {0, 1}. ¿Regresión o clasificación?. Sea πi = Pr(Yi = 1|X)
log ( πi
1−πi
) = β0 + β1X1i + ... + βpXpi =⇒
π̂i =
exp( ˆ
β0 + ˆ
β1X1i + ... + ˆ
βpXpi)
1 + exp( ˆ
β0 + ˆ
β1X1i + ... + ˆ
βpXpi)
Defensa del TFG 18 de julio de 2023 14
Introducción al aprendizaje automático
Clasificador bayesiano ingenuo
Basándose en el Teorema de Bayes, el clasificador bayesiano ingenuo trata
de encontrar las probabilidades condicionadas a cada clase:
Pr(Y = k|X = x) =
Pr(X|Y )Pr(Y )
Pr(X)
=
Pr(X1|Y ) · · · Pr(Xn|Y )Pr(Y )
Pr(X1) · · · Pr(Xn)
∝ P(Y )
n
Q
i=1
Pr(Xi|Y )
Finalmente, debemos de encontrar la clase k con máxima probabilidad:
C(X) = argmaxk Pr(Y = k)
n
Q
i=1
Pr(Xi|Y = k)
Defensa del TFG 18 de julio de 2023 15
Introducción al aprendizaje automático
Redes neuronales y máquinas de vectores de soporte
Ambos métodos resuelven tanto problemas de regresión como de
clasificación. Al entrenar una red neuronal para predecir una clase de entre
las M clases, se escoge la clase k tal que yk = argmáxmym.
En el caso de las máquinas de vectores de soporte, se asume Y ∈ {0, 1}
(hay técnicas para pasar de clasificación binaria a múltiple). La diferencia
es que ahora tratamos de encontrar el hiperplano que mejor separa las dos
clases, es decir, el que se orienta en la dirección que maximiza la distancia
entre el miembro más cercano de cada clase.
Defensa del TFG 18 de julio de 2023 16
Introducción al aprendizaje automático
Redes neuronales y máquinas de vectores de soporte
Ambos métodos resuelven tanto problemas de regresión como de
clasificación. Al entrenar una red neuronal para predecir una clase de entre
las M clases, se escoge la clase k tal que yk = argmáxmym.
En el caso de las máquinas de vectores de soporte, se asume Y ∈ {0, 1}
(hay técnicas para pasar de clasificación binaria a múltiple). La diferencia
es que ahora tratamos de encontrar el hiperplano que mejor separa las dos
clases, es decir, el que se orienta en la dirección que maximiza la distancia
entre el miembro más cercano de cada clase.
Defensa del TFG 18 de julio de 2023 16
Árboles de decisión
• En este capítulo se analizan los métodos de regresión y clasificación
basados en árboles.
• Estos métodos consisten principalmente en dividir el espacio muestral
en regiones sencillas y realizan predicciones para cada una de las
regiones basándose generalmente en la media o la moda de dicha
región.
• Son métodos simples, fáciles de interpretar y de representar
• Sin embargo, el precio a pagar es la precisión en las predicciones
• De nuevo, según al problema al que nos enfrentemos, podemos hablar
de árboles de regresión o árboles de clasificación.
Defensa del TFG 18 de julio de 2023 17
Árboles de decisión
Árboles de regresión
Empecemos con un ejemplo simple, un dataset en el que y es una variable
continua representando el salario de un jugador de béisbol, x1 es el número
de años profesionales de un jugador y x2 es el número de golpes en el
último año. En la gráfica se muestra la relación entre estas 3 variables:
Defensa del TFG 18 de julio de 2023 18
Árboles de decisión
Árboles de regresión
Queremos predecir el salario de un jugador basándonos en su experiencia y
el número de golpes en el último año. Un árbol de regresión trata de
encontrar para cada una de las dos variables una división xj ≤ s y estima
y como la media aritmética en cada región. La división óptima (aquella
que reduce los errores cuadráticos) se haya entre las dos variables y todos
posibles valores de s:
Defensa del TFG 18 de julio de 2023 19
Árboles de decisión
Árboles de regresión
Entrenamiento de un arbol de regresión
Como hemos mencionado, en el caso de regresión se suele adoptar el
objetivo de minimizar la suma residual de cuadrados, es decir, buscamos
regiones R1, ..., RJ que minimizan
J
P
m=1
P
i∈Rm
(yi − ŷm)2 , donde ŷm es la
media de los yi’s en cada región: ŷm =
P
i yi1(xi ∈ Rm)
P
i 1(xi ∈ Rm)
.
Como es inviable considerar cada posible división, para cada variable xj
consideraremos el valor s que minimiza
P
i:xj≤s
(yi − ŷ1)2 +
P
i:xj>s
(yi − ŷ2)2 .
Despúes, se elige la mejor pareja (j,s) y se particiona el espacio muestral
en dos zonas. Para cada una de estas zonas se repite el proceso hasta
alcanzar una condición de parada.
Defensa del TFG 18 de julio de 2023 20
Árboles de decisión
Árboles de regresión
Entrenamiento de un arbol de regresión
Como hemos mencionado, en el caso de regresión se suele adoptar el
objetivo de minimizar la suma residual de cuadrados, es decir, buscamos
regiones R1, ..., RJ que minimizan
J
P
m=1
P
i∈Rm
(yi − ŷm)2 , donde ŷm es la
media de los yi’s en cada región: ŷm =
P
i yi1(xi ∈ Rm)
P
i 1(xi ∈ Rm)
.
Como es inviable considerar cada posible división, para cada variable xj
consideraremos el valor s que minimiza
P
i:xj≤s
(yi − ŷ1)2 +
P
i:xj>s
(yi − ŷ2)2 .
Despúes, se elige la mejor pareja (j,s) y se particiona el espacio muestral
en dos zonas. Para cada una de estas zonas se repite el proceso hasta
alcanzar una condición de parada.
Defensa del TFG 18 de julio de 2023 20
Árboles de decisión
Árboles de regresión
Entrenamiento de un arbol de regresión
Como hemos mencionado, en el caso de regresión se suele adoptar el
objetivo de minimizar la suma residual de cuadrados, es decir, buscamos
regiones R1, ..., RJ que minimizan
J
P
m=1
P
i∈Rm
(yi − ŷm)2 , donde ŷm es la
media de los yi’s en cada región: ŷm =
P
i yi1(xi ∈ Rm)
P
i 1(xi ∈ Rm)
.
Como es inviable considerar cada posible división, para cada variable xj
consideraremos el valor s que minimiza
P
i:xj≤s
(yi − ŷ1)2 +
P
i:xj>s
(yi − ŷ2)2 .
Despúes, se elige la mejor pareja (j,s) y se particiona el espacio muestral
en dos zonas. Para cada una de estas zonas se repite el proceso hasta
alcanzar una condición de parada.
Defensa del TFG 18 de julio de 2023 20
Árboles de decisión
Árboles de regresión
¿Cuándo paramos de particionar?
• Cuando el número de nodos alcanza cierto límite
• Cuando el número de observaciones en cada región alcanza cierto
límite
• Cuando el árbol alcanza cierto nivel de profundidad
• Intuitivamente, un árbol pequeño podría ser demasiado simple,
mientras que un árbol muy grande podría sobreajustar los datos.
A partir de ahora, T0 representará el mayor árbol considerado, y |T0| el
número de nodos terminales. Podemos obtener un subárbol T (|T| < |T0|)
podando el árbol T0, es decir, eliminando alguna de sus ramas.
Necesitamos medidas que nos indiquen cuando debemos podar un árbol.
Defensa del TFG 18 de julio de 2023 21
Árboles de decisión
Árboles de regresión
Impureza de un nodo
Qm(T) =
1
Nm
P
i:xi∈Rm
(yi − ŷm)2
Criterio de coste-complejidad
Cα(T) =
|T|
P
m=1
NmQm(T) + α|T|
El parámetro α es un parámetro de regularización introducido para
equilibrar el tamaño del árbol con la calidad del ajuste. Para cualquier α
dado, existe un árbol Tα que minimiza el criterio anterior. Como sugiere la
notación, con α = 0 obtenemos T0, el árbol completo. En general, α se
suele elegir mediante validación cruzada.
Defensa del TFG 18 de julio de 2023 22
Resumen del entrenamiento de un árbol de regresión
1 Utilizar la división binaria recursiva para hacer crecer un árbol grande
en los datos de entrenamiento
2 Aplicar el criterio de coste-complejidad al árbol grande para obtener
una secuencia de los mejores subárboles, en función de α.
3 Utilizar la validación cruzada de K iteraciones para elegir α.
Para cada k = 1, . . . ,K:
1 Repita los pasos 1 y 2 en las K − 1 K-ésimas fracciones de los datos de
entrenamiento, excluyendo la k-ésima fracción
2 Evaluar el error cuadrático medio de predicción sobre los datos en la
k-ésima fracción, como una función de α
3 Promediar los resultados, y elegir α para minimizar el error medio
4 Devuelve el subárbol del paso 2 que corresponde al valor de α elegido
Defensa del TFG 18 de julio de 2023 23
Árboles de decisión
Árboles de clasificación
La idea principal es la misma: dividimos recursivamente el espacio muestral
y ajustamos un modelo muy sencillo en cada partición. En el caso de la
clasificación, nuestro modelo simplemente estima la probabilidad
Pr(y = k|x) como la proporción observada de observaciones en el nodo m
que pertenecen a la clase k:
π̂mk =
1
Nm
P
xi∈Ri
1(yi = k) ,
A continuación, clasificamos las observaciones en el m-ésimo nodo según
la mayor probabilidad entre las k clases:
C(m) = argmaxkπ̂mk
Defensa del TFG 18 de julio de 2023 24
Árboles de decisión
Árboles de clasificación
• No podemos calcular mínimos cuadrados sobre predictores
categóricos.
• Necesitamos otras medidas de impureza de nodos Qm(T) para
construir árboles de clasificación
• Principalmente se usan el error de clasificación, el índice de Gini y la
desviación.
• Para calcular el criterio de coste-complejidad se usa el error de
clasificación como medida de impureza.
• El resto del algoritmo funciona exáctamente igual que en el caso de
regresión.
Defensa del TFG 18 de julio de 2023 25
Árboles de decisión
Métodos de ensemble
• La gran ventaja de los árboles de decisión es su interpretabilidad
Sin embargo, surgen algunas dudas:
• ¿Son estos árboles estables frente a perturbaciones en los datos?
• ¿Cómo sabemos si hay variables irrelevantes?
• ¿Podemos realizar test de hipótesis como en la regresión lineal?
Podemos mejorar el rendimiento de los árboles de decisión mediante las
técnicas de ensemble de árboles. Nos centramos en los métodos bosques
aleatorios y el boosting. El precio a pagar es la sacrificación de parte de la
interpretabilidad del modelo simple.
Defensa del TFG 18 de julio de 2023 26
Árboles de decisión
Métodos de ensemble
Bosques aleatorios
• Dado un conjunto de datos, generamos B muestras boostrap del
mismo tamaño.
• Para cada una de las B muestras construimos un árbol de decisión,
teniendo en cuenta un pequeño detalle: cada vez que se realiza una
división del espacio muestral, solamente consideraremos m variables
(aleatoriamente) de entre las p variables de predicción para realizar la
división.
• En el caso de regresión, para calcular predicciones se realiza una
media aritmética del valor obtenido en cada uno de los B árboles.
• Para clasificación, se escoge la clase con más votos de entre los B
árboles votantes (la moda).
Defensa del TFG 18 de julio de 2023 27
Árboles de decisión
Métodos de ensemble
Defensa del TFG 18 de julio de 2023 28
Métodos boosting (regresión)
• En los bosques aleatorios, cada uno de los B árboles se construye
independientemente de los demás y se usa la información de todos
ellos para obtener un modelo final.
• El boosting funciona de forma similar, salvo que los árboles crecen de
forma secuencial.
• A diferencia de ajustar un único árbol grande a los datos, que pueda
potencialmente sobreajustarlos, el enfoque boosting aprende
lentamente.
• Se ajusta un árbol de regresión pequeño a los residuos del modelo,
mejorando lentamente ˆ
f en las áreas en las que su rendimiento era
pobre.
• Se actualizan los residuos
• El modelo final tiene en cuenta todos los pequeños árboles creados
Defensa del TFG 18 de julio de 2023 29
Métodos boosting (regresión)
Defensa del TFG 18 de julio de 2023 30
Métodos boosting (regresión)
1 Se ajusta ˆ
f(x) = 0 y ri = yi para todos los i en el conjunto de datos
de entrenamiento.
2 Para b = 1, 2,...,B, repetir:
1 Entrenar un árbol ˆ
fb con d divisiones (d + 1 nodos terminales) a los
datos de entrenamiento. d suele ser un valor bajo
2 Actualizar ˆ
f añadiendo una versión reducida del nuevo árbol:
ˆ
f(x) ← ˆ
f(x) + λ ˆ
fb(xi)
3 Actualizar los residuos: ri ← ri − λ ˆ
fb(xi)
3 Salida del modelo boosting: ˆ
f(x) =
B
P
b=1
λ ˆ
fb(x)
Defensa del TFG 18 de julio de 2023 31
Métodos boosting
• ¿Cuáles son los mejores valores para (B, d, λ)?
• Si el número de árboles creados B es alto, podríamos sobreajustar los
datos.
• Cuanto más bajo sea el valor de d, más simples los árboles creados y
más lento el aprendizaje
• El parámetro de contracción λ ralentiza aún más el proceso,
permitiendo que los árboles ataquen a los residuos de formas
diferentes.
• En el caso de clasificación, no tenemos residuos, luego el proceso es
distinto: Se le asigna un peso a cada observación, se entrena un
pequeño clasificador y se actualizan los pesos en función del
rendimiento del clasificador. El modelo final clasifica según el voto
mayoritario teniendo en cuenta todos árboles.
Defensa del TFG 18 de julio de 2023 32
Métodos boosting: Gradient boosting
• Al igual que otros métodos boosting, gradient boosting combina
pequeños aprendices débiles en un único aprendiz fuerte de forma
iterativa.
• Para evitar confusiones, realizaremos un pequeño cambio en la
notación: F̂ será el modelo boosting, mientras que ˆ
fb serán los
aprendices débiles introducidos en cada etapa. Por lo tanto, en cada
etapa (1 ≤ b ≤ B) F̂b es la versión actualizada de F̂b−1 teniendo en
cuenta el pequeño árbol ˆ
fb : F̂b = F̂b−1 + λb
ˆ
fb , y nuestro modelo
final será F̂boost = F̂B.
• Como en todos métodos boosting, gradient boosting ajusta λb
ˆ
fb al
residuo yi − F̂b(xi)
Defensa del TFG 18 de julio de 2023 33
Métodos boosting: Gradient boosting
El problema es que a veces la función de pérdida L no es simplemente
LMSE =
1
n
n
P
i=1
(yi − F̂(xi))2 =
1
n
n
P
i=1
r2
i
Es decir, ya no nos interesa reducir los residuos sino encontrar λb
ˆ
fb tales
que:
(λb, ˆ
fb) = argmin(λ,f)
n
P
i=1
L(yi, F̂b−1(xi) + λf(xi)) =
Para una función de pérdida general L, gradient boosting en su
entrenamiento ajusta λb
ˆ
fb a lo que se conoce como pseudo-residuos:
gb
i = −
"
∂L(yi, F̂)
∂F̂
#
F̂=F̂b−1(x)
, i = 1, ..., n
Defensa del TFG 18 de julio de 2023 34
Métodos boosting: Gradient boosting
1 El modelo inicial es constante: F̂0(x) = argminλ
n
P
i=1
L(yi, λ)
2 Para b = 1, ..., B:
1 Calcular los pseudo-residuos gb
i : gb
i = −
"
∂L(yi, F̂(xi))
∂F̂(xi)
#
F̂ =F̂b−1(x)
2 Ajustar un aprendiz débil ˆ
fb a los gb
i
3 Calcular el parámetro λb resolviendo el problema de optimización:
λb = argminλ
n
P
i=1
L(yi, F̂b−1(xi) + λ ˆ
fb(xi))
4 Actualizar el modelo: F̂b(x) = F̂b−1(x) + λb
ˆ
fb(x)
3 El modelo final es F̂boost(x) = F̂B(x)
Defensa del TFG 18 de julio de 2023 35
Métodos boosting: XGBoost
• Funciona exactamente igual que el gradient boosting, pero con la
particularidad de que los árboles se construyen de manera distinta:
• Cada XGBTree trata de minimizar la ecuación:
n
P
i=1
L(yi, F̂(xi)) + γT +
1
2
λ ˆ
f(x)2
• Tras usar aproximaciones de Taylor de segundo orden, el valor de
ˆ
f(x) que minimiza la ecuación es ˆ
fb(x) =
−(g1 + ... + gn)
(h1 + ... + hn + λ)
,
siendo gi y hi la primera y segunda derivada de L respecto de F̂.
• Este proceso nos dará el valor de salida de cada nodo
Defensa del TFG 18 de julio de 2023 36
Métodos boosting: XGBoost
• La puntuación de similitud para cada nodo se define como:
ss =
(
nres
P
i=1
ri)2
nres + λ
• Al igual que en los árboles normales, consideramos posibles divisiones
de la forma xj ≤ s y xj > s, pero ahora con el objetivo de minimizar
la ganancia de cada división:
Gain = ssL + ssR − ssRoot ,
• Calculamos esta ganancia para cada variable xj y punto de división s,
y escogemos la pareja (j, s) que nos da la mayor ganancia (tal y como
hacíamos con los árboles normales).
• Continuamos hasta alcanzar alguna condicion de parada.
Defensa del TFG 18 de julio de 2023 37
Métodos boosting: XGBoost
• El parámetro γ visto en la primera ecuación interviene en la poda del
árbol
• Para cada division, se calcula la diferencia entre la ganancia de la
división y γ. Podaremos dicha rama si el valor de la diferencia es
negativo.
• Finalmente, como habíamos anticipado el valor de salida de cada
nodo es ˆ
fb(x) =
−(g1 + ... + gn)
(h1 + ... + hn + λ)
, que en el caso L = LMSE se
corresponde con
nres
P
i=1
ri
nres + λ
.
Defensa del TFG 18 de julio de 2023 38
Métodos boosting: XGBoost
1 Inicializar el modelo con un valor constante:
F̂0(x) = argminθ
n
P
i=1
L(yi, θ)
2 Para b = 1, ... , B:
1 Calcular los gradientes y hessians de la funciton pérdida:
gi =

d
dF̂
L(yi, F̂(xi))

F̂ =F̂b−1
hi =

d2
dF̂2
L(yi, F̂(xi))

F̂ =F̂b−1
.
2 Ajustar un XGBTree ˆ
fb utilizando gi y hi.
3 Actualizar el modelo: F̂b(x) = F̂b−1(x) + η ˆ
fb(x).
3 Salida del modelo final: F̂XGB(x) = F̂B(x) = F̂0(x) + η
B
P
b=1
ˆ
fb(x)
Defensa del TFG 18 de julio de 2023 39
Aplicación Real
Defensa del TFG 18 de julio de 2023 40
Aplicación Real: Análisis de los datos
Defensa del TFG 18 de julio de 2023 41
Aplicación Real: Análisis de los datos
Defensa del TFG 18 de julio de 2023 42
Aplicación Real: Análisis de los datos
Defensa del TFG 18 de julio de 2023 43
Aplicación Real: Análisis de los datos
Defensa del TFG 18 de julio de 2023 44
Aplicación Real: Análisis de los datos
• Al fusionar ambos conjuntos de datos, obtenemos un dataset con
217764 partidos y 34 variables.
• Como explicaremos en la siguiente sección, es muy conveniente
introducir una variable ResDif que representa la diferencia de
puntuación.
• Tras calcular la matriz de correlaciones, las correlaciones más altas
entre variables son las de los lanzamientos (de 2 puntos, de 3 y tiros
libres) intentados/metidos.
• En cuanto a la variable ResDif, el número de tiros de campo
realizados y el número de asistencias se encuentran entre las
estadísticas de equipo más correlacionadas
Defensa del TFG 18 de julio de 2023 45
Aplicación Real: Análisis de los datos
Defensa del TFG 18 de julio de 2023 46
Aplicación Real: Análisis de los datos
El último dataset, MNCAATourneySeeds, simpolemente proporciona el
número de cabeza de serie asociado a cada equipo del March Madness en
torneos pasados.
Defensa del TFG 18 de julio de 2023 47
Aplicación Real: Análisis de los datos
• Predecir cómo jugará un equipo contra cualquier otro requiere
información sobre el rendimiento de ambos equipos durante la
temporada regular.
• Necesitamos variables (tan pocas como sea posible) que recopilen
información valiosa sobre la competencia del equipo y sus logros
frente a diversos aspectos de la liga.
• Tras probar distintas combinaciones de características de resumen y
aplicar algunos conocimientos sobre baloncesto, nos quedamos con las
siguientes variables para nuestro modelo (para cada uno de los dos
equipos que juegan el partido)
Defensa del TFG 18 de julio de 2023 48
Aplicación Real: Análisis de los datos
• x1 = Semilla del equipo (al fin y al cabo, es el indicador número 1 de
la fuerza del equipo)
• x2 = Ratio de victorias a lo largo de la temporada (un equipo con un
mayor porcentaje de victorias es tiene más probabilidades de estar en
racha)
• x3 = Media de puntos anotados
• x4 = Media de diferencia de puntuación
• x5 = Media del porcentaje efectivo de acierto (es una métrica de
eficiencia de tiro que tiene en cuenta el hecho de que un triple vale
más que un tiro de campo). EFG =
FGM + 0,5 × 3PM
FGA
Defensa del TFG 18 de julio de 2023 49
Aplicación Real: Análisis de los datos
• x6 = Media de asistencias
• x7 = Media de tapones
• x8 = Media de anotación del oponente
• x9 = Media de EFGpct del adversario.
Puesto que en cada encuentro compiten dos equipos, tenemos estas 9
variables para cada equipo, luego nuestro modelo final tendrá 18 variables
(x1, ..., x18)
Defensa del TFG 18 de julio de 2023 50
Aplicación real: Modelización
• Queremos calcular para cada posible encuentro de entre los 64
equipos la posibilidad de que el equipo 1 gane al equipo 2.
• ¿Problema de regresión o de clasificación?
• Nuestro algoritmo XGBoost llevará a cabo la tarea de predecir la
diferencia de resultado ResDif en cada partido.
• Para convertir dichas diferencias en probabilidades, usaremos dos
métodos distintos.
Defensa del TFG 18 de julio de 2023 51
Aplicación real: Modelización
Implementación del algoritmo XGBoost en R:
La librería de R xgboost es una librería optimizada de gradient boosting
diseñada para ser altamente eficiente, flexible y portable. Implementa
algoritmos de aprendizaje automático en el marco del Gradient Boosting.
Debido a su capacidad para manejar relaciones complejas y datos de alta
dimensión, la implementación basada en árboles de XGBoost es el
algoritmo más adecuado para predecir nuestra variable ResDif. Según el
algoritmo visto en el anterior capítulo, el algoritmo XGBoost necesita
(además de otros parámetros más específicos que introduciremos) dos
cosas:
• Un conjunto de datos etiquetados.
• Una función de pérdida L
Defensa del TFG 18 de julio de 2023 52
Aplicación real: Modelización
Defensa del TFG 18 de julio de 2023 53
Aplicación real: Modelización
Defensa del TFG 18 de julio de 2023 54
Aplicación real: Modelización
Defensa del TFG 18 de julio de 2023 55
Aplicación real: Modelización
Función objetivo
En lugar de utilizar la función de pérdida como parámetro, xgboost nos
pide la función objetivo, que es básicamente una tupla con las derivadas
primera y segunda de la función de pérdida (precisamente los gi y hi de
nuestro pseudoalgoritmo).
• ¿Qué función de pérdida? MSE, MAE, RMSE, ...
• El error absoluto no es una función diferenciable, debemos encontrar
alternativas.
Defensa del TFG 18 de julio de 2023 56
Aplicación real: modelización
Funciones de pérdida que aproximan el valor absoluto
• Función de cauchy:
c2
2
ln
x2
c2
+ 1
!
, c  0
• Función fair: c2

|x|
c
− ln

|x|
c
+ 1

, c  0
Defensa del TFG 18 de julio de 2023 57
Aplicación real: modelización
Validación cruzada
• Nuestro conjunto de datos es bastante escaso, ya que disponemos
únicamente de n = 2628 partidos para entrenar el algoritmo.
• La validación cruzada se encarga de entrenar el modelo asegurándose
de usar todas porciones de los datos tanto para entrenar como para
validar.
• En nuestro caso usaremos validación cruzada de 5 iteraciones
• La realizaremos 10 veces para asegurarnos de que los árboles creados
son óptimos. =⇒ Tenemos 10 modelos XGBoost
Defensa del TFG 18 de julio de 2023 58
Aplicación real: modelización
Conversión a probabilidades
• Regresión logística
• Interpolación spline
Defensa del TFG 18 de julio de 2023 59
Aplicación real: modelización
Evaluación de las probabilidades
LogLoss = −
1
n
n
P
i=1
[yilog(F̂(xi)) + (1 − yi)log(1 − F̂(xi))]
• n es el número de partidos jugados
• F̂(xi) es la probabilidad predecida de que el equipo 1 gane al equipo 2
• yi es el resultado binario del partido (1 si gana el equipo 1, 0 si gana
el equipo 2)
En la competición del año pasado, el rango fue de 0,51-2. mientras que los
mejores usuarios (aquellos en el primer cuartil de todas las puntuaciones)
obtuvieron una puntuación en el rango de 0,51-0,59. No obstante, hay
que tener en cuenta que dependiendo del año estas puntuaciones pueden
variar hasta 0,1 puntos hacia arriba o hacia abajo.
Defensa del TFG 18 de julio de 2023 60
Aplicación real: resultados
Defensa del TFG 18 de julio de 2023 61
Aplicación real: resultados
Defensa del TFG 18 de julio de 2023 62
Aplicación real: resultados
Defensa del TFG 18 de julio de 2023 63
Aplicación real: resultados
Defensa del TFG 18 de julio de 2023 64
Aplicación real: resultados
Defensa del TFG 18 de julio de 2023 65
Aplicación real: resultados
Defensa del TFG 18 de julio de 2023 66
Aplicación real: resultados
Exámen: Datos de 2023
Para hacer el problema aún más real, hemos recopilado los datos del
campeonato este año. Los resultados de nuestro modelo fueron los
siguientes:
• MAE de 9.08 puntos
• 74.6 % de victorias predecidas
• LogLoss de 0.58
Defensa del TFG 18 de julio de 2023 67
Conclusión
Defensa del TFG 18 de julio de 2023 68

Más contenido relacionado

Similar a 2023-TFG3_ArbolesDecision_Basket

Actividad entregable 2 mate
Actividad entregable 2 mateActividad entregable 2 mate
Actividad entregable 2 mate
Norberto Rafael
 
aprendizaje estadistico modelado y análisis de redes.
aprendizaje estadistico modelado y análisis de redes.aprendizaje estadistico modelado y análisis de redes.
aprendizaje estadistico modelado y análisis de redes.
lilibeth443246
 
Expresiones algebraica unidad i
Expresiones algebraica unidad iExpresiones algebraica unidad i
Expresiones algebraica unidad i
JOSE SALAZAR
 
Unidad1 e
Unidad1 eUnidad1 e
Unidad1 e
siris83
 

Similar a 2023-TFG3_ArbolesDecision_Basket (20)

El algoritmo EM
El algoritmo EMEl algoritmo EM
El algoritmo EM
 
Algoritmo EM
Algoritmo EMAlgoritmo EM
Algoritmo EM
 
2 integracion
2 integracion2 integracion
2 integracion
 
Actividad entregable 2 mate
Actividad entregable 2 mateActividad entregable 2 mate
Actividad entregable 2 mate
 
Presentación1 elel214
Presentación1 elel214Presentación1 elel214
Presentación1 elel214
 
Unidad1
Unidad1Unidad1
Unidad1
 
Optimizacion_Robusta_I
Optimizacion_Robusta_IOptimizacion_Robusta_I
Optimizacion_Robusta_I
 
aprendizaje estadistico modelado y análisis de redes.
aprendizaje estadistico modelado y análisis de redes.aprendizaje estadistico modelado y análisis de redes.
aprendizaje estadistico modelado y análisis de redes.
 
Expresiones algebraica unidad i
Expresiones algebraica unidad iExpresiones algebraica unidad i
Expresiones algebraica unidad i
 
3ª semana límites
3ª semana  límites3ª semana  límites
3ª semana límites
 
Unidad1 e
Unidad1 eUnidad1 e
Unidad1 e
 
Optimizacion Diusty Mijares
Optimizacion Diusty MijaresOptimizacion Diusty Mijares
Optimizacion Diusty Mijares
 
PRE CALCULO N°1 ESAN
PRE CALCULO N°1 ESANPRE CALCULO N°1 ESAN
PRE CALCULO N°1 ESAN
 
Diapositivas probabilidades
Diapositivas probabilidadesDiapositivas probabilidades
Diapositivas probabilidades
 
Secuencia didáctica sobre polinomios
Secuencia didáctica sobre polinomiosSecuencia didáctica sobre polinomios
Secuencia didáctica sobre polinomios
 
Mat lab03
Mat lab03Mat lab03
Mat lab03
 
Apuntes segundo departamental
Apuntes segundo departamentalApuntes segundo departamental
Apuntes segundo departamental
 
Objetivo 2 Expresiones Algebraicas Contenido PIU 2023.pdf
Objetivo 2 Expresiones Algebraicas Contenido PIU 2023.pdfObjetivo 2 Expresiones Algebraicas Contenido PIU 2023.pdf
Objetivo 2 Expresiones Algebraicas Contenido PIU 2023.pdf
 
Taller de Matemáticas para Economistas
Taller de Matemáticas para EconomistasTaller de Matemáticas para Economistas
Taller de Matemáticas para Economistas
 
Teoria de juegos
Teoria de juegosTeoria de juegos
Teoria de juegos
 

Más de Ricardo Lopez-Ruiz

Más de Ricardo Lopez-Ruiz (20)

2024-T20-Katherine_Johnson.ppsx
2024-T20-Katherine_Johnson.ppsx2024-T20-Katherine_Johnson.ppsx
2024-T20-Katherine_Johnson.ppsx
 
2024-T19-Redes_Neuronales_II.pdf
2024-T19-Redes_Neuronales_II.pdf2024-T19-Redes_Neuronales_II.pdf
2024-T19-Redes_Neuronales_II.pdf
 
2024-T18-Disfunciones_Cerebrales.ppsx
2024-T18-Disfunciones_Cerebrales.ppsx2024-T18-Disfunciones_Cerebrales.ppsx
2024-T18-Disfunciones_Cerebrales.ppsx
 
2024-T17-Num_Perfect_Defect_Abund.ppsx
2024-T17-Num_Perfect_Defect_Abund.ppsx2024-T17-Num_Perfect_Defect_Abund.ppsx
2024-T17-Num_Perfect_Defect_Abund.ppsx
 
2024-T16-JuegoDeLaVida.ppsx
2024-T16-JuegoDeLaVida.ppsx2024-T16-JuegoDeLaVida.ppsx
2024-T16-JuegoDeLaVida.ppsx
 
2024-T15-Tipos_Numeros_Primos.ppsx
2024-T15-Tipos_Numeros_Primos.ppsx2024-T15-Tipos_Numeros_Primos.ppsx
2024-T15-Tipos_Numeros_Primos.ppsx
 
2024-T14-Primos_Gemelos.ppsx
2024-T14-Primos_Gemelos.ppsx2024-T14-Primos_Gemelos.ppsx
2024-T14-Primos_Gemelos.ppsx
 
2024-T13-NarcisoMonturiol_IsaacPeral.ppsx
2024-T13-NarcisoMonturiol_IsaacPeral.ppsx2024-T13-NarcisoMonturiol_IsaacPeral.ppsx
2024-T13-NarcisoMonturiol_IsaacPeral.ppsx
 
2024-T12-Distribución_Num_Primos.ppsx
2024-T12-Distribución_Num_Primos.ppsx2024-T12-Distribución_Num_Primos.ppsx
2024-T12-Distribución_Num_Primos.ppsx
 
2024-T11-Sam_Altman.pdf
2024-T11-Sam_Altman.pdf2024-T11-Sam_Altman.pdf
2024-T11-Sam_Altman.pdf
 
2024-T10-El_Número_de_Oro.ppsx
2024-T10-El_Número_de_Oro.ppsx2024-T10-El_Número_de_Oro.ppsx
2024-T10-El_Número_de_Oro.ppsx
 
2024-T9-Carl_Friedrich_Gauss.ppsx
2024-T9-Carl_Friedrich_Gauss.ppsx2024-T9-Carl_Friedrich_Gauss.ppsx
2024-T9-Carl_Friedrich_Gauss.ppsx
 
2024-T8-Redes_Neuronales_I.ppsx
2024-T8-Redes_Neuronales_I.ppsx2024-T8-Redes_Neuronales_I.ppsx
2024-T8-Redes_Neuronales_I.ppsx
 
2024-T7-GeoGebra.pdf
2024-T7-GeoGebra.pdf2024-T7-GeoGebra.pdf
2024-T7-GeoGebra.pdf
 
2024-T6-Paradoja_de_Russell.ppsx
2024-T6-Paradoja_de_Russell.ppsx2024-T6-Paradoja_de_Russell.ppsx
2024-T6-Paradoja_de_Russell.ppsx
 
2024-T5-Telescopio_James_Webb.ppsx
2024-T5-Telescopio_James_Webb.ppsx2024-T5-Telescopio_James_Webb.ppsx
2024-T5-Telescopio_James_Webb.ppsx
 
2024-T4-Abaco-y-OtrasCalculadoras.ppsx
2024-T4-Abaco-y-OtrasCalculadoras.ppsx2024-T4-Abaco-y-OtrasCalculadoras.ppsx
2024-T4-Abaco-y-OtrasCalculadoras.ppsx
 
2024-T3-Redes.ppsx
2024-T3-Redes.ppsx2024-T3-Redes.ppsx
2024-T3-Redes.ppsx
 
2024-T2-ProgramaVoyager-Pioneer.ppsx
2024-T2-ProgramaVoyager-Pioneer.ppsx2024-T2-ProgramaVoyager-Pioneer.ppsx
2024-T2-ProgramaVoyager-Pioneer.ppsx
 
2024-T1-ChatGPT.ppsx
2024-T1-ChatGPT.ppsx2024-T1-ChatGPT.ppsx
2024-T1-ChatGPT.ppsx
 

Último

PLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorarPLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorar
CelesteRolon2
 
metodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacientemetodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un paciente
MedicinaInternaresid1
 
Letra de cambio definición y características.ppt
Letra de cambio definición y características.pptLetra de cambio definición y características.ppt
Letra de cambio definición y características.ppt
ssuserbdc329
 
ETICA EN LA CADENAS la cadena de suministro
ETICA EN LA CADENAS la cadena de suministroETICA EN LA CADENAS la cadena de suministro
ETICA EN LA CADENAS la cadena de suministro
IrisMoreno27
 

Último (20)

PLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorarPLAN ANUAL DE PROYECTO 2020. para mejorar
PLAN ANUAL DE PROYECTO 2020. para mejorar
 
Panorama Sociodemográfico de México 2020: GUANAJUATO
Panorama Sociodemográfico de México 2020: GUANAJUATOPanorama Sociodemográfico de México 2020: GUANAJUATO
Panorama Sociodemográfico de México 2020: GUANAJUATO
 
metodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un pacientemetodo SOAP utilizado para evaluar el estado de un paciente
metodo SOAP utilizado para evaluar el estado de un paciente
 
Investigacion cualitativa y cuantitativa....pdf
Investigacion cualitativa y cuantitativa....pdfInvestigacion cualitativa y cuantitativa....pdf
Investigacion cualitativa y cuantitativa....pdf
 
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombiadecreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
decreto 2090 de 2003.pdf actividades de alto riesgo en Colombia
 
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
EXPOSICION. PROCEOS SAW SEMIATUMATIZADO,
 
Sistema Nacional de Vigilancia en Salud Pública SIVIGILA
Sistema Nacional de Vigilancia en Salud Pública SIVIGILASistema Nacional de Vigilancia en Salud Pública SIVIGILA
Sistema Nacional de Vigilancia en Salud Pública SIVIGILA
 
PIB PERÚ datos y análisis de los últimos años
PIB PERÚ datos y análisis de los últimos añosPIB PERÚ datos y análisis de los últimos años
PIB PERÚ datos y análisis de los últimos años
 
Evolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfEvolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdf
 
Perú en el ranking mundial, segun datos mineria
Perú en el ranking mundial, segun datos mineriaPerú en el ranking mundial, segun datos mineria
Perú en el ranking mundial, segun datos mineria
 
Principales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto RicoPrincipales Retos Demográficos de Puerto Rico
Principales Retos Demográficos de Puerto Rico
 
Letra de cambio definición y características.ppt
Letra de cambio definición y características.pptLetra de cambio definición y características.ppt
Letra de cambio definición y características.ppt
 
diseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptxdiseño de una linea de produccion de jabon liquido.pptx
diseño de una linea de produccion de jabon liquido.pptx
 
El Manierismo. El Manierismo
El Manierismo.              El ManierismoEl Manierismo.              El Manierismo
El Manierismo. El Manierismo
 
Los primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdfLos primeros 60 países por IDH en el año (2024).pdf
Los primeros 60 países por IDH en el año (2024).pdf
 
procedimiento paran la planificación en los centros educativos tipo v(multig...
procedimiento  paran la planificación en los centros educativos tipo v(multig...procedimiento  paran la planificación en los centros educativos tipo v(multig...
procedimiento paran la planificación en los centros educativos tipo v(multig...
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
 
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdfReservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
Reservas de divisas y oro en México en sexenio de AMLO (2018-2024).pdf
 
ETICA EN LA CADENAS la cadena de suministro
ETICA EN LA CADENAS la cadena de suministroETICA EN LA CADENAS la cadena de suministro
ETICA EN LA CADENAS la cadena de suministro
 
Los países por porcentaje de población blanca europea en AL (2024).pdf
Los países por porcentaje de población blanca europea en AL (2024).pdfLos países por porcentaje de población blanca europea en AL (2024).pdf
Los países por porcentaje de población blanca europea en AL (2024).pdf
 

2023-TFG3_ArbolesDecision_Basket

  • 1. Aprendizaje automático. Aplicación a las predicciones en el baloncesto Daniel Florén Lario Universidad de Zaragoza Grado de Matemáticas Tutor del TFG: Ricardo López Ruiz Defensa TFG Julio, 19, 2023
  • 2. Índice 1 Introducción al aprendizaje automático 2 Árboles de decisión 3 Métodos boosting 4 Aplicación del algoritmo XGBoost
  • 3. Introducción al aprendizaje automático • ¿Qué es el aprendizaje automático? "La estadística es la ciencia del aprendizaje a partir de datos. El aprendizaje automático es la ciencia del aprendizaje a partir de datos. Estos campos son idénticos en su intención aunque difieren en su historia, convenciones, énfasis y cultura". Larry A. Wasserman, estadístico Defensa del TFG 18 de julio de 2023 3
  • 4. Introducción al aprendizaje automático Tipos de aprendizaje automático: • Aprendizaje supervisado • Aprendizaje no supervisado • Aprendizaje por refuerzo Defensa del TFG 18 de julio de 2023 4
  • 5. Introducción al aprendizaje automático Aprendizaje supervisado Defensa del TFG 18 de julio de 2023 5
  • 6. Introducción al aprendizaje automático Aprendizaje supervisado, formalización Queremos predecir una variable Y basándonos en p variables predictoras: X = (X1, ..., Xp). Asumimos una relación Y = f(X) + ϵ, donde ϵ es una v.a representando el error, independiente de X y con esperanza nula. El aprendizaje supervisado estudia los métodos para estimar o aprender f. Para ello, necesitamos un conjunto de datos etiquetados. En general, tenemos un conjunto τ = {(x1, y1), (x2, y2), . . . , (xn, yn)} de datos de entrenamiento que nos ayudará a estimar la función f. El proceso de estimación de la función f es distinto según el problema específico al que nos enfrentamos. En general, hay dos tipos de problemas: problemas de regresión y problemas de clasificación Defensa del TFG 18 de julio de 2023 6
  • 7. Introducción al aprendizaje automático Aprendizaje supervisado, formalización Queremos predecir una variable Y basándonos en p variables predictoras: X = (X1, ..., Xp). Asumimos una relación Y = f(X) + ϵ, donde ϵ es una v.a representando el error, independiente de X y con esperanza nula. El aprendizaje supervisado estudia los métodos para estimar o aprender f. Para ello, necesitamos un conjunto de datos etiquetados. En general, tenemos un conjunto τ = {(x1, y1), (x2, y2), . . . , (xn, yn)} de datos de entrenamiento que nos ayudará a estimar la función f. El proceso de estimación de la función f es distinto según el problema específico al que nos enfrentamos. En general, hay dos tipos de problemas: problemas de regresión y problemas de clasificación Defensa del TFG 18 de julio de 2023 6
  • 8. Introducción al aprendizaje automático Aprendizaje supervisado, formalización Queremos predecir una variable Y basándonos en p variables predictoras: X = (X1, ..., Xp). Asumimos una relación Y = f(X) + ϵ, donde ϵ es una v.a representando el error, independiente de X y con esperanza nula. El aprendizaje supervisado estudia los métodos para estimar o aprender f. Para ello, necesitamos un conjunto de datos etiquetados. En general, tenemos un conjunto τ = {(x1, y1), (x2, y2), . . . , (xn, yn)} de datos de entrenamiento que nos ayudará a estimar la función f. El proceso de estimación de la función f es distinto según el problema específico al que nos enfrentamos. En general, hay dos tipos de problemas: problemas de regresión y problemas de clasificación Defensa del TFG 18 de julio de 2023 6
  • 9. Introducción al aprendizaje automático En un problema de regresión, la variable Y es cuantitativa (precio, presión arterial, altura, ...). Algunos de los métodos más usados son: • Regresión lineal • Árboles de regresión • Vectores de soporte para regresión • Redes neuronales Defensa del TFG 18 de julio de 2023 7
  • 10. Introducción al aprendizaje automático Regresión lineal Se asume que la dependencia de Y en X es lineal, es decir, Y = β0 + β1X1 + ...βpXp. El estimador de la función f es el hiperplano de mínimos cuadrados ˆ f(X) = Xβ̂, β̂ = (XtX)−1XtY Defensa del TFG 18 de julio de 2023 8
  • 11. Introducción al aprendizaje automático Árboles de regresión Se explicarán a fondo en el siguiente capítulo. Defensa del TFG 18 de julio de 2023 9
  • 12. Introducción al aprendizaje automático Vectores de soporte para regresión Funciona igual que la regresión lineal (en el sentido que asume una dependencia lineal de Y y X) , pero en este caso queremos que minimizar la norma ∥β∥. Para obtener el estimador de f se resuelven una serie de problemas de optimización lineal ligados al problema: mı́n β J(β) = 1 2 βt β s.t. ∥Y − Xβ∥ ≤ ϵ ⇐⇒ |Yi − (β0 + p X j=1 Xijβj)| ≤ ϵi ∀i = 1, ..., n ϵ ≥ 0n Finalmente se obtiene: ˆ f(X) = Xβ̂ = XXt(α + α∗) , donde α, α∗ ∈ Rn son los multiplicadores de Lagrange introducidos para resolver cierto problema dual. Defensa del TFG 18 de julio de 2023 10
  • 13. Introducción al aprendizaje automático Redes neuronales Se trata de modelos altamente parametrizados inspirados en la arquitectura del cerebro humano. Para predecir la variable Y en función de X, creamos dos capas representando la entrada y salida del problema y añadimos alguna capa oculta de neuronas artificiales simulando las del cerebro. Una red neuronal es una función no lineal f(X; w) + ϵ parametrizada por pesos w Defensa del TFG 18 de julio de 2023 11
  • 14. Introducción al aprendizaje automático Defensa del TFG 18 de julio de 2023 12
  • 15. Introducción al aprendizaje automático En un problema de clasificación, la variable Y es cualitativa (un correo puede ser spam o no, un dígito se encuentra en el conjunto {0, ..., 9}, ...). Algunos de los métodos más usados son: • Regresión logística • Árboles de clasificación • Clasificador bayesiano ingenuo • Redes neuronales Defensa del TFG 18 de julio de 2023 13
  • 16. Introducción al aprendizaje automático Regresión logística Es un modelo estadístico que estima la probabilidad de un resultado binario Y ∈ {0, 1}. ¿Regresión o clasificación?. Sea πi = Pr(Yi = 1|X) log ( πi 1−πi ) = β0 + β1X1i + ... + βpXpi =⇒ π̂i = exp( ˆ β0 + ˆ β1X1i + ... + ˆ βpXpi) 1 + exp( ˆ β0 + ˆ β1X1i + ... + ˆ βpXpi) Defensa del TFG 18 de julio de 2023 14
  • 17. Introducción al aprendizaje automático Clasificador bayesiano ingenuo Basándose en el Teorema de Bayes, el clasificador bayesiano ingenuo trata de encontrar las probabilidades condicionadas a cada clase: Pr(Y = k|X = x) = Pr(X|Y )Pr(Y ) Pr(X) = Pr(X1|Y ) · · · Pr(Xn|Y )Pr(Y ) Pr(X1) · · · Pr(Xn) ∝ P(Y ) n Q i=1 Pr(Xi|Y ) Finalmente, debemos de encontrar la clase k con máxima probabilidad: C(X) = argmaxk Pr(Y = k) n Q i=1 Pr(Xi|Y = k) Defensa del TFG 18 de julio de 2023 15
  • 18. Introducción al aprendizaje automático Redes neuronales y máquinas de vectores de soporte Ambos métodos resuelven tanto problemas de regresión como de clasificación. Al entrenar una red neuronal para predecir una clase de entre las M clases, se escoge la clase k tal que yk = argmáxmym. En el caso de las máquinas de vectores de soporte, se asume Y ∈ {0, 1} (hay técnicas para pasar de clasificación binaria a múltiple). La diferencia es que ahora tratamos de encontrar el hiperplano que mejor separa las dos clases, es decir, el que se orienta en la dirección que maximiza la distancia entre el miembro más cercano de cada clase. Defensa del TFG 18 de julio de 2023 16
  • 19. Introducción al aprendizaje automático Redes neuronales y máquinas de vectores de soporte Ambos métodos resuelven tanto problemas de regresión como de clasificación. Al entrenar una red neuronal para predecir una clase de entre las M clases, se escoge la clase k tal que yk = argmáxmym. En el caso de las máquinas de vectores de soporte, se asume Y ∈ {0, 1} (hay técnicas para pasar de clasificación binaria a múltiple). La diferencia es que ahora tratamos de encontrar el hiperplano que mejor separa las dos clases, es decir, el que se orienta en la dirección que maximiza la distancia entre el miembro más cercano de cada clase. Defensa del TFG 18 de julio de 2023 16
  • 20. Árboles de decisión • En este capítulo se analizan los métodos de regresión y clasificación basados en árboles. • Estos métodos consisten principalmente en dividir el espacio muestral en regiones sencillas y realizan predicciones para cada una de las regiones basándose generalmente en la media o la moda de dicha región. • Son métodos simples, fáciles de interpretar y de representar • Sin embargo, el precio a pagar es la precisión en las predicciones • De nuevo, según al problema al que nos enfrentemos, podemos hablar de árboles de regresión o árboles de clasificación. Defensa del TFG 18 de julio de 2023 17
  • 21. Árboles de decisión Árboles de regresión Empecemos con un ejemplo simple, un dataset en el que y es una variable continua representando el salario de un jugador de béisbol, x1 es el número de años profesionales de un jugador y x2 es el número de golpes en el último año. En la gráfica se muestra la relación entre estas 3 variables: Defensa del TFG 18 de julio de 2023 18
  • 22. Árboles de decisión Árboles de regresión Queremos predecir el salario de un jugador basándonos en su experiencia y el número de golpes en el último año. Un árbol de regresión trata de encontrar para cada una de las dos variables una división xj ≤ s y estima y como la media aritmética en cada región. La división óptima (aquella que reduce los errores cuadráticos) se haya entre las dos variables y todos posibles valores de s: Defensa del TFG 18 de julio de 2023 19
  • 23. Árboles de decisión Árboles de regresión Entrenamiento de un arbol de regresión Como hemos mencionado, en el caso de regresión se suele adoptar el objetivo de minimizar la suma residual de cuadrados, es decir, buscamos regiones R1, ..., RJ que minimizan J P m=1 P i∈Rm (yi − ŷm)2 , donde ŷm es la media de los yi’s en cada región: ŷm = P i yi1(xi ∈ Rm) P i 1(xi ∈ Rm) . Como es inviable considerar cada posible división, para cada variable xj consideraremos el valor s que minimiza P i:xj≤s (yi − ŷ1)2 + P i:xj>s (yi − ŷ2)2 . Despúes, se elige la mejor pareja (j,s) y se particiona el espacio muestral en dos zonas. Para cada una de estas zonas se repite el proceso hasta alcanzar una condición de parada. Defensa del TFG 18 de julio de 2023 20
  • 24. Árboles de decisión Árboles de regresión Entrenamiento de un arbol de regresión Como hemos mencionado, en el caso de regresión se suele adoptar el objetivo de minimizar la suma residual de cuadrados, es decir, buscamos regiones R1, ..., RJ que minimizan J P m=1 P i∈Rm (yi − ŷm)2 , donde ŷm es la media de los yi’s en cada región: ŷm = P i yi1(xi ∈ Rm) P i 1(xi ∈ Rm) . Como es inviable considerar cada posible división, para cada variable xj consideraremos el valor s que minimiza P i:xj≤s (yi − ŷ1)2 + P i:xj>s (yi − ŷ2)2 . Despúes, se elige la mejor pareja (j,s) y se particiona el espacio muestral en dos zonas. Para cada una de estas zonas se repite el proceso hasta alcanzar una condición de parada. Defensa del TFG 18 de julio de 2023 20
  • 25. Árboles de decisión Árboles de regresión Entrenamiento de un arbol de regresión Como hemos mencionado, en el caso de regresión se suele adoptar el objetivo de minimizar la suma residual de cuadrados, es decir, buscamos regiones R1, ..., RJ que minimizan J P m=1 P i∈Rm (yi − ŷm)2 , donde ŷm es la media de los yi’s en cada región: ŷm = P i yi1(xi ∈ Rm) P i 1(xi ∈ Rm) . Como es inviable considerar cada posible división, para cada variable xj consideraremos el valor s que minimiza P i:xj≤s (yi − ŷ1)2 + P i:xj>s (yi − ŷ2)2 . Despúes, se elige la mejor pareja (j,s) y se particiona el espacio muestral en dos zonas. Para cada una de estas zonas se repite el proceso hasta alcanzar una condición de parada. Defensa del TFG 18 de julio de 2023 20
  • 26. Árboles de decisión Árboles de regresión ¿Cuándo paramos de particionar? • Cuando el número de nodos alcanza cierto límite • Cuando el número de observaciones en cada región alcanza cierto límite • Cuando el árbol alcanza cierto nivel de profundidad • Intuitivamente, un árbol pequeño podría ser demasiado simple, mientras que un árbol muy grande podría sobreajustar los datos. A partir de ahora, T0 representará el mayor árbol considerado, y |T0| el número de nodos terminales. Podemos obtener un subárbol T (|T| < |T0|) podando el árbol T0, es decir, eliminando alguna de sus ramas. Necesitamos medidas que nos indiquen cuando debemos podar un árbol. Defensa del TFG 18 de julio de 2023 21
  • 27. Árboles de decisión Árboles de regresión Impureza de un nodo Qm(T) = 1 Nm P i:xi∈Rm (yi − ŷm)2 Criterio de coste-complejidad Cα(T) = |T| P m=1 NmQm(T) + α|T| El parámetro α es un parámetro de regularización introducido para equilibrar el tamaño del árbol con la calidad del ajuste. Para cualquier α dado, existe un árbol Tα que minimiza el criterio anterior. Como sugiere la notación, con α = 0 obtenemos T0, el árbol completo. En general, α se suele elegir mediante validación cruzada. Defensa del TFG 18 de julio de 2023 22
  • 28. Resumen del entrenamiento de un árbol de regresión 1 Utilizar la división binaria recursiva para hacer crecer un árbol grande en los datos de entrenamiento 2 Aplicar el criterio de coste-complejidad al árbol grande para obtener una secuencia de los mejores subárboles, en función de α. 3 Utilizar la validación cruzada de K iteraciones para elegir α. Para cada k = 1, . . . ,K: 1 Repita los pasos 1 y 2 en las K − 1 K-ésimas fracciones de los datos de entrenamiento, excluyendo la k-ésima fracción 2 Evaluar el error cuadrático medio de predicción sobre los datos en la k-ésima fracción, como una función de α 3 Promediar los resultados, y elegir α para minimizar el error medio 4 Devuelve el subárbol del paso 2 que corresponde al valor de α elegido Defensa del TFG 18 de julio de 2023 23
  • 29. Árboles de decisión Árboles de clasificación La idea principal es la misma: dividimos recursivamente el espacio muestral y ajustamos un modelo muy sencillo en cada partición. En el caso de la clasificación, nuestro modelo simplemente estima la probabilidad Pr(y = k|x) como la proporción observada de observaciones en el nodo m que pertenecen a la clase k: π̂mk = 1 Nm P xi∈Ri 1(yi = k) , A continuación, clasificamos las observaciones en el m-ésimo nodo según la mayor probabilidad entre las k clases: C(m) = argmaxkπ̂mk Defensa del TFG 18 de julio de 2023 24
  • 30. Árboles de decisión Árboles de clasificación • No podemos calcular mínimos cuadrados sobre predictores categóricos. • Necesitamos otras medidas de impureza de nodos Qm(T) para construir árboles de clasificación • Principalmente se usan el error de clasificación, el índice de Gini y la desviación. • Para calcular el criterio de coste-complejidad se usa el error de clasificación como medida de impureza. • El resto del algoritmo funciona exáctamente igual que en el caso de regresión. Defensa del TFG 18 de julio de 2023 25
  • 31. Árboles de decisión Métodos de ensemble • La gran ventaja de los árboles de decisión es su interpretabilidad Sin embargo, surgen algunas dudas: • ¿Son estos árboles estables frente a perturbaciones en los datos? • ¿Cómo sabemos si hay variables irrelevantes? • ¿Podemos realizar test de hipótesis como en la regresión lineal? Podemos mejorar el rendimiento de los árboles de decisión mediante las técnicas de ensemble de árboles. Nos centramos en los métodos bosques aleatorios y el boosting. El precio a pagar es la sacrificación de parte de la interpretabilidad del modelo simple. Defensa del TFG 18 de julio de 2023 26
  • 32. Árboles de decisión Métodos de ensemble Bosques aleatorios • Dado un conjunto de datos, generamos B muestras boostrap del mismo tamaño. • Para cada una de las B muestras construimos un árbol de decisión, teniendo en cuenta un pequeño detalle: cada vez que se realiza una división del espacio muestral, solamente consideraremos m variables (aleatoriamente) de entre las p variables de predicción para realizar la división. • En el caso de regresión, para calcular predicciones se realiza una media aritmética del valor obtenido en cada uno de los B árboles. • Para clasificación, se escoge la clase con más votos de entre los B árboles votantes (la moda). Defensa del TFG 18 de julio de 2023 27
  • 33. Árboles de decisión Métodos de ensemble Defensa del TFG 18 de julio de 2023 28
  • 34. Métodos boosting (regresión) • En los bosques aleatorios, cada uno de los B árboles se construye independientemente de los demás y se usa la información de todos ellos para obtener un modelo final. • El boosting funciona de forma similar, salvo que los árboles crecen de forma secuencial. • A diferencia de ajustar un único árbol grande a los datos, que pueda potencialmente sobreajustarlos, el enfoque boosting aprende lentamente. • Se ajusta un árbol de regresión pequeño a los residuos del modelo, mejorando lentamente ˆ f en las áreas en las que su rendimiento era pobre. • Se actualizan los residuos • El modelo final tiene en cuenta todos los pequeños árboles creados Defensa del TFG 18 de julio de 2023 29
  • 35. Métodos boosting (regresión) Defensa del TFG 18 de julio de 2023 30
  • 36. Métodos boosting (regresión) 1 Se ajusta ˆ f(x) = 0 y ri = yi para todos los i en el conjunto de datos de entrenamiento. 2 Para b = 1, 2,...,B, repetir: 1 Entrenar un árbol ˆ fb con d divisiones (d + 1 nodos terminales) a los datos de entrenamiento. d suele ser un valor bajo 2 Actualizar ˆ f añadiendo una versión reducida del nuevo árbol: ˆ f(x) ← ˆ f(x) + λ ˆ fb(xi) 3 Actualizar los residuos: ri ← ri − λ ˆ fb(xi) 3 Salida del modelo boosting: ˆ f(x) = B P b=1 λ ˆ fb(x) Defensa del TFG 18 de julio de 2023 31
  • 37. Métodos boosting • ¿Cuáles son los mejores valores para (B, d, λ)? • Si el número de árboles creados B es alto, podríamos sobreajustar los datos. • Cuanto más bajo sea el valor de d, más simples los árboles creados y más lento el aprendizaje • El parámetro de contracción λ ralentiza aún más el proceso, permitiendo que los árboles ataquen a los residuos de formas diferentes. • En el caso de clasificación, no tenemos residuos, luego el proceso es distinto: Se le asigna un peso a cada observación, se entrena un pequeño clasificador y se actualizan los pesos en función del rendimiento del clasificador. El modelo final clasifica según el voto mayoritario teniendo en cuenta todos árboles. Defensa del TFG 18 de julio de 2023 32
  • 38. Métodos boosting: Gradient boosting • Al igual que otros métodos boosting, gradient boosting combina pequeños aprendices débiles en un único aprendiz fuerte de forma iterativa. • Para evitar confusiones, realizaremos un pequeño cambio en la notación: F̂ será el modelo boosting, mientras que ˆ fb serán los aprendices débiles introducidos en cada etapa. Por lo tanto, en cada etapa (1 ≤ b ≤ B) F̂b es la versión actualizada de F̂b−1 teniendo en cuenta el pequeño árbol ˆ fb : F̂b = F̂b−1 + λb ˆ fb , y nuestro modelo final será F̂boost = F̂B. • Como en todos métodos boosting, gradient boosting ajusta λb ˆ fb al residuo yi − F̂b(xi) Defensa del TFG 18 de julio de 2023 33
  • 39. Métodos boosting: Gradient boosting El problema es que a veces la función de pérdida L no es simplemente LMSE = 1 n n P i=1 (yi − F̂(xi))2 = 1 n n P i=1 r2 i Es decir, ya no nos interesa reducir los residuos sino encontrar λb ˆ fb tales que: (λb, ˆ fb) = argmin(λ,f) n P i=1 L(yi, F̂b−1(xi) + λf(xi)) = Para una función de pérdida general L, gradient boosting en su entrenamiento ajusta λb ˆ fb a lo que se conoce como pseudo-residuos: gb i = − " ∂L(yi, F̂) ∂F̂ # F̂=F̂b−1(x) , i = 1, ..., n Defensa del TFG 18 de julio de 2023 34
  • 40. Métodos boosting: Gradient boosting 1 El modelo inicial es constante: F̂0(x) = argminλ n P i=1 L(yi, λ) 2 Para b = 1, ..., B: 1 Calcular los pseudo-residuos gb i : gb i = − " ∂L(yi, F̂(xi)) ∂F̂(xi) # F̂ =F̂b−1(x) 2 Ajustar un aprendiz débil ˆ fb a los gb i 3 Calcular el parámetro λb resolviendo el problema de optimización: λb = argminλ n P i=1 L(yi, F̂b−1(xi) + λ ˆ fb(xi)) 4 Actualizar el modelo: F̂b(x) = F̂b−1(x) + λb ˆ fb(x) 3 El modelo final es F̂boost(x) = F̂B(x) Defensa del TFG 18 de julio de 2023 35
  • 41. Métodos boosting: XGBoost • Funciona exactamente igual que el gradient boosting, pero con la particularidad de que los árboles se construyen de manera distinta: • Cada XGBTree trata de minimizar la ecuación: n P i=1 L(yi, F̂(xi)) + γT + 1 2 λ ˆ f(x)2 • Tras usar aproximaciones de Taylor de segundo orden, el valor de ˆ f(x) que minimiza la ecuación es ˆ fb(x) = −(g1 + ... + gn) (h1 + ... + hn + λ) , siendo gi y hi la primera y segunda derivada de L respecto de F̂. • Este proceso nos dará el valor de salida de cada nodo Defensa del TFG 18 de julio de 2023 36
  • 42. Métodos boosting: XGBoost • La puntuación de similitud para cada nodo se define como: ss = ( nres P i=1 ri)2 nres + λ • Al igual que en los árboles normales, consideramos posibles divisiones de la forma xj ≤ s y xj > s, pero ahora con el objetivo de minimizar la ganancia de cada división: Gain = ssL + ssR − ssRoot , • Calculamos esta ganancia para cada variable xj y punto de división s, y escogemos la pareja (j, s) que nos da la mayor ganancia (tal y como hacíamos con los árboles normales). • Continuamos hasta alcanzar alguna condicion de parada. Defensa del TFG 18 de julio de 2023 37
  • 43. Métodos boosting: XGBoost • El parámetro γ visto en la primera ecuación interviene en la poda del árbol • Para cada division, se calcula la diferencia entre la ganancia de la división y γ. Podaremos dicha rama si el valor de la diferencia es negativo. • Finalmente, como habíamos anticipado el valor de salida de cada nodo es ˆ fb(x) = −(g1 + ... + gn) (h1 + ... + hn + λ) , que en el caso L = LMSE se corresponde con nres P i=1 ri nres + λ . Defensa del TFG 18 de julio de 2023 38
  • 44. Métodos boosting: XGBoost 1 Inicializar el modelo con un valor constante: F̂0(x) = argminθ n P i=1 L(yi, θ) 2 Para b = 1, ... , B: 1 Calcular los gradientes y hessians de la funciton pérdida: gi = d dF̂ L(yi, F̂(xi)) F̂ =F̂b−1 hi = d2 dF̂2 L(yi, F̂(xi)) F̂ =F̂b−1 . 2 Ajustar un XGBTree ˆ fb utilizando gi y hi. 3 Actualizar el modelo: F̂b(x) = F̂b−1(x) + η ˆ fb(x). 3 Salida del modelo final: F̂XGB(x) = F̂B(x) = F̂0(x) + η B P b=1 ˆ fb(x) Defensa del TFG 18 de julio de 2023 39
  • 45. Aplicación Real Defensa del TFG 18 de julio de 2023 40
  • 46. Aplicación Real: Análisis de los datos Defensa del TFG 18 de julio de 2023 41
  • 47. Aplicación Real: Análisis de los datos Defensa del TFG 18 de julio de 2023 42
  • 48. Aplicación Real: Análisis de los datos Defensa del TFG 18 de julio de 2023 43
  • 49. Aplicación Real: Análisis de los datos Defensa del TFG 18 de julio de 2023 44
  • 50. Aplicación Real: Análisis de los datos • Al fusionar ambos conjuntos de datos, obtenemos un dataset con 217764 partidos y 34 variables. • Como explicaremos en la siguiente sección, es muy conveniente introducir una variable ResDif que representa la diferencia de puntuación. • Tras calcular la matriz de correlaciones, las correlaciones más altas entre variables son las de los lanzamientos (de 2 puntos, de 3 y tiros libres) intentados/metidos. • En cuanto a la variable ResDif, el número de tiros de campo realizados y el número de asistencias se encuentran entre las estadísticas de equipo más correlacionadas Defensa del TFG 18 de julio de 2023 45
  • 51. Aplicación Real: Análisis de los datos Defensa del TFG 18 de julio de 2023 46
  • 52. Aplicación Real: Análisis de los datos El último dataset, MNCAATourneySeeds, simpolemente proporciona el número de cabeza de serie asociado a cada equipo del March Madness en torneos pasados. Defensa del TFG 18 de julio de 2023 47
  • 53. Aplicación Real: Análisis de los datos • Predecir cómo jugará un equipo contra cualquier otro requiere información sobre el rendimiento de ambos equipos durante la temporada regular. • Necesitamos variables (tan pocas como sea posible) que recopilen información valiosa sobre la competencia del equipo y sus logros frente a diversos aspectos de la liga. • Tras probar distintas combinaciones de características de resumen y aplicar algunos conocimientos sobre baloncesto, nos quedamos con las siguientes variables para nuestro modelo (para cada uno de los dos equipos que juegan el partido) Defensa del TFG 18 de julio de 2023 48
  • 54. Aplicación Real: Análisis de los datos • x1 = Semilla del equipo (al fin y al cabo, es el indicador número 1 de la fuerza del equipo) • x2 = Ratio de victorias a lo largo de la temporada (un equipo con un mayor porcentaje de victorias es tiene más probabilidades de estar en racha) • x3 = Media de puntos anotados • x4 = Media de diferencia de puntuación • x5 = Media del porcentaje efectivo de acierto (es una métrica de eficiencia de tiro que tiene en cuenta el hecho de que un triple vale más que un tiro de campo). EFG = FGM + 0,5 × 3PM FGA Defensa del TFG 18 de julio de 2023 49
  • 55. Aplicación Real: Análisis de los datos • x6 = Media de asistencias • x7 = Media de tapones • x8 = Media de anotación del oponente • x9 = Media de EFGpct del adversario. Puesto que en cada encuentro compiten dos equipos, tenemos estas 9 variables para cada equipo, luego nuestro modelo final tendrá 18 variables (x1, ..., x18) Defensa del TFG 18 de julio de 2023 50
  • 56. Aplicación real: Modelización • Queremos calcular para cada posible encuentro de entre los 64 equipos la posibilidad de que el equipo 1 gane al equipo 2. • ¿Problema de regresión o de clasificación? • Nuestro algoritmo XGBoost llevará a cabo la tarea de predecir la diferencia de resultado ResDif en cada partido. • Para convertir dichas diferencias en probabilidades, usaremos dos métodos distintos. Defensa del TFG 18 de julio de 2023 51
  • 57. Aplicación real: Modelización Implementación del algoritmo XGBoost en R: La librería de R xgboost es una librería optimizada de gradient boosting diseñada para ser altamente eficiente, flexible y portable. Implementa algoritmos de aprendizaje automático en el marco del Gradient Boosting. Debido a su capacidad para manejar relaciones complejas y datos de alta dimensión, la implementación basada en árboles de XGBoost es el algoritmo más adecuado para predecir nuestra variable ResDif. Según el algoritmo visto en el anterior capítulo, el algoritmo XGBoost necesita (además de otros parámetros más específicos que introduciremos) dos cosas: • Un conjunto de datos etiquetados. • Una función de pérdida L Defensa del TFG 18 de julio de 2023 52
  • 58. Aplicación real: Modelización Defensa del TFG 18 de julio de 2023 53
  • 59. Aplicación real: Modelización Defensa del TFG 18 de julio de 2023 54
  • 60. Aplicación real: Modelización Defensa del TFG 18 de julio de 2023 55
  • 61. Aplicación real: Modelización Función objetivo En lugar de utilizar la función de pérdida como parámetro, xgboost nos pide la función objetivo, que es básicamente una tupla con las derivadas primera y segunda de la función de pérdida (precisamente los gi y hi de nuestro pseudoalgoritmo). • ¿Qué función de pérdida? MSE, MAE, RMSE, ... • El error absoluto no es una función diferenciable, debemos encontrar alternativas. Defensa del TFG 18 de julio de 2023 56
  • 62. Aplicación real: modelización Funciones de pérdida que aproximan el valor absoluto • Función de cauchy: c2 2 ln x2 c2 + 1 ! , c 0 • Función fair: c2 |x| c − ln |x| c + 1 , c 0 Defensa del TFG 18 de julio de 2023 57
  • 63. Aplicación real: modelización Validación cruzada • Nuestro conjunto de datos es bastante escaso, ya que disponemos únicamente de n = 2628 partidos para entrenar el algoritmo. • La validación cruzada se encarga de entrenar el modelo asegurándose de usar todas porciones de los datos tanto para entrenar como para validar. • En nuestro caso usaremos validación cruzada de 5 iteraciones • La realizaremos 10 veces para asegurarnos de que los árboles creados son óptimos. =⇒ Tenemos 10 modelos XGBoost Defensa del TFG 18 de julio de 2023 58
  • 64. Aplicación real: modelización Conversión a probabilidades • Regresión logística • Interpolación spline Defensa del TFG 18 de julio de 2023 59
  • 65. Aplicación real: modelización Evaluación de las probabilidades LogLoss = − 1 n n P i=1 [yilog(F̂(xi)) + (1 − yi)log(1 − F̂(xi))] • n es el número de partidos jugados • F̂(xi) es la probabilidad predecida de que el equipo 1 gane al equipo 2 • yi es el resultado binario del partido (1 si gana el equipo 1, 0 si gana el equipo 2) En la competición del año pasado, el rango fue de 0,51-2. mientras que los mejores usuarios (aquellos en el primer cuartil de todas las puntuaciones) obtuvieron una puntuación en el rango de 0,51-0,59. No obstante, hay que tener en cuenta que dependiendo del año estas puntuaciones pueden variar hasta 0,1 puntos hacia arriba o hacia abajo. Defensa del TFG 18 de julio de 2023 60
  • 66. Aplicación real: resultados Defensa del TFG 18 de julio de 2023 61
  • 67. Aplicación real: resultados Defensa del TFG 18 de julio de 2023 62
  • 68. Aplicación real: resultados Defensa del TFG 18 de julio de 2023 63
  • 69. Aplicación real: resultados Defensa del TFG 18 de julio de 2023 64
  • 70. Aplicación real: resultados Defensa del TFG 18 de julio de 2023 65
  • 71. Aplicación real: resultados Defensa del TFG 18 de julio de 2023 66
  • 72. Aplicación real: resultados Exámen: Datos de 2023 Para hacer el problema aún más real, hemos recopilado los datos del campeonato este año. Los resultados de nuestro modelo fueron los siguientes: • MAE de 9.08 puntos • 74.6 % de victorias predecidas • LogLoss de 0.58 Defensa del TFG 18 de julio de 2023 67
  • 73. Conclusión Defensa del TFG 18 de julio de 2023 68