Herramientas de usuario

Herramientas del sitio


clase:iabd:pia:2eval:tema07.metricas_derivadas

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
Última revisión Ambos lados, revisión siguiente
clase:iabd:pia:2eval:tema07.metricas_derivadas [2024/03/19 13:54]
admin [Juntado dos Métricas Básicas]
clase:iabd:pia:2eval:tema07.metricas_derivadas [2024/03/25 14:33]
admin [Juntado dos Métricas Básicas]
Línea 100: Línea 100:
  
 $$ $$
-Threhold=maximo \{ sensibilidad(threhold)+especificidad(threhold)-1 \} \;\; threshold \in [0,1]+Threhold que máximiza \{ sensibilidad(threhold)+especificidad(threhold)-1 \} \;\; threshold \in [0,1]
 $$ $$
  
Línea 169: Línea 169:
 </sxh> </sxh>
  
 +
 +Mas información:
 +  * [[https://keras.io/api/metrics/classification_metrics/#auc-class|AUC class]]
 +  * [[https://aprendeia.com/curvas-roc-y-area-bajo-la-curva-auc-machine-learning/|Curvas ROC y Área bajo la curva (AUC)]]
 +  * [[https://machinelearningmastery.com/roc-curves-and-precision-recall-curves-for-classification-in-python/|How to Use ROC Curves and Precision-Recall Curves for Classification in Python]]
 +  * {{ :clase:iabd:pia:2eval:predicting_receiver_operating_characteristic_curve_area_under_curve_and_arithmetic_means_of_accuracies_based_on_the_distribution_of_data_samples.pdf |Predicting Receiver Operating Characteristic curve, area under curve , and arithmetic means of accuracies based on the distribution of data samples}}
 +  * [[https://neptune.ai/blog/f1-score-accuracy-roc-auc-pr-auc|F1 Score vs ROC AUC vs Accuracy vs PR AUC: Which Evaluation Metric Should You Choose?]]
 +  * [[https://stackoverflow.com/questions/44172162/f1-score-vs-roc-auc|F1 Score vs ROC AUC]] 
  
  
Línea 201: Línea 209:
  
  
 +Y por otro lado , podemos definir la fórmula en función de Sensibilidad , Especificidad y Prevalencia.
  
-==== Matthews Correlation Coefficient o MMC ==== +$$F1{\text -}score=\frac{2}{\frac{1}{Sensibilidad}+\frac{1}{Precision}}=$$ 
-Es otra métrica pero que tiene en cuenta que los datos no estén balanceados.  +$$\frac{2}{\frac{1}{Sensibilidad}+\frac{1}{\frac{Sensibilidad*Prevalencia}{Sensibilidad*Prevalencia+(1-Especificidad)*(1-Prevalencia)}}}=$$ 
- +$$\frac{2}{\frac{1}{Sensibilidad}+{\frac{Sensibilidad*Prevalencia+(1-Especificidad)*(1-Prevalencia)}{Sensibilidad*Prevalencia}}}=$$ 
-El MMC tiene un valor entre -1 1. Siendo: +$$\frac{2}{\frac{1}{\frac{Sensibilidad*Prevalencia}{Prevalencia}}+{\frac{Sensibilidad*Prevalencia+(1-Especificidad)*(1-Prevalencia)}{Sensibilidad*Prevalencia}}}=$$ 
-  * 1 : El clasificador funciona perfectamente +$$\frac{2}{{\frac{Prevalencia}{Sensibilidad*Prevalencia}}+{\frac{Sensibilidad*Prevalencia+(1-Especificidad)*(1-Prevalencia)}{Sensibilidad*Prevalencia}}}=$$ 
-  * 0 : El clasificador acierta aleatoriamente +$$\frac{2}{{\frac{Prevalencia+Sensibilidad*Prevalencia+(1-Especificidad)*(1-Prevalencia)}{Sensibilidad*Prevalencia}}}=$$ 
-  * -1 : El clasificador acierta peor que aleatoriamente, es decir que clasifica al revés "perfectamente" +$$\frac{2*Sensibilidad*Prevalencia}{Prevalencia+Sensibilidad*Prevalencia+(1-Especificidad)*(1-Prevalencia)}=$$ 
- +$$\frac{2*Sensibilidad*Prevalencia}{Prevalencia+Sensibilidad*Prevalencia+1-Prevalencia-Especificidad+Especificidad*Prevalencia}=$$ 
-$$MCC = \frac{ \mathit{TP} \times \mathit{TN} - \mathit{FP} \times \mathit{FN} } {\sqrt{ (\mathit{TP\mathit{FP}) ( \mathit{TP} + \mathit{FN} ) ( \mathit{TN\mathit{FP) ( \mathit{TN} + \mathit{FN} ) } }$$ +$$\frac{2*Sensibilidad*Prevalencia}{Prevalencia*(1+Sensibilidad-1+Especificidad)+1-Especificidad}=$$ 
- +$$F1{\text -}score=\frac{2*Sensibilidad*Prevalencia}{Prevalencia*(Sensibilidad+Especificidad)+(1-Especificidad)}$$
- +
-Podemos hacer uso de la métrica con la función ''sklearn.metrics.matthews_corrcoef'' de sklearn +
- +
-Ejemplo de uso: +
-<sxh python> +
-from sklearn.metrics import matthews_corrcoef +
- +
-y_true = [1,1,1,1,0,0,0,0] +
-y_pred = [1,1,1,1,0,0,0,0] +
-print("Valor para una predicción que acierta siempre=",matthews_corrcoef(y_true,y_pred)) +
- +
-y_true = [1,1,1,1,0,0,0,0] +
-y_pred = [1,1,0,0,1,1,0,0] +
-print("Valor para una predicción que acierta la mitad=",matthews_corrcoef(y_true,y_pred)+
- +
-y_true [1,1,1,1,0,0,0,0] +
-y_pred = [0,0,0,0,1,1,1,1] +
-print("Valor para una predicción que nunca acierta=",matthews_corrcoef(y_true,y_pred)) +
-</sxh> +
- +
- +
-<sxh base> +
-Valor para una predicción que acierta siempre= 1.0 +
-Valor para una predicción que acierta la mitad= 0.0 +
-Valor para una predicción que nunca acierta= -1.0 +
-</sxh> +
- +
- +
- +
- +
- +
-Mas información: +
-  [[https://scikit-learn.org/stable/modules/generated/sklearn.metrics.matthews_corrcoef.html|sklearn.metrics.matthews_corrcoef]] +
-  [[https://towardsdatascience.com/the-best-classification-metric-youve-never-heard-of-the-matthews-correlation-coefficient-3bf50a2f3e9a|Matthews Correlation Coefficient is The Best Classification Metric You’ve Never Heard Of]] +
-  [[https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5721660/|Ten quick tips for machine learning in computational biology]] +
-  [[https://medium.com/@cdefaux/phi-coefficient-a-k-a-matthews-correlation-coefficient-binary-classification-11e2c29db91e|Phi Coefficient A.K.A Matthews Correlation Coefficient (Binary Classification)]] +
-  * {{ :clase:iabd:pia:2eval:the_advantages_of_the_matthews_correlation_coeffic.pdf |The advantages of the Matthews correlation coefficient (MCCover F1 score and accuracy in binary classification evaluation}} +
-  [[https://en.wikipedia.org/wiki/Phi_coefficient|Phi coefficient-Wikipedia]] +
- +
- +
  
  
clase/iabd/pia/2eval/tema07.metricas_derivadas.txt · Última modificación: 2024/03/25 14:47 por admin