Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Robótica
Ir a la navegaciónIr a la búsqueda
Índice
1Historia de la robótica
2Clasificación de los robots
o 2.1Según su cronología
o 2.2Según su estructura
3Véase también
4Referencias
5Enlaces externos
Historia de la robótica[editar]
La robótica va unida a la construcción de "artefactos" que trataban de materializar el deseo
humano de crear seres a su semejanza y que al mismo tiempo lo descargasen de trabajos
tediosos. El ingeniero español Leonardo Torres Quevedo (que construyó el primer mando a
distancia para su automóvil mediante telegrafía, el ajedrecista automático, el
primer transbordador aéreo y otros muchos ingenios), acuñó el término "automática" en
relación con la teoría de la automatización de tareas tradicionalmente asociadas.
Karel Čapek, un escritor checo, acuñó en 1923 el término "robot" en su obra
dramática Rossum's Universal Robots / R.U.R., a partir de la palabra checa robota, que
significa servidumbre o trabajo forzado. El término robótica es acuñado por Isaac Asimov,
definiendo a la ciencia que estudia a los robots. Asimov creó también las tres leyes de la
robótica. En la ciencia ficción el hombre ha imaginado a los robots visitando nuevos mundos,
haciéndose con el poder o, simplemente, aliviando de las labores caseras.
Banda de robots,
Primeros autómatas humanoides creados, banda autómata de lavado
1206 Al-Jazari
de autómata programable. de manos, pavos
reales automáticos
c.
Diseño de un robot humanoide. Caballero mecánico Leonardo da Vinci
1495
Pato mecánico capaz de comer, agitar sus alas y Jacques de
1738 Digesting Duck
excretar. Vaucanson
Westinghouse
Se exhibe un robot humanoide en la Exposición
1930s Elektro Electric
Universal entre los años 1939 y 1940.
Corporation
KUKA Robot
1973 Primer robot con seis ejes electromecánicos. Famulus
Group
Brazo manipulador programable universal, un
1975 PUMA Victor Scheinman
producto de Unimation.
Según su cronología[editar]
La que a continuación se presenta es la clasificación más común:
1.ª Generación.
Robots manipuladores. Son sistemas mecánicos multifuncionales con un sencillo sistema de
control, bien manual, de secuencia fija o de secuencia variable.
2.ª Generación.
Robots de aprendizaje. Repiten una secuencia de movimientos que ha sido ejecutada
previamente por un operador humano. El modo de hacerlo es a través de un dispositivo
mecánico. El operador realiza los movimientos requeridos mientras el robot le sigue y los
memoriza.
3.ª Generación.
Robots con control sensorizado. El controlador es un ordenador que ejecuta las órdenes de un
programa y las envía al manipulador o robot para que realice los movimientos necesarios.
Según su estructura[editar]
La estructura es definida por el tipo de configuración general del robot, puede ser metamórfica.
El concepto de metamorfismo, de reciente aparición, se ha introducido para incrementar la
flexibilidad funcional de un robot a través del cambio de su configuración por el propio robot. El
metamorfismo admite diversos niveles, desde los más elementales (cambio de herramienta o
de efecto terminal), hasta los más complejos como el cambio o alteración de algunos de sus
elementos o subsistemas estructurales. Los dispositivos y mecanismos que pueden agruparse
bajo la denominación genérica del robot, tal como se ha indicado, son muy diversos y es por
tanto difícil establecer una clasificación coherente de los mismos que resista un análisis crítico
y riguroso. La subdivisión de los robots, con base en su arquitectura, se hace en los siguientes
grupos: poliarticulados, móviles, androides, zoomórficos e híbridos.
1. Poliarticulados8
En este grupo se encuentran los robots de muy diversa forma y configuración, cuya
característica común es la de ser básicamente sedentarios (aunque excepcionalmente pueden
ser guiados para efectuar desplazamientos limitados) y estar estructurados para mover sus
elementos terminales en un determinado espacio de trabajo según uno o más sistemas de
coordenadas, y con un número limitado de grados de libertad. En este grupo se encuentran
los robots manipuladores, los robots industriales y los robots cartesianos, que se emplean
cuando es preciso abarcar una zona de trabajo relativamente amplia o alargada, actuar sobre
objetos con un plano de simetría vertical o reducir el espacio ocupado en el suelo.
2. Móviles
Son Robots con gran capacidad de desplazamiento, basados en carros o plataformas y
dotados de un sistema locomotor de tipo rodante. Siguen su camino por telemando o
guiándose por la información recibida de su entorno a través de sus sensores. Estos robots
aseguran el transporte de piezas de un punto a otro de una cadena de fabricación. Guiados
mediante pistas materializadas a través de la radiación electromagnética de circuitos
empotrados en el suelo, o a través de bandas detectadas fotoeléctricamente, pueden incluso
llegar a sortear obstáculos y están dotados de un nivel relativamente elevado de inteligencia.
3. Androides
Robot androide
Son los tipos de robots que intentan reproducir total o parcialmente la forma y el
comportamiento cinemático del ser humano. Actualmente, los androides son todavía
dispositivos muy poco evolucionados y sin utilidad práctica, y destinados, fundamentalmente,
al estudio y experimentación. Uno de los aspectos más complejos de estos robots, y sobre el
que se centra la mayoría de los trabajos, es el de la locomoción bípeda. En este caso, el
principal problema es controlar dinámica y coordinadamente en el tiempo real el proceso y
mantener simultáneamente el equilibrio del Robot. Vulgarmente se los suele llamar
"marionetas" cuando se les ven los cables que permiten ver cómo realiza sus procesos.
4. Zoomórficos
Los robots zoomórficos, que considerados en sentido no restrictivo podrían incluir también a
los androides, constituyen una clase caracterizada principalmente por sus sistemas de
locomoción que imitan a los diversos seres vivos. A pesar de la disparidad morfológica de sus
posibles sistemas de locomoción es conveniente agrupar a los Robots zoomórficos en dos
categorías principales: caminadores y no caminadores. El grupo de los robots zoomórficos no
caminadores está muy poco evolucionado. Los experimentos efectuados en Japón basados
en segmentos cilíndricos biselados acoplados axialmente entre sí y dotados de un movimiento
relativo de rotación. Los Robots zoomórficos caminadores multípedos son muy numerosos y
están siendo objeto de experimentos en diversos laboratorios con vistas al desarrollo posterior
de verdaderos vehículos terrenos, pilotados o autónomos, capaces de evolucionar en
superficies muy accidentadas. Las aplicaciones de estos robots serán interesantes en el
campo de la exploración espacial y en el estudio de los volcanes.
5. Híbridos
Estos robots corresponden a aquellos de difícil clasificación, cuya estructura se sitúa en
combinación con alguna de las anteriores ya expuestas, bien sea por conjunción o por
yuxtaposición. Por ejemplo, un dispositivo segmentado articulado y con ruedas es, al mismo
tiempo, uno de los atributos de los robots móviles y de los robots zoomórficos.
Cerebro artificial
Ir a la navegaciónIr a la búsqueda
Cerebro artificial es un término utilizado habitualmente en los medios de comunicación1 para
describir la investigación que pretende desarrollar software y hardwarecon habilidades
cognitivas similares al cerebro humano o animal.
Índice
1Detalles
2Recursos
3Referencias
4Véase también
5Enlaces externos
Detalles[editar]
La investigación de «cerebros artificiales» desempeña tres papeles importantes para la
ciencia:
{{subst:Aviso mal
Copia y pega el siguiente código en la página de discusión del autor:
traducido|Red neuronal artificial}} ~~~~
Una red neuronal artificial es un grupo interconectado de nodos similar a la vasta red de neuronas en un
cerebro biológico. Cada nodo circular representa una neurona artificial y cada flecha representa una
conexión desde la salida de una neurona a la entrada de otra.
Las redes neuronales artificiales (también conocidas como sistemas conexionistas) son
un modelo computacional vagamente inspirado en el comportamiento observado en su
homólogo biológico1. Consiste en un conjunto de unidades, llamadas neuronas artificiales,
conectadas entre sí para transmitirse señales. La información de entrada atraviesa la red
neuronal (donde se somete a diversas operaciones) produciendo unos valores de salida.
Cada neurona está conectada con otras a través de unos enlaces. En estos enlaces el valor
de salida de la neurona anterior es multiplicado por un valor de peso. Estos pesos en los
enlaces pueden incrementar o inhibir el estado de activación de las neuronas adyacentes. Del
mismo modo, a la salida de la neurona, puede existir una función limitadora o umbral, que
modifica el valor resultado o impone un límite que se debe sobrepasar antes de propagarse a
otra neurona. Esta función se conoce como función de activación.
Estos sistemas aprenden y se forman a sí mismos, en lugar de ser programados de forma
explícita, y sobresalen en áreas donde la detección de soluciones o características es difícil de
expresar con la programación convencional. Para realizar este aprendizaje automático,
normalmente, se intenta minimizar una función de pérdida que evalúa la red en su total. Los
valores de los pesos de las neuronas se van actualizando buscando reducir el valor de la
función de pérdida. Este proceso se realiza mediante la propagación hacia atrás.
El objetivo de la red neuronal es resolver los problemas de la misma manera que el cerebro
humano, aunque las redes neuronales son más abstractas. Las redes neuronales actuales
suelen contener desde unos miles a unos pocos millones de unidades neuronales.
Nuevas investigaciones sobre el cerebro a menudo estimulan la creación de nuevos patrones
en las redes neuronales. Un nuevo enfoque está utilizando conexiones que se extienden
mucho más allá y capas de procesamiento de enlace en lugar de estar siempre localizado en
las neuronas adyacentes. Otra investigación está estudiando los diferentes tipos de señal en
el tiempo que los axones se propagan, como el aprendizaje profundo, interpola una mayor
complejidad que un conjunto de variables booleanas que son simplemente encendido o
apagado.
Las redes neuronales se han utilizado para resolver una amplia variedad de tareas, como la
visión por computador y el reconocimiento de voz, que son difíciles de resolver usando la
ordinaria programación basado en reglas. Históricamente, el uso de modelos de redes
neuronales marcó un cambio de dirección a finales de los años ochenta de alto nivel, que se
caracteriza por sistemas expertos con conocimiento incorporado en si-entonces las reglas, a
bajo nivel de aprendizaje automático, caracterizado por el conocimiento incorporado en los
parámetros de un modelo cognitivo con algún sistema dinámico.
Índice
1Historia
o 1.1Aprendizaje de Hebb
o 1.2Propagación hacia atrás y el resurgimiento
o 1.3Diseños basados en Hardware
2Mejoras desde 2006
3Modelos
o 3.1Función de red
o 3.2El aprendizaje
o 3.3La elección de una función de coste
o 3.4Paradigmas de aprendizaje
3.4.1El aprendizaje supervisado
3.4.2Aprendizaje no supervisado
3.4.3Aprendizaje por refuerzo
o 3.5Tipo de entrada
4Algoritmos de aprendizaje
o 4.1Algoritmo recursivo convergente de aprendizaje
o 4.2El empleo de redes neuronales artificiales
5Aplicaciones
o 5.1Aplicaciones de la vida real
o 5.2Las redes neuronales y la neurociencia
6Potencia del cálculo
7La crítica
o 7.1Cuestiones de capacitación
o 7.2Cuestiones teóricas
8Las clases y tipos de RNAs
9Ejemplos
o 9.1Quake II Neuralbot
o 9.2Clasificador No Sesgado de Proteínas
10Galería
11Herramientas de software
12Véase también
13Referencias
14Enlaces externos
Historia[editar]
Warren McCulloch y Walter Pitts 2 (1943) crearon un modelo informático para redes
neuronales, que se llama lógica umbral, que se base en las matemáticas y los algoritmos. Este
modelo señaló el camino para que la investigación de redes neuronales se divida en dos
enfoques distintos. Un enfoque se centró en los procesos biológicos en el cerebro y el otro se
centró en la aplicación de redes neuronales para la inteligencia artificial.
Aprendizaje de Hebb[editar]
A finales de la década de 1940 el psicólogo Donald Hebb34 creó una hipótesis de aprendizaje
basado en el mecanismo de plasticidad neuronal que ahora se conoce como aprendizaje de
Hebb. Aprendizaje de Hebb se considera que es un "típico" de aprendizaje no supervisado y
sus variantes posteriores fueron los primeros modelos de la potenciación a largo plazo. Los
investigadores empezaron a aplicar estas ideas a los modelos computacionales en 1948 con
la sugerencia de Turing, que el córtex humano infantil es lo que llamaba "máquina
desorganizada" (también conocido como "máqina Turing Tipo B").56
Farley y Wesley A. Clark7 (1954) al principio utilizaron máquinas computacionales, que
entonces se llamaban "calculadoras", para simular una red de Hebb en el MIT. Otras
simulaciones de redes neuronales por computadora han sido creadas por Rochester, Holanda,
Hábito y Duda (1956).8
Frank Rosenblatt9 10 (1958) creó el perceptrón, un algoritmo de reconocimiento de patrones
basado en una red de aprendizaje de computadora de dos capas, que utilizaba adición y
sustracción simples. Con la notación matemática, Rosenblatt también describe circuitería que
no está en el perceptrón básico, tal como el circuito de o-exclusiva, un circuito que no se pudo
procesar por redes neuronales antes de la creación del algoritmo de propagación hacia
atrás por Paul Werbos (1975).11
En 1959, un modelo biológico propuesto por dos laureados de los Premios Nobel, David H.
Hubel y Torsten Wiesel, estaba basado en su descubrimiento de dos tipos de células en
la corteza visual primaria: células simples y células complejas.12
El primer reporte sobre redes funcionales multicapas fue publicado en 1965 por Ivakhnenko y
Lapa, y se conoce como el método de agrupamiento para el manejo de datos.131415
La investigación de redes neuronales se estancó después de la publicación de la investigación
de aprendizaje automático por Marvin Minsky y Seymour Papert(1969)16, que descubrió dos
cuestiones fundamentales con las máquinas computacionales que procesan las redes
neuronales. La primera fue que los perceptrones básicos eran incapaces de procesar el
circuito de o-exclusivo. La segunda cuestión importante era que los ordenadores no tenían
suficiente poder de procesamiento para manejar eficazmente el gran tiempo de ejecución
requerido por las grandes redes neuronales.
Propagación hacia atrás y el resurgimiento [editar]
Un avance clave posterior fue el algoritmo de propagación hacia atrás que resuelve
eficazmente el problema de o-exclusivo, y en general el problema del entrenamiento rápido de
redes neuronales de múltiples capas (Werbos 1975). El proceso de propagación hacia atrás
utiliza la diferencia entre el resultado producido y el resultado deseado para cambiar los
"pesos" de las conexiones entre las neuronas artificiales.11
A mediados de la década de 1980, el procesamiento distribuido en paralelo se hizo popular
con el nombre conexionismo. El libro de David E. Rumelhart y James McClelland (1986)
proporcionan una exposición completa de la utilización de conexionismo en los ordenadores
para simular procesos neuronales.17
Las redes neuronales, tal como se utilizan en la inteligencia artificial, han sido consideradas
tradicionalmente como modelos simplificados de procesamiento neuronal en el cerebro, a
pesar de que la relación entre este modelo y la arquitectura biológica del cerebro se debate;
no está claro en qué medida las redes neuronales artificiales reflejan el funcionamiento
cerebral.
Máquinas de soporte vectorial y otros métodos mucho más simples, tales como los
clasificadores lineales, alcanzaron gradualmente popularidad en el aprendizaje automático. No
obstante, el uso de redes neuronales ha cambiado algunos campos, tales como la predicción
de las estructuras de las proteínas.1819
En 1992, max-pooling (una forma de submuestreo, en la que se divide los datos en grupos de
tamaños iguales, que no tienen elementos en común, y se transmite solamente el valor
máximo de cada grupo) fue introducido para ayudar con el reconocimiento de objetos tri-
dimensionales.20 21 22
En 2010, el uso de max-pooling en el entrenamiento por propagación hacia atrás fue
acelerado por los GPUs, y se demostró que ofrece mejor rendimiento que otros tipos de
agrupamiento.23
El problema del desvanecimiento del gradiente afecta las redes neuronales prealimentadas de
múltiples capas, que usan la propagación hacia atrás, y también los redes neuronales
recurrentes (RNNs).2425 Aunque los errores se propagan de una capa a otra, disminuyen
exponencialmente con el número de capas, y eso impide el ajuste hacia atrás de los pesos de
las neuronas basado en esos errores. Las redes profundas se ven particularmente afectadas.
Para vencer este problema, Schmidhuber adoptaba una jerarquía multicapa de redes (1992)
pre entrenados, una capa a la vez, por aprendizaje no supervisado, y refinado por propagación
hacia atrás.26 Behnke (2003) contaba solamente con el signo del gradiente (Rprop)27
tratándose de problemas tales como la reconstrucción de imágenes y la localización de caras.
Como retos anteriores en redes neuronales profundas de capacitación se resolvieron con
métodos como pre-entrenamiento no supervisado y potencia de cálculo incrementada a través
del uso de las GPU y la computación distribuida, las redes neuronales se desplegaron de
nuevo a gran escala, sobre todo en problemas de procesamiento de imágenes y de
reconocimiento visual. Esto se conoció como "aprendizaje profundo", aunque el aprendizaje
profundo no es estrictamente sinónimo de redes neuronales profundas.
Diseños basados en Hardware[editar]
Se crearon en CMOS dispositivos de cómputo para la simulación biofísica al igual que para
la cómputo neuromórfico. Nanodispositivos28 para análisis de componentes principales de
escala muy grande y convolución pueden crear una clase nueva de cómputo neuronal, porque
son fundamentalmente analógicos en vez de digitales (aunque las primeras implementaciones
puedan utilizar dispositivos digitales).29 Ciresan y sus cólegos (2010)30 en el grupo de
Schmidhuber mostraron que, a pesar del problema del desvanecimiento del gradiente, los
GPUs hacen factible la propagación hacia atrás para las redes neuronales prealimentadas con
múltiples capas.
Modelos[editar]
Los modelos de redes neuronales en la inteligencia artificial se refieren generalmente a las
redes neuronales artificiales (RNA); estos son modelos matemáticos esencialmente simples
que definen una función f:X→Y o una distribución más X o ambos X e Y. Pero a veces los
modelos también están íntimamente asociadas con un algoritmo de aprendizaje en particular o
regla de aprendizaje. Un uso común de la frase "modelo ANN" es en realidad la definición de
una clase de tales funciones (donde los miembros de la clase se obtiene variando parámetros,
los pesos de conexión, o específicos de la arquitectura, tales como el número de neuronas o
su conectividad).
Función de red[editar]
La palabra red en el término "red neuronal artificial" se refiere a las interconexiones entre las
neuronas en las diferentes capas de cada sistema. Un sistema ejemplar tiene tres capas. La
primera capa tiene neuronas de entrada que envían datos a través de las sinapsis a la
segunda capa de neuronas, y luego a través de más sinapsis a la tercera capa de neuronas
de salida. Los sistemas más complejos tendrán más capas, algunos aumentando las de
entrada y de salida de neuronas. Las sinapsis almacenan parámetros llamados "pesos" que
manipulan los datos en los cálculos.
Un RNA se define típicamente por tres tipos de parámetros:
1. El patrón de interconexión entre las diferentes capas de neuronas
2. El proceso de aprendizaje para la actualización de los pesos de las interconexiones
3. La función de activación que convierte las entradas ponderadas de una neurona a su
activación a la salida.
otras funciones . Este se representa como una estructura de red, con flechas que
representan las dependencias entre variables.Un tipo ampliamente utilizado de la composición
Esta cifra representa una descomposición de tales , Con las dependencias entre las
variables indicadas por las flechas. Estos pueden ser interpretados de dos maneras.
Los dos puntos de vista son en gran medida equivalente. En cualquier caso, para esta
arquitectura de red en particular, los componentes de las capas individuales son
independientes entre sí (por ejemplo, los componentes de son independientes entre sí,
Para aplicaciones en las que la solución es dependiente de algunos datos, el costo debe ser
necesariamente una función de las observaciones, de lo contrario no estaríamos modelando
todo lo relacionado con los datos. Con frecuencia se define como una estadística a la que se
pueden realizar sólo aproximaciones. Como un simple ejemplo, considere el problema de
Cuando alguna forma de aprendizaje automático en línea debe ser utilizada, donde el
costo se reduce al mínimo parcialmente como se ve cada nuevo ejemplo. Mientras que la
encontrar una función en la clase permitido de funciones que corresponden con los
ejemplos. En otras palabras, deseamos inferir el mapeo derivado de los datos; la función de
coste está relacionado con la falta de coincidencia entre nuestro mapeo y los datos, y contiene
implícitamente el conocimiento previo sobre el dominio del problema.36
Un coste de uso común es el error cuadrático medio, que trata de minimizar el error cuadrático
medio entre las salidas de la red, y el valor objetivo sobre todos los pares
ejemplares. Cuando uno trata de minimizar este coste utilizando descenso de gradiente para
la clase de las redes neuronales llamadas perceptrones multicapas (MLP), se obtiene el
común y bien conocido algoritmo de propagación hacia atrás para la formación de redes
neuronales.
Tareas que caen dentro del paradigma de aprendizaje supervisado son el reconocimiento de
patrones (también conocido como clasificación) y regresión (también conocido como
aproximación de función). El paradigma de aprendizaje supervisado es aplicable también a los
datos secuenciales (por ejemplo, reconocimiento del habla, del manuscrito, y de gestos). Esto
se puede considerar como una forma de aprendizaje con un "maestro", en la forma de una
función que proporciona información continua sobre la calidad de las soluciones obtenidas
hasta el momento.
Aprendizaje no supervisado[editar]
reduce al mínimo, que puede ser cualquier función de los datos y la salida de la
red, .
La función de coste depende de la tarea (lo que estamos tratando de modelar) y nuestros a
priori suposiciones implícitas (las propiedades de nuestro modelo, sus parámetros y las
variables observadas).
costo . Minimizar este coste nos dará un valor de que es igual a la media de los
datos. La función de coste puede ser mucho más complicado. Su forma depende de la
aplicación: por ejemplo, en la compresión de que podría estar relacionado con la información
mutua entre y , Mientras que en la modelización estadística, que podría estar
relacionado con la probabilidad posterior del modelo dados los datos (tenga en cuenta que en
estos dos ejemplos esas cantidades se maximizaría en lugar de reducirse al mínimo).
Tareas que caen dentro del paradigma de aprendizaje no supervisado están en generales de
estimación de problemas; las aplicaciones incluyen el agrupamiento, la estimación
de distribuciones estadísticas, la compresión de datos y el filtrado bayesiano de spam.
Aprendizaje por refuerzo[editar]
En el aprendizaje por refuerzo , los datos por lo general no se dan, pero generada por la
Markov (MDP) con los estados y acciones con las siguientes distribuciones de
la transición Mientras que una política se define como la distribución condicional sobre
las acciones dadas las observaciones. Tomados en conjunto, los dos entonces definen
una cadena de Márkov (MC). El objetivo es descubrir la política (es decir, el MC) que minimice
el costo.
RNAs se utilizan con frecuencia en el aprendizaje de refuerzo como parte del algoritmo
general.3738 La programación dinámica se ha unido a las RNA (dando la programación
neurodinámica) por Bertsekas y Tsitsiklis39 y se aplicó problemas no lineales a la multi-
dimensionales, tales como los implicados en enrutamiento de vehículos , gestión de los
recursos naturales4041 o la medicina42 debido a la capacidad de RNAs para mitigar las
pérdidas de precisión incluso cuando la reducción de la densidad de la red de discretización
para aproximar numéricamente la solución de los problemas de control originales.
Tareas que caen dentro del paradigma de aprendizaje por refuerzo son problemas de
control, juegos y otras secuenciales tareas.
Tipo de entrada[editar]
Finalmente también se pueden clasificar las RNAs según sean capaces de procesar
información de distinto tipo en:
Algoritmos de aprendizaje[editar]
El entrenamiento de un modelo de red neuronal en esencia significa seleccionar un modelo de
la serie de modelos permitidos (o, en un bayesiano marco, la determinación de una
distribución en el conjunto de modelos permitidos) que minimiza el criterio de costo. Hay
numerosos algoritmos disponibles para la formación de los modelos de redes neuronales; la
mayoría de ellos puede ser vista como una aplicación directa de la teoría de optimización y
la estimación estadística.
La mayoría de los algoritmos utilizados en las redes neuronales artificiales de formación
emplean alguna forma de descenso de gradiente, utilizando propagación hacia atrás para
calcular los gradientes reales. Esto se hace simplemente tomando la derivada de la función de
coste con respecto a los parámetros de la red y a continuación, cambiando los parámetros en
una dirección relacionada al gradiente. Los algoritmos de entrenamiento de propagación hacia
atrás generalmente se clasifican en tres categorías:
Aplicaciones[editar]
RNA las hacen bastante apropiadas para aplicaciones en las que no se dispone a
priori de un modelo identificable que pueda ser programado, pero se dispone de
un conjunto básico de ejemplos de entrada (previamente clasificados o no).
Asimismo, son altamente robustas tanto al ruido como a la disfunción de
elementos concretos y son fácilmente paralelizables.
Esto incluye problemas de clasificación y reconocimiento de patrones de voz,
imágenes, señales, etc. Asimismo se han utilizado para encontrar patrones de
fraude económico, hacer predicciones en el mercado financiero, hacer
predicciones de tiempo atmosférico, etc.
También se pueden utilizar cuando no existen modelos matemáticos precisos o
algoritmos con complejidad razonable, por ejemplo la red de Kohonen ha sido
aplicada con un éxito más que razonable al clásico problema del viajante (un
problema para el que no se conoce solución algorítmica de complejidad
polinómica).
Otro tipo especial de redes neuronales artificiales se ha aplicado en conjunción
con los algoritmos genéticos (AG) para crear controladores para robots. La
disciplina que trata la evolución de redes neuronales mediante algoritmos
genéticos se denomina Robótica Evolutiva. En este tipo de aplicación el genoma
del AG lo constituyen los parámetros de la red (topología, algoritmo de
aprendizaje, funciones de activación, etc.) y la adecuación de la red viene dada
por la adecuación del comportamiento exhibido por el robot controlado
(normalmente una simulación de dicho comportamiento).
Aplicaciones de la vida real[editar]
Las tareas se aplican a las redes neuronales artificiales tienden a caer dentro de
las siguientes categorías generales:
La crítica[editar]
Cuestiones de capacitación[editar]
Una crítica común de las redes neuronales, en particular en la robótica, es que
requieren una gran diversidad de entrenamiento para el funcionamiento del
mundo real. Esto no es sorprendente, ya que cualquier máquina de aprendizaje
necesita suficientes ejemplos representativos con el fin de capturar la estructura
subyacente que le permite generalizar a nuevos casos. Dean A. Powerless, en su
investigación presentada en el documento "Formación basada en el conocimiento
de redes neuronales artificiales para la conducción autónoma del robot", utiliza
una red neuronal para entrenar a un vehículo robótico para conducir en múltiples
tipos de carreteras (de un solo carril, varios carriles, suciedad, etc.). Una gran
cantidad de su investigación está dedicada a (1) la extrapolación de múltiples
escenarios de entrenamiento a partir de una sola experiencia de formación, y (2)
la preservación de la diversidad de entrenamiento pasado para que el sistema no
se convierta en sobre entrenamiento (si, por ejemplo, se presenta con una serie
de giros a la derecha - no debe aprender a girar siempre a la derecha). Estos
problemas son comunes en las redes neuronales que debe decidir de entre una
amplia variedad de respuestas, pero se pueden tratar de varias maneras, por
ejemplo por revolver al azar los ejemplos de entrenamiento, mediante el uso de
un algoritmo de optimización numérica que no toma demasiado grandes pasos
cuando el cambio de las conexiones de red siguiendo un ejemplo, o mediante la
agrupación de ejemplos en los llamados mini-lotes.
Cuestiones teóricas[editar]
AK Dewdney , un científico matemático e informática de la Universidad de Ontario
Occidental y ex Scientific American columnista, escribió en 1997, "A pesar de que
las redes neurales hacen resolver algunos problemas de juguete, su poder de
computación son tan limitados que me sorprende que nadie los toma en serio
como una herramienta general de resolución de problemas ". No existe una red
neuronal nunca se ha demostrado que resuelve los problemas
computacionalmente difíciles, tales como la N-Queens problema, el problema del
viajante de comercio , o el problema de factorizar enteros grandes.
Aparte de su utilidad, una objeción fundamental a las redes neuronales artificiales
es que no logran reflejar cómo funcionan las neuronas reales. Propagación hacia
atrás está en el corazón de las redes neuronales artificiales y la mayoría no sólo
no hay evidencia de ningún mecanismo de este tipo de redes neuronales
naturales,53 parece contradecir el principio fundamental de las neuronas reales
que la información sólo puede fluir hacia adelante a lo largo del axón. Como la
información está codificada por las neuronas reales aún no se conoce. Lo que se
sabe es que las neuronas sensoriales disparan potenciales de acción con mayor
frecuencia con la activación del sensor y las células musculares tiran más
fuertemente cuando sus neuronas motoras asociadas reciben los potenciales de
acción con más frecuencia.54 Aparte del caso más simple de solo transmisión de
información de una neurona a un sensor de la neurona motora casi nada se
conoce de los principios generales subyacentes de cómo se maneja la
información por las redes neuronales reales.
La motivación detrás de las redes neuronales artificiales no es necesariamente
para replicar la función neural real, pero para utilizar redes neuronales naturales
como inspiración para un acercamiento a la computación que es inherentemente
paralelo y que proporciona soluciones a los problemas que tienen hasta ahora ha
considerado intratable. Por tanto, una afirmación central de las redes neuronales
artificiales es que encarna algún principio general nuevo y potente para el
procesamiento de la información. Por desgracia, estos principios generales están
mal definidos y que a menudo se afirma que son emergentes de la red neuronal
en sí. Esto permite la asociación estadística sencilla (la función básica de las
redes neuronales artificiales), que se describe como el aprendizaje o el
reconocimiento. Como resultado, las redes neuronales artificiales tienen, según
Dewdney, un "algo para nada la calidad, que imparte un aura peculiar de la
pereza y una clara falta de curiosidad acerca de lo bien que estos sistemas de
computación son Ninguna mano humana (o la mente) interviene; soluciones. Se
encuentran como por arte de magia, y nadie, al parecer, ha aprendido nada”.55
Los problemas de hardware
Para implementar el software de redes neuronales grandes y eficaces,
considerables recursos de procesamiento y almacenamiento deben estar
comprometidos. Mientras que el cerebro ha hardware adaptado a la tarea de
procesamiento de señales a través de un gráfico de las neuronas, simulando
incluso una forma más simplificada en la arquitectura von Neumann puede obligar
a un diseñador de la red neural para llenar muchos millones de bases de
datos filas por sus conexiones - que puede consumir grandes cantidades de
equipo de memoria y disco duro espacio. Además, el diseñador de sistemas de
redes neurales a menudo necesitará para simular la transmisión de señales a
través de muchas de estas conexiones y sus neuronas asociadas - que a menudo
deben coincidir con una increíble cantidad de CPU potencia de procesamiento y
tiempo.
Jürgen Schmidhuber toma nota de que el resurgimiento de las redes neuronales
en el siglo XXI, y su éxito renovado en tareas de reconocimiento de imagen es
atribuible en gran medida a los avances en el hardware: de 1991 a 2015, el poder
de computación, especialmente en lo entregado por GPGPUs (en las GPU ), ha
aumentado alrededor de un millón de veces, por lo que el algoritmo de
retropropagación estándar viable para las redes de formación que son varias
capas más profundas que antes (pero añade que esto no resuelve los problemas
algorítmicos tales como fuga gradientes "de una manera fundamental"). El uso de
la GPU en lugar de CPUs ordinarios puede traer los tiempos de entrenamiento
para algunas redes por debajo de los meses a meros días.
Potencia de cálculo sigue creciendo más o menos de acuerdo con la Ley de
Moore , que puede proporcionar recursos suficientes para llevar a cabo nuevas
tareas. Ingeniería neuromorphic aborda la dificultad de hardware directamente,
mediante la construcción de chips de no-von Neumann con circuitos diseñados
para implementar redes neuronales desde el principio. Google también ha
diseñado un chip optimizado para el procesamiento de red neural llamado Unidad
de Procesamiento Tensor o TPU.
Contraejemplos prácticas a las críticas
Argumentos en contra de la posición de Dewdney son que las redes neuronales
se han utilizado con éxito para resolver muchas tareas complejas y diversas, que
van desde aviones que vuelan de forma autónoma para la detección de fraude de
tarjetas de crédito.
Escritor de tecnología Roger Bridgman ha comentado las declaraciones de
DEWDNEY sobre redes neuronales:
Las redes neuronales, por ejemplo, están en el muelle no sólo porque han sido
promocionado al alto cielo, (lo que tiene, no?), sino también porque se puede
crear una red de éxito sin la comprensión de cómo funcionaba: el montón de
números que captura su comportamiento sería con toda probabilidad "una, mesa
ilegible opaca... sin valor como recurso científico".
A pesar de su enfática declaración de que la ciencia no es la tecnología, parece
Dewdney aquí para ridiculizar a las redes neuronales como mala ciencia cuando
la mayoría de los ideando ellos están tratando de ser buenos ingenieros. Una
tabla puede leer que una máquina útil podía leer todavía sería bien vale la pena
tener.
Si bien es cierto que el análisis de lo que se ha aprendido por una red neuronal
artificial es difícil, es mucho más fácil de hacerlo que analizar lo que se ha
aprendido por una red neuronal biológica. Por otra parte, los investigadores
involucrados en la exploración de algoritmos de aprendizaje para redes
neuronales están descubriendo gradualmente principios genéricos que permiten
que una máquina de aprendizaje tenga éxito. Por ejemplo, Bengio y LeCun (2007)
escribió un artículo sobre el aprendizaje locales vs. No locales, así como poco
profundas frente a la arquitectura de profundidad.
Enfoques híbridos
Algunas otras críticas que provienen de los defensores de los modelos híbridos
(combinación de redes neuronales y enfoques simbólicos), que creen que el
intermix de estos dos enfoques puede capturar mejor los mecanismos de la mente
humana.
Las clases y tipos de RNAs[editar]
Red Neural dinámico
Red neuronal feedforward (FNN)
Red neuronal recurrente (RNN)
Red de Hopfield
Máquina de Boltzmann
Redes recurrentes simples
Red estatal de eco
Memoria a largo plazo corto
Bidireccional RNN
Jerárquica RNN
Redes neuronales estocásticos
Mapas autoorganizados de Kohnen
Autoencoder
Red neuronal probabilística (PNN)
Red neuronal de retardo de tiempo (TDNN)
Red de realimentación reguladora (RFNN)
Estática red neuronal
Neocognitrón
Neurona de McCulloch-Pitts
Red de función de base radial (RBF)
Aprender cuantificación vectorial
perceptrón
Modelo Adaline
Red neuronal de convolución (CNN)
redes neuronales modulares
Comité de las máquinas (COM)
Red neuronal asociativa (ASNN)
Memoria Red
Google / Google DeepMind
Facebook / MemNN
Memoria asociativa holográfica
One-shot memoria asociativa
Máquina de Turing neuronal
Teoría de la resonancia adaptativa
la memoria temporal jerárquica
Otros tipos de redes
Redes neuronales entrenadas instantáneamente (ITNN)
Red neuronal de impulsos (SNN)
Impulsión codificados Redes Neuronales (PCNN)
En cascada redes neuronales
Redes Neuro-Fuzzy
Creciente de gas neural (GNG)
Redes patrón productoras de composición
Red de contrapropagación
Red neuronal oscilante
Red neural híbrida
Red neuronal física
Red neuronal óptica
Ejemplos[editar]
Quake II Neuralbot[editar]
Un bot es un programa que simula a un jugador humano. El Neuralbot es un bot
para el juego Quake II que utiliza una red neuronal artificial para decidir su
comportamiento y un algoritmo genético para el aprendizaje. Es muy fácil probarlo
para ver su evolución. Más información aquí [1]
Clasificador No Sesgado de Proteínas[editar]
Es un programa que combina diversas técnicas computacionales con el objetivo
de clasificar familias de proteínas. Un posible método consiste en
utilizar métricasadaptativas como por ejemplo: mapas
autoorganizados y algoritmos genéticos.
El problema de clasificación no sesgada basada en la expresión de las proteínas
en Aminoácidos puede reducirse, conceptualmente, a lo siguiente: