Revolución IA

La Inteligencia Artificial está llamada a protagonizar la próxima Revolución tecnológica

Inicio Sobre Revolucionia Temas Para saber más Contacto

Los perceptrones y la función XOR

Fernando P.    04/10/2017

Temas:  Fundamentos

Los perceptrones son las redes neuronales artificiales (RNA) más sencillas. Ya dedicamos un artículo anterior a su estudio. También se diseñó un ejemplo sencillo que utilizaba un Perceptrón muy simple para resolver un problema de clasificación de clientes en una empresa.

Existen problemas de clasificación que se pueden resolver usando perceptrones, pero estos no pueden representar cualquier función de clasificación y, de hecho, son incapaces de representar algunas funciones muy simples.

Los inicios de las redes neuronales artificiales
Los perceptrones fueron las primeras redes neuronales artificiales que se diseñaron, tan lejos en el tiempo como los años 40 del siglo XX. Durante los años 50 y 60 despertaron un gran interés en la incipiente comunidad de especialistas en Inteligencia Artificial y se describieron problemas de cierta complejidad que podían ser resueltos usando perceptrones.

Como logro interesante, se consiguió demostrar que un Perceptrón puede ser entrenado para cualquier función de clasificación que sea capaz de representar. La cuestión relevante es:

¿ Qué se puede representar con un Perceptrón ?

Convexidad Convexidad
Una región convexa de  ℜn  se caracteriza porque, dados dos puntos en ella, todos los puntos en la recta que conecta esos dos puntos también están dentro de la región.

Una región convexa puede llegar a ser bastante complicada y siempre puede ser aproximada por la intersección de múltiples semiespacios definidos por hiperplanos.

Como ya comentanos en la descripción de los perceptrones, estos son capaces de separar/clasificar regiones en el espacio de entrada que estén delimitadas por hiperplanos, regiones que siempre van a ser convexas.

La convexidad es una propiedad matemática muy interesante pero los problemas del mundo real no tienen tanto aprecio por la convexidad y tienden a exhibir formas muy rebuscadas. Así que hay muchos problemas de clasificación que requieren separar regiones del espacio de entrada que no son convexas.

Esta limitación de los perceptrones se puso de manifiesto a finales de los años 60 y supuso un revés importante para las esperanzas que se habían puesto en estas técnicas.

Incluso se demostró que ningún Perceptrón es capaz de representar algunas funciones realmente sencillas. En realidad no puede representar ninguna función de clasificación que requiera delimitar regiones no convexas en el espacio de entrada.

Resulta que hay algunas funciones de estas que son muy sencillas.

La función XOR
La función XOR es una función binaria muy simple pero muy usada en computación.

Se trata de una función  f:{0,1}x{0,1}→{0,1}  que vale  0  si ambos argumentos son iguales, es decir,  f(1,1) = f(0,0) = 0  y vale  1  en caso contrario, es decir,  f(1,0) = f(0,1) = 1

Cuando tenemos un un problema de clasificación real, podemos tratar de definir los espacios de entrada y las clases de salida a la medida del problema de forma que podamos construir una función de clasificación que nos resuelva el problema.
Función XOR
En el caso de la función XOR, ya nos dan la función hecha y sólo podemos tratar de ver si con una sóla neurona podemos representarla, dado que el conjunto de clases de salida es  {0,1}.

En estas condiciones, es imposible reproducir la función XOR porque una sola neurona usa un hiperplano (recta en este caso) para dividir el espacio de entrada (plano en este caso) en dos mitades y no se puede hacer tal división de forma que los puntos en los que la función XOR vale  0  queden separados de los que resultan en valor  1

En la ilustración adjunta queda patente la imposibilidad de separar con una recta los puntos de la región de entrada en función de su valor para la función XOR (distintos colores en la ilustración).

¿ Son tan limitados los perceptrones ?
El que una neurona artificial no fuera capaz de representar algo tan sencillo como la función XOR se descubrió a finales de los años 60 del siglo XX y supuso un revés letal para las esperanzas que se habían puesto en estas técnicas. Algunos esperaban demasiado de los perceptrones y otros se ensañaron demasiado con ellos.

En realidad, sí que es posible usar un perceptrón con múltiples neuronas para representar una región no convexa a condición de que su complementaria sea convexa. Lo haríamos como una especie de negación de la región convexa.

El caso de la función XOR es un poco patológico porque la potencia de los perceptrones viene del hecho de que pueden generalizar bastante bien en conjuntos de entrada inmensos siempre que no sean muy rebuscados (que haya a lo sumo una región no convexa a separar) y tengamos margen para codificar (como un número o un vector) las clases sobre las que tenemos que clasificar.

La función XOR no tiene nada que ver con la Inteligencia Artificial porque es tan simple que no hay margen para generalizar ni para extraer patrones, que es lo que de verdad nos puede interesar de las técnicas de Inteligencia Artificial.

Aun así, es cierto que la aplicación natural de los perceptrones es a problemas que puedan resolverse usando separabilidad lineal. Por un lado, resulta que tienen restricciones serias, pero por otro resulta que conocemos exactamente lo que pueden representar y lo que no pueden. Además siempre se les puede entrenar con algo que puedan representar.



Los perceptrones, con sus limitaciones, son técnicas muy interesantes porque han permitido entender mejor la problemática de los problemas reales de clasificación. Además, son la base de RNA más elaboradas que superan las limitaciones descritas.



Para saber más:

Página de la Wikipedia sobre la función XOR o disyunción exclusiva.

Página de la Wikipedia que trata sobre los perceptrones e ilustra la problemática con la función XOR.

La separabilidad lineal es la clave para entender lo que puede llegar a definir un Perceptrón y se define a partir del concepto de hiperplano, que se trata en esta página de la Wikipedia.



 

Inicio Powered by NetBSD
 
HTML5
 
En general, todo el contenido de este sitio web es original, salvo referencias o enlaces a otros sitios web y citas o reproducciones expresamente presentadas como tales.

No está permitida la reproducción ni la copia del contenido de este sitio web sin el permiso expreso de la propiedad del mismo.

Este sitio web no utiliza cookies ni ningún otro mecanismo para almacenar información en los navegadores de los visitantes ni para realizar seguimiento de los mismos.

2017,2018 Revolucionia.net
Sobre Revolucionia
Temas
Para saber más
Contacto