Package kernel
Class NeuralNetwork
java.lang.Object
kernel.NeuralNetwork
- All Implemented Interfaces:
Serializable
Classe container para redes neurais artificiais. A classe NeuralNetwork é formada pelas estruturas básicas
que compõem uma rede neural artificial. É composta de um e apenas um
Input
, um e apenas um
Output
e um ArrayList
de 1 ou mais layers
.
Os métodos training()
e propagate()
só funcionarão após todos estes
elementos estiverem definidos, configurados e acoplados à NeuralNetwork pelos métodos attachInput(Input)
,
attachOutput(Output)
} e addLayer(Layer)
.
NeuralNetwork nn = new NeuralNetwork(); Layer l1 = new Layer(numberOfNeurons); l1.setActivationFunction(customActivationFunctionIfNeeded); nn.addLayer(l1); //Repetir para quantas layers forem necessárias ... Input input = customInput.getInput(); Output output = customOutput.getOutput(); Trainer trainer = new CustomTrainer(...); nn.attachInput(input); nn.attachOutput(output); nn.setTrainer(trainer); //Neste momento a rede está pronta para ser treinada ou usada. nn.beginTraining();
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCria uma instância da rede neural vazia e criando a lista de camadas -
Method Summary
Modifier and TypeMethodDescriptionboolean
Adiciona camada em um indice especificovoid
Adicionar camadavoid
attachInput
(Input input) Recebe a camada de entradavoid
attachOutput
(Output output) Recebe a camada de saídaboolean
Checar todos os ponteiros de neuronios e conexõesgetLabel()
Rótulo da rede neuralObter coleção de camadasint
Obter numero de camadasint
Retorna posição da camadaboolean
propagação dos valoresvoid
Cria uma instancia de connection weight com valor aleatorio de peso dentro de [-1 .. 1]void
removeLayer
(Layer layer) Remover camadaboolean
removeLayerAt
(int index) Remove camada no indice especificovoid
Definir rótuloshowInfo
(boolean verbose) Mostra informações da arquitetura da rede neuralvoid
training()
Realização do treinamento
-
Constructor Details
-
NeuralNetwork
public NeuralNetwork()Cria uma instância da rede neural vazia e criando a lista de camadas
-
-
Method Details
-
propagate
public boolean propagate()propagação dos valores- Returns:
- verdadeiro se a propagação estiver de acordo
-
addLayer
Adicionar camada- Parameters:
layer
- camada adicionada
-
addLayer
Adiciona camada em um indice especifico- Parameters:
index
- indicelayer
- camada adicionada- Returns:
- verdadeiro se o função ocorrer
-
removeLayer
Remover camada- Parameters:
layer
- camada removida
-
removeLayerAt
public boolean removeLayerAt(int index) Remove camada no indice especifico- Parameters:
index
- indice- Returns:
- verdadeiro se a função ocorrer
-
indexOf
Retorna posição da camada- Parameters:
layer
- camada- Returns:
- camadas
-
getLayersCount
public int getLayersCount()Obter numero de camadas- Returns:
- tamanho da camada
-
attachInput
Recebe a camada de entrada- Parameters:
input
- Camada de entrada- Throws:
Exception
- já existe camada de entrada
-
attachOutput
Recebe a camada de saída- Parameters:
output
- Camada de saída- Throws:
Exception
- já existe camada de saída
-
showInfo
Mostra informações da arquitetura da rede neural- Parameters:
verbose
- verdadeiro se a informção for mais detalhada e falso se não- Returns:
- informações da arquitetura
-
randomizeWeight
public void randomizeWeight()Cria uma instancia de connection weight com valor aleatorio de peso dentro de [-1 .. 1] -
checkIntegrity
public boolean checkIntegrity()Checar todos os ponteiros de neuronios e conexões- Returns:
- verdeiro se toda a arquiterura estiver integro
-
training
public void training()Realização do treinamento -
getLayers
Obter coleção de camadas- Returns:
- camadas
-
getLabel
Rótulo da rede neural- Returns:
- rótulo
-
setLabel
Definir rótulo- Parameters:
label
- rótulo
-