{"id":3308,"date":"2025-10-06T16:10:06","date_gmt":"2025-10-06T14:10:06","guid":{"rendered":"https:\/\/tecnologia.euroinnova.com\/redes-residuales-resnet-y-su-importancia-en-la-vision-artificial\/"},"modified":"2025-10-14T11:51:52","modified_gmt":"2025-10-14T09:51:52","slug":"resnet","status":"publish","type":"post","link":"https:\/\/tecnologia.euroinnova.com\/fr\/resnet","title":{"rendered":"Les r\u00e9seaux r\u00e9siduels (ResNet) et leur importance dans la vision par ordinateur"},"content":{"rendered":"<p>Les <strong>visi\u00f3n artificial<\/strong> es una rama de la inteligencia artificial que busca ense\u00f1ar a las m\u00e1quinas a \u00abver\u00bb e interpretar im\u00e1genes y videos, emulando la capacidad visual humana.<\/p>\n<p>Esta disciplina tiene aplicaciones multitud de \u00e1reas como la medicina, seguridad, automoci\u00f3n o e-commerce. Sin embargo, procesar y analizar im\u00e1genes de manera eficiente requiere modelos complejos que puedan captar <strong>detalles sutiles y patrones avanzados<\/strong>.<\/p>\n<p>Teniendo esto en cuenta, las <strong>redes neuronales profundas<\/strong> son fundamentales a la hora de cambiar la forma en que se procesan y entienden las im\u00e1genes para tareas como la clasificaci\u00f3n de im\u00e1genes, el reconocimiento facial y la detecci\u00f3n de objetos. No obstante, a medida que las redes neuronales se hacen m\u00e1s profundas, surgen desaf\u00edos t\u00e9cnicos como la dificultad para entrenar el modelo y la p\u00e9rdida de precisi\u00f3n.<\/p>\n<p>Aqu\u00ed es donde entra <strong>ResNet<\/strong>, una arquitectura que introdujo un cambio de paradigma en la visi\u00f3n artificial que ha permitido entrenar redes mucho m\u00e1s profundas sin sacrificar eficiencia o precisi\u00f3n, marcando un antes y un despu\u00e9s en el aprendizaje profundo.<\/p>\n<h2 id=\"resnet-transformacion-de-la-vision-artificial\"><strong>ResNet: Transformaci\u00f3n de la visi\u00f3n artificial<\/strong><\/h2>\n<p>La introducci\u00f3n de <strong>ResNet (Residual Networks o Redes residuales en espa\u00f1ol)<\/strong> marc\u00f3 un antes y un despu\u00e9s en el campo de la visi\u00f3n artificial, resolviendo las limitaciones que exist\u00edan hasta el momento gracias a la innovadora incorporaci\u00f3n de <strong>conexiones de salto<\/strong>.<\/p>\n<p>Dise\u00f1ada en 2015 por Kaiming He y su equipo, ResNet permiti\u00f3 construir redes neuronales m\u00e1s profundas y efectivas. Este avance no solo mejor\u00f3 el rendimiento en tareas de clasificaci\u00f3n de im\u00e1genes, sino que tambi\u00e9n impact\u00f3 en aplicaciones avanzadas como el reconocimiento de objetos y la segmentaci\u00f3n sem\u00e1ntica.<\/p>\n<p>La arquitectura de ResNet introduce el concepto de <strong>bloques residuales<\/strong>, una innovaci\u00f3n clave para superar los problemas asociados con redes neuronales profundas.<\/p>\n<p>En lugar de simplemente apilar capas, como ocurre en arquitecturas tradicionales, ResNet emplea <strong>conexiones de salto (skip connections)<\/strong> que permiten que la entrada de una capa sea sumada directamente a su salida tras pasar por dos o m\u00e1s capas.<\/p>\n<p>A <strong>bloque residual<\/strong> puede ser representado matem\u00e1ticamente como:<\/p>\n<p><strong>y= F(x,{Wi})+x<\/strong><\/p>\n<p>Donde:<\/p>\n<ul>\n<li><strong>x<\/strong> es la entrada del bloque.<\/li>\n<li><strong>F(x,{Wi})<\/strong> representa la transformaci\u00f3n no lineal aprendida (por ejemplo, convoluciones, Batch Normalization y ReLU).<\/li>\n<li><strong>y<\/strong> es la salida del bloque.<\/li>\n<\/ul>\n<p>Esta estructura permite que la red aprenda ajustes residuales en lugar de transformaciones completas, facilitando la propagaci\u00f3n del gradiente durante el entrenamiento.<\/p>\n<h2 id=\"estructura-de-resnet\"><strong>Estructura de ResNet<\/strong><\/h2>\n<p>ResNet se presenta en diferentes <strong>variantes<\/strong>, como ResNet-18, ResNet-34, ResNet-50 y ResNet-152, donde el n\u00famero indica la <strong>cantidad total de capas<\/strong> en cada red. Estas variantes se diferencian principalmente en la cantidad y disposici\u00f3n de los bloques residuales dentro de la arquitectura:<\/p>\n<ul>\n<li><strong>ResNet-18<\/strong>: contiene 2 bloques residuales en cada uno de los 4 niveles principales, totalizando 8 bloques residuales.<\/li>\n<li><strong>ResNet-34<\/strong>: ampl\u00eda esta estructura a 3 bloques residuales en dos niveles y 4 bloques en los otros dos, sumando 16 bloques residuales.<\/li>\n<li><strong>ResNet-50<\/strong>: introduce bloques residuales con capas m\u00e1s profundas, llamados bloques residuales de tipo bottleneck, organizados como 3, 4, 6 y 3 bloques en los respectivos niveles, con un total de 50 capas.<\/li>\n<li><strong>ResNet-152<\/strong>: escala significativamente la profundidad con 3, 8, 36 y 3 bloques residuales en los niveles, alcanzando un total de 152 capas.<\/li>\n<\/ul>\n<p>Estos bloques residuales est\u00e1n intercalados con <strong>operaciones de convoluci\u00f3n y pooling<\/strong>, permitiendo que la informaci\u00f3n fluya eficientemente a trav\u00e9s de la red, incluso en las arquitecturas m\u00e1s profundas, donde el n\u00famero indica la cantidad de capas totales en la red. A medida que aumenta la profundidad, el uso de bloques residuales y conexiones de salto asegura que las redes sean m\u00e1s f\u00e1ciles de entrenar, incluso con cientos de capas.<\/p>\n<p>Algunos elementos destacables de su arquitectura son:<\/p>\n<ol>\n<li><strong>Convoluciones iniciales<\/strong>: una capa convolucional con un kernel de tama\u00f1o 7&#215;7 y un stride de 2, seguida de Batch Normalization y ReLU. Este gran tama\u00f1o del kernel permite capturar caracter\u00edsticas espaciales generales desde el inicio, mientras que el stride reduce la resoluci\u00f3n de la imagen, disminuyendo as\u00ed la carga computacional en las capas subsiguientes.<\/li>\n<li><strong>Bloques residuales<\/strong>: dise\u00f1ados para mantener una eficiente propagaci\u00f3n del gradiente. Cada bloque se organiza en capas de convoluci\u00f3n que aplican filtros 3&#215;3 o, en variantes m\u00e1s profundas como ResNet-50 y superiores, un dise\u00f1o tipo bottleneck que utiliza convoluciones 1&#215;1 para reducir la dimensionalidad antes de aplicar filtros 3&#215;3 y luego la restaura con otra convoluci\u00f3n 1&#215;1. Estas configuraciones aseguran un equilibrio entre eficiencia computacional y capacidad de aprendizaje.<\/li>\n<li><strong>Pooling global<\/strong>: reduce la dimensionalidad de la salida antes de la clasificaci\u00f3n final. Este proceso de reducci\u00f3n se realiza aplicando un promedio (o a veces una operaci\u00f3n de m\u00e1ximo) sobre toda la dimensi\u00f3n espacial de las caracter\u00edsticas extra\u00eddas por las capas anteriores. Esto no solo disminuye el n\u00famero de par\u00e1metros en la capa final, sino que tambi\u00e9n act\u00faa como una regularizaci\u00f3n efectiva, mejorando la generalizaci\u00f3n del modelo. Adem\u00e1s, permite que la red sea m\u00e1s eficiente en t\u00e9rminos de c\u00e1lculo, ya que minimiza la cantidad de datos procesados en las etapas finales.<\/li>\n<li><strong>Clasificador<\/strong>: la salida del \u00faltimo bloque residual pasa por un paso de pooling global, seguido de una capa totalmente conectada que reduce las caracter\u00edsticas a la cantidad de clases del problema. Finalmente, se aplica una funci\u00f3n softmax para generar probabilidades normalizadas, permitiendo la clasificaci\u00f3n de im\u00e1genes. Este dise\u00f1o asegura una transici\u00f3n fluida desde las caracter\u00edsticas aprendidas hasta la predicci\u00f3n final.<\/li>\n<\/ol>\n<h2 id=\"la-revolucion-en-redes-neuronales-profundas-con-conexiones-de-salto\"><strong>La revoluci\u00f3n en redes neuronales profundas con conexiones de salto<\/strong><\/h2>\n<p>Antes de ResNet, arquitecturas profundas como <strong>VGG<\/strong> enfrentaban dificultades para escalar debido a la <strong>vanishing gradient problem<\/strong> (problema de desvanecimiento del gradiente). Las conexiones de salto introducidas por ResNet abordan este problema al crear <strong>rutas alternativas<\/strong> para el flujo de informaci\u00f3n, reduciendo la dependencia de capas intermedias.<\/p>\n<p>Este dise\u00f1o ha demostrado ser particularmente \u00fatil en <strong>tareas \u201cfor image\u201d<\/strong>, como:<\/p>\n<ul>\n<li><strong>Clasificaci\u00f3n de im\u00e1genes<\/strong>: mejorando significativamente las tasas de precisi\u00f3n en conjuntos de datos como ImageNet.<\/li>\n<li><strong>Reconocimiento de objetos<\/strong>: utilizando ResNet como base para arquitecturas como Faster R-CNN.<\/li>\n<li><strong>Segmentaci\u00f3n sem\u00e1ntica<\/strong>: aplicada en contextos m\u00e9dicos y de conducci\u00f3n aut\u00f3noma.<\/li>\n<\/ul>\n<p>El uso de las conexiones de salto tiene una serie de <strong>avantages<\/strong>:<\/p>\n<ul>\n<li><strong>Propagaci\u00f3n sin p\u00e9rdidas<\/strong>: facilitan que la informaci\u00f3n fluya hacia las capas m\u00e1s profundas.<\/li>\n<li><strong>Mejora del entrenamiento<\/strong>: reducen la probabilidad de saturaci\u00f3n en redes profundas.<\/li>\n<li><strong>Eficiencia computacional<\/strong>: permiten entrenar el modelo con menos recursos.<\/li>\n<\/ul>\n<h2 id=\"como-mejora-resnet-la-precision-en-redes-neuronales-profundas\"><strong>\u00bfC\u00f3mo mejora ResNet la precisi\u00f3n en redes neuronales profundas?<\/strong><\/h2>\n<p>En esencia, ResNet es una <strong>red residual<\/strong> dise\u00f1ada para abordar los problemas cr\u00edticos asociados con redes neuronales profundas tradicionales. La clave de su \u00e9xito radica en su capacidad para:<\/p>\n<ol>\n<li><strong>Alcanzar mayor profundidad<\/strong>: redes como ResNet-152 lograron nuevos hitos, como una precisi\u00f3n superior al 93% en ImageNet.<\/li>\n<li><strong>Simplificar la optimizaci\u00f3n<\/strong>: al aprender ajustes residuales en lugar de funciones completas, se reduce el esfuerzo computacional.<\/li>\n<li><strong>Generalizar mejor<\/strong>: su estructura permite obtener modelos robustos para diversas aplicaciones.<\/li>\n<\/ol>\n<p>Desde su introducci\u00f3n, ResNet ha sido adoptada ampliamente en dominios como la salud, el comercio y la investigaci\u00f3n cient\u00edfica. Por ejemplo:<\/p>\n<ul>\n<li>En el diagn\u00f3stico m\u00e9dico, permite la detecci\u00f3n autom\u00e1tica de patolog\u00edas en im\u00e1genes de rayos X.<\/li>\n<li>En comercio electr\u00f3nico, optimiza sistemas de recomendaci\u00f3n basados en im\u00e1genes.<\/li>\n<\/ul>\n<p>Adem\u00e1s, su estructura ha inspirado nuevas arquitecturas como <strong>DenseNet<\/strong>, que expande el concepto de conexiones de salto al conectar todas las capas entre s\u00ed.<\/p>\n<h2 id=\"revolucion-con-bloques-residuales-y-conexiones-de-salto\"><strong>Revoluci\u00f3n con bloques residuales y conexiones de salto<\/strong><\/h2>\n<p>ResNet ha <strong>revolucionado<\/strong> las redes neuronales profundas al introducir bloques residuales y conexiones de salto, superando limitaciones clave en el entrenamiento de modelos profundos. Su impacto trasciende la visi\u00f3n artificial, sentando las <strong>bases para innovaciones<\/strong> en diversas \u00e1reas de la inteligencia artificial.<\/p>\n<p>Gracias a su capacidad para <strong>entrenar modelos profundos<\/strong> y su <strong>versatilidad<\/strong>, ResNet sigue siendo una referencia fundamental en el dise\u00f1o de arquitecturas modernas de redes neuronales.<\/p>\n<p>Si quieres aprender a programar redes neuronales como ResNet y otras arquitecturas te recomiendo nuestro <a href=\"https:\/\/www.euroinnova.com\/curso-de-redes-neuronales-con-python\" target=\"_blank\" rel=\"noopener\"><strong>Curso de Redes Neuronales con Python<\/strong><\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>La visi\u00f3n artificial es una rama de la inteligencia artificial que busca ense\u00f1ar a las m\u00e1quinas a \u00abver\u00bb e interpretar [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":969,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3308","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sin-categorizar"],"acf":[],"_links":{"self":[{"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/posts\/3308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/comments?post=3308"}],"version-history":[{"count":0,"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/posts\/3308\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/media\/969"}],"wp:attachment":[{"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/media?parent=3308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/categories?post=3308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tecnologia.euroinnova.com\/fr\/wp-json\/wp\/v2\/tags?post=3308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}