{"id":29581,"date":"2024-09-01T01:03:00","date_gmt":"2024-09-01T04:03:00","guid":{"rendered":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/?p=29581"},"modified":"2024-09-13T13:17:56","modified_gmt":"2024-09-13T16:17:56","slug":"redes-neuronales-artificiales","status":"publish","type":"post","link":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/redes-neuronales-artificiales\/","title":{"rendered":"Redes neuronales artificiales"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"29581\" class=\"elementor elementor-29581\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-d595c8b elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"d595c8b\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0389fba\" data-id=\"0389fba\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-adfb07a elementor-widget elementor-widget-text-editor\" data-id=\"adfb07a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>El autor explica el modo en que se desarrollan sistemas que permiten procesar y gestionar una gran cantidad de datos, as\u00ed como sus complejidades y riesgos.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-7e1877b elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7e1877b\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-676aff9\" data-id=\"676aff9\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-78cc892 elementor-widget elementor-widget-text-editor\" data-id=\"78cc892\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p style=\"text-align: right;\"><a href=\"#autorxs\"><em>| Por Ramiro Germ\u00e1n Rodr\u00edguez Colmeiro |<\/em><\/a><\/p><p>Las redes neuronales artificiales (RNA) son un tema omnipresente en la inteligencia artificial. Si bien se inspira en el funcionamiento del cerebro humano, a\u00fan hay una gran distancia entre ambos.<\/p><p>En este art\u00edculo se explora su funcionamiento y la evoluci\u00f3n de la t\u00e9cnica, desde las simples neuronas artificiales hasta los modelos profundos utilizados en la actualidad. Se abordar\u00e1 con especial \u00e9nfasis los modelos profundos y generativos, como los modelos de lenguaje, y se comentar\u00e1 sobre su naturaleza, limitaciones y riesgos.<\/p><h5>Redes neuronales artificiales<\/h5><p>El concepto detr\u00e1s de las RNA fue desarrollado en el siglo pasado, en la d\u00e9cada de 1950, inspirado (libremente) en el funcionamiento del cerebro.<\/p><p>En general, lo que se pretende con estas RNA es que dado una serie de entradas Xn se obtenga una salida Y. Por ejemplo, si el conjunto de entradas X representa los p\u00edxeles de una imagen, Y podr\u00eda ser una variable de decisi\u00f3n que indique si la imagen contiene panda. Tal como se har\u00eda con un humano, las RNA son entrenadas para responder de la manera deseada, en nuestro ejemplo, ser\u00eda mostrarle un conjunto de im\u00e1genes, algunas que contengan el objetivo (un panda) y otras que no e ir indicando a la RNA cuando su salida debe ser positiva. Este aprendizaje se grabar\u00e1 en las activaciones de la RNA generando una representaci\u00f3n interna de que es un panda. Ahora bien, la t\u00e9cnica dista de este concepto.<\/p><p>Las neuronas artificiales de las RNA convencionales se denominan perceptrones y simulan el comportamiento de una neurona biol\u00f3gica.<\/p><p style=\"text-align: center;\"><strong>Figura 1.<\/strong> Neurona artificial o perceptr\u00f3n<br \/><a href=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF1.jpg\"><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone wp-image-29584\" src=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF1-300x139.jpg\" alt=\"\" width=\"550\" height=\"254\" srcset=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF1-300x139.jpg 300w, https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF1-768x355.jpg 768w, https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF1.jpg 1080w\" sizes=\"(max-width: 550px) 100vw, 550px\" \/><\/a><\/p><p>Como se observa en la figura 1, los perceptrones son sencillos, cuentan con una serie de entradas (X<sub>1<\/sub> a X<sub>n<\/sub>) las cuales act\u00faan como dendritas artificiales y a su vez asignan un peso dado a cada entrada (pesos W<sub>1<\/sub> a W<sub>n<\/sub>). Las neuronas tambi\u00e9n cuentan con una entrada de valor fijo (b) que sirve como un ajuste general. Todas estas entradas son sumadas y procesadas por una funci\u00f3n de salida (g) que en general es alineal e intenta representar las activaciones de las neuronas biol\u00f3gicas. Matem\u00e1ticamente se expresa como:<\/p><p><img decoding=\"async\" class=\"aligncenter wp-image-29585 size-full\" src=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroFormula1.jpg\" alt=\"\" width=\"258\" height=\"55\" \/><\/p><p>Estas neuronas artificiales son capaces de adaptarse modulando la importancia que les asignan a sus entradas, cambiando el valor de los pesos W<sub>1<\/sub> a W<sub>n<\/sub>.<\/p><p>Como una neurona biol\u00f3gica, el perceptr\u00f3n es limitado y su utilidad se revela al interconectar varias neuronas, buscando lograr una suerte de sinapsis artificial. A lo largo del siglo XX los esfuerzos se centraron en c\u00f3mo organizar grupos de neuronas artificiales y c\u00f3mo lograr que la RNA aprenda a resolver problemas. Este modelado b\u00e1sico fue desarrollado en el a\u00f1o 1965 y conceptualmente ha cambiado poco. La forma m\u00e1s simple de interconectar perceptrones es \u201chacia adelante\u201d: la salida de un perceptr\u00f3n se conecta a la entrada de otro. Esta estructura crea una red neuronal artificial de tipo <em>feedforward<\/em>.<\/p><p style=\"text-align: center;\"><strong>Figura 2.<\/strong> Red neuronal artificial compuesta de m\u00faltiples capas de perceptrones<br \/><a href=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF2.jpg\"><img decoding=\"async\" class=\"alignnone wp-image-29586\" src=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF2-300x186.jpg\" alt=\"\" width=\"550\" height=\"341\" srcset=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF2-300x186.jpg 300w, https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF2-768x476.jpg 768w, https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF2.jpg 1080w\" sizes=\"(max-width: 550px) 100vw, 550px\" \/><\/a><\/p><p>Esta estructura es m\u00e1s compleja, ya no solo hay N par\u00e1metros sino que ahora tenemos N par\u00e1metros por cada neurona, siendo la expresi\u00f3n matem\u00e1tica resultante:<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-29587 size-full\" src=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroFormula2.jpg\" alt=\"\" width=\"450\" height=\"86\" srcset=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroFormula2.jpg 450w, https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroFormula2-300x57.jpg 300w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/p><p>Vemos que la construcci\u00f3n de la salida sigue siendo modular, pero la cantidad de pesos W es mucho m\u00e1s grande.<\/p><p>Si bien la forma de c\u00f3mo se conectan las neuronas es importante, esta es fija y la forma en que las RNA \u201caprenden\u201d es por medio de la modificaci\u00f3n de sus pesos W. Entonces podemos simplificar la notaci\u00f3n la red por una simple funci\u00f3n Y = f(X, W), que nos dice que la RNA es una funci\u00f3n que produce una salida Y dada una entrada X y un conjunto de pesos W. La complejidad est\u00e1 en encontrar los pesos que resulten en el comportamiento deseado.<\/p><p>Al inicio del entrenamiento, los pesos se crean de manera aleatoria y por lo tanto el comportamiento inicial de la red es err\u00e1tico. Con ayuda de una m\u00e9trica o funci\u00f3n objetivo, el proceso de entrenamiento modifica los pesos para ajustarse al comportamiento deseado. La forma de estas funciones objetivo va a depender de la tarea a realizar.<\/p><p>Implementar este entrenamiento, como manejar matem\u00e1ticamente los miles o millones de pesos W, es un problema complejo, tanto que reci\u00e9n en 1986 se descubre un algoritmo capaz de entrenar redes neuronales de m\u00e1s de tres capas, denominado <em>backpropagation<\/em> (Rumelhart et al, 1986).<\/p><p>Este m\u00e9todo num\u00e9rico utiliza el error de entrenamiento para ir imputando responsabilidad a los distintos pesos W y modific\u00e1ndolos para reducir error. Matem\u00e1ticamente, el algoritmo permite conocer el gradiente de la funci\u00f3n de la red neuronal sobre cada peso W, dado una par de entradas X y salidas Y, luego de aplicar una funci\u00f3n objetivo L(Y,X,W).<\/p><p>Entonces, volviendo a nuestro ejemplo, para entrenar la red solo necesitaremos im\u00e1genes de pandas (set de X) con su correspondiente anotaci\u00f3n de si la imagen es o no un panda (set de Y asociado) y luego aplicar el algoritmo de <em>backpropagation<\/em> sobre cada imagen de nuestro conjunto, actualizando los pesos W hasta que el error sea bajo.<\/p><p>Hasta ahora comentamos el funcionamiento de una red b\u00e1sica, la pregunta que nos hacemos es: \u00bfpor qu\u00e9 no escuchamos de la aplicaci\u00f3n de estas t\u00e9cnicas hasta hace solo unos a\u00f1os?<\/p><p>La respuesta es la capacidad de c\u00f3mputo y datos existentes en ese momento. Con las restricciones tecnol\u00f3gicas de esa \u00e9poca, no era posible entrenar modelos con muchos par\u00e1metros ya que el costo computacional era prohibitivo y los datos disponibles eran muy pocos. Esto llev\u00f3 a que la t\u00e9cnica cayera en desuso durante la d\u00e9cada de 1990 y 2000, en favor de m\u00e9todos m\u00e1s efectivos dadas las limitaciones.<\/p><p>Para profundizar en este tema se refiere al lector al cap\u00edtulo 6 de Duda, R.O., &amp; Hart, P.E. (2006). <em>Pattern classification<\/em>. John Wiley &amp; Sons.<\/p><h5>El aprendizaje profundo o deep learning<\/h5><p>En el a\u00f1o 2012, un grupo de investigadores logra una mejora sustancial en un problema de reconocimiento de caracteres utilizando RNA (Krizhevsky et al, 2012). All\u00ed se demostr\u00f3 que con el avance tecnol\u00f3gico las redes neuronales ya pod\u00edan ser entrenadas en mucha mayor profundidad, de manera estable y con m\u00e1s conexiones. Poco cambi\u00f3 en la t\u00e9cnica de entrenamiento, el cambio se dio en la evoluci\u00f3n de la capacidad de procesamiento. Este hito dio inicio al actual auge de las redes neuronales artificiales, espec\u00edficamente marc\u00f3 el inicio del aprendizaje profundo.<\/p><p>La primera ola del aprendizaje profundo se dio por las llamadas redes convolucionales y su aplicaci\u00f3n sobre tareas de visi\u00f3n. Estas redes, conocidas desde 1988 e inspiradas en la corteza visual del cerebro, proponen una construcci\u00f3n jer\u00e1rquica de las distintas capas de la RNA, logrando que la informaci\u00f3n espacial sea procesada con mayor efectividad. En ellas la entrada se descompone en mapas m\u00e1s peque\u00f1os que responden a caracter\u00edsticas aprendidas (colores, formas, texturas), que representan la entrada con menos elementos. Luego de pasar por varias capas de estos filtros, la entrada tiene una dimensi\u00f3n mucho menor y es posible procesarla por una red tipo <em>feedforward<\/em>.<\/p><p>Esta t\u00e9cnica hab\u00eda sido imposible de implementar debido al costo computacional que conllevaba el entrenamiento, pero para la d\u00e9cada de 2010 los procesadores gr\u00e1ficos o GPUs ya estaban altamente desarrollados y permit\u00edan acelerar dr\u00e1sticamente los algoritmos utilizados en el entrenamiento.<\/p><p>Las aplicaciones de esta t\u00e9cnica dieron nacimiento a muchas aplicaciones pr\u00e1cticas como por ejemplo:<br \/>&#8211; Reconocimiento de caracteres (Tesseract).<br \/>&#8211; Segmentaci\u00f3n de im\u00e1genes y videos (MaskRCNN).<br \/>&#8211; Asistencia en diagn\u00f3stico por im\u00e1genes (implementaciones mayormente cerradas).<\/p><p>El siguiente paso en las RNA se dio con la creaci\u00f3n del \u201ctransformador\u201d, mejor conocido por su nombre en ingl\u00e9s <em>transformer<\/em> (Vaswani et al, 2017). A diferencia de las redes convolucionales, estas trabajan con datos secuenciales como frases, c\u00f3digo o m\u00fasica. Los <em>transformers<\/em> se especializan en comprender secuencias y generar secuencias. Las secuencias de salida se crean otorg\u00e1ndole un valor de importancia (o atenci\u00f3n) a cada uno de los elementos que componen la secuencia de entrada. Para ello los <em>transformers<\/em> utilizan un peso que conecta y compara cada uno de los elementos de la secuencia de entrada con todos los otros. Por ejemplo, si la secuencia es una frase como \u201cLa camioneta es roja, \u00bfde qu\u00e9 color es el veh\u00edculo?\u201d, el <em>transformer<\/em>, entrenado para comprender sintaxis en espa\u00f1ol, asignar\u00e1 a cada palabra una relaci\u00f3n con otra, en este ejemplo la combinaci\u00f3n de \u201croja-color\u201d tendr\u00e1 asignada una mayor importancia que la relaci\u00f3n \u201ccamioneta-qu\u00e9\u201d. El <em>transformer<\/em> eval\u00faa todas las entradas a la red contra las otras entradas, les asigna un valor y propaga el resultado hacia la siguiente capa.<\/p><p>En un modelo basado en <em>transformers<\/em>, toda esta operaci\u00f3n compone un solo bloque de procesamiento, as\u00ed como en una red convolucional se compon\u00edan los distintos filtros. Es f\u00e1cil de imaginar que la cantidad de pesos que hay que ajustar para este tipo de redes aumenta r\u00e1pidamente con la cantidad de elementos de la secuencia de entrada, por este motivo los modelos m\u00e1s conocidos de este tipo de red, como el ChatGPT, poseen decenas o cientos de miles de millones de par\u00e1metros.<\/p><p>El uso de estas <em>transformers<\/em> comprenden la \u00faltima generaci\u00f3n de aplicaciones, entre ellas est\u00e1n:<br \/>&#8211; Modelos de lenguaje \/ \u201cchatbots\u201d, como ChatGPT, Gemini o Perplexity &#8211; Generaci\u00f3n de partituras, como Musenet.<br \/>&#8211; An\u00e1lisis de texto, con modelos basados en BERT (Devlin et al, 2018) &#8211; An\u00e1lisis de secuencias de ADN (modelos cerrados).<\/p><p>Para profundizar en los t\u00f3picos de aprendizaje profundo, se recomienda el libro de LeCun, Y., Bengio, Y., &amp; Hinton, G. (2015). <em>Deep learning. nature<\/em>, 521(7553), 436-444.<\/p><h5>Redes generativas<\/h5><p>Hasta ahora hablamos de las RNA desde el punto de vista de su construcci\u00f3n o topolog\u00eda, pero otro aspecto importante a analizar es el tipo de objetivo o uso que se les intenta dar. Originalmente las RNA fueron aplicadas para tareas de reconocimiento o para aproximar se\u00f1ales u otras funciones matem\u00e1ticas. Todas estas tareas ten\u00edan un objetivo concreto o una \u201cverdad absoluta\u201d para poder entrenarlas. Sin embargo, en los \u00faltimos a\u00f1os se han desarrollado redes cuya salida pretende generar contenido novedoso, es decir que no formaba parte del conjunto de datos de entrenamiento ni tampoco es el resultado de una interpolaci\u00f3n entre los ejemplos vistos por la red. A este nuevo conjunto de redes se las llama redes generativas y son las responsables de lo que se denomina el contenido \u201csint\u00e9tico\u201d de la internet actual.<\/p><p>Estas RNA son entrenadas para copiar la distribuci\u00f3n estad\u00edstica de su conjunto de entrenamiento. Es decir, la entrada ya no es importante, lo importante es solo que la salida sea imposible de diferenciar de un conjunto de datos dado. Para ejemplificar, si disponemos de muchas im\u00e1genes de pandas, el objetivo de la red ahora ser\u00eda que dada una entrada aleatoria, la salida sea una imagen de un panda. En estos casos lo que la RNA intenta capturar en sus pesos es una representaci\u00f3n condensada del espacio muestral (im\u00e1genes de pandas) y al ser excitada por una entrada aleatoria, proyectar esa entrada hacia el espacio muestral (convertir una serie de n\u00fameros aleatorios en una imagen de un panda). En general, para poder entrenar este tipo de redes se necesitan grandes cantidades de datos que representen fielmente la variabilidad de la distribuci\u00f3n objetivo. En nuestro ejemplo, as\u00ed como nosotros podemos imaginar muchas especies de pandas y las distintas posiciones que pueden tomar en una fotograf\u00eda, esa misma variabilidad debe estar representada en el conjunto de datos, por lo que deben ser muy extensos.<\/p><p>Los m\u00e9todos de entrenamiento de estas redes son particularmente interesantes. Como el objetivo en este caso es tratar de conseguir una salida que pertenezca a una distribuci\u00f3n dada, se puede pensar en utilizar funciones matem\u00e1ticas que eval\u00faen si una muestra pertenece a la distribuci\u00f3n objetivo; sin embargo, la distribuci\u00f3n objetivo tambi\u00e9n es desconocida y solo conocemos de ella lo que nuestro conjunto de datos describe. Para poder superar esta dificultad, un trabajo de 2017 propuso una t\u00e9cnica que dio origen a las primeras aplicaciones generativas, la generaci\u00f3n de rostros humanos superrealistas. Este trabajo propuso que en lugar de una funci\u00f3n matem\u00e1tica como objetivo, se utilice una segunda red neuronal que tome el rol de \u201ccr\u00edtico\u201d de la primera red. Esta combinaci\u00f3n de \u201cgenerador\u201d y \u201ccr\u00edtico\u201d se entrena de manera conjunta y de manera adversaria, de ah\u00ed el nombre de la t\u00e9cnica: \u201credes generativas adversarias\u201d (Goodfellow et al, 2017). Es interesante destacar que aqu\u00ed el entrenamiento es autoguiado, tal como un humano puede aprender a dibujar y corregirse mirando la imagen que quiere reproducir hasta estar satisfecho con su calidad, la red generadora aprende a generar un ejemplo y la red \u201ccr\u00edtico\u201d aprende a detectar los errores y sirve de gu\u00eda para refinar la generaci\u00f3n.<\/p><p>Entonces, estas redes generativas, en general, no necesitan de m\u00e9tricas particulares, ni de conjuntos de datos anotados, solamente capacidad de procesamiento computacional y grandes cantidades de datos, ambas cosas que existen en abundancia en la actualidad. La implementaci\u00f3n de esta tecnolog\u00eda result\u00f3 en muchas aplicaciones que se hicieron conocidas por su sorprendente calidad, entre las m\u00e1s conocidas podemos mencionar:<br \/>&#8211; Generadores de rostros humanos: creados como pruebas de concepto, por ejemplo \u201c<em>This person does not exists<\/em>\u201d.<br \/>&#8211; Creaci\u00f3n de videos realistas con contenido imposible, como por ejemplo Carrie Fisher actuando en <em>Star Wars<\/em> episodio 9.<\/p><h5>Modelos de lenguaje<\/h5><p>Una importante excepci\u00f3n a la forma de entrenar los modelos generativos que mencionamos anteriormente son los modelos de lenguaje. Si bien estos son modelos generativos, los mismos no son entrenados de manera adversaria.<\/p><p>Los modelos de lenguaje cuentan con un entrenamiento por partes.<\/p><p>Primero se entrenan sin requerir supervisi\u00f3n y utilizando grandes cantidades de texto. Este entrenamiento es el m\u00e1s grande por el que pasan. Lo que se entrena aqu\u00ed es la capacidad del modelo de predecir la siguiente palabra de un texto, es decir, a aprender de memoria. Por ejemplo, se le presenta una oraci\u00f3n arbitraria, como \u201cEl cielo es azul\u201d y se entrena al modelo para que refuerce las probabilidades de dicha sucesi\u00f3n de palabras, as\u00ed el modelo incorpora informaci\u00f3n gramatical (el adjetivo va despu\u00e9s del verbo) y conceptual (la palabra \u201ccielo\u201d est\u00e1 relacionada con el color azul). Los modelos entrenados solo hasta este punto son los llamados modelos fundacionales.<\/p><p>Segundo, los modelos son entrenados para respetar estructuras como preguntas-respuestas. Este es un entrenamiento convencional, con datos anotados y curados por humanos, donde se espera que la red neuronal pase de ser un simple completador de datos a ser un modelo m\u00e1s \u00fatil, el cual pueda ser accionado. Por ejemplo, el modelo recibe la pregunta \u201c\u00bfDe qu\u00e9 color es el cielo?\u201d y la respuesta esperada ser\u00e1 \u201cAzul\u201d. Tercero, y \u00faltimo, el modelo es entrenado por un mecanismo de refuerzo, donde se ajusta su \u201cactitud\u201d para que su generaci\u00f3n se ajuste a las preferencias humanas. Esta etapa requiere muchos datos, curados y anotados o integraci\u00f3n directa de humanos que provean apreciaciones. Aqu\u00ed el modelo recibe una instrucci\u00f3n y genera una serie de respuestas, luego las ordena por c\u00f3mo cree que un humano lo har\u00eda (de m\u00e1s a menos deseable) y se compara con una anotaci\u00f3n humana. El mecanismo de aprendizaje por refuerzo va sesgando las respuestas del modelo para que reflejen dichas preferencias. Este tipo de entrenamiento se ve ocasionalmente cuando utilizamos algunos servicios de asistentes virtuales, en el cual el asistente nos provee con m\u00e1s de una respuesta y nosotros debemos elegir la m\u00e1s adecuada o cuando el asistente nos solicita darle una calificaci\u00f3n a la respuesta del modelo, estos datos son devueltos al algoritmo de aprendizaje por refuerzo que premia al modelo si la devoluci\u00f3n es positiva (reforzando su comportamiento). Al final del entrenamiento el modelo de lenguaje adopta un sesgo que es aceptable para los usuarios y finaliza el entrenamiento.<\/p><p>Como vemos, si bien los modelos de lenguaje son modelos generativos, su entrenamiento es mucho m\u00e1s delicado que otras aplicaciones. Su dificultad se centra en los \u00faltimos dos pasos, los cuales moldean el crudo comportamiento que emerge de un entrenamiento no guiado y es aqu\u00ed donde los puntos m\u00e1s controvertidos del entrenamiento se debaten, como cu\u00e1l es el grado de censura o correcci\u00f3n de sesgos existentes en los datos (discriminaci\u00f3n, toxicidad) que es necesario implementar.<\/p><h5>Limitaciones de estos modelos<\/h5><p>Finalmente es importante destacar cu\u00e1les son las limitaciones de las RNA, ya que esto nos ayuda a comprender mejor en d\u00f3nde pueden resultarnos de ayuda y en d\u00f3nde debemos limitarlas.<\/p><p>Las RNA son entrenadas utilizando grandes conjuntos de datos, y la calidad de dichos conjuntos es fundamental para su correcto funcionamiento ya que la misma va a incorporar cualquier caracter\u00edstica que se represente en \u00e9l.<\/p><p>Los efectos de los conjuntos de datos de mala calidad pueden ir desde que la red simplemente no pueda ser entrenada o hasta incluir sesgos inesperados. Los casos m\u00e1s famosos de esto \u00faltimo son quiz\u00e1s los modelos de lenguaje fundacionales, que en su mayor\u00eda fueron entrenados con datos obtenidos de internet, sin ning\u00fan tipo de filtrado inicial. Estos modelos aprendieron, adem\u00e1s de la estructura del lenguaje, todos los sesgos existentes en la cultura humana y al momento de ponerlos en uso, muchos de estos sesgos pueden ser observados. La correcci\u00f3n de estos sesgos de manera efectiva es un problema abierto. Si bien es posible minimizar el impacto de este problema usando datos curados, sin embargo, el sesgo es inherente a los curadores.<\/p><p>Otro importante problema de las RNA es que los procesos por los cuales llegan a una conclusi\u00f3n no son observables. Esto quiere decir que cuando una RNA clasifica una imagen como \u201cretrato de un panda\u201d no podemos saber qu\u00e9 fue lo que realmente origin\u00f3 esta salida. Si intentamos analizar el proceso interno para llegar a una respuesta no vamos a observar caracter\u00edsticas \u201cexplicables\u201d; volviendo al ejemplo, un humano puede decirnos que una imagen representa un panda porque contiene animal, con determinada forma, ojos, posici\u00f3n, etc. Una RNA no nos dar\u00eda esa explicaci\u00f3n, ya que puede estar basando su respuesta en relaciones espurias de la imagen. Esta falta de explicabilidad hace que los modelos sean susceptibles de ser enga\u00f1ados de una manera que resulta imperceptible (o il\u00f3gica) para un humano; a estos ataques se los denomina \u201cataques adversarios\u201d. Un ejemplo de este tipo de ataques es la existencia de im\u00e1genes que son claramente reconocibles por un humano o RNA, que al modificar levemente los p\u00edxeles hacen que la red neuronal se confunda, cuando para un humano la misma no ha cambiado:<\/p><p style=\"text-align: center;\"><strong>Figura 3.<\/strong><br \/><a href=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF3.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-29588 size-full\" src=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF3.jpg\" alt=\"\" width=\"450\" height=\"111\" srcset=\"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF3.jpg 450w, https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-content\/uploads\/9303ColmeiroF3-300x74.jpg 300w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/a><br \/>A la izquierda una imagen de un panda clasificada correctamente por una RNA, <br \/>a la cual se le suma un nivel de ruido (imagen central) y luego la RNA <br \/>reconoce la imagen resultante (a la derecha) como un primate.<br \/>Imagen de Goodfellow, I.J., Shlens, J., &amp; Szegedy, C. (2014). <em>Explaining and harnessing adversarial examples.<br \/><\/em>arXiv preprint arXiv:1412.6572.<\/p><p>Estos problemas hacen que las RNA no sean una soluci\u00f3n que se deba adoptar de manera ciega, especialmente cuando las aplicaciones se encuentran dentro de una cadena de decisi\u00f3n. Antes de incluir RNA en procesos cr\u00edticos, es de suma importancia asegurar que las mismas han sido auditadas de manera correcta y que su espacio de inferencia sea restringido a zonas conocidas.<\/p><h5>Aplicaciones actuales y riesgos<\/h5><p>Actualmente nos encontramos en pleno auge de las aplicaciones con RNA, espec\u00edficamente en el auge de los modelos del tipo generativo. Las grandes cantidades de datos disponibles en la actualidad y el gran poder de c\u00f3mputo que est\u00e1 a disposici\u00f3n de la mayor\u00eda de las personas plantean un escenario f\u00e9rtil para el crecimiento.<\/p><p>En los \u00faltimos a\u00f1os (o meses), la cantidad de aplicaciones que se han desarrollado para ayudarnos es imponente, hoy en d\u00eda contamos con asistentes que nos ayudan a tomar notas y hacer res\u00famenes de reuniones virtuales, a traducir en el acto una conversaci\u00f3n, a crear im\u00e1genes de alta calidad, nos sugieren funciones al programar y frases al escribir, etc. Este tipo de aplicaciones que buscan optimizar al humano, manteni\u00e9ndolo en el centro de la toma de decisiones, aumentan nuestra productividad de manera impresionante. Sin embargo este mismo contexto ha llevado a que se proponga la utilizaci\u00f3n de estos modelos en lugares que pueden resultar de alta sensibilidad, como la gobernanza automatizada, perfilado de personas (tanto para aplicaciones laborales como financieras), aplicaciones militares, escritura autom\u00e1tica de art\u00edculos, etc., quitando en algunos casos al humano del proceso de toma de decisiones.<\/p><p>Las RNA tienen un gran potencial para ayudarnos en el d\u00eda a d\u00eda, pero nunca debe perderse de vista de d\u00f3nde provienen y los riesgos que las mismas traen asociados cuando no se las tienen en cuenta.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-2c55ca8 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"2c55ca8\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7d6a42f\" data-id=\"7d6a42f\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-24ebd92 elementor-widget elementor-widget-html\" data-id=\"24ebd92\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- AddToAny BEGIN -->\n<div class=\"a2a_kit a2a_kit_size_32 a2a_default_style\">\n<a class=\"a2a_dd\" href=\"https:\/\/www.addtoany.com\/share\"><\/a>\n<a class=\"a2a_button_x\"><\/a>\n<a class=\"a2a_button_facebook\"><\/a>\n<a class=\"a2a_button_whatsapp\"><\/a>\n<a class=\"a2a_button_telegram\"><\/a>\n<a class=\"a2a_button_google_gmail\"><\/a>\n<a class=\"a2a_button_printfriendly\"><\/a><\/div>\n<script async src=\"https:\/\/static.addtoany.com\/menu\/page.js\"><\/script>\n<!-- AddToAny END -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-02eb97b elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"02eb97b\" data-element_type=\"section\" data-e-type=\"section\" id=\"autorxs\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4252137\" data-id=\"4252137\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-33cf474 elementor-widget elementor-widget-text-editor\" data-id=\"33cf474\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h6>Autorxs<\/h6><p><strong><br \/>Ramiro Germ\u00e1n Rodr\u00edguez Colmeiro:<\/strong><br \/>Licenciado y doctor en Ingenier\u00eda, especializado en an\u00e1lisis de se\u00f1ales e im\u00e1genes (Universidad Tecnol\u00f3gica Nacional) y en optimizaci\u00f3n de sistemas complejos (Universit\u00e9 de Troyes, Francia). Docente investigador de la Facultad Regional Buenos Aires de la UTN.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>| Por Ramiro Germ\u00e1n Rodr\u00edguez Colmeiro | El autor explica el modo en que se desarrollan sistemas que permiten procesar y gestionar una gran cantidad de datos, as\u00ed como sus complejidades y riesgos.<\/p>\n","protected":false},"author":5,"featured_media":30284,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3506],"tags":[3520,2019,3507,107,3521,3518,3517,3515,3519],"class_list":["post-29581","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-n-93","tag-aprendizaje-profundo-deep-learning","tag-datos","tag-ia","tag-inteligencia-artificial","tag-modelos-de-lenguaje","tag-procesamiento-de-datos","tag-ramiro-german-rodriguez-colmeiro","tag-redes-neuronales","tag-redes-neuronales-artificiales"],"_links":{"self":[{"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/posts\/29581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/comments?post=29581"}],"version-history":[{"count":14,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/posts\/29581\/revisions"}],"predecessor-version":[{"id":30735,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/posts\/29581\/revisions\/30735"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/media\/30284"}],"wp:attachment":[{"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/media?parent=29581"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/categories?post=29581"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.economicas.uba.ar\/extension\/vocesenelfenix\/wp-json\/wp\/v2\/tags?post=29581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}