|
|
|
|
Neural Network Toolkit - Objecto rede neural
Início
1. Introdução
Início
2. Funções de transferência
As funções de transferência pré-definidas são:
- purelin(x): linear
- logsig(x): sigmoid no intervalo ]0, 1[
- tansig(x): sigmoid no intervalo ]-1, 1[
em que 'x' é a soma dos valores de entrada.
Início
3. Estrutura do objecto rede neural
Os elementos do objecto rede neural, net, podem agrupar-se de acordo com
(designa-se k o número de uma camada e por N
o número total de camadas):
- Infornações gerais:
- net.name: Nome da rede neural
- net.userdata: Informações do utilizador
- Dimensões:
- net.numInputs: Número de entradas
- net.numLayers: Número de camadas
- net.numOutputs: Número de saídas
- net.numInputDelays:
- net.numLayerDelays:
- net.numFeedbackDelays:
- net.numWeightElements:
- net.sampleTime:
- Ligações: São elementos booleanos:
- net.biasConnect:
- net.inputConnect:
- net.layerConnect: Matriz quadrada com as ligações entre as camada
- net.outputConnect:
- Sub-objectos: como o nome indica estes
elementos são por sua vez objectos, nomeadamente, entradas, camadas, saídas, vieses,
pesos de entradas e de camadas. Podemser mais ou menos complexos de acordo com as camadas
existentes. Serão indicados alguns elementos para estes sub-objectos
- net.input: equivalente a inputs{1}
- net.output: equivalente a outputs{1}
- net.inputs:
- net.inputs{k}.processFcns: funções de pré-processamento da camada
"k";
- net.inputs{k}.processParams{i}: parâmetros da função de
pré-processamento "k" da camada "k".
- net.layers: tem tantos elementos como o número de
camadas existentes (net.numLayers).
Algumas característica da cada "k":
- net.layers{k}.initFcn: define quais as funções de inicialização
da camada que são utilizadas para inicializar a camada "k", se a função de
inicialização da rede (net.initFcn) for "initlay.
- net.layers{k}.size: número de neurónios da camada;
- net.layers{k}.transferFcn: função de transferência da camada;
- net.outputs:
- net.outputs{k}.processFcns: funções de pós-processamento da camada
"k"
- net.outputs{k}.processParams{i}: parâmetros da função de
pós-processamento "i" da camada "k";
- net.inputs{k}.feedbackMode: modo como se trata o
feedback ('open' ou 'closed');
- net.biases:
- net.inputWeights:
- net.layerWeights: matriz "NxN" contém a
informação sobre a ligação entre as camadas
(Exemplo: net.layerWeights{k2,k1},
dados sobre a ligação da camada
"k1" à camada "k2")
- net.layerWeights{k2,k1}.delays: Atrasos
da camada k1 para a camada k2;
- net.layerWeights{k2,k1}.learn:
Autoriza ou não que a os pesos da camada k1 para a
k1 sejam alterados durante o treinamento e a adaptação.
Pode ser 0 ou 1.
- Funções:
- net.adaptFcn:
- net.adaptParam:
- net.derivFcn:
- net.divideFcn: função de divisão dos dados (default: dividerand)
- net.divideParam: parâmetros das funções de divisão dos dados (net.divideFcn)
- net.divideMode:
- net.initFcn: função de inicialização
- net.initParam: parâmetros da função de inicialização
- net.performFcn: função de desempenho
- net.performParam: parâmetros da função de desempenho
- net.performParam.normalization: Este parâmetro define o modo de
normalização. Pode ser "none" (sem normalização), standart
(normaliza poar o intervalo [-1, 1] ou percent
- net.plotFcns:
- net.plotParams:
- net.trainFcn:
- net.trainParam:
Algumas característica para o treino "k":
- net.trainParam.epochs: número iterações a executar;
- net.trainParam.max_fail: número máximo de aumentos de validação;
- net.trainParam.showWindow: boolean que permite mostrar
ou não a janela do nntraintool
- net.trainParam.showCommandLine: boolean para mostrar os resultados intermédios também na linha de comandos
- net.trainParam.show: indica de quantos de quantas em quantas iterações mostra os resultados intermédios
- Valores dos pesos e vieses:
- net.IW: Matriz dos pesos da primeira camada
- net.LW: Matrizes com os pesos das camadas internas
- net.b: Vector com os vieses (bias)
- Metodos:
- net.adapt:
- net.configure:
- net.gensim:
- net.init:
- net.perform:
- net.sim:
- net.train:
- net.view:
- net.unconfigure:
Início
4. Notação usada no manual
- Os elementos de entrada: são representados por um vector
"p":
p1, p2, ... pR
- Os pesos é uma matriz "wi,j"
em que "i" é um índice sobre os neurónios da camada e "j"
é um índice sobre os elementos de entrada no neurório "i":
wi,1, wi,2, ... wi,R
- O viés (bias), quando existe é
representado por "bi"
- A entrada líquida é dada por:
ni =
wi,1 p1 + wi,2 p2 + ... + wi,R pR + bi,2
- O resultado da saída do neurónio é:
ai = f(ni) =
f(wi,1 p1 + wi,2 p2 + ... + wi,R pR + bi,2)
em que f é a funções de transferência.
Início
5. Siglas e acrónimos
| Sigla / acrónico | Significado |
| FTDNN |
Focused Time-Delay Neural Network
[Rede neural de atraso focalizada]
Têm o atraso apenas na primeira camada da rede. |
| LDDN |
Layered Digital Dynamic Network
[Rede dinâmica digital em camadas]
|
| LRN |
Layer-Recurrent Network
[Rede Recorrente em Camadas]
Tem um loop de realimentação, com um único atraso, em torno de cada camada da rede, exceto a última camada.
|
| MRAC |
Model Reference Adaptive Control
[Modelo de referência de controle adaptativo]
É uma arquitectura constituída por duas sub-redes: uma é o modelo a controlar; a outra é o controlador.
|
| NARX |
Nonlinear Autoregressive Network with eXogenous inputs
[Rede autorregressiva não linear com entradas exógenas]
Rede dinâmica recorrente, com ligações de feedback envolvendo várias camadas da rede.
|
| TDNN |
Time Series Distributed Delay Neural Networks
[Redes neurais de atraso distribuído]
Têm o atraso em diversas camadas da rede. |
| |
| |
Início
6.
Início
7. Links úteis
Início
|
|
|
|