4.3.5
MCC
Resumen
- Coeficiente de correlación de Matthews (MCC) | Una métrica equilibradaの概要を押さえ、評価対象と読み取り方を整理します。
- Python 3.13 のコード例で算出・可視化し、手順と実務での確認ポイントを確認します。
- 図表や補助指標を組み合わせ、モデル比較や閾値調整に活かすヒントをまとめます。
1. Definición #
En clasificación binaria: \mathrm{MCC} = \frac{TP \cdot TN - FP \cdot FN}{\sqrt{(TP + FP)(TP + FN)(TN + FP)(TN + FN)}}.
- 1 → predicción perfecta
- 0 → equivalente al azar
- −1 → desacuerdo total La versión multiclase se construye a partir de la matriz de confusión completa.
2. Cálculo con Python 3.13 #
| |
| |
class_weight=“balanced” facilita que la clase minoritaria influya en el resultado.
3. MCC frente al umbral #
Identifica el umbral donde el MCC alcanza su máximo para equilibrar todas las celdas de la matriz de confusión.
4. Aplicaciones prácticas #
- Controlar la exactitud – si la exactitud es alta pero el MCC bajo, alguna clase está siendo ignorada.
- Selección de modelos – usa make_scorer(matthews_corrcoef) en GridSearchCV para optimizarlo directamente.
- Complementar ROC/PR – MCC ofrece una visión global, mientras que ROC-AUC o PR-AUC se centran en el ranking y la recuperación.
Resumen #
- MCC ofrece una evaluación equilibrada entre −1 y 1 que considera TP, FP, FN y TN.
- En Python 3.13 basta con matthews_corrcoef; visualizarlo contra el umbral ayuda a elegir el mejor punto de operación.
- Repórtalo junto a Accuracy, F1 y las métricas PR para evitar conclusiones engañosas en datos desbalanceados.