Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
clase:iabd:pia:matematicas:probabilidad_metricas [2024/02/04 20:03] admin [Generalizando los intervalos] |
clase:iabd:pia:matematicas:probabilidad_metricas [2025/03/02 11:35] (actual) admin ↷ Página movida de clase:iabd:pia:experimentos:probabilidad_metricas a clase:iabd:pia:matematicas:probabilidad_metricas |
||
---|---|---|---|
Línea 8: | Línea 8: | ||
Para calcular las métricas tenemos 2 arrays: | Para calcular las métricas tenemos 2 arrays: | ||
* $ Y_{real}= \{ y_{real} \in \mathbb{N} \mid y_{real} \in \{0,1\} \; \} $ Array con los valores reales o verdaderos. | * $ Y_{real}= \{ y_{real} \in \mathbb{N} \mid y_{real} \in \{0,1\} \; \} $ Array con los valores reales o verdaderos. | ||
- | * $ Y_{predicho}=\{ y_{predicho} \in \mathbb{R} \mid y_{predicho}\in[0, | + | * $ Y_{predicho}=\{ y_{predicho} \in \mathbb{R} \mid y_{predicho}\in[0, |
+ | |||
+ | y ahora los juntamos en un único conjunto | ||
+ | |||
* $ Y= \{ (y_{real}, | * $ Y= \{ (y_{real}, | ||
Línea 28: | Línea 31: | ||
$FP=|\{ (y_{real}, | $FP=|\{ (y_{real}, | ||
- | $TN=|\{ (y_{real}, | + | $FN=|\{ (y_{real}, |
- | $TN=|\{ (y_{real}, | + | $TP=|\{ (y_{real}, |
La matriz de confusión es la siguiente: | La matriz de confusión es la siguiente: | ||
Línea 52: | Línea 55: | ||
| ^^ Predicción | | ^^ Predicción | ||
- | | ^^ PN,$ y_{predicho} \in [0, | + | | ^^ PN,$ y_{predicho} \in [0, |
^ Realidad | ^ Realidad | ||
^ ::: ^ P, | ^ ::: ^ P, | ||
Línea 105: | Línea 108: | ||
- | Pero usando Bayes podemos calcular | + | Pero usando Bayes podemos calcular |
$$P(Positivo|Predicho \; positivo)=\frac{P(Predicho \; positivo|Positivo)*P(Positivo)}{P(Predicho \; positivo|Positivo)*P(Positivo)+P(Predicho \; positivo|Negativo)*P(Negativo)} | $$P(Positivo|Predicho \; positivo)=\frac{P(Predicho \; positivo|Positivo)*P(Positivo)}{P(Predicho \; positivo|Positivo)*P(Positivo)+P(Predicho \; positivo|Negativo)*P(Negativo)} | ||
- | <note important> | + | $$P(Positivo|Predicho \; negativo)=\frac{P(Predicho \; negativo|Positivo)*P(Positivo)}{P(Predicho \; negativo|Positivo)*P(Positivo)+P(Predicho \; negativo|Negativo)*P(Negativo)} |
- | Habría que poner las 3 formulas restantes de las 3 métricas que quedan, pero no se indican por ahorrar trabajo. | + | |
- | </ | + | $$P(Negativo|Predicho \; negativo)=\frac{P(Predicho \; negativo|Negativo)*P(Negativo)}{P(Predicho \; negativo|Negativo)*P(Negativo)+P(Predicho \; negativo|Positivo)*P(Positivo)} |
+ | |||
+ | $$P(Negativo|Predicho \; positivo)=\frac{P(Predicho \; positivo|Negativo)*P(Negativo)}{P(Predicho \; positivo|Negativo)*P(Negativo)+P(Predicho \; positivo|Positivo)*P(Positivo)} | ||
====== Simplificando las fórmulas ====== | ====== Simplificando las fórmulas ====== | ||
Línea 117: | Línea 122: | ||
- | $I=\{ \;\; \{[0,0.5[\}\;,\;\{[0.5,1[\}\;\; \}$ | + | $I=\{ \;\; [0, |
Por lo tanto ahora habrá menos fórmulas. | Por lo tanto ahora habrá menos fórmulas. | ||
Línea 205: | Línea 210: | ||
====== Generalizando los intervalos ====== | ====== Generalizando los intervalos ====== | ||
- | y ahora viene lo interesante, | + | __**y ahora viene lo interesante, |
- | $I=\{ \;\;\{[0,0.1[\}\;,\;\{[0.1,0.2[\}\;,\;\{[0.2,0.3]\}\;,\;\{[0.3,0.4]\}\;,\;\{[0.4,0.5]\}\;,\;\{[0.5,0.6]\}\;,\;\{[0.6,0.7]\}\;,\;\{[0.7,0.8]\}\;,\;\{[0.8,0.9]\}\;,\;\{[0.9,1]\} \;\;\}$ | + | $I=\{ \; |
+ | En el siguiente código en Python se puede ver el resultado de usar las fórmulas: | ||
+ | |||
+ | ====== Infinitos intervalos ====== | ||
¿Y si hubiera infinitos intervalos? Que podríamos sacar la probabilidad exacta para el resultado que nos ha dado. | ¿Y si hubiera infinitos intervalos? Que podríamos sacar la probabilidad exacta para el resultado que nos ha dado. | ||
+ | ¿como sacarlo para infinitos intervalos? Pues calculando la función de densidad de probabilidad. | ||
+ | |||
+ | Sabemos que la función de coste para las redes neuronales es $Binary \: Cross \: Entropy$: | ||
+ | |||
+ | $$Binary \: Cross \: Entropy(y_{real}, | ||
+ | |||
+ | Los valores de $y_{real}$ son 0 o 1, mientras que los valores de $y_{predicho}$ es un número real entre 0 y 1 | ||
+ | |||
+ | Veamos ahora gráficamente como es la fórmula según si $y_{real}=0$ o $y_{real}=1$ | ||
+ | |||
+ | $$ | ||
+ | Binary \: Cross \: Entropy(y_{real}, | ||
+ | -log(1-y_{predicho}) & si & y_{real}=0 | ||
+ | -log(y_{predicho}) & si & y_{real}=1 | ||
+ | \end{matrix}\right. | ||
+ | $$ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ====== Ejemplos ====== | ||
+ | |||
+ | * Evolución de la red de "las imágenes de números " en 16 épocas: | ||
+ | {{ : | ||
+ | * Evolución de la red de " | ||
+ | {{ : | ||