algoritmo de treinamento: regra delta [revisão]heitorm/aulasdca/dca0121/dca0121-03a-redes... ·...

15
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Algoritmo de Treinamento: Regra Delta [Revisão] DCA0121 – Inteligência Artificial Aplicada Heitor Medeiros 1

Upload: vankhue

Post on 16-Apr-2018

222 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Universidade Federal do Rio Grande do NorteDepartamento de Engenharia de Computação e

Automação

Algoritmo de Treinamento: Regra Delta [Revisão]

DCA0121 – Inteligência Artificial Aplicada

Heitor Medeiros

1

Page 2: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Treinamento da Rede ADALINE

• O treinamento da rede ADALINE ajusta os pesos a partir do erro gerado.

2

+-

y

d

erro

Page 3: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Treinamento da ADALINE: Regra Delta

• Objetivo: Minimizar a função de erro quadrático para cadapadrão de treinamento.

3

𝑥𝑖(Entradas)

𝑑𝑖 (Saídas

desejadas)

𝑥1 𝑑1

𝑥2 𝑑2

... ...

Conjunto de treinamento

𝑥1 = [𝑥11 𝑥2

1] ...

N1

N2

𝑦1

𝑦2

𝑥11

𝑥21

𝑤11𝑥𝑖

𝑤22

𝑤21

𝑤12

𝑒11

𝑒21

𝑑1

𝑑2

𝐸1

Ajuste dospesos

Erro quadrático

Page 4: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Regra Delta

• O treinamento baseado na regra delta calcula, para cadapadrão de treinamento (𝑥𝑖/𝑑𝑖), o vetor gradiente do erroquadrático (𝛻𝐸𝑖) em relação aos pesos para computar oajuste do vetor de pesos.

• Os pesos são ajustados em relação ao sentido oposto dovetor gradiente.

𝑤𝑛𝑜𝑣𝑜 = 𝑤𝑎𝑛𝑡𝑖𝑔𝑜 + 𝜂 ∗ −𝑔𝑟𝑎𝑑𝑖𝑒𝑛𝑡𝑒 𝐸

𝑤𝑛𝑜𝑣𝑜 = 𝑤𝑎𝑛𝑡𝑖𝑔𝑜 − 𝜂 ∗ 𝛻𝐸𝑖

sendo i a posição do padrão de treinamento.

4

Page 5: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Regra Delta: Dedução

𝑤𝑛𝑜𝑣𝑜 = 𝑤𝑎𝑛𝑡𝑖𝑔𝑜 + 𝜂 ∗ −𝑔𝑟𝑎𝑑𝑖𝑒𝑛𝑡𝑒 𝐸

𝑤𝑛𝑜𝑣𝑜 = 𝑤𝑎𝑛𝑡𝑖𝑔𝑜 − 𝜂 ∗ 𝛻𝐸𝑖

𝛻𝐸𝑖 =𝜕𝐸𝑖𝜕𝑤11

,𝜕𝐸𝑖𝜕𝑤12

,𝜕𝐸𝑖𝜕𝑤21

,𝜕𝐸𝑖𝜕𝑤22

𝜕𝐸𝑖𝜕𝑤𝑗

= −𝑒𝑖 ∗ 𝑥𝑗𝑖

Ex.:𝜕𝐸𝑖

𝜕𝑤11= −𝑒𝑖 ∗ 𝑥1

𝑖

𝛻𝐸𝑖 = −𝑒𝑖 ∗ 1, 𝑥1𝑖 , 𝑥2

𝑖 = −𝑒𝑖 ∗ 𝑥𝑖

5

Page 6: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Regra Delta

• Para cada padrão de treinamento, existe um ciclode atualização dos pesos seguindo a fórmulaabaixo:

𝑤𝑖𝑎𝑡𝑢𝑎𝑙 = 𝑤𝑖

𝑎𝑛𝑡𝑖𝑔𝑜− 𝜂 ∗ 𝑒𝑖 ∗ 𝑥

𝑖

• O processo de treinamento é repetido até que:o erro seja menor que o erro máximo ou

o número máximo de épocas de execução sejaalcançado

6

Page 7: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Regra delta:Minimizar a função de erro

• Suponha uma rede da ADALINE como abaixo:

7

N1𝑦1

𝑥1

𝑤1𝑥𝑖

𝑒11

𝑑1𝐸1

Ajuste dospesos

Erro quadrático

Bias𝑤0

Page 8: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Regra delta:Minimizar a função de erro

• Gráfico exemplo de uma função de erro de uma redeADALINE com apenas uma entrada (𝑥1).

8

𝑤0𝑤1

Erro

Page 9: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Regra delta:Minimizar a função de erro

• Atualização dos pesos através do sentido inverso dogradiente.

9

Pesosiniciais

Page 10: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Algoritmo de treinamento da ADALINE baseado na Regra Delta

10

Page 11: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Algoritmo de treinamento - ADALINE

11

1. Obter o conjunto de amostras de treinamento {𝑥𝑘}2. Associar a saída desejada {𝑑𝑘} para cada amostra obtida.3. Iniciar o vetor de pesos {𝑤𝑘} com valores aleatórios pequenos.4. Especificar a taxa de aprendizagem {𝜼}, precisão requerida {ε} e o

número máximo de épocas.5. Iniciar o contador do número de épocas {𝑒𝑝𝑜𝑐𝑎 ← 0}6. Repetir as instruções:

1. 𝐸𝑞𝑚𝑎𝑛𝑡𝑒𝑟𝑖𝑜𝑟 ← 𝐸𝑞𝑚(𝑤);

2. Para todas as amostras de treinamento {𝑥𝑘 , 𝑑𝑘}, faça:1. 𝒖 ← 𝒘𝑻 ∗ 𝒙𝒌

2. 𝒘𝒌+𝟏 ← 𝒘𝒌 + 𝜼 ∗ 𝒅𝒌 − 𝒚 ∗ 𝒙𝒌

3. 𝑒𝑝𝑜𝑐𝑎 ← 𝑒𝑝𝑜𝑐𝑎 + 1;

4. 𝐸𝑞𝑚𝑎𝑡𝑢𝑎𝑙 ← 𝐸𝑞𝑚(𝑤);

Até que: (( 𝑬𝒒𝒎𝒂𝒕𝒖𝒂𝒍 − 𝑬𝒒𝒎

𝒂𝒏𝒕𝒆𝒓𝒊𝒐𝒓 ≤ 𝝐) ou (epoca >= epocaMaxima)).

7. Final do treinamento.

Page 12: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Exemplo: Treinamento Adaline

• Classificação da porta OU utilizando uma rede neuralAdaline.

Pesos iniciais:

• 𝑤0 = 0.10

• 𝑤1 = 0.10

• 𝑤2 = 0.10

12

E1

E20

1

1-1

-1

Page 13: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Referências

1. Lima, Isaías; Pinheiro, Carlos; OliveiraSantos, Flávia. Inteligência artificial. Riode Janeiro: Elsevier, 2014.

2. Da Silva, Ivan Nunes; Spatti, DaniloHernane; Flauzino, Rogério Andrade.Redes Neurais Artificiais paraengenharia e ciências aplicadas cursoprático. São Paulo: Artliber, 2010.

13

Page 14: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Referências

3. Thomé, Antônio Carlos Gay; Marques, AiramCarlos P. Barreto. Inteligência Computacional.Notas de Aula. Disponível em:http://equipe.nce.ufrj.br/thome/.

14

Page 15: Algoritmo de Treinamento: Regra Delta [Revisão]heitorm/aulasDCA/dca0121/DCA0121-03a-Redes... · Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São

Dúvidas?

Dúvidas por email:

[email protected]

15