Una red neuronal bien entrenada te dará la respuesta correcta para cualquier mútiplo de 6 que no hayas introducido en el programa
Eso es exáctamente lo que hace mi programa, yo cuando le enseño dos múltiplos de 6 "positivos" el sistema es capaz de identificar a cualquiero múltiplo de 6, pero se "equivoca" cuando pongo -6 por ejemplo, entonces le enseño que -60 es múltiplo de 6 y el sistema ya sabe diferenciar perfectamente a todos los números.
El sistema por dentro es muy estadístico, es decir, los números que le paso como múltiplos de 6 son checkeados por todas las funciones miembro y los resultados (true/false) que devuelven estas funciones son almacenados en la base de datos, como si fueran patrones. Cuando ya finalizó la etapa de aprendizage el sistema compara los patrones de los números que ingreso con los patrones almacenados en la base de datos, de esta manera puede determinar si un número específico cumple con los patrones que tienen los múltiplos de 6.
De una manera pienso que esto podría indicar el "peso" de las neuronas, es decir:
- La funcion que identifica a números negativos no es determinante, ya que los múltiplos de 6 pueden ser tanto positivos como negativos, esto indica que esta funcion pierde peso cuando se intenta identificar a los números múltiplos de 6 no ? Con esos datos podría hacer que el sistema determine qué funciones deben ser utilizadas para determinar el resultado de la evaluación (vendrían a ser las funciones determinantes).
- En la fase de entrenamiento se podrían utilizar todas las funciones, y a medida que le valla proporcionando muchos ejemplos, el sistema debería ir descartando las funciones que no son determinantes o que siempre devuelven distintos resultados. Pero a un humano cuando le enseñamos una multiplicación o división, éste sabe que le estamos enseñando matemáticas porque se lo hemos dicho, o bien, porque ya lo sabe.
Para hacer esto me basé en el comportamiento de un ser humano, es decir, cuando aprendí a multiplicar por 2 me dijeron: 2 x 2 = 2 veces 2, como yo sabía sumar supe encontrar el resultado de esa multiplicación, una vez que aprendí eso ya tenía facultades para calcular muchas multiplicaciones sensillas.
Realmente no sé cómo funcionan las neuronas de una persona, tengo algunas ideas volando pero nada concreto, tampoco sé cómo podría aplicarlas...
Me serviría mucho ver algún ejemplo, aunque sea en pseudo-código, de una pequeña red de neuronas que pueda identificar a los números múltiplos de 6 por ejemplo. (yo en mi caso tengo 2 neuronas determinantes, una que identifica a los múltiplos de 2 y otra de 3, cuando la evaluación de estas dos funciones es TRUE, es suficiente para afirmar que el número en cuestión es múltiplo de 6).
Saludos y gracias por responder.