scieee Open visual document viewer

Procesamiento de imágenes con redes neuronales

Campos Sánchez, Daniel

Abstract

Este trabajo reúne las pautas necesarias para entender los métodos y algoritmos matemáticos que las redes neuronales emplean para procesar imágenes. En primer lugar, se introduce el concepto de neurona artificial, así como un ejemplo para ilustrar sus partes y su funcionamiento a nivel práctico para el tratamiento de imágenes. En la segunda parte del trabajo se introduce el concepto de red neuronal artificial, así como la importancia de las funciones de activación y el problema de clasificación. También se detalla matemáticamente el proceso de aprendizaje de las redes neuronales artificiales, introduciendo los algoritmos de Backpropagation y gradiente descendente. En la tercera parte del trabajo, se introducen las redes neuronales convolucionales, debido a su importancia para el procesamiento de imágenes con redes neuronales. Se detalla su arquitectura y se explica la función de los diferentes tipos de capas que las componen. En la parte final, se aplica la teoría matemática de las redes neuronales en el procesamiento de imágenes con tres casos prácticos utilizando MATLAB.

Full text

PROCESAMIENTO DE IMÁGENES CON REDES NEURONALES TRABAJO FIN DE GRADO Cu so 2022/2023 FACULTAD DE CIENCIAS MATEMÁTICAS GRADO EN INGENIERÍA MATEMÁTICA AUTOR DANIEL CAMPOS SÁNCHEZ DIRECTORES D. ANTONIO LÓPEZ MONTES (UCM) Dª. MARÍA TERESA BENAVENT MERCHÁN (UCM) D. ANTONIO MARTINEZ RAYA (UNED/UPM) D. NICOLÁS ANTEQUERA RODRIGUEZ (UCM) D. JOSÉ ÁNGEL GONZÁLEZ PRIETO (UCM) Mad id, 15 de eb e o de 2023 2 RESUMEN Es e abajo eúne las pau as necesa ias pa a en ende los mé odos y algo i mos ma emá icos que las edes neu onales emplean pa a p ocesa imágenes. En p ime luga , se in oduce el concep o de neu ona a i icial, así como un ejemplo pa a ilus a sus pa es y su uncionamien o a ni el p ác ico pa a el a amien o de imágenes. En la segunda pa e del abajo se in oduce el concep o de ed neu onal a i icial, así como la impo ancia de las unciones de ac i ación y el p oblema de clasi icación. También se de alla ma emá icamen e el p oceso de ap endizaje de las edes neu onales a i iciales, in oduciendo los algo i mos de Backp opaga ion y g adien e descenden e. En la e ce a pa e del abajo, se in oducen las edes neu onales con olucionales, debido a su impo ancia pa a el p ocesamien o de imágenes con edes neu onales. Se de alla su a qui ec u a y se explica la unción de los di e en es ipos de capas que las componen. En la pa e inal, se aplica la eo ía ma emá ica de las edes neu onales en el p ocesamien o de imágenes con es casos p ác icos u ilizando MATLAB. PALABRAS CLAVE Neu ona a i icial, Red neu onal a i icial, Función de ac i ación, P oblema de clasi icación, Backp opaga ion, G adien e descenden e, Redes neu onales con olucionales. 3 ABSTRACT This p ojec ga he s he necessa y guidelines o unde s and he ma hema ical me hods and algo i hms ha neu al ne wo ks use o p ocess images. Fi s ly, he concep o a i icial neu on is in oduced, along wi h an example o illus a e i s pa s and p ac ical le el ope a ion o image p ocessing. In he second pa o he p ojec , he concep o a i icial neu al ne wo k is in oduced, as well as he impo ance o ac i a ion unc ions and he classi ica ion p oblem. The ma hema ical p ocess o lea ning in a i icial neu al ne wo ks is also de ailed, in oducing he Backp opaga ion and g adien descen algo i hms. In he hi d pa o he p ojec , Con olu ional Neu al Ne wo ks a e in oduced due o hei impo ance in image p ocessing wi h neu al ne wo ks. Thei a chi ec u e is de ailed and he unc ion o he di e en ypes o laye s ha make hem up is explained. In he inal pa , he ma hema ical heo y o neu al ne wo ks is applied o image p ocessing wi h h ee p ac ical cases using MATLAB. KEYWORDS A i icial neu on, A i icial neu al ne wo k, Ac i a ion unc ion, Classi ica ion p oblem, Backp opaga ion, G adien descenden , Con olu ional neu al ne wo ks. 4 ÍNDICE RESUMEN ................................................................................................................ 2 ABSTRACT ............................................................................................................... 3 ÍNDICE ..................................................................................................................... 4 ÍNDICE DE FIGURAS Y TABLAS .................................................................................. 5 CAPÍTULO 1. INTRODUCCIÓN ................................................................................... 6 1.1 La cognición isual .....................................................................................................8 1.2 Neu ona biológica s neu ona a i icial .......................................................................9 CAPITULO 2. REDES NEURONALES ARTIFICIALES ......................................................14 2.1. In oducción ........................................................................................................... 14 2.2 Funciones de ac i ación ........................................................................................... 15 2.2.1 Función Sigmoide y angen e hipe bólica ................................................................................ 17 2.2.2 Función ReLU ............................................................................................................................ 18 2.3 P oblema de clasi icación de imágenes median e una ed neu onal........................... 18 2.3.1 Función SOFTMAX .................................................................................................................... 21 2.4 En enamien o y ap endizaje de la ed neu onal a i icial .......................................... 22 2.4.1 Función de pé dida y unción de cos e. ................................................................................... 22 2.4.2 G adien e descenden e y Backp opaga ion. ............................................................................ 25 CAPITULO 3. REDES NEURONALES CONVOLUCIONALES ............................................30 3.1 A qui ec u a de las edes neu onales con olucionales .............................................. 31 3.1.1 Con olución y capas con olucionales ...................................................................................... 32 3.1.2 Capas de Pooling ...................................................................................................................... 37 3.1.3 Capas ully connec ed .............................................................................................................. 37 3.2 Aplicaciones básicas ................................................................................................. 38 3.2.1 Ejemplo 1. Clasi icación de imágenes ...................................................................................... 39 3.2.2 Ejemplo 2. Iden i icación de obje os ........................................................................................ 42 3.2.3 Ejemplo 3. Reconocimien o de obje os ................................................................................... 45 CONCLUSIONES .......................................................................................................48 REFERENCIAS ..........................................................................................................49 BIBLIOGRAFÍA .........................................................................................................51 WEBGRAFÍA ............................................................................................................53 ANEXOS ..................................................................................................................55 5 ÍNDICE DE FIGURAS Y TABLAS Tabla 1: in oducción his ó ica a las edes neu onales a i iciales ................................... 7 Figu a 1.1[A] : imágenes que econoce nues o ce eb o g acias a la pe cepción isual .... 8 Figu a 1.2[A][X] : ep esen ación del p oceso de la pe cepción isual ............................... 8 Figu a 1.3[B] : neu onas biológicas ................................................................................... 9 Figu a 1.4[X] : ejemplo de neu ona a i icial ................................................................... 10 Figu a 1.5[X] : ejemplo neu ona a i icial ........................................................................ 11 Figu a 2.1[C][X] : ejemplo capas ed neu onal.................................................................. 14 Figu a 2.2[X] : ed neu onal o mada po es capas........................................................ 15 Figu a 2.3[D] : unción sigmoide ..................................................................................... 17 Figu a 2.4[E] : unción angen e hipe bólica ................................................................... 17 Figu a 2.5[F] : unción ReLU .......................................................................................... 18 Figu a 2.6[X] : ejemplo ed neu onal simple pa a clasi icación ...................................... 18 Figu a 2.7[X] : g á ica de -ln(zji) ..................................................................................... 24 Figu a 2.8[X] : dos neu onas consecu i as pa a Backp opaga ion .................................. 26 Figu a 3.1[G]: a qui ec u a ed neu onal con olucional .................................................. 31 Figu a 3.2[H] : ejemplo de con olución........................................................................... 32 Figu a 3.3[I] : il o de bo des.......................................................................................... 35 Figu a 3.4[J] : con olución en imagen a colo ................................................................. 35 Figu a 3.5[K] : aplicación de es il os de con olución ................................................. 36 Figu a 3.6[L] : capa ully connec ed con una neu ona ..................................................... 38 Figu a 3.7: ejemplo de ein e imágenes de la base de da os .......................................... 39 Tabla 2: imágenes de la base de da os ............................................................................ 40 Figu a 3.8 : g á ico de en enamien o de la ed .............................................................. 41 Figu a 3.9: imágenes a p ocesa en la ed neu onal ....................................................... 42 Figu a 3.10: salida de la ed neu onal con olucional ..................................................... 42 Figu a 3.11 : imagen de la base de da os Cam id .......................................................... 44 Figu a 3.12 : igu a 3.11 aplicando la segmen ación de imágenes ................................. 44 Figu a 3.13 : g á ico de ecuencias de la igu a 3.11 .................................................... 45 Figu a 3.14[18]: a qui ec u a de Googlene ...................................................................... 46 Figu a 3.15 : clasi icación a a és de webcam de bo ella de agua ................................ 47 Figu a 3.16 : clasi icación a a és de webcam de ga as de sol ..................................... 47 6 CAPÍTULO 1. INTRODUCCIÓN Las edes neu onales a i iciales su gen en los años 40 del siglo XX, como un in en o de imi a el uncionamien o de las neu onas del ce eb o humano[1]. Se mues a en la Tabla 1 los a ances his ó icos en el campo de las edes neu onales: Au o Época/año In oducción Obse aciones San iago Ramón y Cajal. Finales del siglo XIX. Doc ina de la neu ona. San iago Ramón y Cajal, médico y cien í ico español, P emio Nobel de medicina en 1906. Desa olló la doc ina de la neu ona, basada en que el ejido ce eb al es á compues o po células indi iduales, las neu onas.[2] Wa en McCulloch y Wal e Pi s. 1943 P ime modelo ma emá ico simple de una ed neu onal[3]. Die on luga al su gimien o de la eo ía de las edes neu onales. F ank Rosenbla . 1958 Pe cep ón[4]. Be na d Wid ow y Ted Ho . 1960 ADALINE[N]. El ADALINE es un modelo de ed neu onal a i icial basado en el pe cep ón, con la di e encia de que su obje i o es minimiza el e o cuad á ico medio en e la salida eal y la salida espe ada. 7 Ma in Minsky y Seymou Pape . 1969 “Pe cep ons: An In oduc ion o Compu a ional Geome y”[5]. En es e lib o, publicado en 1969 po Minsky y Pape , se p esen aban las limi aciones del Pe ce ón de Rossenbla . Es o causó g an us ación en e la comunidad cien í ica y ajo consigo un pe iodo en el cual se dejó de hace nue as p opues as[6]. Paul We bos. 1974 Mé odo de ap endizaje Backp opaga ion. La in oducción del Backp opaga ion ha enido un impac o signi ica i o en el campo de la in eligencia a i icial y la in es igación en edes neu onales[1]. Kunihiko Fukushima. 1975 y 1980 Cogni ón[7] y Neocogni ón[8]. La in oducción del Cogni ón y el Neocogni ón con o ma án el o igen de las edes neu onales con olucionales. Tabla 1: in oducción his ó ica a las edes neu onales a i iciales Desde la época de los 80 y has a nues os días, la edes neu onales se con i ie on en una he amien a impo an e en la in es igación y aplicación de la isión po o denado y de la in eligencia a i icial en gene al. Hoy en día, las edes neu onales son una ecnología cla e en una amplia a iedad de aplicaciones, desde el econocimien o de imágenes y oz has a la aducción au omá ica y la de ección de audes. La in es igación con inúa en es e campo, con el obje i o de desa olla edes neu onales más p ecisas y e icaces. 8 1.1 La cognición isual Figu a 1.1[A] : imágenes que econoce nues o ce eb o g acias a la pe cepción isual Los se es humanos, al obse a la igu a 1.1, pueden econoce es animales en ella, un ga o, un pe o y un pája o espec i amen e. Es o se debe a un p oceso cogni i o que lle a a cabo nues o ce eb o denominado cognición o pe cepción isual. Figu a 1.2[A][X] : ep esen ación del p oceso de la pe cepción isual En p ime luga , se debe sabe que los obje os y las imágenes e lejan adiaciones luminosas de dis in a ecuencia e in ensidad que pene an en el in e io del globo ocula a a és de la pupila. Después es a señal luminosa pasa po la có nea, el c is alino y la cáma a in e io acuosa has a llega a la e ina (cí culo ama illo en igu a 1.2), donde se p oyec an las imágenes de o ma in e ida. Aquí, se ans o ma la luz en ene gía elec oquímica que se ansmi e al ce eb o, más conc e amen e al álamo (cí culo ojo en igu a 1.2) a a és del ne io óp ico ( lecha na anja en igu a 1.2). Finalmen e, g acias al núcleo geniculado la e al ( lecha mo ada en igu a 1.2) es os impulsos ne iosos llegan 9 a la co eza isual del ce eb o (cí culos e de y azul en igu a 1.2) , si uada en el lóbulo occipi al, donde se p oduce la p opia pe cepción[9]. Cada á ea de la co eza isual (cí culos azul y e de en igu a 1.2) ex ae di e en es ipos de in o mación de la en ada isual, desde la o ien ación o el con as e has a el colo o la o ma de los obje os de la imagen. Es deci , un á ea de la co eza isual p ocesa o mas simples como pueden se líneas y o ien aciones, a con inuación o o á ea p ocesa á conjun os de esas líneas, después o o á ea p ocesa á colo es y ex u as… Los au o es de es e a ículo[10] esumen así es e hecho: “Hay una o ganización je á quica en e las á eas isuales. Todas las á eas es án al amen e in e conec adas, pe o cada una de ellas es á especializada en una pa e del análisis de la in o mación. La cognición isual es el esul ado de in e acciones ecu en es en e las dis in as á eas isuales”. 1.2 Neu ona biológica s neu ona a i icial Figu a 1.3[B] : neu onas biológicas En p ime luga , pa a en ende cómo unciona una neu ona del ce eb o humano y las conexiones en e ellas, se de inen sus pa es: • Dend i as: es la pa e de la neu ona enca gada de ecoge la in o mación, es deci , aquellos impulsos eléc icos y químicos p oceden es de la neu ona an e io . • Núcleo: es la pa e de la neu ona donde se p ocesa la in o mación ecibida. • Axón: se a a de una la ga cola de la neu ona enca gada de ansmi i la in o mación a la siguien e neu ona. 16 𝑦(3×1) 1=𝑊(3×4) 1·𝑋(4×1)+𝑏 󰇍  (3×1) 1. (2.1) 2) Y en consecuencia, pa a la salida de la siguien e neu ona, la cual se encuen a en la capa de salida se end ía que: 𝑦(3×1) 2=𝑊(3×3) 2·𝑦(3×1) 1+𝑏 󰇍  (3×1) 2=𝑊(3×3) 2[𝑊(3×4) 1·𝑋(4×1)+𝑏 󰇍  (3×1) 1]+𝑏 󰇍  (3×1) 2. (2.2) 3) Ope ando: 𝑦(3×1) 2=𝑊(3×3) 2·𝑊(3×4) 1·𝑋(4×1)+𝑊(3×3) 2·𝑏 󰇍  (3×1) 1+𝑏 󰇍  (3×1) 2. (2.3) 4) Po an o, deno ando como 𝑊3al p oduc o de 𝑊1 y 𝑊2: 𝑦(3×1) 2=𝑊(3×4) 3·𝑋(4×1)+(𝑊2·𝑏 󰇍  1)(3×1)+𝑏 󰇍  (3×1) 2. (2.4) 5) Y ope ando de nue o, deno ando a la suma del p oduc o de 𝑊2 y 𝑏 󰇍  1 más 𝑏 󰇍  2 como 𝑏 󰇍  3: 𝑦(3×1) 2=𝑊(3×4) 3·𝑋(4×1)+𝑏 󰇍  (3×1) 3. (2.5) Po an o compa ando las ecuaciones (2.1) y (2.5) se concluye que pa a la salida lineal 𝑦2 de la capa de salida se ealiza exac amen e la misma ope ación que pa a salida de la capa ocul a 𝑦1. Toda la ope ación que ealiza la ed neu onal de es capas se educe a una sola ope ación lineal. En conclusión, si odas las salidas de las capas ue an lineales, cualquie núme o de capas consecu i as se ían equi alen es a una sola capa lineal, lo que limi a ía la capacidad de la ed pa a “ap ende ” (concep o que se e á más adelan e) elaciones no lineales en los da os. Es deci , las unciones de ac i ación no lineales pe mi en a las edes neu onales “ap ende ” a iden i ica pa ones o endencias en los da os que pod ían pasa desape cibidos con un en oque lineal. Un mayo núme o de capas en la ed pe mi i á que la ed ap enda a iden i ica más pa ones en las imágenes de en ada. Además, las neu onas de las capas ocul as de la ed esponde án con una salida ac i a si la en ada ecibida con iene algún pa ón el cual han ap endido a econoce , y no se ac i a án si la en ada no con iene dicho pa ón. A con inuación se expond án algunas de las unciones de ac i ación más comunes. 17 2.2.1 Función Sigmoide y angen e hipe bólica His ó icamen e la unción sigmoide ha sido la más u ilizada como unción de ac i ación pa a edes neu onales, consis e en que la salida 𝑦 de una neu ona pasa a a és de la unción: 𝜎(𝑦)=1 1+𝑒−𝑦 (2.6) Ob eniendo así una salida no lineal. En 2010, Xa ie Glo o y Yoshua Bengio, de la uni e sidad de Mon éal[15], ealiza on un es udio concluyendo que el uso de unciones de ac i ación sigmoidales no es óp imo pa a el ap endizaje de la ed neu onal, ya que sus alo es se acumulan ápidamen e en 0 y en 1, o eciendo así g adien es signi ica i amen e pequeños y elen izando así el ap endizaje po g adien e descenden e (se e á es e algo i mo más adelan e). Po es as azones p opusie on el uso de la angen e hipe bólica an e las unciones sigmoidales, debido a que aunque el p oblema de acumulación seguía p esen e en es a unción, la en aja de se simé ica acili aba en g an medida el en enamien o de la ed.[16] anh(𝑦)=𝑒−𝑦−𝑒𝑦 𝑒−𝑦+𝑒𝑦 (2.7) Figu a 2.3[D] : unción sigmoide Figu a 2.4[E] : unción angen e hipe bólica 18 2.2.2 Función ReLU La unción ReLU ( ec i ied linea uni ) es una unción de ac i ación que esqui a los p oblemas de acumulación y además es más ácil de implemen a compu acionalmen e debido a que no u iliza ope aciones ma emá icas complejas como la unción exponencial. Ac ualmen e se a a de la unción de ac i ación más u ilizada en edes neu onales con olucionales. 𝑓𝑅𝑒𝐿𝑈(𝑦)={𝑦 𝑠𝑖 𝑦≥0 0 𝑠𝑖 𝑦<0 =max (0,𝑦) (2.8) 2.3 P oblema de clasi icación de imágenes median e una ed neu onal. Figu a 2.6[X] : ejemplo ed neu onal simple pa a clasi icación Figu a 2.5[F] : unción ReLU 19 Según la Real Academia Española, una clase se de ine como un conjun o de elemen os con ca ac e es comunes. Un p oblema de clasi icación de imágenes plan eado como un p oblema con edes neu onales, es al que dadas unas imágenes de en ada, la ed clasi ique es as imágenes de al mane a que las pueda ag upa en clases. Pa a es e ejemplo se u iliza á la ed neu onal de la igu a 2.6, que únicamen e cuen a con dos capas, una de en ada, y una de salida. Además se u iliza án es imágenes de en ada de es clases di e en es, en es e caso: ga o, pe o y pája o. Pa a la salida, la ed cuen a con es neu onas. Gene almen e, pa a los p oblemas de clasi icación que cuen an con K clases de imágenes se u ilizan K neu onas de salida. La p ime a, de colo mo ado, ep esen a á la salida de la clase ga o, la del medio, de colo g is, ep esen a á la salida de la clase pe o y la úl ima, de colo azul, ep esen a á la salida de la clase pája o. Se de inen a con inuación los componen es que se usa án en el ejemplo: • 𝑋𝑖∈ℝ4 ∀𝑖=1,2,3 los ec o es de en ada a la ed, o mados po los alo es numé icos de los píxeles de las imágenes que se p ocesa án. Si 𝑖=1 se á el ec o numé ico de la imagen de clase ga o, si 𝑖=2, el ec o de la imagen de clase pe o y si 𝑖=3, el ec o de la imagen de clase pája o. • 𝑊∈ℳ3×4(ℝ) la ma iz de pesos sináp icos. • 𝑏 󰇍  ∈ℝ3 los alo es de los sesgos de cada neu ona en o ma de ec o . • 𝑦𝑖∈ℝ3 ∀𝑖=1,2,3 los ec o es de salida de la ed cuyos elemen os se án las salidas de cada una de las neu onas. Si 𝑖=1 se á el ec o salida que gene a la imagen de clase ga o, si 𝑖=2, la salida de la imagen de clase pe o y si 𝑖= 3, la salida de la imagen de clase pája o. De al mane a que: 𝑦𝑖=𝑊·𝑋𝑖+𝑏 󰇍  . (2.9) Se ealizan las ope aciones de la ed neu onal pa a las es imágenes de en ada de al mane a que: a) Pa a la imagen del ga o: + = 𝑊 𝑋1 𝑏 󰇍  𝑦1 0.18 0.32 0.44 0.27 2.00 2.21 2.31 0.57 0.32 1.20 0.98 0.15 -0.45 0.78 0.33 1.22 -0.15 0.66 -0.33 3.00 2.53 2.68 20 b) Pa a la imagen de pe o: + = 𝑊 𝑋2 𝑏 󰇍  𝑦2 c) Pa a la imagen de pája o: + = 𝑊 𝑋3 𝑏 󰇍  𝑦3 Analizando las salidas, se obse a que pa a la salida 𝑦1 la neu ona que clasi ica las imágenes de ipo ga o de uel e el mayo de los alo es, 3.00, mien as que la neu ona que clasi ica las imágenes de clase ga o y la neu ona de clase pája o de uel en 2.53 y 2.68 espec i amen e. Po es e mo i o se concluye que la ed clasi ica bien la en ada de la imagen de clase ga o. De igual mane a ocu e pa a la en ada de la imagen de clase pája o, ya que la salida 𝑦3 ob iene el mayo de los alo es, 3.69, en la neu ona que clasi ica las imágenes de clase pája o. Po el con a io, en la salida 𝑦2 se obse a que pa a la en ada de la imagen de clase pe o, la neu ona que clasi ica las imágenes de clase pe o ob iene el meno de los alo es, 2.48, po an o se concluye que la ed no es á clasi icando bien odas las clases de imágenes. Pa a conclui el p oblema de clasi icación de imágenes se debe u iliza una unción de ac i ación de ipo SOFTMAX. 0.73 0.17 0.25 0.13 2.00 2.21 2.31 0.57 0.32 1.20 0.98 0.15 -0.45 0.78 0.33 1.22 -0.15 0.66 -0.33 2.90 2.48 3.30 0.98 0.12 0.34 0.07 2.00 2.21 2.31 0.57 0.32 1.20 0.98 0.15 -0.45 0.78 0.33 1.22 -0.15 0.66 -0.33 3.07 2.59 3.69 21 2.3.1 Función SOFTMAX En los p oblemas de clasi icación esul a con enien e in e p e a las salidas de las neu onas como es imaciones de la p obabilidad de que una imagen de en ada pe enezca a una de las clases del p oblema. Pa a hace que la ed neu onal ep esen e una dis ibución de p obabilidad de inida sob e las di e en es clases del p oblema se in oduce la unción SOFTMAX: 𝑧𝑗𝑖=𝑒𝑦𝑗𝑖 ∑𝑒𝑦𝑗𝑖 𝑗 . (2.10) Donde: • 𝑦𝑗𝑖 es la j-ésima componen e del ec o 𝑦𝑖. • 𝑧𝑗𝑖 es el esul ado de aplica la unción SOFTMAX a la componen e j-ésima del ec o 𝑦𝑖. Vol iendo al ejemplo con el que se es á a ando, se ob iene que: Dado 𝑦1= [3.00 2.53 2.68] , se le aplica la unción SOFTMAX (2.9) de al mane a que: 𝑦11=3.00 ⟹𝑒3.00=20.08. 𝑦21=2.53⟹𝑒2.53=12.55. 𝑦31=2.68⟹𝑒2.68=14.58. Y po an o no malizando con la suma de es os alo es se calcula que: 𝑧11=20.08 20.08+12.55+14.58=0.43. 𝑧21=12.55 20.08+12.55+14.58=0.27. 𝑧31=14.58 20.08+12.55+14.58=0.30. De es a mane a se concluye que: 𝑧1=𝑆𝑂𝐹𝑇𝑀𝐴𝑋(𝑦1)=𝑆𝑂𝐹𝑇𝑀𝐴𝑋([3.00 2.53 2.68])=[0.43 0.27 0.30]. 22 Siendo 𝑧𝑖∈ℝ3 ∀𝑖=1,2,3 el ec o ob enido al aplica la unción SOFTMAX al ec o 𝑦𝑖∈ℝ3. De al mane a que se ob end ían los siguien es alo es de 𝑧: 𝑧1=[0.43 0.27 0.30],𝑧2=[0.32 0.21 0.47],𝑧3=[0.29 0.18 0.53]. (2.11) A endiendo a los alo es de 𝑧 dados en (2.11) se puede obse a que en 𝑧1, la ed de uel e una p obabilidad del 43% de que la imagen de en ada del ga o sea de clase ga o, un 27% de que sea de clase pe o y un 30% de que sea de clase pája o. Po lo que la ed clasi ica bien la imagen de clase ga o, al igual que lo hace con la de clase pája o, isible en 𝑧3, donde se ap ecia que la ed clasi ica co ec amen e la imagen de clase pája o con una p obabilidad del 53%. Po el con a io, cuando la imagen de en ada se a a de la imagen de clase pe o, la ed neu onal de uel e un 21% de p obabilidad de que és a sea de clase pe o y un 47% de que és a pe enezca a la clase pája o. Po an o se puede conclui que en es e caso la ed no es á clasi icando co ec amen e. 2.4 En enamien o y ap endizaje de la ed neu onal a i icial Del ejemplo an e io su ge la siguien e p egun a ¿cómo de buenos son los pa áme os 𝑊 y 𝑏 󰇍  pa a clasi ica las imágenes? Teniendo en cuen a que el ec o 𝑋 es á de inido po el alo de los píxeles de la imagen, 𝑊y 𝑏 󰇍  son los pa áme os que se pueden ajus a pa a mejo a la salida de la ed. A es o se le denomina á que la ed neu onal “en ene” o “ap enda” a clasi ica bien las imágenes de en ada. 2.4.1 Función de pé dida y unción de cos e. Pa a en ena una ed neu onal se in oduce la llamada unción de pé dida, la cual ep esen a cómo de buenos son los esul ados a ojados con los pa áme os 𝑊 y 𝑏 󰇍  ac uales[R]. Se ep esen a como: 𝐿𝑖=− ∑ 𝐻𝑗ln(𝑧𝑗𝑖). #𝐶𝑙𝑎𝑠𝑒𝑠 𝑗=1 (2.12) 23 Donde: • 𝐿𝑖es el alo de la unción de pé dida de la salida 𝑧𝑖. • #𝑐𝑙𝑎𝑠𝑒𝑠 es el núme o de clases del p oblema (#𝑐𝑙𝑎𝑠𝑒𝑠=𝑑𝑖𝑚ℝ(𝑧𝑖)). • 𝐻 󰇍 󰇍  ∈ℝ#𝑐𝑙𝑎𝑠𝑒𝑠 se denomina á al ec o de alo es eales pa a una en ada, es deci , se á un ec o de ce os con únicamen e un uno en la posición en la que se encuen e la neu ona que clasi ique las imágenes de dicha en ada. • 𝐻𝑗 se án las componen es del ec o 𝐻 󰇍 󰇍  . • 𝑧𝑗𝑖se án las componen es del ec o de uel o po la unción SOFTMAX. Aplicando es o al ejemplo con el que se enía a ando se ob iene que pa a la en ada de la imagen del ga o, a endiendo a (2.11): 𝑧1=[0.43 0.27 0.30] y se á 𝐻 󰇍 󰇍  =[100] ya que se quie e que si la en ada es una imagen de clase ga o, la ed de uel a un 1 en la posición en la que se encuen a la salida de la neu ona de clase ga o, es deci en 𝑗=1. Aplicando aho a la unción de pé dida se ob iene que la pé dida de la p ime a salida se á: 𝐿1=−∑𝐻𝑗ln(𝑧𝑗1) 3 𝑗=1 =−(1×ln(0.43)+0×ln (0.27+0×ln (0.30))=0.84. Y po an o, aplicando la unción de pé dida a las es salidas ob enidas en el ejemplo se ob iene que: 𝐿1=0.84. 𝐿2=1.56. 𝐿3=0.63. De al mane a que 𝐿1 se á la pé dida de la en ada de la imagen de clase ga o, 𝐿2la pé dida de la en ada de la imagen de clase pe o, lo cual iene sen ido que sea la mayo ya que la ed no la clasi icaba co ec amen e, y 𝐿3la pé dida de la en ada de la imagen de clase pája o. Se u iliza la unción −ln(𝑧𝑗𝑖) debido a que: 24 Si 𝑧𝑗𝑖 es un alo ce cano a uno, quie e deci , que exis e mucha p obabilidad de que la ed haya p edicho bien a qué clase pe enece la imagen de en ada. Po an o los alo es 𝑊 y 𝑏 󰇍  es a án bien ajus ados, de ol iendo así es a unción una pé dida pequeña. Po ejemplo, si 𝑧𝑗𝑖=1, la pé dida se á 0. Si po el con a io 𝑧𝑗𝑖 de uel e un alo más ce cano a ce o, quie e deci que la ed ha p edicho mal la clase de la imagen de en ada. En consecuencia, o ece á una pé dida mayo . A con inuación se in oduci á la unción de cos e. Se deno a á como: 𝐽(𝑊,𝑏 󰇍  )=1 𝑚∑𝐿𝑖. (2.13) 𝑚 𝑖=1 Donde m se á el núme o de imágenes in oducidas en la ed en el p oceso de en enamien o, de al mane a que ealmen e ealiza la media a i mé ica de las pé didas de las salidas que gene an las dis in as en adas. De hecho, a endiendo a la ecuación (2.11) se iene que: 𝐽(𝑊,𝑏 󰇍  )=1 𝑚∑𝐿𝑖 𝑚 𝑖=1 =1 𝑚∑(− ∑ 𝐻𝑗ln(𝑧𝑗𝑖) #𝐶𝑙𝑎𝑠𝑒𝑠 𝑗=1 ) 𝑚 𝑖=1 . (2.14) A endiendo a la ecuación (2.10) se ob iene que : 𝐽(𝑊,𝑏 󰇍  )=1 𝑚∑𝐿𝑖 𝑚 𝑖=1 =1 𝑚∑(− ∑ 𝐻𝑗ln(𝑒𝑦𝑗𝑖 ∑𝑒𝑦𝑗𝑖 𝑗) #𝐶𝑙𝑎𝑠𝑒𝑠 𝑗=1 ) 𝑚 𝑖=1 . (2.15) Y po úl imo a endiendo a la ecuación (2.9) se ob iene: Figu a 2.7[X] : g á ica de -ln(𝑧𝑗𝑖) 25 𝐽(𝑊,𝑏 󰇍  )=1 𝑚∑𝐿𝑖 𝑚 𝑖=1 =1 𝑚∑(− ∑ 𝐻𝑗ln(𝑒(𝑊·𝑋 󰇍  𝑖+𝑏 󰇍  )𝑗 ∑𝑒(𝑊·𝑋 󰇍  𝑖+𝑏 󰇍  )𝑗 𝑗) #𝐶𝑙𝑎𝑠𝑒𝑠 𝑗=1 ) 𝑚 𝑖=1 . (2.16) La unción de cos e ag upa odas es as pé didas en un único alo . Depende de dos pa áme os, 𝑊 y 𝑏 󰇍  , ya que, como se io al p incipio del capí ulo, son los únicos pa áme os de la ed los cuales pueden ajus a se. 2.4.2 G adien e descenden e y Backp opaga ion. Se denomina á en enamien o o ap endizaje de la ed al p oceso que consis e en ajus a los pa áme os 𝑊 y 𝑏 󰇍  , minimizando así la unción de cos e con el obje i o de que los esul ados de la capa de salida se ajus en lo más posible a los esul ados deseados. El mé odo más u ilizado pa a ajus a es os pa áme os es el algo i mo de g adien e descenden e, que consis e en minimiza la unción de cos e. Es e p oceso se ealiza calculando su a iación con espec o de los pa áme os que se quie en ajus a , pa a pos e io men e, i ajus ando los pa áme os en la di ección del g adien e. Cabe des aca que el descenso del g adien e se aplica indi idualmen e a odas las neu onas de la ed po an o podemos de ini : • 𝐽(𝑊,𝑏 󰇍  ) la unción de cos e. • 𝑊∈ℳ𝑛×𝑚(ℝ) la ma iz de pesos sináp icos. • 𝑏 󰇍  ∈ℝ𝑛 el sesgo o bias. • 𝛼 la azón de ap endizaje, la cual de ine el amaño del paso que se quie a da en cada i e ación del algo i mo. • 𝑁=[𝑏 󰇍  𝑊] se án los pa áme os de la neu ona que quie es ajus a se. El p oceso que sigue es: 1) En p ime luga se calcula la a iación de la unción de cos e 𝐽 espec o de los pa áme os que se quie an ajus a , en es e caso con espec o a 𝑊 y 𝑏 󰇍  , se deno a á po 𝑔 al ec o compues o po dichas a iaciones, es deci : 32 3.1.1 Con olución y capas con olucionales. Pa a en ende el p oceso de con olución aplicado a imágenes, se comenza á con una imagen de en ada en blanco y neg o, cuyos píxeles se pueden ep esen a numé icamen e en la ma iz 𝐼∈ℳℎ×𝑛(ℝ) siendo ℎ×𝑛 el amaño de la imagen. Se oma en conc e o pa a el ejemplo la ma iz 𝐼∈ℳ4(ℝ) : 𝐼=(2 1 1 1 1 2 2 2 −2 0 0 −2 1 0 1 0) Se de ine un il o o ke nel como una ma iz 𝐾∈ℳ𝑘(ℝ) la cual se i á colocando sob e la ma iz de en ada al y como se puede ap ecia en la igu a 3.2 y se ealiza á lo que se conoce como una ope ación de p oduc o pun o, es deci , se mul iplica á alo po alo los elemen os coinciden es de la ma iz de en ada y del il o pa a pos e io men e ealiza la suma de odos es os p oduc os de al mane a que de cada con olución quede como esul ado un único alo numé ico. Nó ese que en dimensión dos, donde la en ada es á ep esen ada en o ma de ma iz se ealiza el p oduc o pun o de 9 elemen os. Figu a 3.2[H] : ejemplo de con olución 33 Sea la ma iz del il o 𝐾∈ℳ3(ℝ) : 𝐾=(0 1 0 1 4 1 0 1 0) Se de ine el paso o zancada que se deno a á po 𝑠∈ℕ, el cual indica el sal o que da á la ma iz del il o sob e la ma iz de la imagen de en ada pa a i ealizando la ope ación de con olución, en es e ejemplo se de ine un paso 𝑠=1, de al mane a que as habe ealizado la p ime a con olución, la ma iz del il o se desplaza á una unidad de píxel. Además, se in oduce el denominado ze o padding, el cual consis e en ellena la en ada con ce os al ededo de la ma iz inicial con el obje i o de ob ene una salida del amaño deseado, se deno a á po 𝑝∈ℕ. Po ejemplo, añadiendo un ze o padding de 𝑝= 1 se ob end ía una ma iz de en ada 𝐼𝑧𝑝∈ℳℎ+2𝑝×𝑛+2𝑝(ℝ). Sea en es e caso 𝐼𝑧𝑝∈ℳ6(ℝ): 𝐼𝑧𝑝= ( 0 0 0 0 0 0 0 2 1 1 1 0 0 1 2 2 2 0 0 −2 0 0 −2 0 0 1 0 1 0 0 0 0 0 0 0 0 ) Se ealiza á la con olución, que se deno a á con el signo ∗ , de las ma ices 𝐼∈ ℳ4(ℝ) y 𝐾∈ℳ3(ℝ) de al mane a que: 𝐼∗𝐾=(2 1 1 1 1 2 2 2 −2 0 0 −2 1 0 1 0)∗(0 1 0 1 4 1 0 1 0)= = ( (2×0 +1×1 +1×0 +1×1 +2×4 +2×1 −2×0 +0×1 +0×0) (1×0 +1×1 +1×0 +2×1 +2×4 +2×1 +0×0 +0×1 −2×0) (1×0 +2×1 +2×0 −2×1 +0×4 +0×1 +1×0 +0×1 +1×0) (2×0 +2×1 +2×0 +0×1 +0×4 −2×1 +0×0 +1×1 +0×0) ) =(12 13 0 1) La ma iz que esul a de aplica la con olución se deno a á po 𝐶∈ℳℎ0×𝑛0(ℝ), en es e caso 𝐶∈ℳ2(ℝ). 34 Nó ese que a es a ma iz de salida se le pod á aplica una unción de ac i ación de ipo ReLU a cada uno de sus elemen os al y como se podía e en la igu a 3.1. Sea la la ma iz de en ada 𝐼∈ℳℎ×𝑛(ℝ) y la ma iz del il o 𝐾∈ℳ𝑘(ℝ), sea 𝑝∈ℕ el pa áme o de ze o padding y 𝑠∈ℕ el paso o zancada y po úl imo 𝐶∈ ℳℎ0×𝑛0(ℝ) la ma iz de salida, se ob end á que: ℎ0=ℎ−𝑘+2𝑝 𝑠+1. (3.1) 𝑛0=𝑛−𝑘+2𝑝 𝑠+1. (3.2) U ilizando es as ecuaciones se calcula que pa a el ejemplo inicial se ob end á una salida de amaño: ℎ0=4−3+2(0) 1+1=2. 𝑛0=4−3+2(0) 1+1=2. De hecho, habiendo ealizado los cáculos an e io es, la ma iz de salida es en e ec o 𝐶∈ℳ2(ℝ), en cambio, si se ealiza es a ope ación con la ma iz de en ada 𝐼𝑧𝑝∈ℳ6(ℝ) se ob iene un amaño de salida: ℎ0=4−3+2(1) 1+1=4. 𝑛0=4−3+2(1) 1+1=4. Concluyendo así que la ma iz esul an e de ealiza la con olución 𝐼𝑧𝑝∗𝐾 se ía una ma iz 𝐶𝑧𝑝∈ℳ4(ℝ). 35 En conc e o es e il o u ilizado 𝐾 se denomina il o de bo des, ya que su unción es de ec a los bo des en e colo es di e en es de la imagen con el obje i o de de ec a los con o nos de los obje os. Realiza la siguien e modi icación de la imagen: Figu a 3.3[I] : il o de bo des A con inuación se e á como aplica la con olución a imágenes a colo . Una imagen a colo cuen a con es canales de en ada, e de azul y ojo. Po an o, aho a la en ada no pod á ep esen a se en una ma iz, sino que se ep esen a á como una mul ima iz de dimensión (ℎ×𝑛×3) y en consecuencia, se debe á aplica un il o de dimensión (𝑘×𝑘×3), como se ap ecia en la siguien e imagen: Figu a 3.4[J] : con olución en imagen a colo 36 La di e encia con espec o a las en adas en dos dimensiones se á que aho a se ealiza á un p oduc o pun o de 27 elemen os pa a ealiza la con olución en ez de u iliza 9 elemen os como se hacía en dimensión dos. Nó ese que el esul ado de cada con olución sigue siendo un único alo numé ico. De nue o a cada elemen o de salida se le aplica á una unción de ac i ación no lineal de ipo ReLU y po ello al conjun o de elemen os de salida se le denomina á mapa de ac i ación. La dimensión, en es e caso, del mapa de ac i ación se pod á calcula u ilizando de nue o las ecuaciones (3.1) y (3.2) u ilizadas an e io men e ya que el il o debe á ene la misma p o undidad que la en ada. Po úl imo se e á qué ocu e si se u iliza más de un il o pa a una sola en ada. Figu a 3.5[K] : aplicación de es il os de con olución En es e caso, la aplicación de más de un il o, aunque la en ada y el il o sean de dos dimensiones y se puedan ep esen a en o ma de ma iz, da ía como esul ado una mul ima iz. Las dimensiones de dicha mul ima iz se pod ían calcula u ilizando las ecuaciones (3.1) y (3.2) pa a el al o y ancho de la salida, y siendo 𝑛𝑓∈ℕ el núme o de il os u ilizados, la dimensión de la mul ima iz de salida end ía dada po : (ℎ0×𝑛𝑜×𝑛𝑓). De nue o se le aplica una unción de ac i ación y po an o en es e caso la salida end ía dada po 𝑛𝑓 mapas de ac i ación [14]. 37 3.1.2 Capas de Pooling Como se puede no a en la igu a 3.1, las capas de pooling se colocan en e las capas con olucionales con el obje i o de educi el cos e compu acional de una ed neu onal u ilizada pa a p ocesa imágenes. Una capa de pooling lo que hace es educi el amaño de su en ada pa a que las capas pos e io es puedan abaja con da os de en ada educidos y así educi ambién el cos e compu acional de la ed neu onal. El pooling más u ilizado se basa en combina una se ie de píxeles de la en ada u ilizando una unción máximo, po ello se denomina max pooling. Dada una ma iz 𝐼∈ ℳℎ×𝑛(ℝ), se le aplica un max pooling de (𝑚×𝑚), de al mane a que se di ide la ma iz 𝐼 en subma ices de amaño (𝑚×𝑚) de las cuales únicamen e se queda á con el máximo alo de cada subma iz. Po ejemplo, ol iendo a la ma iz 𝐼∈ℳ4(ℝ) del apa ado an e io , se le puede aplica un max pooling de (2×2) de al mane a que: 𝐼=(2 1 1 1 1 2 2 2 0 0 0 0 1 0 1 0) ⟹𝐼𝑚𝑝=(2 2 1 1) Exis en o os ipos de pooling, como el a e age pooling el cual se basa en ealiza la media a i mé ica de los elemen os de las subma ices, o el L2 pooling, el cual consis e en ealiza la no ma L2 de los elemen os seleccionados[14]. 3.1.3 Capas ully connec ed Las capas ully connec ed se colocan al inal de la a qui ec u a de la ed neu onal con olucional. Es una capa de la ed neu onal que es á o almen e conec ada con las neu onas que con o man la capa an e io . Es o signi ica que cada neu ona de la capa ully connec ed es á conec ada con odas las neu onas de la capa an e io y cada conexión iene un peso sináp ico asociado. La salida de cada neu ona de la capa ully connec ed se ob iene a a és de una combinación lineal de las en adas y los pesos, seguida de una unción de ac i ación al como se io en el apa ado 2.3 de es e abajo. [17] Po ejemplo, si la capa an e io cuen a con 100 neu onas, y la capa ully connec ed cuen a con 10 neu onas, hab á un o al de 100×10=1000 conexiones con sus espec i os pesos sináp icos en e las capas. La salida de las 10 neu onas de la capa ully 38 connec ed se á una combinación lineal en e las salidas de las 100 neu onas de la capa an e io con los pesos sináp icos de las conexiones, seguida po una unción de ac i ación como puede se la unción SOFTMAX si se a a de un p oblema de clasi icación con 10 clases de imágenes. 3.2 Aplicaciones básicas A con inuación se e á un ejemplo de cada una de las aplicaciones de edes neu onales con olucionales pa a p ocesa imágenes más u ilizadas ac ualmen e, en p ime luga , se c ea á desde ce o una ed neu onal que nos pe mi a clasi ica imágenes, en es e caso lo ha emos con imágenes de núme os del 0 al 9. En segundo luga se u iliza á una ed p een enada que o ece MATLAB pa a de ec a obje os den o de una imagen, lo cual se ha á de mane a que se simula á lo que e un coche au ónomo que a conduciendo po la calle y se á capaz de econoce y di e encia odo lo que e po su cáma a on al. Po úl imo se ha á uso de la ed p een enada Googlene pa a un econocimien o de obje os a a és de la webcam del o denado , donde se coloca án obje os alea o ios delan e de la webcam del o denado pa a que la ed de uel a de qué obje o se a a. Figu a 3.6[L] : capa ully connec ed con una neu ona 39 3.2.1 Ejemplo 1. Clasi icación de imágenes Se c ea á la ed neu onal desde ce o, p og amando en MATLAB, la cual ha á una clasi icación de las imágenes de en ada que se án una se ie de imágenes de núme os que an desde el ce o has a el nue e, en es as imágenes se ep esen an núme os de dis in os amaños, o ma os, g oso es y o ien aciones en blanco y neg o[T]. Pa a empeza se ca ga á la base de da os o ecida po MATLAB y a a és de un bucle se le pedi á a MATLAB que enseñe ein e imágenes alea o ias de la base de da os: Figu a 3.7: ejemplo de ein e imágenes de la base de da os A con inuación, se calcula á el núme o de imágenes que con iene la base de da os, además ambién se á con enien e calcula el núme o de imágenes que con iene cada clase, en es e caso, el núme o de imágenes de cada núme o. Se ha á en una abla donde Label deno a la clase y Coun el núme o de imágenes de esa clase: Label Coun 0 1000 1 1000 2 1000 3 1000 4 1000 5 1000 6 1000 7 1000 40 8 1000 9 1000 Tabla 2: imágenes de la base de da os Cada clase con iene 1000 imágenes de cada núme o, es deci , diez mil imágenes en o al. A con inuación in e esa sabe cual es el amaño de es as imágenes eco dando que la capa de en ada debe se del mismo amaño que las imágenes que se p ocesa án. En es e caso el amaño esul a se de 28×28 píxeles. El siguien e paso se á de ini un conjun o de en enamien o y o o de alidación, el conjun o de en enamien o se á el u ilizado pa a que la ed neu onal en ene o ap enda, y el conjun o de alidación se á el que la ed neu onal clasi ique. En es e caso se de ine un conjun o de en enamien o de 750 imágenes, y las es an es con o ma án el conjun o de alidación. Se de ine la a qui ec u a de la ed neu onal con olucional: 1) Se de ine la capa de en ada, la cual debe se del mismo amaño que las imágenes, es deci , 28×28 . 2) Se aplica la p ime a capa con olucional con un il o de 3×8. (Véase [3.1.1]) 3) Se de ine una unción de ac i ación no lineal pa a la p ime a salida de ipo ReLU. (Véase [2.2]) 4) Se aplica un max pooling 2×2 a la salida no lineal de la p ime a capa con olucional. (Véase [3.1.2]) 5) Se aplica una segunda capa con olucional es a ez con un il o 3×16 + ReLu. 6) Se aplica de nue o un max pooling 2×2 pa a educi el amaño de la salida de la segunda capa con olucional. 7) Finalmen e se aplica una e ce a capa con olucional con un il o 3×32 + ReLU. 8) Pa a pode clasi ica se u iliza una capa ully connec ed de 10 neu onas. (Véase [3.1.3]) 9) Se aplica una unción SOFTMAX debido a que se buscan p obabilidades pa a la clasi icación. (Véase [2.3.1]) 41 10) Po úl imo se aplica una capa de clasi icación la cual se á la capa de salida. Se debe especi ica el en enamien o de la ed, lo cual se ha á con el algo i mo del Descenso del g adien e ( éase [2.4.2]), aplicado en MATLAB con “sgdm”, con un 𝛼= 0,01, es deci , con una azón de ap endizaje de 0,01. Además se es ablece un núme o máximo de ciclos de en enamien o comple o, en es e caso cua o. La igu a 3.8 con o ma el g á ico de cómo se ha desempeñado el en enamien o de la ed neu onal p og amada en MATLAB, el en enamien o ha inalizado debido a que se ha ealizado cua o ciclos de en enamien o comple o, al y como se le pidió en el código. Cada ciclo de en enamien o ha ealizado 58 i e aciones pa a en ena la ed neu onal con olucional, de al mane a que en el g á ico de a iba se puede e cómo a mejo ando la p ecisión con o me se a aumen ando el núme o de i e aciones de en enamien o. Una ez en enada y de e minada la ed, se aplica a los da os de alidación y el esul ado es que la ed ob iene un 98,96% de acie o con los esul ados de los da os de alidación. Po el con a io, en el g á ico in e io de la igu a 3.8, se puede e cómo disminuye la unción de pé dida en unción de las i e aciones, de al mane a que, g acias al en enamien o, es a pé dida en las i e aciones inales se ace ca a ce o. Cabe des aca que MATLAB ha a dado 26 segundos en ealiza es e en enamien o de la ed neu onal p og amada. Figu a 3.8 : g á ico de en enamien o de la ed 48 CONCLUSIONES En es e abajo se ha p o undizado en los mé odos y algo i mos ma emá icos que con o man el uncionamien o de las edes neu onales pa a el p ocesamien o de imágenes. Así como se han p opo cionado nume osos ejemplos pa a en ende lo an o eó ica como p ác icamen e. Además de es udia odas las ma emá icas que hay de ás de las edes neu onales y de las edes neu onales con olucionales, se ha lle ado oda esa eo ía a la p ác ica en el úl imo apa ado. Se ha conseguido p og ama y en ena una ed neu onal con olucional desde ce o pa a la clasi icación de imágenes, u ilizando únicamen e elemen os explicados a lo la go del abajo. También se han is o o as aplicaciones del p ocesamien o de imágenes con edes neu onales con olucionales, como son la iden i icación o el econocimien o de obje os, a a és de edes con olucionales p e-en enadas que o ece MATLAB pa a el ap o echamien o de sus usua ios. En conclusión, las edes neu onales con olucionales son una he amien a muy pode osa pa a esol e p oblemas elacionados con el p ocesamien o de imágenes y isión a i icial. A pesa de que es e abajo se haya cen ado en es a aplicación, cabe des aca o as aplicaciones de las edes neu onales con olucionales pa a u u as líneas de in es igación: • Reconocimien o de pa ones: Las CNN se u ilizan en p oblemas de econocimien o de pa ones, como la iden i icación de esc i u a a mano, la iden i icación de dígi os y la iden i icación de lenguaje. • Gene ación de imágenes: Las CNN se u ilizan en la gene ación de imágenes, como la c eación de imágenes a pa i de desc ipciones de ex o o la c eación de imágenes de al a esolución a pa i de imágenes de baja esolución. • Medicina: Las CNN se u ilizan en la diagnós ica de en e medades a pa i de imágenes médicas, como omog a ías y adiog a ías, así como en la iden i icación de pa ones en da os médicos. • Juegos: Las CNN se u ilizan en el ap endizaje de juegos, como el ap endizaje de es a egias de juego y la gene ación de pe sonajes y paisajes en juegos. 49 REFERENCIAS [1] Caicedo B a o, E. F., & Lopez So elo, J. A. (2009). Una ap oximación p ác ica a las edes neu onales a i iciales. Uni e sidad del alle P og ama edi o ial. [2] R.Llinás, R. (2003). The con ibu ion o San iago Ramon y Cajal o unc ional neu oscience. na u e e iews neu oscience, 77-80. [3] McCulloch, W., & Pi s, W. (1943). A logical calculus o he ideas immanen in ne ous ac i i y. Bulle in o ma hema ical biophisysics, 5. [4] Rami ez, F. (22 de Julio de 2018). a chi e.o g. Ob enido de Wayback Machine: h ps://web.a chi e.o g/web/20180722124753/h ps:/da a-speaks.luca- d3.com/2018/07/his o ia-de-la-ia- ank- osenbla -y-el.h ml [5] Minsky, M., & Pape , S. (1972 (2nd edi ion wi h co ec ions, i s edi ion 1969)). Pe cep ons: An In oduc ion o Compu a ional Geome y. Camb idge MA: The MIT P ess. [6] McCo duck, P. (2004). Machines Who Think (2nd ed.). (A. Pe e s, Ed.) Na ick: CRC P ess. [7] Fukushima, K. (1975). Cogni on: A sel -o ganizing mul ilaye ed neu al ne wo k. Biological Cybe ne ics. [8] Fukushima, K. (1980). Neocogni on: A sel -o ganizing neu al ne wo k model o a mechanism o pa e n ecogni ion una ec ed by shi in posi ion. (Vol. 4). Biological Cybe ne ics. [9] To ades, S., & Pe ez-Sus , P. (2008). Sis ema isual. La pe cepción del mundo que nos odea. O a m, 6(27), 98-99. [10] To ades, S., & Pe ez-Sus , P. (2008). Sis ema isual. La pe cepción del mundo que nos odea. O a m, 6(27), 101. [11] Aguila Medina, D. (2008). Redes neu onales. RITS(1), 88-92. [12] Ga cia-Olalla Oli e a, O. (16 de sep iemb e de 2019). xe idia.com. Ob enido de h ps://www.xe idia.com/blog/ edes-neu onales-a i iciales-que-son-y-como-se- en enan-pa e-i [13] Hubel, D., & Wiesel, T. (1962). Recep i e ields, binocula in e ac ion and unc ional a chi ec u e in he ca ´s isual co ex. The Jou nal o physiology, 160(1), 106. [14] Be zal , F. (2018). Redes Neu onales & Deep Lea ning. G anada. 599-630 50 [15] Glo o , X., & Bengio, Y. (2010). Unde s anding he di icul y o aining deep eed o wa d neu al ne wo ks. JMLR P oceedings, 9, 249-256. [16] Be zal, F. (2018). Redes Neu onales & Deep Lea ning. G anada. 197-199 [17] da ascien es .com. (s. .). Ob enido de Da aScien es : h ps://da ascien es .com/es/con olu ional-neu al-ne wo k-es [18] Rod iguez Ab il, R. (s. .). lamaquinao aculo.com. Ob enido de La Máquina O áculo: h ps://lamaquinao aculo.com/compu acion/googlene / 51 BIBLIOGRAFÍA Aguila Medina, D. (2008). Redes neu onales. RITS(1), 88-92. Be zal , F. (2018). Redes Neu onales & Deep Lea ning. G anada. Be zal, F. (2018). Redes Neu onales & Deep Lea ning. G anada. Caicedo B a o, E. F., & Lopez So elo, J. A. (2009). Una ap oximación p ác ica a las edes neu onales a i iciales. Uni e sidad del alle P og ama edi o ial. da ascien es .com. (s. .). Ob enido de Da aScien es : h ps://da ascien es .com/es/con olu ional-neu al-ne wo k-es Fukushima, K. (1975). Cogni on: A sel -o ganizing mul ilaye ed neu al ne wo k. Biological Cybe ne ics. Fukushima, K. (1980). Neocogni on: A sel -o ganizing neu al ne wo k model o a mechanism o pa e n ecogni ion una ec ed by shi in posi ion. (Vol. 4). Biological Cybe ne ics. Ga cia-Olalla Oli e a, O. (16 de sep iemb e de 2019). xe idia.com. Ob enido de h ps://www.xe idia.com/blog/ edes-neu onales-a i iciales-que-son-y-como-se- en enan-pa e-i Glo o , X., & Bengio, Y. (2010). Unde s anding he di icul y o aining deep eed o wa d neu al ne wo ks. JMLR P oceedings, 9, 249-256. Hubel, D., & Wiesel, T. (1962). Recep i e ields, binocula in e ac ion and unc ional a chi ec u e in he ca ´s isual co ex. The Jou nal o physiology, 160(1), 106. McCo duck, P. (2004). Machines Who Think (2nd ed.). (A. Pe e s, Ed.) Na ick: CRC P ess. McCulloch, W., & Pi s, W. (1943). A logical calculus o he ideas immanen in ne ous ac i i y. Bulle in o ma hema ical biophisysics, 5. Minsky, M., & Pape , S. (1972 (2nd edi ion wi h co ec ions, i s edi ion 1969)). Pe cep ons: An In oduc ion o Compu a ional Geome y. Camb idge MA: The MIT P ess. R.Llinás, R. (2003). The con ibu ion o San iago Ramon y Cajal o unc ional neu oscience. na u e e iews neu oscience, 77-80. Rami ez, F. (22 de Julio de 2018). a chi e.o g. Ob enido de Wayback Machine: h ps://web.a chi e.o g/web/20180722124753/h ps:/da a-speaks.luca- d3.com/2018/07/his o ia-de-la-ia- ank- osenbla -y-el.h ml 52 Rod iguez Ab il, R. (s. .). lamaquinao aculo.com. Ob enido de La Máquina O áculo: h ps://lamaquinao aculo.com/compu acion/googlene / To ades, S., & Pe ez-Sus , P. (2008). Sis ema isual. La pe cepción del mundo que nos odea. O a m, 6(27), 98-99. To ades, S., & Pe ez-Sus , P. (2008). Sis ema isual. La pe cepción del mundo que nos odea. O a m, 6(27), 101. 53 WEBGRAFÍA [A] h ps://bi .ly/3INeyjs Consul ado en no iemb e 2022 [B] h ps://bi .ly/3ZOsSP5 Consul ado en no iemb e 2022 [C] h p://bi .ly/3iBjRYE Consul ado en no iemb e 2022 [D] h p://bi .ly/3kh3j8W Consul ado en diciemb e 2022 [E] h p://bi .ly/3kiBYTz Consul ado en diciemb e 2022 [F] h p://bi .ly/3ZzPnXJ Consul ado en diciemb e 2022 [G] h p://bi .ly/3XzbR9B Consul ado en diciemb e 2022 [H] h p://bi .ly/3iCXuSC Consul ado en ene o 2023 (Cecbu , CC BY-SA 4.0) [I] h p://bi .ly/3kbGPWJ Consul ado en ene o 2023 [J] h p://bi .ly/3CPIsjs Consul ado en ene o 2023 (Cecbu , CC BY-SA 4.0) [K] h ps://bi .ly/3CLZgHS Consul ado en ene o 2023 (Cecbu , CC BY-SA 4.0) [L] h p://bi .ly/3iHKCL5 Consul ado en ene o 2023 [M] h p://bi .ly/3Wi7FK1 Consul ado en diciemb e 2022 [N] h p://bi .ly/3DcS h Consul ado en diciemb e 2022 [O] h p://bi .ly/3E5QTHQ Consul ado en ene o 2023 [P] h p://bi .ly/3w39ShR Consul ado en ene o 2023 54 [Q] h p://bi .ly/3GCN0uy Consul ado en diciemb e 2022 [R] h ps://bi .ly/3iIUm80 Consul ado en diciemb e 2022 [S] h ps://bi .ly/3iIONq3 Consul ado en diciemb e 2022 [T] h p://bi .ly/3W7AHw0 Consul ado en no iemb e 2022 [U] h p://bi .ly/3ZEq1Yz Consul ado en no iemb e 2022 [V] h p://bi .ly/3w5VEwF Consul ado en no iemb e 2022 [X] Figu as de c eación p opia. 55 ANEXOS Código de MATLAB 3.2.1. Clasi icación de imágenes. clea all clc cl %Ca ga base de da os digi Da ase Pa h = ull ile(ma lab oo ," oolbox","nne ","nndemos",... "nnda ase s","Digi Da ase "); imds = imageDa as o e(digi Da ase Pa h,... "IncludeSub olde s", ue,"LabelSou ce"," olde names"); %Mos a ejemplos de la base de da os igu e; pe m = andpe m (10000,20); o i = 1:20 subplo (4,5,i) imshow(imds.Files{pe m(i)}); end %Calcula el núme o de imágenes que iene cada ca ego ía labelCoun = coun EachLabel(imds) %De ini el amaño de cada imagen img = eadimage(imds,1); size(img) %Especi ica conjun os de en enamien o y alidación numT ainFiles = 750; [imdsT ain, imdsValida ion] = spli EachLabel(imds,numT ainFiles," andomized"); %De ini la a qui ec u a de la ed neu onal con olucional laye = [ imageInpu Laye ([28 28 1])% amaño de la imagen con olu ion2dLaye (3,8,"Padding","same") ba chNo maliza ionLaye eluLaye maxPooling2dLaye (2,"S ide",2) con olu ion2dLaye (3,16,"Padding","same") ba chNo maliza ionLaye eluLaye 56 maxPooling2dLaye (2,"S ide",2) con olu ion2dLaye (3,32,"Padding","same") ba chNo maliza ionLaye eluLaye ullyConnec edLaye (10) so maxLaye classi ica ionLaye ] %Especi ica el en enamien o de la ed op ion = ainingOp ions("sgdm",... "Ini ialLea nRa e",0.01,... "MaxEpochs",4,... "Shu le","e e y-epoch",... "Valida ionDa a",imdsValida ion,... "Valida ionF equency",30,... "Ve bose", alse,... "Plo s"," aining-p og ess"); %En ena a la ed ne = ainNe wo k(imdsT ain,laye ,op ion) %% Saca igu as del conjun o de alidación igu e; I=imds.Files{4}; F=imds.Files{3513}; G=imds.Files{7324}; subplo (1,3,1); imshow(I); subplo (1,3,2); imshow(F); subplo (1,3,3) imshow(G); %% In oduci imágenes pa a que la ed neu onal las clasi ique % Ca ga base de da os digi Da ase Pa h = ull ile(ma lab oo ," oolbox","nne ","nndemos",... "nnda ase s","Digi Da ase "); imds = imageDa as o e(digi Da ase Pa h,... "IncludeSub olde s", ue,"LabelSou ce"," olde names"); % Especi ica conjun os de en enamien o y alidación numT ainFiles = 750; [imdsT ain, imdsValida ion] = spli EachLabel(imds,numT ainFiles," andomized"); % Ca ga la ed neu onal p e iamen e en enada load("T ainedNe wo k.ma ", "ne "); 57 % Ca ga la imagen Tes Image = im ead("imagen.png"); % Hace que la imagen enga amaño [28 28 1] g ayTes Image = gb2g ay(Tes Image); inalTes Image = im esize(g ayTes Image, [28 28]); imshow( inalTes Image) % Clasi ica la imagen de p ueba p edic edClass = classi y(ne , inalTes Image); % Mos a la clase p edicha p in ("La clase a la que pe enece la imagen in oducida es: %s n", p edic edClass); Código de MATLAB 3.2.2. Iden i icación de obje os. clea all clc cl %%Desca ga la ed p een enada de segmen ación de imágenes p e ainedURL = 'h ps://ssd.ma hwo ks.com/suppo iles/ ision/da a/deeplab 3plusResne 18CamVid.zip'; p e ainedFolde = ull ile( empdi ,'p e ainedNe wo k'); p e ainedNe wo kZip = ull ile(p e ainedFolde ,'deeplab 3plusResne 18CamVid.zip'); i ~exis (p e ainedNe wo kZip,' ile') mkdi (p e ainedFolde ); disp('Downloading p e ained ne wo k (58 MB)...'); websa e(p e ainedNe wo kZip,p e ainedURL); end %Ca ga la ed p een enada pa a su u u o uso unzip(p e ainedNe wo kZip, p e ainedFolde ) p e ainedNe wo k = ull ile(p e ainedFolde ,'deeplab 3plusResne 18CamVid.ma '); da a = load(p e ainedNe wo k); ne = da a.ne ; % Desca ga el Da ase de imágenes imageURL = 'h p://web4.cs.ucl.ac.uk/s a /g.b os ow/Mo ionSegRecDa a/ iles/701_S illsRaw_ ull.zip'; labelURL = 'h p://web4.cs.ucl.ac.uk/s a /g.b os ow/Mo ionSegRecDa a/da a/LabeledApp o ed_ ull.zip'; ou pu Folde = ull ile( empdi ,'CamVid'); labelsZip = ull ile(ou pu Folde ,'labels.zip'); imagesZip = ull ile(ou pu Folde ,'images.zip'); i ~exis (labelsZip, ' ile') || ~exis (imagesZip,' ile') mkdi (ou pu Folde )