JavaTM 2 Platform
Std. Ed. v1.3

java.redesNeuronales.Neurona
Clase Neurona

java.lang.Object
  |
  +-- java.Neurona
 

public class Neurona
extends Object

An applet is a small program that is intended not to be run on its own, but rather to be embedded inside another application.

The Applet class must be the superclass of any applet that is to be embedded in a Web page or viewed by the Java Applet Viewer. The Applet class provides a standard interface between applets and their environment.


Inner Class Summary

 

 

Constructor Summary
           -- no constructor

 

Method Summary
int id()
 double estado()
 double salida_Deseada()
 void actualizarEstado(double nuevoEstado)
 void actualizarSalida_Deseada(double nuevoSalida_Deseada)
 void actualizarId(double nuevoId)
 void estadoAleatorio(int min, int max)
 void estadoAleatorio(double min, double max)
 double potencial_Lateral()
 double potencial_Adelante()
 double potencial_Atras()
 double normaCuadraticaAd()
 double normaCuadraticaAtras()
double normaCuadraticaLat()
 void pintar()
 abstract void actualizar()
void cargarEspecifico(LectorXXX f) throws IOException
void guardarEspecifico(EscritorXXX f) throws IOException

 

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

 

Method Detail

id

public int id()

Descripción
Devuelve el identificador de la neurona.
El identificador 0 esta reservado para las neruonas sesgo.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
System.out.println(n.id(););



estado

public double estado()

Descripción
Devuelve el estado de activación de la neurona.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
System.out.println(n.estado());



salida_Deseada

public double salida_Deseada()

Descripción
Devuelve el valor almacenado como salida deseada en la neurona.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
System.out.println(n.Salida_Deseada ());


normaCuadraticaAd, normaCuadraticaAtras, normaCuadraticaLat

public double normaCuadraticaAd()
public double normaCuadraticaAtras()
public double normaCuadraticaLat()

Descripción
Devuelve la diferencia cuadratica entre los pesos que estan asociados ,
esto es que llegan a la neurona desde delante, y el patrón que hay
almacenado en la neurona a la que une esta sinapsis.
Sirve para para hallar lo que se difierencian los pesos de las neuronas de
los patrones de entrada las neuronas en las redes competitivas .
Dependiendo si estamos considerando las conexiones de las neuronas que vienen desde atrás o desde adelante o de nuestra misma capa usaremos uno u otro metodo.


Ejemplo
Neurona n = CapaEntrada.neurona(1);
System.out.println(n.NormaCuadraticaAd ());

 


potencial_Adelante, potencial_Atras, potencial_Lateral

public double potencial_Adelante()
public double potencial_Atras()
public double potencial_Lateral()

Descripción
Devuelve el potencial de la neurona , esto es la suma de el peso de las
sinapsis que le llegan multiplicado por el valor de la nuerona a la que se
une. Dependiendo si estamos considerando las conexiones de las
neuronas que vienen desde atrás o desde adelante o de nuestra misma,
capa usaremos una o otra función.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
System.out.println(n. potencial_Adelante (););


pintar

public void pintar()

Descripción
Muestra por pantalla los datos de la neurona.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
n.pintar();


actualizarEstado

public void actualizarEstado(double nuevoEstado)

Descripción
Este método actualiza el valor de estado de la neurona a uno nuevo.

Parámetros
double nuevoEstado
Nuevo estado de la neurona

Ejemplo
Neurona n = CapaEntrada.neurona(1);
n.ActualizarEstado(10.1);



estadoAleatorio

public void estadoAleatorio(int min, int max)
public void estadoAleatorio(double min, double max)

Descripción
Este método actualiza el valor de estado de la neurona a uno aleatorio,
comprendido en el rango de valores que se especifique entre min y max.

Parámetros
double max
cota máxima del valor de estado de la neurona.
double min
cota mínima del valor de estado de la neurona.

Ejemplo

Neurona n = CapaEntrada.neurona(1);
n.ActualizarEstado(10.1);


actualizarSalida_Deseada

public void actualizarSalida_Deseada(double nuevoSalida_Deseada)

Descripción
Este método actualiza el valor de Salida_Deseada de la neurona al valor
nuevoSalida_Deseada

Parámetros
double nuevoSalida_Deseada
Este parametro es el nuevo valor de la salida deseada de
la neurona.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
n.ActualizarEstado(10.1);


actualizarId

public void actualizarId(int nuevoId)

Descripción
Este método actualiza el identificador de la neurona .
no combiene cambiarlo por que puede destruir la estructura interna de la
red (al crear dos neuronas con el mismo id).

Parámetros
int nuevoId
Este parámetro es el nuevo valor del atributo id de la nuerona

Ejemplo
Neurona n = CapaEntrada.neurona(1);
n. actualizarId (1);


aprenderPesos

public void aprenderPesos(int TipoSinapsis, double [] valores )

Descripción
Este método informa a todas las sinapsis que llegen a la
neurona por el método indicado TipoSinapsis en que aprendan .

Parámetros

int TipoSinapsis
indica que sinapsis se actializaran, las que llegan desde una
capa anterior, en tal caso deberemos usar
utils.CteSinapsis_adelante, las que llegan desde una capa posterior en cuyo caso deberemos usar utils.CteSinapsis_atrás o
las sinapsis que llegan desde neuronas de la misma capa,
entonces usaremos la constante utils.CteSinapsis_lateral.

double [] valores
Este parámetro es un array de valores que se usarán como Parámetros para la método que ordena a las sinapsis que aprendan.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
Double p[] = new double[0];
n. aprenderPesos (utils.CteSinapsis_atrás, p);


establecerPesos

public void establecerPesos(int TipoSinapsis ,double [] valores)

Descripción
Este método informa a todas las sinapsis que llegen a la neurona por el
método indicado TipoSinapsis que tomen el valor i del array valores si
su orden de llegada a la neurona es el i.

Parámetros

int TipoSinapsis
indica que tipo de sinapsis a se refiere la orden.
Las que llegan desde una capa anterior, en tal caso deberemos usar utils.CteSinapsis_adelante.
Las que llegan desde una capa posterior en cuyo caso deberemos usar utils.CteSinapsis_atrás o las sinapsis que llegan desde neuronas de la misma capa,entonces usaremos la constante utils.CteSinapsis_lateral

double [] valores
Este parametro es un array de valores que se enviaran a las sinapsis secuencialmente para que se actualicen.

Ejemplo
Neurona n = CapaEntrada.neurona(1);
Double nuevospesos[] = new double[9];
for(i=0;i++;i<10) nuevospesos [i] = 1.0 ;
n. establecerPesos (utils.CteSinapsis_atrás, nuevospesos);



actualizar

public abstract void actualizar()

Descripción
Este método debe definirlo el usuario para cada tipo espécifico de
neurona. La tarea que debe hacer es actualizar el estado de la nuerona
a partir de los datos que se encuentren en el momento en su entorno
como el potencial , el valor de su estado actual , etc....

Ejemplo
Neurona n = CapaEntrada.neurona(1);
n.actualizar(n);


cargarEspecifico, guardarEspecifico

public void cargarEspecifico(EscritorXXX f) throws IOException
public void guardarEspecifico(LectorXXX f) throws IOException

Descripción

Esta funcion debe ser redefinida por el usuario si introduce algun
atributo adicional a su neurona.
Este método es llamado por los métodos de nivel de red para guardar y
restaurar una red de un fichero externo.
Si creamos una variable en la neurona y no definimos estas funciones,
cuando guardamos una red este valor no se guardara.
Estas funciones deben ser simetricas esto es guardar y restaurar en el
mismo orden.

Ejemplo
Si hubiesemos definido una variable entera llamada auxiliar;
Y otra real llamada auxiliardouble podriamos guardar sus valores asi.

public void guardarEspecifico(Escritor f) throws IOException {
f.escribirEntero(auxiliar);
f.escribirReal(auxiliardouble); }

public void cargarEspecifico(Lector f) throws IOException {
auxiliar = f.leerEntero();
auxiliardouble = f.leerReal(); }

 

JavaTM 2 Platform
Std. Ed. v1.3

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.