{"id":133813,"date":"2026-01-28T03:51:04","date_gmt":"2026-01-28T02:51:04","guid":{"rendered":"https:\/\/multi.liora.io\/?p=133813"},"modified":"2026-02-25T16:04:27","modified_gmt":"2026-02-25T15:04:27","slug":"que-es-el-metodo-grad-cam","status":"publish","type":"post","link":"https:\/\/liora.io\/es\/que-es-el-metodo-grad-cam","title":{"rendered":"\u00bfQu\u00e9 es el m\u00e9todo Grad-CAM?"},"content":{"rendered":"\n<p><strong>A lo largo de los \u00faltimos a\u00f1os, la explicabilidad ha sido un tema recurrente pero siempre minoritario para el aprendizaje autom\u00e1tico. El m\u00e9todo Grad-CAM es una soluci\u00f3n para responder a este problema.<br><\/strong><\/p>\n\n\n\n<p>El inter\u00e9s por este tema ha empezado a crecer recientemente. Una de las razones de esta evoluci\u00f3n es que cada vez hay m\u00e1s <a href=\"https:\/\/liora.io\/es\/machine-learning-definicion-funcionamiento-usos\">modelos aprendizaje autom\u00e1tico<\/a> en producci\u00f3n. Por una parte, esto se traduce en un <b>n\u00famero creciente de usuarios finales<\/b> que necesitan comprender c\u00f3mo toman las decisiones los modelos. Por otra parte, cada vez hay m\u00e1s desarrolladores de Machine Learning que necesitan comprender por qu\u00e9 (o por qu\u00e9 no) funciona un modelo de una manera concreta.<\/p>\n\n\n\n<p>Las redes neuronales convolucionales han resultado ser muy eficaces en tareas como la clasificaci\u00f3n de im\u00e1genes, el reconocimiento facial y el an\u00e1lisis de documentos. Pero con el aumento de la eficacia y de la complejidad, constatamos un <b>descenso progresivo de la interpretabilidad<\/b> de esos algoritmos. Una soluci\u00f3n a problemas como el reconocimiento facial implica <b>cientos de capas y miles de par\u00e1metros que hay que entrenar<\/b>, lo que dificulta la lectura, la depuraci\u00f3n y la confianza en el modelo. Las <a href=\"https:\/\/liora.io\/es\/convolutional-neural-network-es\">CNN<\/a> aparecen como cajas negras que cogen entradas y ofrecen salidas con gran precisi\u00f3n sin dar ninguna intuici\u00f3n sobre el funcionamiento.\u00a0<\/p>\n\n\n\n<p>Como Data Scientists, somos responsables de <b>garantizar que el modelo funcione correctamente<\/b>. Supongamos que nos conf\u00edan la tarea de clasificar diferentes p\u00e1jaros. El conjunto de datos contiene im\u00e1genes de diferentes p\u00e1jaros y de las plantas\/\u00e1rboles del fondo. Si la red mira las plantas y los \u00e1rboles en lugar del p\u00e1jaro, hay muchas probabilidades de que clasifique mal la imagen y de que se pierda todas las caracter\u00edsticas del p\u00e1jaro.<\/p>\n\n\n\n<p><b>\u00bfC\u00f3mo saber si nuestro modelo est\u00e1 mirando el objeto correcto?<\/b> En este art\u00edculo, veremos un enfoque para identificar si la<a href=\"https:\/\/liora.io\/es\/convolutional-neural-network-es\"> CNN<\/a> trabaja correctamente con las caracter\u00edsticas que son importantes para la clasificaci\u00f3n o el reconocimiento.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-el-metodo-grad-cam\">El m\u00e9todo Grad-CAM<\/h2>\n\n\n\n<p>Una manera de asegurarse es visualizar lo que est\u00e1n mirando realmente las CNN, utilizando el m\u00e9todo del Grad-CAM.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><i>El mapa de activaci\u00f3n de clase ponderada por el gradiente (Grad-CAM) produce un mapa de calor que destaca las regiones importantes de una imagen utilizando los gradientes del objetivo (perro, gato) de la capa convolucional final.&nbsp;<\/i><\/p>\n<\/blockquote>\n\n\n\n<p>El m\u00e9todo Grad-CAM es una t\u00e9cnica popular de visualizaci\u00f3n que es \u00fatil para comprender c\u00f3mo se ha conducido a una red neuronal convolucional <b>a tomar una decisi\u00f3n de clasificaci\u00f3n<\/b>. Es espec\u00edfica para cada clase, lo que significa que puede producir una visualizaci\u00f3n diferente para cada clase presente en la imagen.<\/p>\n\n\n\n<p>En caso de error de clasificaci\u00f3n, este m\u00e9todo puede resultar muy \u00fatil para <b>comprender d\u00f3nde se encuentra el problema en la red convolucional<\/b>. Esto tambi\u00e9n permite ser m\u00e1s transparente sobre el algoritmo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-como-funciona\">\u00bfC\u00f3mo funciona?<\/h2>\n\n\n\n<p>Grad-CAM consiste en buscar qu\u00e9 partes de la imagen han llevado a una red neuronal convolucional a su decisi\u00f3n final. Este m\u00e9todo consiste en producir mapas de calor que representan las clases de activaci\u00f3n sobre las im\u00e1genes recibidas de entrada. Una clase de activaci\u00f3n se asocia a una clase de salida espec\u00edfica.<\/p>\n\n\n\n<p>Estas clases van a permitir indicar la importancia de cada p\u00edxel respecto a la clase cuesti\u00f3n aumentando o disminuyendo la intensidad del p\u00edxel.<\/p>\n\n\n\n<p>Por ejemplo, si una imagen se utiliza en una red convolucional de perros y de gatos, la visualizaci\u00f3n de Grad-CAM permite generar un heatmap (mapa de calor) para la clase \u201cgato\u201d, indicando en qu\u00e9 medida corresponden las diferentes partes de la imagen a un gato, y tambi\u00e9n un mapa de calor para la clase \u201cperro\u201d que indique en qu\u00e9 medida corresponden las partes de la imagen a un perro.<\/p>\n\n\n\n<p>Por ejemplo, consideremos una CNN de perros y de gatos. El m\u00e9todo Grad-CAM va a permitir generar un heatmap (mapa de calor) para la clase de objetos gatos para indicar en qu\u00e9 medida cada una de las partes de una imagen corresponde a un gato y tambi\u00e9n un heatmap para la clase de objeto perro procediendo de la misma manera.<\/p>\n\n\n\n<p>El mapa de activaci\u00f3n de clase atribuye una <b>importancia a cada posici\u00f3n<\/b> (x, y) en la \u00faltima capa convolucional calculando la combinaci\u00f3n lineal de las activaciones, ponderadas por los pesos de salida correspondientes para la clase observada (terrier australiano, en el ejemplo de abajo). La cartograf\u00eda de activaci\u00f3n de clase resultante despu\u00e9s se vuelve a muestrear seg\u00fan el tama\u00f1o de la imagen de entrada. Esto se ilustra con el mapa t\u00e9rmico (un heatmap) de abajo.<\/p>\n\n\n\n<figure class=\"wp-block-image\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/07\/Class-Activation-Mapping-1024x460.jpg\" alt=\"Carte Thermique\" \/><figcaption class=\"wp-element-caption\">Source : https:\/\/arxiv.org\/abs\/1512.04150<\/figcaption><\/figure>\n\n\n\n<p>Retomemos ahora el ejemplo de la clasificaci\u00f3n de perros y gatos. El m\u00e9todo Grad-CAM va a permitir hacer que las zonas utilizadas para la clasificaci\u00f3n de cada uno de los objetos de nuestra imagen sea t\u00e9rmico y esto producir\u00e1 el siguiente resultado :<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/07\/Original-Image.jpg\" alt=\"R\u00e9sultat de la m\u00e9thode Grad-CAM\" style=\"width:auto;height:250px\" \/><figcaption class=\"wp-element-caption\">Source : https:\/\/glassboxmedicine.com\/2020\/05\/29\/grad-cam-visual-explanations-from-deep-networks\/<\/figcaption><\/figure>\n\n\n\n<p>En este art\u00edculo, hemos visto una nueva t\u00e9cnica para interpretar <a href=\"https:\/\/liora.io\/es\/convolutional-neural-network-es\">las redes neuronales convolucionales<\/a> que son una arquitectura puntera, en particular para las tareas vinculadas con la imagen. La investigaci\u00f3n en el campo del <a href=\"https:\/\/liora.io\/es\/machine-learning-definicion-funcionamiento-usos\">aprendizaje autom\u00e1tico<\/a> interpretable progresa a un ritmo acelerado y resulta muy importante para ganarse la confianza de los usuarios y contribuir a la mejora de los modelos.<\/p>\n\n\n\n<p>\u00bfTe ha gustado este art\u00edculo? Si est\u00e1s convencido de <strong>la importancia del Machine Learning<\/strong> en la actualidad y de la eficacia de nuestra formaci\u00f3n Bootcamp.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/liora.io\/es\/formacion-data-scientist\">Descubre nuestra formaci\u00f3n en data science<\/a><\/div>\n<\/div>\n\n\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"El m\u00e9todo Grad-CAM\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Grad-CAM (Gradient-weighted Class Activation Mapping) es una t\u00e9cnica de visualizaci\u00f3n que produce un mapa de calor destacando regiones importantes de una imagen usando gradientes del objetivo de la \u00faltima capa convolucional. Es espec\u00edfica para cada clase (puede generar visualizaci\u00f3n diferente para cada clase presente). \u00datil para comprender decisiones de clasificaci\u00f3n de CNN, identificar errores y aumentar transparencia del algoritmo.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"\u00bfC\u00f3mo funciona?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Grad-CAM busca qu\u00e9 partes de la imagen llevaron a la CNN a su decisi\u00f3n final. Produce mapas de calor que representan clases de activaci\u00f3n asociadas a clases de salida espec\u00edficas, indicando importancia de cada p\u00edxel aumentando\/disminuyendo intensidad. Ejemplo clasificaci\u00f3n perros\/gatos: genera heatmap para clase 'gato' (indica qu\u00e9 partes corresponden a gato) y otro para clase 'perro'. El mapa de activaci\u00f3n asigna importancia a cada posici\u00f3n (x,y) en \u00faltima capa convolucional mediante combinaci\u00f3n lineal de activaciones ponderadas por pesos de salida de la clase observada, luego se re-muestrea al tama\u00f1o de imagen original.\"\n      }\n    }\n  ]\n}\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p><strong>A lo largo de los \u00faltimos a\u00f1os, la explicabilidad ha sido un tema recurrente pero siempre minoritario para el aprendizaje autom\u00e1tico. El m\u00e9todo Grad-CAM es una soluci\u00f3n para responder a este problema.<br \/>\n<\/strong><\/p>\n","protected":false},"author":85,"featured_media":82285,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2440],"class_list":["post-133813","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-ia"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/133813","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/users\/85"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/comments?post=133813"}],"version-history":[{"count":5,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/133813\/revisions"}],"predecessor-version":[{"id":184268,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/133813\/revisions\/184268"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media\/82285"}],"wp:attachment":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media?parent=133813"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/categories?post=133813"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}