Usando redes neuronales para reconocer dígitos escritos a mano - Parte 2  

  RSS
admin
(@admin)
Miembro Admin

Perceptrones

¿Qué es una red neuronal? Para empezar, voy a explicar un tipo de neurona artificial llamado un perceptrón. Los perceptrones fueron desarrollados en los años 1950 y 1960 por el científico Frank Rosenblatt, inspirado en un trabajo anterior de Warren McCulloch y Walter Pitts. Hoy en día, es más común el uso de otros modelos de neuronas artificiales, llamadas neuronas sigmoideas. Sin embargo, para entender por qué las neuronas sigmoideas se definen de la forma en que son, vale la pena tomarse el tiempo para entender primero los perceptrones.

Entonces, ¿cómo funcionan los perceptrones? Un perceptrón toma varias entradas binarias; x1, x2,..., y produce una sola salida binaria:

En el ejemplo mostrado, el perceptrón tiene tres entradas: x1, x2, x3. En general, se podría tener más o menos entradas. Rosenblatt propuso una regla simple para calcular la salida. Introdujo pesos (w1, w2...) también números reales que expresan la importancia relativa de las respectivas entradas. La salida de la neurona, 0 o 1, se determina calculando la suma ponderada y comprobando que sea menor o mayor que un cierto valor umbral. Al igual que los pesos, el umbral es un número real y es un parámetro de la neurona. Para ponerlo en términos algebraicos más precisos:

¡Eso es todo lo que necesita saber sobre el funcionamiento de un perceptrón!

Ese es el modelo matemático básico. Una manera en que se puede pensar en el perceptrón es que es un dispositivo que toma decisiones sopesando una evidencia. Déjame darte un ejemplo, no es un ejemplo muy realista, pero es fácil de entender, y pronto llegaremos a ejemplos más realistas. Supongamos que el fin de semana se acerca, y has oído que va a haber un festival de queso en tu ciudad. Te gusta el queso, y estás tratando de decidir si debes ir o no a la fiesta. Es posible que su decisión se base en tres factores:

  1. ¿El clima es agradable?
  2. ¿Tu novio o novia quiere acompañarte?
  3. ¿Se puede llegar en transporte público? (No tienes carro/coche)

Podemos representar estos tres factores por las correspondientes variables binarias x1, x2, x3. Por ejemplo, tendríamos que x1 = 1 si el tiempo es bueno, y x1 = 0 si el tiempo es malo. Del mismo modo, x2 = 1 si tu novio o novia quiere ir, y x2 = 0 en caso contrario. Repetimos de igual manera usando x3 y el transporte público.

Ahora, supongamos que adoras absolutamente el queso, tanto es así que estás dispuesto a ir a la fiesta incluso si tu novio o novia no está interesado/a y es difícil llegar al festival. Pero tal vez realmente odias el mal tiempo, y no hay manera de que vayas a la fiesta si el tiempo es malo. Puedes usar perceptrones para modelar este tipo de toma de decisiones. Una forma de hacer esto es elegir un peso w1 = 6 para el clima, y w2 = 2 y w3 = 2 para las otras condiciones. El valor más grande de w1 indica que el tiempo te importa mucho, mucho más que si tu novio o novia te acompaña, o la cercanía del transporte público. Por último, supongamos que eliges un umbral de 55 para el perceptrón. Con estas opciones, el perceptrón implementa el modelo de toma de decisiones deseado, obteniendo 1 cuando el tiempo es bueno, y 0 cada vez que el tiempo es malo. No hay ninguna diferencia en la salida si tienes o no compañía o si el transporte público está cerca o lejos.

Mediante la variación de los pesos y el umbral, podemos obtener diferentes modelos de toma de decisiones. Por ejemplo, supongamos que ahora elegimos un umbral de 33. A continuación, el perceptrón decidiría que hay que ir a la fiesta cuando el tiempo es bueno o cuando tanto el festival estaba cerca del transporte público y su novio o novia estaba dispuesto/a a acompañarte. En otras palabras, sería un modelo diferente de toma de decisiones. Bajar el umbral significa que estás más dispuesto a ir al festival.

Obviamente, el perceptrón no es un modelo completo de la toma de decisiones humana. Pero lo que el ejemplo ilustra es cómo un perceptrón puede sopesar diferentes tipos de evidencias con el fin de tomar decisiones. Y debe parecer plausible que una red más compleja de perceptrones podría tomar decisiones más sutiles:

En esta red, la primera columna de perceptrones - lo que llamaremos la primera capa de perceptrones - está tomando tres decisiones muy simples mediante la ponderación de las pruebas de entrada. ¿Qué pasa con los perceptrones en la segunda capa? Cada uno de los perceptrones está tomando una decisión ponderando los resultados de la primera capa. De esta manera un perceptrón en la segunda capa puede tomar una decisión en un nivel más complejo y más abstracto que perceptrones en la primera capa. Y decisiones aún más complejos pueden ser tomadas por los perceptrónes en la tercera capa. De esta manera, una red con varias capas de perceptrones puede participar en sofisticadas tomas de decisiones.

Por cierto, cuando he definido perceptrones he dicho que un perceptrón tiene sólo una única salida. En la red de arriba los perceptrones parecen tener múltiples salidas. En realidad siguen teniendo una sola salida. Las flechas de salida múltiples son simplemente una forma útil de indicar que la salida de un perceptrón se utiliza como la entrada a varios perceptrones. Es más fácil que dibujar una línea de salida única que luego se divida.

Vamos a simplificar la forma en que describimos perceptrones. La condición ∑wx > threshold es engorrosa, y podemos hacer dos cambios en la notación para simplificarla. El primer cambio es escribir el sumatorio como un producto escalar, w⋅x ≡ Σwx, donde w y x son vectores cuyos componentes son los pesos y las entradas respectivamente. El segundo cambio es pasar el umbral hacia el otro lado de la ecuación, y sustituirlo por lo que se conoce como sesgo del perceptrón. Usando el sesgo en lugar de el umbral, la regla de perceptrón se puede reescribir:

Para continuar viendo el resto de contenido por favor Regístrate o Inicia Sección

This topic was modified hace 4 meses 2 times by admin
This topic was modified hace 2 meses by admin
ResponderCitar
Respondido : 12/10/2018 10:36 pm
Share:
  
Trabajando

Por favor Iniciar Sesión o Registro