El modelo de neurona artificial utilizado hasta ahora para modelar puertas lógicas y clasificar nubes de puntos es adecuado para trabajar con un rango de valores discretos conocidos. Pero en la práctica se puede trabajar con dicho modelo en cualquier rango de valores numéricos de una forma más genérica. Para facilitar la explotación de esta característica es conveniente revisar el propio diseño de neurona artificial.
Neurona Artificial Revisitada
En el diseño original de neurona artificial existe una dependencia entre la función de activación y el umbral de activación. Se presupone que todas las funciones de activación realizan una clasificación en base a dicho umbral.
Sin embargo, el umbral de activación es una característica de las neuronas que puede incorporarse al cálculo del valor neto de una forma natural, eliminando su dependencia con la función de activación.
El valor neto se calcula como la suma ponderada de las entradas por los pesos. Si a dicho neto se le resta el umbral de activación, y el resultado es negativo, se puede interpretar que no se ha alcanzado el umbral. Si es cero es que está justo en el umbral. Y si es positivo es que se ha superado el umbral. De esta forma es el propio signo del valor neto el que puede indicar si se ha superado o no el umbral, y se puede eliminar esa responsabilidad de decidir si se ha superado o no el umbral de la función de activación.
En este diseño se introducen los siguientes cambios:
- Al vector de valores de entradas se le añade un nuevo elemento con valor 1 :
X = \begin{bmatrix} x_1 \ldots x_n, 1 \end{bmatrix}
- Al vector de pesos se le añade un nuevo elemento con valor b :
W = \begin{bmatrix} w_1 \ldots w_n, b \end{bmatrix}
Siendo b el «sesgo», del inglés «bias», que sustituye al umbral de activación:
b = -T
- El cálculo del valor neto de entrada incluye el sesgo:
z = \displaystyle\sum_{i=1}^{n-1} w_i x_i + b
Expresión que a veces se formula mediante el producto escalar:
z = W \cdot X
O como producto de matrices:
z = WX^T , siendo X^T la matriz traspuesta de X
- La función de activación escalón se sustituye por la función escalón unitario, del inglés «unit step»:
f(x) = \begin{cases} 0 & \quad \text{if } x < 0 \\ 1 & \quad \text{if } x \geq 0 \end{cases}
Esta función activa la neurona cuando el neto es mayor o igual que cero.
Este diseño es totalmente equivalente al utilizado anteriormente, pero tiene la ventaja de que permite tratar todos los parámetros de manera homogénea con tan sólo dos vectores.
Interpretación Geométrica Revisitada
Añadir el sesgo al cálculo del valor neto de entrada implica añadir un término independiente a la combinación lineal de las entradas por los pesos.
En el caso más sencillo, con una única entrada x_1 , la función del cálculo del valor neto es la ecuación de una recta de la forma:
w_1 x_1 + b
Donde w_1 es la pendiente de la recta y b el punto de corte con el eje de ordenadas. Es decir, la superficie definida por la función del valor neto sigue siendo una recta, pero en vez de cortar siempre el eje de ordenadas en el origen ahora lo hace en el punto b .
Por su parte, la función de activación ahora define una frontera de decisión sobre dicha recta de la forma:
w_1 x_1 + b = 0
Lo que quiere decir que la frontera de decisión ahora es siempre el punto de corte de la recta con el eje de abscisas.Esto no implica grandes cambios con respecto al diseño anterior en la medida que se puede seguir trazando cualquier recta. La única diferencia es que ahora la frontera de decisión siempre es el eje de abscisas. Lo que se corresponde con la idea antes planteada de que el signo del valor neto determina si se ha superado o no el umbral de activación.
Por su parte, para el caso de dos dimensiones, la superficie definida sigue siendo un plano. El término independiente b en la ecuación del plano tiene el mismo efecto que en la ecuación de la recta, haciendo que el plano ya no corte siempre el origen de coordenadas.
w_1 x_1 + w_2 x_2 + b
Igualmente, la frontera de decisión sigue siendo una recta sobre el plano.
w_1 x_1 + w_2 x_2 + b = 0
Sólo que ahora dicha recta se corresponde siempre a la intersección con el plano definido por los ejes sobre los que se representan x_1 y x_2 .
La vista cenital no se ve alterada. Ni tampoco el comportamiento para un número mayor de dimensiones, donde se trabaja con hiperplanos.