21 votos

¿Por qué XOR no es linealmente separable?

Sea la función $XOR:\{0,1\} \times \{0,1\} \to \{0,1\}$ sea la función definida por

$$\begin{align} XOR(0,0) &= 0, \\[6pt] XOR(0,1) &= 1, \\[6pt] XOR(1,0) &= 1, \\[6pt] XOR(1,1) &= 0. \\[6pt] \end{align}$$

Sea $\mathcal{H}$ sea el conjunto de todos los clasificadores lineales sobre $\Bbb R^2$ donde

\begin{align*} h(x_1,x_2) = \begin{cases} 1 & & \text{if} \ ax_1+bx_2+c < 0, \\[6pt] 0 & & \text{if} \ ax_1+bx_2+c \ge 0, \\[6pt] \end{cases} \end{align*}

para todos $h\in \mathcal{H}$ y para algunos $a,b,c \in \Bbb R$ .

  1. Demuestre que no hay $h \in \mathcal{H}$ tal que $h(x_1,x_2)=XOR(x_1,x_2)$ para cualquier $(x_1,x_2) \in \{0,1\} \times \{0,1\}$ .

  2. Demuestre que hay exactamente $16$ funciones distintas $f:\{0,1\} \times \{0,1\} \to \{0,1\}$ .

No tengo ni idea de cómo empezar con este problema. ¿Alguna idea?

52voto

jldugger Puntos 7490

Haz un dibujo.

Figure 1: Four points on the unit square, colored, with a background split by a slanted line

La pregunta te pide que demuestres que no es posible encontrar un semiplano y su complemento que separen los puntos azules donde XOR es cero de los puntos rojos donde XOR es uno (en el sentido de que los primeros están en el semiplano y los segundos en su complemento).

Aquí se muestra un intento (fallido), en el que el semiplano aparece sombreado en contraste con su complemento. Este ejemplo concreto no funciona porque tanto el semiplano como su complemento contienen un punto azul y un punto rojo.

Después de meditarlo un poco, podrías inspirarte para intentar una prueba por contradicción: supongamos que eran números $(a,b,c)$ para el que el signo de $ax_1 + bx_2 +c$ de acuerdo con los valores publicados de XOR. Introduciendo las cuatro posibilidades de $(x_1,x_2)$ conduce a esta tabla.

$$\begin{array}{lcccr} \text{Location} & x_1 & x_2 & \operatorname{XOR}(x_1,x_2) & a x_1 + b x_2 + c \lt 0? \\ \hline \text{Bottom left} & 0 & 0 & \color{blue}0 & c \ge 0 \\ \text{Top left} &0 & 1 & \color{red}1 & b + c \lt 0\\ \text{Bottom right} &1 & 0 & \color{red}1 & a + c \lt 0\\ \text{Top right} &1 & 1 & \color{blue}0 & a + b + c \ge 0 \end{array}$$

Los valores indicados de XOR determinan cuáles deben ser las desigualdades de la columna de la derecha.

Si sumáramos las tres primeras desigualdades, después de reescribir la primera como $-c \le 0,$ obtendríamos $$a + b + c = (-c) + (b+c) + (a+c) \lt 0,$$ exactamente lo contrario de la última desigualdad: ahí está la contradicción. Es una forma algebraica sencilla de demostrar que si el punto inferior izquierdo estuviera separado de los puntos superior izquierdo e inferior derecho, entonces también tendría que estar separado del punto superior derecho--pero eso es exactamente lo contrario de lo que necesitamos para separar los valores de XOR.


La segunda pregunta es un sencillo (y matemáticamente no relacionado) problema de recuento. Los posibles valores de $(x_1,x_2)$ designan cuatro puntos, cada uno de los cuales puede tomar uno de los dos valores $0$ o $1,$ dando $2^4=16$ posibilidades.

Si esto no es del todo obvio, vale la pena escribir las dieciséis funciones. Puedes hacerlo con una tabla de cuatro filas y 18 columnas: una columna para $x_1,$ otro para $x_2,$ y los 16 restantes para las funciones distintas. Si lo haces sistemáticamente, te darás cuenta de que esas 16 columnas corresponden a los 16 números binarios de cuatro cifras 0000, 0001, ..., 1111.

También puedes representar las 16 funciones a la manera de la figura anterior: saca tus lápices de colores; elige dos de ellos; y colorea los cuatro puntos de tantas formas distintas como te sea posible.

Figure 2

Los títulos de esta figura dan algunos nombres estándar para las funciones. El sombreado de fondo representa los semiplanos de separación allí donde existen.

1voto

Wouter Puntos 111
  • Xor(0,0) == 0 implica c >= 0

  • Xor(1,1) == 0 implica a+b+c >=0

  • La suma de estos implica que a+b+2c >=0

  • Xor(0,1) == 1 implica a + c < 0

  • Xor(1,0) == 1 implica b + c < 0

  • Sumando estos implica que a+b+2c <0

Así que ambos tienen que ser >=0 y <0 que no es posible.

PS. El mismo argumento se expone en la respuesta aceptada.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X