1.- Perceptron Simple

El Perceptrón sirve únicamente para problemas linealmente separables y que sean de dos clases. Esto quiere decir que trazando una línea, plano o hiperplano se puedan distinguir.

Por otra parte, el perceptrón es la única red neuronal que tiene un teorema de convergencia el cuál establece que, si el problema es linealmente separable, el perceptrón encontrará la solución. Aunque no se sabe cuanto tiempo le llevara encontrar la solución y mucho menos si la solución encontrada será la óptima, se sabe que se tendrá una solución.

Arquitectura

graph LR X0((x0)) W0(w0) Xi((xi)) Wi(wi) sum{Σ} X0 --> W0 W0 --> sum Xi --> Wi Wi --> sum sum --> fun(("f()")) fun --> S("y") class W0,Wi classW; classDef classW fill:#FFF,stroke:#E91E63,stroke-width:2px; style X0 fill:#FFF,stroke:#2196F3,stroke-width:2px; style Xi fill:#FFF,stroke:#2196F3,stroke-width:2px; style sum fill:#FFF,stroke:#673AB7,stroke-width:2px; style fun fill:#FFF,stroke:#4CAF50,stroke-width:1px; style S fill:#FFF,stroke:#FFF,stroke-width:0px;

Formula

1.-La unidad procesadora del Perceptron realiza la suma ponderada de las entradas según la ecuación:

netn=i=0dxiwni\color{#673AB7} {net}_n = \sum \limits_{i=0}^d \color{#2196F3} x_i \color{#E91E63} w_{ni}

El sumatorio empieza desde 0 para contemplar que tambien se sume el bias con su peso (x0wn0)(x_0 * w_{n0} ), en algunas ecuaciones lo ponen afuera del sumatorio y otras simplemente no lo usan.


2.- Despues de la suma de las entradas ponderadas, el resultado se pasa a una funcion generando la salida, según la ecuación:

f(netn)f( \color{#673AB7} {net}_n )

3.- El resultado yn\color{#4CAF50} y_n, se obtiene despues con la siguiente comprobacion:

yn={1if f(netn)>00if f(netn)0\color{#4CAF50} y_n = { \begin{cases} 1 & { \text{if }} f( \color{#673AB7} {net}_n ) > 0 \\ 0 & { \text{if }} f( \color{#673AB7} {net}_n ) \leq 0 \end{cases} }


Ejemplo

Los pesos iniciales son aleatorios y se recomienda que se encuentren en un rango de -0.5 a 0.5.

Aprendizaje

Para poder aprender, las redes neuronales utilizan algun algoritmo de aprendizaje.

Esto se obtiene introduciendo unos valores de entrada, y los valores de salida generados por esta se comparan con los valores de salida correctos. Si hay diferencias, se ajustan los pesos sinápticos utilizando el algoritmo de aprendizaje de tal manera que el error vaya disminuyendo hasta que la salida sea la correcta.

Basicamente los valores que tienen los pesos sinápticos ww, representan el conocimiento que tiene una RNA.

Aprendizaje por correcion de error

Para el primer tipo de aprendizaje, utilizando tasa de aprendizaje, utilizaremos la siguiente regla de actualización de los pesos:

wninew=wniold+α(dnyn)xi\color{#E91E63} w_{ni}^{new} = \color{#E91E63} w_{ni}^{old} + \color{#673AB7} \alpha( d_n - \color{#4CAF50} y_n ) \color{#2196F3} x_i