Meta tags:
description= Aprende qué es una matriz de confusión, cómo construirla en Python con scikit-learn, visualizarla con seaborn y derivar precisión, exhaustividad y F1-score.;
Headings (most frequently used words):
de, la, matriz, confusión, es, una, métricas, en, vs, machine, learning, comprender, qué, derivadas, ejemplo, numérico, trabajado, construir, python, matrices, multiclase, errores, comunes, otras, herramientas, evaluación, conclusiones, clave, cuándo, priorizar, precisión, exhaustividad, usando, scikit, learn, calcular, manualmente, visualizar, con, seaborn, exactitud, engañosa, conjuntos, datos, desequilibrados, elegir, estrategia, promediado, incorrecta, olvidar, normalización,
Text of the page (most frequently used words):
#python (60), las (24), una (23), matriz (22), confusión (21), datos (18), para (16), matplotlib (16), aprender (15), confusion_matrix (15), con (15), clases (14), exhaustividad (13), mysql (13), los (12), plt (12), mongodb (12), precisión (11), que (11), modelo (11), print (11), positivo (11), elementos (11), score (10), cada (10), copiar (10), y_true (10), y_pred (10), cat (10), qué (9), negativo (9), exactitud (8), por (8), rabbit (8), dog (8), listas (8), html (7), métricas (7), seaborn (7), import (7), recall (7), precision (7), tuplas (7), errores (6), multiclase (6), conjunto (6), sklearn (6), metrics (6), del (6), conjuntos (6), crear (6), son (6), reales (6), pacientes (6), eliminar (6), métodos (6), w3docs (5), fila (5), real (5), true (5), cuando (5), predice (5), labels (5), celdas (5), accuracy (5), verdadero (5), falso (5), archivos (5), string (5), strings (5), primeros (5), pasos (5), tutorial (5), variables (5), lista (5), formatter (5), color (5), todos (4), json (4), generator (4), herramientas (4), comunes (4), matrices (4), promediado (4), confusionmatrixdisplay (4), desequilibrados (4), predicciones (4), cuatro (4), métrica (4), correctamente (4), cómo (4), todas (4), classification_report (4), scikit (4), learn (4), from (4), más (4), calcular (4), tabla (4), enfermos (4), predicción (4), realidad (4), positiva (4), tipo (4), negativa (4), regresión (4), diccionarios (4), acceder (4), code (3), encoder (3), editor (3), cuestionarios (3), ejercicios (3), php (3), javascript (3), css (3), evaluación (3), construir (3), decisión (3), distribución (3), weighted (3), macro (3), siempre (3), especialmente (3), conteos (3), cuántos (3), curva (3), auc (3), roc (3), clase (3), general (3), capítulo (3), confusion (3), matrix (3), pyplot (3), dos (3), cuadrícula (3), predichas (3), correctas (3), positive (3), negative (3), and (3), fueron (3), 909 (3), 833 (3), clasificación (3), error (3), etiquetas (3), cadenas (3), recorrer (3), unir (3), ver (3), tools (3), italiano (2), português (2), español (2), français (2), русский (2), deutsch (2), english (2), beautifier (2), diff (2), password (2), try (2), java (2), git (2), libros (2), ejemplos (2), fragmentos (2), conclusiones (2), clave (2), otras (2), ejemplo (2), numérico (2), trabajado (2), derivadas (2), this (2), page (2), agrupamiento (2), jerárquico (2), árbol (2), estrategia (2), micro (2), columna (2), usa (2), sola (2), comete (2), solo (2), usando (2), validación (2), cruzada (2), comparar (2), comprender (2), tipos (2), suma (2), fracción (2), cm_normalized (2), normalize (2), usar (2), obtener (2), sobre (2), consulta (2), train (2), test (2), pero (2), caso (2), primera (2), promedio (2), ponderado (2), problemas (2), mapa (2), calor (2), show (2), 150 (2), dpi (2), png (2), savefig (2), tight_layout (2), title (2), blues (2), cmap (2), disp (2), diagonal (2), celda (2), como (2), fmt (2), annot (2), label (2), sns (2), leer (2), visualizar (2), salida (2), array (2), numpy (2), predeterminada (2), detectados (2), contexto (2), médico (2), importa (2), 100 (2), paso (2), sanos (2), detectar (2), prioriza (2), spam (2), media (2), estándar (2), palabra (2), indica (2), machine (2), learning (2), handling (2), números (2), limit (2), colección (2), delete (2), ordenar (2), base (2), dispersión (2), introducción (2), bucles (2), set (2), sets (2), cambiar (2), agregar (2), hash (2), 2026, derechos, reservados, hecho, desarrolladores, idioma, política, privacidad, contacto, acerca, empresa, práctica, tutoriales, gratuitos, web, desde, 2014, next, previous, yes, was, helpful, adapta, siguen, misma, convención, predicho, escalan, cálculo, visualización, insuficiente, comprueba, desglosa, revelan, ajustar, hiperparámetros, elegida, grid, search, estimar, tan, bien, generaliza, vistos, clasificadores, umbrales, específicos, ideal, herramienta, ahora, mostrando, predicha, round, brutos, dependen, tamaño, modelos, entrenados, diferentes, tamaños, normaliza, dividiendo, pasa, olvidar, normalización, están, muy, desequilibradas, infla, puntuación, poco, frecuentes, imagen, realista, calidad, completo, elegir, incorrecta, combina, saber, división, representativa, independiente, umbral, split, considera, donde, muestras, negativas, alcanza, tiene, cero, nunca, detecta, revela, esto, inmediato, toda, estará, compuesta, engañosa, agrega, antes, dividir, equilibrados, soporte, número, instancias, entre, trata, igual, calculan, luego, promedian, ofrece, tres, estrategias, añadido, alternativa, conveniente, línea, requiere, dependencia, cm_multiclass, multi, class, plot, display_labels, three, classes, hay, expande, sigue, representando, representa, fuera, imprime, conteo, dentro, formatea, enteros, ylabel, predicted, xlabel, yticklabels, xticklabels, heatmap, hace, sea, fácil, 727, 800, 667, 700, esperada, ravel, puedes, extraer, mismo, verificar, manualmente, devuelve, forma, filas, columnas, coincidiendo, diseño, mostrado, anteriormente, disposición, target_names, ground, truth, model, predictions, proporciona, informe, texto, listo, mediante, observa, parece, aceptable, significa, esa, diferencia, mucho, dato, 869, cálculos, descartados, marcados, incorrectamente, identificados, supón, examina, enfermedad, equilibra, ambas, está, desequilibrado, falsas, alarmas, costosas, recomendaciones, quirúrgicas, marcado, documentos, legales, sistemas, notificaciones, push, omitir, costoso, cribado, detección, fraude, filtros, deben, mensaje, cuándo, priorizar, armónica, negativos, descartaron, especificidad, positivos, encontrados, sensibilidad, positivas, cuántas, total, mide, fórmula, alimentan, truco, mnemotécnico, fue, correcta, segunda, predijo, significado, abreviatura, término, cuenta, específico, resultado, posibles, clasificador, binario, partir, esas, significan, este, cubre, resume, resultados, comparando, punto, partida, mayoría, demás, aprende, construirla, visualizarla, derivar, peticiones, http, pytest, paquetes, entornos, virtuales, tooling, best, practices, threading, asyncio, concurrency, csv, random, sys, itertools, collections, lanzar, excepciones, the, standard, library, sumar, invertir, duplicados, how, enumeraciones, abstractas, encapsulamiento, polimorfismo, dataclasses, static, classmethod, property, mágicos, advanced, oop, sentencia, match, enumerate, zip, map, comprensiones, gestores, recursión, closures, generadores, decoradores, args, kwargs, sugerencias, intermediate, actualización, find, insertar, join, update, drop, table, order, where, select, insert, vecinos, cercanos, agregación, bootstrap, means, categóricos, búsqueda, logística, escalar, múltiple, polinomial, lineal, diagrama, normal, percentil, desviación, mediana, moda, gráficos, pastel, histogramas, barras, subplot, líneas, marcadores, trazado, django, scipy, pandas, modules, escribir, manejo, file, formateo, entrada, usuario, except, pip, regex, matemáticas, fechas, módulos, ámbito, iteradores, herencia, objetos, arrays, lambda, funciones, for, while, else, operadores, booleanos, casting, comentarios, sintaxis, nombres, actualizar, desempaquetar, tupla, segmentación, home, anidados, modificar, iterar, comprensión, globales, formato, caracteres, escape, diccionario, concatenar, asignar, múltiples, valores, añadir, iniciar, sesión, buscar, formatters, url, reverse, sha256, md5, length, calculator, colors, hsl, hex, mixer, converter, picker, cursos,
Text of the page (random words):
matriz de confusión en python con ejemplos w3docs w3docs libros aprender html aprender css aprender javascript aprender git aprender java aprender php aprender python cursos cuestionarios ejercicios fragmentos herramientas general tools html editor password generator html encoder code diff json beautifier ver los 13 color tools color picker color converter color mixer color hex colors hsl ver los 10 string tools string length calculator md5 hash generator sha256 hash generator string reverse url encoder ver los 19 code formatters javascript formatter css formatter html formatter json formatter php formatter buscar en w3docs k es english en deutsch de русский ru français fr español es português pt italiano it iniciar sesión aprender python python tutorial acceder a elementos acceder a elementos de lista acceder a elementos de un set acceder a tuplas agregar elementos añadir elementos a una lista agregar elementos a un conjunto asignar múltiples valores cambiar elementos cambiar elementos de una lista concatenar strings copiar diccionarios copiar listas métodos de diccionario caracteres de escape cadenas de formato variables globales unir listas unir sets unir tuplas comprensión de listas métodos de lista iterar sobre diccionarios recorrer listas recorrer sets recorrer tuplas modificar strings diccionarios anidados variables de salida python home listas de python conjuntos en python python strings tuplas en python variables en python eliminar elementos eliminar elementos de una lista eliminar elementos de un set métodos de conjuntos segmentación de cadenas ordenar listas métodos de string métodos de tupla desempaquetar tuplas actualizar tuplas nombres de variables introducción a python primeros pasos con python sintaxis de python comentarios en python variables en python tipos de datos en python números en python casting en python strings de python booleanos en python operadores de python listas de python tuplas de python diccionarios en python python if else bucles while en python bucles for en python funciones en python python lambda arrays en python clases y objetos en python herencia en python iteradores de python ámbito en python módulos de python fechas en python matemáticas en python python json python regex python pip python try except entrada de usuario en python formateo de cadenas en python file handling manejo de archivos en python leer archivos en python escribir crear archivos en python eliminar archivos en python python modules tutorial de numpy tutorial de pandas tutorial de scipy tutorial de django python matplotlib introducción a matplotlib primeros pasos con matplotlib matplotlib pyplot trazado con matplotlib marcadores de matplotlib líneas en matplotlib etiquetas en matplotlib cuadrícula de matplotlib subplot de matplotlib dispersión en matplotlib barras en matplotlib histogramas con matplotlib gráficos de pastel con matplotlib machine learning primeros pasos media mediana moda desviación estándar percentil distribución de datos distribución normal de datos diagrama de dispersión regresión lineal regresión polinomial regresión múltiple escalar train test árbol de decisión matriz de confusión agrupamiento jerárquico regresión logística búsqueda en cuadrícula datos categóricos k means agregación bootstrap validación cruzada curva auc roc k vecinos más cercanos python mysql primeros pasos con mysql mysql crear base de datos mysql crear tabla mysql insert mysql select mysql where mysql order by mysql delete mysql drop table mysql update mysql limit mysql join python mongodb primeros pasos con mongodb crear base de datos mongodb mongodb crear colección insertar en mongodb mongodb find consulta mongodb ordenar en mongodb mongodb delete eliminar colección en mongodb actualización en mongodb mongodb limit intermediate python f strings sugerencias de tipo args kwargs decoradores generadores closures recursión gestores de contexto comprensiones enumerate zip map sentencia match advanced oop métodos mágicos property static y classmethod dataclasses polimorfismo encapsulamiento clases abstractas enumeraciones python how to eliminar duplicados en listas invertir un string sumar dos números error handling and the standard library lanzar excepciones collections itertools os sys random archivos csv concurrency in python asyncio threading python tooling and best practices entornos virtuales paquetes pytest peticiones http machine learning comprender la matriz de confusión aprende qué es una matriz de confusión cómo construirla en python con scikit learn visualizarla con seaborn y derivar precisión exhaustividad y f1 score una matriz de confusión es una tabla que resume los resultados de predicción de un modelo de clasificación comparando las etiquetas reales con las etiquetas predichas es el punto de partida para calcular la precisión la exhaustividad el f1 score y la mayoría de las demás métricas de clasificación este capítulo cubre qué significan las cuatro celdas tp fp tn fn y por qué cada una importa cómo calcular métricas comunes a partir de esas celdas cómo construir y visualizar una matriz de confusión en python con scikit learn y seaborn matrices de confusión multiclase errores comunes especialmente en conjuntos de datos desequilibrados qué es una matriz de confusión para un clasificador binario dos clases posibles positiva y negativa la matriz de confusión es una tabla de 2 2 predicción positiva predicción negativa real positivo verdadero positivo tp falso negativo fn real negativo falso positivo fp verdadero negativo tn cada celda cuenta un tipo específico de resultado término abreviatura significado verdadero positivo tp el modelo predice positivo la realidad es positiva verdadero negativo tn el modelo predice negativo la realidad es negativa falso positivo fp el modelo predice positivo la realidad es negativa error de tipo i falso negativo fn el modelo predice negativo la realidad es positiva error de tipo ii un truco mnemotécnico la primera palabra verdadero falso indica si la predicción fue correcta la segunda palabra positivo negativo indica qué predijo el modelo métricas derivadas de la matriz los cuatro conteos alimentan todas las métricas estándar de clasificación métrica fórmula qué mide exactitud tp tn tp tn fp fn fracción total de predicciones correctas precisión tp tp fp de todas las predicciones positivas cuántas fueron correctas exhaustividad sensibilidad tp tp fn de todos los positivos reales cuántos fueron encontrados especificidad tn tn fp de todos los negativos reales cuántos se descartaron correctamente f1 score 2 precisión exhaustividad precisión exhaustividad media armónica de precisión y exhaustividad cuándo priorizar precisión vs exhaustividad prioriza la exhaustividad cuando omitir un caso positivo es costoso cribado médico detección de fraude filtros de spam que deben detectar cada mensaje de spam prioriza la precisión cuando las falsas alarmas son costosas recomendaciones quirúrgicas marcado de documentos legales sistemas de notificaciones push el f1 score equilibra ambas y es la métrica predeterminada cuando el conjunto de datos está desequilibrado ejemplo numérico trabajado supón que un modelo examina a 100 pacientes para detectar una enfermedad tp 50 pacientes enfermos correctamente identificados fp 5 pacientes sanos marcados incorrectamente como enfermos fn 10 pacientes enfermos no detectados tn 35 pacientes sanos correctamente descartados cálculos paso a paso accuracy 50 35 100 0 85 85 precision 50 50 5 0 909 90 9 recall 50 50 10 0 833 83 3 f1 score 2 0 909 0 833 0 909 0 833 0 869 86 9 copiar observa que la exactitud 85 parece aceptable pero la exhaustividad es solo del 83 lo que significa que 10 de cada 60 pacientes enfermos no fueron detectados en un contexto médico esa diferencia importa mucho más que el dato de exactitud construir una matriz de confusión en python usando scikit learn sklearn metrics proporciona confusion_matrix y un informe de texto listo para usar mediante classification_report from sklearn metrics import confusion_matrix classification_report ground truth labels and model predictions y_true 1 1 0 0 1 0 1 0 1 0 y_pred 1 0 0 1 1 0 1 0 1 1 cm confusion_matrix y_true y_pred print confusion matrix print cm print print classification_report y_true y_pred target_names negative positive copiar confusion_matrix devuelve un array de numpy de forma predeterminada las filas son las clases reales y las columnas son las clases predichas coincidiendo con el diseño de la tabla mostrado anteriormente la disposición del array es tn fp fn tp copiar calcular métricas manualmente puedes extraer las cuatro celdas y calcular las métricas tú mismo para verificar from sklearn metrics import confusion_matrix y_true 1 1 0 0 1 0 1 0 1 0 y_pred 1 0 0 1 1 0 1 0 1 1 tn fp fn tp confusion_matrix y_true y_pred ravel accuracy tp tn tp tn fp fn precision tp tp fp recall tp tp fn f1 2 precision recall precision recall print f tp tp fp fp fn fn tn tn print f accuracy accuracy 3f print f precision precision 3f print f recall recall 3f print f f1 score f1 3f copiar salida esperada tp 4 fp 2 fn 1 tn 3 accuracy 0 700 precision 0 667 recall 0 800 f1 score 0 727 copiar visualizar con seaborn un mapa de calor hace que la matriz de confusión sea más fácil de leer especialmente para problemas multiclase import matplotlib pyplot as plt import seaborn as sns from sklearn metrics import confusion_matrix y_true 1 1 0 0 1 0 1 0 1 0 y_pred 1 0 0 1 1 0 1 0 1 1 cm confusion_matrix y_true y_pred sns heatmap cm annot true fmt d cmap blues xticklabels negative positive yticklabels negative positive plt xlabel predicted label plt ylabel true label plt title confusion matrix plt tight_layout plt savefig confusion_matrix png dpi 150 plt show copiar annot true imprime el conteo dentro de cada celda fmt d los formatea como enteros matrices de confusión multiclase cuando hay más de dos clases la matriz de confusión se expande a una cuadrícula n n cada fila sigue representando las clases reales cada columna representa las clases predichas las celdas de la diagonal son predicciones correctas las celdas fuera de la diagonal son errores from sklearn metrics import confusion_matrix confusionmatrixdisplay import matplotlib pyplot as plt three classes cat dog rabbit y_true cat dog rabbit cat dog rabbit cat dog cat rabbit y_pred cat dog rabbit dog dog cat cat rabbit cat rabbit labels cat dog rabbit cm confusion_matrix y_true y_pred labels labels print cm disp confusionmatrixdisplay confusion_matrix cm display_labels labels disp plot cmap blues plt title multi class confusion matrix plt tight_layout plt savefig cm_multiclass png dpi 150 plt show copiar confusionmatrixdisplay añadido en scikit learn 0 24 es una alternativa conveniente de una sola línea al mapa de calor de seaborn y no requiere la dependencia de seaborn para problemas multiclase la precisión y la exhaustividad se calculan por clase y luego se promedian classification_report ofrece tres estrategias de promediado macro promedio no ponderado entre clases trata todas las clases por igual weighted promedio ponderado por soporte número de instancias reales por clase micro agrega tp fp fn en todas las clases antes de dividir da la exactitud general para conjuntos de datos equilibrados errores comunes la exactitud es engañosa en conjuntos de datos desequilibrados considera un conjunto de datos donde el 95 de las muestras son negativas un modelo que siempre predice negativo alcanza un 95 de exactitud pero tiene una exhaustividad de cero nunca detecta un caso positivo la matriz de confusión revela esto de inmediato toda la primera fila real positivo estará compuesta por fn combina siempre la exactitud con la precisión la exhaustividad o el f1 score en datos desequilibrados consulta el capítulo train test split para saber cómo crear una división representativa y el capítulo curva auc roc para obtener una métrica de evaluación independiente del umbral elegir la estrategia de promediado incorrecta usar el promediado macro cuando las clases están muy desequilibradas infla la puntuación de las clases poco frecuentes usa weighted para obtener una imagen realista de la calidad general del modelo sobre el conjunto de datos completo olvidar la normalización los conteos brutos dependen del tamaño del conjunto de datos al comparar modelos entrenados en conjuntos de datos de diferentes tamaños normaliza la matriz dividiendo cada fila por su suma pasa normalize true a confusion_matrix cm_normalized confusion_matrix y_true y_pred normalize true print cm_normalized round 2 copiar ahora cada fila suma 1 0 mostrando la fracción de cada clase real predicha correctamente matriz de confusión vs otras herramientas de evaluación herramienta ideal para matriz de confusión comprender los tipos específicos de errores que comete un modelo curva auc roc comparar clasificadores en todos los umbrales de decisión validación cruzada estimar qué tan bien generaliza la matriz a datos no vistos grid search ajustar hiperparámetros usando una métrica elegida p ej f1 score conclusiones clave una matriz de confusión desglosa las predicciones en tp fp tn y fn cuatro conteos que revelan qué errores comete un modelo no solo cuántos la exactitud por sí sola es insuficiente comprueba siempre la precisión la exhaustividad y el f1 score especialmente en datos desequilibrados usa sklearn metrics confusion_matrix para el cálculo y seaborn o confusionmatrixdisplay para la visualización las matrices multiclase siguen la misma convención de fila real columna predicho y escalan a n n adapta la estrategia de promediado macro weighted micro a la distribución de clases de tu conjunto de datos was this page helpful yes no previous árbol de decisión next agrupamiento jerárquico on this page qué es una matriz de confusión métricas derivadas de la matriz ejemplo numérico trabajado construir una matriz de confusión en python matrices de confusión multiclase errores comunes matriz de confusión vs otras herramientas de evaluación conclusiones clave w3docs tutoriales ejemplos ejercicios fragmentos y cuestionarios gratuitos para la web desde 2014 libros aprender html aprender css aprender javascript aprender git aprender java aprender php aprender python práctica ejercicios cuestionarios editor try it herramientas html editor password generator html encoder code diff json beautifier empresa acerca de contacto política de privacidad idioma english deutsch русский français español português italiano 2026 w3docs todos los derechos reservados hecho para desarrolladores
|